The Metropolis Algorithm

Research Depth 105 in the knowledge graph I know this Set as goal
metropolis markov-chain detailed-balance

Core Idea

The Metropolis algorithm constructs a Markov chain that samples from the canonical ensemble. Proposed moves are accepted with probability min(1, exp(-ΔE/kT)). Detailed balance is satisfied, ensuring the stationary distribution is the Boltzmann distribution. The algorithm is simple, scalable, and has become standard for simulating classical statistical systems.

Explainer

The core problem of statistical mechanics is computing thermal averages: ⟨A⟩ = Σ A(s) e^{−E(s)/kT} / Z over all microstates s. For a system with N spins, the number of microstates is 2^N — roughly 10^{300} for a modest N = 1000. Exact enumeration is hopeless. What you need is a way to *sample* microstates with probability proportional to their Boltzmann weight e^{−E/kT}, so that ⟨A⟩ ≈ (1/M) Σ A(sᵢ) over your sampled states. The Metropolis algorithm, invented in 1953 at Los Alamos, is a remarkably simple procedure that accomplishes exactly this without ever computing the partition function Z.

The algorithm works as follows. Start from any microstate s. Propose a small random change — flip one spin, move one particle. Compute the energy difference ΔE = E(s_new) − E(s_old). If ΔE ≤ 0, the new state has lower energy and is more probable: accept it unconditionally. If ΔE > 0, the new state is less probable by a factor e^{−ΔE/kT}: accept it with probability e^{−ΔE/kT} (draw a uniform random number r ∈ [0,1]; accept if r < e^{−ΔE/kT}). Repeat millions of times. This is the acceptance rule: min(1, e^{−ΔE/kT}).

The algorithm works because it satisfies detailed balance: the rate of transitions from state s to state s′ equals the rate of the reverse transition. Formally, P(s)·A(s→s′) = P(s′)·A(s′→s), where P(s) ∝ e^{−E(s)/kT} is the Boltzmann weight and A is the acceptance probability. You can verify this: A(s→s′) = min(1, e^{−ΔE/kT}) and A(s′→s) = min(1, e^{+ΔE/kT}) = min(1, e^{ΔE/kT}). Plugging in, e^{−E(s)/kT} · min(1, e^{−ΔE/kT}) = e^{−E(s)/kT} · min(1, e^{(E(s)−E(s′))/kT}) = e^{−E(s′)/kT} · min(1, e^{(E(s′)−E(s))/kT}) = e^{−E(s′)/kT} · min(1, e^{−ΔE_reverse/kT}). Detailed balance with an ergodic proposal scheme guarantees that the Markov chain's stationary distribution is exactly the Boltzmann distribution — not an approximation to it.

In practice, the Metropolis algorithm requires an equilibration period before averages are meaningful: the chain must forget its initial state and reach the typical high-probability configurations. After equilibration, successive samples are still correlated — only after a correlation time τ are they approximately independent. You typically collect M samples spaced by several τ to estimate ⟨A⟩ with statistical error ∝ 1/√M. The computational cost scales with system size only as O(N) per sweep (not exponentially), which is why Metropolis Monte Carlo remains the workhorse of classical statistical mechanics simulations even after 70 years.

Practice Questions 5 questions

Prerequisite Chain

Counting to 10Counting to 20Understanding ZeroThe Number ZeroCounting to FiveOne-to-One CorrespondenceCombining Small Groups Within 5Addition Within 10Addition Within 20Two-Digit Addition Without RegroupingTwo-Digit Addition with RegroupingAddition Within 100Repeated Addition as MultiplicationMultiplication Facts Within 100Division as Equal SharingDivision as Grouping (Measurement Division)Division: Grouping (Repeated Subtraction) ModelDivision: Fair Sharing ModelDivision as Equal SharingDivision as GroupingBasic Division FactsDivision Facts Within 100Two-Digit by One-Digit DivisionDivision with RemaindersRemainders and Quotients in DivisionDivision Word ProblemsIntroduction to Long DivisionFactors and MultiplesPrime and Composite NumbersEquivalent FractionsRelating Fractions and DecimalsDecimal Place ValueReading and Writing DecimalsComparing and Ordering DecimalsAdding and Subtracting DecimalsMultiplying DecimalsDividing DecimalsDividing FractionsMixed Number ArithmeticOrder of OperationsInteger Order of OperationsVariable ExpressionsCombining Like TermsOne-Step EquationsTwo-Step EquationsSolving Multi-Step EquationsEquations with Variables on Both SidesAngle Pairs: Complementary, Supplementary, and VerticalParallel Lines and TransversalsCorresponding AnglesAlternate Interior AnglesTriangle Angle Sum TheoremExterior Angle TheoremTriangle Inequality TheoremSimilar Triangles: AA SimilaritySimilar Triangles: SSS and SAS SimilarityProportions in Similar TrianglesRight Triangle Trigonometry IntroductionTrigonometric Ratios ReviewRadian MeasureConverting Between Degrees and RadiansThe Unit CircleGraphing Sine and CosineGraphing Tangent and Reciprocal Trigonometric FunctionsDerivatives of Trigonometric FunctionsAntiderivativesIterated Integrals and Fubini's TheoremDouble Integrals in Cartesian CoordinatesDouble Integrals over Rectangular RegionsDouble Integrals in Polar CoordinatesDouble Integrals: Definition and SetupIterated Integrals and Fubini's TheoremDouble Integrals over Rectangular RegionsDouble Integrals over General RegionsApplications of Double Integrals: Area, Mass, and MomentsCenter of MassConservation of Linear MomentumElastic CollisionsInelastic CollisionsCoefficient of RestitutionCollision Analysis and Real-World ApplicationsTwo-Body Collisions in the Center-of-Mass FrameReduced Mass and Two-Body ProblemsKinematics in Two DimensionsProjectile MotionCircular Motion: KinematicsRotational KinematicsTorqueMoment of InertiaRotational Kinetic EnergyThe Work-Energy TheoremConservation of Mechanical EnergyFirst Law of ThermodynamicsThermodynamic Processes and the PV DiagramIsobaric and Isochoric ProcessesHeat EnginesThermal Efficiency of Heat EnginesRefrigerators and Heat PumpsSecond Law of ThermodynamicsEntropyMicrostates and MacrostatesEnsemble Theory FundamentalsCanonical Ensemble (NVT)Monte Carlo Methods in Statistical MechanicsMonte Carlo Methods and Importance SamplingThe Metropolis Algorithm

Longest path: 106 steps · 443 total prerequisite topics

Prerequisites (2)

Leads To (0)

No topics depend on this one yet.