Statistical Mechanics: Algorithms and Computations (Coursera)

Statistical Mechanics: Algorithms and Computations (Coursera)

In this course you will learn a whole lot of modern physics (classical and quantum) from basic computer programs that you will download, generalize, or write from scratch, discuss, and then hand in. Join in if you are curious (but not necessarily knowledgeable) about algorithms, and about the deep insights into science that you can obtain by the algorithmic approach.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Syllabus

WEEK 1
Monte Carlo algorithms (Direct sampling, Markov-chain sampling)
Dear students, welcome to the first week of Statistical Mechanics: Algorithms and Computations!

Here are a few details about the structure of the course: For each week, a lecture and a tutorial videos will be presented, together with a downloadable copy of all the relevant python programs mentioned in the videos. Some in-video questions and practice quizzes will help you to review the material, with no effect on the final grade. A mandatory peer-graded assignment is also present, for weeks from 1 to 9, and it will expand on the lectures' topics, letting you reach a deeper understanding. The nine peer-graded assignments will make up for 50% of the grade, while the other half will come from a final exam, after the last lecture.

In this first week, we will learn about algorithms by playing with a pebble on the Monte Carlo beach and at the Monaco heliport. In the tutorial we will use the 3x3 pebble game to understand the essential concepts of Monte Carlo techniques (detailed balance, irreducibility, and a-periodicity), and meet the celebrated Metropolis algorithm. Finally, the homework session will let you understand some useful aspects of Markov-chain Monte Carlo, related to convergence and error estimations.

WEEK 2
Hard disks: From Classical Mechanics to Statistical Mechanics
In Week 2, you will get in touch with the hard-disk model, which was first simulated by Molecular Dynamics in the 1950's. We will describe the difference between direct sampling and Markov-chain sampling, and also study the connection of Monte Carlo and Molecular Dynamics algorithms, that is, the interface between Newtonian mechanics and statistical mechanics. The tutorial includes classical concepts from statistical physics (partition function, virial expansion, ...), and the homework session will show that the equiprobability principle might be more subtle than expected.

WEEK 3
Entropic interactions and phase transitions
After the hard disks of Week 2, in Week 3 we switch to clothe-pins aligned on a washing line. This is a great model to learn about the entropic interactions, coming only from statistical-mechanics considerations. In the tutorial you will see an example of a typical situation: Having an exact solution often corresponds to finding a perfect algorithm to sample configurations. Finally, in the homework session we will go back to hard disks, and get a simple evidence of the transition between a liquid and a solid, for a two-dimensional system.

WEEK 4
Sampling and integration
In Week 4 we will deepen our understanding of sampling, and its connection with integration, and this will allow us to introduce another pillar of statistical mechanics (after the equiprobability principle): the Maxwell and Boltzmann distributions of velocities and energies. In the homework session, we will push the limits of sampling until we can compute the integral of a sphere... in 200 dimensions!

WEEK 5
Density matrices and Path integrals (Quantum Statistical mechanics 1/3)
Week 5 is the first episode of a three-weeks journey through quantum statistical mechanics. We will start by learning about density matrices and path integrals, fascinating tools to study quantum systems. In many cases, the Trotter approximation will be useful to consider non-trivial systems, and also to follow the time evolution of a system. All these topics, including the matrix-squaring technique, will be reviewed in detail in the homework session, where you will also study the anharmonic potential.
Note that previous knowledge of quantum mechanics is not really necessary to go through the next three weeks. Follow us in our journey through algorithms and physics, and don't forget to ask on the forum if you have any doubt!

WEEK 6
Lévy Quantum Paths (Quantum Statistical mechanics 2/3)
In Week 6, the second quantum week, we will introduce the properties of bosons, indistinguishable particles with peculiar statistics. At the same time, we will also go further by learning a powerful sampling algorithm, the Lévy construction, and in the homework session you will thoroughly compare it with standard sampling techniques.

WEEK 7
Bose-Einstein condensation (Quantum Statistical mechanics 3/3)
At the end of our quantum journey, in Week 7, we discuss the Bose-Einstein condensation phenomenon, theoretically predicted in the 1920's and observed in the 1990's in experiments with ultracold atoms. In the path-integral framework, an elegant description of this phenomenon is in term of permutation cycles, which will also lead to a great sampling algorithm, to be discussed in the homework session.

WEEK 8
Ising model - Enumerations and Monte Carlo algorithms
In Week 8 we come back to classical physics, and in particular to the Ising model, which captures the essential physics of a set of magnetic spins. This is also a fundamental model for the development of sampling algorithms, and we will see different approaches at work: A local algorithm, the very efficient cluster algorithms, the heat-bath algorithm and its connection with coupling. All of these will be revisited in the homework session, where you will get a precise control over the transition between ordered and disordered states.

WEEK 9
Dynamic Monte Carlo, simulated annealing
Continuing with simple models for spins, in Week 9 we start by learning about a dynamic Monte Carlo algorithm which runs faster than the clock. This is easily devised for a single-spin system, and can also be generalized to the full Ising model from Week 8. In the tutorial we move towards the simulated-annealing technique, a physics-inspired optimization method with a very broad applicability. You will also revisit this in the homework session, and apply it to the sphere-packing and traveling-salesman problems.

WEEK 10
The Alpha and the Omega of Monte Carlo, Review, Party
The lecture of Week 10 includes the alpha and the omega of our course. First we repeat the experiment of Buffon's needle, already performed in the 18th century, and then we touch the sophisticated theory of Lévy stable distributions, and their connection with the central limit theorem. In the tutorial there will be time for a review of the entire course material, and then a little party is due, to celebrate the end of the course!
(There is no homework session for Week 10, but don't forget that the final exam is still there!)

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Structures (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Data Structures (Coursera)

A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this course, we consider the common data structures that are used in various computational problems. You will learn how these data structures are implemented in different programming languages and will practice implementing them in our programming assignments.

Jun 22nd 2026
5-12 Weeks
Big Data Analysis with Scala and Spark (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Big Data Analysis with Scala and Spark (Coursera)

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout.

Jun 22nd 2026
4 Weeks
Cloud Computing Concepts, Part 1 (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Computing Concepts, Part 1 (Coursera)

Cloud computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies—all centered around distributed systems. Learn about such fundamental distributed computing "concepts" for cloud computing. Some of these concepts include: clouds, MapReduce, key-value/NoSQL stores, classical distributed algorithms, widely-used distributed algorithms, scalability, trending areas, and much, much more!

Jun 22nd 2026
5-12 Weeks
Approximation Algorithms (Coursera) Coursera
EIT Digital

Approximation Algorithms (Coursera)

Many real-world algorithmic problems cannot be solved efficiently using traditional algorithmic tools, for example because the problems are NP-hard. The goal of this course is to become familiar with important algorithmic concepts and techniques needed to effectively deal with such problems. These techniques apply when we don't require the optimal solution to certain problems, but an approximation that is close to the optimal solution. We will see how to efficiently find such approximations.

Jun 26th 2026
4 Weeks
Business Analytics for Decision Making (Coursera) Coursera
University of Colorado Boulder

Business Analytics for Decision Making (Coursera)

In this course you will learn how to create models for decision making. We will start with cluster analysis, a technique for data reduction that is very useful in market segmentation. You will then learn the basics of Monte Carlo simulation that will help you model the uncertainty that is prevalent in many business decisions.

Jun 22nd 2026
4 Weeks
Digital Signal Processing 1: Basic Concepts and Algorithms (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Digital Signal Processing 1: Basic Concepts and Algorithms (Coursera)

Digital Signal Processing is the branch of engineering that, in the space of just a few decades, has enabled unprecedented levels of interpersonal communication and of on-demand entertainment. By reworking the principles of electronics, telecommunication and computer science into a unifying paradigm, DSP is a the heart of the digital revolution that brought us CDs, DVDs, MP3 players, mobile phones and countless other devices.

Jun 22nd 2026
4 Weeks
Number Theory and Cryptography (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Number Theory and Cryptography (Coursera)

We all learn numbers from the childhood. Some of us like to count, others hate it, but any person uses numbers everyday to buy things, pay for services, estimated time and necessary resources. People have been wondering about numbers’ properties for thousands of years. And for thousands of years it was more or less just a game that was only interesting for pure mathematicians. Famous 20th century mathematician G.H. Hardy once said “The Theory of Numbers has always been regarded as one of the most obviously useless branches of Pure Mathematics”. Just 30 years after his death, an algorithm for encryption of secret messages was developed using achievements of number theory. It was called RSA after the names of its authors, and its implementation is probably the most frequently used computer program in the word nowadays.

Jun 22nd 2026
4 Weeks
Data Structures and Performance (Coursera) Coursera
University of California, San Diego

Data Structures and Performance (Coursera)

How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it? This is an intermediate Java course. We recommend this course to learners who have previous experience in software development or a background in computer science, and in particular, we recommend that you have taken the first course in this specialization (which also requires some previous experience with Java).

Jun 22nd 2026
5-12 Weeks
Big Data, Genes, and Medicine (Coursera) Coursera
The State University of New York

Big Data, Genes, and Medicine (Coursera)

This course distills for you expert knowledge and skills mastered by professionals in Health Big Data Science and Bioinformatics. You will learn exciting facts about the human body biology and chemistry, genetics, and medicine that will be intertwined with the science of Big Data and skills to harness the avalanche of data openly available at your fingertips and which we are just starting to make sense of.

Jun 22nd 2026
5-12 Weeks
Machine Learning: Regression (Coursera) Coursera
University of Washington

Machine Learning: Regression (Coursera)

Case Study - Predicting Housing Prices. In our first case study, predicting house prices, you will create models that predict a continuous value (price) from input features (square footage, number of bedrooms and bathrooms,...). This is just one of the many places where regression can be applied. Other applications range from predicting health outcomes in medicine, stock prices in finance, and power usage in high-performance computing, to analyzing which regulators are important for gene expression.

Jun 22nd 2026
5-12 Weeks