Research Interests

Educational Games for Sugar

Nolan Baker, sophomare mathematics major and computer science minor, and I have been developing three educational games in Python for the Sugar operating system this summer 2008, currently used on the OLPC XO machine.

Our first game, Cell Management helped us to learn about development with Sugar. Aliens have abducted 6 species from Earth, and your goal is to coordinate their efforts to escape. This game is based on regulatory networks found in RNA and DNA transcription and translation.

Space Tag is a fast paced, action packed, playground thriller that's out of this world. Immerse yourself and a few of your buddies (after all, sharing is important) in an overhead pseudo 3D world filled with fuzzy physics. This was educational for us to learn about incorporating mesh into a game, and hopefully educational for students to read the code and learn about forces in physics.

COBBLE stands for COllaBorative Board game Learning Environment. COBBLE can be seen as a game system, where we provide the pieces, and you provide the rules. Our goal is to make COBBLE as flexible as possible, so that users can play any game just by interacting with the objects and chatting about the rules in the chatbox. Currently working are the Die, which can be created and rolled. COBBLE is in the alpha stage, more will be updated soon.

Robocup Rescue Virtual Robot

Bradlee Robertson and I have been designing a controller in Java for a virtual Urban Search and Rescue Robot, to compete in the Robocup Rescue competition. In this competiton, a virtual disaster situation is simulated through Unreal Tournament 2004, and robots are launched into the world to both map the building state and identify possible victims in need of rescue. We have used this controller to develop artificially intelligent robots capable of navigating test scenarios. We plan to release our code to assist other teams in developing robotic agents.

Centenary Automated Bike Swipe

Along with Dr. Troy Messina and students Richard Lopez and Roland Womack, I have been designing an automated bike checkout program to facilitate a convienent and secure method for using the campus Green Bikes. With one swipe of their ID at any bike lock station on campus, a student/staff/faculty member will be able to either take or return RFID-tagged keys for bikes, with all transactions being recorded and validated using a wireless connection to a remote SQL database. We plan to have a prototype station ready by the end of the fall 2008 semester.

Learning Comprehensible Relational Features to Distinguish Subfossil Decapod Crustacean Dactyls

In collaboration with Dr. Jeffrey Agnew, Department of Geology, we are exploring the application of Inductive Logic Programming to a new domain involving decapod crustacean claws. We find that we can distinguish dactyl shapes by automatically extracting relational features that describe their underlying spatial structure. We first use medial axis techniques to find the shock graph of each dactyl outline, which is then converted into a first-order logic representation capturing the connections, distances and angles between the nodes in this graph. We then use Aleph to find relational classification rules based on the shock graph representations. These relational rules provide a concise and human-understandable way to describe the morphological differences between closely related decapods, and can be seen as a first step to creating automatically learned quantitative taxonomic keys.

Ph. D. Thesis

My thesis research was on Inductive Logic Programming (ILP), a subfield of Machine Learning and Artificial Intelligence. Starting with the formulation of a biomedical information extraction task into a logical framework, my colleagues and I developed Gleaner, a fast and parallel ensemble ILP algorithm that can produce comparable results to other ILP approaches in a fraction of the time. An extended article on our Gleaner algorithm was recently published in the Machine Learning Journal.

Other Research Plans

I enjoy interdisciplinary research, and I see great value in using problems from outside domains to interest motivated undergraduates in computer science research. One such interdisciplinary field I wish to explore is computational social science, where the complex systems of individuals and their interactions are modeled by a computational simulation. My prior work in this area consists of developing a simulation of voting and political parties, along with modeling the evolutionary success of greedy versus altruistic strategies in a simple bargaining game; other researchers have simulated the foraging behavior of insects, communication within social networks, and biological interactions at the cellular level. Most often, the simulated agents are equipped with very rudimentary rule-based decision-making abilities. I plan to continue research on the application of ILP and other machine learning algorithms to these social simulations, first to enhance the abilities of agents within these simulations, and second to answer questions about the interlinked relationships among agents and their environment.

I am also interested in pursuing research on computer science education. The exponential growth in information and pervasiveness of computers in our society has been strangely accompanied by a marked decline in the number of students pursuing degrees in computer science. I plan to research how computer science is introduced and taught, both in the undergraduate introductory courses and earlier throughout the K-12 levels of education. I believe we need to explore interactive pedagogical methods and environments to engage student's interest in the fundamentals of computer science logic. For this purpose, I have joined the Computer Science Teachers Association, a special interest group of the ACM focused on K-12 computer science education, and I will continue to engage my students to think not only about what they are learning but how they learn.