Living things encode their genetic code in DNA or RNA, and use this information to regulate life processes. Bioinformatics is the study of living organisms viewed as information processors. We study algorithms for sequence alignment, motif finding and gene finding, construction of phylogenetic trees, and structure prediction. While students can find implementations of many of these algorithms, a study of the algorithms leads to a better understanding of the assumptions and limitations of existing algorithms, and gives students the background to evaluate new ones. We explore some important biological problems, discuss mathematical models, and look at computer algorithms to solve these problems. Most of the interesting problems are intractable, so we look at heuristics.
We will look at algorithms to solve these problems, and read and write some programs in Python.
Formerly CSCI E-190. Prerequisites: CSCI E-10A, or the equivalent, and comfort with elementary probability.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.