Course Coordinator: 
Simone Pigolotti
Stochastic Processes with Applications

This course presents a broad introduction to stochastic processes. The main focus is on their application to a variety of modeling situations and on numerical simulations, rather than on the mathematical formalism. After a brief resume of the main concepts in probability theory, we introduce stochastic processes and the concept of stochastic trajectory. We then broadly classify stochastic processes (discrete/continuous time and space, Markov property, forward and backward dynamics). The rest of the course is devoted to the most common stochastic processes: Markov chains, Master Equations, Langevin/Fokker-Planck equations. For each process, we present applications in physics, biology, and neuroscience, and discuss algorithms to
simulate them on a computer. The course include “hands-on” sessions in which the students will write their own Python code (based on a template) to simulate stochastic processes, aided by the instructor. These numerical simulations are finalized as homework and constitute the main evaluation of the course.

The course is aimed at students interested in modeling systems characterized by stochastic dynamics in different branches of science. Goals of the course are: to understand the most common stochastic processes (Markov chains, Master equations, Langevin equations); to learn important applications of stochastic processes in physics, biology and neuroscience; to acquire knowledge of simple analytical techniques to understand stochastic processes, and to be able to simulate discrete and continuous stochastic processes on a computer.
Course Content: 

1) Basic concepts of probability theory. Discrete and continuous distributions, main properties. Moments and generating functions. Random number generators.

2) Definition of a stochastic process and classification of stochastic processes. Markov chains. Concept of ergodicity. Branching processes and Wright-Fisher model in population genetics.

3) Master equations, main properties and techniques of solution. Gillespie algorithm. Stochastic chemical kinetics.

4) Fokker-Planck equations and Langevin equations. Main methods of solution. Simulation of Langevin equations. Colloidal particles in physics.

5) First passage-time problems. Concept of absorbing state and main methods of solution. First passage times in integrate-and-fire neurons.

6) Element of stochastic thermodynamics. Work, heat, and entropy production of a stochastic trajectory. Fluctuation relations, Crooks and Jarzynski relations.

Course Type: 
Reports (numerical simulations): 60% hands-on sessions, 20% homework assignments, 20% participation in class
Text Book: 
“Random walks in Biology” by H. C. Berg (1993) Princeton University Press
“Stochastic Methods: A Handbook for the Natural and Social Sciences” by C. Gardiner (2009) Springer
Reference Book: 
“An Introduction to Probability Theory and its Applications, Vol 1” by W. Feller (1968) Wiley
“The Fokker-Planck Equation”, by H. Risken (1984) Springer
Prior Knowledge: 

• Basic calculus: students should be able to calculate integrals, know what a Fourier transform is, and solve simple differential equations.

• Basic probability theory: students should be familiar with basic probability theory, e.g. discrete and continuous distributions, random variables, conditional probabilities, mean and variance, correlations. These concepts are briefly revised at the beginning of the course.

• Scientific programming: the students are expected to be already able to write, for example, a program to integrate a differential equation numerically via the Euler scheme and plot the results. Python is the standard language for the course. The students are required to install the Jupiter notebook system and bring their own laptop for the hands-on sessions.