Generación de números pseudoaleatorios

Slides:



Advertisements
Presentaciones similares
el 1, el 4 y el 9 tres cuadrados perfectos autosuficientes
Advertisements

Introducción a la Estadística
La mediana La mediana es el valor tal que el 50 % de las observaciones son menores y 50 % de ellas son mayores a dicho valor. En otra palabras, la mediana.
INTELIGENCIA ARTIFICIAL
Generación de números pseudoaleatorios
1/19 Colas con un Servidor Lima, 7 septiembre 2005 MODELOS Y SIMULACION Mg. Samuel Oporto Díaz SERVIDOR.
Generación de variables aleatorias
Colas con Servidores en Paralelo
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
Tema 13. Inferencia estadística Principales conceptos. Muestreo
Matemática Financiera 1º ADEUtilización de la Función TIR en el cálculo del tanto efectivo 1 de 37 Cálculo de tantos efectivos Utilización de la función.
TEMA 2 MÚLTIPLOS Y DIVISORES
Programación entera En muchos problemas reales las variables sólo pueden tomar valores enteros Ejemplos: decisiones sobre inversiones, compras, arranques,
SIMULACIÓN DE MONTECARLO
Números Aleatorios Simulación.
ABECEDARIO FIGURAS GEOMÉTRICAS NÚMERO
MOVIMIENTO ARMÓNICO SIMPLE MOVIMIENTO ARMÓNICO SIMPLE
SISTEMA DE NUMEROS NÚMEROS ENTEROS DIVISIBILIDAD NÚMEROS PRIMOS
Álgebra 2010 Clase N° 1 Conjuntos numéricos I
MUESTREO (NAGA´s) BOLETÍN 5020
Medidas de Posición Central:
Ejemplo A continuación aparecen las tasas de retorno de dos fondos de inversión durante los últimos 10 años. 1. ¿Cuál es más riesgoso? 2. ¿En cuál invertiría.
CLASE 3 SOFTWARE DEL MICROPROCESADOR
Unidad de competencia II Estadística descriptiva:
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities alimentazione.
Que son? Son numeros que deben de cumplir los requisitos de espacio equiprobable, es decir, que todo elemento tenga la misma probabilidad de ser elegido.
Los elementos invertibles de Z6 son 1 y 5
Generación de Números Seudo-Aleatorios
Distribuciones de probabilidad bidimensionales o conjuntas
UPC Tema: ESPACIO VECTORIAL Rn
8. Distribuciones continuas
Sistemas de Ecuaciones
UNIDAD 2: FUNCIONES.
Introducción a los Números Fraccionarios
1 SEGUNDO FORO REGIONAL HERMOSILLO, SON Sistema Nacional de Transparencia Fiscalización y Rendición de Cuentas:
Ecuaciones Cuadráticas
¿Qué es un modelo conceptual?
Tema 2: Números aleatorios. Generación de números
La minimización de los costes
Combinadores SK.
Procesos Estocásticos
5.3 Funciones Especiales Ecuación de Bessel de orden v (1) donde v  0, y x = 0 es un punto singular regular de (1). Las soluciones de (1) se.
Introducción a las Señales Aleatorias ISAL
La ley de los grandes números
Expresiones Algebraicas
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
Números aleatorios Los números aleatorios son un elemento básico en la simulación de la mayoría de los sistemas discretos. Cada número aleatorio Ri es.
DETERMINANTES DE UNA MATRIZ
CULENDARIO 2007 Para los Patanes.
La transformada de Laplace
Introducción al lenguaje R Sesión 2: Objetos en R
SUCESIONES Y PROGRESIONES.
Sistemas de Ecuaciones lineales
Manual de Procedimientos Procedimiento de ejecución del programa de
Direccionamiento de la red: IPv4
Estadística Administrativa II
Estadística Administrativa I
Simulacion de sistemas dinamicos
NUMEROS PSEUDO ALEATORIOS
Departament d’Estadística Divisió de Ciències Experimentals i Matemàtiques Generación de números aleatorios Programa de doctorado en Biometría y Estadística.
(Organización y Manejo de Archivos)
Algoritmos paralelos básicos
Generación de variables aleatorias
Un número aleatorio es aquel obtenido al azar, es decir, que todo número tenga la misma probabilidad de ser elegido y que la elección de uno no dependa.
Generación de Números Pseudoaleatorios
NUMEROS ALEATORIOS. La idea es hallar un generador que sea fácil de implementar en la computadora, que sea rápido y que no ocupe mucho espacio memoria,
Simulacion. Simulación Es la construcción de modelos informáticos que describen la parte esencial del comportamiento de un sistema de interés, así como.
Generación de números pseudoaleatorios Mg. Samuel Oporto Díaz SIMULACION DE SISTEMAS DISCRETOS.
Transcripción de la presentación:

Generación de números pseudoaleatorios SIMULACION DE SISTEMAS DISCRETOS Generación de números pseudoaleatorios Mg. Samuel Oporto Díaz Lima, 5 de octubre 2005

Objetivo de la Sesión Exponer los métodos de generación de números aleatorios.

Tabla de Contenido Mapa Conceptual Generación de Series de Números Aleatorios. Generadores no congruenciales Generadores congruenciales

Mapa Conceptual del Curso Modelado y Simulación Colas con un servidor Proyectos Simulación Simulación X Eventos Colas en Serie Inventarios Series de Nro. Aleato Colas en Paralelo Validación de Series Generación de VA

Mapa Conceptual Xi+1=(aXi+c) mod m Tabla de Nros. aleatorios Fenómenos Físicos Procedimientos Matemáticos Números Aleatorios Validación de Series de NA Variables U (0,1) Variables Aleatorias

GENERACIÓN DE SERIES DE NÚMEROS ALEATORIOS

Generación de Números Aleatorios Rol preponderante en el proceso de simulación. Para simular necesitamos de números aleatorios como semillas para generar muestras de V.A. Características de un generador de nros aleatorios: 1) Muestrea valores de Distribución Uniforme.  2) Asegura la NO Correlación Serial.

Algunas Propiedades de Nros Aleatorios 1. Distribución Uniforme. Cualquier número que pertenezca al rango de interés debe tener la misma probabilidad de resultar sorteado.  2. NO Correlación Serial. La aparición de un número en la secuencia, no afecta la probabilidad de que aparesca otro (o el mismo) número.

Ejemplo La sucesión 1,2,3,4,5,1,2,3,4,5,1,2,3,4,5... es uniforme pero está correlacionada.   Existen Tests que verifican las condiciones de uniformidad y correlación serial, temas que veremos mas adelante.

Series de números aleatorios No tiene sentido el concepto de “número aleatorios”. Se usa el concepto de “serie de números aleatorios” “Una sucesión de números es aleatoria si no puede reproducirse eficientemente mediante un programa más corto que la propia seria” “Una sucesión de números es aleatoria si nadie que utilice recursos computacionales razonables en tiempo razonable puede distinguir entre la serie y una sucesión verdaderamente aleatoria de una forma mejor que tirando una moneda fiel para decidir cuál es cuál” Definiciones provenientes de la teoría computacional

Serie de Números Aleatorios Son números que deben de cumplir los requisitos de espacio equiprobable, es decir, que todo elemento tenga la misma probabilidad de ser elegido y que la elección de uno no dependa de la elección del otro.

Propiedades deseables Uniformemente distribuidos. Estadísticamente independientes (no correlación). Periodo largo (sin repetición). Reproducibles y mutables. Sencillo en su implementación. Portabilidad. Método rápido de generación. Poca memoria para la generación.

Mecanismos de generación Tablas de números aleatorios RAND (1955), 100,000 números aleatorios (ruido electrónico) Fenómenos físicos Ruido blanco producido por circuitos electrónicos Recuento de partículas emitidas Lanzamiento de monedas Rueda de la fortuna Procedimientos matemáticos Se usa algoritmos para la generación de números aparentemente aleatorios, se entrega una semilla y se generan los sucesores mediante una función Uniformemente distribuidos. Estadísticamente independientes. Periodo largo (sin repetición). Reproducibles y mutables. Sencillo en su implementación. Portabilidad. Método rápido de generación. Poca memoria para la generación.

Generación de Series de # Aleatorios Es un proceso fundamental en la simulación. ¿Por qué? Para simular el comportamiento de variables aleatorias. El comportamiento de un sistema depende del comportamiento de sus variables (variables aleatorias). ¿Qué sucede si en un modelo en lugar de usar una distribución Normal usamos una Poisson?

GENERADORES NO CONGRUENCIALES

Método del cuadrado medio Fue propuesto inicialmente por Von Newman y Metrópolis en el año 1946. Para generar el siguiente número pseudo-aleatorio, se toman los n dígitos centrales del cuadrado del número anterior de n dígitos. Se requiere una semilla.

Método del cuadrado medio 2 n R(n) R(n)2 M.R(n)2 Random 1 Random 2 147 21,609 160 1 25,600 560 313,600 1,360 136 360 3 18,496 849 4 720,801 2,080 208 80 5 43,264 326 6 106,276 627 7 393,129 9,312 931 312 8 866,761 6,676 667 676 9 444,889 4,488 448 488 10 200,704 70 11 4,900 90 12 8,100

Análisis El problema con este método es que tiende a degenerar rápidamente. Dependiendo del valor inicial el método puede degenerar al cabo de ≈20 términos. Por ejemplo, supóngase que se quiere generar una serie de números pseudo-aleatorios de cuatro dígitos y se tiene como i-ésimo termino generado es 3500, luego se tendrá: Se puede observar que hemos llegado a una condición degenerada. Por la tanto, es necesario verificar siempre la serie de números y protegerse contra este fenómeno n R(n) R(n)2 M.R(n)2 Random 1 Random 2 i 3500 12250000 2500 i+1 6250000

Método del Producto Medio Este método es muy similar al anterior ya que se tomará como número aleatorio siguiente de la serie, a los n dígitos centrales del resultado de una multiplicación previa. Se requiere dos semillas.

Método del Producto Medio 2 n R(n) R(n+1) R(n)2 M.R(n)2 Random 1 Random 2 157 173 27,161 716 1 123,868 2,386 238 386 170,408 7,040 704 40 3 167,552 6,755 675 755 4 475,200 7,520 752 520 5 507,600 760 6 571,520 7,152 715 152 7 543,400 4,340 434 340 8 310,310 1,031 103 31 9 44,702 470 10 48,410 841 11 395,270 9,527 952 527 12 800,632 63 13 59,976 997 14 62,811 281 15 280,157 8,015 801 16 225,081 2,508 250 508 17 200,250 25 18 6,250 19 625

Análisis Una modificación para este método consiste en utilizar un multiplicador constante, en lugar de dos números aleatorios como se muestra a continuación: Rn+1 = K * Rn Estos métodos son similares al cuadrado medio. Sin embargo los dos tienen periodos más extensos y los números parecen estar distribuidos uniformemente. Este método tiende a degenerar a un valor constante. Tanto el método de cuadrados medios como el de producto medio tienen un periodo corto para la cantidad de números aleatorios que vamos a necesitaremos generar en cada uno de nuestros Modelos.

GENERADORES CONGRUENCIALES

Generadores Congruenciales Congruencial Lineal (Mixto). Congruencial Multiplicativo.

Método Congruencial Lineal (MCL) Los generadores congruenciales lineales generan una serie de números pseudo - aleatorios de tal forma que se puede generar el siguiente a partir del ultimo número derivado, es decir, que el número Xn+1 es generado a partir de Xn. La relación de recurrencia para el método congruencial mixto es: Xn+1 = (aXn + c) mod m Donde: X0 = semilla (X0 >0) a = multiplicador (a >0) c = constante aditiva (c >0) m = módulo (m >X0, m >a y m>c)

Método Congruencial Lineal (MCL) Si se quiere obtener números Uniformes (0,1) se normaliza el resultado: Un = Xn / m En el MCL, si se repite un número ya se repite toda la secuencia. Ventajas: utiliza poca memoria y es muy rápido. fácil de volver a generar la misma secuencia, guardando un solo número, (se alcanza con partir desde la misma semilla: X0).

Ejemplo

Análisis Si no se escogen los valores adecuados de los parámetros el período del generador de números pseudo – aleatorios, será menor que m. En la Tabla A se muestra los valores obtenidos para un generador con parámetros: a = 7, c = 9, X0 = 5 y m = 11. Como puede apreciarse en la tabla el período del generador es 10 que es menor que el módulo que es 11. Si bien este caso no es crítico si lo es el que se presenta en la Tabla B donde los parámetros toman los valores de a = X0 = c = 7 y m=10 cuyo período es de 4, que es un caso muy critico que nos puede llevar a resultados no deseables y poco confiables

Tabla A

Tabla B

Selección de m, a, c, X0 Selección de módulo (m). Existen dos opciones que son las siguientes: a.1) Escoger al azar el módulo m. a.2) Tomar m de tal manera que sea el número primo más grande posible y además que sea menor que pd-1, donde p es la base del sistema que se esta usando y d es el número de bits que tiene una palabra de computadora en el sistema que se esta usando. Por ejemplo una computadora XT que trabaja en el sistema binario entonces se tiene que p = 2 y d = 16.

Selección de m, a, c, X0 b) Selección de a. El valor de a debe ser un número entero impar, que no deberá ser divisible por 3 ó 5. Pero además, para asegurarnos que el generador tenga período completo, el valor que se tome para a deberá escogerse según el siguiente criterio: (a-1) mod 4 = 0 si 4 es un factor de m. (a-1) mod b = 0 si b es un factor primo de m. Generalmente se toma a igual a 2k + 1 cuando se trabaja en el sistema binario. En ambos casos el valor que se asigne a k deberá ser mayor o igual que 2.

Selección de m, a, c, X0 c) Selección de c. Este parámetro puede tomar cualquier valor. Pero para asegurarnos de tener buenos resultados se deberá seleccionar según la siguiente regla: c mod 8 = 5 En consecuencia c deberá tomar un valor entero impar y relativamente primo a m.

Selección de m, a, c, X0 d) Selección de X0 Se tiene que para el generador congruencial el valor que tome X0 es irrelevante y tiene poca o ninguna influencia sobre las propiedades estadísticas de las series de números pseudo - aleatorios que se generen.

Método Congruencial Lineal (MCL) Para terminar esta parte se debe señalar que existen otras formas matemáticas de representar este generador, que son las siguientes: Xn = [anX0 + c{(an - 1)/(a - 1)}] mod m Xn+k =[anXk + c{(an - 1)/(a - 1)}] mod m

Método Congruencial Multiplicativo En forma semejante al método anterior el generador congruencial multiplicativo genera el próximo número pseudo - aleatorio a partir del último número calculado, siguiendo la siguiente relación de recurrencia: Xn+1 = aXnmod m Para este generador también se deben escoger adecuadamente los valores de a, X0, y m, con la finalidad de que se pueda asegurar un período máximo para la series pseudo - aleatorias generadas por este método. A continuación se dan las reglas que indican como se deben escoger estos valores.

Donde t es cualquier entero. Selección de m, a, X0 Para trabajar en el sistema binario los valores de los parámetros deberán escogerse siguiendo las siguientes reglas: El valor de X0 debe ser un número entero impar y relativamente primo a m. El valor de a debe ser obtenido a partir de la siguiente expresión: a = 8t ± 3 Donde t es cualquier entero. El valor de m puede ser 2d . Si m = 2d el período del generador es 2d-2 ó m/4. A modo de ejemplo se obtendremos el período de un generador cuyos parámetros son: a = 5, X0 = 5 y m = 32. En la siguiente tabla se muestra los elementos que componen la serie generada cuyo período es de 8

Tabla C a m 5 32 n X(n) a*X(n) [a*X(n)] mod m 25 1 125 29 2 145 17 3 25 1 125 29 2 145 17 3 85 21 4 105 9 45 13 6 65 7 8 10

Tabla D

Streams - Torrentes Un generador de números aleatorios que comience con la misma semilla, siempre producirá la misma torrente o secuencia de números. Diferentes semillas generarán diferentes secuencias. Si las semillas se eligen con valores no cercanos (en el ciclo del generador), entonces las secuencias de números generados (torrentes) parecerán y actuarán como números aleatorios independientes entre sí con lo que colaborarán en la generación de v.a. Independientes entre sí.

Tarea 4 Implementar en el XLS estos 4 generadores y probar los métodos de selección. Probar que ante la misma semilla, se genera el mismo stream. Identificar los casos en que está situación no se presenta, explique

PREGUNTAS