Está en la página 1de 31

Introducción

¨ Las simulaciones de los sistemas físicos nos permiten predecir


su comportamiento
¤ Cuando se hayan involucrados procesos estocásticos la predicción
se realiza en términos estadísticos
¤ Si repetimos la medida de un observable suficientes veces emerge
en general una distribución bien definida...
¤ ... que podemos simular individualmente por medio del uso de
números pseudoaleatorios
¤ En sistemas complejos donde tienen lugar múltiples procesos, la
simulación puede ser la única manera a
priori de conocer el comportamiento final
¨ Procesos de carácter estocástico son,
por ejemplo, las desintegraciones
nucleares o las interacciones de las
partículas subatómicas con la materia
¿Métodos físicos?
¨ Los métodos presentan los siguientes problemas:
¤ No reproducibilidad: No puede repetirse la misma secuencia
¤ Almacenamiento: Se requiere una cantidad grande de
espacio de almacenamiento en disco y/o memoria para
almacenar grandes cantidades de números
¤ Lentos: Son procesos, en general, lentos que nos limitan la
velocidad de cómputo

è Los métodos basados en algoritmos computacionales


aparecen para resolver algunos de estos problemas
proporcionando secuencias de números aleatorios...
¤ ... más bien pseudoaleatorios...
Ejemplo: Generador de von Neumann
¨ Algunos problemas:
¤ No se conocen propiedades teóricas del generador (semilla
conveniente, número de dígitos en cada término)
¤ En un estudio para 4 cifras, de 16 semillas, 12 degeneraban
en 6100, 2100, 4100, 6100,.... y 4 degeneraban en 0
¤ En otro estudio, secuencias de 20 bits degeneran en uno de
13 ciclos, con longitud máxima 142
¤ En algunos casos el primer tramo es satisfactoriamente
aleatorio y luego degenera
Secuencias de números aleatorios
¨ En general se busca un generador de números aleatorios
distribuidos en el intervalo [0,1]
¤ Diversosmétodos nos permiten a partir de ahí reproducir
prácticamente cualquier distribución

¨ Cualquier método que nos proporcione número


distribuidos en otro intervalo [a,b] puede transformarse
en uno que dé números en [0,1]
¤ Para cada número 𝑢'( , construimos otro número 𝑢 según:
𝑢'( − 𝑎
𝑢=
𝑏−𝑎
Ejemplo: Generador de von Neumann
1. En cada paso, 𝑖, tenemos un número 𝑥. de 5 cifras
à (p.ej. 𝑥/ =03001)
2. Calculamos 𝑥.0 escrito con 10 cifras
à (𝑥/0=0009006001)
3. Construimos 𝑥.#1 a partir de las 5 cifras centrales
à (𝑥1 = 09006)
4. Volver al punto 2
à (3001; 9006; 81108; 78507; 63349; 13095;
71479; 92474; 51440...)
Problemas del método de inversión
¨ No siempre es posible integrar y/o invertir
analíticamente la función de distribución de probabilidad
acumulada
¨ En estos casos se puede recurrir a la integración y/o
inversión numérica
¤ Para la inversión numérica tabulamos la función de
distribución y le damos la vuelta
¤ Los puntos intermedios se calculan interpolando

¨ Ojo: Esto puede resultar bastante costoso en términos


computacionales
Otros generadores
¨ Existen otros generadores que solucionan algunos de los
problemas que hemos visto
¤ Normalmente incrementando el coste computacional

¨ Otras soluciones pasan por la combinación de distintos


generadores, reordenando aleatoriamente la secuencia
(shuffling), ...
Generador congruencial lineal
𝑦. = (𝑎𝑦.31 + 𝑐) 𝑚𝑜𝑑 𝑀

𝑦.
𝑥. = ⇒ 𝑥. ∈ [0,1)
𝑀
¨ 𝑦/ è Semilla
¨ 𝑎 > 0 è Multiplicador
¨ 𝑐 ≥ 0 è Constante aditiva
¤ Si 𝑐 = 0 se denomina generador multiplicativo
¤ Si 𝑐 ≠ 0 se denomina generador mixto

¨ 𝑀 > 𝑎, 𝑐 è Módulo
Generador congruencial lineal:
Propiedades
¨ Denominamos periodo de un generador al menor
número, k, tal que 𝑦"#$ = 𝑦"
¤ La cantidad de números que podemos genera a partir de los
cuales la secuencia se repite

¨ Los generadores congruenciales generan secuencias de


periodo finito
¤ Este periodo está acotado por el módulo M
¨ Este generador posee repetitividad
¨ Y es portable
Propiedades deseables de un generador
de números aleatorios
¨ Aleatoriedad:
¤ La distribución de los números debe ser intuitivamente aleatorio
¤ Existen tests de aleatoriedad (estadísticos) a los que se somete a los
generadores
¤ La distribución de los números debe ser uniforme
¨ Reproducibilidad:
¤ Dados unos parámetros iniciales idénticos debemos ser capaces de reproducir
la misma secuencia de números
¤ Extremadamente útil para depurar un programa de simulación
¨ Periodo largo:
¤ Denominamos periodo de un generador al menor número, k, tal que 𝑦"#$ = 𝑦"
¤ La cantidad de números que podemos generar a partir de los cuales la
secuencia se repite
¨ Eficiencia en la generación:
¤ La generación de nuevos números debe tener un coste computacional pequeño
para resultar útil
Generador congruencial lineal: Parámetros

¨ Las propiedades (periodo, principalmente) de la


secuencia depende de la elección de a, c y M
¤Y en algunos casos de y0

¨ La elección de M se relaciona con la longitud de la


secuencia y la velocidad computacional
¤ Es más fácil calcular el módulo para múltiplos de 2
¨ La elección de a y c, en función de M, se relaciona con
la aleatoriedad
¨ Ejemplo: Para generadores mixtos si M es primo, el
periodo máximo ocurre solo si a=1
Distribución gaussiana
¨ La distribución gaussiana aparece con mucha frecuencia
en física
¤ Entreotras razones como consecuencia de los procesos de
medida que introducen fenómenos aleatorios múltiples que
acaban teniendo forma gaussiana
¨ Teorema central del límite: Esencialmente nos dice que si
sumamos n variables aleatorias independientes (con
varianza finita no nula), entonces la suma de dichas
variables tiende a seguir una distribución gaussiana a
medida que n tiende a infinito
Método de rechazo - Procedimiento
𝑓 𝑥 ∈ 0, 𝑓]'K ∀ 𝑥 ∈ [𝑎, 𝑏]
1. Generamos entonces números aleatorios 𝑢. ∈ 0,1
2. Distribuimos los valores en el intervalo [𝑎, 𝑏]:
𝑥. = 𝑢. ⋅ 𝑏 − 𝑎 + 𝑎
3. Para cada 𝑥. calculamos un peso:
𝑓 𝑥.
𝑤. =
𝑓]'K
4. Generamos números aleatorios 𝑦. ∈ 0,1
5. Entonces si 𝑤. < 𝑦. aceptamos 𝑥. , en caso contrario lo
rechazamos
Método de rechazo (hit-miss)
¨ La característica esencial de estos métodos es que se
propone un valor para una variable aleatoria que es
aceptado o rechazado de acuerdo con una cierta
probabilidad

¨ Partimos de una 𝑓 𝑥 definida en un intervalo de 𝑥 y


acotada:
𝑓 𝑥 ∈ 0, 𝑓]'K ∀ 𝑥 ∈ [𝑎, 𝑏]
Números aleatorios gaussianos y teorema
central del límite
Más concretamente:
1. Si tenemos 𝑁 números aleatorios 𝑢. independientes que

siguen la misma distribución con media 𝜇 y varianza 𝜎 0


2. La variable
R

𝑧 = 𝑛 h 𝑢$ − 𝜇
$i1
tiende a una distribución normal (con media 0 y
varianza 𝜎 0) para 𝑁 suficientemente grande
¤ Se suele coger 𝑁 = 12 para simplificar el cálculo y porque
es suficientemente bueno para muchos casos
Números aleatorios gaussianos – Método
de inversión
¨ También podríamos recurrir aquí al método de inversión
¨ Tomemos una función de densidad de probabilidad gaussiana
normalizada:
1 K3j k
3
𝑓KI 𝑥 = 𝑒 0lk
𝜎 2𝜋
KI3j
¨ Hacemos un cambio de variable 𝑧̂ = l :

1 nk
30
𝑓n̂ 𝑧 = 𝑒
2𝜋
¨ Calculamos la función de distribución acumulativa:
n 1 3n k 1 𝑧
𝐹n̂ = O 𝑒 0 𝑑𝑧 = 1 + erf
3Q 2𝜋 2 2
¨ Entonces 𝑧 = 2 erf 31(2𝑢 − 1) , 𝑢 ∈ 𝑈 M(0,1)
Método de rechazo – Problemas y
ventajas
¨ Estos métodos permiten en principio producir números
aleatorios según cualquier distribución de probabilidad
acotada
¤ Aunque solo esté definida numéricamente
¨ Necesitaremos en principio generar al menos 2 números
aleatorios uniformemente distribuidos por cada número
aleatorio finalmente generado
¤ Sila función de probabilidad está concentrada en una
región pequeña de 𝑎, 𝑏 el proceso para generar un número
válido puede ser bastante costoso
¤ Algunas variaciones del método permiten reutilizar los
números desechados reduciendo el coste computacional
Números aleatorios gaussianos – Cambio
de variable
M (0,1)
𝑧 = 2 erf 31(2𝑢 − 1) , 𝑢 ∈ 𝑈
¨ Este método es exacto...
¨ ... pero no es muy práctico
¤ La función de error inversa no es sencilla de calcular
¤ Existen librerías numéricas que permiten hacerlo
¤ Y también hay buenas aproximaciones a la función error inversa
¨ El método de Box-Muller-Wiener permite calcularlo de forma
exacta a partir de funciones más clásicas:
Si 𝑢I y 𝑣I son variables
𝑥I1 = −2 ln 𝑢I cos(2𝜋𝑣I) uniformemente distribuidas,
entonces 𝑥I1 y 𝑥I0 son variables
𝑥I0 = −2 ln 𝑢I sin(2𝜋𝑣I) aleatorias independientes con
una distribución normal
Generación de números aleatorios no uniformes
– Método de la transformada inversa
¨ Teorema– Si 𝑥I es una variable aleatoria de función de
distribución de probabilidad acumulada 𝐹KI , continua e
invertible, entonces 𝑢I = 𝐹KI (𝑥I) es una variable aleatoria
uniformemente distribuida en el intervalo (0,1) à variable
𝑈M 0,1

¨ Leído al revés nos dice que


¤ Si 𝑢I es una variable aleatoria 𝑈M 0,1 (uniformemente distribuida
en (0,1)) y 𝑥I es una variable aleatoria de función de distribución
de probabilidad acumulada 𝐹KI
31 𝑢
è Entonces la variable aleatoria 𝐹 I tiene la misma distribución
que 𝑥I
Números aleatorios poissonianos
¨ Empezar tomando 𝑘 = 1, 𝐴 = 1
1. Generar un número aleatorio uniformemente distribuido en
(0,1), 𝑢
2. Reemplazar 𝐴 con u ⋅ 𝐴

3. Ahora:
n Si 𝐴 < 𝑒 3‰ nos quedamos con 𝑛$ = 𝑘 − 1èYa está
n En caso contrario incrementamos 𝑘 en 1(𝑘 = 𝑘 + 1)
4. Volver al punto 1. (manteniendo el valor que tiene 𝐴)
Práctica desintegración nuclear
¨ Simulación del proceso de desintegración nuclear para un
conjunto de núcleos.
¤ Para cada núcleo él tiempo que tarda el núcleo en desintegrarse
es un número aleatorio que sigue una distribución exponencial:
1 3y/{
𝑃 𝑡 = 𝑒
𝜏
donde 𝜏 es la vida media del núcleo radiactivo.
¤ Con un conjunto de N0 núcleos radiactivos en el instante inicial
pretendemos simular la variación del número de núcleos, N, con el
tiempo
¤ Una vez establecida la distribución de N(t) calculamos
intentaremos determinar el número de núcleos iniciales y la vida
media ajustándola a la expresión esperada:
𝑁 𝑡 = 𝑁/𝑒 3y/{
Práctica: Simulación de la desintegración
del 210Bi y del 210Po
¨ El 210Bi por medio de una desintegración-β se convierte en 210Po...
¤ La vida media del 210Bi es de 7.2 días
¨ ... el cual se desintegra emitiendo partículas α en 206Pb que es un núcleo estable
¤ La vida media del 210Po es de 200 días
¨ Asumiendo que al principio tenemos una muestra pura de 210Bi

1. Simular el número de núcleos de este elemento a lo largo de un periodo de tiempo


suficientemente largo
2. Simular del mismo modo el número de núcleos de 210Po
3. Comprobar (ajustando las curvas si es posible) que las distribuciones de 𝑁‚. 𝑡 y
𝑁ƒ„ 𝑡 siguen las leyes analíticas deducidas
4. Preguntas interesantes:
¤ ¿Cuándo alcanza la producción de partículas alfa su máximo?
¤ ¿Cómo varía la precisión de nuestro ajuste (medida) con el número de núcleos iniciales?
¤ ¿Qué influencia tiene la elección de un periodo de muestreado más amplio o más
reducido?
Generación de números aleatorios no
uniformes - Procedimiento
¨ Problema: Deseamos generar N números aleatorios
distribuidos según una distribución de probabilidad 𝑓(𝑥)
¨ Prerequisito: 𝑓 𝑥 está normalizada
1. Calculamos la función de distribución acumulada 𝑓 𝑥
K
𝐹 𝑥 = O 𝑓 𝑡 𝑑𝑡 = 𝑦
3Q
2. Calculamos la inversa de la función de distribución
𝑥 = 𝐹 31 (𝑦)
3. Generamos N números aleatorios 𝑈 M (0,1): 𝑦1 , 𝑦0 , … , 𝑦R
4. Para cada números aleatorio calculamos
𝑥. = 𝐹 31 𝑦.
è 𝒙𝒊 estarán distribuidos según 𝒇 𝒙
Práctica: Simulación de la desintegración
del 210Bi y del 210Po
¨ Sea 𝑁| (𝑡) el número de radionúclidos de un determinado elemento X en un
determinado instante de tiempo
¤ 𝑁| (0) è Número inicial de radionúclidos
¨ Si 𝜔| es la probabilidad de que un determinado núcleo se desintegre en un
segundo, la población de radionúclidos evoluciona según la siguiente ecuación:
𝑑𝑁| 𝑡 = −𝜔| 𝑁| 𝑡 𝑑𝑡
1
¤ cuya solución analítica es: 𝑁| 𝑡 = 𝑁| 0 𝑒 3~• y , 𝜔| = {
donde 𝜏 es la vida media del radionúclido
¨ Si el núcleo X se desintegra a su vez en Y, tendremos el siguiente conjunto de
ecuaciones acopladas
𝑑𝑁| 𝑡
= −𝜔| 𝑁| 𝑡
𝑑𝑡
𝑑𝑁€ 𝑡
= −𝜔€ 𝑁€ 𝑡 + 𝜔| 𝑁| 𝑡
𝑑𝑡
~•
¤ cuya solución analítica para 𝑁€ 0 = 0 es: 𝑁€ 𝑡 = ~ #~ 𝑁| (0) 𝑒 3~• y − 𝑒 3~• y
• •
Números aleatorios poissonianos
¨ La distribución de Poisson es una
distribución de probabilidad discreta
que expresa, a partir de una frecuencia
de ocurrencia media, la probabilidad
de que ocurra un determinado número
de eventos durante cierto periodo de
tiempo
¤ Aparece en fenómenos discretos de Física
cuando la probabilidad de ocurrencia es
constante en el tiempo o en el espacio
¤ Matemáticamente se puede definir como
el límite de una distribución binomial
cuando la población se hace grande (𝑁 →
∞) y la probabilidad es pequeña
Números aleatorios poissonianos
¨ La función de probabilidad tiene la
forma:
𝜈 " 3‰
𝑓 𝑛, 𝜈 = 𝑒 (𝑛 ≥ 0)
𝑛!
¤ n es el número de ocurrencias del
evento o fenómeno è f es la
probabilidad de que el evento suceda
precisamente 𝑛 veces
¤ 𝜈 representa el número de veces que
se espera que ocurra el fenómeno
durante un intervalo dado
Ejemplos: Exponencial y Lorentziana
¨ Exponencial:
𝑓 𝑥 = 𝑎𝑒 3'K
31
1 1
⇒𝑥=𝐹 𝑦 = − ln 𝑦 𝜉=
𝑎 𝑎

¨ Cauchy-Lorentziana-Breit Wigner
1 1
𝑓 𝑥 =
𝜋 1 + 𝑥0
31
1
⇒ 𝑥 = 𝐹 𝑦 = tg 𝜋 𝑢 −
2
Práctica fotomultiplicador
¨ Un fotomultiplicador es un dispositivo diseñado para producir una señal eléctrica a
partir de luz
¨ Consta esencialmente de un fotocátodo, electrodos de enfoque, un multiplicador de
electrones y un colector de electrones, todo ello en el interior de un tubo al vacío
¤ Cuando un fotón llega al fotocátodo se emite un electrón debido al efecto fotoeléctrico. La
cantidad de electrones emitidos es proporcional a la cantidad de fotones incidentes
¤ El electrón liberado en el cátodo es atraído al primer dínodo.
¤ Al impactar el electrón en él que emite varios electrones que son atraídos hacia el segundo
dínodo...
¤ Tras varios dínodos se llegan al ánodo todos los electrones del último dínodo
è Se ha multiplicado la señal
¨ Para cada electrón que llega a un
dínodo el número de electrones emitidos
sigue una distribución poissoniana
dónde 𝜈 es la ganancia del dínodo
1. Simular la respuesta del multiplicador
para 6 dínodos idénticos de 𝜈 = 3
2. Si se dispone de un dínodo de mayor
𝜈 = 6, ¿dónde es mejor colocarlo?
Números aleatorios
¨ Además de su uso en simulaciones, los números aleatorios se
utilizan en otros ámbitos:
¤ Muestreo estadístico
¤ Análisis numérico
¤ Testeo de programas
¤ Juegos de azar
¤ Toma de decisiones...
Un poco de historia
¨ La generación de secuencias de números
aleatorios no siempre se ha realizado por
medio de ordenadores
¨ También se han utilizado:
¤ Procedimientos físicos (monedas, dados,. . . )
¤ (1927) Tipett: tabla de 40000 dígitos
aleatorios (no tenían una distribución uniforme)
¤ (1939) Kendall y Babington: dispositivo
mecánico. Tabla de 100.000 números
aleatorios
¤ (1955) Rand Corporation: ruido electrónico.
Tabla de 106 números aleatorios
Desventajas de un generador congruencial

¨ En una secuencia dada por un generador congruencial


cualquiera, los puntos
𝑥1 , 𝑥0, … , 𝑥F , 𝑗 = 0,1,2 …
caen en hiperplanos de dimensión d-1

También podría gustarte