Algoritmos 0-1
Algoritmos 0-1
Algoritmos 0-1
Programado en
Excel con funciones
de texto
Generación Aleatoria 0 y 1
que puede degenerarse (se
queda en cero)
Algoritmos Generadores 0 y 1
Adicional al rango entre 0 y 1, un generador debe cumplir con dos propiedades
fundamentales: uniformidad e independencia
Se evidencia su
independencia
Modificaciones al Algoritmo LCG
Al suprimir el parámetro del incremento (C=0), se estableció el MLCG (Multiplicative,
Learmonth & Lewis [1973]), lo cual ahorra el cálculo de la suma y produce un período
completo (m-1), si se escogen los parámetros a=16,807 y m = 2ˆ31 - 1 (equivalente a
2,147,483,647), el cual representa el mayor número primo menor a 2ˆ32 (pensado para
los computadores de 32 bits). Su período sería mayor a dos mil millones de números
(2*10ˆ9).
Otro MLCG de período similar y mejores estadísticas es con el parámetro a =
630,360,016. Muchos autores aseguran sin embargo, que las propiedades de los MLCG
se conservan solo en los primeros 10,000 números aleatorios.
En estos algoritmos se recomienda escoger números primos para las semillas iniciales
Los MRG (Multiple recursive generator) son extensiones de los MLCG donde una
semilla ya no depende de solo la semilla anterior, sino de dos o más semillas.
Modificaciones al Algoritmo LCG
Los MRG pueden prolongar los
períodos y mejorar las estadísticas
de los MLCG al apelar a mayor
recursividad (más semillas)
En computadores de 48 y 64 bits,
se puede lograr un período de 2.6 x
10^18, sí se usa m=2,147,483,647
con multiplicadores como 26,403,
33,236, 36,673, 40,851 o 43,693.
Excel utilizó en sus inicios métodos compuestos, pero desde 2010, se movió, al igual
que la mayoría de lenguajes de programación, a uno denomindado Mersenne Twister
ubicado en la categoría LFSR o GFSR (linear feedback shift register o generalized),
siendo algoritmos criptográficos (también llamados Tausworthe) que trabajan con
secuencias binarias y recurrencias sobre estas.
Streams
En aleatoriedad, “Stream” es el término utilizado para determinar sub-secuencias de
generación, reservadas para uso exclusivo de una sola variable aleatoria.
Si no existieran los streams, se corre el riesgo de perder la uniformidad y la independencia
de la secuencia cuando los números aleatorios son asignados a cada variable.
En este ejemplo, a la
variable aleatoria 1 se le fue
actualizando su generación
con valores solo entre 0.3 y
0.6, mientras que a la
variable aleatoria 2 solo con
valores entre 0 y 0.3, y entre
0.6 y 1. En resumen, la
representación de cada
variable carecerá de
uniformidad e independencia
Uso de Streams en Flexsim
Uso de Streams en Flexsim