http://www.cs.unc.edu/~prins/Classes/555/
Fall 2012 FB 334, Tel: 962-1913, prins@cs.unc.edu Office hours: Mondays 1:30 - 3:00 PM and by appointment
|
![]() |
Announcements
Overview Computational methods are fueling a revolution in the biological sciences. Computers are already nearly as indispensable as microscopes for analyzing and interpreting biological data. As a result, two new multidisciplinary fields, bioinformatics and computational biology, have emerged. This course will explore the computational methods and algorithmic principles driving this revolution. It will cover basic topics in molecular biology, genetics, and proteomics. The course also addresses basic computational theory and algorithms including asymptotic notation, recursion, divide-and-conquer approaches, graph algorithms, dynamic programming, and greedy algorithms. These fundamental concepts from computer science will be taught within the context of motivating problems drawn from contemporary biology. Example biological topics include sequence alignment, motif finding, gene rearrangement, DNA sequencing, protein peptide sequencing, phylogeny, and gene expression analysis.
This course is suitable for both computer science and biology students at both undergraduate and graduate levels, and thus has a course number (555) that can provide credit at both levels. Students who wish to take this course should have some programming experience in a modern language. Knowledge of data structures, algorithm design, and biology is helpful but not required. There will be 5 problem sets with short programming assignments, a midterm, and a final exam.
An Introduction to Bioinformatics Algorithms
Schedule| Date | Lecture Topic | Reading Assignment | Homework |
| August 21 | Introduction (pdf) | Chapter 1 | |
| August 23 | Molecular Biology and Algorithm Preliminaries (pdf) | Chapter 3 | |
| August 28 | Analyzing DNA molecules, Recursive algorithms and asymptotic analysis (pdf) | Chapters 1-3 | |
| August 30 | DNA Restriction Mapping (pdf) | Chapter 4.1 - 4.3 | |
| September 4 | Finding Regulatory Motifs (pdf) | Chapter 4.4 - 4.9 | |
| September 6 | Greedy Algorithms (pdf) | Chapter 5.1 - 5.2 | |
| September 11 | Approximation algorithms (pdf) | Chapter 5.3 - 5.4 | Assignment 1(due Sep 25) |
| September 13 | Dynamic Programming (pdf) | Chapter 6.1 - 6.3 | |
| September 18 | Sequence Alignments (pdf) | Chapter 6.4 - 6.8 | |
| September 20 | Local Sequence Alignments (pdf) | Chapter 6.8 - 6.10 | |
| September 25 | Gene Prediction (pdf) | Chapter 6.11 - 6.14 | Assignment 1 due |
| September 27 | Divide and Conquer Algorithms (pdf) | Chapter 7.1 - 7.4 | |
| October 2 | Graph Algorithms (pdf) | Chapter 8.1 - 8.8 | Assignment 2 (due Oct 11) |
| October 4 | DNA Sequencing (pdf) | Chapter 8.9 | |
| October 9 | HW1 review (sample solutions) | ||
| October 11 | HW2 review (sample solutions) | ||
| October 16 | Midterm Exam SN011 | Chapters 1-7 | |
| October 18 | Fall Break (No Class) | ||
| October 23 | DNA Sequencing (contd) (pdf) | Chapter 8.9 | |
| October 25 | Protein Sequencing (pdf) | Chapter 8.10 - 8.15 | |
| October 30 | Combinatorial Pattern Matching (pdf) | Chapter 9.1 - 9.5 | Assignment 3 (due Nov 8) |
| November 1 | Suffix Arrays and the Burrows-Wheeler Transform (pdf) | (not in text) | |
| November 6 | Approximate Pattern Matching (pdf) | Chapter 9.6 - 9.8 | |
| November 8 | Clustering (pdf) | Chapter 10.1 - 10.3 | Assignment 4 (due Nov 20) |
| November 13 | Clustering and Evolution (pdf) | Chapter 10.4 - 10.8 | |
| November 15 | Imperfect Tree Construction (pdf) | Chapter 10.9 - 10.11 | |
| November 20 | Hidden Markov Models (pdf) | Chapter 11 | Assignment 5 (due Dec 4) |
| November 27 | Randomized Algorithms (pdf) | Chapter 12 | |
| December 4 | Review HW3 sample solutions Review HW4 sample solutions |
||
| December 11 | Final Exam SN011 Noon-3PM | Chapters 8-12 and earlier concepts | |
Examples
Reference Section