UROP Research Opportunities

The Undergraduate Research Opportunities Program (UROP) cultivates and supports research partnerships between MIT undergraduates and faculty. If you have any questions please contact tluongo@csail.mit.edu or take a look at the How to UROP at CSAIL document (pdf format).  

This program is available to MIT students only.


    We are building a new programming language for image processing and
    computational photography which compiles clean algorithm descriptions
    to very high performance implementations on mobile devices. You will
    build an image editing app (or apps) for iOS, along the lines of
    SnapSeed and Adobe Revel, using our language to implement processing
    routines. The app will be a key demo of our technology, and can be
    distributed in the app store. Experience with iOS development a plus.

    Contact: Jonathan Ragan-Kelley and Fredo Durand

    Posted date: March 28, 2012
  • Google your Life

    Imagine an automatic private diary that records your life.
    For example, it allows you to:
    - Manage your time and get statistics about the time you spent with specific friends, family, or places.
    - Search it for all the restaurants that you visited last year and send to your guest.
    - See where you celebrated every birthday of your life.
    - Publish parts of your auto autobiography to the world, and to your grandchildren in the future.

    Our group at DRL is developing solutions towards these goals
    based on collected data from smartphone sensors. We...

    Posted date: March 28, 2012
  • Bedrock: building a software platform with mathematically proved correctness theorems

    Today there are many social costs arising from the complexity of software. Consider the example of "app stores" for mobile devices. Many users download and run many programs contributed by others whom the users have no reason to trust. Approaches to filter software with inappropriate behavior include best-effort manual code audits and run-time enforcement of coarse-grained security policies. These approaches routinely fail to catch dangerous programs, since analyzing serious code bases is highly non-trivial.

    An alternative is to prove mathematically that programs behave...

    Posted date: March 27, 2012
  • PDOS: a provenance-tracking file system

    DP1 6.033. Implement a file system that provides provence tracking. If a user changes a slide in, say, an open office presentation, the system should be able to tell all other files that have a copy of that slide. This project involves kernel hacking in Linux.

    Interested candidates may contact Frans Kaashoek, kaashoek@mit.edu, Robert Morris, rtm@csail.mit.edu, and Nikolai Zeldovich, nickolai@csail.mit.edu.

    If you have another systems hacking project that...

    Posted date: March 27, 2012
  • PDOS: linux kernel development for multicore and security

    Linux kernel programming; We developed extensions to the virtual-memory system and scalable locking implementations that have interest from the Linux community. We would like to clean up our implementations and make them available in the main-line
    Linux kernel.

    Interested candidates may contact Frans Kaashoek, kaashoek@mit.edu, Robert Morris, rtm@csail.mit.edu, and Nikolai Zeldovich, nickolai@csail.mit.edu.

    If you have another systems hacking...

    Posted date: March 27, 2012
  • PDOS: machine learning for graduate application

    Extend the EECS system for receiving and reviewing graduate admission applications to use machine learning algorithms to speed up the reviewing cycle. There are a few different directions that project could go, and your job is to find out what the direction to go and pursue that. This project involves analyzing data sets for several years, investigating what features to analyze and what machine algorithms to use, and implementing a design in a python-django-based Web site. Interested candidates may contact Frans Kaashoek, kaashoek@mit.edu, Robert...

    Posted date: March 27, 2012
  • Real-time Online Visualization of Patient Severity in Intensive Care Units

    Description: ICU dashboards often overload physicians by displaying an enormous amount of patient's information but fail to provide a snapshot or a summarized patient's story that physicians can understand at a glance. Visual analytics based on Artificial Intelligence can be a powerful way to simplify complexity in clinical decision making. We have recently developed an unsupervised learning algorithm to create insightful visualizations of patient severity in real time. The student will engage in our ongoing effort in building better visualization systems for massive health data. This...

    Posted date: March 27, 2012
  • Ur/Web: a programming framework that understands the Web

    There are many opportunities to do projects related to a new programming language:
    This is Ur/Web, a functional programming language for building modern Web applications, with a variety of novel features, including advanced type checking and static analysis to rule out common security vulnerabilities and express complex interfaces within component-based applications.

    Possible projects include those centered on applications, like building a...

    Posted date: March 27, 2012
  • Collaborative Human-Robot Manufacturing Test Bed

    The MIT Model-based Embedded & Robotic Systems (MERS) group is looking for talented and motivated undergraduate or MEng students to join us in our effort to push the boundaries of robotic manufacturing. Working in close collaboration with the Boeing company, our goal is to develop the technologies that will release manufacturing robots from their current repetitive tasks in highly structured environments and bring them to fluid and natural interactions with humans co-workers on the factory floor. We are seeking for students with a CS background that will help us develop our current...

    Posted date: March 24, 2012
  • Better Information Management on the Web

    The Haystack Group develops tools to help people better manage the information they deal with every day. Using methods from Databases, Machine Learning, and Human Computer Interaction, we develop a variety of tools to help people find, organize, author, publish, and share information. We build tools for the desktop and for the web. We run many ongoing projects that could benefit from UROP participation:

    • List.it is a firefox plugin for managing "information scraps" that is being used by over 20,000 people;...
    Posted date: January 12, 2012