The computational study of intelligent behavior. This includes research in logical and probabilistic reasoning, machine learning, causality, heuristic search and combinatorial optimization, and natural language processing.
Computer System Architecture & CAD
The study of the structure and behavior of computer systems; development of new algorithms and computing structures to be implemented in hardware, firmware, and software; development of tools to enable system designers to describe, model, fabricate and test highly complex computer systems.
Computational Systems Biology
An integrative approach to understanding biological systems, with research areas that span systems biology, bioinformatics, genomics, computational biology, and biomedical engineering.
Graphics & Vision
The synthesis and analysis of images by computer. Graphics — rendering, motion capture, and geometric, physics-based and artificial life modeling/animation for the movie and game industries. Vision — texture, shape, motion and illumination, 3D reconstruction from images, object recognition, real-time vision/control for autonomous vehicles, visual sensor networks and surveillance, and medical image analysis.
Information & Data Management
The development of models, techniques and tools to improve the functionality, performance and usability of database management and Web systems that provide enabling technology for our information society — including Web search engines, digital libraries, big data, data mining, distributed databases, data stream management systems, and information systems for medicine and science.
The study and design of distributed and often mobile systems — including computers, vehicles, people, and sensors interconnected by a communications network. This includes the development of novel applications that run on these systems, new protocols that enable various network components to work together, and techniques to optimize performance and to ensure reliability.
A broad array of ongoing research that spans the entire spectrum of software systems — including programing language design and implementation, software engineering, software verification, operating systems, and embedded systems.
Computer Science Theory
The use of simple and concise mathematical models to investigate computational questions and issues — including research in centralized, parallel and distributed models of computation; optimal approximate and randomized online algorithms; complexity, cryptography, games, auctions and mechanism design theory.