Algorithms in Comparative Genomics (2V + 2Ü)

392192 Wittler, Bohnenkämper, Braga Fr 08:30 - 10:00 (Ü) in U10-146
392189 Wittler, Bohnenkämper, Braga Fr 10:15 - 11:45 (V) in U10-146


Many questions in molecular biology, phylogenetics, and biomedicine can be approached through comparison of two or more genomes. However, a global alignment of multiple large genomes is often infeasible or comes at great expense. It is more efficient to compare genomes on a higher level of abstraction, as given by the succession of single-copy genes or other kinds of unique genomic markers on the chromosomal sequences.

In this course, various models of higher level genome comparison are discussed. We start with the classical breakpoint distance, followed by other simple measures such as SC/J and DCJ. The reversal distance will be discussed, and a general genome rearrangement distance. We will also study methods for the reconstruction of ancestral genomes.

Algorithms discussed in this course are mostly combinatorial by nature, similar to the sequence analysis course.

This course is taught in English.

Conditions for participation, prior knowledge

Required: Algorithms and Data Structures (or comparable)
Recommended: Sequence Analysis and Foundations of Genome Research


Preliminary version of the lecture notes:

Chapter 1

Chapter 2

Other references are listed below, together with the schedule.


  1. Distance and Sorting
    • Breakpoint model
    • Single-Cut-or-Join (SCJ) model
    • Double-Cut-and-Join (DCJ) model
    • DCJ-indel model
    • Inversion model
  2. Ancestral Reconstruction
    • Median and halving
    • SCJ Small Parsimony
  3. Conserved Gene Clusters
    • Generators for common intervals
    • Strong common intervals and PQ-trees
    • Common intervals of strings

Inversion Visualization Software

Prof. Istvan Miklos, from Alfréd Rényi Institute in Budapest, kindly shared his visualization software for the Breakpoint Diagram. It is written in Java, and you can download it here.

Usage: java InversionVisualisation file_name

For example: java InversionVisualisation example.txt

The input must be a signed permutation in one line, representing genome A (genome B is assumed to be the identity permutation), the numbers separated with a <tab>. There is an example in the provided archive.

Select the adjacency edges on which the reversal should act, and press the button Mutate. You can go forward and backward in the list of generated genomes, and you can delete any of them, too.

PQ-Tree applet

Download the jar-file and run java -jar <jar-file> -g n where n is the number of leaves for the initial PQ-Tree. Select the elements which shall appear consecutively by mouse click and Ctrl or shift in the list on the left side of the window. Then click Reduce to get the resulting tree. Use Reset to get the initial tree again. [Reference: J. Harris. A Graphical Java Implementation of PQ-Trees. (last visited 09/20/2006), April 2002. Carleton University. Debugged by Roland Wittler, Bielefeld University.]


Date Teacher Topic Literature Exercises
12.04. Leonard Introduction, Genes, Genomes, Breakpoint (BP) distance Tannier et al. 2009 Exercises 1
19.04. Leonard BP and SCJ distance, median (and halving) Tannier et al. 2009,
Feijão & Meidanis 2011
Exercises 2
26.04. Roland Small Parsimony under SCJ Feijão & Meidanis 2011,
Exercises 3
03.05. Roland Small Parsimony under SCJ Manuch et al. 2012,
Luhmann et al. 2014/2018,
Exercises 4
10.05. Leonard Double-Cut-and-Join (DCJ) model Bergeron et al. 2006 Exercises 5
17.05. Leonard Genome Halving (SCJ,DCJ) Feijão & Meidanis 2011,
Tannier et al. 2009,
Mixtacki 2008, Mixtacki 2008 (alternative)
Exercises 6
24.05. Leonard Inversion distance Hannenhalli and Pevzner 1999,
Bergeron et al. 2004
Exercises 7, bad_components.txt
31.05. Leonard Inversion distance/DCJ-indel distance Bergeron et al. 2004,
Bohnenkämper 2024
(ignore ILP section)
Exercises 8
07.06. Leonard DCJ-indel distance Braga et al. 2011,
Compeau 2013,
Bohnenkämper 2024
(ignore ILP section)
Exercises 9
14.06. Roland Consistency of gene clusters Slides,
Stoye et al. 2009,
Wittler et al. 2011
Exercises 10
21.06. Leonard Rearrangement problems on natural genomes Shao, Lin & Moret 2015,
Bohnenkämper 2024
28.06. Roland Generators for common intervals Bergeron et al. 2008, Sections 1 and 2
05.07. Roland Generators, strong common intervals and PQ-trees see above, Sections 3, 4, 5.1, and 5.3
12.07. Roland Common intervals of strings Didier at al., 2006,
Dany Doerr's notes
19.07. Roland Common intervals of indeterminate strings Doerr, PhD thesis 2016