course-details-portlet

TDT4287

Algorithms for Bioinformatics

Choose study year
Credits 7.5
Level Second degree level
Course start Autumn 2024
Duration 1 semester
Language of instruction English
Location Trondheim
Examination arrangement School exam

About

About the course

Course content

The course deals with algorithms with applications in bioinformatics, with a particular focus on algorithms and data structures for search, comparisons, and motif discovery in strings. The course uses biological examples to motivate algorithms and solutions, but the course's focus is on the algorithmic problems and solutions.

Learning outcome

Knowledge: - Knows how dynamic programming (DP) can be used to solve string comparison problems such as "longest common subsequence", "edit distance", "local alignment", and "global alignment". - Knows how the DP solution for aligning two strings can be extended to aligning multiple strings. - Knows how k-mer indexes can be used for exact and approximate string search. - Knows what a keyword tree is, and how this index structure is built and used for string search. - Knows what a suffix tree is, how Ukkonen's algorithm can build this index structure in linear time, and how suffix trees can be used to solve different string search and comparison problems. - Knows how to find string motifs by using exact (branch-and-bound) and heuristic (simulated annealing) methods. - Knows how sequence assembly is connected to the shortest super-string problem and why the Euler-cycle problem is a special version of sequence assembly. - Knows what hidden Markov-models (HMM) are, how these can be used to model and identify properties of strings, and how the Viterbi, forward, and backward HMM algorithms work. - Knows what a RNA secondary structure is, how this relates to palindromes, and how DP can be used to find optimal and suboptimal RNA secondary structures. Skills: - Implement known algorithms and data structures and use these on real data. - Recognize variants of known problems and adapt known algorithms to solve these variant problems. Competence: - Choose between alternative solutions and use the solution that is most appropriate to solve a set of problems involving real data. - Give oral and written presentations of own solutions and results.

Learning methods and activities

Lectures, optional exercises, and a mandatory project.

If few students take the course, the lectures may be replaced with study groups.

Compulsory assignments

  • Exercises

Further on evaluation

Exams are only given in English.

Students are free to choose Norwegian or English for written assessments.

If there is a re-sit examination, the examination form may change from written to oral.

Course materials

Jones & Pevzner: An introduction to bioinformatics algorithms (MIT Press, 2004). Articles and handouts. (This may change.)

Subject areas

  • Algorithm Construction
  • Bioinformatics

Contact information

Course coordinator

Lecturers

Department with academic responsibility

Department of Computer Science