Course detail

Programming in Bioinformatics

FEKT-MPA-PRGAcad. year: 2025/2026

The course is oriented to programming in bioinformatics area. It studies introduction to programming and alghoritms used for DNA and protein sequence analysis.

Language of instruction

English

Number of ECTS credits

5

Mode of study

Not applicable.

Offered to foreign students

The home faculty only

Entry knowledge

The subject knowledge on the Bachelor's degree level is requested.

Rules for evaluation and completion of the course

Students have to obtain at least 50 points out of 100 in the sub-activities:
1. midterm test (max. 30 points),
2. final test (max. 30 points),
3. implementation of algorithms (min 20 points, max 40 points).
Individual activities check students' ability to implement algorithms in chosen programming language.
Computer exercises are mandatory, properly excused missed lectures can be compensated individually after discussion with teacher.

Aims

The aim of the course is introduction to algorithms for analyzing DNA and protein sequences and their detailed analysis. Students program the discussed algorithms in programming environment R.
Student is able to:
- Solve problems iteratively and recursively
- Evaluate the performance of algorithms
- Implement algorithms for searching (brute force, branch-and-bound, greedy algorithms)
- Implement algorithms for sequence alignment using dynamic programming with recursion
- Implement algorithms for learning hidden Markov models and their use

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Chao K.-M., Zhang L.: Sequence Comparison. Springer-Verlag, 2009
Jones N.C., Pevzner P.A: An Introduction to Bioinformatics Algorithms. The MIT Press, 2004
Moorhouse M, Barry P: Bioinformatics Biocomputing and Perl: An Introduction to Bioinformatics Computing Skills and Practice. Wiley; 1 edition, 2004.
Zaplatílek K, Doňar B: Matlab tvorba uživatelských aplikací, Technická literatura BEN, Praha 2004

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme MPA-BTB Master's 1 year of study, winter semester, compulsory
  • Programme MPC-BTB Master's 1 year of study, winter semester, compulsory

Type of course unit

 

Lecture

13 hod., optionally

Teacher / Lecturer

Syllabus

1. Types of algorithms, analysis of algorithms, recursion and iteration.
2. Dynamic programming with recursion.
3. Restriction mapping and motif search.
4. Sorting algorithms.
5. Algorithms for de novo genome assembly.
6. Markov models in bioinformatics.

Exercise in computer lab

39 hod., compulsory

Teacher / Lecturer

Syllabus

1. Introduction to Git and GitHub.
2. Regular expressions.
3. Analysis of algorithms, time complexity.
4. Types of algorithms, recursion and iteration.
5. Dynamic programming with recursion.
6. Restriction mapping (exhaustive search).
7. Motif search (branch and bound algorithms).
8. Sorting algorithms (greedy algorithms).
9. Algorithms for de novo genome assembly.
10. Suffix trees.
11. Markov models in bioinformatics.