skip to main content
Department of Computer Science University of Colorado Boulder

IMPORTANT: This site contains outdated information. We are currently working on a new site, click here to find the most up-to-date information including course schedules, degree requirements, forms, etc

cu: home | engineering | mycuinfo | about | cu a-z | search cu | contact cu cs: about | calendar | directory | catalog | schedules | mobile | contact cs
home · 



As members of a department at one of the premier research universities in the country, Computer Science faculty, staff, and students are engaged in a wide variety of research in the discipline. A very brief overview of current Computer Science research groups, their primary contacts, and links to the research group websites are provided below.

  Center for Lifelong Learning and Design (L3D)

Gerhard Fischer


The Center for LifeLong Learning and Design (L3D) is an educational and research unit of the Computer Science Department whose mission is the ongoing development of theory and technology to support learning, design, and communication. The Center's approach includes the development of conceptual frameworks and computational artifacts, as well as the cultivation of an understanding of their social and organizational contexts. To this end, the Center conducts research and creates learning opportunities in collaboration with other academic, research, and industrial partners at the University of Colorado, across Colorado, nationally, and internationally, to develop innovative educational models to prepare learners and workers for the challenges of the twenty-first century.

The foci of the Center's activities are to

  • foster learning as a lifelong process,
  • support the integration of working and learning,
  • augment human creativity and communication,
  • support designers working on ill-defined problems in a variety of domains, and
  • support the effective utilization of information.

... more

  Computational Language and Education Research (CLEAR)

James Martin
Martha Palmer
Wayne Ward


Computational Language and Education Research is focused on research and education in areas of human language technology. Established in 1998 as the Center for Spoken Language Research at the University of Colorado, the research group includes faculty with appointments in the Department of Computer Science: Professor and Co-Director James Martin, Professor and Co-Director Martha Palmer and Professor Wayne Ward.

The group's mission is to

  • To invent the next generation of conversational systems and natural language processing applications.
  • To contribute to the basic scientific knowledge of speech and language processing.
  • To train tomorrow's leaders in human language technology.
  • To improve education and universal access to information.
  • To create and share language resources.

... more

  Neural and Statistical Computation Research Group

Michael Mozer

The University of Colorado Boulder provides an outstanding interdisciplinary environment for research and graduate training in Neural and Statistical Computation in the fields of Artificial Intelligence, Cognitive Science, and Engineering. The weekly research meetings, "Boulder Computational Learning Group," encourage interaction between these diverse groups and leads to exciting synergies among research areas.

The research spans the following topics:

  • machine learning
  • neural network theory
  • reinforcement learning
  • applications of machine learning techniques to engineering problems
  • adaptive control of complex, nonlinear systems
  • computational models of perception, attention, and cognition
  • statistical approaches to natural language understanding
  • speech recognition
  • mechanisms of learning in the brain
  • optoelectronic implementations of neural networks

... more

  Database Research Group

Roger (Buzz) King


The Database Research Group is currently focusing on "The Sanctuary Project." Sanctuary (formerly Sybil/Diplomat) is a heterogeneous data source evolution environment, currently under development at the University of Colorado at Boulder. The goal of Sanctuary is to support large scale persistent applications by providing a consistent, evolvable persistence layer. Sanctuary allows for the lightweight interconnection and subsequent evolution of the set of heterogeneous databases (e.g., legacy database systems, modern database systems, flat-files, etc.) that typically make up such a persistence layer.

A large portion of the current development effort is focused on interconnectivity across multiple DBMS environments, including Sybase, Oracle, O2 and Microsoft Access. At present we are implementing Sanctuary in a CORBA environment to ensure interoperation across any network, including the Internet.

  Computational Science and Engineering Research Group

Elizabeth Bradley
Richard Byrd
Xiao-Chuan Cai
Elizabeth Jessup
Robert (Bobby) Schnabel
Henry Tufo


Computational Science and Engineering (CS&E) is one of the major research areas in the Department of Computer Science. The research focus is on the development of scalable algorithms and software for very large applications and for massively parallel computers. In particular, we work in the following areas:

  • global optimization methods with applications in protein folding problems
  • numerical methods for partial differential equations
  • domain decomposition methods
  • constrained and unconstrained optimization algorithms
  • nonlinear dynamics and chaos
  • high performance algorithms and software for numerical linear algebra
  • high order methods for climate modeling
  • information retrieval
  • modeling and control of nonlinear systems

... more

  Protein Folding by Global Optimization

Richard Byrd
Robert (Bobby) Schnabel
Elizabeth (Betty) Eskow
Brett Bader


We are conducting research on the so-called protein folding problem: predicting the 3-dimensional structure of a protein when given only its sequence of amino acids. Our approach utilizes predictions of local structures common to known proteins, namely helices and cross-bonded strands, that are believed present in the target protein. We generate likely structures from these predictions and then rely upon small-scale global optimizations in selected regions and local optimizations on a physics-based energy function to refine the overall shape. We present an overview of this approach and show results on various proteins from CASP4, a blind competition of structure prediction held in 2000. The results show that our method is more effective relative to other groups on targets for which less information from known proteins is available. In fact, our method produced the best prediction for one of the most difficult targets of the competition, a protein of 240 amino acids.

  Center for Computational Pharmacology (CCP)

Lawrence Hunter


The mission of the Center for Computational Pharmacology is creating novel algorithms and knowledge-based tools for the analysis and interpretation of high-throughput molecular biology data. Our ultimate goal is augmenting the process of biological discovery through the use of advanced computational techniques, particularly machine learning and knowledge-based approaches applied to high throughput molecular biology data. We create novel algorithms for the analysis and interpretation of gene expression arrays, proteomics, metabonomics, and combinatorial chemistry. We also create tools for building, maintaining and applying knowledge-bases of molecular biology, and for knowledge-driven inference from multiple biological data types. Finally, we are developing and applying natural language processing techniques for information extraction from and management of the biomedical literature.

... more

  Translator Construction (Eli)

William Waite


Methods and techniques of compiler construction are applicable to a range of problems that is much broader than the development of compilers for programming languages: Processors for input languages, design languages, specification languages, and intermediate languages in applications programs all demand solutions to translation problems.

We have combined a variety of standard tools that implement powerful compiler construction strategies into a domain-specific programming environment called Eli. Using this environment, one can automatically generate complete language implementations from application-oriented specifications. The implementations might be interpretive, using the constructs of the source language to invoke operations of an existing system, or might involve translation into an arbitrary target language.

Eli provides modern compiler construction facilities to users with a wide range of sophistication. It offers complete solutions for commonly-encountered language implementation subtasks and contains libraries of reusable specifications, making possible the production of high-quality implementations from simple problem descriptions.

The system has been in the field since 1989, and has been used in a number of projects worldwide. It generates programs whose performance is comparable to that of a good hand-coded implementation. Development time for a processor using Eli is generally about one third of that for comparable hand code, and maintenance is significantly easier because specifications rather than implementations are being maintained.

... more

  Intelligence in Action Lab

Jane Mulligan

Intelligence in Action Lab

The goal of the Intelligence in Action Lab is to build systems that sense and act intelligently in natural real-world scenarios. The emphasis is on the power and limitations of Computer Vision techniques for navigating and understanding the environment.

Current areas of interest are

  • image-based virtual environments
  • vision for robot navigation
  • human-to-robot skill transfer
  • learning applied to ground robots
  • signal analysis and prediction for medical monitoring

... more

  Robotics and Smart Materials

Nikolaus Correll

Robotics and Smart Materials

We are interested in making robots truly autonomous by distributing sensing, computation, and actuation in the environment. We are investigating distributed systems from city scale (e.g. routing of autonomous cars for public transportation), house-hold size (e.g. swarms of robots tending to plants in an autonomous greenhouse) to "smart materials" consisting of many cooperating elements that can sense, compute, and actuate (e.g. the pneumatic belt).

... more

  ConnectivITy Lab

Leysia Palen

ConnectivITy Lab

Members of the ConnectivITy Lab are interested in how information and communication technology connects people with each other and with the information they seek. We research and design socio-technical systems in/for a variety of contexts, including safety- and time-critical situations. Our work is highly cross-disciplinary, and we have skills in technology design, social theory, and empirical research.

... more

  A Tool-Supported Programming Languages Curriculum

William Waite
Amer Diwan

Practicing engineers must be able to study a problem, discover what they need to know in order to solve it, learn any new material, and then apply their knowledge to create some artifact within a set of economic constraints. In order to prepare a student to participate in the engineering enterprise, therefore, it is important for the University to teach them the set of scientific knowledge underpinning their particular discipline. It must also teach them to recognize the holes in their knowledge and fill those holes, to work with others in both knowledge acquisition and artifact creation, and to plan their activities based on an accessible history of previous projects.

Translating these general educational objectives into specific classroom environments is a serious challenge. First, the limitations of available design tools has tended to constrain instructors to the use of relatively well-defined, simple problems that bear little resemblance to the complex processes students will encounter as practicing engineers. Second, the engineering curriculum typically does not include courses specifically intended to develop in students the abilities to work effectively in groups or teams. Yet working with others is a crucial skill for effective design and development and for continuous or life-long learning in the technical professions.

"A Tool-Supported Programming Languages Curriculum" is aimed at meeting these challenges. The strategy is to "scaffold" content-related problem-solving skills and process-related group interaction skills by integrating a suite of tools developed by the research community into a three-course sequence required of all computer science majors at the University of Colorado. The courses would be redesigned so that they build upon each other in three specific areas: content, cognitive skills, and team or process skills.

  Software Engineering Research Laboratory (SERL)

Kenneth Anderson
Dennis Heimbigner
Alexander Wolf


Software has become the driving force behind most new technologies. But the engineering of software is becoming increasingly complicated. A software engineer must balance a variety of competing factors, including functionality, quality, performance, safety, usability, time to market, and cost. Moreover, the size of software systems that are being built is rapidly growing.

The Software Engineering Research Laboratory (SERL) in the Department of Computer Science at the University of Colorado Boulder is pursuing the discovery of principles and the development of technologies to support the engineering of large, complex software systems. The challenging targets for this work are organizations and software systems operating in the wide-area, heterogeneous, distributed, and decentralized context of wide-area networks such as the Internet.

... more

  University of Colorado Policy Lab (UCPL)

Tom Lookabaugh
Douglas Sicker

Policy Lab

Policy Lab performs targeted technical and economic experiments and evaluations intended to illuminate critical telecommunications and information technology policy issues. Experiments are designed and results analyzed to be relevant and easily understood by all stakeholders, regardless of background (technical, legal, business, economic, etc.). Success is measured by the Lab's ability to clarify key issues and accelerate valuable innovations. The Lab has a philosophy of non-advocacy: avoiding taking positions on behalf of the political interests of any particular stakeholder.

... more

  Colorado Computer Systems Research (CCSR)

Elizabeth Bradley
Dirk Grunwald
Daniel Connors
Amer Diwan
Qin (Christine) Lv
Shivakant Mishra
Douglas Sicker
Jeremy Siek
Manish Vachharajani


Computer systems research at the University of Colorado involves the interdisciplinary collaboration of the Department of Computer Science and Department of Electrical, Computer and Energy Engineering. The objectives of the combined program efforts are to provide critical research, expertise, and technology in the evolving areas of computing and communication. Projects in computer system research include computer architecture, high-performance computing, low-power embedded system design, VLSI microchips, optimizing compiler technology and analysis, mobile/wireless communications, computer networks, operating systems, and programming languages.

This includes research in the following areas:

  • Computer Architecture
    • Power Aware Computing
    • High-Performance Computing
    • System Design
  • Compiler Technology and Programming Language Analysis
  • Computer Networks

... more

  MultimodAl NeTworks of In-situ Sensors (MANTIS)

Richard Han
Shivakant Mishra


The MANTIS group focuses on research in the area of wireless sensor networking, which brings together aspects of operating systems, networking, embedded systems design, security, and user interfaces. MOS, the MANTIS Operating System, is a multi-threaded OS designed for resource-constrained sensor platforms. The advantage of multithreading is that it eases application programming, since the developer does not have to worry about when to release the CPU. Multithreading together with a simple C API enables MOS to provide simplified programming of wireless sensor nodes.

Areas of research include

  • embedded sensor operating systems
  • communication protocols for wireless sensor networks
  • secure sensor networks
  • low power sensor networking

... more

  TerraSpark Geosciences

Geoffrey Dorn

TerraSpark Geosciences

TerraSpark Geosciences (formerly the BP Center for Visualization) was established in October 2000 as a new research Center at the University of Colorado as part of both the College of Engineering and Applied Sciences and the College of Arts and Sciences. Sponsored by the Departments of Aerospace Engineering Sciences, Computer Science and Geological Sciences, the TerraSpark Geosciences is devoted to the research and development of advanced visualization technology across a wide range of disciplines. TerraSpark Geosciences is developing an extensive program of research and development initially focusing on the energy industry, aerospace and medical visualization.

Its mission includes

  • Visualization research and development applied to a wide range of disciplines
  • Visualization in education and outreach
  • Application of visualization technology as a technical service
  • Commercialization of the technology

... more

  Wellness Innovation and Interaction Lab

Katie Siek

Wellness Innovation and Interaction Lab

The Wellness Innovation and Interaction (WII) Lab designs, implements, and evaluates mobile applications that can improve a population's health and wellness. Our research motivations are two fold -- we want to provide people with easier solutions to improve their health and wellness while assisting researchers in other disciplines study new, technical interventions.

WII researchers study how the integration of pervasive technologies in health and wellness environments affect interventions. They collaborate with researchers in medical and social science disciplines to assess the needs of a specific population and show how technology can possibly help.

... more

  Scalable Game Design

Alexander Repenning
Clayton Lewis
David Webb
Jeffrey Kidder

Scalable Game Design

Bringing together researchers from computer science, education and communication, Scalable Game Design is an interdisciplinary initiative with the goal to bring computer science education into public schools. Scalable Game Design is a combination of computational thinking tools, curriculum and teacher training. Our current project works with schools and community/tribal colleges in Boulder, Denver, Pueblo, Ignacio and Oglala (SD). Scalable Game Design investigates:

  • motivation: what are the pragmatic issues of employing game design for computer science education in different communities?

  • equity: how to make game design interesting and relevant to women and underrepresented communities such as Native Americans?

  • transfer of game design to STEM: "now that you can build Space Invaders can you build a computational science model of mud slide"?

  • scaling: what does it take to establish a game design based education pipeline from middle school to graduate school?

  • computational thinking: What are requirements for computational thinking tools; what are computational thinking inventories?

... more

See also:
Department of Computer Science
College of Engineering and Applied Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
Send email to

Engineering Center Office Tower
ECOT 717
FAX +1-303-492-2844
XHTML 1.0/CSS2 ©2012 Regents of the University of Colorado
Privacy · Legal · Trademarks
October 8, 2011