Algorithms for Bioinformatics

Module code: CO7200
Module co-ordinator: Professor Thomas Erlebach

Processing biological data requires complex computations on large volumes of data. To ensure that these computations complete within a reasonable amount of time, we must design appropriate algorithms (computer procedures) after a careful study of the characteristics of the underlying data and making use of existing algorithm design principles.

In this module you will study the algorithmic solution of computational problems in bioinformatics. We will also look at the probabilistic models that underlie the formulation of biological data processing tasks as computational problems, and at key principles for designing efficient computer algorithms for solving these problems.

Topics covered

  • Introduction to algorithms
  • String matching
  • Pairwise sequence alignment
  • Hidden Markov models
  • Restriction site mapping
  • Multiple sequence alignment
  • Phylogenetic trees
  • Genome rearrangement


  • 24 hours of lectures
  • 12 hours of seminars
  • 4 hours of tutorials
  • 110 hours of guided independent study


  • Exam, 1 ½ hours (60%)
  • Coursework (40%)