For my year long senior thesis project I worked with three other students to design and build an automated shape recognition device. This device would move shapes along a conveyor belt and use image processing to detect whether each shape was a circle, square, or triangle. As it detected the shapes it would keep a tally of each on an LCD display. An Arduino microcontroller was responsible for both the image processing algorithm as well as the operation of all the external hardware including the camera, LCD display, and conveyor belt motor.
Over the course of the project we submitted extensive project specifications and went through design reviews in addition to giving quarterly presentations on our progress. At the end of the year we presented our project to faculty, students, and industry guests.
While at University of Portland I had the opportunity to work with Dr. Andrew Nuxoll on his research into episodic memory and artificial intelligence. Together with another student, we worked to create an agent that could learn to navigate a state machine of varying complexity by analyzing its episodic memory. The agent could choose from a set number of actions, and each time it took an action it would receive binary feedback on whether or not it had changed states. Using a string of episodic memories composed of the actions taken and their results, the agent would attempt to generate its own map of the state machine in order to determine the most efficient path from start to finish.
Dark Dungeon is a 2D stealth puzzle game created in C# using the XNA framework which I created with two other students in my Game Design course. I was responsible for both art and visual design as well as gameplay programming. In Dark Dungeon, the player must navigate a maze to reach a treasure chest in order to complete each level. However, the mazes are patrolled by guards, and the player will be captured if she steps into their line of sight. The player can also switch into a darkness mode where the visibility of the guards is severely limited, but the player will be pursued by deadly ghosts. As such, the character must take advantage of switching between both modes in order to navigate the maze.