Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Monte Carlo
Monte Carlo
El modelo de Ising en
El modelo de Ising en
Bibliografa
Numerical Recipes in C, W. H. Press, B. P. Flannery, S. A. Teukolsky, W. T. Vetterling, Cambridge University Press 1990.
Monte Carlo Simulation in Statistical Physics, K. Binder, D.W. Heermann, Springer, 1997.
Mtodo de Monte Carlo: Cualquier tcnica que use nmeros aleatorios. P:Por qu Monte Carlo? R: Por su casino (Karl Pearson, 1892) P:Para qu pueden servir los nmeros aleatorios? R: Veamos unos ejemplos:
Simulacin: La reproduccin de fenmenos naturales necesita nmeros aleatorios. En Fsica los ejemplos clsicos: Fsica Estadstica, Fsica de Partculas
Muestreo: Muchas veces es poco prctico examinar todos los casos posibles. Un muestreo aleatorio puede revelar un comportamiento tpico.
Toma de decisiones: Se rumorea que algunos ejecutivos tiran monedas al aire para tomar decisiones. Algo parecido se dice de cmo calican los exmenes algunos profesores
P:Qu es un nmero aleatorio?, es 2 un nmero aleatorio? R: Pregunta sin sentido. En su lugar hablaremos de una secuencia de nmeros aleatorios independientes con una distribucin especca. Independientes: cada nmero es obtenido por casualidad y no tiene ninguna relacin con otros nmeros de la serie Distribucin especca: cada nmero tiene una probabilidad especca de pertenecer a un rango de valores determinado. La ms comn es la distribucin uniforme, todos los nmeros son igualmente probables. Veremos otras.
Ej:
Utilizar mquinas especcas (resistencia generadora de ruido) Ej.: ERNIE (loto inglesa) Inconvenientes: averas difcilmente detectables, imposibilidad de rehacer los clculos con idnticas secuencias
Utilizar tablas Inconvenientes: tablas cortas para clculos, ocupan memoria, tiempos de acceso
Utilizar operaciones aritmticas. Von Neumann (1946) extraer los dgitos centrales
P:Cmo aleatorio (random) si est completamente determinado por el anterior? R : NO es random pero lo parece. Secuencias pseudoaleatorias que llamaremos simplemente aleatorias. La secuencia de Von Neumann es un mal generador. Ejercicio: Usar el algoritmo de Von Neumann para generar una secuencia de nmeros de 4 dgitos. Analizar el resultado usando diferentes semillas (nmero inicial). Peligro: los nmeros aleatorios aceptados ciegamente pueden llevarnos a cometer errores. Como hizo IBM en los 60 con su generador RANDU.
Generadores uniformes de nmeros aleatorios En la prctica se generan nmeros enteros comprendidos entre 0 y (mdulo. El mtodo ms extendido es el de las congruencias: Mtodo de las congruencias Se basa en 4 nmeros enteros mgicos : mdulo : multiplicador
: incremento : semilla
0 1)
&
S R
Q 2 PH GE6 C 0 ) 3 I F D B
2 5 3 4 &
2 5 6 4 &
2 5 8) 7 4 &
A @0 ) 9
7 8)
&
b
B
" " s"rqQ# pViQ ) h ) 8gQ I F & & PH GD )gQ F C b B A ) & IfH GD 7 8) 3 & 2 6
* Siempre se produce un loop
b c( b c b !
A &
Eleccin del mdulo tiene que ser grande para tener secuencias largas. Si es el tamao de la palabra ( en un Pentium) se suele tomar . Otra alternativa es el mayor primo menor que . Eleccin del multiplicador
iii)
es mltiplo de 4 si
divisor de
es mltiplo de 4
ii)
i)
es primo relativo a
7 v)
6Q 3Q 2
u t
tiene pe-
Si
Cuando es primo relativo a , el entero ms pequeo para el que se llama orden de mdulo . El que tiene el mximo valor posible de orden mdulo se llama un elemento primitivo mdulo . Otros mtodos:Secuencia de Fibonacci
2 I F A PH GD `V0 ) C 0 ) B
ii)
2 IfH D #V0 ) C p 0 ) 0 ) F B A @0 ) 9
2 3 2 fH a3 I F D y B
7 v)
i)
es primo relativo a
&
&
6 3
Ejercicio: Utilizar los nmeros aleatorios para simular el decaimiento radiactivo de una muestra de ncleos. La probabilidad de que un ncleo decaiga en un tiempo es: donde . ncleos radiactivos. Considerad una muestra de Cmo cambia con el tiempo el nmero de ncleos?. . Haced una grca de Algoritmo:
Decidir si decae o no: si random# entonces el nmero de ncleos decae en una unidad
Desde
hasta , con
5 5
DB
&
Datos:
D T e7 B
D B
& &
7 7
100
80
60
40
20
20
40
60
80
100
120
140
160
180
200
220
240
260
280
.1e3
.5e2
.1e2
5. 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280
4000
3000
2000
1000
0 20 40 60 80 100 120 140 x 160 180 200 220 240 260 280 300
.1e4
.1e3
.1e2
1. 20 40 60 80 100 120 140 x 160 180 200 220 240 260 280
Complicando la pregunta anterior: cul es la probabilidad de observar decaimientos en un intervalo de tiempo ?. Suponiendo que el nmero de decays en es mucho menor que . Dividimos en intervalos de duracin ,
t
En el lmite
Distribucin de Poisson
Probabilidad
decays en
Probabilidad 1 decay
Ejercicio Modicar el ejercicio anterior para simular un experimento en el que contamos el nmero de decays observados en un intervalo . Repetir el experimento varias veces y hacer histograma de la distribucin de decays. Datos
#experimentos = 1000
&
s s
s s
&
A` A `
p & b # & b
7 7
s s
TESTS
Mtodo bsico en estadstica que se usa en relacin con muchos otros temas - Tenemos un experimento que puede producir valores en clases distintas, cada una de ellas tiene una probabilidad asociada - Hacemos observaciones independientes y contamos el nmero de observaciones en la clase . - Construimos
v A wq q x 1R q x 1R t x wq q v D
p" $s"
Qq srx
Test Chi-cuadrado
n 1)
y y u
q t
? , grados
| | | | | | | | } } }} } } } } } } } } } } }} } } } } }} } } } } } } }} } } } } }} } } } } } } } } } } } } } } } } } } } } } } } }} } } } }}
| | | | | | | | } } } } }} } | { } } } } ~ } } } } } } } } } } } | { } } ~ } } } }} | { } } } ~ } | { } } } } } }} } ~ } }} } } } | { } } } ~ } } }} } } } | { } } } } } ~ } } } } } }} } } | { } } } } ~
Si la entrada en la la columna es La cantidad sera menor o igual que con probabilidad , para sucientemente grande.
Ejemplo: Tiramos 200 veces una moneda y medimos , en la tabla 118 caras y 82 cruces. para %y tenemos para % . Luego la probabilidad de medir un valor de menor o igual que el obtenido es casi del orden del 99%. Demasiado grande. La moneda es sospechosa, no sirve como generador de secuencias binarias. Si tiramos una moneda 20000 veces y encontramos 10001 caras y 9999 cruces entonces miramos en la tabla y vemos que ser menor que el valor obtenido slo en menos del 1% de los casos, ano podemos considerar el resultado aleatorio en ab soluto!
" ` %
z " %
S r1R q x
" ` % !
)
Criterio
grande:
El criterio que se adopta es: Si es menor del 1% o mayor del 99% se rechaza el generador Si est entre el 1% al 5% o del 95% al 99% se sospecha del generador Si est entre el 5% al 10% o del 90% al 95% puede sospecharse
-Repetir 4 veces -Representar la secuencia en un histograma, como puntos en 2D y en 3D. test para el generador de Ejercicio: Realizar el Fibonacci. Realizar varios tests y hacer bloques de tres con los numeros de la secuencia.
-Obtener
2 Q
Q 6
C A
Q 3 !
Ejercicio: Realizar el
7 v)
Apartado terico Las variables son entradas de un histograma, como vimos antes la distribucin de probabilidad que siguen es la de Poisson. La probabilidad de que tomen los valores es
Sea el espacio -dimensional de los . Para grande los tienen aproximadamente distribucin normal, luego puntos en un volumen diferende tienen probabilidad aproximadacial mente proporcional a La probabilidad de que son independientes es
n A p x x C r"r" C A " D B BT jD x rs" "" q """ D x QsrrQ A B D pB x x x " C r" C A A q v A wxq u
qx1R j D qx1R t q q B k lR j 0 R e g 0
, donde slo
q t
D x B 1 wf A A 1 i ' g
q &
k q v A wq x x D q1R B d' g 0 q x
q t
7 A ` e g k D ) B
Q ) D B ) D B
La probabilidad de que
o D pB D j D p EB B ) j D j Q j D p B A B u
con
D A s
p x B EB 7 x ) j ) g
ma
I F A h fH GD 0 ) ! B
A @0 ) 9
100
80
60
40
20
5e+08
1e+09
1.5e+09
2e+09
2e+09
1.5e+09
1e+09
5e+08
2e+09 1.8e+09 1.6e+09 1.4e+09 1.2e+09 1e+09 8e+08 6e+08 4e+08 2e+08 0 0 2e+08 4e+08 6e+08 8e+08 1e+09 1.2e+09 1.4e+09 1.6e+09 1.8e+09 2e+09
0 2e+08 4e+08 6e+08 8e+08 1e+09 1.2e+09 1.4e+09 1.6e+09 1.8e+09 2e+09
2e+09 1.8e+09 1.6e+09 1.4e+09 1.2e+09 1e+09 8e+08 6e+08 4e+08 2e+08 0 0 2e+08 4e+08 6e+08 8e+08 1e+09 1.2e+09 1.4e+09 1.6e+09 1.8e+09 2e+09
Otros tests
Simulacin de Distribuciones Generales Tcnicas para la generacin de secuencias de nmeros aleatorios distribuidos de manera no uniforme, por ejemplo de acuerdo con la distibucin de Poisson. Tcnica de Rechazo Generar una secuencia que sigue una funcin de dis. tribucin Algoritmo:
2. Decidir si se acepta o no: Si acepta para todo , Repetir hasta que se acepte.
) S ) S 0n ) ) y D ) B
A D 0n ) ) B
C 0n ) )
D )B S
D )B A
a partir de un nmero
se .
f(x)
x min
x max
Problemas: Funciona mal si se parece a una delta. Casi nunca se aceptan las propuestas. Si la funcin tiene un polo no se puede usar. Si el rango de va desde hasta no se puede usar.
D )B
D ) B R D 0 n ) ) B R ) D ) B P f f
Tcnica de Inversin 1. Normalizar la funcin de distribucin, de modo que sea una funcin de distribucin de probabilidad (PDF). 2. Integrar analticamente desde el mnimo hasta un arbitrario. Esto es la probabilidad de que ocurra un valor menor o igual que . 3. Igualar el resultado a un nmero aleatorio uniforme y resolver en . Es decir, resolver la ecuacin
Ejemplos
n )
D B D B
2) Generar entre 0 e
de acuerdo con
y . Generar 10000 valores usando Dibujar los resultados y sobreponer la funcin de distribucin.
D B 4 &
" &
H A ` D 3 C @sgB W
generar
de acuerdo con
) D B
D B 'H ) Q g
7 ) ' g 7 e g
generar
de acuerdo con
Q j
A 7 q p ` 7 A
1) Generar :
) D B
D )B
Tcnica de Importance Sampling (Muestreo Representativo??) por una Reemplazar la funcin de distribucin a la que se pueda aplicar la forma aproximada tcnica de inversin. Generar de acuerdo distribuidos segn mediante la tcnica de inversin y aceptarlos de acuerdo . con una probabilidad proporcional a
f (x) f (x)
D )B jD )B D )B
D )B
D )B )
La tcnica de rechazo es el caso especial en el que es constante ( ) Ejemplo: Generar de acuerdo con en el rango . Intentadlo con la tcnica de inversin. La idea es que sea sencillo. Elegimos con lo que . Aplicamos la tcnica de inversin a :
Decidimos si se acepta: si se acepta. En este caso , en otros casos puede ser ms complicado encontrarlo.
y D )
dB
Generamos
de prueba:
) C
dB
D ) B j t
) D B
D ) B s j D ) B D )B jD )B t
5 )
5 &
D )B
) jD