#### Research Group

## Algorithms Group

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

- Research Areas
- Impact Areas

36 Group Results

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

We design software for high performance computing, develop algorithms for numerical linear algebra, and research random matrix theory and its applications.

This CoR brings together researchers at CSAIL working across a broad swath of application domains. Within these lie novel and challenging machine learning problems serving science, social science and computer science.

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

This CoR aims to develop AI technology that synthesizes symbolic reasoning, probabilistic reasoning for dealing with uncertainty in the world, and statistical methods for extracting and exploiting regularities in the world, into an integrated picture of intelligence that is informed by computational insights and by cognitive science.

We focus on finding novel approaches to improve the performance of modern computer systems without unduly increasing the complexity faced by application developers, compiler writers, or computer architects.

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 mission is fostering the creation and development of high-performance, reliable and secure computing systems that are easy to interact with.

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 seek to develop techniques for securing tomorrow's global information infrastructure by exploring theoretical foundations, near-term practical applications, and long-range speculative research.

We conduct research on all areas of database systems and information management.

We are investigating decentralized technologies that affect social change.

We aim to develop the science of autonomy toward a future with robots and AI systems integrated into everyday life, supporting people with cognitive and physical tasks.

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.

MIT App Inventor is an intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for smartphones and tablets.

We develop techniques for designing, implementing, and reasoning about multiprocessor algorithms, in particular concurrent data structures for multicore machines and the mathematical foundations of the computation models that govern their behavior.

Our objective is to build techniques, software, and hardware that enable natural interaction with

computation.

computation.

35 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.

Our goal is to develop a socially intelligent team coacher agent that helps humans communicate, strategize, and work together efficiently.

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.

We are investigating the limits of computing on encrypted data, with a focus on the private outsourcing of computation over sensitive data.

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.

To further parallelize co-prime sampling based sparse sensing, we introduce Diophantine Equation in different algebraic structures to build generalized lattice arrays.

With strong relationship to generalized Chinese Remainder Theorem, the geometry properties in the remainder code space, a special lattice space, are explored.

With strong relationship to generalized Chinese Remainder Theorem, the geometry properties in the remainder code space, a special lattice space, are explored.

The robot garden provides an aesthetically pleasing educational platform that can visualize computer science concepts and encourage young students to pursue programming and robotics.

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

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

A framework to support implementing, specifying, verifying, and compiling hardware designs, modularly

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.

To enable privacy preservation in decentralized optimization, differential privacy is the most commonly used approach. However, under such scenario, the trade-off between accuracy (even efficiency) and privacy is inevitable. In this project, distributed numerical optimization scheme incorporated with lightweight cryptographic information sharing are explored. The affect on the convergence rate from network topology is considered.

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.

45 People Results

Graduate Student

Graduate Student

Graduate Student

Graduate Student

Graduate Student

Graduate Student

Research Affiliate

Graduate Student

Graduate Student

Graduate Student

18 News Results

Wireless system helps Boston retirement home care for COVID patients while reducing risk of contagion

System ensures hackers eavesdropping on large networks can’t find out who’s communicating and when they’re doing so.

In a Washington Post op-ed, CSAIL's R. David Edelman outlines how to regulate AI properly

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

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 system encourages government transparency using cryptography on a public log of wiretap requests.

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

CSAIL’s “Squadbox” uses “friendsourcing” to better support targets of cyberbullying.

The Imagination, Computation, and Expression Laboratory at MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) has released a new video game called Grayscale, which is designed to sensitize players to problems of sexism, sexual harassment, and sexual assault in the workplace.

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.”

Last week CSAIL principal investigator Shafi Goldwasser spoke about cryptography and privacy as part of the annual congressional briefing of the American Mathematical Society (AMS) and the Mathematical Sciences Research Institute (MSRI).

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.”

Distributed planning, communication, and control algorithms for autonomous robots make up a major area of research in computer science.

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.