NEUCS09‎ > ‎

abstracts



First New England Undergraduate Computing Symposium:

Celebrating Excellence and Diversity in Computer Science

Science Center, Wellesley College, Wellesley MA
April 18, 2009

This symposium has been organized by the New England Computer Science Chairs and the Empowering Leadership: Computing Scholars of Tomorrow Alliance.

Student Abstracts, Poster Presentations


Marwan Al Jubeh
Tufts University Junior
Advisor: Diane L. Souvaine/Mashhood Ishaque
Convex Partitions with 2-Edge Connected Dual Graphs
For a finite set of disjoint line segments in the plane, a convex partition of the free space is a set of open convex regions (called cells) such that the cells are pairwise disjoint and their closures cover the entire free space. The dual graph of a convex partition is defined by having a node for each cell, and an edge between two nodes corresponding to a pair of adjacent cells if both cells are incident to the same endpoint. Aichholzer et al.(2008) recently conjectured that given an even number of line segments, one can construct a convex partition by successively extending the segments along their supporting lines such that the dual graph is the union of two edge-disjoint spanning trees. Here we present a counterexample to this conjecture, which consists of 16 disjoint line segments, such that the dual graph of any convex partition constructed by this method has a cut-edge (removing the edge disconnects the dual graph), and thus the dual graph cannot be partitioned into two disjoint spanning trees. Counterexamples of arbitrarily larger sizes can be constructed similarly. Questions about the dual graph of a convex partition are motivated by the still unresolved conjecture about disjoint compatible geometric matchings by Aichholzer et al (2008).





Patrick Antoine
Tufts University Junior
Advisor: Ming Chow
http://www.cs.tufts.edu/comp/50GD/assignments/hw04.php
Designing My First Game
Earlier this semester, I designed my first mobile game. I had been excited to take this class since I had heard about it last year. This was the first assignment given where we had enough freedom to use our creativity to design our own game. I gave this assignment 150% effort and I am very proud of my work. I decided to design a game for an iPhone that incorporated its 3-axis accelerometer. The goal of game, Snowball War, is to defeat the other team by hitting them with snowballs. It is similar to Space Invaders and Tanks, while implementing a 3-axis accelerometer and the touch screen at the same time. The game also has wi-fi multiplayer capabilities. The main challenge of the game is to avoid the enemies’ snowballs coming at you while throwing snowballs at your opponents. In order to strafe to the left or right you have to tilt the phone. The tricky part about the game is doing many things at once. The player has to complete levels which could be continuously added through updates online. Coming up with this idea for a game was one of my favorite assignments. I would be excited to actually program this game, and I plan to in the future.


Bradford N Barr
Hampshire College Senior
Advisor: Lee Spector
Genetic Programming in Robot Obstacle Avoidance
Programming robotic systems to do intelligent things is very difficult. In recent years methods of automatic programming of computer systems have come into new popularity. Genetic Programming has proven itself as a strong technique for automatically programming complex systems in application areas from pure mathematics to antenna design. This study examined the use of Genetic Programming to automatically program obstacle detection and avoidance behaviors using mono-camera visual systems in an autonomous mobile robot. The amount of sensory information available to the robot was varied to vary the fitness landscape. Sensor systems include greyscale and color vision, tactile and proximity sensors. The robot exhibited the beginnings of emergent behaviors. The platform used for evolution was an iRobot Create with an onboard EeePC for the necessary computation and an auxiliary sensor module. Computer vision was programmed with the OpenCV computer vision libraries in C as a Python module. The Genetic Programming system was a custom steady-state algorithm that used the Push programming language, implemented in Python.


William Brendel
University of Massachusetts Lowell Senior
Advisor: Dr. Fred Martin
http://www.cs.uml.edu/isense/
Group: William Brendel, James Dalphond, Greg Pilla, John Fertitta, Chris Corcoran
Architectural Design of iSENSE Web Software System
The Internet System for Networked Sensor Experimentation (iSENSE) is a web-based data collection, aggregation, and visualization tool that allows students and researchers to share scientific data in order to draw meaningful conclusions about regional, national, and global phenomena. Free and open source (FOSS) products are used extensively in iSENSE, partially because FOSS shares our goal of using technology and a free exchange of information to improve the world. The FOSS products used in iSENSE include Linux, Java, Spring, MySQL, Hibernate, Apache, Tomcat, jQuery, and more. The iSENSE website is the primary way to interact with the system and allows users to create experiments, contribute data to existing experiments, browse data collected by others, and visualize multiple datasets in the form of charts, graphs, and maps. The website also handles all aspects of user accounts, including user registration, profiles, and authentication. The web stack consists of the Spring model-view-controller (MVC) framework running in a Tomcat container on an Ubuntu Linux server. The use of an enterprise-grade MVC web framework separates application logic from presentation and provides scalability for the future. A MySQL database stores all of the system's information, and the Hibernate object-relational mapping (ORM) framework is used to simplify the data access layer. Over three semesters, I was chief architect and lead developer of the iSENSE system. My poster will illustrate the technical details of the implementation, as well as results of classroom trials of iSENSE.


Skyler Clark
Worcester Polytechnic Institute Senior
Advisor: Robert W. Lindeman
http://petrifiedmod.com
Group: Chris Drouin, senior; Matt Fabian, senior
Petrified- Design and Development of a Multiplayer Survival/Horror Game
Don’t turn your back, or you may find your heart turned to stone -- and in Petrified, if you want to survive until dawn, you’ll need to keep a keen eye on the waiting statues, lest they add your soul to their ranks. This project took a game from design through inception. The game, titled Petrified, is a team- based multiplayer game, with a heavy emphasis on an unsettling atmosphere and challenging, engaging play for players on both teams. The project’s timeline was split into three phases: design, implementation, and evaluation. By using iterative development techniques throughout these phases, the team produced a fully functional, playable, and fun game, which they released to the online public at the conclusion of the development period.


Chris Corcoran
University of Massachusetts Lowell Junior
Advisor: Fred Martin
Scheme-based web applications
In this project, I explored the use of functional programming techniques to build a web application using Scheme. I designed a website, served live from a Scheme application, that takes a series of tags and dynamically generates a video play list. For example, a user could search for "Miles Davis, Jazz, John Coltrane," and the site would then use these tags to make a series of API calls to sites like YouTube, MTV and Vimeo. The Scheme servlet then parses through each result to determine its correlation to the tags specified by the user. This parsing is where a majority of the functional ideas are applied, as they are for the most part operations carried out on a list or series of lists. Once the correlation has been determined, the list is pared down to only those that are the most relevant. After applying some presentation logic, the videos are then delivered to the user in their browser. The videos are displayed in a media player interface where users can skip around the play list, save the play list or share it with friends. The learning goal of this project was to see how functional programming could be applied to solve real-world problems. What made this project really interesting was seeing how a functional approach could by applied to web development and ultimately make the implementation easier.


Laura Costello
Tufts University Sophomore
Advisor: Alexander R. J. Francois
http://www.cs.tufts.edu/comp/9/fall2008/Project/sudoku.html
Group: G Bourgeois, S. Gurdo, R. Leung , R. Mondello, J. Pequeno, C. Powell, M. Richmond, F. Shaukat, B. Sheneman, P. Tang, K. Thacher, D. Wang, Y. Wang, D. Whitney (Freshmen), E Chasan, M. Jiang (Sophomores), M. W. Chen, J. Richards, R. Wurcer (Seniors)
Learning Programming and Teamwork with Sudoku
As a final project for the introductory course, Exploring Computer Science, the class wrote a program to solve Sudoku puzzles. The goal was to use concepts of iteration, conditionals, and arrays, explored in the course, to write a program that solves all Sudoku puzzles solvable without guessing, using the methods that humans use.The first step was to analyze how humans solve Sudoku puzzles. The class identified direct proofs to deduce the value at a position and negative proofs to determine which values are not allowed at a particular position, based on known values of other positions. Groups of 2-4 students formed to write C++ functions to implement the algorithms identified. One additional group developed the basic infrastructure including the 3-dimensional array used to store known and potential values, the order of algorithm execution, and methods of input and output. The collected functions were integrated into a general program which successfully solved most solvable puzzles when tested, much to the satisfaction and pleasure of the beginning programming students. A critical aspect of the project was its collaborative nature. The whole class worked together to define the problem and general solution before splitting into groups for implementation. A high level of communication between the groups was required in order that each group produce code that could be integrated easily with the others to create the final program. A high degree of trust was also required, since the success of the project depended on each group delivering working code on schedule.


Charisse Cotton
Tufts University Junior
Advisor: Heather Richter Lipford
http://www.cra.org/Activities/craw/dmp/awards/2008/Cotton/
Group: Jason Watson, Andrew Besmer, Lauren Hamilton, Heather Richter Lipford (Ph.D.)
Improving the Privacy Settings Interface of Online Social Networks
Maintaining a sense of privacy while participating in online social networking can be very challenging. Social network sites like Facebook enable users to create and manage their own profile, while openly sharing large amounts of personal information with friends and, in some cases, strangers. Cyberspace communities, such as Facebook and Myspace, continue to attract new users in spite of the many risks that are aligned with exposing one’s personal information. Users that disclose large amounts of sensitive information onto the internet are at great risk of being subject to identity theft, harassment, stalking, blackmail and embarrassment. A recent study of ours was conducted on Facebook’s privacy settings interface. The outcome of our prior research revealed problems with Facebook’s current interface. Often times, users are concerned about keeping their privacy secure, but generally struggle with managing their privacy and can unintentionally release personal information. Our goal as researchers is to find ways to improve user’s online security by presenting a different type of interface for managing profile privacy settings.
We propose a new prototype that presents a visual-based privacy settings interface. Our research includes the comparison of Facebook’s current privacy settings interface to our prototype. Our prototype will allow users to configure their privacy settings relatively easily and with greater understanding.


Jason Croft
Boston College Senior
Advisor: Robert Signorile
Access Control in P2P Networks
In decentralized networks, a fundamental security issue arises in controlling ownership and access to data. Mediations have been proposed for methods of persistent access control in centralized networks by requiring trusted hardware systems or central authorities. In peer-to-peer (P2P) networks, these requirements are more difficult to enforce and new methods must be proposed. Furthermore, there is an inherent weakness in this type of infrastructure, as a central authority can both become a bottleneck and is a single point of failure susceptible to denial of service attacks. The focus of this work within access control in P2P networks is in the control and ownership of data. Alice wants to send a file to Bob, she can do so safely using various forms of cryptography and assume that no eavesdroppers can intercept this data. However, once Bob has received and decrypted this data, he is free to send it to whomever he wishes. Whether Bob has malicious intentions to redistribute this secure data to Eve or simply loses ownership of the data through some attack, Alice has lost all control of this data. The purpose of this work is to allow Alice to retain some control over this file once she has sent it to Bob. Our method to obtain control of the data on the network is to encapsulate it in a self-destructing executable. Data is encrypted and stored in a Java Archive (JAR) and sent to Bob. Specific authentication factors are built into the JAR before it encrypts the data, such as the MAC address and the current user of the machine. The key to decrypt this data is a hash of certain attributes of that machine. In our implementation, it is an MD5 digest of the MAC address. This provides security against another user intercepting the key and decrypting the data, as well as solely authorizing that machine to access the data. If the authentication fails, or Bob has accessed the file more than the number Alice specifies, the JAR file overwrites and then deletes itself. Additionally, the P2P network uses a reputation management system to track an entity's usage of received data. Misuse of data, for example, will negatively affect an entity's trust on the network. With this implementation, some pairwise trust is assumed, such as an enterprise network that requires some form of authentication. However, there are several trade-offs in this implementation.


David Emerson
Boston College Senior
Advisor: Howard Straubing
Polynomial Time Primality Testing and Sub-exponential Factoring Algorithms
The research focuses on the number theory and practical implementations of the more modern and powerful algorithms associated with primality testing and large number factorization. The project includes a rigorous understanding of the proof and time complexity of the Agrawal-Kayal-Sexena algorithm for primality testing that was first published in 2002. It was the first fully proven polynomial timed algorithm for primality testing. The second part of the research focuses on the algebra behind the multiple polynomial quadratic sieve which has undergone significant optimization but still holds as one of the fastest factoring algorithms available. Along with understanding the mathematical foundations of the MPQS algorithm, I am writing a distributed computing implementation of the algorithm. The goal of such an implementation is to experiment with the algorithm’s capacity for large number factorization with modern machines and combined computing power. The AKS primality-testing algorithm was a very important step for primality testing and its announcement was an impressive feat in computational mathematics. The method is simple and the proof of its correctness relies on very elegant principles in abstract algebra. A modern understanding of the capabilities of the MPQS algorithm is important to disciplines like cryptography because the difficulty behind factoring large composite numbers is the very foundation on which modern encryption rests. If, given enough computing power and distributed systems, an individual could begin to factor numbers of large orders, faith in the safety of modern encryption key methods would be shaken.


Chloe Fan
Wellesley CollegeSenior
Advisor: Panagiotis Metaxas
http://wiipaint.chloefan.com
WiiPaint: Gesture recognition and interface design in a collaborative art application
The Nintendo Wii Remote is primarily known as the innovative game controller for the Nintendo Wii game console. Its motion sensing and tracking abilities allow users to use natural gestures instead of buttons and joysticks to play games that mimic physical movement. The Wii Remote's Bluetooth capabilities, IR camera, and 3-axis accelerometer also make it a popular device in Human-Computer Interaction research as an ergonomic, widely-available and affordable tangible user interface. Using a computer’s Bluetooth connection, we were able to connect up to four Wii Remotes to a PC and create demo applications in Director, Flash, and GlovePIE that tested the Wii Remote’s limitations in different contexts. In this project, we explore the Wii Remote outside of competitive gaming by creating a collaborative art application in Flash called WiiPaint. Using the WiiFlash API, we are able to retrieve accelerometer, IR camera, and button values to control a painting application where up to four users can collaborate. Initial user studies have shown that users tend to use point-and-click gestures in the painting application. We are interested in encouraging full-body collaborative interaction through the creation of music-inspired art. Focusing on gesture recognition and interface design, WiiPaint has evolved from a point-and-click painting application into an abstract drawing experience mediated by music. By exploring different manipulations of the Wii Remote’s physical affordances and the space in which users interact with WiiPaint, we hope to make the experience more tangible and immersive.


John Fertitta
University of Massachusetts Lowell Junior
Advisor: Professor Fred Martin
http://www.cs.uml.edu/ecg/index.php/OrganizationProgrammingLanguagesFall2008/IRobotCreateSchemeAPI
iRobot Create API Implemented in Scheme
The iRobot Create is an experimenter's robot platform based on the Roomba vacuum cleaner. It is controlled via its serial interface from a compiled C program running on an optional processor unit, or any off-board computer platform. In this project, I developed an API in the Scheme language for controlling the Create through its serial interface. Although libraries have been written in C and Python to control the robot, there had not been one implemented in Scheme. I implemented the full Create command set, including movement commands (drive, drive-direct, stop), user interface commands (LEDs, switches, and sound output device), and sensor commands (bump sensors, wall distance sensors, encoders, and cliff sensors). In developing the code, I took advantage of Scheme's functional programming capabilities. I used a hash table of lambda functions to process data packets returned by the robot's serial API. When a sensor is queried, the lambda function that will parse the response of that sensor is retrieved from the hash table, and passed to a listener that uses the function to process the response from the robot. The project includes a demonstration of the Create as a fully autonomous robot. It carries a Linux netbook running a control program written PLT-Scheme as its "brain."


John Fertitta
University of Massachusetts Lowell Junior
Advisor: Professor Fred Martin
http://sunspot.cs.uml.edu
Group: James Dalphond Masters Student
Using the SunSPOT Platform for Wireless Data Collection
iSENSE is a web-based system for aggregating and sharing sensor data collected using ordinary sensor probes used in K-12 classrooms. The system allows high school students and undergraduates to view, graph, analyze, and export data from individual sensors, and to combine data from multiple sensors to examine regional, national, and global phenomena. The system is designed to assist teachers and students in developing science projects with topics ranging from human health to environmental science and energy conservation. In this work, we incorporated the wireless SunSPOT devices from Sun Microsystems into the iSENSE project. The SunSPOT is a small, wireless, battery-powered unit that includes a range of built-in sensors as well as the ability to interface to external devices. Our work included software and hardware development: 1) We developed a real-time communications mode, where sensor data from the SPOT are transmitted in real time to the desktop computer connected to the iSENSE system; 2) We developed a stored communications mode, where the SPOT stores sensor data into its internal flash memory. This data is later transmitted to a desktop computer for upload into iSENSE; 3) We developed a custom sensor interface printed circuit board, which connects a global positioning sensor (GPS) and commercially-available Vernier sensor probes to the SPOT. We also developed driver software to interpret the GPS data and record it along with the sensor probe readings into the SPOT's flash memory. The poster presentation will include a demo of the SunSPOT operation.


Catherine Grevet
Wellesley College Senior
Advisor: Scott Anderson
Motivating Sustainable Behaviors with an Online Social Visualization

In the United States, household and commercial energy consumption account for over a third of total carbon emissions. By changing their consumption patterns to more sustainable practices, individuals could greatly reduce their carbon footprint and increase their monetary savings. For example, drying clothes outside on a beautiful summer day saves electricity and reduces utility costs. Despite these benefits, individuals aren’t aware that their choices make a difference. In addition, understanding how an individual’s consumption compares to others in the community brings another level of awareness. Indeed, comparison to others is an effective measure of good or poor performance. To provide the ability to compare oneself to others, my senior thesis project lies at the intersection between the study of online social networks and an understanding of the human psychology of motivation. The Stepgreen.org website developed at Carnegie Mellon University currently allows individuals to track their personal green behavior. For my thesis, I have augmented this capability to create a social application. It allows individuals to compare their consumption to other people in their community. The application displays a group view with an overall picture of how well the community is performing. In addition, the user can select specific individuals to compare themselves in more detail. A month-long usability study will evaluate this application in the context of a dorm competition at Wellesley College. The results from this study will shed light on the design of the application as well as its effectiveness in motivating the participants to fulfill green actions.


Rebecca Groveman
Mount Holyoke College Senior
Advisor: Barbara Lerner
Using the Nintendo Wii to Assess Motility
There are many high-end systems available to assess motility. Motility analysis is an important issue, especially in eldercare. Due to health care costs and a shortage of healthcare providers, institutional support for the growing number of elders in society will be impossible. An alternative to institutional support is in technology to assist in aging in place. Though the high-end systems that assess motility help elders to stay independent for longer, these systems are expensive and require specialized equipment. My project explores the viability of using the Nintendo Wii as an inexpensive alternative. The high-end systems available can collect data with a greater accuracy than the Wiimote can, and can collect more data -- while the Wiimote can track up to four IR points simultaneously, a commercial system can track many more, and can visualize the data with greater sophistication. However, the Wii is inexpensive, intuitive, and accepted by the elderly population. While it cannot compete with high-end systems, it may be an acceptable substitute to allow for more frequent motility analysis. My project will determine whether it can be used to gather data with sufficient accuracy to be useful.


Surabhi Gupta
Mount Holyoke College Sophomore
Advisor: Professor Charusita Chakravarty
http://relativefitness.wordpress.com/
Relative Distribution for increasing efficiency of Genetic Algorithm
I am pursuing a special major in computer science (artificial intelligence) and neuroscience. In summer 2008, I researched on Genetic Algorithm (GA) at the Indian Institute of technology. I applied GA to evolve a specified image (made using POV-Ray) from pixels of randomly generated red, green and blue values using Java-based software ‘processing’. GA algorithm with standard fitness distribution is not as efficient in finding maximally fit solutions when the number of alleles of chromosomes is increased to more than 40-50. I propose a power curve distribution called Relative distribution that scales the candidate finesses to achieve maximum efficiency. A few individuals in the population have a relatively high fitness while most have average to low finesses. The philosophy behind this idea is that when an individual is close to becoming the best (example, Olympic athletes) he/she would invest greater time and effort on improving oneself than those who play sports as a hobby. My proposed distribution enhances the desirability of better solutions such that it is much more sensitive to small degrees of improvement which are amplified. Statistical analysis shows that the efficiency of the program increased both in terms of the time taken and the maximum fitness achieved with relative distribution of finesses. For instance, without employing relative distribution, simple GA (with hamming operator) was unable to come up with maximum fitness individuals even after 500 generations (over 50 runs) while using relative distribution gave us a perfect solution in only 33 generations (over 10 runs). Relative Distribution causes an improvement of 16% when I applied it to my program on evolving images.


Philip Hanson
Worcester Polytechnic Institute Senior
Advisor: Murali Mani
XQuery Optimization
Queries on XML data are increasingly widespread in use and scope of application, but optimization strategies are not yet as developed as they are for traditional DBMSs. Most strategies explored to date involve logical or physical query plan optimization. We propose a novel optimization for XQuery using semantic information from the XML schema in which we rewrite a query into an equivalent query with fewer XPath expressions based on schema information. Our experimental results indicate that this optimization can result in substantial performance improvements.


Ariel Hathaway
Wellesley College Senior
Advisor: Sohie Lee
Evaluating the role of syntax for novice programmers
Novice programmers are often initially frustrated with the strict syntax of computer programming languages. Recently, in an effort to ignite interest in computer programming and eliminate some of the difficulties that novice programmers may face, computer-based learning environments have been developed, which eliminate the need for the user to learn the syntax associated with a programming language. These applications allow users to drag and drop code segments, thus enabling them to learn the logic and problem-solving fundamentals of programming, without the risk of producing incorrect code. Despite the increasing popularity of such environments in computer science classrooms, the question remains – are these methods efficient for teaching programming, or do they simply prolong the inevitable of learning proper programming syntax? In order to answer this question, I have held short introductory computer programming workshops for Wellesley College students. Participants were divided into two separate groups. One group learned programming solely in Java (using Dr java as the IDE), while the other group initially learned Alice and then transitioned to Dr. Java. Introductory programming concepts such as variables, booleans, conditionals and loops were taught in both environments. My analysis will address the effectiveness of a drag-and-drop IDE. I'll compare and contrast these two groups with respect to how well the programming concepts were mastered, how likely students are to continue with computer science, and how much they enjoyed working with the programming environment.


David House
Boston University Junior
Advisor: Margrit Betke
Group: Zheng Wu, Ph.D. Student; Matt Walker, Ph.D. Student
Image Analysis of Microorganisms: Developing a System for the Identification, Segmentation, and Tracking of Cells and Cell Populations
Biomedical engineers typically capture large swaths of time-lapse microscopy images during the course of cellular research. Measurements of cell characteristics and observations about migrational behavior are drawn directly from the visual analysis of these images. At the Cellular and Subcellular Mechanics Laboratory (CSML) of Boston University, studies in cell migration are dependent upon the rapid visual analysis of images collected via phase-contrast microscopy. Researchers have traditionally analyzed cells within these images manually; however, the associated cost and time expenditures make this manual approach unfeasible for sufficiently large data sets. Measurement accuracy is likewise affected by the subjective nature of manual visual analysis, which requires researchers to hand-mark cell trajectories -- often resulting in imprecise or conflicting evaluations of cellular behavior. We address the issues associated with manual visual analysis by introducing an automated approach for tracking and analyzing migrating cells. Our automated approach alleviates the burden of extensive visual data processing, allowing researchers to quickly interpret the characteristics and behaviors of cells within an imaged population. Our method also precludes human subjectivity from affecting cellular analysis, ensuring that quantitative measurements of cell characteristics and qualitative judgements of migrational behavior are consistent across all data sets. By applying computer vision techniques to the biomedical field we realize a robust, reliable, and high-throughput system that supersedes human accuracy in analyzing and modeling the interactions of thousands of cells at a time.


Shahbano Imran
Boston College Senior
Advisor: H. Jiang
Video-Game Interaction through Vision-Based Input
The purpose of this project is to build an application using non-invasive vision based input for video games as a replacement for conventional input device like a mouse or a joystick for enhanced HCI. The phases of the implementation involve 3D pose estimation in real-time processing of video, and recognition of gestures through that human pose reconstruction. The limited pose estimation involves using the information about the location of the head and hands (from background subtraction / skin detection) to construct a body model and recognize and track the different parts of it. Tracking requires segmenting the subject from the background, and matching these segments during consecutive frames. I extract underlying 3D motion for more complex gestures, and turn that into a vision-based interface to a video game. A robust implementation of pose estimation could be used to create interesting vision-based interfaces. Fundamental limitations to current algorithms in pose estimation include the compromise between accuracy and real-time processing costs. I’m focusing on restricting variable factors and using controlled conditions to get maximum accuracy. The result is a collection of demos involving gesture-based interfaces and games.


Andrea Johnston
Wellesley CollegeSenior
Advisor: Mala L. Radhakrishnan
Implementation, Analysis and Improvement of an Integer Programming Method for the Combinatorial Design of Drug Molecules for Cocktails
In chemistry, a drug bind to a target to inhibit the function of a disease or pathogen. When mutation occurs, one inhibitor may no longer be sufficient because of changes in the efficacy of binding between drugs and mutated variants. We can use groupings of drugs, called drug cocktails, to inhibit many mutated target variants. To choose drugs for such groupings, we consider a combinatorial set of possible drug molecules built from molecular fragments. Considering such a set is advantageous in its potential for designing new drugs to bind to many target variants. Methods of optimization may be used to find the smallest possible grouping of drugs to inhibit all variants of a drug target from this combinatorial set. The task of finding the smallest grouping of drugs from a fixed set of inhibitors to a target can be cast in the form of the well-known set cover problem from integer programming. The combinatorial space of possible molecules built from fragments that we choose to consider requires a different approach, however. This version of drug cocktail design has been previously formulated as an integer program (Radhakrishnan and Tidor, J. Chem. Inf. Model. 2008). The current project has implemented an interface to this integer program as a Python module. The project has further analyzed time to optimality on randomly generated model target ensembles, and considered potential improvements to this solution time.


Michael Katsevman
Brandeis University Senior
Advisor: Tim Hickey
Exploring the Exocortex: An Approach to Optimizing Human Productivity
We describe the background, design, and prototype implementation of a system for the methodical augmentation of human intellect through interactive means. This was achieved by translating a narration of human activity into semantic frames which were used to construct a decision tree. Such a system was shown to be viable and usable.


Sean Kelley
Tufts University Freshman
Advisor: Soha Hassoun, Kyongbum Lee
Group: Doug Weaver, Ehsan Ullah, Gautham Sridharan (Graduate students)
Calculating Gibbs Free Energies with Subgraph Isomorphism
The field of computational biochemistry is an interdisciplinary one that combines computer science and biochemistry. Biochemistry deals with the workings of organic molecules; this project focuses on computer modeling of organic pathways (that is, series of chemical reactions that happen in living cells). The ultimate goal is a method for producing models that are accurate enough that they can significantly reduce the lab work required to, for example, research new drugs. Researchers will be able to concentrate their efforts on the more promising molecules.
A key component to developing these models is a trait each molecule has called its Gibbs free energy, and the relative free energies of molecules play a major role in dictating how those molecules interact. Group Contribution Theory describes breaking down organic molecules into "functional groups" - groups of atoms that have one collective fixed energy and are often repeated throughout organic molecules. Up to now, free energy calculated using group contribution theory had been done manually. By constructing a virtual molecule as a series of interconnected nodes - a graph - this portion of the project aims to automate the process. Conceptually, functional groups are laid onto the main molecule (not unlike a jigsaw puzzle) in the best possible way using a process called subgraph isomorphism. The energies are then tallied and tweaked as necessary and a result produced. This portion of the project, though nearly finished, is still a work in progress. The results so far have been promising, and efforts are now focused on optimizing the algorithm and testing it with a large variety of representative molecules.


Matthew Laquidara
University of Massachusetts Amherst Senior
http://pkmn.org
OPENPKMN: Lessons learned from an eight-year software project

Development on OPENPKMN started in 2001 to provide an online simulator of battles in Nintendo's Pokemon Red/Blue/Yellow games. Eight years later, it has come very close to accomplishing this aim. What started as a project envisioned to be accomplished in under a year's time with minimal knowledge of programming technique has expanded into the current project: a collection of programs written in three languages backed by an SQL database and connected by TCP/IP. The face of OPENPKMN is a client program written in Java that uses the Swing library to present a graphical interface. It was designed explicitly with the Model-View-Controller design pattern in mind. Using Java's AES libraries for encryption and TPC sockets for network communication, the client communicates with a remote server. The server runs two programs written in C. The first functions as a waiting room where users can coordinate battles. This task necessitates concurrency, which is provided by the pthreads library. The second program handles an individual battle with instances of it being spawned as needed. Various web-based server operations are handled by PHP scripts. A MySQL database provides a record of user data and battle statistics that the server side processes access extensively. OPENPKMN integrates many of the lessons learned in an undergraduate curriculum into a cohesive set of programs. It provides a compelling case for the didactic value of engineering a large software project over the course of multiple semesters.


Mark Leiserson
Tufts University Sophomore
Advisor: Benjamin Hescott, Donna Slonim, Lenore Cowen
Group: Professors Ben Hescott, Donna Slonim, and Lenore Cowen
Evaluating Between-Pathway Models Using Expression Data

Between-Pathway Models (BPMs) of genetic pathways consist of pairs of putative redundant pathways, and are used to explain the presence of fault-tolerant systems in vivo (in essence, back-up systems for genetic pathways). By using microarray gene expression data from knockout experiments, we are able to examine the change in expression of a pathway in a BPM when its analogous pathway is disabled. Using the microarray data, we systematically evaluate the quality of the BPMs from four different studies. This is the first validation test for Between-Pathway Models.


Jeffrey Li
Boston University Senior
Advisor: Michael Ruane, Babak Kia, Alan Pisano
Group: Kevin Algair, Brianna Carges, Amy Costandi, and Barry Lai (all Seniors) in assosiation with Saria Enterprises
Phoney Money
Phoney Money is a software and web service package that replaces a customer’s credit card with his or her iPhone for in-store transactions. This system allows iPhone users to use their iPhones to make secure in-store credit card transactions and allows stores to accept credit card payments made securely through customers’ iPhones. Targeted issues and major requirements in this project include enterprise scalability, security, and robustness. With a diverse set of needs, Phoney Money leverages several technologies, including: the Objective-C programming language, Java, MySQL, Secure Sockets Layer, and the open standard Extensible Messaging and Presence Protocol (XMPP) for communication between clients. In a typical transaction using this system, a customer approaches a cashier running customized point-of-sale software and Phoney Money’s web service middleware allows customer and cashier to identify each other and to send relevant credit card and price information over the web. The customer's credit card is then charged via the merchant's existing merchant account. This model requires no additional hardware and therefore requires minimal change for the merchant.

Providing users and merchants with another means of exchanging goods and services expands the marketplace. That is, it enables a whole new class of transactions - would be customers who have forgotten their wallets but have their phones can do business with merchants through our system. This platform also introduces mobile Web capabilities to the point-of-sale checkout process, laying a foundation for opportunities to streamline and enhance the commercial checkout process.


Henry Lo
UMass Boston Senior
Advisor: Marc Pomplun
Group: Tyler Garaas, graduating phd
Measuring the properties of the post-saccadic visual error calculation
Introduction and Motivation. When saccadic eye movements become inaccurate –be it through fatigue, injury, or artificially induced error– automatic motor learning mechanisms gradually adjust the saccadic end-point to compensate for consistent post-saccadic visual errors; this is referred to as saccadic adaptation. Many researchers now believe that a post-saccadic visual error calculation compares the intended and actual post-saccadic retinal images, possibly utilizing the anticipated retinal image found in the parietal cortex, to determine the visual error vector. In the present experiment we attempt to measure the properties of the visual error calculation directly by trans-saccadically replacing the saccade target (Gabor patch) by two alternative targets that are systematically varied in frequency, contrast, and orientation. Error calculation in the visual system is studied by measuring the probability of the subsequent, corrective saccade selecting a specific target as a function of the feature differences between the initial target and its two replacements. Methods. Participants completed 100 trials in which they made a 20° left-to-right saccade to the target. During their saccade, the target was replaced by two alternative targets randomly positioned on opposite sides of an invisible circle centered at the initial target position. Each of the alternative targets varied only in a single dimension from the initial target, and this dimension differed between the two targets. Gaze selection was determined according to the distances between the endpoint of the following saccade and the centers of the alternative targets. Results. Before it is possible to determine the properties of the visual error calculation, we must first verify that participants are systematically selecting one of the two alternative targets based on their visual appearance rather than on their position. Preliminary results do suggest feature-based selection, but further studies are necessary to determine the experimental configuration of minimal target-position interference with gaze selection.


Katherine Logwood
Mount Holyoke College Senior
Tetris Game
In the second CS course at Mount Holyoke, "Advanced Object-oriented Programming," we created a fully functional Tetris game. There are three main classes that control the game; the class representing a single piece with subclasses for each of the seven Tetris pieces, the class representing the board, and the class that controls the game itself. The TetrisPiece class holds a three-dimensional array, with the first dimension representing the rotation of the piece, and the second and third dimensions constructing a four by four array of Booleans corresponding to the presence or absence of a single block. The TetrisBoard maintains a two-dimensional array to which we add a TetrisPiece. This class contains methods to rotate and move the piece, and to check whether these moves are within the limits of the board or whether they will cause a collision with other pieces. The TetrisGame class adds an instance of the TetrisBoard and includes a keyboard event listener to allow the user to control the piece that is falling. Additionally, a tick event listener is added to make the pieces fall on their own at a speed proportional to the level of the game. This project was programmed using ActionScript 3.0 and Adobe Flash CS3. I am a senior at Mount Holyoke College. This was a project for a second course in computer science, called COMSC 102: Advanced Object-oriented Programming. The course was taught by Professor Audrey Lee-St. John. I would be willing to give a presentation on my project, and the website is http://yellow.cs.mtholyoke.edu/~klogwood/Tetris/tetris.html


John McDowell
University of Massachusetts – Amherst Sophomore
Codename: Vargach - A game
Codename: Vargach is an independent game that is currently being worked on by John McDowell. This game is in the genre of shooter; in the gaming world it is colloquially referred to as a “shmup.” This project has been in production for about fifteen months. The basic idea is the player controls a space ship dodging and shooting the enemies that approach. There are items that appear for the player to collect and upgrade the weapon that they use, generate a shield to protect themselves, and increase the overall speed of their ship for better maneuverability. There are, currently, four types of enemies that the player will encounter: bugs, poppers, assaulters, and fodders. Each of these has their own properties. Bugs seek the player. Poppers pop when shot and release four bugs. Assaulters move quickly across the screen in a sine curve. Fodders move in a similar curve to the assaulters, but with four of them in a line. Items that the player has access to are the weapons, shield, and speed. Weapons include a laser upgrade, flamethrower upgrade, and soon a missile upgrade. The laser, simply, shoots at a high rate of speed. The flamethrower has the ability to be fired constantly for a short period of time. The missiles will explode on contact with either the environment or foe. Any foe that enters this burst will also die. This covers most of the basic ideas that are in the game.


Kelly H. Moran
Tufts University Senior
Advisor: Benjamin Hescott
http://kelly.moranweb.com/thesis.shtml
A Context-sensitive ontology alignment algorithm

Aligning multiple ontologies has come to the forefront of the data integration field as a critical and complex problem without a single universally applicable solution. Many unique semi-automatic and automatic solutions have been proposed, each solving a piece of the alignment problem and leading to a more complete picture of how to best integrate the information of the Semantic Web. We present a context-sensitive ontology alignment algorithm that takes on one aspect of the problem: the problem of accurately identifying composite matches. These matches, which arise when one concept is equivalent to the combination of multiple others, are an often-overlooked portion of an accurate alignment. Our algorithm identifies these matches, along with the typical one-to-one matches, by taking advantage of the information provided by a concept’s surrounding concepts, referred to as the “context” of a concept. Because the algorithm looks more broadly at concepts and the information that their relationships confer, it can identify both composite and non-composite matches. In the end, this methodology provides more accurate matches between ontologies that differ structurally. The process of identifying all matches begins with linguistic matching to determine a preliminary set of possible matches. Then, it uses the contextual information, namely parent nodes, for the remainder of the process to filter the possible matches. It finishes with post-processing to identify the composite matches and to determine which of all of the matches are fully confident, undetermined, and not confident.


Adam Raczkowski
Tufts University Senior
Advisor: Benjamin Hescott
Three types of randomness
Three types of randomness are integral to the strength of public-key cryptography. With the techniques of Allender et al., we present an analysis of how the ability to quickly distinguish Kolmogorov randomness allows for a probabilistic attack on two of the conjectured hard problems underlying public-key cryptography: the discrete logarithm and factoring. Specifically, Kolmogorov random strings are pertinent to inverting one-way functions and distinguishing pseudorandomness from true uniform randomness. This method provides a lens that more sharply categorizes the hardness of the discrete logarithm and factoring in the hierarchy of well-known complexity classes. Using this approach, we establish relationships between provably secure public-key cryptography, Kolmogorov complexity, and the essential cryptographic primitives.


Michael Raybman
Brandeis University Senior
Advisor: Tim Hickey (Brandeis), Elena Losina (BU, Brigham and Women's Hospital)
Optimizing random number sequence utilization in Markov Monte Carlo models
Markov Monte Carlo modeling is used extensively in healthcare policy research to estimate outcomes of proposed initiatives. A Monte Carlo model requires each test subject to draw a random number at each step of the model’s progression and requires all test subjects to be completely independent of each other. Most modeling solutions to date use a unique seed to generate a different random number sequence for each subject. We found that for some models, using one seed per an entire model run produces statistically indistinguishable results with better single-node performance and architectural flexibility. We compare three methods of random number sequence generation in the model: 1 seed/subject with sequential processing, 1 seed/subject with parallel processing and 1 seed/run. We analyze the pros and cons of each in terms of result accuracy, architectural flexibility and performance in a single-node environment. As our test-bed, we use a Markov Monte Carlo model currently used by the Orthopedic Arthritis Outcomes Research Center at Brigham and Women’s Hospital.


Limo Sadalla
Brandeis University Senior
Advisor: Prof Hickey & Prof Dan Perlman
www.ecolibrary.org
Ecolibrary

Ecolibrary is an educational website- a source of free educational material on ecology, environment and conservation. The project was built using: php, mysql, html, css, javascript & ajax. The website content is free and can be sent to email or downloaded as images and pdfs. Users can navigate by: 1) Search full text descriptions, 2) Textbook-linked search, 3) Browse visually, and/or 4) Download linked lesson materials.


Paul Sawaya
Hampshire College Sophomore
http://www.paulsawaya.com/work/darwin%20proposal.pdf
An Evolutionary Simulation of Trends Data

This is a piece of digital art, lending itself to installation or viewing over the web, that shows trends in data using the motif of evolution. The current data set I am planning to use is Google Trends. The finished simulation will allow you to watch different "species" representing search terms battle for finite resources ("food") on a computer screen, with the change in search volume for each species representing its advantage (as if by natural selection) against each other. In addition, the user will be able to interact with the creatures on the screen, helping to illustrate the concepts of natural selection and the meaning behind the data in Google Trends. Development of this project is currently underway, and screenshots and a demo will definitely be ready in time for the conference. Because the project lends itself to a presentation, I am interested in presenting some slides with a demo of the project in addition to a poster, if selected.


Sarah Shiplett
Wellesley College Senior
Advisor: David Barrett, Olin College of Engineering
Graphical Programming and Computer Vision for Autonomous Vehicles
The LabView graphical programming language, published by National Instruments, boasts a rich library of high-level image processing functions. In this presentation, we will discuss using LabView to program vision-based navigation and localization behaviors for a mobile robot. In the first behavior, the robotic vehicle uses color learning and matching algorithms to perform autonomous road-following. In the second behavior, it uses color filtering and edge detection to accurately determine its own location based on a single multi-colored beacon. The overall benefits and drawbacks of using graphical programming languages like LabView in undergraduate engineering projects will also be discussed.


Ayla Solomon
Wellesley College Senior
Advisor: Franklyn Turbak
Administrative Role-Based Access Control for Linux

In a time when the Internet is increasingly dangerous and software increasingly complex, properly securing one’s system has become a widespread concern of all users, not just administrative experts. There are a number of ways to secure a Linux system; these methods vary in effectiveness and usability. Regular Linux discretionary access control is suitable for many mundane tasks and is easy to use, but it fails to confine insecure programs that run with administrative powers and is difficult to scale. Security Enhanced Linux (SELinux) is an extension to the Linux kernel that provides fine-grained controls for preventing malicious agents from exploiting these software vulnerabilities. It can be very effective, but its policy language is extremely low-level and its paradigm difficult to understand and use, making it difficult to map a high-level idea of a security policy to what needs to be done in SELinux, thus ruling out its use to a vast majority of normal users and even administrators of large systems. I am building a language on top of SELinux to implement administrative role-based access control (ARBAC), an intuitive, flexible, and scalable security paradigm well suited for user confinement. It will compile to the low-level SELinux policy language, using its existing framework to enforce the security policies. The goal is a language that can easily express high-level security ideas and have them enforced in a fine-grained way, helping prevent Linux security vulnerabilities from becoming exploits.


Megan Strait
Wellesley CollegeJunior
Advisor: Ellen Hildreth and Sohie Lee
Analyses of Chemical Spectral Data using Matlab
In chemistry, when working with unknown compounds there are several physical tests that can be run to determine the identities. Each type of test yields spectral data (numerical information) about the individual components of the compound, and it is the chemist who then analyzes the data and figures out the identity of the molecule, piece-by-piece. This process, for any level of chemist, can take between several minutes and several days depending on the complexity of the molecule. However, the time-consuming nature of spectral data analyses does not reflect its mathematical simplicity and consistency. Understanding this fact, I developed a graphical user interface using Matlab that performs an in-depth analysis of spectral data provided by the user. The analysis is composed of two parts. The first, formats the inputted data, and compares it to literature values (standard spectral values in chemistry) to determine all of the possible functional groups and fragments in a compound based on the given input. The second considers the results of the first part and by using several simple algorithms it crosschecks the results amongst the different types of spectral data, and determines the likelihood, for each functional group returned, of its presence in the compound. Although at its current level of sophistication the program cannot return the identity of a compound, it can significantly reduce the time necessary for identification to a matter of milliseconds.


Peter Swire
Brandeis University Junior
Advisor: Tim Hickey
Automusic
Using simple techniques, a computer is capable of algorithmically generating theme & variation sets. First, it tackles the problem of melody and melodic contour using stochastic methods. Next, it uses pathfinding algorithms to add a contrapuntal bassline. The bass and soprano constitute two of the voices; the computer uses constraint logic programming to add the tenor and alto. Finally, it identifies the areas (tonic, dominant, etc) and iteratively expands upon them, creating variations on the initial theme.


Manasi Vartak
Worcester Polytechnic Institute Junior
Advisor: Prof. Elke Rundensteiner
Group: Venkatesh Raghavan, Ph.D.; Shweta Shrivastava, Masters
Efficient Query Relaxation via Translation to Skyline Mapping Functions
Although databases expect precisely defined queries, users seldom have prior knowledge about the data to formulate such queries. Therefore, queries against large databases can output an empty answer set, requiring the user to repeatedly refine the query. An alternative is to selectively loosen predicates in the original query, like join and selection conditions, until a non-empty result can be obtained – an approach known as query relaxation (or refinement). However, query relaxation poses several challenges, namely (1) there are many strategies to relax the query; (2) the degree of modification required is not known beforehand; and (3) queries may need to be re-executed to ensure a non-empty result. Moreover, we need to incorporate user preferences, and minimize overhead for non-empty queries. State-of-the-art relaxation methodology makes use of skyline algorithms, statistical sampling of data, and multidimensional histograms. However, these approaches have a large computational cost, cannot extend to multiple tables, and lack user preference support. In this work we propose Predicate-Map-Translate (PMT), a novel technique to relax numeric select and join predicates using the PB-SMJ skyline algorithm developed at Worcester Polytechnic Institute. PB-SMJ performs multi-criteria optimization across multiple tables using input and output space partitioning, and mapping knowledge to reduce computational costs. PMT uses PB-SMJ by translating query relaxations to mapping functions, and minimizing values of mapping functions to find answers closest to the original query. This enables PMT to efficiently work across multiple tables without re-executing queries. Further PMT minimizes overhead for non-empty queries and can take user preferences into account.


Alicia West
Wellesley CollegeSophomore
Advisor: Ann Trenk
Who goes first? Finding Fair Rankings of the Points in a Partially Ordered Set
We provide an introduction to posets, or partially ordered sets, and give several examples, motivating our study by the real-world problem of triage in hospital emergency rooms. We define the total discrepancy of a poset and find the total discrepancy of the poset An (the anti-chain). We calculate the total discrepancy of the poset Sn, or the “Standard Example” and prove our result is correct. We also place our result in a larger context.


Zoe Yang
Mount Holyoke College Junior
Advisor: Professor Audrey St. John
http://yellow.cs.mtholyoke.edu/~zyang/cs102/FinalProject/
My Own Version of Frogger
The program I would like to submit to the symposium is my own version of the game Frogger. My program was written as a final project for CS102 Advanced Object-Oriented Programming, a second semester computer science program at Mount Holyoke College. The requirements of the project were to create a game from start to finish, and include a new feature not covered in lecture. I chose to write my game with ActionScript 3.0. In addition to the completion of the game, I also I added in several sound effects such as a frog bounce sound, a game over sound and a game won sound. The game operates on a model view control paradigm, which separates the graphics from the logic used in the game. The game included two different colored cars, a frog navigated by user inputed arrow keys, and a road array which the objects "traveled across." Each of the objects (the Frog and the two types of cars), were subclasses of a RoadObject superclass. The RoadObject class was then divided into a subclass of RoadObstacles, which at present includes the subclasses RedCar and BlueCar. Each different type of logic class in the game has a mirroring GUI class, with the same superclass/subclass structure. This model view control structure of the game made it easy to add in new types of road objects and sound effects into the game.


Donna Yee
Wellesley CollegeSophomore
Advisor: Eni Mustafaraj
Group: Nandini Dookeran (senior), Catherine Grevet (senior) , Serena Wales (senior)
Re-Connect: Social networking for research opportunities
Re-Connect is a user-friendly social network in development aimed at students interested in research, faculty members with research projects, and alumnae willing to share their research experiences. The website will run on Joomla! and depend heavily on user-generated content. In the current design it contains three main areas: users, research, and resources. Users, much like in Facebook, will have profiles displaying previous research experiences, current projects, as well as opportunities they have connected with or hope to connect with. Different types of users such as faculty members and students will be differentiated by their profiles. The research area will have two main subareas. One area will list opportunities, by including all project relevant information such as descriptions and time period. The other, experiences, is where users will post abstracts, media (such as videos or photos) relevant to their past experiences. They can rate research activities or programs to help interested students in their search. The third area, resources, will include research and scholarship programs. Besides the standard information such as url links and descriptions, the users will be able to rate the helpfulness of different resources based on their experience. Another key component are the news feeds appearing in different areas and profiles. Users will be able to see various types of feed ranging from friend feeds to opportunity listings to feeds about new experience postings. We hope that Re-Connect will prove to be useful resource at Wellesley College that could later be expanded to other colleges.



Student Abstracts, Oral Presentations


Automusic
Peter Swire
Brandeis University Junior
Advisor: Tim Hickey

Abstract: Using simple techniques, a computer is capable of algorithmically generating theme & variation sets. First, it tackles the problem of melody and melodic contour using stochastic methods. Next, it uses pathfinding algorithms to add a contrapuntal bassline. The bass and soprano constitute two of the voices; the computer uses constraint logic programming to add the tenor and alto. Finally, it identifies the areas (tonic, dominant, etc) and iteratively expands upon them, creating variations on the initial theme.

Evaluating Between-Pathway Models Using Expression Data
Mark Leiserson
Tufts University Sophomore
Advisor: Benjamin Hescott, Donna Slonim, Lenore Cowen
Group: Professors Ben Hescott, Donna Slonim, and Lenore Cowen

Abstract: Between-Pathway Models (BPMs) of genetic pathways consist of pairs of putative redundant pathways, and are used to explain the presence of fault-tolerant systems in vivo (in essence, back-up systems for genetic pathways). By using microarray gene expression data from knockout experiments, we are able to examine the change in expression of a pathway in a BPM when its analogous pathway is disabled. Using the microarray data, we systematically evaluate the quality of the BPMs from four different studies. This is the first validation test for Between-Pathway Models.

WiiPaint: Gesture recognition and interface design in a collaborative art application
Chloe Fan
Wellesley CollegeSenior
Advisor: Panagiotis Metaxas
http://wiipaint.chloefan.com

Abstract: The Nintendo Wii Remote is primarily known as the innovative game controller for the Nintendo Wii game console. Its motion sensing and tracking abilities allow users to use natural gestures instead of buttons and joysticks to play games that mimic physical movement. The Wii Remote's Bluetooth capabilities, IR camera, and 3-axis accelerometer also make it a popular device in Human-Computer Interaction research as an ergonomic, widely-available and affordable tangible user interface. Using a computer’s Bluetooth connection, we were able to connect up to four Wii Remotes to a PC and create demo applications in Director, Flash, and GlovePIE that tested the Wii Remote’s limitations in different contexts. In this project, we explore the Wii Remote outside of competitive gaming by creating a collaborative art application in Flash called WiiPaint. Using the WiiFlash API, we are able to retrieve accelerometer, IR camera, and button values to control a painting application where up to four users can collaborate. Initial user studies have shown that users tend to use point-and-click gestures in the painting application. We are interested in encouraging full-body collaborative interaction through the creation of music-inspired art. Focusing on gesture recognition and interface design, WiiPaint has evolved from a point-and-click painting application into an abstract drawing experience mediated by music. By exploring different manipulations of the Wii Remote’s physical affordances and the space in which users interact with WiiPaint, we hope to make the experience more tangible and immersive.

Video-Game Interaction through Vision-Based Input
Shahbano Imran
Boston College Senior
Advisor: H. Jiang

Abstract: The purpose of this project is to build an application using non-invasive vision based input for video games as a replacement for conventional input device like a mouse or a joystick for enhanced HCI. The phases of the implementation involve 3D pose estimation in real-time processing of video, and recognition of gestures through that human pose reconstruction. The limited pose estimation involves using the information about the location of the head and hands (from background subtraction / skin detection) to construct a body model and recognize and track the different parts of it. Tracking requires segmenting the subject from the background, and matching these segments during consecutive frames. I extract underlying 3D motion for more complex gestures, and turn that into a vision-based interface to a video game. A robust implementation of pose estimation could be used to create interesting vision-based interfaces. Fundamental limitations to current algorithms in pose estimation include the compromise between accuracy and real-time processing costs. I’m focusing on restricting variable factors and using controlled conditions to get maximum accuracy. The result is a collection of demos involving gesture-based interfaces and games.

iRobot Create API Implemented in Scheme
John Fertitta
University of Massachusetts Lowell Junior
Organization of Programming Langauges
Advisor: Professor Fred Martin
http://www.cs.uml.edu/ecg/index.php/OrganizationProgrammingLanguagesFall2008/IRobotCreateSchemeAPI

Abstract: The iRobot Create is an experimenter's robot platform based on the Roomba vacuum cleaner. It is controlled via its serial interface from a compiled C program running on an optional processor unit, or any off-board computer platform. In this project, I developed an API in the Scheme language for controlling the Create through its serial interface. Although libraries have been written in C and Python to control the robot, there had not been one implemented in Scheme. I implemented the full Create command set, including movement commands (drive, drive-direct, stop), user interface commands (LEDs, switches, and sound output device), and sensor commands (bump sensors, wall distance sensors, encoders, and cliff sensors). In developing the code, I took advantage of Scheme's functional programming capabilities. I used a hash table of lambda functions to process data packets returned by the robot's serial API. When a sensor is queried, the lambda function that will parse the response of that sensor is retrieved from the hash table, and passed to a listener that uses the function to process the response from the robot. The project includes a demonstration of the Create as a fully autonomous robot. It carries a Linux netbook running a control program written PLT-Scheme as its "brain."

Using the Nintendo Wii to Assess Motility
Rebecca Groveman
Mount Holyoke College Senior
Honors Thesis: Using the Nintendo Wii to Assess Motility
Advisor: Barbara Lerner

Abstract: There are many high-end systems available to assess motility. Motility analysis is an important issue, especially in eldercare. Due to health care costs and a shortage of healthcare providers, institutional support for the growing number of elders in society will be impossible. An alternative to institutional support is in technology to assist in aging in place. Though the high-end systems that assess motility help elders to stay independent for longer, these systems are expensive and require specialized equipment. My project explores the viability of using the Nintendo Wii as an inexpensive alternative. The high-end systems available can collect data with a greater accuracy than the Wiimote can, and can collect more data -- while the Wiimote can track up to four IR points simultaneously, a commercial system can track many more, and can visualize the data with greater sophistication. However, the Wii is inexpensive, intuitive, and accepted by the elderly population. While it cannot compete with high-end systems, it may be an acceptable substitute to allow for more frequent motility analysis. My project will determine whether it can be used to gather data with sufficient accuracy to be useful.













.
First New England Undergraduate Computing Symposium:
Celebrating Excellence and Diversity in Computer Science

Science Center, Wellesley College, Wellesley MA
April 18, 2009

Table of Contents

**************************************


Symposium Agenda


Biographies for the Keynote Speaker, Computer Science Chairs, and EL Alliance Representatives


Student Abstracts, Posters


Student Abstracts, Oral Presentations

.First New England Undergraduate Computing Symposium
Agenda - April 18, 2009

9:00-10:30 am    Registration and poster set-up

10:30-11:30 am    Keynote speaker: Professor Roscoe Giles, Boston University
    “Empowering Excellence, Diversity, and Leadership in computing”

11:30 am-12:30 pm    Poster Session I
Convex Partitions with 2-Edge Connected Dual Graphs - Marwan Al Jubeh, Tufts University
Designing My First Game - Patrick Antoine, Tufts University
Architectural Design of iSENSE Web Software System - William Brendel, UMass Lowell
Petrified- Design and Development of a Multiplayer Survival/Horror Game - Skyler Clark, Worcester Polytechnical Institute
Scheme-based web applications - Chris Corcoran, UMass Lowell
Learning Programming and Teamwork with Sudoku - Laura Costello, Tufts University
Improving the Privacy Settings Interface of Online Social Networks - Charisse Cotton, Tufts University
Access Control in P2P Networks - Jason Croft, Boston College
Polynomial Time Primality Testing and Sub-exponential Factoring Algorithms - David Emerson, Boston College
WiiPaint: Gesture recognition and interface design in a collaborative art application - Chloe Fan, Wellesley College, (Speaker)
Using the SunSPOT Platform for Wireless Data Collection - John Fertitta, UMass Lowell
iRobot Create API Implemented in Scheme - John Fertitta, UMass Lowell, (Speaker)
Motivating Sustainable Behaviors with an Online Social Visualization - Catherine Grevet, Wellesley College
Using the Nintendo Wii to Assess Motility - Rebecca Groveman, Mount Holyoke College, (Speaker)
Relative Distribution for increasing efficiency of Genetic Algorithm - Surabhi Gupta, Mount Holyoke College
XQuery Optimization - Philip Hanson, Worcester Polytechnic Institute
Evaluating the role of syntax for novice programmers - Ariel Hathaway, Wellesley College
Image Analysis of Microorganisms: Developing a System for the Identification, Segmentation, and Tracking of Cells and Cell Populations - David House, Boston University
Video-Game Interaction through Vision-Based Input - Shahbano Imran, Boston College, (Speaker)
Implementation, Analysis and Improvement of an Integer Programming Method for the Combinatorial Design of Drug Molecules for Cocktails - Andrea Johnston, Wellesley College

12:30- 1:30 pm    Lunch

1:30- 2:30 pm    Poster Session II
Exploring the Exocortex: An Approach to Optimizing Human Productivity - Mike Katsevman, Brandeis University
Calculating Gibbs Free Energies with Subgraph Isomorphism - Sean Kelley, Tufts University
OPENPKMN: Lessons learned from an eight-year software project - Matthew Laquidara, UMass Amherst
Between-Pathway Models - Mark Leiserson, Tufts University, (Speaker)
Phoney Money - Jeffrey Li, bu
Measuring the properties of the post-saccadic visual error calculation - Henry Lo, UMass Boston
A Tetris web application - Katherine Logwood, Mount Holyoke College
Codename: Vargach - A game - John McDowell, UMass Amherst
Optimizing random number sequence utilization in Markov Monte Carlo models - brandeis Michael , Raybman
A Context-sensitive ontology alignment algorithm - Kelly Moran, Tufts University
Genetic Programming in Robot Obstacle Avoidance - Bradford N Barr, Hampshire College
Three types of randomness - Adam Raczkowski, Tufts University
Ecolibrary - Limo Sadalla, Brandeis University
An Evolutionary Simulation of Trends Data - Paul Sawaya, Hampshire College
Graphical Programming and Computer Vision for Autonomous Vehicles - Sarah Shiplett, Wellesley College
Administrative Role-Based Access Control for Linux - Ayla Solomon, Wellesley College
Analyses of Chemical Spectral Data using Matlab - Megan Strait, Wellesley College
Automusic - Peter Swire, Brandeis University (Speaker)
Efficient Query Relaxation via Translation to Skyline Mapping Functions - Manasi Vartak, Worcester Polytechnical Institute
Who goes first? Finding Fair Rankings of the Points in a Partially Ordered Set - Alicia West, Wellesley College
My own version of Frogger - Zoe Yang, Mount Holyoke College
Re-Connect: Social networking for research opportunities - Donna Yee, Wellesley College

2:30- 3:30 pm    Student Presentations
Automusic - Peter Swire, Brandeis University
Between-Pathway Models - Mark Leiserson, Tufts University
WiiPaint: Gesture recognition and interface design in a collaborative art application - Chloe Fan, Wellesley College
Video-Game Interaction through Vision-Based Input - Shahbano Imran, Boston College
iRobot Create API Implemented in Scheme - John Fertitta, UMass Lowell
Using the Nintendo Wii to Assess Motility - Rebecca Groveman, Mount Holyoke College

3:30- 4:00 pm    Closing Remarks
.


Keynote Speaker

Roscoe Giles is a professor in the Department of Electrical and Computer Engineering at Boston University (BU); the Deputy Director of the Center for Computational Science, Boston University; the Executive Director of the Institute for African American E-Culture; and past Chair of the BU Faculty; and the Co-PI of the NSF-funded collaboration, Engaging People in Cyberinfrastructure (EPIC), along with Greg Moses of the University of Wisconsin, Madison. For his work in increasing the participation of minorities in computer and computational science, in 2000 Giles received the A. Nico Habermann award from the Computing Research Association. Giles' research focuses on the application of high performance and parallel computing to physics and materials problems, and he has developed parallel algorithms for large-scale micromagnetic modeling and molecular dynamics simulation. As an outgrowth of these computational science research efforts, he has become committed to prototyping and building computational and educational infrastructure that will enable broad participation of scholars and students in high-performance computing. Professor Giles received his PhD in Physics from Stanford University in 1975 and Bachelor of Arts in Physics from the University of Chicago in 1970.

Computer Science Chairs and EL Alliance Representatives

Andrew Barto chairs the Department of Computer Science, University of Massachusetts Amherst. He earned a B.S. in mathematics in 1970 and a Ph.D. in Computer Science in 1975, both from the University of Michigan. He is Co-Director of the Autonomous Learning Laboratory and a core faculty member of the Neuroscience and Behavior Program of the University of Massachusetts. His research centers on learning in natural and artificial systems, and he has worked on learning algorithms that are useful for engineering applications and also make contact with learning as studied by psychologists and neuroscientists. He is co-author with Richard Sutton of the book “Reinforcement Learning: An Introduction,” MIT Press, 1998.

Peter Fejer has been chair of the Computer Science Department at UMass Boston since 2001. He has his BA in Mathematics from Reed College and his MS and PhD in Mathematics from the University of Chicago. He has been at UMass Boston since 1984. Professor Fejer is an internationally recognized researcher in Computability Theory, a field at the border of Mathematical Logic and Computer Science. He has been invited to participate three times in conferences in Computability Theory at the Oberwolfach Mathematical Research Institute in Germany and has spent one and a half years on sabbatical at Heidelberg University, where he has twice been guest professor.

Michael A. Gennert is Department Head of the Computer Science Department and Director of the Robotics Engineering Program at Worcester Polytechnic Institute, where he is Associate Professor of Computer Science and Associate Professor of Electrical and Computer Engineering. He has worked at the University of Massachusetts Medical Center, Worcester, MA, the University of California/Riverside, General Electric Ordnance Systems, Pittsfield, MA and PAR Technology Corporation, New Hartford, NY. He received the S.B. in Computer Science, S.B. in Electrical Engineering, and S.M. in Electrical Engineering in 1980 and the Sc.D. in Electrical Engineering in 1987 from the Massachusetts Institute of Technology. Dr. Gennert is interested in Computer Vision, Image Processing, Artificial Intelligence, Scientific Databases, and Programming Languages, with ongoing projects in biomedical image processing, robotics, stereo and motion vision, very large spatio-temporal databases, and programming language semantics. He is author or co-author of over 80 papers. He is a member of IEEE, ACM, NDIA Robotics Division, and the Massachusetts Technology Leadership Council Robotics Cluster.

Timothy Hickey has been chair of the Computer Science Department at Brandeis University since 2001 and is chair of the Internet Studies program and a member of the Film Studies program. He received his BA in Mathematics from Brandeis University and a PhD in Mathematics from the University of Chicago, and has been teaching in the Computer Science Department since 1984. Professor Hickey has many active research interests including scientific visualization, collaborative editing, interval arithmetic, constraint logic programming, scripting languages for web programming, parallel and distributed computing, and computer-aided education.

Raquell Holmes received her Ph.D. in Cell, Molecular, Developmental Biology from Tufts Sackler School of Biomedical Sciences in Boston, MA. After her postdoctoral studies at the Dana Farber Cancer Institute, she joined the Center for Computational Science at Boston University and subsequently the Center for Cell Analysis and Modeling at the University of Connecticut Health Center. She leads education, outreach and training efforts focused on computational cell biology. Her book, A Cell Biologist's Guide to Modeling and Bioinformatics, is one means of supporting interdisciplinary training in biology education. Dr. Holmes also integrates theatrical performance and improvisation to create supportive, inclusive learning environments for scientists and students to develop new skills and enter new areas of science. Holmes is the chair for the SC2010 Broader Engagement Program—SC is an international conference with more than 8,000 attendees, focused on the use of high performance computers and networking. The Broader Engagement program encourages the participation of underrepresented groups from computing to fully participate in this annual event.

Ann Redelfs’ career has included positions at the Cornell Theory Center, Center for Research on Parallel Computation (Rice University), and the San Diego Supercomputer Center (SDSC), where she directed external relations and education/outreach programs focused on increasing the participation of women, minorities, and persons with disabilities in science, technology, engineering, and mathematics disciplines. At SDSC, Redelfs served as a member of the Leadership Team for the Education, Outreach, and Training Partnership for Advanced Computational Infrastructure (EOTPACI), which had more than 30 partners nationwide. Also at SDSC, she was the original Diversity Offi cer, developing an organization-wide diversity plan. She served on the Leadership Team of the Engaging People in Cyberinfrastructure (EPIC) program, which continued the momentum of EOT-PACI, engaging a wider community. She has been active with the Computing Research Association’s Committee on the Status of Women (CRA-W), the Anita Borg Institute for Women and Technology, the Coalition to Diversify Computing, and diversity-focused conferences, including the Grace Hopper Celebration of Women in Computing, and the Richard Tapia Celebration of Diversity in Computing.

Diane Souvaine chairs the Department of Computer Science at Tufts University and is serving a 6-year term on the National Science Board that establishes policies for the National Science Foundation and advises the President and Congress on issues related to science and engineering research and education. Prior to Tufts, Souvaine served on the faculty at Rutgers University for twelve years, and earned a Ph.D. from Princeton and an A.B. from Harvard. She conducts research in computational geometry, a field concerned with the design and analysis of algorithms for solving geometric problems. Applications can be found in computer graphics, robotics, computer-aided design, molecular biology, and statistics.

Lee Spector is a Professor of Computer Science in the School of Cognitive Science at Hampshire College in Amherst, Massachusetts, and an adjunct professor in the Department of Computer Science at the University of Massachusetts, Amherst. He received a B.A. in Philosophy from Oberlin College in 1984 and a Ph.D. from the Department of Computer Science at the University of Maryland in 1992. His areas of teaching and research include genetic and evolutionary computation, quantum computation, and a variety of intersections between computer science, cognitive science, evolutionary biology, and the arts. He is the Editor-in-Chief of the journal Genetic Programming and Evolvable Machines (published by Springer) and a member of the editorial board of Evolutionary Computation (published by MIT Press). He is also a member of the SIGEVO executive committee and he was named a Fellow of the International Society for Genetic and Evolutionary Computation.

Jie Wang is Professor and Chair of Computer Science at the University of Massachusetts Lowell and Director of its Center for Network and Information Security. He received a Ph.D. in Computer Science from Boston University in 1991, a Master of Engineering in Computer Science from Zhongshan (Sun Yat-sen) University in 1985, and a Bachelor of Science in Computational Mathematics from the same university in 1982. Professor Wang has over 18 years of teaching experience, as well as security consulting experience in the financial industry. Professor Wang's research interests include optimization algorithms, network security, and computational complexity theory. He is interested in average-case computational complexity and algorithmic problems arising from practical applications in wireless sensor networks, high-dimensional spatio-temporal databases, computational medicine, and other areas. His research has been funded continuously by the NSF since 1991. His research has also been funded by IBM, Intel, Natural Science Foundation of China, and other resources. He has published over 100 journal and conference papers, three books, and three edited books. He is active in professional service, including chairing and serving conference program committees and organizing workshops.



About the New England Computer Science Chairs (NECSC)
http://www.neucs.org
NECSC was formed by Computer Science Department Chairs in the New England area from nearly two dozen leading institutions, and they are committed to providing opportunities for students in the region through joint symposia and other offerings. Key to the success of NECSC is the opportunity for students to network with their colleagues in the area and to share experiences.


About the Empowering Leadership: Computing Scholars of Tomorrow (EL Alliance):
http://empoweringleadership.org
The EL Alliance is National Science Foundation Broadening Participation in Computing (BPC) alliance of dedicated students, faculty, and staff that provides experiences and programs that aim to ensure the success of minority scholars in computing at research institutions. Students are encouraged to join at http://empoweringleadership.org/join.html to receive information about mentoring, summer research, conference travel support, and more.

.

Comments