Computational Methods for Biological Modeling and Simulation
Course Number: 02-712
This is a required class for Masters in Computational Biology students and available as an elective for graduate students and advanced undergraduates.
It is intended for graduates and advanced undergraduates with either biological or computational backgrounds who are interested in developing computer models and simulations of biological systems.
The general topics covered will be:
[4 weeks] Models for optimization problems
[6 weeks] Simulation and sampling
[4 weeks] Model inference
The course will emphasize:
Algorithm design methods drawn from various disciplines of computer science and applied mathematics that are useful in biological applications
Coursework will include:
Problem sets with significant programming components
[1 week] Independent or group final projects
Prerequisite(s): Cross-listed with 03-712 Pre-reqs: [15-110 or 15-112] and [02-613 or 02-201]
Textbook(s):This course has a textbook that was developed based on the class lecture notes:
Russell Schwartz. Biological Modeling and Simulation. MIT Press: Cambridge, MA, 2008.
Copies are available through the CMU Book Store and various online retailers. The References section of each chapter will recommend additional background readings. You may find these helpful if you want to know more about any of the topics we cover, but they are optional and you should not need them to complete any of the assignments. A few additional readings will be provided on Blackboard for topics not covered in the text.
- Learn how to formally define and reason about mathematical models of biological systems.
- Be familiar with a collection of commonly encountered discrete optimization problems, both tractable and intractable, and be able to reason about adapting them to related problems and solving them in practice.
- Be familiar with continuous optimization problems and know general techniques for solving them in constrained and unconstrained variants.
- Understand Markov models, how to pose them, how to analyze their mixing times, and how to use both discrete and continuous time variants.
- Know how to sample from a probability density.
- Know how to pose and numerically integrate ordinary, partial, and stochastic differential equations.
- Know how to pose parameter inference problems as optimization or sampling problems and be familiar with a set of general techniques for solving them.
- Understand basic principles behind validating models and quantifying uncertainty in those models.