I teach the following courses on Computational Biology and Algorithms at MIT.

6.047/6.878  Computational Biology: Genomes, Networks, Evolutionpreviously taught with Piotr Indyk (F05, F06), James Galagan (F07, F08, F09, F10)Covers the algorithmic and machine learning foundations of computational biology, combining theory with practice. We study the principles of algorithm design for biological datasets, and analyze influential problems and techniques. We use these to analyze real datasets from largescale studies in genomics and proteomics. Previous offerings: 
6.046: Introduction to Algorithmswith Ron Rivest (S06), Srini Devadas (S07), Piotr Indyk (S08), Marten vanDijk (S09) Introduction to design and analysis of algorithms. Topics include sorting; search trees, heaps, and hashing; divideandconquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; shortest paths; network flow. Advanced topics include: number theory, computational biology, string matching, database search, hidden Markov models; numbertheoretic algorithms; polynomial and matrix calculations. Previous Offerings: 
6.092: Bioinformatics and Proteomics: An EngineeringBased Problem Solving ApproachGil Alterovitz, Manolis Kellis, Marco Ramoni This interdisciplinary course provides a handson approach to students in the topics of bioinformatics and proteomics. Lectures and labs cover sequence analysis, microarray expression analysis, Bayesian methods, control theory, scalefree networks, and biotechnology applications. Designed for those with a computational and/or engineering background, it will include current realworld examples, actual implementations, and engineering design issues. Where applicable, engineering issues from signal processing, network theory, machine learning, robotics and other domains will be expounded upon. New research areas will be explored using current literature as well as text from book chapter materials being written by the instructors. Guest lectures include speakers from both industry and academia. (IAP 2005) 

6.096  Algorithms for Computational Biology (meets with 6.046)Manolis KellisThis course covers the algorithmic foundations of computational biology, combining theory with practice. We study the principles of algorithm design for biological datasets, analyze influential algorithms, and apply these to real datasets. Topics include: biological sequence analysis, gene finding, motif discovery, RNA folding, global and local sequence alignment, genome assembly, comparative genomics, genome duplication, genome rearrangements, evolutionary theory, gene expression, clustering algorithms, scalefree networks, machine learning applications to genomics. (Spring 2005) 
Course  Title  Professor 

6.047/6.878  Computational Biology: Genomes, Networks, Evolution  M. Kellis (with P. Indyk and J. Galagan) 
6.891  Computational Evolutionary Biology  R. Berwick 
6.892/7.90  Computational Functional Genomics  D. Gifford, T. Jaakkola, R. Young 
7.81J/8.591  Systems Biology  A. vanOudenaarden 
7.91  Foundations of Computational and Systems Biology  M. Yaffe, C. Burge, A. Keating 
10.555  BioInformatics  I. Rigoutsos, G. Stephanopoulos 
18.417  Introduction to Computational Molecular Biology  J. Waldispuhl, B. Berger 
HST.508  Quantitative Genomics and Evolution  L. Mirny 
6.096  Algorithms for Computational Biology  M. Kellis 