The following projects will partially fulfill the practicum experiences that your program of study requires. Two practicum experiences are required to fulfill graduation requirements. We recommend one experience during the junior year and one during the senior year. You may choose any combination of mentored research or internship. Course numbers have changed. Mentored research is either CSC 498 or 499, depending on level of experience. CSC 499 is reserved for when you are continuing work on a project. Internship is now CSC 399. (If you are interested in internship opportunities, please logon to LionsPro through Career Services and contact
Dr. Li, our internship coordinator. Check the department's
internship web pages for more information.)
Please read through the following project descriptions. If you are interested in some of them, schedule an appointment with the faculty member indicated to discuss your interest, qualifications, and schedule. When you are invited to join the project by the faculty member, please fill out the
mentored research contract, including course numbering, section numbering, gpa, earned hours, and the signature. The contract is to be turned in for review by the Department Chair, and then after final approval, you will need to bring a copy of the contract to Records & Registration for in-person registration for that one course.
Research projects are listed in alphabetical order by faculty member’s last name. As new proposals arrive, this list will be updated. If you have a great idea for a project that you don’t see listed, please visit with the faculty member most closely interested in that area and propose a discussion!
Dr. Peter DePasquale:
- Continued Development of COMTOR - a Java-based Java Source Code Comment Tutoring and Analysis System (1 student) - During the Fall 2006 semeseter, the COMTOR project was started and a code base developed. I am looking for additional work to be performed that moves the project forward. This will include additional development of analysis doclets (based on the Javadoc doclet API) as well as initial deployment to the web. We hope to use this system informally during the spring 2006 semester in order to refine the web analysis platform. This project is being developed in conjunction with a doctoral student and former TCNJ CS alum - Michael Locasto.
Mentored research will include regular weekly meetings, directed readings and discussions, as well as development and implementation of various related software components. Solid programming background and proven performance in CS220/230/340 is required. For more information on working with me, please refer to my
web site.
Dr. Deborah Knox:
Coming soon!
Dr. Jikai Li:
- This research is a continued effort to investigate how a new transport layer protocol. In this work, we will continue our research to develop new transport layer protocol for high-speed wired and wireless network. This work will use NS-2 to study the performance of network. Although programming is not focus of this research, moderate programming is a must-be. In the last several semesters, we have studied extensively on this topic. For this coming semester research, we will focus on how the different senders can split bandwidth fairly within a reasonable time.
The student interested in this research should have C/C++ programming experience, have Networking experience (took networking course) before. At the end of the semester, student is expected to turn in a research report.
- This work is intended to study how Optical Burst Switching network schedule periodic traffic. For detailed information, please contact with Dr. Li.
Dr. Miroslav Martinovic:
Dr. Martinovic is on sabattical during the Spring 2007 semester and will not be taking on mentored research students. Please look for his return in the Fall of 2007 for his mentored research opportunities.
Dr. Norm Neff:
- This spring, I will mentor one research project, which may have
several team members. The general requirements include:
- scheduled meetings to discuss readings and to plan activities
- weekly written progress reports
Possible topics for the project:
- String matching - Investigate flexible string-searching algorithms,
which can handle errors in the text or skip intervening text characters. Examples are the class of bit-parallel algorithms, suffix automata, and newer hybrids of the two classes. Requirements- CSC 410, C++ programming
- Garbage collection - Modify the MiniOO VM to support garbage collection. Requirements- CSC 434 (corequisite), C++ programming
- The two-dimensional (2D) rectangular strip packing problem - The
input is a list of n rectangles with their dimensions and a target width W. The goal is to pack the rectangles without overlap into a single rectangle of width W and MINIMUM height H. Requirements- CSC 340, C++ or Java programming
Dr. Monisha Pulimood:
- Extensions to a grid computing framework (2 students) - The College of New Jersey has several computer labs across the campus equipped with state-of-the-art computers for use by students and faculty. There are periods, for example during the night or during the summer months, when a significant number of these computers are underutilized. In this project we will design and implement extensions to the grid computing framework that was implemented in Fall '06. This grid will eventually allow the TCNJ community to harness idle computational resources across campus for research purposes. (A grid computing system is a distributed collection of computers that enables Internet Programming, i.e. the sharing, selection, and aggregation of resources across a large network like the Internet. This sharing is made possible based on the resource availability, capability, performance, cost, and ability to meet quality-of-service requirements.) Java programming experience required (CS1 and CS2). Knowledge of networks would be an advantage.
Project will include regular weekly meetings, directed readings, discussions, design, implementation, and testing. A final report and a presentation is due at the end of the semester.
Dr. Andrea Salgian:
The research projects that I offer are in the field of Computer Vision
and Image Understanding.
Computer vision is a subfield of artificial intelligence that aims to replicate human vision using computer hardware and software. The big challenge is understanding images, bridging the gap between the nature of images (essentially arrays of numbers) and their descriptions. State of the art computer vision technologies have made possible achievements such as vehicles that are able to steer themselves along highways, and computers that can recognize and interpret facial expressions. Computer vision makes possible the enhancement, interpretation, recognition, identification and other processing of images.
Projects include:
- Face recognition - Continue the design and development of a face detection and recognition system to be used on the interactive robot being built by a team of engineering and computer science students.
- Office surveillance - Install a camera in an office and analyze the images that it acquires. Trigger alarms and/or deliver statistics about objects and people that pass through the field of view.
- Image search - Google image search analyzes text on the page adjacent to the image. Use a search engine and implement a true image search, that analyzes image content, using image retrieval algorithms.
- Your ideas - If you have an idea about a possible project involving
digital imagery, please contact me.
Solid C/C++ programming background is required.
Projects will include regular weekly meetings, directed readings, discussions, design, implementation, and testing. A final report and a presentation is due at the end of the semester.
Dr. Ursula Wolz:
Coming soon!