CSCI 451/558: Introduction to Bioinformatics

Course schedule

Schedule subject to change. Lecture videos can be found in this Panopto folder.

WeekTuesday topicThursday topicProject deliverable due (see Canvas for exact date)
1 (8/26-8/30)IntroFirst textbook assignment code-along 
2 (9/2-9/6)Hidden patterns in DNAMotif finding 
3 (9/9-9/13)Motif findingGenome assembly 
4 (9/16-9/20)Genome assemblyGenome assembly + group shopping 
5 (9/23-9/27)More genome assemblySequence alignmentGroups form
6 (9/30-10/4)Sequence alignmentSequence alignmentProposal
7 (10/7-10/11)HMMs and profile HMMsHMMs and profile HMMs 
8 (10/14-10/18)HMMs and profile HMMsNo class–we will have in-person check insIn-person check-in
9 (10/21-10/25)Evolutionary treesHPC and Hellgate 
10 (10/28-11/1)HPC and HellgateProject work day–no classProgress report; 558 students project extension proposals
11 (11/4-11/8)Evolutionary treesRead mapping 
12 (11/11-11/15)Read mappingNo class 
13 (11/18-11/22)Read mappingNo class–we will have in-person check insIn-person check-in
14 (11/26-11/29)Project presentationsNo class-Happy Thanksgiving 
15 (12/2-12/6)Project presentationsReview 
Finals week (12/9-12/13)No final! Writeup

Catalog description

This is a co-convened course with different course numbers for the undergraduate and graduate levels.

3 Credits. Designed for attendance by both computer scientists and biologists. The course will explore the interdisciplinary nature at the juncture of the two fields. Students will be introduced to bioinformatics (emphasis: computational genomics), with exposure to fundamental problems, algorithms, and tools in the field. This includes a basic introduction to genomics, along with in-depth coverage of algorithms and methods relevant to modern computational genomics, including: biological sequence alignment, sequence database homology search, and phylogeny inference. The programming expectations are limited for a 400/500-level computer science course, but at least one semester of a programming-intensive course is required.

Basic course info

This course meets in Education 241 on Tuesdays and Thursdays from 11am-12:20pm.

Class time will be a mix of lecture, discussion, and active problem solving, both as individuals and as groups. Before class, students will read the textbook and complete some pre-class exercises. To close out each course topic, we will have a short quiz and an open-ended activity done in groups during class to apply what we’ve learned.

Students will also complete a larger group project on a bioinformatics topic of their choice.

During class, I will ask that you close laptops and except when they are needed to follow along with a coding demonstration or for group work.

Course resources

Textbook

The textbook for this course is Bioinformatics Algorithms: An Active Learning Approach by Phillip Compeau and Pavel Pevzner. You will be required to purchase the online version of the book for $29.95 to complete pre-class programming exercises; purchasing the physical book is optional. Follow this link to purchase the book and gain access to our course’s assignments. Please use your UM email to register an account.

Class videos

Lecture periods will be recorded and available to watch after class. However, if there are technical difficulties recording a lecture, it will not be re-recorded, and in-class participation will be a key to your learning, so please come to class when you can. Videos can be found in here.

Book’s lecture videos

The authors of our textbook created free lecture videos to accompany the text. You are not required to watch these, but if you find them helpful, please do!

Discord

Please join the UM Computer Science Discord to keep up with announcements and to ask questions. Instructions can be found on Canvas.

Course help hours (aka office hours)

You will have some pre-class programming activities due the afternoon before most class periods. You can come get help from the instructor or work with your peers on Monday and Wednesdays from 1-2:30 in the CS Conference Room (Social Sciences 402).

Grading

You will be graded on the following:

  • Pre-class assignments: 20%
  • In-class worksheets: 10%
  • Quizzes: 15%
  • Final project: 30%
  • Hellgate portion of final project: 15%

This accounts for 90% of your grade. For students enrolled in 451, the remaining 10% will come from attending lectures. For 558 students, it will come from an individual additional component to the final group project.

Your grade will be determined by your total score as follows: 93+: A; 90+: A-; 87+: B+; 83+: B; 80+: B-; 77+: C+; 73+: C; 70+: C-; 67+: D+; 63: D; 60: D-.

Bonus

There are two ways to earn bonus points in this class.

Catch errors in course materials

If you find an error in any of the course materials (typo, incorrect statement, etc.), make a post in the #errors-in-course-material Discord channel. If it is really an error, you get a quarter of a point. Only the first person to post about an error gets the points. You can earn a max of 1 total point toward your 100 for the course (for four errors).

Course survey and evaluation

If 100% of the class completes the mid-semester course survey, the whole class gets 1 bonus point. Same goes for the course evaluation at the end of the semester.

Collaboration policy

Collaboration will be an important part of this course, including the use of outside resources such as web search and the use of generative AI tools. We will discuss the use of AI tools during class.We will discuss the use of AI tools during class.