Experts in computer hardware work closely with members of the School of Electrical and Computer Engineering, forming interdisciplinary research teams. Graduate students are admitted to either graduate field. They usually enroll in ECE if their primary interest is in computer architecture, multiprocessor design, VLSI, computer-aided design (CAD) and circuit design; they enroll in CS if their interest is in compilers, operating systems, and programming environments. Students are not rigidly classified: ECE students can have a thesis advisor in CS and vice-versa. Research is conducted in the CSL and encompasses both experimental and theoretical work growing out of topics in computer architecture, parallel computer architecture, operating systems and compilers, computer protocols and networks, programming languages and environments, distributed systems, VLSI design, and system specification and verification.
For more information, see http://www.cs.cornell.edu/Research/ Architecture/ and http://www.csl.cornell.edu
Research in AI at Cornell is both theoretical and experimental, and covers a range of topics, including decision theory, knowledge representation, machine learning and data mining, natural-language processing, planning, reasoning under uncertainty, search, and computer vision. Natural-language processing, the ability to interact with machines using plain English, is also a research area of special interest to researchers in information science. Computer vision encompasses both archival storage of images and the function of robotic eyes. Research in AI often involves such other disciplines as biology, economics, linguistics, medicine, operations research, physics, and psychology. A particular strength is in computer-intensive approaches to AI problems. Professors who work in AI are key participants in the university-wide Cognitive Studies Program (CSP) and in the IISI.
For more information, see http://www.cs.cornell.edu/Research/ai/ and http://www.cis.cornell.edu/iisi/
Computational tools are being developed to analyze, understand, and manipulate newly available,
richly-detailed information on the basic structures
of life. Without advanced computing, biological
databases with gigabytes of information would defy
attempts to recognize patterns in them. Cornell
has a university-wide initiative in the science of genomics, in which CS and others are taking
part. CIS oversees interdisciplinary teaching and research in many aspects of computational
biology. CIS initiated a novel graduate program
in Computational Biology and Medicine in
collaboration with Rockefeller University and
Sloan–Kettering Research Institute. The Tri-institutional
Program in Computational Biology
and Medicine, now in its second year, builds on the
strengths in the medical sciences in the New York
City campuses and on the strengths in computer science at the Ithaca campus (for more information,
see http://www.cs.cornell.edu/grad/cbm/).
Within CS, the focus is on computational molecular biology. This includes pattern matching, protein classification, protein-fold prediction, long-time simulation of protein dynamics and function, and structure-comparison algorithms. CS is leading a new project, “The Library of Life”, in collaboration with the Bridging the Rift (BTR) Center, which will integrate (and create) data from classical and molecular biology of all living systems. The BTR Center also aims to promote peace in the Middle East and is located on the border between Israel and Jordan. The project will start with the creation of the Library of the Desert. For more details, see http://www.news.cornell.edu/features/BTR/
Another multiyear project seeks to create a database of the world’s approximately six million proteins. (For more information, see http://protomap.cornell.edu/ and http://biospace.cornell.edu/.) For more information on computational biology at Cornell, see http://www.cs.cornell.edu/Research/ compbio/ and http://www.cis.cornell.edu/cb/
Data-management topics range from efficient algorithms for very large data sets to large-scale systems for new and emerging applications. While traditional databases stored information numerically, today’s scientific, journalistic, and other databases often store pictures and related nontextual data. Summarizing this information for efficient storage presents a big challenge. Researchers in database systems collaborate with computer-science colleagues who work on theory, artificial intelligence, and operating systems. The Himalaya Project is exploring new directions in data mining. The Quark Project is building a system for querying semistructured Internet sources, and is related to the XML Data-management Project, which is part of Interactive Digital Libraries of Formal Algorithmic Knowledge. The Pepper Project is building a query layer for large-scale peer-to-peer systems. The Cougar Project is developing database technology for sensor networks.
For more information, see http://www.cs.cornell.edu/Research/datab/
Research in programming languages and compilation ranges from theory (including logic and semantics) to practical engineering issues (including verification, optimizing compilers, security, and run-time systems). Strong synergies exist with other subfields, for example in the development of secure programming languages, such as Typed Assembly Language (TAL) and Java Information Flow (Jif). Faculty members in this subfield work closely with the computer industry. One research group recently licensed program optimization tools to Intel for use in their iA-64 compiler product line. On-going research projects include Proof/Program Refinement Logic (PRL); several language-based security projects: Cyclone, a safe dialect of C; TAL (Typed Assembly Language); Jif; ECC (Efficient Code Certification); Polyglot, an extensible compiler framework for Java; JMatch, iterable pattern matching for Java; and Intelligent Systems Software.
For more information, see http://www.cs.cornell.edu/Research/lang
Cornell is a leader in the field of computer graphics, a broad, interdisciplinary field that includes a wide and growing range of applications from science to communication to entertainment. Research in computer graphics involves algorithms, physics, psychology, computation, computer vision, and architecture, among other fields. At Cornell, research and teaching in computer graphics are centered in CS and the closely affiliated PCG, one of the world’s leading computer-graphics laboratories and a dominant force in the international computer-graphics community for more than thirty years. The PCG is particularly famous for its work in realistic rendering, simulating environments that are physically accurate and perceptually indistinguishable from real-world scenes.
The interests of the computer-graphics group are broadly centered on the topic of high-quality rendering. Current research thrusts focus on the interrelated topics of improving the models of light scattering that underlie realism, deepening our understanding of how human viewers perceive computer-generated images, and developing algorithms for high-quality rendering at interactive rates. Other areas of interest include image-based modeling and texturing, architectural modeling, animation, graphics-hardware programming, and digital photography. The PCG’s state-of-the-art facility includes many tools for advanced research, including a sophisticated light-measurement laboratory with unique capabilities for directional light measurement, a large PC cluster, and a high-resolution tiled projection display.
For more information, see http://www.cs.cornell. edu/Research/graphics/
The systems group at Cornell is concerned
with the design and implementation of the
fundamental software systems that constitute a
computing infrastructure. Our interests span from
the very small, such as the smart-card systems
that fit on a postage stamp–sized die, to the very
large, like the wide-area distributed systems that
span the globe. Past research by the group in fault tolerance,
distributed communication, extensible
systems, and Internet networking is widely cited
and used. Concrete software artifacts developed at
Cornell are used by the New York Stock Exchange
and the French air traffic control system, and are
also deployed in commercial operating systems.
Over the last year:
The Spinglass group (led by Ken Birman), which focuses
on scalable group communication, has developed a series
of protocols and systems for scalable information sharing,
distributed monitoring, data mining, and control.
Paul Francis, who recently joined CS, has initiated the Firebreak project to add a ring of protection to the Internet Protocol that combats distributed denial-of-
service attacks.
The Jif group (led by Andrew Myers) has shown that secure distributed systems can be constructed by automatically introducing encryption, partitioning, and replication to satisfy explicit policies for data confidentiality and integrity.
Robbert van Renesse has worked on scalable peer-to-peer systems, and has developed self-organizing protocols for high-throughput consistent data replication, aggregation of distributed information, failure detection, overlay multicast, and publish/subscribe.
Fred Schneider has led a group attempting to understand how fault-tolerance can be combined with attack tolerance and has investigated threshold cryptography with proactive secret sharing in the Cornell Single Sign-On (CorSSO) and Cornell Online Certification Authority (COCA) authentication services.
The Beehive project (led by E. Gün Sirer) has introduced a novel replication technique that enables fast (O(1)) lookups in distributed, fault-tolerant, scalable hashtables, and used this technique to build an alternative to the legacy Domain Name Service, a critical part of the cyber infrastructure used to translate Internet names to addresses.
For more information, see http://www.cs.cornell.edu/Research/Systems/.
Scientists and engineers increasingly rely on
computer models and simulation to buttress their
experiments and designs. From the prevention of
metal fatigue in engines to the design of new
medicines, scientific and technological advances
rely on powerful computers and the algorithms that
run them. The scientific computing group develops
the algorithms that underlie simulation and
optimization. Matrix computations are a recurring
theme in the research. The focus is on efficient
and robust algorithms with an eye toward modern
high-performance parallel and multithreaded
architectures.
For more information, see http://www.cs.cornell.edu/Research/scientif/
Cornell is a leader on a broad range of research
issues related to computer security. Under the
aegis of the Information Assurance Institute,
located within CIS, we tackle the fundamental
problem of ensuring the security and reliability of
our global critical-computing infrastructure.
Many active research projects aimed at developing
a science-and-technology base that enhances information
assurance and ensures the trustworthiness
of networked information systems. These project
areas range from system and network security to
reliability and assurance, spanning language-based
security, secure online services, advanced type
systems for mobile code, static information-flow
control, policy specification and enforcement, and
proof-carrying code.
Overall, the breadth and depth of the projects
undertaken at Cornell are a direct result of the
well-integrated, diverse, and collegial environment
that CS provides. Our work draws its strength from
the synergy between the groups working on
security, programming languages, operating
systems, logic, and formal methods.
For more information, see http://www.cs.cornell.edu/Research/Security/
Cornell is a world leader in the theory of computing with fundamental research that spans the breadth of the field. Our faculty members and students have contributed to such areas as the design and analysis of algorithms, combinatorial optimization, computational complexity, computational algebra, program logic and semantics, automated deduction, and computational geometry. Cornell is also at the forefront in applying theoretical ideas to practical problems in areas such as machine learning, data mining, software and hardware verification, reliable systems, computer vision and medical imaging, computer graphics, programming languages and compilers, information science, and the computational sciences. Yet, while the theory of computing is by now recognized as a deep and foundational scientific discipline with broad impact, many of its central questions remain unanswered. As we enter the information age, continued progress on the fundamental theoretical questions will be essential for heightened understanding of complex systems and software, the nation’s network and information infrastructure, and the physical and biological sciences.
For further information, see
http://www.cs.cornell.edu/Research/theory/