Important Note: As of version 2, pomp syntax changed substantially so that the codes in these notes would no longer run. Accordingly, some of these materials have been updated to use a newer version of pomp. In some instances, however, the materials have been superseded entirely. In these cases, links are provided to more up-to-date versions that cover the same ground.


Prof. Aaron A. King,
Ph.D. Departments of Ecology & Evolutionary Biology and Mathematics
University of Michigan


Ecological and epidemiological systems are particularly interesting from the physical point of view. Their complexity and high-dimensionality makes it natural to approach them as stochastic, nonlinear dynamical systems and within this context, many questions of both intrinsic interest and practical concern can be formulated. To answer these questions, it is necessary to rigorously confront hypothetical models with data. In this regard, time-series data are of particular value inasmuch as they have the potential to express the characteristic signatures of causal mechanisms. This course will take students into the heart of these issues via an introduction to ecological and epidemiological stochastic dynamical systems models using a series of examples with real data. Students will learn how to formulate questions as models and answer the questions using state-of-the-art inference algorithms.

Course objectives

  1. to introduce partially observed Markov process (POMP) models as tools for scientific investigation
  2. to give students the ability to formulate POMP models of their own
  3. to teach efficient approaches for performing scientific inference using POMP models
  4. to familiarize students with the pomp package
  5. to give students opportunities to work with such inference methods
  6. to provide documented examples for student re-use


Format and expectations

The course will be taught using a mixture of lectures and computational laboratory exercises. Students are expected to complete assigned readings before class meetings, keep up with assigned homework, participate fully in discussions, and work on course activities during class meetings.

Final examination

The examination is scheduled for session 10 on 20 May. It will have both a written and a computational component, both of which will be similar to the exercises.

Computing in R

We will make extensive use of the open-source R statistical computing environment and the pomp package for inference based on partially-observed Markov process models.

Students with laptops should install R and RStudio on their computers before the first day of the course. Instructions for doing so can be found here.

The course does not assume familiarity with R, but students should work through the R tutorial before the course commences. In particular, students should work through the the exercises in the tutorial.


The following papers serve as background for some of the central issues:

A good reference for modeling in infectious disease epidemiology is:

The pomp package is described and illustrated in

Preparing for the course

Students should do the following before the first day of the course:

  1. Follow the instructions to prepare your laptop by installing R, RStudio, and the needed R packages.
  2. If you are not proficient in R, work through the R tutorial. If you are proficient in R, look through the tutorial nevertheless.

Tentative Schedule

Date Topic
May 9 Introduction to partially observed Markov processes
May 10 Introduction to inference: parameter estimation I
May 11 Introduction to inference: parameter estimation II
May 12 Introduction to inference: parameter estimation III
May 13 Simulation of stochastic dynamic models.
May 16 Likelihood for POMP models: theory and practice
May 17 Iterated filtering: principles and practice
May 18 Case study: measles in large and small towns
May 19 Case study: the persistence of polio.
May 20 Examination

R Tutorial

Tutorial on data munging with plyr, reshape2, and magrittr

Tutorial on ggplot2

Source code for these notes

pomp homepage

The materials in this course are licensed under the Creative Commons Attribution-NonCommercial license. Please share and remix noncommercially, mentioning its origin.