McCormick School of Engineering and Applied Science   Northwestern University
Department of Computer Science Northwestern University

Undergraduate Research Opportunities

We encourage undergraduates to participate in departmental research projects. These projects provide the opportunity to work closely with faculty and graduate students on real-world problems. Some of the opportunities currently available for undergraduate research projects are:
Professor Dinda ( - 399 projects
Peter Dinda would like a group of 2-3 students to implement a PAPERS network for the Prescience Lab's compute cluster. PAPERS is an ultra-low latency network implemented on PC parallel ports and TTL logic. The inventors provide all schematics, code, and even board masks at Specifically, Peter is interested in a scalable TTL_PAPERS for 8-32 nodes. In essence, this project would involve ordering the boards, components and cabling, lots of soldering to put it all together, hardware debugging, and then installing and testing the hardware and software on the cluster. If you've built just about any hardware before, this should be relatively easy.
Professor Edelson ( has a number of exciting opportunities for undergraduates to get involved in his research projects.  Students with multiple interests can combine these different aspects into projects that suit their interests.
  • For students interested in programming, he has opportunities to develop educational software, including visualization environments and geographic information systems.  There are opportunities for programming in Java and in C++ under Windows or Macintosh operating systems.
  • For students interested in human-computer interactions (HCI) there are opportunities to create interface designs for learners and conduct user-tests.  For students interested in cognitive science, there are opportunities to conduct research on student learning.
  • For students interested in science education, there are opportunities to develop curriculum, work with practicing teachers, and conduct research in classrooms.

Professor Forbus: We are looking for students to help us in extending our research on self-explanatory simulators into robust software for education and for building computer games. To see what self-explanatory simulators are, please look here. One example of how we have used them in education can be seen here Our ideas for using them in computer games and interactive entertainment can be seen at here and here.

There are three positions that we would like to fill as soon as we can:

  • SIMGEN IDE Developer: We are looking for a student to work with us in building an integrated development environment (IDE) around our self explanatory simulator compiler. This includes creating a good user interface, integrating existing debugging and tuning tools, and building new tools for making it easier to author simulators. The IDE will be written in Common Lisp, since the compiler is, but the runtime systems are in Lisp, C++ and Java. Consequently, skill in Common Lisp is essential, and some knowledge of C++ and Java would be very useful.
  • SIMGEN Runtime Developers: We are looking for two students to work with us on building runtime systems for self-explanatory simulators. One student is needed to help us improve our Java-based runtimes, which are being used for simulators in middle-school science curricula being developed in collaboration with Chicago Public School teachers. Another student is needed to help us update our C++ runtime, including converting it from Borland C++ to Visual Studio and porting it to Pocket PCs and Handheld PC Pros.

These projects can be undertaken as either C99 projects for independent study credit or for pay, level commensurate with experience. Assuming things go well, summer research positions may also be available. Please contact Ken Forbus ( for details.

Professor Watson - 399 project opportunities

Professor Wilensky - 399 project opportunities

For a complete list of research overviews by our faculty, please consult the research overview pages.  If you're in the McCormick School of Engineering, you might also be interested in the Undergraduate Honors Program.
2133 Sheridan Road, Evanston, IL 60208
Tel: 847-491-3500 | Fax: 847-491-5258

© 2003,2004 Department of Computer Science, Northwestern University. All Rights Reserved.
Send questions and comments to