2017 Computer Science Capstone Symposium

May 5th and May 6th

Join the Computer Science Department to hear the senior capstone presentations. Student presentations will take place Friday and Saturday. All talks are scheduled in Morken 203.

Friday, May 5th

1:45pm – Knight Vision: An Augmented Reality Tour of PLU
Christopher Boe (BSCS), Micaela Pierce (BSCS)

The goal of Knight Vision is to provide an augmented reality Android application, used to tour the Pacific Lutheran University campus, or another university, and display information about buildings and events on campus. The user may use the app to learn the history and purpose of different locations on campus, and keep track of upcoming events and their details. It pulls information from the connected Firebase database and uses the phone’s location and orientation sensors to overlay images and information onto the user’s camera feed in the application. It was created for Android devices, version 4.0+, and requires an internet connection through either Wifi or network data, as well as the phone’s location services and orientation sensors.

2:20pm – Dual Mode RC Surveillance Drone
Jesus Reyes (BSCE), Caleb Ice (BACS), Justin Janker (BSCE)

The purpose of this project is to design an Android application capable of sending commands and viewing a live video stream from a server hosted on a Raspberry Pi 3. The basic idea is to use an Android OS device to command a remotely controlled (RC) vehicle through a wireless network. The two primary states of the application are Sport & Surveillance Mode. Sport Mode – motor driven forward and reverse motion and servo-controlled front wheel steering of the RC vehicle. Surveillance Mode – servo-controlled 2-axis pan & tilt camera movements of the RC vehicle. Servo motions are influenced by the Android’s built in accelerometer. Both modes maintain a live video stream viewable from the Android application. These functions are fulfilled through the stages of the Raspberry Pi receiving, processing and transferring commands to an Adafruit Pro Trinket microcontroller over a serial connection while simultaneously using linux-based web-camera drivers to stream video.

2:55pm – 4-Channel Digital Mixing Console
Olaf Grette (BSCE, BSCS)

Creation of a sound mixing console allowing the combination and modification of four analog audio input signals resulting in a stereo analog output. Traditional analog mixing consoles which use large amounts of analog circuitry; however, this console achieves its functionality through digitizing the analog input signals. These digital signals are then shaped by digital signal processing algorithms whose parameters are determined by user input. The whole process occurs on a 32-bit ARM microprocessor. The resultant signal is then converted back to analog to be used by an external system of the user’s choice.


3:30 Break


3:45pm – Swarm Engine: Parallel Programming Game Engine
James DeBroeck (BSCE)

Swarm Engine is a C++ library used in game and simulation development, with a heavy emphasis on parallelization. It is separated into distinct parts, such as Rendering or Physics, each parallelized in a separate thread, with some parts offloaded to other hardware, such as a GPU. While any game can benefit from parallelization, computationally intensive games and simulations benefit the most. Being a library, one of the primary goals is an easy to use end-developer interface that abstracts internal concepts and processes as needed. While the engine is developed using many 3rd party libraries, the API for the engine is designed so that programs can be built solely with the engine. In addition, the engine includes a built-in virtual hardware environment that runs a custom bytecode instruction set. Other languages – such as Lua or Python – can be compiled into the engine’s bytecode and run in real-time on the virtual environment.

4:15pm – House Utilities Manager – Web Application
Gage Gibson (BSCS), Jayme Greer (BSCS), Caleb LaVergne (BACS)

An application to track information about living situations to aid in the ease of house management. A house is a group of people that co-join and track their shared activities. This web application allows for tracking weekly chores, reservations of communal spaces, and creation of tasks.

Saturday, May 6th

9:00am – Fantasy Sports Website
Juston Lind (BACS), Kelly White (BACS) 

We have created a web application for fantasy sports that uses MongoDB on the back-end to store user, player, and game data. Users can play either fantasy football or fantasy basketball, and will play a head-to-head weekly game using the scoring statistics of professional sports. Users have a designated salary cap to spend on their desired players for a game. After players have selected their teams our application will use actual game results to determine the winner of head-to-head matches, and post the results.

9:35am – HouseMe
Matt Dennie (BSCS)

HouseMe helps students find off campus housing near universities. We simplify the process of renting a place off campus by providing a single place for students and landlords to search for and post student friendly places to live.

10:10am – Automatic Generation of Transit Maps
John Lyon (BSCS)

When publishing subway maps, most transit agencies distort geography to more clearly show the topology of the network. This is accomplished by many techniques, including straightening lines, evenly spacing stations, and aligning elements to a grid. This project aims to automatically generate such a map from freely available data published by most transit agencies.


10:45am Break


11:00am #BirdFeed
Emily Bower (BSCS), Rebecca Johnson (BACS, BFA Ceramics), Casey Kaku (BACS)

#BirdFeed is a mobile application that allows users to view local Seattle restaurants and filter and sort restaurant data by popularity and/or cuisine. The app utilizes Spark Streaming to retrieve data from Twitter. Using a Naive Bayes Classifier, the app will calculate the sentiment of the tweet and adjusts the restaurant’s rating accordingly in a Firebase database. #BirdFeed also utilizes Android Studio, Google Play Services, and Twitter kits to present the data in a user-friendly way and provide in-app functions for the convenience of the user.

11:35am – Protein Function Prediction Using Machine Learning: Neural Networks, Random Forests, and Support Vector Machines
Miguel Amezola (BACS, BS Math), Caleb Chandler (BACS, BS Chemistry), Devon Johnson (BACS, BS Math)

Employing machine learning techniques to step into the field of bioinformatics, we developed models to predict the functional role that a given protein performs within a living organism. First, we trained neural networks, random forests, and support vector machines on proteins with known functions. Next, we submitted predictions on a set of over 130,000 proteins with unknown functions to CAFA (The Critical Assessment of protein Function Annotation algorithms), an international, competitive experiment, for assessment. Finally, we have developed a web application enabling the machine learning models to make predictions on user-supplied input.


12:10pm Lunch


1:00pm – Track Predict: An application for predicting a track athlete’s future times
Jordan Gahan (BSCS), Cody Hartman (BSCS)

Our project was created to help predict future performance of track athletes. By using a Recurrent Neural Network combined with input from users, we forecast future athletic performance from patterns of other collegiate athletes around the country. We created a cross-platform application built upon Electron (End-user-application) and Google Charts (Google Graphing API), with this, we are able to present our results in a user friendly experience.

1:35pm – Lightning SFTP
Taylor Bauer (BSCS), Nathaniel Mayor (BSCS)

Lightning SFTP is a file transfer client that uses the secure file transfer protocol (SFTP). This desktop application is built upon the Electron framework, which is a platform for building desktop applications using web technologies and allows the application to run on any major operating system. Lightning SFTP strives to give the user a clean interface to work with and its design only shows the important information. It offers helpful tools to track progress, instant connection through bookmarks for quick access, and a file exploration system to quickly exchange files across the internet. Lightning SFTP was designed with the user in mind, offering wide availability and ease of use to anyone.

2:10pm – Crypto Playground: A computer security learning program
Philip Passantino (BSCS), Quinton Teas (BSCS), Egan Dunning (BSCS)

We created a program that teaches its users computer security concepts. The program is a cross platform desktop app, built in Qt, that will explore security technologies. Users may play a fun cryptogram game, explore password security with a hash cracking tool, and factor miniature RSA numbers. Using this, we can show our users circumstances where encryption is secure and circumstances where encryption is not secure. We can also show our users the difference between strong and weak passwords.