Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods...

22
Multi-Grid-Monte-Carlo Dieter W. Heermann Monte Carlo Methods 2009 Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 1 / 22

Transcript of Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods...

Page 1: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Dieter W. Heermann

Monte Carlo Methods

2009

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 1 / 22

Page 2: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Outline

1 Introduction

2 Multi-Grid-Monte-Carlo

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 2 / 22

Page 3: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Local Monte Carlo methods generate a new value φ′x at x of the

lattice Λ assuming a fixed φy 6=x

H′(φ

′x , φyy 6=x)← H(φx , φyy 6=x)

We have encountered the Metropolis, Glauber and the Heat-BathMonte Carlo Method as examples.

In contrast to the global methods like the cluster algorithms they onlyintroduce changes on a small length scale.

If there is an inherent large length scale in the problem oneencounters the problem of critical slowing down.

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 3 / 22

Page 4: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

A similar problem arises solving algebraic equations:

Aφ = f

Let us try an iterative method

φ(n+1) = Mφ(n) + g

We want Aφ = f to be a fix point of the iteration

φ = Mφ+ g

↔ A−1f = MA−1f + g

↔ g = (I −M)A−1f

Partition A = N − P, then with M = N−1P

g = (1− N−1P)A−1f = N−1(N − P)A−1f = N−1f

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 4 / 22

Page 5: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

With this we find

φ(n+1) = Mφ(n) + N−1f

the properties of the method are determined by the matrix M.

Let us look at the standard decomposition

A = L + D + U

(L =left lower, U = right upper triangular matrix, D = diagonalmatrix).

Choose N + D + L, P = −U, then

φ(n+1) = −(D + L)−1U︸ ︷︷ ︸=:M

φ(n) + (D + L)−1f

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 5 / 22

Page 6: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

The above is know as the Gauss-Seidel method.

component wise:

φ(n+1)i =

1

Qii

fi −i−1∑j=1

aijφ(n+1)j −

n∑j=i+1

aijφ(n)j

The Gauss-Seidel method is a single step method.

This corresponds to a local update Monte Carlo method.

To strengthen the point, let us look at

−∆φ = f x ∈ Rd on the lattice Λ ⊂ Zd

with Dirichlet boundary conditions φx ≡ 0 x 6∈ Ω

(−∆φ)x := 2dφx −∑

x ′:|x−x ′|=1

φx ′ = fx ⇔ Aφ = f |Λ| = n

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 6 / 22

Page 7: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

This is equivalent to

min! = H(φ) :=1

2

∑〈xy〉

(φx − φy )2 −∑x

fxφx φx ∈ R

⇔ 1

2(φ,Aφ)− (f , φ) = min!

The matrix is block diagonal and positive devfinite

φAφ ≥ 0 ∀φ 6= 0

and symmetric

We claim that

i. H(φ) has an absolute minimum, i.e.,

∃φ0 ∈ Rn ∀φ ∈ Rn : H(φ0) ≤ H(φ)

ii. φ0 is the unique solution to Aφ = f

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 7 / 22

Page 8: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Proof:Since A is positive definite Aφ = f is the unique solution. Let φ0 bethe solution and φ = ψ − φ0 ∈ Rn. Then

H(ψ) = H(φ+ φ0)

=1

2(φ+ φ0,A(φ+ φ0))− (f , φ+ φ0)

=1

2(φ,A(φ+ φ0)) +

1

2(φ0,A(φ+ φ0))− (f , φ)− (f , φ0)

=1

2(φ,Aφ) +

1

2(φ,Aφ0) +

1

2(φ,Aφ0) +

1

2(φ0,Aφ0)− (f , φ)− (f , φ0)

= H(φ0) +1

2(φ,Aφ)︸ ︷︷ ︸≥0

since A is symmetric, hence (Aφ, ψ) = (φ,Aψ).

The solution of the Poisson equation is equivalent to the minimizationof a Hamiltonian.

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 8 / 22

Page 9: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Back to the properties of M! Consider the error

e(n) := φ(n) − φ .

We have

e(n+1) = φ(n+1) − φ = Mφ(n) + N−1f − A−1f

= M(e(n) + φ

)+ N−1f − A−1f

= Me(n) + Mφ+ N−1f − A−1f︸ ︷︷ ︸=0

from which follows that e(n) = Mne(0)

Let ρ(M) := limn→∞ ||Mn||1/n be the spectral radius

EW < 1↔ ρ(M) < 1

And further

||Φ(n) − Φ|| ≤ KnPρ(M)n

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 9 / 22

Page 10: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Problem: How near is ρ(M) to 1?

Let us loo at a generalization of the Gauss-Seidel method

N = L +1

ωD, P =

1

ω(1− ω)D − U ω ∈ (0, 2)

note that ω = 1 is the Gauss-Seidel-method.

Φ(n+1) = (L +1

ωD)−1(

1

ω(1− ω)D − U)Φ(n) + (L +

1

ωD)−1f

this method is know as the damped Jacobi-method or SOR(successive overrelaxation).

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 10 / 22

Page 11: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

One can show that

ωopti =2

1 + sin πL+1

, λij =1

2

(cos

L + 1+ cos jπL + 1

)

ρ(Mωopti) =cos2 π

L+1(1 + sin π

L+1

)2

if one restricts the integration to a square lattice Z2

If one expands sin und cos to first order and traces L then

ρ(Mωopti) =cos2 π

L+1(1 + sin π

L+1

)2∼ O

((1− 1

L2

)2(1 + 1

L2

)2)∼ 1− O

(1

L2

)

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 11 / 22

Page 12: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

A critical slowing down arises as happens at the critical point

(−∆φ)x := 2dφx −∑

x ′:|x−x ′|=1

φx ′ = fx

Poisson equation, Ω ⊂ Zd , x 6∈ Ω : φx ≡ 0linear system of equations Aφ = fφ(n+1) = Mφ(n) + Nf

φ(n+1)x = (1− ω)φ

(n)x +

ω

2d

∑x ′:|x−x ′|=1

φx ′ + fx

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 12 / 22

Page 13: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

In general: Aφ = f , A regular, A : U → V , where U,V ∈ VR(n)

Let UM := U, UM−1, ..., U0

and VM := V , VM−1, ..., V0 two sequences of Spaces,where dimUl = dimVl =: Nl , ∀0 ≤ l ≤ M,n = NM > NM−1 > . . . > N0.Let rl−1,l : Vl → Vl−1, 1 ≤ l ≤ M be restriction operatorsLet pl,l−1 : Ul−1 → Ul , 1 ≤ l ≤ M be prolongation operators

Let Al : Ul → Vl , 0 ≤ l ≤ M − 1Smothers Sl : Ul × Vl → Ul , 0 ≤ l ≤ M,Sl(φ

′0, fl) = φ′′l approximate solution

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 13 / 22

Page 14: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

1: procedure mym(l , φ, f )2: φ← Spre

l (φ, f )3: if (l > 0) then

4: d ← −rl−1,l

Residual︷ ︸︸ ︷(Alψ − f )

5: φ← 0 starting value6: for j = 1 until γl do7: mym(l − 1, ψ, d)8: end for9: φ→ φ+ Pl ,l−1ψ

10: φ→ Spostl (φ, f )

11: end if12: end procedure

γl number of iterations, Al−1ψ = d

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 14 / 22

Page 15: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

ExampleTrivial restriction (rl−1,lφl)x ≡ (φl)x , ∀x ∈ Ωl−1 ⊂ Ωl

Averaging

(rl−1,lφl)x =1

4

[(φl)x1+1/2,x2+1/2 + . . .

]or nine point averaging

116

18

116

18

14

18

116

18

116

piecewise constant insertion

(pl,l−1φl−1)x1±1/2,x2±1/2 = (φl)x1,x2 ∀x ∈ Ωl−1

piecewise linear insertion 14

12

14

121 1

2

14

12

14

Al−1 = rl−1,lAlpl,l−1 Galerkin definitioni.a. γl = γ ≥ 1 ∀1 ≤ l ≤ M

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 15 / 22

Page 16: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Non-linear caseU ∈ V R(n), H : U → R Hamilton function.Assume, ∃! x ∈ U : H = minUM := U,UM−1, . . . ,U0

dim Ul =: Nl

N = NM > NM−1 > . . . > N0

Prolongation operators Pl ,l−1 : Ul−1 → Ul

Smothers Sl : Ul ×Hl → Ul 0 ≤ l ≤ MCycle control parameter γl ≥ 1, 1 ≤ l ≤ M

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 16 / 22

Page 17: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

1: procedure ulmym(l , φ,Hl)2: φ→ Spre(φ,Hl)3: if l > 0 then4: Compute Hl−1(.) := Hl(φ+ pl ,l−1.)5: ψ → 06: for j=1 until γl do ulmym(l − 1, ψ,Hl−1)7: φ→ φ+ pl ,l−1ψ8: end if9: φ→ Spost

l (φ,Hl)10: end procedure

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 17 / 22

Page 18: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

“Compute Hl−1”:

Hl(φ) =α

2

∑|x−x ′|=1

(φx − φx ′)2 +∑x

Vx(φx)

Vx(φx) = λφ4x + uxφ

3x + Axφ

2x + hxφx

Assume: pl ,l−1 piecewise constant, need to compute

Hl−1(ψ) := Hl(φ+ pl ,l−1ψ)

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 18 / 22

Page 19: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

→ Hl−1(ψ) =α′

2

∑|y−y ′|=1

(ψy − ψy ′)2 +∑y

V ′y (ψy ) + const

V ′y (ψy ) = λ′ψ4y + k ′yψ

3y + A′yψ

2y + h′yψy

α′ := 2d−1α

λ′ := 2dλ

k ′y :=∑x∈By

(4λφx + Kx) |By | = 2d

A′y :=∑x∈By

(6λφ2x + 3kxφx + Ax)

h′y :=∑x∈By

(4λφ3x + 3kxφ

2x + 2Axφx + hx)

Construct Hl such that

Hl ∈ Hl und φ ∈ Ul → Hl−1 ∈ Hl−1

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 19 / 22

Page 20: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Let Uα, U =⋃α Uα, α, β ∈ O, α 6= β Uα ∩ Uβ = ∅

dµ(φ) =

∫dν(φ|α)dρ(α)

ρ(.) probability measure of Idν(.|α) probability measure of Uα, conditioned probability distribution ofdµ(φ) at fixed φ in UαLet P(φ→ φ

′) be a transition probability∫

dν(φ|α)P(φ→ φ′) = dν(φ

′ |α)

⇒∫

dµ(φ)P(φ→ φ′) = dµ(φ

′)

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 20 / 22

Page 21: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

Multi-Grid Monte Carlo is a special form of the partial resampling.

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 21 / 22

Page 22: Multi-Grid-Monte-Carlo - uni- · PDF fileMulti-Grid-Monte-Carlo Local Monte Carlo methods generate a new value ˚0 x at x of the lattice assuming a xed ˚ y6=x H0(˚0 x;f˚ yg y6=)

Multi-Grid-Monte-Carlo

E. Marinari and G. Parisi, Euro Phys. Lett 19, 451-458 (1992)

C.J. Geyer, in Computing Science and Statistics: Proc. 23rd SympInterface (ed. E.M. Keramidas) pp. 156-163, Fairfax Station: InterfaceFoundation

C.J. Geyer and E.A. Thomposon, J. Am. Statis. Ass 90, 909-920(1995)

Dieter W. Heermann (Monte Carlo Methods) Multi-Grid-Monte-Carlo 2009 22 / 22