News

Currently, no news are available

Algorithms for Sequence Analysis

(Special lecture 4V+2Ü, 9 CP for MSc Bioinformatics, Advanced lecture to other CS degree programs as well: Computer Science, DSAI, Cybersecurity, etc.)

Note: If you intend to take this course in a later semester, please be aware that the next instance will most likely be in Summer 2028.

Lecture Dates:

  • TBA (twice a week, likely Tue/Thu mornings)
  • Room: E2.1, room 0.01 (Center for Bioinformatics, seminar room, ground floor)

Tutorials:

  • TBA (likely two options per week)
  • Room: E2.1 room 007 (Center for Bioinformatics, small seminar room, ground floor)

You need to be registered for this course in order to access the Materials section with lecture slides, homework assignments, etc.

Contents

Some of the topics discussed are

  • different algorithms for exact pattern search (searching for substrings in longer strings)
  • data structures for full-text indexing, in particular suffix tree, array, Burrows-Wheeler transform, FM index
  • useful companion data structures: rank (and select) data structures on bit sequences; wavelet trees
  • applications of full-text indexes in genomics (repeat finding, etc.)
  • error-tolerant pattern search in strings (Hamming distance; edit distance)
  • biological sequence alignment and models of evolutionary processes
  • algorithm engineering for sequence alignment (affine gap costs; linear space; different objectives)
  • the read mapping problem; seed-filter-extend approaches
  • text compression algorithms
  • alignment-free sequence analysis: basics, methods, successes, challenges

Requirements

There are no special requirements for the course. However, you should be familiar with elementary algorithms and data structures (sorting; stacks, queues) and algorithm analysis (asymptotic notation like O(n)). For bioinformatics, this is a fairly theoretical and formal course about algorithms. For theoretical computer scientists, this is a fairly practical course, actually considering good implementations of different algorithms. Programming skills are absolutely necessary to solve the practical homework exercises. Do not take this course if you have no or poor programming skills; it will not work out well.

Passing the Course

To pass this (graded) course for 9 ECTS credits, several conditions need to be satisfied:

  • You need to register for the course here in the CMS to access the course materials, including homework (NB: registration will open closer to the semester start; there is no limit on the number of participants).
  • You need to attend a tutorial regularly and present some of your homework solutions. The tutors will keep track of when you do this.
  • When you qualify for the exam, you need to register for it in the LSF system (instructions will come towards the end of the semester; exam dates will be shortly after the lecture period). LSF registration closes one week before the exam; no exceptions.
  • The exam will check your understanding of a wide variety of topics taught in the course and from the homework. Usually the exam is an oral exam; it will only be a written exam if the number of qualifying course participants is 15 or above. This will be estimated and announced no later than the end of November.

No Grade Improvement

Important: Once you have passed the exam, you cannot retake it to improve your grade. This is different from basic lectures where there is an improvement possibility within the same exam period. 

No Automatic Re-Admission for the Next Exam Period

If you qualified for the exam in one exam period (say, winter '26/27), but then failed the exam(s), and you want to re-take the exam later (say, summer '28), then you have to re-qualify (i.e., do the homework again and obtain enough points). In any case, it is highly recommended to prepare for the exam by solving the homework assignments!

Privacy Policy | Legal Notice
If you encounter technical problems, please contact the administrators.