Course InfoTimetableGradingProposal GuidelinesHome

CSC 498: Senior Project, Fall 2005

Project Summaries

Section A (Townsend)

Benjamin M. Brown, "Furthering the Online Marketplace

This project will consist of an interactive online convenience store entirely rendered in 3D. Users will be able to explore the store, walk through it, and purchase items as they would in a real store. The level of graphic detail will be high. This store will be accessible by a URL and will be viewed entirely in the user’s internet browser. The focus of the project is to unify concepts of computer graphics, web design, user interactivity, and database interaction. The goal is to simulate a real store as closely as possible, while giving the user an enjoyable and entertaining experience, hopefully resulting in a more efficient and stimulating online shopping experience.

Chad Homan, "CompSCOUT "

I am designing a network utility that will allow students and faculty the ability to view current computer lab usage throughout campus. The utility will also allow administrators of the labs to be able to send messages to computer users, and they will be able to keep track of computer usage and be able to view statistical reports based upon this data. The utility will consist of each lab computer on campus running a daemonic program that will send to a server program its current status. The server side of the utility will keep track of all the computers and provide a GUI to the users where they are able to view how many computers are in use in each building, floor, and lab. The GUI will consist of a live, updated web page which will show visually the usage of computers and labs. This GUI will enable students and faculty to “scout” out where computers are available for use.

Josh Coats, "Computer Aided Mammography Process"

I am offering the topic: Computer Aided Detection (CAD) of anomalies in mammography data. In my research this summer, at the University of Virginia, I built a prototype of the CAD program that I want to implement for my senior project. I have titled the program C.A.M.P.: Computer-Aided Mammography Process. I have called it this because through my research I learned that the technology alone should not make diagnoses, a second set of eyes is more helpful, and a radiologist should follow some process with this program. Having had only had 8 weeks this summer to work on the project, there are many things I was not able to integrate as of yet; including drawing either circles or boxes around abnormalities, segmentation and adding, some artificial intelligence so the program would get better at finding abnormalities, and ignoring normal lesions, among other things. My program is being designed as an aid to the radiologist. It is not intended to take over the physician’s job, it merely acts as a second set of eyes to review the mammograms; hence the name, Computer Aided Mammography Process (or CAMP). It is to be viewed as a process in which the radiologist will review while the computer does its own review, once the doctor is finished he can bring up the same images up on the screen, or print them off, and the program will have marked areas of concern for the doctor to look at.

Matthew Cable, "Wireless Music: WiMus"

My senior project will consist of two programming applications that allow a Windows XP desktop computer to wirelessly stream music to a Personal Digital Assistant (PDA). The vision for this project is that a person with a PDA will be able to store large amounts of music on their home computer system. They will be able to take their PDA anywhere in the world and connect back to their server computer to access their songs. They can then plug headphones into their PDA or plug their PDA’s audio output jack into a home theater receivers audio input jack and ‘take’ their music anywhere they want. A server application can be installed on any regular Windows operating system machine and the song files will all be in .mp3 format and be stored using a database of a similar data structure. The server should have options to allow the user to import .mp3 music files and display them properly. The PDA will then have a client application which will connect through a wireless network, via IP address, back to the database of music on the server. The client application will then authenticate itself and display the music bank in a user friendly manner. The client application should have a search engine to find specific songs, artists, and album titles easily and quickly. The user can then plug their PDA into any home theater receiver or set of speakers or headphones and listen to songs as the wirelessly stream to the PDA.

Tod Karpinski, "DyKnow Remote Desktop Tools"

This project consists of extending the DyKnow Vision product to include Remote Desktop Tools. These tools would allow a teacher or administrator to remotely control another computer with DyKnow installed. It would use the pre-existing infrastructure from DyKnow’s Demonstration mode, which collects the video output from a machine and transmits it to many other machines. The features included in the Remote Control would include: mouse and keyboard interaction, interactive chat, and remote file installation and execution. This will allow the teacher to use DyKnow in the class room as both an administrative tool and a corrective tool, for example a teacher can demonstrate to a student on their own computer what needs to be done within the class.

Section B (Howard)

Chad Arnold, "Media Rental Services"

My project will be directed toward a potential start-up video outlet. It will consist of two parts. The first part will be a desktop application that can be used in the local store to keep track and maintain a video collection including all relevant video information in addition to new and potential customers. To store all of the relevant information, it will have a database backend. This database will also be connected to a data-driven website where customers who wish to stay at home will be able to check the availability of movies in addition to ordering movies online.

This project, although created for a video outlet company, has many advantages outside of the movie and gaming industry. The program and concepts can be easily tailored for similar companies and adapted for other practical applications.

Zach Harris, "Dynamic Online Purchase Orders"

I am proposing to bring a purchase order/business form file maker into an online password protected environment that capitalizes on the information distribution, specifying and ordering process. It will be simple to use, simple to update and maintain, and provide a "purchase order" type configuration structure that allows the builder to click on options. My example for this project will contain technology related items, but this website will be dynamic and can be used by any company. The key is to allow a company or company’s sales person to walk the client through all of the options that a company has to offer, and click them off while adding up a total price for all the options. By "submitting" the company would receive the order via e-mail. The purchasing format should include standard necessary information like the builder’s info, subdivision, lot #, wiring date needed, homeowner’s name, address, phone number etc. In order to bring the proposal into action I plan to use PHP and Oracle for my programming needs. I will create a database that will hold the information of the clients and then can be read from when creating online forms, email purchase orders, or filling out forms.

Alexander Iliev, "The Complexity of Clickomania"
Clickomania screen shot

In this project I will explore different approaches to solve the puzzle known variously as Clickomania and Same Game. The rules of the game are simple. You are given a grid of size N×M (1≤N≤50, 1≤M≤50). Initially, each cell/tile in the grid is colored in one of K different colors, (2≤K≤7). Neighboring cells of the same color form groups. At each move, the player can click on a group of at least 2 cells, which results in the disappearance of the group. Cells that are positioned above this region slide down to fill in the hole. In case an entire column has been removed, all cells to the right of the column are shifted one position to the left (see fig.). When a region of C cells has been removed, the player receives (C-1)² credits. In case the player manages to remove all tiles from the grid, his score is doubled. The goal is to maximize the score in the game.

Even though the rules are simple and the game is very intuitive, finding the sequence of moves that maximizes your score is an NP-complete problem. In this project I will develop two competing algorithms that give approximate solutions – one using a heuristic function, and the second one – using the concepts of machine learning.


Antonio Mercado, "Peer-2-Peer at Its Finest"

My project will be a hybrid peer-2-peer program that will utilize a central server to gain file information about a user before actually connecting to the user to retrieve files. There will be login and password capabilities for the program, and if you are not registered by the server, you will not be able to use the service. Once a successful login is reached, the user will be able to request a list of users that are on the network. The user will then be able to view the types of files that the other users are sharing and proceed to connect to them to retrieve the files and stay connected creating a network with every additional connection. The interface will be command prompt and very user friendly. The types of files that are going to be capable of downloading will be image, text, and music files. Having a central server will also allow instant messenger capabilities and being able to view different properties of different users. It will be fun and easy to use, and for those who are completely computer handicap I will try to make it so user friendly that the only thing that would prevent the user from using it is illiteracy.

Ayokunle Olowoyeye, "Remotely Monitoring and Controlling a Web Camera"

For my project I will write a program that will allow a user to monitor his/her room by controlling their web camera from the internet. The extent of this control will allow the user to pan left and right and if I have time up and down, so basically along a horizontal and vertical axis. Using a Visual Basic ASP.NET web application I will allow the user to upload and refresh screen grabs from the camera in real-time. I also plan on including a motion sensor that will turn on a light every time motion is detected in the room. I hope to set up the motion sensor so that it goes off according to a timer such as every 30 seconds. This information will be logged into a simple database showing the date and time of the intrusion which can be viewed from internet. Access control will be implemented in the form of forced login to the website.

If time permits I hope to set up the camera so that it takes a snapshot every time the motion sensor detects motion. Also I plan on adding temperature sensor functionality using Phidgets (www.Phidgets.com).

Matt Stone, "Comparison of OpenGL programming in C++ and Java"

This project consists of creating a 3D environment using Java OpenGL (JOGL). The environment will consist of roughly 7-10 different 3D objects, as well as several different lighting sources. The environment will also be navigatable, allowing the user to "fly" through it and observe the objects from different angles.

The project will be comparing the bindings used in JOGL versus the OpenGL bindings used in C++. The main focus will be analyzing the differences in the languages, which will be compared and contrasted in order to show the strengths and weaknesses of using each language for OpenGL programming. This knowledge could be used by the current Graphics professor in order to decide which language would be better suited for teaching the class.

Stephen Topper, "Algorithms for Searching a Proteomic Database"

The field of bioinformatics is heavily dependent on computers. Due to the complexity of DNA sequences, analysis of proteomic data must be done by computers. However, even with the computerized assistance, some analysis, especially comparison of protein sequences, can still take a long time. This makes minimization of running time a critical factor. This project will implement several different algorithms designed to take a protein sequence as a query and return the top ten most closely related sequences from a proteomic database.

These algorithms will require the creation of a simple database to store proteomic information. In addition, a sufficient amount of sequences will have to be added to the database in order to have something to search. The main points of the project, however, are the algorithms that will be implemented. Two algorithms that will be implemented are widely used substitution matrices for sequence comparison, PAM and BLOSUM. These matrices compare two sequences based on identity of the sequences and chance of mutation for each position in the sequence. A basic identity search will also be implemented.

Section C (Olowoyeye)

Kofi Boateng, "Single-Player Checkers Using OpenGL & A.I.

This project will be a game of checkers. The graphics language, OpenGL, will be used to design the user interface for the game. The game will have a 2D look though it will be designed in 3D. Everything relating to game playing will be programmed to appear in a 2D environment. This means the interface the user will see will be in 2D. The main purpose of the game is to have a human player try to beat a computer opponent which will be equipped with Artificial Intelligence (A.I.). The computer will use alpha-beta search to look ahead during a game before it makes its move. The computer will use heuristics to evaluate its position on the board before applying the alpha-beta search. This is because alpha-beta search for checkers space is too large to be exhausted in the search. In this way the search will only apply to the immediate area around the computer’s position.

David Mack, "DePauw’s Online Auction House"

My proposal for my senior project is to create an online auction house for DePauw students. This site will be designed in PHP, using an Oracle database. The PHP version being used is PHP 4. The Oracle database will be housed on the Jupiter server at DePauw, similar to the databases used in the Data Driven Websites class taught by Professor Carl Singer. Since the assignment requires an ER map, I will give a basic outline of the goals I have for the website and then the ER model. The underlying purpose of my idea is to create a website that allows students to sell at auction items that they don’t need after the semester, like books and refrigerators. Since the website will be designed solely for the campus, the necessity of money exchange via the mail is eliminated, because students will be able to go to one another's rooms in order to pick up the item. Consequently the security of the database will be of less importance. I will create a password entry system, with a log out based on time, but since no credit cards are involved, nothing more than authentication will be necessary. The future application of this website would generate money by charging students a nominal fee to list things, but since this function might be provided by the university, the proprietary aspect isn’t of utmost importance at this time.

Morgan Bates, "A Japanese Kanji Website for Teaching Correct Stroke Order"

I plan to create a database driven website that would help teach the Japanese form of writing, Kanji. Kanji is the most difficult of the writing styles that the Japanese have. Not only are there thousands of Kanji, but some Kanji have upwards of 20 strokes to a single character. They also must be drawn in a certain way, that is there is a distinct stroke order to each one. What I plan to do is to imbed a Java applet, or JavaScript program into the website. This program will let the students draw the kanji on the screen, and record the order of the strokes that they make. I plan to have not only a practice area to the site but also a quiz area. In the practice area they will be able to just draw kanji on the screen and replay the images that they have drawn if they want to. It will also store those kanji in a section of the database so the teacher will know that they have been practicing. In the quiz section the teacher will be able to set up a quiz with questions about how to draw certain kanji or if a recorded kanji that they have drawn is correct or incorrect. The student will then take the quiz and their answers will be placed in the data base for later checking.

Michael Oren and Kyle Shipley, "Interface Design for the Visually Impaired"

The goal of this project is to create an aural video game for the visually impaired. We plan to utilize user study techniques to design and implement a game that relies on spatial sound as the primary interface while also providing a graphical interface for those with limited vision with the goal of not giving either style of play an advantage. This program will utilize some artificial intelligence, graphics, and rely very heavily on human computer interaction theory and practice. If time allows, this game will also be expanded to include some networking features in order to allow individuals to play against one another.

Course InfoTimetableGradingProposal GuidelinesHome

Valid HTML 4.01!Valid CSS!DePauw University, Computer Science Department, Fall 2005
Maintained by Brian Howard (bhoward@depauw.edu). Last updated