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 email@example.com or take a look at the How to UROP at CSAIL document (pdf format).
This program is available to MIT students only.
Many of the current dialogue systems have employed rule-based or template-based dialogue management strategies to highly control the system response and the dialogue flow. There have also been some studies on stochastic dialogue generation such as POMDP. Both have pros and cons, as it is hard to achieve a perfect dialogue performance relying on one sole solution.In this project, we will explore automatic dialogue and response generation via the combination of stochastic approaches and heuristic methods. The student will explore a stochastic...Posted date: August 14, 2012
What is Julia? See the BLOG: http://julialang.org/blog/2012/02/why-we-created-julia/ which answers why we created Julia. In short, because we are greedy. We are power Matlab users. Some of us are Lisp hackers. Some are Pythonistas, others Rubyists, still others Perl hackers. There are those of us who used Mathematica before we could grow facial hair. There are those who still can’t grow facial hair. We’ve generated more R plots than any sane...Posted date: August 07, 2012
The MIT Model-based Embedded & Robotic Systems (MERS) group is performing research into controlling autonomous systems using high-level, model-based and task directed languages. To that end, we are developing the Reactive Model-based Programming Language (RMPL). RMPL unifies autonomous plant description, control programs, temporal constraints, and more into a single language. We are looking for UROP students passionate about making programming autonomous systems easier and more accessible. The specific tasks for a UROP depend on the student's interests. Possibilities include: adding...Posted date: August 07, 2012
The MIT Center for Mobile Learning, and we have several
UROP slots for work in educational computing and mobility. The current
opportunities involve App Inventor, a programming tool that lets
anyone, create their own apps for Android smartphones. We're run
a major public cloud-based IDE that lets people all over the world
create their own mobile applications and lets schools all over the
world include mobile app programming in their middle and high school
UROP projects can range anywhere from developing new curriculum and...Posted date: July 06, 2012
Mathematical proofs are a core concept in many areas of computer science and other fields, but how to write them is not especially easy to learn. The rules of the game, determining which proof steps are convincing and which are cop-outs, can seem mysterious. In the computer theorem proving world, there are some venerable algorithmic definitions of proof validity, but they have rarely been applied in contexts with non-expert proof authors. The UROP opportunity I'm proposing would join existing work to build tools for insertion of machine-checked theorem proving in undergraduate courses,...Posted date: July 06, 2012
We are currently developing a C++ software system for experimentation with new designs in glass blowing, to explore the design space before actually making something. Our current focus is to develop a system for glass "cane", and to develop new artistic designs of cane, which has been relatively stagnant field for several years. The project currently involves computer graphics (OpenGL, meshing), geometry (for glass-blowing transformations), Qt user interface design (a kind of visual programming language for glassblowing), and multithreading (for background...Posted date: June 25, 2012
We want to automatically evaluate the correctness of image processing code in the context of online courses. Steudents will submit python code, which we will run on new input images. The main interesting challenge is that multiple answers might be "correct" from the perspective of the course and we need to develop comparison tools that take into account this set of possibilities.
Contact: Fredo Durand,firstname.lastname@example.orgPosted date: April 23, 2012
Program optimization with linkage estimation (POLE), employs a
Bayesian network as the probabilistic model and is based on a
prototype-tree. A prototype tree is a single complete n-ary tree (where n is the maximum arity of the non-terminals) that represents a program. Each node in the tree is mapped to a random variable with its support corresponding to the discrete values for the choice set it can take. Programs are formed by sampling from this probabilistic model. More efficient programs are then used to re-estimate the distribution and then re-sample. Each iteration of this...Posted date: April 19, 2012
Large databases of labeled images are a key ingredient in building
large-scale object recognition systems and for this purpose MIT’s
computer vision group has produced LabelMe, a web-based image
annotation tool and online repository. LabelMe has helped shape the
frontier of object recognition research and we feel it is time to
start thinking about annotation and recognition beyond the desktop.
We are primarily seeking a highly motivated UROP candidate to help us
extend the LabelMe web-based interface to the iPhone, which will let
users...Posted date: March 29, 2012
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 DurandPosted date: March 28, 2012
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
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
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.
If you have another systems hacking project that...Posted date: March 27, 2012
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
If you have another systems hacking...Posted date: March 27, 2012
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, email@example.com, Robert...Posted date: March 27, 2012
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
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
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
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:
Posted date: January 12, 2012
- List.it is a firefox plugin for managing "information scraps" that is being used by over 20,000 people;...
The goal of this project is to develop a client-server system to
perform adaptive multi-resolution 3D rendering of large point clouds
as captured by 3D scanners. The system will take as input a large
point cloud and preprocess it to build a hierarchy of approximations
that will be stored on the server. The client will adaptively request
the appropriate nodes of the hierarchy as a function of the viewpoint
and bandwidth. Rendering will be progressive, starting with a coarse
approximation and refining it as the new finer-resolution nodes are
...Posted date: August 22, 2011