NEUCS10‎ > ‎

abstracts


NEUCS 2010 Abstracts




Surfing Through Cyberspace
abstract type: course project from intro course
by Jeremy Patton, a junior at Brandeis University
with Stephen Gray (Junior), Jackey Lane (Sophomore)
related course: COSI 65a, taught by Timothy Hickey
URL: http://popper.cs-i.brandeis.edu:8088/tim/cs65a/students/jrpatton/
Surfing Through Cyberspace is a video game created in the open source 3D modeling program, Blender. The object of the game is to move along one of three tracks and collect coins while avoiding falling off the edge. It uses the Blender game engine, homemade models and textures, and a python script included with Blender. The game demonstrates the use of sensors, actuators, and physics for game play; action libraries, animation, and UV mapping for style; and a simple user interface.


Bread Mold Can Tell Time: A computational analysis of mold circadian clocks
abstract type: course project from intro course
by David Quigley, a sophomore at Colby College
with Daniel Nolan (senior) Christopher Murdock (senior)
related course: Systems Biology II CS441, taught by Stephanie R. Taylor
URL:
Circadian clocks provide organisms with the ability to coordinate daily rhythms in their behavior. These biological oscillators are regulated by interactions among certain cellular components. To understand such complicated networks, it is necessary to use methods from the field of computational biology. A convenient approach is to represent the clock as a mathematical model comprised of ordinary differential equations. Multiple models have been developed for the circadian clock of Neurospora Crassa, a red bread mold. Here, we consider three of these models. Employing a velocity response curve technique, we perform a sensitivity analysis of the three models. The analysis should provide insight into not only the biological accuracy of each model, but also underlying design principles of the Nerospora Crassa circadian clock.



Creating a Game Engine: A well-tuned balance

abstract type: course project from intro course
by Foster Lockwood, a freshman at Tufts University
related course: Introduction to Game Development, taught by Ming Chow
URL: https://sourceforge.net/projects/slugnoir/
After making my first game engine in Java (after previously using C# and Game Maker Language) I realized that among all languages there are similar sacrifices that one must make to ensure the best performance/experience of the engine. Pre-loading vs. real-time caching, parent objects systems vs. individual object systems, and using different buffering strategies are just some of the differences that one tackle when developing an engine. As a freshman I obviously haven't been exposed to the formal and modern approaches, but that provides me with the opportunity to remind everyone currently in game development careers how they thought (and how their programming minds worked) back when they were in my position.



Real-Time Algorithmic Musical Arrangement and Composition
abstract type: course project from intro course
by Eric Fairbanks, a junior at UMass Lowell
related course: Organization of Programming Languages, taught by Prof. Fred Martin
URL:
Impromptu is a Scheme-based environment that utilizes OpenGL, the Cocoa GUI framework and Core Audio to provide a rich multimedia framework for rapid development of procedurally generated art. Using these tools, I developed LIME, the Live Improvisation Music Entity. LIME provides the user with a customizable foundation upon which complex musical algorithms and interfaces may be constructed. The primary goal of LIME is to develop into a modular system that presents the user with an efficient interface for real-time modification and arrangement of recorded musical materials. Using LIME as a base, I have developed a demonstration that showcases the usefulness of having an interactive system for musical improvisation that can be modified on-the-fly. It loads a previously recorded musical pattern into memory and lets the user write algorithms that change the way this pattern is reproduced, while simultaneously allowing the user to interact with playback via a computer keyboard.


Real Time Swimming Stroke Detection

abstract type: course project from upper level course
by Brett Beaulieu-Jones, a junior at Boston College
related course: CS:390 Image and Video Understanding, taught by Hao Jiang
URL:
I propose a novel scheme for the real- time tracking of swimming efficiency through the counting of a swimmer’s strokes. Skin detection is initially utilized to detect, recognize and track a swimmer. Once a swimmer is identified, they are isolated and this region is normalized. This region is used to recognize the stroke of the swimmer and to maintain a count of the number of strokes the swimmer takes. This method can be effectively used to monitor and track the swimmer’s stroke count in real time, effectively monitoring the efficiency of a swimmer’s stroke in a cluttered environment. Finally shape matching is utilized to recognize different stroke segments, and to align different swimmers for comparison and evaluation.



Simulating Influence on a Global Scale
abstract type: course project from upper level course
by A. Conrad Nied, a junior at Boston University
related course: CS591 - Advanced Topics in Data Minin, taught by Evimaria Terzi
URL:
Infections and other forms of influence spread across more than nodes and edges, but the world as a whole. This project implements a data structure in visualizing forms of influence across the social network that is the globe. Algorithms from anthropology can be applied to this program and simulated. Anthropology is the study of humanity; more specifically it studies individuals and the relations between them, such as culture, religion, language, power, and even public health (in biological anthropology). These topics can be translated to the nodes and edges of a social network. Problems can be translated to algorithms from then. Thereby, this project uses anthropological intuition and software developed to display a global network in the map of the world. Specific problems that are modeled are Disease Spread, Empire Building, Cultural Diffusion (ie. of language), and Population Migration.





Peer and Authority Influence in Social Networks
abstract type: course project from upper level course
by George Brova, a sophomore at Boston University
related course: CS591 - Advanced Topics in Data Mining, taught by Evimaria Terzi
URL:
In many social networks, ties between individuals shape behavior patterns such as purchasing decisions, fashion trends, or even shifts in intellectual paradigms. Identifying the driving forces behind an emerging trend, or the reasons a paradigm shift occurs, can be very useful to understand individuals' behavior, or to suggest strategies that might influence the evolution of a given network. In this project, we propose methods to distinguish between different forms of social influence; specifically, we distinguish between the peer-influence, authority-influence, and no-influence models. This problem is difficult in general, since factors such as homophily and unobservable confounding variables can induce statistical correlations. We delineate the problem by first defining and implementing the different models of influence, and classifying differences between authoritative and non-authoritative nodes in a real-world network. We then propose a test to determine whether agents are influenced predominantly by their peers or by relevant authority figures, given a time series of the actions taken. We confirm the accuracy of this test on synthetically generated graphs, by randomly propagating new trends according to the aforementioned models. Finally, we analyze a coauthorship network to identify authority figures in different research areas (which we identify as clusters of the graph), and to ultimately determine whether these authority figures play a significant role in defining the evolution of research interests in the respective fields.



Intro to Computer and Information Security
abstract type: course project from upper level course
by Sahar Massachi, a junior at Brandeis University
related course: ENGR 3410: Computer Architecture (At Olin College), taught by
URL: http://sites.google.com/site/cacsolin/
The field of Computer/Information Security is a strange beast. It could incorporate many different subfields of other disciplines - computer hardware and software, of course, but also systems logic, cryptography, and general "security theory". While there are a few good books that serve as introductions to the field, I realized that deciding which topics can be mentioned in an introduction is quite hard, and therefore approaches are varied. Furthermore, the physical book format, while it has several advantages, also lacks the power of hypertext. Therefore, I decided to share what I learned in my independent study of computer security in a more natural and interesting way than a long boring essay. By addressing broad concepts, specific details and implementations, and some case studies I found interesting along the way, and linking terms together using the power of hypertext, I hope to present a more natural (and interesting!) way to learn about the topic.




A Parameter-based Investigation of Oscillatory Behavior in a Model for the Mammalian Circadian Clock
abstract type: course project from upper level course
by Andrew Cox, a senior at Colby College
with Hannah Coulson, senior
related course: CS441 Systems Biology II, taught by Stephanie R Taylor
URL:
Circadian clocks regulate the day-night biological cycle in living organisms, including plants, animals, fungi, and some bacteria. Mammalia have similar endogenous circadian gene regulatory networks located in the suprachiasmatic nuclei of the anterior hypothalamus, so the study of their clocks is generally conducted as a class. Henry Mirsky (UCSB) developed a mathematical model of Mus musculus single cell rhythms by describing 25 biological species with 135 parameters in a system of ordinary differential equations (ODEs), using standard Michaelis-Menten, Hill, and mass action enzyme kinetics. The model consists of two regulatory loops, which we name the primary positive feedback loop and the ancillary negative feedback loop. We perturbed the model in MATLAB (MathWorks, Inc) in separate sensitivity and bifurcation analyses. We found that the ancillary loop is relatively insensitive to parameter perturbation while the primary loop is highly sensitive to perturbations. We also confirmed that parameters related to cellular function, such as gene transcription rates, were more sensitive than those exclusive to the model. These data suggest that the positive regulatory loop is primarily responsible for maintaining oscillations in vivo and that the negative regulatory loop confers non-robustness-related characteristics to the model. Further research will perform similar analysis on multi-cellular tissue models whose parameter vectors are currently being discovered.



Rhythmicity and Sensitivity of the Mammalian Circadian Clock

abstract type: course project from upper level course
by David Brazel, a sophomore at Colby College
related course: CS441 - Systems Biology II, taught by Stephanie Taylor
URL:
A major class of systems studied in computational biology is the circadian clock. Circadian clocks are molecular clocks found in the cells of animals, plants, fungi, and bacteria which allow organisms to coordinate behavior on a 24-hour cycle. The mammalian circadian clock is located in the suprachiasmatic nucleus and consists of many individual molecular clocks linked together in a synchronized neural network. Studies have shown that isolated circadian neurons tend to be poor clocks and are frequently either arrhythmic or damped. In addition, computer simulations of networked circadian neurons have shown that successful synchronization tends to occur when the network contains many damped cells. This result may be explained by the theoretical prediction that damped cells will be more sensitive and more easily shifted. We are currently using simulated populations of mammalian circadian neurons to examine the relationship between damping and sensitivity.



Comparison of Drosophila Circadian Clock Models Through Oscillator-specific Phase Sensitivity Analysis
abstract type: course project from upper level course
by Sarah Harmon, a sophomore at Colby College
with Leah Perlmutter (sophomore), Allyson Cheever (junior)
related course: CS441, taught by Stephanie Taylor
URL:
Mathematical models are essential in the study of biological systems because they help us understand the systems they represent. Many models have been developed to represent the daily biological cycles, or “circadian rhythms”, of the common fruit fly Drosophila melanogaster. These rhythms are governed by the expression of multiple genes throughout the day and can be expressed mathematically through ordinary differential equations that describe the interaction between clock-specific mRNAs and proteins. We examine and compare several mathematical models of Drosophila using a measure that is particularly suited for circadian clocks: oscillator-specific phase-sensitivity analysis. This method of analysis predicts how an oscillating model's phase will change under perturbations of different components or rate constants. In this way, we quantify the importance of each component and rate constant to learn more about the model. Characteristics that differ between models reveal different approaches to modeling the same system. Characteristics common to all models likely reveal the underlying structure of the circadian clock and can be used to inform further research.




Traveling Salesman Solver for Amherst School Bus Routes
abstract type: course project from upper level course
by Paul Sawaya, a junior at Hampshire College
with John Schanck, junior
related course: CS 34, taught by Catherine McGeoch
URL:
The focus of this project is the application of advanced algorithm techniques to real world problems. We studied search techniques and heuristics to solve NP-hard problems such as graph coloring and traveling salesman, and eventually applied them to the problem of scheduling the bus routes for public schools in Amherst. Our new routes are optimized for both travel time and distance, and based on real GIS data and information from the Amherst school system. Our first optimizations were performed with hill climbing and 2 and 3 opt, with the possibility of exploring metaheuristics such as simulated annealing and tabu search for an even improved solution.



Virtual Piano
abstract type: course project from upper level course
by Michelle DeVeaux, a sophomore at Mount Holyoke College
with Cleo Schneider, junior
related course: CS 240: Interactive Media, taught by Audrey Lee-St. John
URL: http://minerva.cs.mtholyoke.edu/ihart/
This Virtual Piano application was created for an Interactive Media class, a projects-based course. I completed programming this application in less than two weeks, with my only prior computer science experience from CS 101 the previous semester. The projects created by students in this course use an API developed by Mount Holyoke junior Cleo Schneider for an endeavor called IHart: Interactive Hallways for Attraction and Retention in Technology. The purpose of IHart is to increase excitement about computer science and the creative use of technology. The IHart API allows for the creation of interactive projections that are displayed on the floors or walls of college building hallways. As individuals travel through the hallways, they can interact with the projections through their motions or shadows. Using OpenCV, which implements standard techniques from computer vision, information about “blobs” (such as x and y coordinates) is sent to Flash. My Flash application assigns a range of x and y coordinates to particular notes on the piano, and plays the correct note in real time, based on the coordinates of moving “blobs.” This allows people to interact with and play the Virtual Piano by walking in front of (for wall projection) or on top of (for floor projection) the desired note.



Semantic Grapher: Visualizing Relationships between Concepts
abstract type: course project from upper level course
by Todd Soule, a junior at Tufts University
related course: Comp 150-04: Visualization, taught by Sara Su
URL:
Semantic Grapher is a visualization tool that takes in one body of freeform text per topic of interest, extracts semantic information from each body, and draws a graph of the entities of each topic, highlighting intersections between common subjects. For example, one could submit the Wikipedia entries for Microsoft and Google, which would result in a graph mapping key terms that were semantically extracted from each article, and drawing edges between those terms that were common to both subjects, such as "computer," "technology", "California", etc. Three classes of nodes exist in each subgraph. The first class is simply the central topic nodes, e.g. "Microsoft" and "Google". The next class of nodes contains entity categories, such as "Operating System" and "Person". The final node class comprises those terms extracted from the text which fit each category, such as "Windows 7" and "Chrome OS" for the "Operating System" category and "Bill Gates" for the "Person" category. This tool could be used to graph the semantically-extracted terms from a single body of text (e.g. a single Wikipedia article) and explore the visualization. However, Semantic Grapher is more useful for exploring connections between subjects. One could use this tool to find all of the commonalities between similar subjects, or one could use it in an attempt to discover connections between seemingly disparate topics. Semantic Grapher is built with Java, and uses the OpenCalais web service for semantically analyzing text.



Visualizing fNIRS and Predicted Classes
abstract type: course project from upper level course
by Yekaterina Ionis, a junior at Tufts University
with Margarita Parasi Masters
related course: Visualization COMP150, taught by Sara Su
URL: https://wikis.uit.tufts.edu/confluence/display/comp15004visualization/Final+Project+-Katy+Ionis+Margarita+Parasi
We have developed a visualization of fNIRS data. fNIRS is a brain imaging technique that measures blood activity in the brain based on the levels of oxygenated and deoxygenated haemoglobin using light emitted at near infrared wavelengths. The fNIRS data that we have been working with involves brain activity collected from users during task performance, which is used as an additional input (other than keyboard, mouse) to brain computer interfaces. These interfaces are called passive BCIs (Brain Computer Interfaces), to be distinguished from active BCIs, which use brain activity as their only input. We used an online classification system, which takes as input the brain data and the data related to the user's tasks. The visualizations used until now were trying to capture the relationship between the prediction of the user's state and the true state, but there have been many challenges. First, it is an online algorithm with real time data. Also, there is a large volume of data, with simultaneous input from 16 channels and depicting both the predicted class and the true class creates visual clutter. The existing visualizations consist of time series data but are done offline and don't show all 16 channels; rather they show data on a per channel basis where the true class and the predicted class are both presented in different colors. These reasons made this visualization problem a challenging one. Also, we find it an appealing theoretical problem as we ultimately hope to use the predictions in realistic HCI setting to creating adaptive interfaces which will take the user's state as input and self-adjust accordingly. What makes this even more interesting is that fNIRS are currently the only way to obtain this kind of input. Our goal with this visualization was to display the reading from all 16 channels simultaneously with the additional option of layering. Clicking on the plot for one channel zooms in on the details of this data. We are also displaying the confusion matrix, which shows patterns of where the prediction algorithm is incorrect. Additionally, we modified the color encoding of correct vs. incorrect predictions to make it more clear. We build this visualization using Processing.



On-line Content-based Synonym Learning Game in Scheme
abstract type: course project from upper level course
by Christopher D. Granz, a senior at UMass Lowell
related course: Organization of Programming Languages 91.301, taught by Fred Martin
URL: www.arcadianelectronics.com
A learning tool, provided in the form of a real-time interactive word-matching game, was created in Scheme. The goal of the game is to match a number of words in the player's "inventory" to a number of words shown on the game screen. The "inventory" words, as well at the on-screen words, are chosen at random from an on-line Web database, freethesaurus.net. The player can cycle through "inventory" words and fire a chosen word at an on-screen word, causing the on-screen word to disappear if the two words are synonyms. The entire game, including the web-page parser and graphics engine is written in Scheme, strictly following functional programming principles. The concept and implementation were done as part of the upper-level course, Organization of Programming Languages, in the Fall Semester of 2009 at the University of Masschusetts – Lowell. The complete project, including implementation details, is available for free download at www.arcadianelectronics.com.



Stack-Based Calculator in Scheme
abstract type: course project from upper level course
by Elliott Moy, a junior at UMass Lowell
related course: 91.301 Organization of Programming Languages, taught by Fred Martin
URL:
This project implements a stack-based Reverse Polish Notation (RPN) calculator in Scheme. Numbers (both real and complex) can be placed on the stack and operations are done at the top of the stack. The calculator also keeps track on units of measurement, supports unit conversions, and has a "stack revert" feature that undoes the last operation. Scheme is a good language for implementing an RPN calculator because of Scheme's flexibility with lists. The stacks and unit-of-measurement data types are implemented as lists. Unlike infix processing (normal algebraic notation), where operators are between operands, RPN processes postfix expressions where operators are entered after their operands. A calculation stack can be easier to read and there is no need for parentheses or an implicit order of operations.




A Binary Prediction Engine using Scheme
abstract type: course project from upper level course
by Matt Fielding, a junior at UMass Lowell
related course: 91.301 Organization of Programming Languages, taught by Fred Martin
URL:
Claude Shannon's Mind-Reading Machine was a memorandum written in 1953 on his approach for building a prediction engine that, given at least 2 past inputs, could make a calculated guess at what the playerÂ’s next selection would be. Using Scheme I created this prediction engine in the most functional way possible and, to increase its appeal to the end user, disguised it as a game that pits you against the computer. Creating the graphical interface required the use of Scheme Windowing and OpenGL packages. The overall approach was to model the engine like a 3x3x3 cube where each cell holds the users previous action during one of 9 possible situations. This information is then used to effectively predict the userÂ’s course of action when confronted with the same situation, and with surprisingly good results. While effective, the algorithm does has some drawbacks, and during the showcase we had for this class I was able to see some methods people used to win successfully time and time again. Given this information, there are cert


An HCI Approach to the College Dining Experience
abstract type: course project from upper level course
by Consuelo Valdes, a junior at Wellesley College
with Maddie Adams (sophomore), Cidney Hamilton (senior)
related course: CS220: Human-Computer Interaction, taught by Orit Shaer
URL: cs.wellesley.edu/~foodiere
The Wellesley College dining experience is, for the most part, not unique compared to other college campuses. What is unique, is the inaccessibility to the menus , hours of operation, and satisfactory feedback process. To find a solution, I have joined with two students to create the Wellesley Foodie Rescue iPhone application. With emphasis on the interface design and user experience, we are iteratively developing the application to satisfy the needs voiced by Wellesley College students. The application aims to allow seamless browsing of menus for all campus dining locations and connect students with ease to their friends and collegues for a more social dining experience. Currently in the stage of testing our low-fidelity protoype with users, we are looking to apply the feedback we have received to a more functional protoype.



Browsing, Sharing, and Promoting Events: Developing A Campus Calendar iPhone Application for Wellesley College
abstract type: course project from upper level course
by Laura Weyl, a senior at Wellesley College
with Rebecca E. Spitzer- senior, Colette Whitaker- senior
related course: Human-Computer Interactions (CS220), taught by Orit Shaer
URL: http://cs.wellesley.edu/~wscene
At Wellesley, it's hard for groups hosting an event to publicize it to students who may be interested. Similarly, students have trouble identifying upcoming events that appeal them. Despite the large number of events that are hosted within the community, students may be unaware of an event they would be interested in attending because they do not have access to a well-organized calendar system. Our project is focused on creating a mobile integrated calendar system that organizes a list of campus events, intelligently suggesting events to users based on interests, friends, and overall popularity. Users can save event listings, share events with others, access up-to-date information on the go, and upload information about their own events.



Droste the Turtle's Hyperdimensional Laboratory for Visual Modeling and Simulation
abstract type: course project from upper level course
by Steven Karrmann, a senior at Worcester State College
with Fredy Murillo (senior), Iryna Paluyanava-Pseftis (senior), Jeffrey Meunier (phd)
related course: CS 401: Object-Oriented Design and Analysis, taught by Karl Wurst
URL: http://code.google.com/p/drostes-lab/
Droste's Lab is an object-based modeling environment and visual design framework that allows rapid development and deployment of interactive systems, simulations, and games in a user-friendly, feature-rich, and educational environment. The application provides a sandbox or laboratory-style environment where users can rapidly prototype systems. The visual nature of the application facilitates project design and organization. The networking features of the application promote community-based collaborative development of interconnected applications. The model and user interface are based on a notebook metaphor, whereby users create notebooks, add pages to notebooks, and add programmable interactive entities to pages. Each entity is itself a notebook within the application notebook, which allows unbounded multi-dimensional model construction. A plug-in framework provides collections of predefined drag-and-drop entities for creating projects and programming other entities. Users can create plug-ins, thus enabling general reuse of programmed entities and the design of project toolkits. Applications of Droste's Lab span the domain of systems modeling, including interactive robots, production systems, cellular automata, and finite state machines. It can be used as an educational tool for visually demonstrating object-oriented design concepts. The distinction between user and designer is blurred as both groups operate within the same interactive, networked, and collaborative environment. Given the application's ease of use and familiar notebook metaphor, Droste's Lab has the potential to expose new audiences to computer programming.



Non-Invasive BCI through EEG
abstract type: research project for school
by Daniel Szafir, a senior at Boston College
related course: CS397: Senior Honors Thesis, taught by Robert Signorile
URL:
It has long been known that as neurons fire within the brain they produce measurable electrical activity. Electroencephalography (EEG) is the measurement and recording of these electrical signals using sensors arrayed across the scalp. Though there is copious research in using EEG technology in the fields of neuroscience and cognitive psychology, it is only recently that the possibility of utilizing EEG measurements as inputs in the control of computers has emerged. The idea of Brain-Computer Interfaces (BCIs) which allow the control of devices using brain signals evolved from the realm of science fiction to simple devices that currently exist. BCIs naturally present themselves to many extremely useful applications including prosthetic devices, restoring or aiding in communication and hearing, military applications, video gaming and virtual reality, and robotic control, and have the possibility of significantly improving the quality of life of many disabled individuals. However, current BCIs suffer from many problems including inaccuracies, delays between thought, detection, and action, exorbitant costs, and invasive surgeries. The purpose of this research is to examine the Epoch Emotiv© System as a cost-effective gateway to non-invasive portable EEG measurements and utilize it to build a thought-based BCI to control the Parallax Scribbler® robot. This research furthers the analysis of the current pros and cons of EEG technology as it pertains to BCIs and offers a glimpse of the future potential capabilities of BCI systems.




ClusterRank: Using multiclusters and eigenvector centrality to rank images
abstract type: research project for school
by Dan Schatzberg, a senior at Boston University
with Nazli Cinbis (Postdoc)
related course: , taught by Stan Sclaroff
URL:
Internet image search engines are useful for automatically creating image training sets for computer vision algorithms. However, this is difficult due to the low precision of the results. We present an approach that ranks images to be presented to improve the precision of the results. We generate an ensemble of clusterings of the image data to be ranked. Using the clusterings we create an adjacency matrix and rank using eigenvector centrality. We examine the precision-recall of this method compared to that of the results returned from internet image search engines.



RacerX
abstract type: research project for school
by Eric Missimer, a senior at Boston University
with George Pabst (senior)
related course: , taught by
URL:
RacerX encompasses several endeavors designed to push the limits of real-time systems. The RacerX buggy has been designed using off-the-shelf, commodity hardware and is currently running a popular Linux distribution. Plans are in the works to convert to the Quest research operating system for better real-time performance. We are currently working on having our RacerX navigate autonomously around a track. Our research has been focused this semester on developing fast algorithms for processing video frames from the on-board camera to identify the track and to send the appropriate RF signals to control the engine.



Building an Ontology of Cognitive Conceptual Spaces
abstract type: research project for school
by Lily Wong, a junior at Boston University
with Andrei Lapets (PhD)
related course: , taught by
URL: http://wiki.materialsemantics.org/
In an extensive survey, Gärdenfors outlines a model for cognitive processing and semantics in which qualia, concepts, properties, and relationships are represented as regions and maps over metric spaces. We consider the problem of extracting from existing ontologies and databases found on the web, such as WordNet and ConceptNet, representations of concepts and properties that are consistent with the definitions in Gärdenfors' survey. We develop intuitive interfaces for extracting this information from the ontologies with the help of many non-expert human users. We then evaluate the quality of the information extracted in this manner by considering possible applications thereof, such as in the design of languages for user interfaces and automated reasoning assistants.



Learning to Create Jazz Melodies Using Deep Belief Nets
abstract type: research project for school
by Peter Swire, a senior at Brandeis University
with Greg Bickerman - Senior, Sam Bosley - Senior
related course: , taught by Robert Keller
URL:
We describe an unsupervised learning technique to facilitate automated creation of jazz melodic improvisation over chord sequences. Specifically we demonstrate training an artificial improvisation algorithm based on unsupervised learning using deep belief nets, a form of probabilistic neural network based on restricted Boltzmann machines. We present a musical encoding scheme and specifics of a learning and creational method. Our approach creates novel jazz licks, albeit not yet in real-time. The present work should be regarded as a feasibility study to determine whether such networks could be used at all. We do not claim superiority of this approach for pragmatically creating jazz.




Incorporating the CHE-CCA1 loop in a mathematical model of the Arabidopsis thaliana circadian clock.
abstract type: research project for school
by Olena Marchenko, a senior at Colby College
with
related course: CS441, taught by Prof. Stephanie R Taylor
URL:
As an adaptation to the recurring environmental changes associated with our planet's daily rotation, most organisms have developed an endogenous circadian clock. In eukaryotes, a negative transcriptional feedback loop of clock-associated gene components was thought to be the core of the circadian clock. In the model plant A. thaliana, oscillations are thought to originate from reciprocal transcriptional regulation between TIMING OF CAB EXPRESSION (TOC1), CIRCADIAN CLOCK ASSOCIATED1 (CCA1) and LATE ELONGATED HYPOCOTYL (LHY). Recent genetic studies have challenged this view with the discovery of new components, such as CCA1 HIKING EXPEDITION (CHE) (Pruneda-Paz et al.). Further studies have demonstrated that transcriptional repressors (PPR7,9 and 5) previously thought redundant have distinct expression profiles and are collectively essential to proper timekeeping (Nakamichi et al.). To introduce the missing link between the pseudo-response regulators and the TOC1-LHY-CCA1 loop, we incorporate CHE-CCA1 into a recent computational model of the Arabidopsis thaliana circadian clock (Zeilinger M. et al., 2006). We construct several candidate models corresponding to the proposed pathways of TOC1-CHE dimerization. We evaluate performance of the selected models by conducting sensitivity analysis, constructing mutant profiles, and comparing the results with the previous model and data from recent mutant studies.




Autonomous Wheelchair

abstract type: research project for school
by Abigail Drury, a senior at Mount Holyoke College
with Melissa Frechette, Junior; Rittika Shamsuddin, Sophomore
related course: , taught by Audrey Lee St. John
URL:
We are working on an autonomous wheelchair with the goal of offering patients who are unable to operate traditional power chairs an alternative option for independent mobility. The wheelchair has a mapping feature that allows the robot to create a map of its environment which it is then able to use to localize itself. The wheelchair has three drive modes with various levels of control spanning from purely manual to fully automated. In particular, "express mode" implements dynamic path-planning and obstacle avoidance, enabling the chair to drive the user to a specified location on the map. This project is being developed for clinical trials at Boston's Spaulding Rehabilitation Hospital in collaboration with Dr. Dan Barry and Dr. William Kennedy at MobileRobots. Our team's responsibilities are to determine optimal parameter settings for the wheelchair's various drive modes and to test its performance in a real world setting. During testing, we uncover and address existing runtime issues, and develop comprehensive documentation for operating the wheelchair.



A Software Engineering Approach to Scientific Data Provenance
abstract type: research project for school
by Corietta Teshera-Sterne, a senior at Mount Holyoke College
related course: , taught by Barbara Lerner
URL: http://www.mtholyoke.edu/~blerner/DataProvenance/
Advanced technology has enabled scientists to design elaborate experiments, collecting data from extensive, sophisticated sensor networks. In turn, these experiments produce far larger, more complex datasets than previously encountered. The requirements of funding agencies and collaborations with remote scientists lead data producers to make datasets publicly available over the Internet. To be useful to data consumers, scientific datasets must be reliable and reproducible. Consumers need access to data provenance: accurate information about the datasets and how they were produced. Collecting this information and presenting it in a useful way is a complex research problem that can benefit from approaches originally developed for software engineering. Computer scientists at the University of Massachusetts have developed Little-Jil, a graphical programming language capable of coordinating tools used to collect, analyze, and manage scientific data. An example is a proposed network of ecological sensors at Harvard Forest in Petersham, MA, measuring stream flow, precipitation, and other hydrological data with the goal of gaining a more complete understanding of the water budget of small forested watersheds. I wrote Little-Jil processes for automated processing and quality control on data collected from these sensors, as well as capturing information about the process itself as it runs. This metadata is organized in a way that permits individual data values to be traced backward through the process to their origin. The resulting software will allow data consumers full knowledge of scientific datasets.



Computational Analysis of the Allosteric Effect in Proteins

abstract type: research project for school
by Milka Doktorova, a senior at Mount Holyoke College
related course: Independent Study, COMSC-395, taught by Audrey St. John
URL:
Proteins play a salient part in virtually all biological processes. Conducting analysis on the statics and dynamics of such molecular structures is a key to understanding naturally occurring phenomena and designing drugs for preventing and curing diseases. I am working on an interdisciplinary research project (under the supervision of Prof. Audrey St. John, Mount Holyoke College) that applies tools from math and computer science to advance techniques in computational biology used to study the flexibility of macromolecular structures. This project focuses on a phenomenon called the “allosteric effect,” which has been observed in nature, but is not well-understood. Proteins generally perform their functions by binding other molecules at designated locations called “active sites.” In some proteins, it has been found that small molecules can bind at a different “allosteric” location, thus causing a conformational (structural) change that affects the functionality of the protein. Gaining insight into how these conformational changes occur could lead to great advances in drug design. This research takes a computational approach by applying concepts from theoretical computer science, geometry and linear algebra to study the structural properties of proteins. We model macromolecules as discrete structures whose movements are restricted by specific geometric constraints. Then we apply techniques from rigidity theory to perform analysis on these constrained structures and display the results via an interactive web application. The creation of the entire system involves the integration of MATLAB and Java programs with PHP, JavaScript and Ajax, together with the use of the JMol applet for displaying proteins.



Detecting Between-Pathway Model conservation across S. cerevisiae and S. pombe yeast species

abstract type: research project for school
by Daniel Malmer, a senior at Tufts University
related course: , taught by Ben Hescott
URL:
The Between-Pathway Model (BPM) motif identifies pairs of fault-tolerant gene pathways within the yeast interactome. In BPMs, gene pairs between the two pathways contain synthetic lethal interactions, meaning if you knockout one gene or the other, the yeast lives, while knocking out both is lethal. This suggests that a pathway in a BPM compensates for a suppressed, defective, or absent opposite pathway. Algorithms have been used to find BPMs in the Saccharomyces cerevisiae and Schizosaccharomyces pombe species of yeast. Here we identify and apply a method for finding conservation of BPMs across these two species. By mapping orthologous genes between the two yeast, we are able to identify BPM pathways which are highly conserved. Furthermore, with Gene Ontology (GO) enrichment, we can infer functional conservation as well. Given the large evolutionary distance between S. cerevisiae and S. pombe, a high rate of rewiring within the interactome is generally expected. However, in certain BPMs we found a large percentage of gene conservation and similar or equivalent GO enrichment. Some pathways were even found in literature to be conserved across mouse and human. With this research, we hope to identify pathways which are evolutionarily conserved across S. cerevisiae and S. pombe yeast, and encourage continued study of Between-Pathway Models.



On the computational complexity of equivalence relations
abstract type: research project for school
by Jeffrey Finkelstein, a senior at Tufts University
related course: , taught by Ben Hescott
URL:
In this paper we analyze the notion of kernel reductions among equivalence problems, as defined by Fortnow and Grochow, especially with respect to graph isomorphism and its polynomial time many-one equivalent problems. We first examine some examples of kernel reductions among equivalence problems decidable in polynomial time. In doing so, we consider the possibility of whether the equality relation is in fact complete under kernel reductions with respect to equivalence problems decidable in polynomial time. We then examine the complexity of equivalence problems and kernel reductions in NP. We show that most known many-one reductions among isomorphism problems in NP are indeed kernel reductions.



Inferring Fault-Tolerance from E-MAP Data
abstract type: research project for school
by Mark Leiserson, a junior at Tufts University
with Diana Tatar, Masters
related course: , taught by Ben Hescott & Lenore Cowen
URL: bcb.cs.tufts.edu
The well-studied between-pathway model (BPM), introduced first by Kelley and Ideker is a network motif consisting of a particular pattern of genetic and physical interactions that is thought to signify a pair of redundant pathways within a protein-protein interaction network. In particular, each BPM consists of two subsets of genes (each called a pathway) where physical interactions tend to occur between pairs of genes within the same subset, and synthetic lethal interactions tend to occur between pairs of genes in different subsets. Epistatic miniarray profiles (E-MAPs) are a recently developed high-throughput tool capable of providing quantitative scores for synergistic or alleviating reactions between gene pairs. We show a natural generalization of the original BPM motif that captures an analogous notion for E-MAP genetic interaction data, and present an adaptation of the method of Brady et al. to efficiently generate new motifs. As in previous studies, we measure the quality of the pathways we predict based on GO enrichment. We generate over 100 generalized BPMs based on the MAPK array, and over 200 generalized BPMs based on the Cell Cycle array, using the new method. Furthermore, over 46% of the MAPK BPMs and over 48% of the Cell Cycle BPMs exhibit GO enrichment (p< .01) for at least one pathway.




Deriving Generalized Kinetic Expressions to Model Metabolic Pathways using Genetic Algorithms
abstract type: research project for school
by Sean Kelley, a sophomore at Tufts University
related course: 250, taught by Soha Hassoun
URL:
Mathematical models that accurately describe the behavior of biochemical systems are useful tools that allow researchers to analyze natural systems, design synthetic ones, and in both cases guide further experimentation in the lab. A biochemical system -- consisting of complex networks of molecules (substrates) and the chemical reactions that change one substrate into another -- can be described by a set of equations (rate laws) that define how the substrates' concentrations change over time via reactions. Because the equation form is complicated and not always clear, it's impractical to deduce it for a given network using lab techniques. This project investigates an algorithmic approach that produces both the form of the equation and the various constant (non-substrate) parameters based on measured data. Our approach is two-fold: first, we derive a generalized expression form that encompasses several popular rate laws; second, we use genetic algorithms to produce equations based on the generalized expression. Genetic algorithms are a type of random-search algorithm that "evolves" answers by directing them towards the more promising ones during the search. The difficulty in using such an algorithm is to encourage it to move in a profitable direction instead of rehashing the same best answers repeatedly. Our algorithm, run on three representative examples with varying numbers of equations and parameters, produces sets of equations that replicate input data with good accuracy. Our solution enables creating accurate mathematical models that describe the behavior of biochemical systems over time.





Taking a Peek at the Seq: Improving Matt Structural Alignments by Considering Sequence Homology
abstract type: research project for school
by Shilpa Nadimpalli, a junior at Tufts University
related course: , taught by Lenore Cowen
URL: http://matt.cs.tufts.edu/
The accurate recognition of the evolutionary relationship between groups of proteins is a significant challenge in computational biology. There have been two distinct approaches to this problem: sequence alignment and structural alignment, each with their respective successes and limitations. There is a dichotomy between identifying similarities in sequence, which may be evolutionarily related but functionally different, and identifying similarities in structure, which may be functionally similar yet evolutionarily different. An algorithm which successfully incorporates elements from both structural and sequence alignment methods has the potential to produce alignments that are simultaneously functionally and evolutionarily relevant. One of the most successful structural aligners is the Matt (Multiple Alignment with Translations and Twists) program, a fragment-pair chaining method developed by Menke et al. in 2008. Matt first optimally aligns short fragments of the backbones of the protein structures, and then dynamically chains these fragments together in close spatial alignment, allowing for minor rotations and translations. A final pass through the alignment guarantees its geometric consistency. Although Matt outperforms several of its competitors in producing high-scoring quality alignments with evolutionarily-conserved sequences in close correspondence, it is still limited by the inherent inability of structural aligners to recognize significant evolutionary homology between protein regions which are no longer in close spatial arrangement. Furthermore, Matt is prone to misaligning sequences of high identity which geometrically fall close together. Therefore, we present a modification to the Matt algorithm, where a sequence alignment produced by ClustalW or MUSCLE replaces the default structure alignment in regions between aligned fragments with high spatial overlap. This approach eliminates easily-avoidable shifted alignments and produces final structural alignments which more closely match those found in the Homstrad benchmark, the hand-curated gold standard set of protein structural alignments, than the unmodified version of Matt.



FlipPresentations.com - Lecture Capture with Portable ("Flip") Camera, Intelligent Automated Processing, and a Customizable Web 2.0 Presentation
abstract type: research project for school
by Eric Ssebanakitta, a senior at UMass Amherst
with Professor Rick Adrion, Professor Paul Dickson
related course: , taught by Professor Rick Adrion
URL: http://www.flippresentations.com
Conventional educators and business officials frequently engage in a lecture style interaction with their listeners when attempting to carry out an important point. The technological instruments they use consist of rather rudimentary devices and systems such as Powerpoint and white boards. The apparent dearth of efficient and sophisticated technology that could be used to facilitate communication compels one to consider a novel system that holds great potential to solve this problem. Notably, FlipPresentations.com is designed to accomplish a host of the following objectives. Deliver presentations with a great deal of ease and flow which shall capture the attention of the audience. Formatting of presentations will be done in an automatic, quick, intelligent and an easily accessible manner which shall greatly benefit the viewer. Although the above listed qualities are of great value both to individuals delivering and to individual listening presentations, they do not by any means constitute the exhaustive list of virtues of FlipPresentations. This system is very affordable as it requires only a low cost digital video which provides fully indexed visual aids. In recapitulation, the entire Flip Presentation system offers the users a host of opportunities that only the most sophisticated technological systems could at an affordable price which offers one a compelling reason to abandon the contemporary rudimentary and outdated presentation aid in favor of Flip-presentations. As researchers, we believe that our system will be of benefit to the educational community



Recording “Live Coding” in Scratch
abstract type: research project for school
by Nathan Gilbert, a senior at UMass Lowell
related course: , taught by Jesse Heines
URL:
Scratch is a graphical programming environment designed to introduce computer science concepts through visual manipulation of sprites, graphics, and audio. Although simple on the surface, Scratch is really quite sophisticated in its ability to manipulate objects in real time, that is, while a program is running. Such “live coding” is valuable for playing music that changes as the programmer changes parameters. This technique is the essence of “laptop orchestras” and other such ways of playing generated music through computers. When code is manipulated while it is running, it is useful to be able to capture what is being done. We developed a Java program that captures events being generated by Scratch in real time, thus combining the simplicity of Scratch with the versatility of Java. At its core, the program is a set of Java classes that wrap Scratch's networking protocol and provide a framework for applications to communicate with Scratch. Thus, programs written in Java can send and receive data from a Scratch program. The receive aspect allows us to “record” music generated using Scratch, and the send aspect allows us to play back that “recorded” music. Our poster will demonstrate the program we developed and give others an opportunity to see what can be done with this elegantly simple but surprisingly powerful programming environment.




Supporting Genomic Research through Reality-Based Interaction
abstract type: research project for school
by Megan Strait, a senior at Wellesley College
with Michael Lintz (junior), Consuelo Valdes (junior)
related course: , taught by Orit Shaer
URL: http://cs.wellesley.edu/~hcilab/research
Molecular and computational biologists develop new insights by gathering heterogeneous data from genomic databases and leveraging bioinformatics tools. Such interactions are critical for forming new scientific hypotheses. In a qualitative study with 17 participants, we found that existing tools are powerful search engines and databases, but commonly present users with difficulties interpreting, comparing, sharing, and relating vast amounts of data. Employing an iterative design process we created the G-nome Surfer, a tabletop interface for collaborative exploration of genomic data that implements multi-touch and tangible interaction techniques. It is intended to lower the workload for information retrieval, and to support high-level reasoning. By investigating and implementing new interaction techniques that move beyond the standard keyboard/mouse input, it provides a more fluid and natural interaction and allowing for complex collaboration. Initial implementation gave proof-of-concept functionality to our prototype, and we are currently working on backend requirements including local databases of genomic information, algorithms for biological calculations and visualizations in order to prepare the system to be evaluated and deployed in an intermediate neuroscience laboratory in the coming semester. Our goal is to enable students to gain biological insights that are based on multiple forms of evidence with minimal overhead.



Journalism and Online Social Networks: New Ways to Access, Share, and Discuss the News

abstract type: research project for school
by Rebecca Spitzer, a senior at Wellesley College
related course: MAS 370: Honors Thesis Research, taught by Panagiotis T. Metaxas
URL: www.rebecca-e-spitzer.com
What do you consider to be “news?” Where do you find it – in a newspaper, on television, or on Facebook? Do you feel like you have to search out the news, or does it come to you? Drawing from a survey of Wellesley students, I will discuss a new pattern of modern news consumption, as influenced by the ubiquity of Internet access and popularity of social media. Social networks like Facebook and Twitter provide a new model for accessing, sharing, and discussing news, and I will explore how they facilitate a greater and more meaningful democratic conversation about current events.




Fine-grain Parallelism
abstract type: research project for school
by Brian Tate, a senior at Worcester Polytechnic Institute
with Chris Pardy (Senior), Erik Archambault (Senior), Josh Montgomery (Senior), Chris Smith (Senior), John Forrest Hogeboom (Senior)
related course: , taught by Craig Wills; Hugh Lauer
URL:
While hardware support exists for concurrency, current software abstractions have not been adequate to promote a proliferation of parallel software. This project set out to investigate ways to enhance the programmer’s ability to construct parallel applications. Ultimately, a system that utilized the concepts of graphical programming and fine-grain parallelism was implemented and evaluated. In fine-grain parallelism, each execution block is queued and executes when its inputs are available. When a block finishes it publishes its outputs, making them available for future blocks. Using a dataflow language as a base we began the task of creating a graphical programming front end and a runtime utilizing fine-grain parallelism. The overall architecture of our prototype system involved three phases to construct a program. The first phase was creating a visual graphical representation of a program and converting it into dataflow code. We then convert the dataflow graph into a C++ representation compatible with our runtime library. Our runtime library implements the thread, memory, and block management for fine-grain parallelism. Using a standard C++ compiler we compile the output from the second phase with our runtime library to create a standard threaded executable. Upon finishing the construction of the system, we evaluated it by investigating the feasibility of implementing real-world algorithms using both the graphical front end and fine-grain parallelism concept;receiving positive results. Ultimately, our project’s results show that fine-grain parallelism and the use of graphical programming show promise for parallel computing.


Design and Realization of an Intelligent Unmanned Ground Vehicle
abstract type: research project for school
by Viktoras Truchanovicius, a senior at Worcester Polytechnic Institute
with Ricardo Madera (Senior), Christopher Gamache (Senior), Dan Sacco (Senior), Benjamin Roy (Senior), Rob Fitzpatrick (Senior), Adam Panzica (Senior), Bohua Wang (Senior), Justin barrett (Senior),
related course: , taught by Taskin Padir
URL: www.igvc-wpi.org
This project focuses on designing a computational framework and developing software for an intelligent unmanned ground vehicle (UGV) which will become WPI’s first entry to the Intelligent Ground Vehicle Competition (IGVC). IGVC challenges students to design and program a fully autonomous UGV that can locate and avoid obstacles, stay within the boundaries of a lane, navigate to GPS waypoints and implement a communications system using the Joint Architecture for Unmanned Systems (JAUS) protocol. Our approach employs a stereo image processing implemented on NVIDIA's GPU. The image processing algorithms include segmentation using neural networks, rectification and pixel disparity calculation for line and obstacle distance detection. Our sensor fusion technique processed on a National Instruments cRIO incorporates data from a LIDAR, differential GPS receiver, wheel encoders, and a compass. Navigation planning is accomplished by creating an obstacle probability map using the fused data and the path planning is implemented based on "driving with tentacles" approach. A GUI developed by using Java SWING provides controls and the means to monitor the vehicle state from a remote user station.



Nanobots! Microsoft Imagine Cup US 2010 Finalist
abstract type: your own independent project
by Anit Das, a junior at Tufts University
with Cobin Dopkeen (senior), Gilad Gray (junior), Nadia Rodriguez (junior, SMFA)
related course: , taught by Ming Chow
URL: http://twitter.com/Nanobots_2010
The challenge of the Microsoft Imagine Cup Game Design contest was to create a game with the theme of “Using technology to solve the world’s toughest problems.” With this in mind, we decided to focus our game on tackling the problem of curing disease. Many illnesses require treatment at a very high degree of accuracy and precision at an incredibly small scale. In our game Nanobots!, nanobots are developed as the solution to this problem. Players take control of miniscule robots that are heavily equipped with disease-fighting tools. Nanobots! is a fast-paced 2D arcade-style shooter that features a campaign mode in which players traverse bodily systems and seek to cure various diseases and health problems, all while fighting to survive against oncoming swarms of bacteria, viruses, and even other player-controlled nanobots. Multiplayer is also a crucial component in the game, with several different gameplay modes and plans for network play. The game is developed for the Xbox 360 using Microsoft’s XNA game platform based on C#. Important issues we are tackling include efficient collision detection, multiplayer viewport management, animation, network playability, and interface design. Currently, the game is competing in the final round of the Imagine Cup, which consists of 20 teams selected out of a field of at least 3500 teams.


Cyborg White Blood Cells (From the Future)
abstract type: your own independent project
by Kory Thacher, a sophomore at Tufts University
with Jordan King (Sophomore), Philip Tang (Sophomore)
related course: , taught by
URL:
This was started as 2D game design project for the Microsoft Imagine Cup. The competition is over, and much of the game is unfinished, but still being worked on. It is being used as a starting point to learn XNA game studio and game design principals. The goal is to develop a fun, full featured game and release it on XBOX live arcade over the next few months. Game information: Story: New technology has led to the creation of synthetic white blood cells: cyborg white blood cells equipped to handle anything disease and infection throw at them (and with a penchant for heavy weapons and excessive force). Their first trial occurs in the body of a person dying from AIDS. This person's weakened immune system can no longer keep out other diseases. Now it's up to Luke the leukocyte to battle his way through swarms of diseases and save someone's life! Description: Cyborg White Blood Cells (From the Future) is a side scrolling 2D shooter starring Luke, the leukocyte. Its features include dynamic background scrolling, collision detection, and minor jumping physics. Power Ups have been implemented, to give the player a variety of guns, including the machine gun and spread shot. (I will have to leave early, around the end of lunch. I would be willing to do a short presentation of the game if you would like, but it would probably be easier to demo it on a table somewhere on a laptop)




Even Orientations
abstract type: your own independent project
by Sarah Cannon, a sophomore at Tufts University
related course: , taught by Diane Souvaine
URL:
A graph is a mathematical abstraction that can be used to model connectivity. For example, it could represent a group of islands (nodes) connected by various bridges (edges). A graph is directed if edges can have orientations; e.g., one-way bridges. There are many ways to orient a graph, and we are particularly interested in even orientations, where every node has an even number of incoming edges. Though it is known that an even orientation always exists for every graph with an even number of edges, it is not obvious how one would find such an even orientation. We have developed an efficient algorithm that does just that. Some interesting questions remain – is there an even orientation such that if a node has only two incoming edges, then those two edges do not originate from the same node? When does this “desired even orientation” exist, when does it not, and is there an efficient algorithm to determine the answer?




Little-JIL: Analyzing and Defining Complex Processes in Diverse Application Domains

abstract type: your own independent project
by Mario Barrenechea, a junior at UMass Amherst
related course: Mario Bernardo Barrenechea, taught by Stefan Christov
URL:
At the Laboratory for Advanced Software Engineering Research (LASER), we are studying the applicability of software engineering methodologies and tools to identify problems within complex, human-intensive processes, such as transfusing blood to a patient, mediating an arbitration case for two conflicting parties, and election voting. In this project, we use a process definition language called Little-JIL to model the activities, performing agents (human and nonhuman), and the resources that are involved in order to precisely understand and analyze these processes. The Little JIL environment consists of the Little-JIL process definition language along with a group of formal verification and analysis tools (PROPEL, FLAVERS) developed in the lab that together define, determine potential defects, and improve the efficiency of a process definition. In using these tools and methodologies, we hope to address some of the ongoing problems with these critical processes to resolve disputes, electoral fraud, and save human lives.



Comments