Muestreo de Gibbs para el modelo Ising

11

Pregunta de tarea:

Considere el modelo Ising 1-d.

Deje . es -1 o +1x=(x1,...xd)xi

π(x)ei=139xixi+1

Diseñe un algoritmo de muestreo de gibbs para generar muestras aproximadamente a partir de la distribución objetivo .π(x)

Mi intento:

Elija aleatoriamente valores (-1 o 1) para llenar el vector . Entonces tal vez . Entonces esto es .x=(x1,...x40)x=(1,1,1,1,1,1,1,1,...,1)x0

Así que ahora tenemos que seguir adelante y hacer la primera iteración. Tenemos que dibujar las 40 x diferentes para separado. Entonces...x1

Dibuje dex11π(x1|x20,...,x400)

Dibuje dex21π(x2|x11,x30,...,x400)

Dibuje dex31π(x3|x11,x21,x40,...,x400)

Etc ..

Entonces, la parte que me está tropezando es cómo realmente sacamos de la distribución condicional. ¿Cómo entra en juego? Quizás un ejemplo de un empate aclararía las cosas.π(x)ei=139xixi+1

Collin
fuente

Respuestas:

11

Mira este caso primero. Hemos eliminado los términos que no dependen de . x1

π(x1x2,,xd)=π(x1,x2,,xd)π(x2,,xd)ex1x2
P(X1=1X2=x2,,Xn=xn)=ex2C
P(X1=1X2=x2,,Xn=xn)=ex2C
ex2C+ex2C=1C=2coshx2
x_1 <- sample(c(-1, 1), 1, prob = c(exp(-x_2), exp(x_2)) / (2*cosh(x_2)))

Generalízalo a (toma nota de las diferencias; mira el comentario de Ilmari a continuación).x2,,x40

¿Puedes usar los resultados analíticos de Ising para verificar tu simulación?

zen
fuente
Por lo tanto, solo depende del valor inmediatamente anterior en el vector, es decir, el único término que depende de es , el único término que depende de es , etc. ¿Qué pasa con el caso? de ? ¿Cómo lo dibujamos ya que la distribución condicional solo parece aplicarse para a 39? x1x2x23x24x40i=1
Collin el
1
@ user2079802: No, para hasta obtienes dos términos en el exponente: . Pero aún es bastante fácil evaluar eso para . x2x39π(xix1,,xi1;xi+1,,xd) exp(xi1xi+xixi+1)xi=±1
Ilmari Karonen