2.1 Números aleatorios: definición, propiedades, generadores y tablas
Un numero aleaorio es aquel que es generado a partir de la distribución
Su generación se basa en el uso de mecanismos físicos. Entre las distintas propuestas se incluyen el recuento de partículas emitidas por una explosión, el lanzamiento de monedas, aparatos mecánicos basadas en ruedas de la fortuna, etc.
Tienen el inconveniente de ser generados lentamente. Además, los números aleatorios no pueden almacenarse de forma automática. Por tanto, se deben buscar procedimientos algorítmicos computacionales que generen números aleatorios de forma muy rápida y los puedan almacenar sin utilizar mucha capacidad de memoria.
Una de las características más poderosas de la simulación es la habilidad de imitar el comportamiento aleatorio que es característico de la mayoría de los sistemas reales. Para poder imitar este comportamiento aleatorio la simulación necesita utilizar un generador de números aleatorios, el cual es responsable de producir un ciclo grandísimo e independiente de números aleatorios.
Un generador de números aleatorios (algoritmo computacional) no son aleatorios en el verdadero sentido de la palabra, ya que el generador puede reproducir la misma secuencia de números una y otra vez, lo cual no indica un comportamiento aleatorio. Por esta razón, a los números U(0,1) producidos por un generador (algoritmo) se les llama pseudoaleatorios.
Tienen el inconveniente de ser generados lentamente. Además, los números aleatorios no pueden almacenarse de forma automática. Por tanto, se deben buscar procedimientos algorítmicos computacionales que generen números aleatorios de forma muy rápida y los puedan almacenar sin utilizar mucha capacidad de memoria.
2.2 Números pseudoaleatorios.
Unas de las primeras tareas que es necesario llevar a cabo consiste en analizar si los números que se utilizaran para “correr” o ejecutar la simulación son realmente aleatorios o no; por desgracia, precisar lo anterior con absoluta certidumbre resulta muy complicado, ya que para ello se tendría que generar un número infinito de valores que permitan comprobar la existencia de correlaciones entre ellos. Esta actividad sería muy costosa y tardada, volviendo impráctico el uso de la simulación aun con las computadoras más avanzadas.
Los números pseudoaleatorios uniformes posean las siguientes características:
- Uniformemente distribuidos.
- Estadísticamente independientes.
- Reproducibles.
- Periodo largo.
- Generados mediante un método rápido.
- Generados mediante un método que no requiera mucha capacidad de almacenamiento de la computadora.
Lo que resulta difícil es diseñar un algoritmo que genere un conjunto de números pseudoaleatorios con periodo de vida suficientemente grande (N) y además pase sin problema las pruebas de uniformidad e independencia, lo cual implica evitar problemas
Método de Lehmer
El método consiste en los siguientes pasos:
- Se toma como semilla un número entero, X0, de n cifras.
- Se elige otro entero, c, de k cifras. Suele tomarse k<n.
- Se calcula X0 *c, número de a lo sumo, n + k cifras.
- Se separan las k cifras de la izquierda de X0*c y al número formado por las n cifras restantes se le resta el que se forma de esas k cifras de la izquierda, dando lugar a X1.
- Se repite este proceso tantas veces como sea necesario.
- Se devuelven los valores
2.3 Pruebas estadísticas o de aleatoriedad para los números pseudoaleatorios.
Los números pseudoaleatorios producidos mediante un programa de computadora no son aleatorios debido a que tales números están completamente determinados por los datos iníciales y tienen una precisión limitada.
Las siguientes pruebas son de las más usadas para la comprobación de la aleatoriedad.
Prueba de las frecuencias
Esta prueba consiste en dividir el intervalo (0,1) en n subintervalos para luego comparar para cada subintervalo la frecuencia esperada con la frecuencia observada. Si estas frecuencias son bastante parecidas entonces la muestra proviene de una distribución uniforme.
Las hipótesis son:
Ho: Los números pseudoaleatorios provienen de una distribución U(0,1).
Ha: Los números pseudoaleatorios no provienen de una distribución U(0,1).
Ha: Los números pseudoaleatorios no provienen de una distribución U(0,1).
Prueba de las corridas
La prueba de las corridas sirve para probar la aleatoriedad de los números generados. Esta prueba se basa en el número de corridas o secuencias ascendentes y descendentes. Una corrida es una secuencia ascendente o descendente de números pseudoaleatorios adyacentes.
Las hipótesis son:
Ho: Los números son pseudoaleatorios U(0,1).
Ha: Los números no son pseudoaleatorios U(0,1).
Ha: Los números no son pseudoaleatorios U(0,1).
En este método se coloca el signo “+” o “–” en cada par de números adyacentes. Se puede demostrar que:
Si: R = número total de corridas (arriba y abajo)
N = tamaño de la muestra
N = tamaño de la muestra
2.4 Método de Montecarlo
El método de Montecarlo es un método no determinista o estadístico numérico, usado para aproximar expresiones matemáticas complejas y costosas de evaluar con exactitud. El método se llamó así en referencia al Casino de Montecarlo (Mónaco) por ser “la capital del juego de azar”, al ser la ruleta un generador simple de números aleatorios. El nombre y el desarrollo sistemático de los métodos de Montecarlo datan aproximadamente de 1944 y se mejoraron enormemente con el desarrollo de la computadora.
El uso de los métodos de Montecarlo como herramienta de investigación, proviene del trabajo realizado en el desarrollo de la bomba atómica durante la Segunda Guerra Mundial en el Laboratorio Nacional de Los Álamos en EE. UU. Este trabajo conllevaba la simulación de problemas probabilísticos de hidrodinámica concernientes a la difusión de neutrones en el material de fisión. Esta difusión posee un comportamiento eminentemente aleatorio. En la actualidad es parte fundamental de los algoritmos de raytracing para la generación de imágenes 3D.
La invención del método de Monte Carlo se asigna a Stanislaw Ulam y a John von Neumann. Ulam ha explicado cómo se le ocurrió la idea mientras jugaba un solitario durante una enfermedad en 1946. Advirtió que resulta mucho más simple tener una idea del resultado general del solitario haciendo pruebas múltiples con las cartas y contando las proporciones de los resultados que computar todas las posibilidades de combinación formalmente. Se le ocurrió que esta misma observación debía aplicarse a su trabajo de Los Álamos sobre difusión de neutrones, para la cual resulta prácticamente imposible solucionar las ecuaciones íntegro-diferenciales que gobiernan la dispersión, la absorción y la fisión. “La idea consistía en probar con experimentos mentales las miles de posibilidades, y en cada etapa, determinar por casualidad, por un número aleatorio distribuido según las probabilidades, qué sucedería y totalizar todas las posibilidades y tener una idea de la conducta del proceso físico”.
Podían utilizarse máquinas de computación, que comenzaban a estar disponibles, para efectuar las pruebas numéricas y en efecto reemplazar el aparato experimental del físico. Durante una de las visitas de von Neumann a Los Álamos en 1946, Ulam le mencionó el método. Después de cierto escepticismo inicial, von Neumann se entusiasmó con la idea y pronto comenzó a desarrollar sus posibilidades en un procedimiento sistemático. Ulam expresó que Monte Carlo “comenzó a tener forma concreta y empezó a desarrollarse con todas sus fallas de teoría rudimentaria después de que se lo propuse a Johnny”.
A principios de 1947 Von Neumann envió una carta a Richtmyer a Los Álamos en la que expuso de modo influyente tal vez el primer informe por escrito del método de Monte Carlo. Su carta fue encuadernada junto con la respuesta de Richtmyer como un informe de Los Álamos y distribuida entre los miembros del laboratorio. Von Neumann sugería aplicar el método para rastrear la generación isótropa de neutrones desde una composición variable de material activo a lo largo del radio de una esfera. Sostenía que el problema era adecuado para el ENIAC y estimaba que llevaría 5 horas calcular la acción de 100 neutrones a través de un curso de 100 colisiones cada uno.
Ulam estaba particularmente interesado en el método Monte Carlo para evaluar integrales múltiples. Una de las primeras aplicaciones de este método a un problema determinista fue llevada a cabo en 1948 por Enrico Fermi, Ulam y von Neumann cuando consideraron los valores singulares de la ecuación de Schrödinger.
No hay comentarios.:
Publicar un comentario