#### Research Group

## Algorithms Group

We devise new mathematical tools to tackle the increasing difficulty and importance of problems we pose to computers.

- Impact Areas
- Research Areas

22 Group Results

We devise new mathematical tools to tackle the increasing difficulty and importance of problems we pose to computers.

The MIT Center for Deployable Machine Learning (CDML) works towards creating AI systems that are robust, reliable and safe for real-world deployment.

Our interests span quantum complexity theory, barriers to solving P versus NP, theoretical computer science with a focus on probabilistically checkable proofs (PCP), pseudo-randomness, coding theory, and algorithms.

Our lab focuses on designing algorithms to gain biological insights from advances in automated data collection and the subsequent large data sets drawn from them.

Our group’s goal is to create, based on such microscopic connectivity and functional data, new mathematical models explaining how neural tissue computes.

We develop techniques and tools that exploit automated reasoning and large amounts of computing power to tackle challenging programming problems

This community is interested in understanding and affecting the interaction between computing systems and society through engineering, computer science and public policy research, education, and public engagement.

We are investigating decentralized technologies that affect social change.

Our group studies geometric problems in computer graphics, computer vision, machine learning, optimization, and other disciplines.

We are an interdisciplinary group of researchers blending approaches from human-computer interaction, social computing, databases, information management, and databases.

The focus of the HCI CoR is inventing new systems and technology that lie at the interface between people and computation, and understanding their design, implementation, and societal impact.

We develop innovative approaches for building software and for solving problems in modern parallel and distributed software systems.

Our research interests center around the capabilities and limits of quantum computers, and computational complexity theory more generally.

Our goal is to find better ways to make software, and ways to make software better.

We investigate the technologies that support scalable high-performance computing, including hardware, software, and theory.

We focus on understanding the problem-solving strategies used by scientists and engineers, with the goals of automating parts of the process and formalizing educational methods.

The Systems CoR is focused on building and investigating large-scale software systems that power modern computers, phones, data centers, and networks, including operating systems, the Internet, wireless networks, databases, and other software infrastructure.

The goal of the Theory of Computation CoR is to study the fundamental strengths and limits of computation as well as how these interact with mathematics, computer science, and other disciplines.

We work on a wide range of problems in distributed computing theory. We study algorithms and lower bounds for typical problems that arise in distributed systems---like resource allocation, implementing shared memory abstractions, and reliable communication.

This CoR takes a unified approach to cover the full range of research areas required for success in artificial intelligence, including hardware, foundations, software systems, and applications.

We use visualization as a petri dish to study intelligence augmentation, or how can computational representations and software systems help amplify our cognition and creativity, while respecting our agency?

25 Project Results

We aim to develop a systematic framework for robots to build models of the world and to use these to make effective and safe choices of actions to take in complex scenarios.

The project concerns algorithmic solutions for writing fast codes.

Alloy is a language for describing structures and a tool for exploring them. It has been used in a wide range of applications from finding holes in security mechanisms to designing telephone switching networks. Hundreds of projects have used Alloy for design analysis, for verification, for simulation, and as a backend for many other kinds of analysis and synthesis tools, and Alloy is currently being taught in courses worldwide.

We study the fundamentals of Bayesian optimization and develop efficient Bayesian optimization methods for global optimization of expensive black-box functions originated from a range of different applications.

Traffic is not just a nuisance for drivers: It’s also a public health hazard and bad news for the economy.

This project aims to design parallel algorithms for shared-memory machines that are efficient both in theory and also in practice.

We plan to develop a suite of graph compression and reordering techniques as part of the Ligra parallel graph processing framework to reduce space usage and improve performance of graph algorithms.

Our goal is to design novel data compression techniques to accelerate popular machine learning algorithms in Big Data and streaming settings.

Data scientists universally report that they spend at least 80% of their time finding data sets of interest, accessing them, cleaning them and assembling them into a unified whole.

Historically, DBMSs in the warehouse space partitioned their data across a shared nothing

cluster.

cluster.

Wikipedia is one of the most widely accessed encyclopedia sites in the world, including by scientists. Our project aims to investigate just how far Wikipedia’s influence goes in shaping science.

Our goal is to investigate deterministic algorithms for robotic task and motion planning.

We aim to understand theory and applications of diversity-inducing probabilities (and, more generally, "negative dependence") in machine learning, and develop fast algorithms based on their mathematical properties.

Developing state-of-the-art tools that process 3D surfaces and volumes

Help robots learn faster by providing demonstrations when they need help

We are designing new parallel algorithms and frameworks for financial computations.

We are designing new parallel algorithms, optimizations, and frameworks for clustering large-scale graph and geometric data.

Linking probability with geometry to improve the theory and practice of machine learning

Gerrymandering is a direct threat to our democracy, undermining founding principles like equal protection under the law and eroding public confidence in elections.

Predicting the number of clock cycles a processor takes to execute a block of assembly instructions in steady-state (the throughput) is important for both compiler designers and performance engineers.

However, building an analytical model to do so is especially complicated in modern x86-64 Complex Instruction Set Computer (CISC) machines with sophisticated processor microarchitectures in that it is tedious, error-prone, and must be performed from scratch for each processor generation.

Ithemal is the first tool that learns to predict the throughput of a set of instructions. It does so more accurately than state-of-the-art hand-written tools currently used in compiler backends and static machine code analyzers. In particular, Ithemal has less than half the error of state-of-the-art analytical models (LLVM's llvm-mca and Intel's IACA).

However, building an analytical model to do so is especially complicated in modern x86-64 Complex Instruction Set Computer (CISC) machines with sophisticated processor microarchitectures in that it is tedious, error-prone, and must be performed from scratch for each processor generation.

Ithemal is the first tool that learns to predict the throughput of a set of instructions. It does so more accurately than state-of-the-art hand-written tools currently used in compiler backends and static machine code analyzers. In particular, Ithemal has less than half the error of state-of-the-art analytical models (LLVM's llvm-mca and Intel's IACA).

We plan to develop a programming abstraction to enable programmers to write efficient parallel programs to process dynamic graphs.

Starling is a scalable query execution engine built on cloud function services that computes at a fine granularity, helping people more easily match workload demand.

A polyhedral compiler for expressing image processing, DNN, and linear/tensor algebra applications

Uhura is an autonomous system that collaborates with humans in planning and executing complex tasks, especially under over-subscribed and risky situations.

26 People Results

Postdoc Associate

Graduate Student

Research Affiliate

Graduate Student

Research Scientist

Postdoctoral Associate

Graduate Student

Research Scientist

Graduate Student

22 News Results

MIT scientists show how fast algorithms are improving across a broad range of examples, demonstrating their critical importance in advancing computing.

A tool for navigating complex computer instructions

Helping data journalists create interactive graphics

In a pair of papers from MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL), two teams enable better sense and perception for soft robotic grippers.

Research aims to make it easier for self-driving cars, robotics, and other applications to understand the 3D world.

When designing actuators involves too many variables for humans to test by hand, this system can step in.

Speakers — all women — discuss everything from gravitational waves to robot nurses

Workshop explores technical directions for making AI safe, fair, and understandable

Last week MIT’s Institute for Foundations of Data Science (MIFODS) held an interdisciplinary workshop aimed at tackling the underlying theory behind deep learning. Led by MIT professor Aleksander Madry, the event focused on a number of research discussions at the intersection of math, statistics, and theoretical computer science.

CSAIL’s approach uses algorithms and “2.5-D” sketches to let computers visualize images from any perspective

Breakthrough CSAIL system suggests robots could one day be able to see well enough to be useful in people’s homes and offices.

Users can quickly visualize designs that optimize multiple parameters at once.

MIT professor discusses using paper-folding for applications in manufacturing, medicine, and robotics

Harini Suresh, a PhD student at MIT CSAIL, studies how to make machine learning algorithms more understandable and less biased.

CSAIL’s robotic system minimizes dangerous sawing, helps users customize furniture.

CSAIL's NanoMap system enables drones to avoid obstacles while flying at 20 miles per hour, by more deeply integrating sensing and control.

This week it was announced that MIT professors and CSAIL principal investigators Shafi Goldwasser, Silvio Micali, Ronald Rivest, and former MIT professor Adi Shamir won this year’s BBVA Foundation Frontiers of Knowledge Awards in the Information and Communication Technologies category for their work in cryptography.

Today four MIT faculty were named among the Association for Computer Machinery's 2017 Fellows for making “landmark contributions to computing.”

We live in the age of big data, but most of that data is “sparse.” Imagine, for instance, a massive table that mapped all of Amazon’s customers against all of its products, with a “1” for each product a given customer bought and a “0” otherwise. The table would be mostly zeroes.

This week the Association for Computer Machinery presented CSAIL principal investigator Daniel Jackson with the 2017 ACM SIGSOFT Outstanding Research Award for his pioneering work in software engineering. (This fall he also received the ACM SIGSOFT Impact Paper Award for his research method for finding bugs in code.)An EECS professor and associate director of CSAIL, Jackson was given the Outstanding Research Award for his “foundational contributions to software modeling, the creation of the modeling language Alloy, and the development of a widely used tool supporting model verification.”

When a power company wants to build a new wind farm, it generally hires a consultant to make wind speed measurements at the proposed site for eight to 12 months. Those measurements are correlated with historical data and used to assess the site’s power-generation capacity.This month CSAIL researchers will present a new statistical technique that yields better wind-speed predictions than existing techniques do — even when it uses only three months’ worth of data. That could save power companies time and money, particularly in the evaluation of sites for offshore wind farms, where maintaining measurement stations is particularly costly.