Modelling and Analysis in Bioinformatics

Year Semester Date Period Language In charge
2015 autumn 26.10-10.12. 2-2 English Veli Mäkinen


Time Room Lecturer Date
Mon 12-14 B119 Veli Mäkinen 26.10.2015-10.12.2015
Thu 10-12 B119 Veli Mäkinen 26.10.2015-10.12.2015

Exercise groups

Group: 1
Time Room Instructor Date Observe
Thu 12-14 B221 Veli Mäkinen 26.10.2015—04.12.2015


The course explores computational models for biological networks, including e.g. network motifs and gene regulation, and introduces probabilistic analysis of sequence-level problems in fragment assembly, pattern matching, and motif discovery. The course is lectured by  Leena Salmela, Antti Honkela, and Veli Mäkinen.

Completing the course

The course consists of lectures, study groups and programming exercises. Attendance in the study groups and visiting lectures is mandatory. In case you cannot attend a study group or a visiting lecture, contact the lecturers for an alternative assignment. Python language is used for the programming exercises.

UPDATE: Lectures for the last two weeks will be cancelled. The corresponding exercises will be replaced by an additional learning diary on the visiting lectures.


  • 26.10.-30.10. Global network models (Salmela)
    • Monday 26.10. Lecture [Slides]
    • Thursday 29.10. 10-12 Study group on properties of ER graphs (material: Blum, Hopcroft, Kannan: Foundations of Data Science, Chapter 4 Random graphs)
      • Everybody reads beginning of section 4.2.: pages 77-79
      • Group 1: Threshold for diameter two: pages 79-82
      • Group 2: Disappearance of isolated vertices and Hamilton circuits: pages 82-84
      • Group 3: Full connectivity: pages 100-102
    • Thursday 29.10. 12-14 Exercise session
      • Exercise sheet (sneak peak in HTML)
      • Deadline: 5.11.
      • More information on completing the exercise and IPython Notebook below
  • 2.11.-6.11. Network motifs (Salmela)
  • 9.11.-13.11. Biology of gene regulation, simulating gene regulation (Honkela)
    • Monday 9.11. Lecture [Slides]
    • Thursday 12.11. 10-12 Study group on algorithms for simulating biochemical reactions
      • Papers:
      • ​Tasks:
        • ​Group 1: Read Gillespie (1977), especially Secs. I, IIIB, IIIC
        • Group 2: Read Gillespie (2000), especially Secs. I, II, III
        • Group 3: Read Gillespie (2000), especially Secs. I, II, IV
    • Thursday 12.11. 12-14 Exercise session
  • 16.11.-20.11. Gene regulatory network inference (Honkela)
  • 23.11.-27.11. Visiting lecturers:
  • 30.11.-4.12. CANCELLED: Modelling genomes, random projections for motif discovery (Mäkinen)
  • 7.12.-11.12. CANCELLED: Modelling sequencing, analysing complexity of fragment assembly (Mäkinen)


You can work on the exercises with a pair or alone. Submit your solutions as an ipynb file using Moodle.

The exercises consists of small programming projects in Python. We will use Python version 3 for the exercises. Exercises are given as IPython Notebook documents that you should complete to include your solutions. The IPython Notebook environment is preinstalled on the Linux workstations and you can also install it on your own computer. To get started with the exercises:

  • Create a directory for your notebooks
  • Copy the exercise file into that directory
  • Open a terminal and move to the directory
  • Run 'ipython3 notebook'

This will start the IPython Notebook system and open a web browser for you in which you can start working on the exercises. When you are done, close the web browser and issue Ctr-C twice in the terminal window to shutdown the environment.


To pass the course:

  • Attend study groups and visiting lectures
  • Submit the programming exercises and get at least 6 points in each of the three exercise sets (network models, gene regulation, probabilistic analysis of sequence-levels problems)
  • UPDATE: To replace the exercises for the last two weeks, you will also need to write a learning diary on the visiting lectures. (More instructions later.)

The course will be graded in the scale 1-5. Grading is based on the submitted programming exercises. In total 40 (was: 60) points will be available. To pass the course you must get  at least 20 (was: 30) points and a grade of 5 will require 34 (was: 50) points. If the exercises prove to be very difficult, these limits may be lowered.

The course does not include an exam and it is not possible to pass the course with a separate exam.