CS 5046: Computation for the Life Sciences (Spring 2011)
T. M. Murali
Mondays and Wednesdays, 4pm--5:15pm, 316 McBryde Hall
Office hours: 9:30am--11:30am Wednesdays and by appointment, 2160B Torgerson
Information on the Course
This course developes the computational, algorithmic, and programming skills needed by graduate students who are interested in doing research in bioinformatics and computational biology, are enrolled in a life science department or the Ph.D. in Genetics, Bioinformatics, and Computational Biology but do not have a computer science background. It builds upon the background developed in CS5045.
The first part of the course introduces students to object-oriented programming using the Perl language and teaches them basic principles of software engineering. The second part of the course deals with the design, analysis and implementation of fundamental algorithms and data structures. The course ends with special topics in Perl of relevance to life science students interested in doing research in bioinformatics and computational biology.
Pre-requisites
You must have graduate standing in a Life Science department or GBCB. CS 5045 is a pre-requisite for this course. Please talk to me if you have not taken CS 5045. You cannot use this course to obtain CS major or minor credit. The course is not open to students with graduate standing in the CS programme.Textbooks
- Required
- Mastering Perl for Bioinformatics, James D. Tisdall, O'Reilly & Associates, 2003.
- Recommended
- Object Oriented Perl, Damian Conway, Manning Publications Co., 2000.
- Useful
- Perl Best Practices, Damian Conway, O'Reilly & Associates, 2005. Read online (requires connection via a computer on the VT network).
- Programming Perl, Larry Wall, Tom Christiansen, and Jon Orwant, third edition, O'Reilly & Associates, 2001.
- Perl Cookbook, Tom Christiansen and Nathan Torkington, second edition, O'Reilly & Associates, 2003.
Grading
Your grade will depend on homeworks, two mid-terms, and a final project. Submit your homework at the start of class on the due date.
Homeworks | 5, due at start of class | 30% |
Midterm examinations | February 28 and April 6, in class | 20% each |
Final project | Due May 6, 5PM | 30% |
Class Schedule
The schedule is very likely to change throughout the semester.Week | Monday | Wednesday |
---|---|---|
1 (Jan 17/19) | University Holiday | Introduction, Perl
background, Quiz MPB, Chapter 2 |
2 (Jan 24/26) | Perl references
MPB, Chapter 2 |
Perl modules and packages,
Condition.pm Directory with datasets |
3 (Jan 31/Feb 2) |
How to be Lazy and Write as
Little Code as Possible or The Wonderful World of CPAN Command-line options and POD |
Gene expression data lecture-05.pl CS5046::Expression.pm, ALL/AML dataset |
4 (Feb 7/9) | Gene expression data Same files as the last class ALL/AML sample annotations |
Class cancelled |
5 (Feb 14/16) |
Object-oriented programming, Gene expression data lecture-08.pl, CS5046::ExpressionOO.pm Homework 1 assigned |
Object-oriented programming continued Same code as the previous class |
6 (Feb 21/23) | More object-oriented programming, Molecular interaction networks lecture-10.pl, CS5046::Network.pm, BioGRID network Homework 1 due |
Even more object-oriented programming with networks Same code as the previous class Homework 2 |
7 (Feb 28/Mar 2) | Continuing object-oriented programming with networks | Continuing object-oriented programming with networks
Homework 2 due |
8 (Mar 14/16) | Midterm examination 1 | Solutions to Homework 1 CS5046::ExpressionOO.pm |
9 (Mar 21/23) | Solutions to Homeworks 1 and 2 | Solutions to Homeworks 1 and 2 |
10 (Mar 28/30) |
Interaction between multiple classes GO/Ontology.pm GO/Term.pm lecture-15.pl OBO file describing the Gene Ontology |
Class cancelled |
11 (Apr 4/6) | Class::Struct Roots, parents, and grandparents Homework 3 |
|
12 (Apr 11/13) | Ancestors, Depth first and breadth-first search | Homework 3 due Homework 4 |
13 (Apr 18/20) | Sorting Sort.pm, lecture-18.pl |
Sorting Homework 4 due |
14 (Apr 27/29) | Algorithm analysis Homework 5 | Class cancelled |
15 (May 2/4) | Algorithm analysis Homework 5 due |
Midterm examination 2 |
Last modified: Mon Apr 25 14:10:08 EDT 2011