2014 Computer Science Senior Design Projects

Student Report Title Student Report Title


Some links below may require MS Powerpoint 2007 or Adobe Reader
Click on a student picture for a larger view.

Alex Block

Advisor: Prof. Fernandes and Prof. Webb

Machine Learning Examination of NBA Defense

This project will explain a machine learning approach for identifying the characteristic attributes of defensive effectiveness in the NBA. The means of numerically defining defensive effectiveness is a statistic known as ”Defensive Efficiency,” which is a measure of points scored by the opponent normalized by 100 possessions. Attribute sets of decreasing size were used to predict ”Defensive Efficiency” to discover the factors that are unique to good and bad defenses in the NBA. The conclustions outline strategies and areas to focus on to optimize a team’s defense.

Poster Link    Report Link    Presentation Link   


William Callanan

Advisor: Prof. Fernandes and Prof. Rieffel

Designing a simulation of a superscalar processor

The purpose of this project is to create an effective simulation of a superscalar processor that could easily be understood by undergraduate students. Superscalar processors are difficult to understand, and I am hoping to use this simulation to help make them less frightening to students attempting to learn about computer hardware. The simulation I have been designing uses the Unity engine, which is a multiplatform game engine, to visualize the way superscalar processors deal with data. Overall while there is still a lot of work to be done on the project the simulation is mostly implemented and the results have been pleasing. Everything moves at a reasonable speed and while it hasn't been tested by other students yet it seems easy enough to understand.

Poster Link    Report Link    Presentation Link   


Andrew Danise

Advisor: Prof. Rieffel

Evolving Soft Robots with Vibration Based Movement

Creating effective designs for soft robots is extremely difficult due to the large number of different possi- blities for shape, material properties, and movement mechanisms. Due to the lack of methods to design soft robots, previous research has used evolutionary algorithms to tackle this problem of overwhelming options. A popular technique is to use generative encodings to create designs using evolutionary algorithms because of their modularity and ability to induce large scale coordinated change. The main drawback of generative encodings is that it is difficult to know where along the ontogenic trajectory resides the phenotype with the highest fitness. The two main approaches for addressing this issue are static and scaled developmental tim- ings. In order to compare the effectiveness of each of these two approaches, I have implemented a framework capable of evolving soft robot designs that utilize vibration as a movement mechanism.

Poster Link    Report Link    Presentation Link   


Jesse E. Grushack

Advisor: Prof. Fernandes and Prof. Lewis

Currency 3.0: Examining Digital Crypto Currency Markets

With the overabundance of data in the twenty-first century, money is still a primitive yet tangible item that can be physically passed from person to person. Money was originally backed by gold, a commodity, but is currently backed by the government. But what if money could be backed by mathematics? The purpose of this project is to explore what may be considered the future of money, a virtual payment protocol known as cryptocurrencies. Bitcoin was the first crypto-coin system and currency which has increased in value by over 500% in the past year. But why should people trust a system when everything else on the internet has the ability to be manipulated? This project explores the security of this network and what makes it unbreakable. The project also examines the economic possibilities of having a global distributed trust network. These new technologies will not only play a major part in shaping our future but have potential to change society as we currently know it.

Poster Link    Report Link    Presentation Link   


Shiqing He

Advisor: Prof. Striegnitz

Structuring the Unstructured Note: Automatic Organizing and Formatting for Lecture Notes

Note taking is an important practice during lectures. With the rapid development of electronic devices such as smart phones, tablets and laptops, digital note-taking has become an option for many students. In the classroom setting, note takers might fail to record clearly organized notes due to limitations of time and devices. Therefore, users often need to manually organize long paragraphs of notes by dividing or structuring them into appropriate sections based on content. The goal of this research is to develop a system that automatically structures unorganized notes. Using topic modeling and automatic summarization, we detect and analyze the “structure” of the notes. We then build a webpage based on the structure in order to format notes into a more readable version.

Poster Link    Report Link    Presentation Link   


Christopher D. Leveille

Advisor: Prof. Aaron Cass

Facial Tic Detection Using Computer Vision

Detecting dishonesty or deception in the features of the face has many useful applications. One such application is in the game of poker, where deceiving one's opponents is a big part of the game. Naturally, an opponent`s face can provide a player with information on whether that player is being truthful in their betting or not. In this project, we built a system that employs computer vision techniques to automatically detect one common facial tic: a mouth twitch. The system was evaluated based on its ability to accurately detect and identify occurrences of the tic within a video in real time. Preliminary testing results found the system to be accurate under ideal conditions, but it struggled to correctly detect the tell in a more realistic, less-than-ideal setting.

Poster Link    Report Link    Presentation Link   


Matthew Marchesani

Advisor: Prof. Webb

Automated Parsing of Dialogue Games in Open Ended Dialogue

In Natural Language Processing, the ability to model the structure of language is a key to solving problems. We currently can label words an utterances according to their meaning and communicative function. My research involves creating a structure out of these lower components by identifying patterns in dialogues. I will approach this problem by analyzing a corpus of open-ended dialogue. My research will contribute important information to Dialogue Management Systems’ about language structure that can be implemented in its architecture and will help enable human-like generation and understanding of dialogue.

Poster Link    Report Link    Presentation Link   


Kyle Patterson

Advisor: Prof. Cass and Prof. Lawson

Automatic Age Estimation and Interactive Museum Exhibits

As a result of the advent of smaller and cheaper displays and speakers, museums have the ability to add an increasing amount of multimedia to their exhibits. Unfortunately, instead of being used in conjunction with information plaques to provide a deeper understanding of an artifact, these installations are generally used on their own. As a result they are often not an integral part of the overall exhibit and can easily be overlooked by visitors.

Through the use of video sensing equipment it is possible to create exhibits that can leverage multimedia to provide a more rich learning experience. By enabling museum exhibits to determine the approximate age of those viewing them, it is possible to provide additional interactivity that is tailored to meet their demographic and provide a more engaging experience.

Poster Link    Report Link    Presentation Link   


Joseph Plaus

Advisor: Prof. Striegnitz

Interpret Ambiguous Natural Language Commands

Natural Language Command systems are a type of NLP system in which a user provides commands in the form of natural language that are subsequently interpreted and executed. Many previous Natural Language Command systems have successfully implemented this process, but few focus on the ability to handle ambiguous or vague commands. This ability is crucial in order to further the true understanding of natural language because it is an unnatural expectation that all commands will contain every piece of necessary information. This project attempts to address ambiguity by implementing a Natural Language Command system that employs techniques to counter the possibility of failure due to confusion generated by such commands. Using a virtual 3D environment, a robot avatar can be given various navigational and basic operational commands. If ambiguity exists, it utilizes both its knowledge of the surrounding environment and any pertinent information given in previous commands to rank the executional options and choose the best course of action. If no decision can be made, it asks the user a clarification question in order to obtain the missing information. By means of thorough system and unit testing, it has proven successful in its ability to identify if and when additional information is needed, and what to do with that information. The reusable construction of the environment allows for the system to be tested under varying conditions, with which it has successfully coped. When compared with a similar system that lacks the ability to handle ambiguous situations, it provides an alternative that accepts a more natural way of speaking.

Poster Link    Report Link    Presentation Link   


Steven Stangle

Advisor: Prof. Traver and Prof. Rieffel

Designing Wireless Tensegrity Robot

A tensegrity is a deformable robot made from struts and springs held together in a stable pre-stress form. We are doing research at Union to learn how to make the robot move by vibration. While successful, this research is limited by the current wired design of the robot. For example the current robot VALTR has a tether that tangles and has to be reset if it turns too much or moves too much. My research was to design and construct a new, wireless tensegrity robot controlled by a spiking neural network. This new robot allows us to conduct research without the inhibition of the tether. With it we can better control the frequencies of the vibrations by using an inertial measurement unit and motor encoders as inputs into a spiking neural network. This new robot will further allow us to continue research in using tensegrities to get a better understanding of how complex living systems move.

Poster Link    Report Link    Presentation Link   


Alyssa Wolejko

Advisor: Prof. Webb

Evaluating Body Posture and Ball Trajectory to Determine Fast Pitch Softball Pitch Types

This document describes an instructional system to analyze a fast pitch softball pitcher’s pitching motion and the location of the ball in the strike zone in order to determine the pitch type. Using a Microsoft Kinect sensor to evaluate a pitchers posture during their pitching motion and the ball trajectory of that pitch does this. The OpenNI open source API, which operates in conjunction with the Kinect, allows users to track the joints of a person’s body and from there determine the angles of specific joints. The angles of certain joints through the pitching motion can determine the pitch type. A visual system tracking the ball can determine the pitch location in some predetermined strike zone. Taken together, these two sources of information allow us to compile a database that can be used as a statistics book for the pitcher intended to be used as a training and instructional tool for elite pre-collegiate or collegiate athletes.

Poster Link    Report Link    Presentation Link   



Computer Science Senior Design Projects from previous years:
2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003


All rights reserved - Union College, Schenectady, NY 12308
Last edit 3Apr2014
Address questions or comments to tay@union.edu