Biomedical Informatics 214 (also listed as Computer Science 274)
Representations and Algorithms for Computational Molecular Biology 

Spring 2005

Note this is not the current year website, this is for archival purposes only. Click here for the current year's website.


Lectures: Tuesday and Thursdays 2:45pm-4pm in Thornton 102
Sections: Fridays 10:00am-10:50am in Skilling 193 (Live on E3)
Internet: BMI 214 Course by streamed Internet video online on Stanford Center for Professional Development

Table of Contents

Announcements
Homeworks
Class Schedule
General Course Information


Announcements 
May 3:
The final will be available from noon, Monday, June 6 to midnight, Tuesday, June 7.
March 28:
The schedule and itinerary for Friday sections has been posted here
March 22:
We have a short guide to help you choose a language for the programming projects.
March 21:
Late Policy
April 15:
The extra credit assignment has been removed from the "Homeworks" list and is under consideration.
How to sign up for this course:
(1) If you decide to take BMI 214 this quarter, please sign up for this course on AXESS as soon as possible. This is the only way to join the class email list, which will be our primary method of communication!
(2) In addition, you will need a CWP account to access the on-line materials. Again, please sign up for the course on AXESS as soon as possible and we will set up a CWP account for you. You will need it by April 4th to complete Assignment 0. (Alternatively, you can sign up at CWP. Choose the "Apply for Account" option on the left, and make sure to note that your reason for interest is BMI214 / CS274). If you already have a CWP account that you would prefer to use, email the staff list and we will add that account.
Homeworks 

Students will need to use CWP to complete homeworks.    See "how to sign up for the course" above.
 
Topic
Out
Due
Assignment 0 Class Survey Tues., March 29, 2005 midnight, Mon., April 4, 2005
Assignment 1 Internet Resources Tues., March 29, 2005 midnight, Wed., April 6, 2005
Assignment 2 Sequence Alignment and Classification Wed., April 6, 2005 midnight, Wed., April 13, 2005
Project 1
(Instructions)
Sequence Alignment Tues., March 29, 2005 midnight, Wed., April 20, 2005
Project 2
(Instructions)
K Nearest Neighbors Tues., April 19, 2005 midnight, Wed., May 4, 2005
Assignment 3 HMMs, RNA folding, and 1D motif finding Sun., May 8, 2005 midnight, Sun., May 15, 2005
Assignment 4 Phylogenetics and Gene Finding Fri., May 20, 2005 midnight, Fri., May 27, 2005
Project 3
(Instructions)
3D Structure and Function Wed., May 18, 2005 midnight, Wed., June 1, 2005

Class Schedule

Date
Topic
Lecturer
Lecture Notes
Required Readings and Other Info
Mar. 29, Tues.  Introduction to Bioinformatics and Computational Genomics  Altman  b/w, color
Mar. 31, Thurs.  Dynamic Programming Sequence Alignment  Altman  b/w, color
April 5, Tues.  Intro to Microarrays  Altman  b/w, color
April 7, Thur.  Microarrays, Clustering and Classification  Altman  b/w, color
April 12, Tues.  Basic 3D computation, and structural alignment  Altman  b/w, color
April 14, Thurs.  Multiple Sequence Alignment and Genome Alignment  Altman  b/w, color
April 19, Tues.  1D Motifs and Hidden Markov Models  Altman  b/w, color
April 21, Thur.  HMM & Gibbs Sampling  Altman  b/w, color
  • Mount Readings: Chapter 11
  •  
April 26, Tues.  Genome analysis, Hapmap, SNPs, haplotypes  Altman  b/w, color
April 28, Thurs.  RNA secondary structure Altman  b/w, color
May 3, Tues.  Systems Biology Altman  b/w, color
May 5, Thurs.  Molecular energetics and dynamics  Altman  b/w, color
May 10, Tues.  Protein structure prediction I  Altman  b/w, color
May 12, Thurs.  Protein structure prediction II  Altman  b/w, color
May 17, Tues.  Phylogenetics  Altman  b/w, color
May 19, Thurs.  Proteomics  Altman  b/w, color
May 24, Tues.  Natural Language Processing I  Altman  b/w, color
May 26, Thurs.  Natural Language Processing II  Altman  b/w, color
May 31, Tues.  Final Thoughts  Altman  b/w, color

General Course Information
|| Staff || Discussion Groups || Description || Units || Grading || Exams || Late Policy || Partner Policy || Auditors || Prerequisites || Computer Resources || Textbook || Note on courses ||

Instructor:

Russ B. Altman
Professor of Genetics, Bioengineering, & Medicine (and Computer Science by courtesy)
russ.altman@stanford.edu
Course Coordinator:
Tiffany Jung
Department of Genetics
Lane L301, MC: 5120
650-725-0659
Teaching Assistants:

Jessie Tenenbaum
Office Hours: Tuesday 1:30-2:30pm at MSOB (directions)

Diane Schroeder
Office Hours: Monday 3-4pm at MSOB (directions)

Discussion Groups:(top)
Mailing Lists
Newsgroup
To subscribe to the class newsgroup, su.class.biomedin214, log on to the news server nntp.stanford.edu. This is a great way to communicate with your peers, set up study groups, etc.

Description: (top)

This course will introduce the basic computational issues and methods used in molecular biology, combining core lectures, programming assignments, with midterm and final. The course will introduce and use biological data sources available on the World Wide Web. Topics will include basic algorithms for alignment of biological sequences and structures, as well as more advanced representational and algorithmic issues in structure and sequence computation. These include, for example, dynamic programming algorithms for alignment, structural superposition algorithms, computing with distance information, 3D motif definition and computation, hidden Markov models, phylogenetic trees, statistical feature detection, genetic algorithms, design of data resources, automated analysis of biological literature, database integration, and collaborative environments for supporting biology.
Units:(top) Grading: (top)
The course will be graded by performance on short homeworks (approximately 30%), long projects (approximately 50%), midterm and final (approximately 20%, both take home, open book).
Exams: (top)
Midterm: available April 26-27; details to be announced.

Final: available from noon, Monday, June 6 to midnight, Tuesday, June 7.

Late Policy: (top)
Each student is granted 7 "free" late days that can be used as extensions for any project, assignment or exam (exceptions: Midterm Exam can have a max of 1 late day, Final Exam can have a max of 0 late days). Late days will be measured in 24-hour/day calendar days with no distinction for weekends or holidays, and will be rounded UP to the nearest integer (thus, 10 minutes late = 23 hours late = 1 day late). After you use up all your free days, your grade on late projects/assignments/exams will be reduced 10% for each late day. Extensions beyond the 7 free days may be granted at the discretion of the instructor (not the TAs) and must be requested prior to the due date. No late day is allowed after Final Exam.
Partner Policy: (top)
For assignments:
Students may discuss and work on problems in groups but must write up their own solutions. When writing up the solutions, students must write the names of people with whom they discussed the assignment.

For programming projects:
Students may discuss ideas with others. However, programs are to be completed independently and should be original work. Code may not be shared. Names of students with whom programming ideas were discussed should be included with assignment.

Auditors: (top)
Auditors for the course should take it for one unit as BMI 216. This course requires attendance at lectures, sign-in at each lecture (approval for missing a lecture), but does not require completion of homeworks or tests. It is for one unit, received for attending all lectures.

Auditors who want to sit-in on the course but not be officially signed up for 1 unit of credit should get approval from Dr. Altman, and will also be asked to attend all lectures, sign-in, and not do the homeworks or tests.

Prerequisites: (top)
  1. Programming skills are required at the level of CS106A/CS106B or CS106X. This course has a significant component of programming, and so students should enter it with ability to create moderately complex data structures, and implement algorithms using these data structures. Java, C, C++, Perl, Python, and Lisp have all been used successfully by students in the past.
  2. Biology 40 or equivalent is recommended, since we will quickly move through many biology topics. It may be useful to have a textbook of molecular biology for reference during the course, for those who do not think about biology very much. We will have TA sessions devoted to biology brush-up.
Computer Resources: (top)
You will need to have access to email and the Web to access assignments. All of these resources are available to Stanford students at Sweet Hall and elsewhere. Most course material will be placed on the WWW in *.pdf (Adobe Acrobat) format, which allows the documents to be read on multiple platforms. Readers are available for free for Windows, Macintosh and many Unix platforms at the Adobe website.
Recommended Course Textbook: (top)
Mount, D.W., Bioinformatics : sequence and genome analysis. 2nd edition (July, 2004), Cold Spring Harbor Laboratory Press. ISBN: 0879696877.

Optional readings will be suggested from this textbook throughout the course, and it covers approximately 70% of the material in the course. Available at the Stanford Bookstore. Copies on reserve at the Lane Medical Library and Math/CS library.

Other Recommended books that are more focused:

Kohane, I.S., Kho, A., Butte, A.J., Microarrays for an Integrative Genomics (Computational Molecular Biology). 2002, MIT Press. ISBN: 026211271X.

Durbin, R., Eddy, S.R., Krogh, A., Mitchison, G., Biological Sequence Analysis : Probabilistic Models of Proteins and Nucleic Acids. 1999, Cambridge Univ Pr. ISBN: 0521629713

Bourne, P.E., Weissig, H. (editors), Structural Bioinformatics. 2004, John Wiley & Sons. ISBN: 0471201995.

We also suggest students to read through the classic articles available at http://hrst.mit.edu/hrs/bioinformatics/public/PrimarySite.html. Click on the link to "Classic Papers in the field of Bioinformatics Collection, curated by Russ B. Altman."


Note on courses in computational biology: (top)

BMI 214 (also listed as CS 274) is this course. It has been taught since 1996 and is an introduction to representations and algorithms for analysis of sequence, structure and function. It requires programming skills and aims to give an understanding of the biological problems that arise, and how algorithms are developed to address them. It does not train students to be expert users of tools, but gives them an in-depth knowledge of some tools and a broad introduction to the technical issues in analysis of biological data. It is taught live on Tuesdays/Thursdays and is also on Stanford Online. Section is taught on Friday mornings.

Biochem 218 (also listed as BMI 231) is Doug Brutlag's course introducing computational molecular biology, also a number of years old. It is more geared towards gaining an expert understanding of existing tools and databases, and as such complements BMI 214 very nicely. There is no programming required. Most students take both eventually and learn a lot--even the areas where there is overlap are presented differently enough to round out one's understanding. For logistical reasons this course is also being taught on Tuesday/Thursday, and is on Stanford Online.

CS 262 (Computational Genomics) is Serafim Batzoglou's course. It focuses principally on algorithms for sequence assembly, analysis and comparison. It will have a strong CS algorithms and data structures component, probably with an element of software engineering as well. It is likely to complement both courses, although in the future, about 1/3 of BMI 214 may overlap sufficiently to require coordination--the part about sequence and string analysis. The coordination has not been done as of now, however. It does not contain much on 3D structure computation and functional computing, judging from the syllabus. The course will be taught live. You should ask Prof. Batzoglou about his plans to offer it via Stanford Online.

|| Staff || Discussion Groups || Description || Units || Grading || Exams || Late Policy || Partner Policy || Auditors || Prerequisites || Computer Resources || Textbook || Note on courses ||