Courses

Courses

I am currently focused on teaching a graduate-level series in ecological data science covering everything from how to program, how to derive and analyze ecological models, how to design experimental and observational studies, how to confront models with data, to how to use the latest deep learning models. Syllabi and course material from previous courses that underpin this sequence can be found further below.

Proposed schedule:
Fall 2025 Fundamentals of data science for ecology and evolution
Spring 2026 Process modeling with data in ecology and evolution
Fall 2026 Machine learning and AI for ecology and evolution
Spring 2027 Advanced statistical models for ecology and evolution

The first course is intended as prerequisite knowledge and skills for the other three (the prerequisite is not enforced but is a good idea). The sequence will repeat starting Fall 2027.

Ìý

Fundamentals of data science for ecology and evolution

1) How to code in R and Python using proper programming principles. R and Python are now essential tools and most scientists would do well to know both. We'll also learn to safely use AI tools to code productively, use Git and Github for project management and collaboration, and how to structure workflows for reproducible science.
2) How to simulate data from models. This is the foundation for understanding and doing data science and, I strongly believe, science in general. We'll consider data simulation from a variety of perspectives from process-based ecology and evolution models to descriptive models such as linear regression. We'll learn how to conceptualize a model, turn the concept into code, and use it to design field or lab studies to test hypotheses and ultimately discover how the world works.
3) Theory and practice of data visualization.
4) Fundamental algorithms and workflows for frequentist, likelihood, Bayesian and machine learning approaches to learning from data.

This course will be an expanded version of the first 8 weeks of my recently taught "Data Science for Biological Research" below.

Ìý

Process modeling with data in ecology and evolution

1) Algorithms for simulating fundamental ecology and evolution process models in discrete and continuous time. Including agent-based simulation, Gillespie algorithm, stochastic processes, numerical solution of ODEs and PDEs. From physiological to ecosystem ecology, adaptation to speciation, disease ecology and eco-evolutionary dynamics.
2) Techniques for understanding model behavior, including dimensional analysis, stability analysis, sensitivity analysis, and dynamical systems theory.
3) Algorithms for fitting models to data, including likelihood, Bayesian, approximate Bayesian computation (ABC), machine learning.
4) Ecological forecasting and data assimilation.
Ìý

Machine learning and AI for ecology and evolution

See below in "Previous courses" for current class structure, which won't change, except to keep pace with the rapid developments in this field.

Ìý

Advanced statistical models for ecology and evolution

This course will focus on traditional linear models, emphasizing hierarchical models, including GLMMs, time series analysis, spatial modeling, spatio-temporal modeling and Bayesian approaches.

Ìý

Previous courses

Data Science for Biological Research EBIO 5460-002

Introduces the major tools and algorithms of data science applied to biological research. Learning goal: You will be confident to use the skills and concepts of data science to plan for, acquire, manage, analyze, infer or predict from, and report about datasets of any size in your area of biological research.

Fall 2024 class on GitHub: , , .

Ìý

Machine Learning for Ecology EBIO 5460-015

Introduces machine learning algorithms applied to ecological problems. Learning goals: 1) You will have an understanding of the fundamental concepts and algorithms that underpin most of machine learning. 2) You will be confident to use machine learning algorithms in your own research. 3) You will have a broad overview of how ecologists are currently using machine learning algorithms to revolutionize ecological research.

Spring 2025 class on GitHub: , , .

Ìý

Quantitative Ecology and Evolution EBIO 5460-001

Model based inference in ecology and evolution. The relationship between models, hypotheses, experiments, and data. How to make a model. How to test models against data, including likelihood and Bayesian approaches. How to design biological experiments to get the most from a model. Models for genes, individuals, populations, communities, and ecosystems. We will learn some math, some statistics, and some computer programming. Learning goals: 1) To be able to comprehend the exploding literature in biology where the science is based on models and model fitting. 2) To be proficient at writing R programs to analyze models and data. 3) To become confident at using customized quantitative approaches in your own research.

Syllabus 2017

Ìý

General Biology EBIO 1220

Before 2022 I taught the second half (from about March) of General Biology, covering two topics 1) plant biodiversity 2) ecology.