Sie sind auf Seite 1von 16

Materia: Simulación

Catedrático: M.C. Zinath Javier Gerónimo

UNIDAD 2. Generación de números


aleatorios.

Integrantes:
 Jordan Magaña Morales
 José Reynaldo Magaña García

1
Índice
Introducción........................................................................................................... 3

2. GENERACIÓN DE NUMEROS ALEATORIOS .................................................. 4

2.1 Números aleatorios: definición, propiedades, generadores y tablas. ............. 4

2.1.1 Definición: ................................................................................................ 4

2.1.2 Propiedades y generadores de número aleatorios: ................................. 4

2.2 Propiedades de los números pseudoaleatorios........................................ 6

2.3 Pruebas estadísticas de aleatoriedad para los números


pseudoaleatorios: de medias, de varianza, de independencia y de bondad
de ajuste. ............................................................................................................ 7

2.3.1 El Método de Centros al Cuadrado (cuadrados medios) ......................... 7

2.3.2 algoritmos de productos medios .............................................................. 8

2.3.3 Método Congruencial Mixto Lineal ........................................................... 8

2.3.4 Pruebas de varianza ................................................................................ 9

2.3.5 pruebas de independencia ..................................................................... 11

2.3.6 pruebas de bondad de ajuste ................................................................ 11

2.3.6.1 Prueba j-cuadrada .............................................................................. 11

2.4 Obtención de números psedoaleatorios utilizando paquetes


computacionales. ............................................................................................. 12

2.4.1 Prueba de los promedios ....................................................................... 12

2.4.2 Prueba de las frecuencias ..................................................................... 12

2.4.3 Prueba de Series ................................................................................... 13

2.4.4 Prueba de las corridas ........................................................................... 13

2.5 MÉTODO DE MONTE CLARO .................................................................... 14

Conclusión .................................................................................................... 15

Bibliografía ...................................................................................................... 16

2
Introducción

La aplicación de los números aleatorios se remonta a los tiempos de la primera


revolución industrial, cuando los procesos manuales tuvieron que reemplazarse por
procesos mecanizados como consecuencia de la explosión demográfica que se
estaba presentando en los países desarrollados con la disminución de las tasas de
mortalidad y el aumento de las tasas de natalidad y que, para satisfacer las
necesidades de la población cada vez más creciente hubo necesidad de
incrementar la producción de toda clase de bienes y servicios.

Los números aleatorios son un ingrediente básico para simular casi cualquier
sistema discreto. La gran mayoría de programas contienen una subrutina de
generación que facilita su utilización, si se trata de un lenguaje de programación, es
necesario generar un numero aleatorio y de estos partir para la generación de
variables aleatorios.

Los sistemas reales frecuentemente tienen valores de tiempo y cantidades que


varían dentro de un rango y de acuerdo a una función específica de densidad,
definida por una distribución de probabilidad. Por ejemplo, si el tiempo que se tarda
una máquina en procesar una pieza se distribuye entre 2.2 minutos y 4.5 minutos,
esto se definirá como una distribución de probabilidad en el modelo de simulación.
Durante la simulación, cada vez que una pieza entre a esta máquina y sea
procesada, el simulador generará un número al azar entre 2.2 y 4.5 minutos para
simular el tiempo de procesamiento de esa pieza. Cada vez que generamos un valor
a partir de una distribución, a ese valor se le llama variable aleatoria. Para generar
variables aleatorias, es necesario utilizar números aleatorios.

A continuación se explican las técnicas básicas para la generación de números


aleatorios y posteriormente técnicas para la generación de variables aleatorias a
partir de estos números.

3
2. GENERACIÓN DE NUMEROS ALEATORIOS
2.1 Números aleatorios: definición, propiedades, generadores y
tablas.

2.1.1 Definición:

Un número aleatorio es aquél que es generado a partir de la distribución Uniforme


U (0,1).

Los números aleatorios son aquellos que pueden ser generados a partir de fuentes
de aleatoriedad, las cuales, generalmente, son de naturaleza física (dados, ruletas,
mecanismos electrónicos o mecánicos), y son gobernados por las leyes del azar;
éstos exhiben verdadera aleatoriedad en la realización de experimentos. Por su
parte, los números pseudo-aleatorios son aquellas que tienen un comportamiento
similar a la naturaleza aleatoria, pero están ceñidos a un patrón, generalmente de
naturaleza matemática, que hace que su comportamiento sea determinado.

2.1.2 Propiedades y generadores de número aleatorios:

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.

4
Hay que aclarar que los números U (0,1) producidos por 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 pseudo-
aleatorios.

Tablas:

5
2.2 Propiedades de los números pseudoaleatorios.

Es deseable que los números pseudoaleatorios uniformes posean las siguientes


características:

1) Uniformemente distribuidos.
2) Estadísticamente independientes.
3) Reproducibles.
4) Periodo largo.
5) Generados mediante un método rápido.
6) Generados mediante un método que no requiera mucha capacidad de
almacenamiento de la computadora.

Generar un conjunto de números pseudoaleatorios es una tarea relativamente


sencilla, para ello, el lector sólo tiene que diseñar su propio algoritmo de generación.
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 como éstos:

 Que los números del conjunto no estén uniformemente distribuidos, es decir,


que haya demasiados números en un subintervalo y otro muy pocos o
ninguno.
 Que los números pseudoaleatorios sean discretos en lugar de continuos.
 Que la media del conjunto sea muy alta o muy baja, es decir, que esté por
arriba o por debajo de ½.
 Que la varianza del conjunto sea muy alta o muy baja, es decir, que se
localice por arriba o por debajo de 1/12.

En ocasiones se presentan también anomalías como números pseudoaleatorios


seguidos por arriba o por debajo de la media; secuencia de números por arriba de
la media, seguida por una secuencia por debajo de la media, y viceversa, o varios
números seguidos en forma ascendente o descendente.

6
Existen varios métodos para generar números pseudoaleatorios. A continuación se
muestra uno de estos métodos.

2.3 Pruebas estadísticas de aleatoriedad para los números


pseudoaleatorios: de medias, de varianza, de independencia y de
bondad de ajuste.

2.3.1 El Método de Centros al Cuadrado (cuadrados medios)

Este método es debido a von Neumann y tiene fundamentalmente sólo interés


histórico. El método de centros al cuadrado se apega a la siguiente metodología:

1. Inicie con un número entero positivo de 4 (2n) dígitos y llámele Z0 (X0),


llamado semilla.
2. Eleve Z0 (X0) al cuadrado para obtener un número de 8 (4n) dígitos. Si es
necesario, agregue ceros a la izquierda para hacerlo exactamente de 8
dígitos.
3. Tome los 4 (2n) dígitos centrales como el próximo número de 4 (2n) dígitos
y llámele Z1(X1).
4. Coloque el punto decimal a la izquierda de Z1(X1) para obtener el primer
número pseudoaleatorio U (0,1).
5. Continué generando de esta forma números pseudoaleatorios U (0,1)

Desventaja del método de centros al cuadrado: Tiene una fuerte tendencia a


degenerar rápidamente hacia cero, donde permanecerá por siempre.

La gran mayoría de los generadores de números pseudoaleatorios que se usan en


la actualidad son generadores congruenciales lineales, introducidos por Lehmer en
1951.

Los generadores congruenciales lineales generan una secuencia de números


pseudoaleatorios en la cual el próximo número pseudoaleatorio es determinado a
partir del último número generado. A continuación se presentan los dos más

7
importantes: el método congruencial mixto lineal y el método congruencial
multiplicativo lineal.

2.3.2 algoritmos de productos medios

La mecánica de generación de números pseudoaleatorios de este algoritmo


no congruencial es similar a la del algoritmo de cuadrados medios. La diferencia
entre ambos radica en que el algoritmo de productos medios requiere dos semillas,
ambas con D dígi-tos; además, en lugar de elevarlas al cuadrado, las semillas se
multiplican y del producto se seleccionan los D dígitos del centro, los cuales
formarán el primer número pseudoaleatorio r = 0.D dígitos. Después se elimina una
semilla, y la otra se multiplica por el primer número de D dígitos, para luego
seleccionar del producto los D dígitos que conformarán un segundo número r.
Entonces se elimina la segunda semilla y se multiplican el primer número de D
dígitos por el segundo número de D dígitos; del producto se obtiene el tercer
número. Siempre se irá eliminando el número más antiguo, y el procedimiento se
repetirá hasta generar los n números pseudoaleatorios. A continuación se
presentan con más detalle los pasos del método para generar números con
el algoritmo de producto medios.

1) Seleccionar una semilla (X0) con D dígitos (D > 3)


2) Seleccionar una semilla (X,) con D dígitos (D > 3)
3) Sea Y0=X^ X, sea X2= los D dígitos del centro, y sea r¡= 0.D dígitos del
centro.
4) Sea Y = X*Xm; sea XV2= los D dígitos del centro, y sea r/+1 = 0.D dígitos
del centro para toda / = 1, 2, 3,...n.
5) Repetir el paso 4 hasta obtener los n números, deseados.

2.3.3 Método Congruencial Mixto Lineal

Los valores posibles de Xn+1 son 0, 1, 2,3,…, m-1, m representa el número


posible de valores que pueden ser generados.

8
Donde:

Xn= la semilla (X0>0)

a= el multiplicador (a>0)

c= constante aditiva (c>0)

m= Módulo (m>Xn; m>a; m>c)

Periodo del generador = 4

Reglas para la selección de parámetros en el método congruencial mixto lineal

En los ejemplos anteriores se colocaron de manera arbitraria cada uno de los


parámetros requeridos: X0, a, c, m. Sin embargo, para que el algoritmo sea capaz
de lograr el máximo periodo de vida n, es preciso que dichos parámetros cumplan
ciertas condiciones. Banks, Carson, Nelson y Nicol sugieren lo siguiente:

m= 2g

a= 1 + 4k

k debe ser entero

C relativamente primo a m

G debe ser entero

Bajo estas condiciones se obtiene un periodo de vida máximo: N= m= 2g.

2.3.4 Pruebas de varianza

Otra de las propiedades que debe satisfacer el conjunto (ri) es que sus números
tengan una varianza de 1 /12. La prueba que busca determinar lo anterior es la
prueba de varianza, que establece las siguientes hipótesis:

Ho:° Í = 1 /1 2

H,:o\2*1 /1 2

9
La prueba de varianza consiste en determinar la varianza de los n números que
contiene el conjunto r, mediante la ecuación siguiente:

Después se calculan los límites de aceptación inferior y superior con las


ecuaciones siguientes:

Si el valor de V(r) se encuentra entre los límites de aceptación, decimos que no se


puede rechazar que el conjunto r¡ tiene una varianza de 1/12, con un nivel de
aceptación de 1 - a; de lo contrario, se rechaza que el conjunto tiene una varianza
de 1/12. Para obtener valores de los factores Chi-cuadrada vea los anexos del libro.

Realizar la prueba de varianza a los 40 números r. Considerando que n =40 y a=


5%, procedemos a calcular la varianza de los números, y los límites de aceptación
correspondientes:

Dado que el valor de la varianza: V(r)=0.08695062 está entre los límites de


aceptación, podemos decir que no se puede rechazar que el conjunto de 40
números r, tiene una varianza de 1 /12 = 0.08333

10
2.3.5 pruebas de independencia

Recuerde que las dos propiedades más im portantes que deben satisfacer los
números de un conjunto r, son uniformidad e independencia. En la sección anterior
comentamos las pruebas que buscan determinar si los números del conjunto r¡ son
uniformes. A continuación hablaremos de las pruebas estadísticas que tratan de
corroborar si los números en el intervalo (0,1) son independientes o, en otras
palabras, si parecen pseudoaleatorios. Para probar la independencia de los
números de un conjunto r, primero es preciso formular las siguientes hipótesis:

H0: los números del conjunto rj son independientes.

H1: los números del conjunto rj no son independientes.

2.3.6 pruebas de bondad de ajuste

Estas pruebas permiten verificar que la población de la cual proviene una


muestra tiene una distribución especificada o supuesta. Sea X: variable aleatoria
poblacional f0(x) la distribución (o densidad) de probabilidad especificada o
supuesta para X Se desea probar la hipótesis: Ho: f(x) = f0(x) En contraste con la
hipótesis alterna: Ha: f(x) no= f0(x) (negación de Ho)

2.3.6.1 Prueba j-cuadrada

Esta prueba es aplicable para variables aleatorias discretas o continuas. Sea una
muestra aleatoria de tamaño n tomada de una población con una distribución
especificada f0(x) que es de interés verificar. Suponer que las observaciones de la
muestra están agrupadas en k clases, siendo (oi) la cantidad de observaciones en
cada clase i = 1, 2,..., k Con el modelo especificado f0 (x) se puede calcular la
probabilidad pi que un dato cualquiera pertenezca a una clase i. Con este valor de
probabilidad se puede encontrar la frecuencia esperada (ei) para la clase i, es decir,
la cantidad de datos que según el modelo especificado deberían estar incluidos en
la clase i: ei= pin, i = 1, 2,..., k Tenemos entonces dos valores de frecuencia para
cada clase i oi: frecuencia observada (corresponde a los datos de la muestra) ei:
frecuencia esperada (corresponde al modelo propuesto)

11
La teoría estadística demuestra que la siguiente variable es apropiada para realizar
una prueba de bondad de ajuste.

2.4 Obtención de números psedoaleatorios utilizando paquetes


computacionales.

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. Sin embargo,
en la medida en que esos números pseudoaleatorios pasen determinadas pruebas
estadísticas, pueden considerárseles como verdaderos números aleatorios. Las
siguientes pruebas son de las más usadas para la comprobación de la
aleatoriedad.

2.4.1 Prueba de los promedios

En la prueba de los promedios se establecen las siguientes hipótesis: Ho: μ = ½


(los números pseudoaleatorios generados provienen de una distribución U (0,1) con
μ =0.50) Ha: μ≠ ½ (los números pseudoaleatorios generados no provienen
de una distribución U (0,1) con μ=0.50)

2.4.2 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).

12
2.4.3 Prueba de Series

Esta prueba se utiliza para comprobar el grado de aleatoriedad entre números


sucesivos. La prueba consiste en formar parejas de números, las cuales son
consideradas como coordenadas en un cuadrado unitario dividido en n2 celdas.
En la prueba de series se generan N números pseudoaleatorios de los cuales se
forman parejas entre Ui y Ui + 1, es decir si se generan 5 números, las parejas que
se forman serian:

(U1, U2), (U2, U3), (U3, U4), (U4, U5).

En seguida se determina la celda a la que pertenece cada pareja ordenada, con lo


cual se determina la frecuencia observada de cada celda.

2.4.4 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).

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

13
2.5 MÉTODO DE MONTE CARLO

El método de Monte Carlo es una técnica numérica para calcular probabilidades y

Otras cantidades relacionadas, utilizando secuencias de números aleatorios.

Para el caso de una sola variable el procedimiento es la siguiente:

Generar una serie de números aleatorios, r1, r2,...,r3m, uniformemente distribuidos


en [0,1].

Usar esta secuencia para producir otra secuencia, x1, x2,...,xm, distribuida de
acuerdo a la pdf en la que estamos interesados.

Usar la secuencia de valores x para estimar alguna propiedad de f(x). Los valores
de x pueden tratarse como medidas simuladas y a partir de ello puede estimarse la
probabilidad de que los x tomen valores en una cierta región.

Formalmente un cálculo MC no es otra cosa que una integración.

En general, para integrales unidimensionales pueden usarse otros métodos


numéricos más optimizados. El método MC es, sin embargo muy útil para
integraciones multidimensionales

14
Conclusión

Los números aleatorios siempre se utilizan todo el tiempo, sin embargo los casos
en lo que más se adecuan es para realizar cálculos de integrales, cálculos de
varianza, o el cálculo de la moda, cálculo de errores.

En estos casos se utilizan promedio y se grafican en un plano cartesiano, para


posteriormente trazar la recta que permita identificar cuáles son los puntos más
cercano y de esta forma tener un rango e imagen de error mínimo sobre el cálculo
que se está realizando a una variable.

Los números aleatorios siempre están siendo utilizados en las aplicaciones web con
las que se interactúan todos los días, una forma de señalizar los números aleatorios
puede ser utilizando java script con el método random.

Los números aleatorios generados con java script pueden ser utilizados para
infinidad de cosas en una página web. Mostrar un banner aleatorio, una cabecera
distinta, una frase, generar un código de seguridad. Etc.

Los números aleatorios se pueden sacar en pruebas basadas en estadísticas de


acuerdo al método que se esté usando.

Los números aleatorios pueden simular el comportamiento, como el lanzar un dado.


Los números aleatorios brindan ese comportamiento imprescindible, y le dan vida a
un modelo de simulación para que, por medio del modelo, se pueda experimentar,
comprender, interactuar con una abstracción de sistema real.

15
Bibliografía

https://jrvargas.files.wordpress.com/2015/04/libro-simulacic3b3n-y-anc3a1lisis-de-
sistemas-2da-edicic3b3n.pdf

Ricardo Cao Abad, Introducción a la simulación y a la teria de colas, 1º edición,


NETBIBLO, S.L., A Coruña, 2002

http://www.bioingenieria.edu.ar/academica/catedras/metestad/PRUEBAS_DE_BO
NDAD_DE_AJUSTE-1.pdf

16

Das könnte Ihnen auch gefallen