* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Introduction to Quantum Monte Carlo
Copenhagen interpretation wikipedia , lookup
Theoretical and experimental justification for the Schrödinger equation wikipedia , lookup
Renormalization wikipedia , lookup
Quantum electrodynamics wikipedia , lookup
Scalar field theory wikipedia , lookup
Coherent states wikipedia , lookup
History of quantum field theory wikipedia , lookup
EPR paradox wikipedia , lookup
Quantum teleportation wikipedia , lookup
Interpretations of quantum mechanics wikipedia , lookup
Relativistic quantum mechanics wikipedia , lookup
Perturbation theory (quantum mechanics) wikipedia , lookup
Density matrix wikipedia , lookup
Hidden variable theory wikipedia , lookup
Molecular Hamiltonian wikipedia , lookup
Quantum key distribution wikipedia , lookup
Ising model wikipedia , lookup
Quantum machine learning wikipedia , lookup
Quantum computing wikipedia , lookup
Quantum state wikipedia , lookup
Quantum group wikipedia , lookup
Path integral formulation wikipedia , lookup
Perturbation theory wikipedia , lookup
Symmetry in quantum mechanics wikipedia , lookup
Introduction to Quantum Monte Carlo Stefan Wessel Institut für Theoretische Physik III Universität Stuttgart Outline ♦ Examples of QMC applications ♦ Representations and local updates ♦ World-line representations ♦ Discrete time ♦ Continuous time ♦ Path-integral representation ♦ Stochastic series expansion (SSE) representation ♦ Comparison ♦ The sign problem What can modern QMC algorithms do? ♦ Local updates (before 1994) ♦ 200 spins ♦ T=0.1 ♦ Cluster algorithms (after 1995) ♦ 2D quantum phase transition: 20’000 spins at T=0.005 ♦ 2D square lattice: 1’000’000 spins at T=0.2 ♦ Extended ensembles (Quantum Wang-Landau, Parallel Tempering) ♦ Allows efficient simulation of 1st order quantum phase transitions ♦ Determination of the free energy of a quantum system ♦ These algorithms allow ♦ Accurate simulation of phase transitions in quantum systems ♦ Quantitative modeling of quantum magnets and bosonic systems Example 1: Quantum phase transitions ♦ Bilayer antiferromagnet v v v v H = J ∑ ∑ Si , p ⋅ S j , p + J ⊥ ∑ Si ,1 ⋅ Si , 2 2 p =1 <i , j > i J << J⊥: spin gap, no long range order J >> J⊥ : long range order Quantum phase transition at J⊥ / J ≈ 2.524(2) Spin gap vanishes Magnetic order vanishes Universal properties Example 1: Critical exponents ♦ 2D quantum phase transition in a quantum Heisenberg antiferromagnet ♦ Simulations of 20 000 spins at low temperatures Troyer, Imada and Ueda, J. Phys. Soc. Jpn. 1997 Magnetization Spin stiffnes Model QMC results no assumption β 0.345 ± 0.025 ν 0.685 ± 0.035 3D classical Heisenberg 0.3639 ± 0.7048 ± 0.0035 0.0030 0.034 ± 0.005 Mean field 1/2 0 1 η 0.015 ± 0.020 z 1.018 ± 0.02 0.1 β = 0.345 ± 0.021 zν = 0.695 ± 0.032 0.01 0.01 δ =(J 0/J 1)-((J 0/J 1) c ♦ Consistent with classical 3D Heisenberg model exponents ♦ Can do quantum simulations with the same accuracy as classical 0.1 Example 2: Trapped atoms on optical lattices ♦ Bose-Hubbard model ♦ Both soft- and hardcore U ♦ Harmonic trapping potential t ♦ Realistic modeling of 1D, 2D, 3D traps ♦ Density profiles, Momentum distribution U / t = 6 .7 U / t = 25.0 Lattice depth S. Wessel, F. Alet, M. Troyer, G.G. Batrouni, PRA (2004). Review: Classical Monte Carlo simulations ♦ We want to calculate a thermal average A = ∑ Ac e − βEc / Z with Z = ∑ e − βEc c c ♦ Exponentially large number of configurations ⇒ draw a representative statistical sample by importance sampling ♦ Pick M configurations ci with probability ♦ Calculate statistical average ♦ Within a statistical error pc i = e − βE ci /Z M 1 A ≈ A = ∑ Ac i M i=1 ∆A = (1 + 2τ A ) ♦ Problem: we cannot calculate pc = e i − βE ci Var A M /Z since we do not know Z Review: Markov chains and Metropolis ♦ Metropolis algorithm builds a Markov chain c1 → c 2 → ... → c i → c i+1 → ... ♦ Transition probabilities Wx,y for transition x → y need to fulfill ♦ Ergodicity: any configuration reachable from any other ∀x, y ∃n : (W n ) ≠ 0 x,y ♦ Detailed balance: W x,y py = W y,x px ♦ Simplest algorithm due to Metropolis (1953): W x,y = min[1, py px ] ♦ Needs only relative probabilities (energy differences) py px = e − β (E y − E x ) Quantum Monte Carlo simulations ♦ Not as “easy” as classical Monte Carlo Z = Tr e − βH = ∑ e − βEc c ♦ Calculating the energy eigenvalue Ec is equivalent to solving the problem ♦ Need to find a mapping of the quantum partition function to a classical problem Z = Tr e− βH ≡ ∑ pc ♦ Different approaches c ♦ Path integrals (time-dependent perturbation theory in imaginary time) ♦ Stochastic Series Expansion (high temperature expansion) ♦ Sign problem if some pc < 0 (thus try to avoid this) ♦ Then need efficient updates for the effective classical problem Hamiltonian of spin-1/2 models ♦ Example: two sites ♦ Anisotropic exchange interactions Jxy, Jz ♦ Magnetic field h H XXZ = J xz (S1x S2x + S1y S2y ) + J z S1z S2z − h(S1z + S2z ) J xz + − (S1 S2 + S1− S2+ ) + J z S1z S2z − h (S1z + S2z ) 2 ♦ Heisenberg model: Jxy = Jz = J = rr H = JS1S2 − h (S1z + S2z ) ♦ Hamiltonian matrix in 2-site basis { ↑↑ , ↑↓ , ↓↑ , ↓↓ } H XXZ Jz 0 +h 4 J 0 − z 4 = J xy 0 2 0 0 0 J xy 2 J − z 4 0 0 0 Jz − h 4 0 The world line approach ♦ Representation based on mapping of a quantum spin-1/2 system onto a classical Ising model ♦ Traditionally employing local updates using Metropolis sampling ♦ Continuous time version can be constructed (Prokof'ev et al. 1996) ♦ Cluster updates using the loop algorithm (Evertz et al. 1993) The Trotter-Suzuki decomposition ♦ Generic mapping of a quantum spin system onto a classical Ising model ♦ basis of most QMC algorithms ♦ not limited to special cases ♦ Split Hamiltonian into two easily diagonalizable pieces H H = H1 + H 2 e −εH 2 = e−ε ( H1 + H 2 ) = e−εH1 e−εH 2 + O(ε ) H(1) H1 H2 H(2) H(3) H(4) = + ♦ Obtain a decomposition of the partition function Z = Tr e − βH = Tr e − β ( H1 + H 2 ) = lim Tr[(e − ∆τ ( H1 + H 2 ) ) M ] M →∞ (∆τ = β / M ) = Tr[(e − ∆τH1 e − ∆τH 2 ) M ] + O(∆τ 2 ) ♦ Insert 2M sets of complete basis states = ∑ i1 ,...,i2 M i1 e − ∆τH1 i2 M i2 M e − ∆τH 2 i2 M −1 ⋅ ⋅ ⋅ i3 e − ∆τH1 i2 i2 e − ∆τH 2 i1 Example: Spin-1/2 Heisenberg model ♦ Quantum problem in d dimensions maps onto a classical problem in d+1 ♦ Expand the states iα in the Sz eigenbasis ♦ Effective Ising-model in d+1 dimensions with 2- and 4-sites interaction terms Z= ∑i 1 e − ∆τH1 i2 M i2 M e − ∆τH 2 i2 M −1 ⋅ ⋅ ⋅ i3 e − ∆τH1 i2 i2 e − ∆τH 2 i1 i1 ,...,i2 M ♦ Each of the matrix elements i j +1 e − ∆τH1, 2 ij corresponds to a row of shaded plaquettes and equals the product over those plaquettes The weights for the spin-1/2 Heisenberg model ♦ The partition function becomes a sum of products of plaquette weights Z = ∑ W (C ) =∑ C ∏ w(C p ) C plaquettes p ♦ Conservation of magnetization on each bond ♦ The only allowed plaquette-configurations are ∆τJ / 4 e∆τJ / 4ch(∆τJ / 2) e sh(−∆τJ / 2) ♦ Ferromagnet (J<0) ♦ All weights are positive ♦ Antiferromagnet on a bipartite lattice ♦ perform a gauge transformation on one sublattice J 2 (S + i − j − i S +S S + j ) J Si± → (−1) Si± → − Si+ S −j + Si− S +j 2 ♦ Frustrated antiferromagnet: ♦ we have a sign problem i ( ) Worldlines ♦ Each valid configuration is represented by continuous worldlines W (C ) = ∏ plaquettes p ♦ Sampling over all (important) worldline configurations ♦ According to the above weight ♦ Try to generate a new configurations from a given one w(C p ) Local updates ♦ Move the world lines locally using Metropolis ♦ probabilities given by the resulting plaquette weights ♦ Consider the limit of small ∆τ ♦ Insert or remove two kinks P→ = min[1, (∆τ J / 2) 2 ] P← = min[1,1 /( ∆τ J / 2) 2 ] P =1 ♦ Shift a kink P = (∆τ J / 2) 2 P→ = P← = 1 P = ∆τ J / 2 Local updates ♦ Problems: ♦ Restricted to canonical ensemble ♦ No change of magnetization, particle number, winding number ♦ Critical slowing down ♦ Solution for classical Monte Carlo: cluster algorithms ♦ Try the same for the quantum case ♦ Loop algorithm ♦ Worm update ♦ Directed loops (talk by H.G. Evertz) (talk by S. Trebst) (talk by F. Alet) The continuous time limit ♦ Systematic error due to finite value of ∆τ (“Trotter error”) ♦ Need to perform an extrapolation to ∆τ → 0 from simulations with different values of ∆τ (or Trotter number M) (∆τ = β / M ) ♦ The limit ∆τ → 0 can be taken in the construction of the algorithm! (Prokof'ev et al. 1996) ♦ Number of changes βJ ∆τJ Nc = M → 2 2 stays finite as ∆τ → 0 ♦ Different computational approach: ♦ Discrete time: store configuration at all time steps ♦ Continuous time: store times at which configuration changes Path integral representation ♦ Based on the perturbation expansion of the path integral ♦ ♦ ♦ ♦ Continuous time representation Discrete local objects (kinks, changes in wordline-configuration) Local updates of kinks using Metropolis Improved update scheme using Worm update (Prokofev et al., 1997) Talk by S. Trebst Path integral representation ♦ Perturbation expansion: H = H0 +V , H0 = Z = Tr(e − βH ) = Tr(e z z z z xy x x y y J S S hS , V J ( S S S − = + ∑ ij i j ∑ i ∑ ij i j i S j ) <i , j > − βH 0 i <i , j > β dτV (τ ) ∫ 0 ) Te − β β τ2 0 0 0 Z = Tr(e − βH 0 (1 − ∫ dτV (τ ) + ∫ dτ 2 ∫ dτ 1V (τ 2 )V (τ 1 ) + ...)) ♦ Each term represented by a world line configuration τ τ2 τ1 Local updates in continuous time ♦ Shift a kink ♦ Insert or remove two kinks (kink-antikink pair creation process) P =1 ♦ Vanishing acceptance rate: P = (∆τ J / 2) 2 → 0 P→ = min[1, (∆τ J / 2) 2 ] → 0 ♦ Solution: Integrate over all possible insertion in a finite time window ΛΛ Λ2 J 2 P→ = ∫ ∫ ( J / 2) dτ 2 dτ 1 → ≠0 8 0 τ1 2 Stochastic series expansion (SSE) approach ♦ Based on a high temperature series expansion of the partition function ♦ Original formulation based on local updates using Metropolis ♦ Cluster updates using the operator loop update (Sandvik 1999) ♦ Improved updates using directed loops (Syljuåsen and Sandvik 2002) Talk by F. Alet Decomposing the Hamiltonian for SSE ♦ Break up the Hamiltonian into offdiagonal and diagonal bond terms H = ∑ H (oi , j ) + H (di , j ) i, j ♦ Example: Heisenberg antiferromagnet H XXZ = = J xy 2 J xy 2 ∑ (S + i i, j S −j + Si− S +j ) + J z ∑ Siz S jz − h∑ S1z convert site terms i, j ∑ (Si+ S −j + Si− S +j ) + J z ∑ Siz S jz − i, j i, j = ∑ H (oi , j ) + ∑ H (di , j ) i, j with H o (i , j ) = 2 ( Si+ S −j + Si− S +j ) H (di , j ) = J z Siz S jz − ( h z Si + S jz z into bond terms ( h Siz + S jz ∑ z i, j ) split into diagonal and offdiagonal bond terms i, j J xy i ) High temperature series expansion ♦ Expansion in inverse temperature ∞ Z = Tr(e − βH ) = ∑ n =0 ∞ =∑ n =0 βn n! Tr( − H n ) βn n α ∏ (− H ∑ ∑ n! α ( ) b1 ,...,bn i =1 ♦ Using the bond Hamiltonians { H bi ∈ U H (di , j ) , H (oi , j ) i, j } bi )α Ensuring positive diagonal bond weights ♦ SSE expansion: ∞ Z = ∑∑ n =0 α ∞ = ∑∑ n =0 α βn ∑ ( ) n! b1 ,...,bn ∑ ( ) α n ∏ (− H i =1 bi )α W ( α , (b1 ,..., bn )) b1 ,...,bn ♦ Negative matrix elements are the bond weights ♦ Need to make all matrix elements non-positive ♦ Diagonal matrix elements: subtract an energy shift C ≥ ♦ Does not change the physics H(i,d j ) = J z Siz S zj − h z Si + S zj )− C ( z Jz +h 4 Positivity of off-diagonal bond weights ♦ Energy shift will not help with off-diagonal matrix elements H o (i , j ) = J xy 2 ( Si+ S −j + Si− S +j ) ♦ Ferromagnet (Jxy < 0) ♦ no problem ♦ Antiferromagnet on a bipartite lattice ♦ perform a gauge transformation on one sublattice J xy 2 (S + i S −j + Si− S +j ) J xy + − Si± → (−1) S i± → − Si S j + Si− S +j 2 i ( ) ♦ Frustrated antiferromagnet: ♦ we have a sign problem, similar to the world-line approach! Fixed length operator strings ♦ SSE sampling requires variable length n operator strings ∞ Z=∑ n= 0 βn n α ∏ (−H ∑ ∑ n! α (b1 ,...,b n ) bi )α i=1 H bi ∈ d o H ,H U { (i, j ) (i, j )} i, j ♦ Extend operator string to fixed length Λ by adding extra unit operators: H id = −1 n: number of non-unit operators Λ Λ (Λ − n)!β n Z = ∑∑ ∑ α ∏ (−H bi ) α Λ! n= 0 α (b1 ,...,b Λ ) i=1 H bi ∈ {H id }∪ U {H(i,d j ),H(i,o j )} i, j ♦ Ensure Λ large enough during thermalization ♦ Such that e.g. nmax < 3 Λ 4 nmax > n ∝ βV The SSE configuration space ♦ Each SSE configuration is given by a initial state and a fixed length operator string (Λ − n)! β n Z = ∑∑ α Λ! α SΛ Λ ∏ (− H i =1 ♦ Example for a four site system: Λ=5 bi )α configuration index 5 4 3 2 1 n=4 α = S Λ = ( H (d1, 2) , H (o3, 4) , 1 , H (o3, 4) , H (d1, 2) ) 1 2 3 4 ♦ Sample over all possible configurations ♦ According to the above weights ♦ Need a way to generate new configurations from a given one operator Hd(1,2) Ho (3,4) 1 Ho (3,4) Hd(1,2) Measurements in SSE ♦ Some observables are very simple: ♦ Energy: 1 E= H =− β n configuration α (0 ) = α (5) ♦ Specific Heat: 2 CV = n 2 − n − n α (4 ) α (3) ♦ Uniform Susceptibility: χ =β α z S ∑ iα α (2 ) α (1) 2 α (0) i 1 ♦ Some look a bit more involved: 2 3 index operator 5 4 3 2 1 Hd(1,2) Ho (3,4) 1 Ho (3,4) Hd(1,2) 4 ♦ Equal time diagonal correlations: 1 n D1 D2 = ∑ d 2 [ p]d1[ p] , where di [ p] = α ( p) Di α ( p) n + 1 p =0 ♦ Imaginary time depended diagonal correlations: n τ D1 (τ ) D2 (0) = ∑ ∆p = 0 ∆p β n ∆p τ 1 − β n − ∆p 1 n C12 (∆p ) , C12 (∆p) = d1[ p + ∆p ]d 2 [ p] ∑ n + 1 p =0 Comparing path integrals and SSE H = H0 +V ♦ Perturbation Expansion: β β τ2 0 0 0 Z = Tr(e − βH 0 (1 − ∫ dτV (τ ) + ∫ dτ 2 ∫ dτ 1V (τ 2 )V (τ 1 ) + ...)) ♦ Decomposition into bond terms: V = ∑ H bo b ∞ Z = ∑∑ n =0 α ( ∑ b o1 ,...,b o n β τn τ2 )0 0 0 o d τ d τ ... d τ W ( α , { b }, {τ }) ∫ n ∫ n−1 ∫ 1 n −τ p ( E p − E p −1 ) − β E0 o n α W (α , {b }, {τ }) = (−1) e ∏ e = 1 p ♦ Compare to SSE ∞ Z = ∑∑ n =0 α ∑ ( ) b1 ,...,bn W ( α , (b1 ,..., bn )) n o H ∏ bp α p =1 Comparing path integrals and SSE ♦ Relation between the weights: ♦ Given: {b o } = (b o1 ,..., b o n ) ∑ ∑ β τ2 W (α , {b}) = ∫ dτ n ... ∫ dτ 1 W (α , {b }, {τ }) m {b}= ( b1 ,...,bm ) {b}|o ={b o } o 0 0 ♦ Operator string longer in SSE, including diagonal terms ♦ In perturbation expansion need to also sample over the continuum times (Sandvik et al. 1997) Comparing path integrals and SSE ♦ World lines in path integrals ♦ World lines in SSE Λ integer index imaginary time β 0 space direction ♦ Advantage ♦ Diagonal terms treated exactly ♦ Disadvantage ♦ Continuous imaginary time 1 space direction ♦ Disadvantage ♦ Perturbation also in diagonal terms ♦ Advantage ♦ Integer index instead of time The negative sign problem ♦ In mapping of quantum to classical system Ap ∑ Tr[A exp(− β H )] = = Tr[exp(− β H )] ∑p i A i i i i ♦ “Sign problem” if some of the pi < 0 ♦ Cannot interpret pi as probabilities ♦ Appears in simulation of fermions and frustrated magnets ♦ “Way out”: Perform simulations using |pi | and measure the sign: ∑ A p ∑ A sgn p p ∑ p = = p ∑ ∑ sgn p p ∑ p i A i i i i i i i i i ♦ Sampling i i i Z | p| = ∑ pi i i i i ≡ A Sign Sign p p The negative sign problem ♦ The average sign becomes very small: Sign p 1 = Zp Z − βV∆f sgn p p = = e ∑i i i Zp ♦ Both in system size and inverse temperature ♦ This is the origin of the sign problem! ♦ The error of the sign: ∆Sign = Sign p Sign 2 p − Sign N Sign p 2 p ≈ 1 p N Sign p e βV∆f = N ♦ Need of the order N = exp(2 β V∆f ) measurements for sufficient accuracy ♦ Similar problem occurs for the observables ♦ Exponential growth! Impossible to treat large systems or low temperatures Is the sign problem exponentially hard? ♦ The sign problem is basis-dependent ♦ Diagonalize the Hamiltonian matrix H i = εi i A = Tr [Aexp(−βH)] Tr [exp(−βH)] = ∑ i Ai i exp(−βεi ) i ∑ exp(−βε ) i i ♦ All weights are positive ♦ But this is an exponentially hard problem since dim(H)=2N ! ♦ Good news: the sign problem is basis-dependent! ♦ But: the sign problem is still not solved ♦ Despite decades of attempts ♦ Reminiscent of the NP-hard problems ♦ No proof that they are exponentially hard ♦ No polynomial solution either Complexity of decision problems ♦ Some problems are harder than others: ♦ Complexity class P ♦ Can be solved in polynomial time on a Turing machine ♦ Eulerian circuit problem ♦ Minimum spanning Tree (decision version) ♦ Complexity class NP ♦ Polynomial complexity using non-deterministic algorithms ♦ Hamiltonian cirlce problem ♦ Traveling salesman problem (decision version) The complexity class P ♦ The Eulerian circuit problem ♦ Seven bridges in Königsberg (now Kaliningrad) crossed the river Pregel ♦ Can we do a roundtrip by crossing each bridge exactly once? ♦ Is there a closed walk on the graph going through each edge exactly once? ♦ ♦ ♦ ♦ Looks like an expensive task by testing all possible paths. Euler: Desired path exits only if the coordination of each edge is even. This is of order O(N2) Concering Königsberg: NO! The complexity class NP ♦ The Hamiltonian cycle problem ♦ Sir Hamilton's Icosian game: ♦ Is there a closed walk on the graph going through each vertex exactly once? ♦ ♦ ♦ ♦ Looks like an expensive task by testing all possible paths. No polynomial algorithm is known Nor a proof that it cannot be constructed Concerning the Icosian game: YES! NP-hardness and NP-completeness ♦ Polynomial reduction ♦ Two decision problems Q and P: ♦ Q ≤ P : there is an polynomial algorithm for Q, provided there is one for P ♦ Typical proof: Use the algorithm for P as a subroutine in an algorithm for P ♦ Many problems have been reduced to other problems ♦ NP-hardness ♦ A problem P is NP-hard, if ∀Q ∈ NP : Q ≤ P ♦ NP-completeness ♦ A problem P is NP-complete, if P is NP-hard and P ∈ NP ♦ Most Problems in NP were shown to be NP-complete The P versus NP problem ♦ Hundreds of important NP-complete problems in computer science ♦ Despite decades of research no polynomial time algorithm has been found ♦ Exponential complexity has not been proven either ♦ The P versus NP problem ♦ Is P=NP or is P≠NP ? ♦ One of the millenium challenges of the Clay Math Foundation http://www.claymath.org ♦ 1 million US$ for proving either P=NP or P≠NP ♦ The situation is similar to the sign problem ♦ Despite decades of research no general polynomial time algorithm has been found ♦ Exponential complexity has not been proven either ? The sign problem is NP-hard ♦ See: M. Troyer and U. Wiese, Report cond-mat/0408370 ♦ Use the following theorem: ♦ A problem is NP-hard, if ∃Q : Q NP − complete ♦ Q is the 3D classical spin glass problem ♦ This is bad news! ♦ Or not - if you solve it, you will get both ♦ The Nobel price (??) ♦ And the 1 Million US$... ∧ Q≤P How can we deal with the sign problem ? ♦ The sign problem is NP-hard (worst-case complexity) ♦ A general solution is almost certainly impossible ♦ What can we do? ♦ Simulate models without a sign problem ♦ Non-frustrated quantum magnets ♦ Bosonic models (atomic BEC condensates) ♦ Hubbard model in 1D ♦ Brute force-approach ♦ Live with the exponential scaling of the sign problem and stay on small lattices ♦ Other exact algorithms ♦ DMRG, exact diagonalization, or series expansion might be better ♦ Special solutions for certain models ♦ Meron-Cluster approach ♦ Special choise of basis