CS 466: Introduction to Bioinformatics

Jump to: description | schedule | homework | project

Semester Fall 2018
Instructor Prof. Mohammed El-Kebir
TA Anusri Pampari (pampari2)
Time MW 2:00-3:15 PM
Location 1302 Siebel Center
Office hours Mondays 3:15-4:15 PM in 3216 Siebel Center
TA office hours Thursdays 11-11:59 AM in 4105 Siebel Center

Course description

This course introduces fundamental problems and algorithmic approaches in computational biology. Covered topics include:

  1. sequence alignment,
  2. genome assembly,
  3. phylogenetics,
  4. pattern matching,
  5. cancer genomics.
This course will not teach you how to run popular bioinformatics tools. Rather, we will focus on the underlying algorithmic ideas and the issues that arise when translating a biological problem into a computational problem and ultimately an accurate tool for biologists to use. In addition, this course will teach you how to read scientific papers and how to propose and conduct independent research.
Book: Jones and Pevzner, An Introduction to Bioinformatics Algorihms.

Prerequisites

Programming skills (equivalent to CS 225) for doing the mini-project. No background in biology is required. If you did not take CS 225 and its prerequisites at UIUC, you will need to get permission from me to stay in the course.

Grading

Undergraduates will receive 3 undergraduate credits; graduate students can enroll for 3 or 4 graduate credits.

3-credit students: 4-credit students:

Course schedule

Date Presenter Slides Reading
08/27/2018 Mohammed El-Kebir Introduction [slides]
  • Jones and Pevzner: Chapters 2.1, 2.3, 2.4 and 6.2
  • Biology for Computer Scientists -- Lawrence Hunter [link]
08/29/2018 Mohammed El-Kebir Sequence alignment I [slides]
  • Jones and Pevzner: Chapters 2.7-2.9 and 6.1-6.4
09/05/2018 Mohammed El-Kebir Sequence alignment II [slides]
  • Jones and Pevzner: Chapters 6.6, 6.7 and 6.9.
  • Lecture notes on Big Oh [link]
09/10/2018 Mohammed El-Kebir Sequence alignment III [slides] [video]
  • Jones and Pevzner: Chapters 6.7-6.9
  • Lecture notes on Naive Fitting, Local and Gapped Alignment [link]
  • Affine gap penalties example [link]
09/17/2018 Mohammed El-Kebir Sequence alignment IV [slides]
  • Jones and Pevzner: Chapters 7.1-7.4
  • Lecture notes [link]
09/19/2018 Mohammed El-Kebir RNA Secondary Structure Prediction [slides]
  • Lecture notes [link]
  • Nussinov example w/o bifurcation [link]
  • Nussinov example w/ bifurcation [link]
09/24/2018 Mohammed El-Kebir Protein Structure Alignment I [slides]
09/26/2018 Mohammed El-Kebir Protein Structure Alignment II [slides]
10/01/2018 Mohammed El-Kebir Multiple Sequence Alignment I [slides]
10/03/2018 Mohammed El-Kebir Multiple Sequence Alignment II [slides]
10/15/2018 Mohammed El-Kebir Multiple Sequence Alignment III [slides]
  • Lecture notes [link]
  • Jones and Pevzner: Chapter 6.7
10/17/2018 Mohammed El-Kebir Multiple Sequence Alignment IV [slides]
  • Lecture notes [link]
  • Jones and Pevzner: Chapter 6.7
10/22/2018 Mohammed El-Kebir Phylogeny I [slides]
  • Jones and Pevzner: Chapter 10.2, 10.5-10.8
10/24/2018 Mohammed El-Kebir Phylogeny II [slides]
  • Jones and Pevzner: Chapter 10.2, 10.5-10.9
10/28/2018 Mohammed El-Kebir Phylogeny III [slides]
10/30/2018 Mohammed El-Kebir Phylogeny IV [slides]
11/05/2018 Mohammed El-Kebir Phylogeny V [slides]
11/07/2018 Mohammed El-Kebir HMM I [slides]
  • Jones and Pevzner: Chapter 11.1-11.3
  • Lecture notes [link]
11/12/2018 Mohammed El-Kebir HMM II [slides]
  • Jones and Pevzner: Chapter 11.1-11.3
  • Lecture notes [link]
11/14/2018 Mohammed El-Kebir HMM III [slides]
  • Jones and Pevzner: Chapter 11.1-11.3
  • Lecture notes [link]

Homework

  1. Homework 1 was released on 9/10/2018 and was due on 9/17/2018 at 11:59pm. Please see Piazza.
  2. Homework 2 was released on 9/28/2018 and was due on 10/5/2018 at 11:59pm. Please see Piazza.
  3. Homework 3 was released on 10/22/2018 and was due on 10/29/2018 at 11:59pm. Please see Piazza.
Late policy:

Project

There are three kinds of projects.
  1. Implement an algorithm discussed in class, and make it available on Github.
  2. Benchmark algorithms discussed in class that solve the same problem on simulated or real data. Write a report about your findings.
  3. Write a small survey paper, summarizing state-of-the-art algorithms for a specific computational biology problem.
Some implementation-based project ideas: