Welcome to CS181: Computational Molecular Biology

The aim of this course is to provide an introduction to computational molecular biology. The course is organized into six chapters:

  1. Sequence Alignment
  2. Combinatorial Pattern Matching
  3. Phylogenetic Trees
  4. Hidden Markov Models
  5. Genome Assembly
  6. Genomic Privacy

Each chapter is devoted to a class of basic computational problems related to the analysis of DNA, RNA, and protein sequences and their molecular function. Our journey in each chapter is driven by a set of beautiful algorithms. A "beautiful" algorithm is one that is rigorous, practical, elegantly simple, and easy to implement. In addition to these beautiful algorithms, each chapter contains a Foundations section that gives a detailed presentation of the biological problems discussed as well as the theoretical computer science and statatistical results that led to the invention of the algorithms. This class provides a serious introduction to the field of computational biology both for potential concentrators and for those who may take only a single course in the subject.

Historical note: CS181 was first taught at Brown 22 years ago by Professor Franco Preparata (i.e. before the completion of the Human Genome Project). This year's offering is the 23rd incarnation of this foundational course in computational biology. See the Resources page for a biology primer written by Prof. Preparata.