You are on page 1of 49

SIMULACIN DE SISTEMAS

Generacin de Nmeros
Aleatorios

Prof.: German Pomachagua Prez

Objetivo de la Sesin
Comprender la importancia
de los
nmeros aleatorios en la simulacin
Construir generadores de nmeros
aleatorios
Validar una serie de nmeros aleatorios

Sistemas
Tabla de Contenido

Generacin de nmeros aleatorios


Mtodo de cuadrado medios
Mtodo de Congruencia Lineal

Validacin de los nmeros aleatorios


Validacin de la uniformidad
Validacin de la aleatoriedad

Nmeros Aleatorios
Elemento Central en la Simulacin digital.
Elemento esencial en muchas reas del conocimiento
Ingeniera, Economa, Fsica, Estadstica, etc.
Definicin intuitiva: Una sucesin de nmeros
aleatorios puros, se caracteriza por que no existe
ninguna regla o plan que nos permita conocer sus
valores.

Nmeros Aleatorios
Los nmeros aleatorios permiten a los modelos matemticos representar la
realidad.
Los seres humanos vivimos en un medio aleatorio y nuestro
comportamiento lo es tambin. Si deseamos predecir el comportamiento de
un material, de un fenmeno climatolgico o de un grupo humano podemos
inferir a partir de datos estadsticos. Para lograr una mejor aproximacin a
la realidad nuestra herramienta predictiva debe funcionar de manera
similar: aleatoriamente. De esa necesidad surgieron los modelos de
simulacin.
En la vida cotidiana se utilizan nmeros aleatorios en situaciones tan
dispares como pueden ser los juegos de azar, en una animacin por
computadora, en tests para localizacin de errores en chips, en la
transmisin de datos desde un satlite o en las finanzas.
5

Generacin de Nmeros Aleatorios


Rol preponderante en el proceso de simulacin.
Para simular necesitamos de nmeros aleatorios como
semillas para generar muestras de V.A.
Caractersticas de un generador de nmeros aleatorios:
1) Muestrea valores de Distribucin Uniforme.
2) Asegura la NO Correlacin Serial.

Algunas Propiedades de Nmeros


Aleatorios
1. Distribucin Uniforme.
Cualquier
nmero
que
pertenezca al rango de inters
debe
tener
la
misma
probabilidad
de
resultar
sorteado.

2. NO Correlacin Serial.
La aparicin de un nmero en
la secuencia, no afecta la
probabilidad de que aparesca
otro (o el mismo) nmero.
7

Ejemplo
La sucesin 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


correlacin serial, temas que veremos mas adelante.

Series de nmeros aleatorios


No tiene sentido el concepto de nmero aleatorios.
Se usa el concepto de serie de nmeros aleatorios
Una sucesin de nmeros es aleatoria si no puede reproducirse
eficientemente mediante un programa ms corto que la propia seria
Una sucesin de nmeros es aleatoria si nadie que utilice recursos
computacionales razonables en tiempo razonable puede distinguir
entre la serie y una sucesin verdaderamente aleatoria de una forma
mejor que tirando una moneda fiel para decidir cul es cul

Son nmeros que deben de cumplir los requisitos de espacio


equiprobable, es decir, que todo elemento tenga la misma
probabilidad de ser elegido y que la eleccin de uno no dependa de la
eleccin del otro.

Definiciones provenientes de la teora computacional9

PROPIEDADES DESEABLES
1.
2.
3.
4.
5.
6.
7.
8.

Uniformemente distribuidos.
Estadsticamente independientes (no correlacin).
Periodo largo (sin repeticin).
Reproducibles y mutables.
Sencillo en su implementacin.
Portabilidad.
Mtodo rpido de generacin.
Poca memoria para la generacin.

10

Mecanismos de generacin
Tablas de nmeros aleatorios
RAND (1955), 100,000 nmeros aleatorios
(ruido electrnico)
Fenmenos fsicos
Ruido blanco producido por circuitos
electrnicos
Recuento de partculas emitidas
Lanzamiento de monedas
Rueda de la fortuna
Procedimientos matemticos
Se usa algoritmos para la generacin de
nmeros aparentemente aleatorios, se entrega
una semilla y se generan los sucesores
mediante una funcin

1. Uniformemente
distribuidos.
2. Estadsticamente
independientes.
3. Periodo largo (sin
repeticin).
4. Reproducibles y
mutables.
5. Sencillo en su
implementacin.
6. Portabilidad.
7. Mtodo rpido de
generacin.
8. Poca memoria para
la generacin.
11

Generacin de Series de Nmeros Aleatorios

Es un proceso fundamental en la simulacin.


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
distribucin Normal usamos una Poisson?

12

Nmeros Aleatorios

Manual o mecnico.

Tabla de
Nmeros aleatorios

Xi+1=(aXi+c) mod m
Computador

13

Generacin de Nmeros Aleatorios

Juegan un rol preponderante en el proceso de


simulacion.

Para simular necesitamos de nmeros aleatorios


como semillas para generar muestras de V.A.

Los nmeros aleatorios obtenidos a travs de


algoritmos recursivos se llaman pseudoaleatorios.
14

Nmeros Aleatorios
En la simulacin de sistemas es necesario crear
secuencias de nmeros cuyos valores sucesivos son
aleatorios y tienen una distribucin que describe la
variable aleatoria de inters.
Existen diversas formas de generar nmeros aleatorios
como ruletas o dados.
La corporacin RAND utiliz un generador de impulsos
electrnicos producido por una fuente de ruido,
generndose as 1 milln de nmeros aleatorios,
crendose las tablas de nmeros aleatorios.
15

Nmeros Aleatorios
El problema de la generacin de nmeros aleatorios ha
sido resuelto mediante la generacin de nmeros
Pseudo aleatorios que se realizan usando relaciones
matemticas recursivas.
Los nmeros pseudoalaeatorios son unos nmeros
generados por medio de una funcin (determinista, no
aleatoria) y que aparentan ser aleatorios. Estos
nmeros pseudoaleatorios se generan a partir de un
valor inicial aplicando iterativamente la funcin. La
sucesin de nmeros pseudoaleatorios es sometida a
diversos tests para medir hasta qu punto se asemeja a
una sucesin aleatoria
16

GENERACION DE NUMEROS ALEATORIOS

Un generador de nmeros aleatorios es un algoritmo


determinstico usado para crear valores reales
distribuidos uniformemente (*) e independientes (**).
(*):Quiere decir de que cualquier valor es igualmente
probable de que ocurra.
(**):Quiere decir que la muestra de valores previos no
afecta la probabilidad del prximo valor muestreado

17

Generacin de Nmeros Pseudo


Aleatorios U(0,1)
Existen varios mtodos para generar los nmeros
aleatorios entre 0 y 1.
Estos nmeros deben cumplir ciertas caractersticas para
que sean validos.
Uniformemente distribuidos.
Estadsticamente independientes.
Su media debe ser estadsticamente igual a 1/2.
Su varianza debe ser estadsticamente igual a 1/12.
Su periodo o ciclo de vida debe ser largo.
18

Mtodos de Generacin de Nmeros Aleatorios


1.- Mtodo de los cuadrados medios
2.- Mtodos de Congruencia Lineal

[Semilla - Algoritmo - Validacin]


P1 : Obtener semilla (valores iniciales)
P2 : Aplicacin de Algoritmos recursivos
P3 : Validacin del conjunto de datos
generados Test de Aleatoriedad e
Uniformidad)
19

Mtodo del Cuadrado Medio


Cada nmero de la secuencia se obtiene tomando
las M cifras centrales del cuadrado del nmero
precedente.
Este mtodo es difcil de analizar, relativamente
lento, y estadsticamente ineficiente.

Ocurre con frecuencia que la secuencia generada


resulta muy corta.
Es decir, se repite y se degenera rpidamente,
repitindose el mismo nmero o se genera cero.
20

Mtodo del Cuadrado Medio


El Algoritmo
Seleccionar un nmero (raz) X0 arbitrario de M dgitos
Elevar X0 al cuadrado
Sea X0+1 el siguiente nmero de la secuencia formando
por las M dgitos centrales de (X0)2 y as sucesivamente.

21

Mtodo del Cuadrado Medio


X0 es denominado la semilla,

M = 4 dgitos

Xi

Xi2

ri

6375

40640625

0.6406

6406

41036836

0.0368

368

00135424

0.1354

22

Mtodos Congruenciales Lineales


Para la generacin de nmeros aleatorios de una distribucin
uniforme se parte de un valor inicial X0 y se genera una
secuencia de valores aleatorios
X n X 1 , X 2 ,..., X n ,...

Para generar dicha secuencia, se usa la siguiente relacin recursiva


X n1 (aX n c)mod m

n =0,1,2,

Donde:

Xn+1= nmero seudoaleatorio generado


X0 = es el valor inicial (raz o semilla), X0 0
a = es el multiplicador a 0, m X0
c = es el incremento
c 0, m > a
m = es el modulo,
m>c
24

Mtodos Congruenciales Lineales

25

Mtodos Congruenciales Lineales


Ejm.
X0 = a = c = 6, m=10

X n1 (aX n c)mod m

Xn

(aXn + c)

(aXn + c) mod m

42

18

54

30

42

18

Completar
este cuadro

26

Mtodos Congruenciales Lineales


Ejm.
X0 = a = c = 6, m=10

X n1 (aX n c)mod m

Xn

(aXn + c)

(aXn + c) mod m

42

18

54

Notar que:

30

X0 = X5

42

18

27

Mtodos Congruenciales Lineales


Definicin:
Si Xn = X0, para algun n Xn+1 = X1
En general, dada la secuencia:
X1, X2, ..., Xp, Xp+1, ..., X2p, ...
Si Xp = X0, es el valor a partir del cual la secuencia se
repite, se dice que p es su periodo.
En ejm. anterior:
La secuencia tiene periodo corto p = 5
La secuencia no es uniforme, pues no contiene los
valores 1, 3, 5, 7 y 9
28

Ejercicio Para el Alumno


Hallar la secuencia de nmeros aleatorios y el periodo si:
m = 16, a = 5, c = 3, X0 = 7
n

Xn

(aXn + c)

(aXn + c) mod m

Xn

(aXn + c)

(aXn + c) mod m

11

12

13

14

15

16

17

18

19

20

10

21
29

Ejercicio Para el Alumno


Hallar la secuencia de nmeros aleatorios y el periodo si:
m = 16, a = 5, c = 3, X0 = 7
i

Xi

(aXi + c) (aXi + c) mod m

Xi

11

12

13

14

13

11

15

10

16

17

12

18

15

19

14

20

10

21

(aXi + c) (aXi + c) mod m

30

Mtodos Congruenciales Lineales


Observacin:
Los mtodos congruenciales nos permiten obtener una
secuencia uniforme de nmeros enteros generados con
modulo m
A partir de estos nmeros, es posible obtener una
secuencia de nmeros racionales entre 0 y 1
dividiendolos entre m (esta secuencia es uniforme)
Xp
X 0 X1
rn , ,..., ,...
m
m m
31

Reglas para obtener un Periodo Mximo


en un Generador Congruencial Lineal

Para m una potencia de 2 (m=2b), y c0, el


periodo mximo posible es P=m=2b, el cual
es obtenido con la condicin de que c y m
deben ser primos entre si, y a=1+4k, donde k
es un entero.

32

Reglas para obtener un Periodo Mximo


en un Generador Congruencial Lineal

Para m una potencia de 2 (m=2b), y c=0, el


periodo mximo posible es P=(m/4)=2(b-2), el
cual es obtenido con la condicin de que la
semilla X0 sea impar y el multiplicador a,
este dado por (a=3+8k) (a=5+8k), para
algn k=0,1,..

33

Reglas para obtener un Periodo Mximo


en un Generador Congruencial Lineal

Para m un nmero primo y c=0, el periodo


mximo posible es P=m-1, el cual es
obtenido con la condicin de que el
multiplicador a, tenga la propieda que el
entero k mas pequeo tal que, ak -1
divisible por m, sea k=m-1

34

EL GENERADOR EN PROMODEL

El generador de nmeros aleatorios usado


en Promodel es un generador congruencial
lineal multiplicativo con modulo primo.
Zi = (630360,016 * Zi-1) mod (231-1)

El periodo del generador usado en


Promodel esta sobre los 2.1 billones de
nmeros aleatorios diferentes.
35

PRUEBAS ESTADISTICAS PARA VALIDAR NUMEROS SEUDO


ALEATORIOS

1
2
1
H1 : r i
2
H 0 : ri

1) PRUEBA DE MEDIAS

Paso 1: Calcular la media de los n nmeros generados

1 n
r ri
n i 1
Paso 2: Calcular lmites superior e inferior de aceptacin, si la media se
encuentra en el intervalo, aceptamos que los nmeros tienen una media
estadsticamente igual a 1/2 , con un nivel de aceptacin de 1-

LS x

1
1
Z

(1 ) ( 12 )( n )
2

LI x

1
1
Z

(1 ) ( 12 )( n )
2

n >= 30

36

Ejemplo: Considere los 40 nmeros del conjunto que se presenta a continuacin


1
y determine si tienen un valor esperado de 2 con un nivel de aceptacin de 95%
0,0449
0,6015
0,6300
0,5514
0,0207

0,1733
0,6694
0,2531
0,0316
0,1067

0,5746
0,3972
0,8297
0,3587
0,3587

1
2
1
1 :
2

0 : =

1
=
2
2
=

1
+
2
2

0,049
0,7025
0,6483
0,7041
0,1746
40
=1

1
= 0,96
2
12
1
12

1
+ 0,96
2

0,8406
0,1055
0,6972
0,5915
0,3362

0,8349
0,1247
0,9582
0,2523
0,1589

0,9200
0,1977
0,9085
0,2545
0,3727

0,2564
0,0125
0,8524
0,3044
0,4145

= 0,439212

1
12 40
1
12 40

= 0,410538

= 0,589461

Como = 0,439212 se encuentra entre los limites de aceptacin se concluye


que no se puede rechazar que el conjunto de 40 nmeros tienen un valor
esperado de 0,5 , con un nivel de aceptacin del 95%
37

Reporte de Minitab

Reporte de SPSS

38

PRUEBAS ESTADISTICAS PARA VALIDAR NUMEROS SEUDO


ALEATORIOS

1
12
1

12

H 0 : ri
2

2) PRUEBA DE VARIANZA

H1 : ri

Paso 1: Calcular la varianza de los n nmeros que contiene el conjunto de los ri


n

V (r )

2
(
r

r
)
i
i 1

n 1

Paso 2: Calcular lmites superior e inferior de aceptacin si V(r) se encuentra en


el intervalo, aceptamos que los nmeros tienen una varianza igual a 1/12 , con
un nivel de aceptacin de 1-

2
LIV ( r )

, n 1)

12(n 1)

2
LSV ( r )

(1

, n 1)

12(n 1)

39

Ejemplo: Realizar la prueba de varianza para los 40 nmeros del ejemplo


anterior

1
12
1

12

0 : 2 =
1 : 2
=

() =

()

=1


=
1

2 ,1
2

12( 1)

40
=1

0,43184
= 0,08635
40 1

23,65
= 0,050534
12(39)

21,1

58,12
=
=
= 0,1241
12( 1) 12(39)
2

Como V r = 0,08635 se encuentra entre los limites de aceptacin se


concluye que no se puede rechazar que el conjunto de 40 nmeros tienen
1
una varianza de 12=0.0833, con un nivel de aceptacin del 95%

40

Reporte de Minitab

41

PRUEBAS ESTADISTICAS PARA VALIDAR NUMEROS SEUDO


ALEATORIOS

3) PRUEBAS DE UNIFORMIDAD
Una de las pruebas mas importantes que debe cumplir un conjunto de nmeros
es la uniformidad, para comprobar usamos el test de Chi cuadrado y el de
Kolmogorov -Smirnov
Formulando las siguientes Hiptesis
0 : ~ 0,1
1 :

42

Prueba de Bondad de Ajuste


H0, los nmeros estn distribuidos uniformemente.

H1, los nmeros no estn distribuidos uniformemente.


>

Prueba Ji-cuadrado
Se usa cuando se trabaja con variables
nominales (categoras o grupos).
Responder la pregunta: si las frecuencias
observadas, difiere de la frecuencia
esperada.
43

Prueba Ji-Cuadrado

Tomar la serie de n nmeros.


Dividir la serie en k intervalos. k n
Calcular Ei = n/k
Calcular Oi = (cantidad de #s por intervalo)

Calcular
Si

se acepta H0

No hay diferencia significativa entre la cantidad de nmeros de cada intervalo


44

Ejemplo2
0,0449
0,6015
0,6300
0,5514
0,0207

0,1733
0,6694
0,2531
0,0316
0,1067

0,5746
0,3972
0,8297
0,3587
0,3587

0,049
0,7025
0,6483
0,7041
0,1746
Li
.0125
.1702
.3279
.4856
.6433
.8010

0,8406
0,1055
0,6972
0,5915
0,3362

Ls
0.1702
0.3279
0.4856
0.6433
0.801
0.9587

0,8349
0,1247
0,9582
0,2523
0,1589
Oi=fi
8
9
7
3
5
8
40

0,9200
0,1977
0,9085
0,2545
0,3727
Ei
6.6667
6.6667
6.6667
6.6667
6.6667
6.6667

0,2564
0,0125
0,8524
0,3044
0,4145
Oi-Ei
1.3333
2.3333
0.3333
-3.6667
-1.6667
1.3333

(Oi-Ei) 2 /Ei
0.2667
0.8167
0.0167
2.0167
0.4167
0.2667
3.8

2 = 3.8
2
c 2 tabla
No se rechaza Ho

2 (5,0.05) = 11.07

45

Prueba Ji-Cuadrado con SPSS

2
c 2 tabla
No se rechaza Ho

Como

c 2 3.8 52,0.05 11.07 No se rechaza Ho

Tambin como p=sig=0.579>0.05 no se rechaza Ho la decir la serie esta


distribuido en forma uniforme
46

4) PRUEBAS DE ALEATORIEDAD INDEPENDENCIA

Las dos propiedades mas importantes que debe satisfacer los


nmeros de un conjunto son de uniformidad e independencia
(aleatoriedad)
Probar si los elementos de una serie de nmeros no estas
correlacionados.
Ho los nmeros de la serie ri son independientes
H1 los nmeros de la serie ri no son independientes

Pruebas de corridas arriba y debajo de la media(test de rachas)


Prueba de la auto correlacin
Prueba de las Series.
Prueba de las Distancias

47

4.1 Prueba de Corridas Arriba y abajo


Ho: Los datos son independientes
H1: Los datos no son independientes
Paso 1:
Si ri <= ri-1 ri = - (0)
Si ri > ri-1 ri = + (1)

la prueba de rachas para


detectar aleatoriedad, la cual
puede
utilizarse
para
determinar si los datos
muestrales en una secuencia
estn en un orden aleatorio

Paso 2: Calcular el nmero de corridas C0 , una corrida se forma por el conjunto


de nmeros aleatorios consecutivos del mismo signo.
Paso 3:
Calcular 0 y

n: Nmero de datos generados

2n 1

2
C0

16n 29

90

Paso 4:
Calcular Z, si es menor que el valor crtico Z1- /2 no se rechaza la hiptesis de
independencia Ho.
0 0
=
0
48

4.1 Prueba de Corridas arriba y abajo de la media


Ho: Los datos son independientes (Las rachas son alaeatorias)
H1: Los datos no son independientes
Paso 1:
Si ri <0,5
ri = ceros- (0)
Si ri >=0,51 ri = unos (1)

Paso 2: Calcular el nmero de corridas C0 ,


Paso 3: Calcular 0 y 2 0
n0= Cantidad de ceros en la serie
n1= Cantidad de unos en la serie
n: Nmero de datos generados

2
C0

2n0 n1 1

n
2

2n0 n1 (2n0 n1 n)

n 2 (n 1)
0 0
=
0

Paso 4:
Si Z esta fuera del intervalo /2 < < /2 se concluye que el conjunto de
ri no son datos independientes
49

50

You might also like