BMI-203: Biocomputing Algorithms
This is the home page for BMI-203, Biocomputing Algorithms (3-units, Spring Quarter). The primary course lecturers are Ajay Jain (course coordinator), and Scott Pegg. The schedule for Spring 2008 is here.

This course is an introduction to computational issues and methods used in the field of bioinformatics and computational biology. The course emphasizes the implementation, analysis, and validation of methods. It is about attacking computational problems in biology, not expert use of existing tools. Areas addressed include analytical thinking, problem decomposition, and algorithm design and implementation as applied to biological problems such as alignment of DNA and amino acid sequences, phylogenetic tree construction, structural comparisons of proteins, homology modeling, molecular dynamics and energy minimization, gene finding, microarray data analysis, and some aspects of statistical analysis of biological data. Project assignments will focus on the design and implementation of algorithms addressing these biological areas. Students will also be required to present journal papers, breaking down key concepts of the algorithms reported.

Objectives
At the conclusion of this course, the student will be able to: 1) understand the principals of algorithm design; 2) implement efficient algorithms; and 3) compare and contrast different algorithmic approaches to solving biological problems.

Course Schedule
BMI-203 meets Tuesdays and Thursdays from 3-5pm in Genentech Hall S-261. Click the preceding heading for a detailed schedule of lectures, lecturers, and dates.

Prerequisites
Students are expected to have programming competence in a language such as Python, C, C++, or Fortran. (Examples in class will be primarily in Python, with some in C or in pseudo-code.) This course focuses on algorithm understanding and design, not learning how to program. Recommended courses: BMI-206 - Introduction to Bioinformatics, and PC-204 - Introduction to Object-Oriented Programming.

Requirements for BMI students
BMI-203 is a required course for students in the Biological and Medical Informatics graduate program. There is no provision for individuals in the BMI program to be excluded from this course. This course was instituted in the curriculum in order to ensure competency in understanding and implementing algorithms for efficiently solving computational problems commonly found in biology. A passing grade is required in this course for BMI students to advance to candidacy.

Computing Facilities
Students are expected to have access to a laptop computer or workstation. Any personal PC should provide an adequate computing platform for use with the course. Students desiring to download and install a Python interpreter on their PC or Macintosh can find the lastest version at www.python.org.

Reference Texts
Unfortunately, we have yet to find a single text that covers all of the topics discussed in this course in sufficient detail to serve as a course textbook. The following three texts provide most of the background and algorithmic details for the material covered in the course. If you plan to be involved in algorithm design and implementation beyond just this course, we highly recommend all of these texts, especially the one by Cormen, Leiserson, and Rivest.

T.H. Cormen, C.E. Leiserson, and R.L. Rivest, "Introduction to Algorithms," 2nd edition, MIT press, 2001. (~$50 paperback)

R. Durbin, S. Eddy, A. Krogh, and G. Mitchison, "Biological Sequence Analysis: Probabilistic Models of Proteins and Nucleic Acids," Cambridge University Press, 1999. ($35 paperback)

W.H. Press, S.A. Teukolsky, W.T. Vetterling, and B.P. Flannery, "Numerical Recipes in C - The Art of Scientific Computing," 2nd edition, Cambridge University Press, 1992. (~$30 used)

(If you're interested in buying a used edition of any of these books, be sure to check the bookstores around the UC Berkeley campus.)

 

 

All Rights Reserved 2008. http://www.jainlab.org