Está en la página 1de 53

NMEROS ALEATORIOS

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

0.25593 0.34565 0.02345 0.67347 0.10987 0.25678

0.7189 0.61234 0.86322 0.94134 0.99872 0.27657

0.82345 0.12387 0.05389 0.8474 0.59289 0.36782

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234


NUMEROS ALEATORIOS

Los nmeros random son un elemento


bsico en la simulacin de la mayora
de los sistemas discretos.

Cada nmero random Ri es una muestra


independiente de una distribucin
uniforme y continua en el intervalo
(0,1).
NMEROS ALEATORIOS
f(x)
1, 0 x 1
f(x) 1
0, en otro caso
Func
prob in de d 1
abili ensi
dad dad
de
F(x)
0, x < 0
F(x) x, 0 x 1 1

Func 1, x > 1
i
acum n de p
u la d ro
a: P babilid 1
(X< ad
=x
)
NMEROS ALEATORIOS

* La probabilidad de observar un valor en


un particular intervalo es independiente
del valor previo observado.
* Todo punto en el rango tiene igual
probabilidad de ser elegido.
* Si el intervalo (0,1) es dividido en n
sub-intervalos de igual longitud, el
nmero esperado de observaciones en
cada intervalo es N/n. (N nmero de
observaciones totales).
GENERADOR DE NMEROS
ALEATORIOS

El objetivo de cualquier esquema de


generacin (generador), es producir
una secuencia de nmeros entre 0 y
1 que simule las propiedades ideales
de distribucin uniforme y de
independencia.
NMEROS PSEUD0-ALEATORIOS

Los nmeros aleatorios son calculados a


partir de una semilla (seed) y una
frmula.

El problema es que si el mtodo es


conocido, entonces la secuencia de
nmeros random puede ser replicada.

En la prctica ninguna funcin produce


datos aleatorios verdaderos -- las
funciones producen nmeros pseudo-
aleatorios.
TCNICAS PARA GENERAR
NMEROS ALEATORIOS

La mayora de los mtodos (generadores)


comienzan con un nmero inicial (semilla), a
este nmero se le aplica un determinado
procedimiento y as se encuentra el primer
nmero random.

Usando este nmero como entrada, el


procedimiento es repetido para lograr un
prximo nmero random.

Y as siguiendo.
TCNICAS PARA GENERAR
NMEROS ALEATORIOS
Mtodo Del Cuadrado Medio: comienza con un
nmero inicial (semilla). Este nmero es elevado al
cuadrado. Se escogen los dgitos del medio de este
nuevo nmero (segn los dgitos que se deseen) y se
colocan despus del punto decimal. Este nmero
conforma el primer nmero random.

Ejemplo: X0 = 5497

X02 = (5497)2 = 30,217,009 ===> X1 =


2170
R1 = 0.2170

X12 = (2170)2 = 04,708,900 ===> X2 =


7089
R2 = 0.7089
Inicio
SE
SI Si NO
C=P
P=SE
Fin C/10000
N=SE2
N
8
SE=C
dgit
SI Si NO
N7
os SE>3163
digito
A=ENT(N/100) A=ENT(N/10)
s Mtodo
del
B=ENT(N/1000000) B=ENT(N/100000)
Cuadrado
C = A B * 10000 C = A B * 10000 Medio

TCNICAS PARA GENERAR
NMEROS ALEATORIOS
Mtodo De Congruencia Lineal: produce una
secuencia de enteros X1, X2,... entre 0 y m-1 de
acuerdo a la siguiente relacin recursiva:

Xi+1= (a * Xi + c) mod m,
i=0,1,2,...

X0 es llamado semilla.
a es llamado el multiplicador
constante.
c es el incremento.
m es el mdulo.

El nmero aleatorio se encuentra de la siguiente


TCNICAS PARA GENERAR
NMEROS ALEATORIOS
Ejemplo: Utilice el mtodo de Congruencia Lineal para generar
nmeros aleatorios con las siguiente constantes:
X0 = 27 , a = 17, c = 43, m = 100

La secuencia de Xi y subsecuentes Ri seran:

X0 = 27
X1 = (17 * 27 + 43) mod 100 = 502 mod 100 = 2
R1 = (2+0.5)/100 = 0.025

X2 = (17 * 2 + 43) mod 100 = 77 mod 100 = 77


R2 = (77+0.5)/100 = 0.775

La seleccin de los parmetros del generador afecta drsticamente


las propiedades ideales y la longitud del ciclo.
TEST PARA EL CHEQUEO DE
UNIFORMIDAD
Generador Uniforme Generador Uniforme

1.25 1.25
1 1
0.75 0.75
ra ndom

random
0.5 0.5
0.25 0.25
0 0
-0.25 -0.25
-0.5 -0.5

Generador Uniforme?

1
0.8
0.6
0.4
0.2
0
0 50 100
Pruebas Estadsticas
Es importante verificar si los nmeros
pseudoaleatorios generados poseen las
caractersticas de nmeros aleatorios.
1. Pruebas de Medias
2. Pruebas de Varianza
3. Prueba de Forma (Chi Cuadrado)
4. Prueba Kolgomorov Smirnov
5. Prueba de Corridas
Prueba de Medias
Consiste en verificar que los nmeros genera-
dos tengan una media estadsticamente igual a
. Se analiza la siguiente Hiptesis:
Ho : =
Ha :
Paso 1:
Calcular la media de los n nmeros generados

1 n

X *
n
r
i 1
i
Prueba de Medias
Paso 2:
Calcular los lmites superior e inferior de
acep-
tacin: 1 1
lS X Z / 2 *
2 12 n
1 1
lI X Z / 2 *
2 12 n
Prueba de Medias
Paso 3:
Si el valor de X se encuentra entre l y l ,
IX SX
aceptamos que los nmeros tienen una media
estadsticamente igual a con un nivel de acep-
tacin 1-
Prueba de Medias
Ejemplo:
Realice la prueba de medias a los primeros 30
nmeros aleatorios entre 0 y 1 de un generador
congruente mixto, con un nivel de confianza del
95%

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

0.25593 0.34565 0.02345 0.67347 0.10987 0.25678

0.7189 0.61234 0.86322 0.94134 0.99872 0.27657

0.82345 0.12387 0.05389 0.8474 0.59289 0.36782

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234


Prueba de Medias
Calcular la media a los 30 nmeros generados
1 n
1

X * ri * 15.24331 0.50811
n i 1 30
Los lmites de aceptacin para n = 30, son:

1 1 1 1
lS X Z / 2 * 1.96 0.5298
2 12 n 2 12 30
1 1 1 1
l I X Z / 2 * 1.96 0.4701
Dado2que la media 2
12 nse encuentra 12 30 de los
dentro
lmites se acepta la hiptesis nula.
Prueba de Varianza
Consiste en verificar que los nmeros genera-
dos tienen una varianza de 0.083 (1/12), de tal
forma que la hiptesis queda expresada asi:
Ho : V(X) = 1/12
Ha : V(X) 1/12
Paso 1:
Calcular la varianza de los n nmeros generados

r X
2
i
V (X ) i 1
n 1
Prueba de Varianza
Paso 2:
Calcular los lmites superior e inferior de
acep-
tacin: 2 / 2 , n 1
lSV ( X )
12(n 1)

2
1 / 2 , n 1
l IV ( X )
12(n 1)
Prueba de Varianza
Paso 3:
Si el valor de V(X) se encuentra entre l IV ( X )y l SV ( X ),
se acepta la hiptesis nula y los nmeros aleato-
rios tienen una varianza estadsticamente igual
a 1/12 con un nivel de aceptacin 1-.
Prueba de Varianza
Ejemplo:
Realice la prueba de varianza a los primeros 30
nmeros aleatorios entre 0 y 1 de un generador
congruente mixto, con un nivel de confianza del
95%

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

0.25593 0.34565 0.02345 0.67347 0.10987 0.25678

0.7189 0.61234 0.86322 0.94134 0.99872 0.27657

0.82345 0.12387 0.05389 0.8474 0.59289 0.36782

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234


Prueba de Varianza
Calcular la varianza a los 30 nmeros generados
n 30

ri X
i
2 2
r 0.50811
V (X ) i 1
i 1
0.104
n
Los lmites de 1
aceptacin 30n=1 30, son:
para

2

/ 2 , n 1
2
45.7
lSV ( X ) 0.1313
0.025, 29

12(n 1) 12(29) 348


1 / 2,n 1 0.975, 29 16.04
2 2
l
Dado que12
la( n
varianza
se( 29

encuentra
0. 046
348 dentro de los
IV ( X )
1) 12 )
lmites se acepta la hiptesis nula.
Prueba de Forma (Chi Cuadrado)
Se utiliza la prueba de bondad de ajuste 2
,
sirve
para demostrar que los nmeros generados si-
guen una distribucin uniforme entre 0 y 1. El
anlisis de la hiptesis ser:

Ho : ri U 0,1

Ha : ri U 0,1
Prueba de Forma (Chi Cuadrado)
Ejemplo:
Tomando los 30 nmeros aleatorios vistos anterior-
mente, determine, con un nivel de confianza del
95%, si pertenecen a una poblacin uniforme.

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

0.25593 0.34565 0.02345 0.67347 0.10987 0.25678

0.7189 0.61234 0.86322 0.94134 0.99872 0.27657

0.82345 0.12387 0.05389 0.8474 0.59289 0.36782

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234


Prueba de Forma (Chi Cuadrado)
Dividiendo el rango de 0 a 1 en 10 intervalos y
clasifi-
cando los 30 nmeros segn su valor, se obtiene
la Frecuencia Frecuencia
Intervalo Observada (FO) Esperada (FE) ((FEi - FOi)2)/FEi
siguiente
0.0 - 0.1
tabla: 3 3 0
0.1 - 0.2 4 3 1/3
0.2 - 0.3 3 3 0
0.3 - 0.4 4 3 1/3
0.4 - 0.5 1 3 4/3
0.5 - 0.6 2 3 1/3
0.6 - 0.7 2 3 1/3
0.7 - 0.8 3 3 0
0.8 - 0.9 3 3 0
0.9 - 1.0 5 3 4/3

4
Prueba de Forma (Chi Cuadrado)
Se calcula C a partir de la ecuacin:

C
m
FE FO
4
2
Se obtiene un valor C=4. Luego sei compara con
el valor de tablas FE
con 10 1 grados de libertad
i 1 i
Y un nivel de 5% que es igual a 16.90. Dado que
C es menor que el valor terico, entonces se


aceptar la hiptesis nula Ho. O 2
sea que los n-
meros generados siguen un distribucin unifor-
me.
Prueba Kolgomorov - Smirnov
Se utiliza para encontrar el tipo de distribucin
2

de probabilidad en una serie de datos. En este


caso, probar que los nmeros aleatorios genera-
dos tienen una distribucin uniforme entre 0 y 1.
El anlisis de la hiptesis ser:

Ho : ri U 0,1

Ha : ri U 0,1
Prueba Kolgomorov - Smirnov
Procedimiento:
Paso 1: Se colocan los n datos en una tabla de
frecuencias con intervalos.
m n
Paso 2: Se obtiene la probabilidad observada y la
probabilidad acumulada observada (PAO).
Paso 3: Se calcula la probabilidad esperada acu-
mulada (PEA) para cada intervalo. Generalmente
es el lado derecho del intervalo.
Prueba Kolgomorov - Smirnov
Paso 4: Se calcula DM = |PEA - PAO|. Luego
se obtiene el mayor valor DM.
Paso 5: DM se compara con el valor de tabla
con n datos y un nivel de confianza (1-). Si
DM < valor de tabla, entonces se acepta que
los
Nmeros tienen la distribucin de probabilidad
Propuesta.
Prueba Kolgomorov - Smirnov

Ejemplo:
Hacer la prueba Kolgomorov Smirnov para
la
siguiente serie de nmeros aleatorios:
0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

0.25593 0.34565 0.02345 0.67347 0.10987 0.25678

0.7189 0.61234 0.86322 0.94134 0.99872 0.27657

0.82345 0.12387 0.05389 0.8474 0.59289 0.36782

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234


Prueba Kolgomorov - Smirnov
Dividiendo el rango de 0 a 1 m en 30 5.47 5
intervalos y clasificando los 30 nmeros
segn su
valor, se obtiene la siguiente tabla:
Frecuencia Probabilidad Probabilidad
Frecuencia
Observada Acumulada Esperada DM =
Intervalo Observada
Acumulada Observada Observada |PEA-PAO|
(FO)
(FOA) (PAO) (PEA)

0.0 - 0.2 7 7 7/30 = 0.2333 0.2 0.03333

0.2 - 0.4 7 14 14/30 = 0.466 0.4 0.06666

0.4 - 0.6 3 17 17/30 = 0.566 0.6 0.03333

0.6 - 0.8 5 22 22/30 = 0.566 0.8 0.06666

0.8 1.0 8 30 30/30 = 1 1.0 0.00000


Prueba Kolgomorov - Smirnov

Para un nivel de confianza del 95%, =


0.05 y D0.05 0.24
nDM
= 30
0.grados
24 de libertad
es , como
entonces se acepta que los
nmeros
aleatorios tienen una distribucin
uniforme.
TEST PARA EL CHEQUEO DE
UNIFORMIDAD

Test de Kolmogorov-Smirnov: compara la


distribucin de un conjunto de nmeros generados
con una distribucin uniforme.

Este test compara:


la funcin de Probabilidad Acumulada continua F(x)
de una Distribucin Uniforme, con
la funcin de Probabilidad Acumulada emprica
SN(x), de una muestra de N observaciones.
TEST DE KOLMOGOROV-SMIRNOV

Por definicin, la Funcin de Probabilidad Acumulada


(terica) uniforme entre 0 y 1 tiene:
* F(x) = x, 0<=x<=1
Mientras que una Funcin de Probabilidad Acumulada
Emprica se encuentra:
* SN(x) = (cantidad de n.r. generados <=x ) / N

Este test se basa en la mayor desviacin absoluta entre F(x) y


SN(x) sobre todo el rango de variable random.
Esto es: D = max|F(x) - SN(x)|

La distribucin de D est tabulada como una funcin de N.


Ejercitacin de Distribucin Emprica (SN(x))
Si no se conoce la probabilidad de un fenmeno se debe
trabajar con las distribuciones empricas ( basadas en
frecuencias).
Ejemplo: Que distribucin tiene la siguiente secuencia de
nmeros?: 3-4-5-3-4-5-3-6-4-3

valor cantidad frel. frelAcum

3 4 4/10=0.4 4/10=0.4
4 3 3/10=0.3 7/10=0.7
5 2 2/10=0.2 9/10=0.9
6 1 1/10=0.1 10/10=1
El test procede de la siguiente manera:

1- Ordena los datos de menor a mayor:


R(1)<=R(2)<=... <= R(N)

(R(i) denota la observacin ms pequea.)

2- Computa:
D+ = max { i/N - R(i)}, 1<=i<=N

D- = max { R(i)- (i-1)/N}, 1<=i<=N

3- Computa D = max (D+,D-).


Ejemplo (continuacin)

0.6
0.5
0.4
0.3
0.2
0.1
0
0.1 0.2 0.3 0.4 0.5 0.6

0.03 0.32
0.58
El test procede de la siguiente manera (continuacin):

4- Determina el valor crtico, D para el nivel de


significancia alfa y tamao de muestra N, (estos
valores estn tabulados).
5- Si la muestra estadstica diferencia ha D es
mas grande que el valor crtico, D, la hiptesis
nula es rechazada.
Si D <= D concluye que ninguna
diferencia significativa ha sido detectada entre
la verdadera distribucin de {R1,R2 ..., RN} y
la distribucin uniforme.
Ejemplo Para Ejecutar Test De Uniformidad
(Kolmogorov - Smirnov)
Suponer que se generaron cinco nmeros random y que
se desea ejecutar el test de K.S. para un nivel de
significancia = 0.05
Orden cronolgico: R1 R2 R3 R3 R5

0.03 0.58 0.87 0.32 0.95

Orden numrico creciente:


R(1) R(2) R(3) R(3) R(5)

0.03 0.32 0.58 0.87 0.95


Ejemplo (continuacin)

Evaluacin:
0.03 0.32 0.58 0.87 0.95
D.Terica
F(x) = R(i)
0.2 0.4 0.6 0.8 1
D.Emprica
SN(x)= i/N
0.08 0.02 0 0.05
i/N R(i) 0.17
(D+ :dif. sup.)
0.03 0.12 0.18 0.15
R(i) - (i-1)/N 0.27
(D- :dif. inf.)

Continuar este ejemplo.....


GENERACIN DE VARIABLES
ALEATORIAS EMPRICAS

TCNICA DE LA TRANSFORMADA INVERSA

DEPARTAMENTO DE
INFORMATICA
UNSL-2007
GENERACIN DE VARIABLES ALEATORIAS
EMPRICAS DISCRETAS
Suponga que un determinado fenmeno aleatorio
tiene la siguiente distribucin de probabilidad:

Variable Probabilidad Acumulada

20 grs. 0.3 0.3


19 grs. 0.4 0.7
18 grs. 0.3 1
TECNICA DE LA TRANSFORMADA
INVERSA (Generalizacin de Montecarlo)
1
0.91
0.8
prob.acumulada
0.6

0.4
0.33
0.2

0
20 19 18
gramos
TECNICA DE LA TRANSFORMADA
INVERSA (Generalizacin de Montecarlo)
1

0.8
prob.acumulada
0.6

0.4

0.2

0
20 19 18
gramos
TECNICA DE LA TRANSFORMADA
INVERSA (Generalizacin de Montecarlo)
Variable Probabilidad Acumulada

20 grs. 0.3 0.3

19 grs. 0.4 0.7

18 grs. 0.3 1

0 R 0.3 entonces x = 20 grs.


0.3 < R 0.7 entonces x = 19 grs.
0.7 < R 1 entonces x = 18 grs.
Transformada Inversa
Distribuciones Empricas Continuas
Suponga que se han coleccionado 100
tiempos de reparacin de un elemento

intev.(hs) frecuencia frec.relativa frec.acumulda


0.0-0.5 31 0.31 0.31
0.5-1.0 10 0.10 0.41
1.0-1.5 25 0.25 0.66
1.5-2.0 34 0.34 1
Transformada Inversa
Distribuciones Contnuas
Como no se conoce la D. Acum. Terica , trabajo con la D. Emprica

distribucin emprica
F ( x)
1 1
F(x)
probabilidad

0.8
acumulada

0.66
0.6
0.4 0.41
0.31
0.2
0 0
0.5 1 1.5 2
tiempos de reparacin
Transformada Inversa
distribucin emprica
Grficamente:
Generamos 1 1
0.9
Ri= 0.83 0.8

vamos hasta 0.7


0.6
0.66

la curva y 0.5
encontramos Xi 0.4
0.31
0.41
0.3
0.2
0.1
0 0
0.5 1 1.5 2

X1 F 1
Ri Xi
Transformada Inversa
distribucin emprica
Algebraicamente:
1
Dado Ri= 0.83 1
0.9
(entre 0.66 y 1), 0.8
0.66
Xi es computado 0.7
0.6
por una 0.5 0.41
interpolacin 0.4 0.31

lineal entre 1.5 y 0.3


0.2
2 0.1 0
0
0.5 1 1.5 2

Ri 0.66
X i 1.5 2 1.5
1 0.66
Transformada Inversa
distribucin emprica
Algebraicamente:

Dado Ri= 0.83 1


0.9
1

(entre 0.66 y 1), 0.8 0.83


0.7
Xi es computado 0.6
0.66

por una 0.5


0.41
0.4
interpolacin 0.3 0.31
lineal entre 1.5 y 0.2
0.1
2 0 0
0.5 1 1.5 2

1.75
0.83 0.66
1.75 1.5 2 1.5
1 0.66

También podría gustarte