Este documento describe los números aleatorios y pseudoaleatorios, y cómo se usan en simulaciones. Los números aleatorios son impredecibles, mientras que los pseudoaleatorios siguen algoritmos deterministas para parecer aleatorios. Se usan pseudoaleatorios en simulaciones porque son más rápidos de generar que aleatorios reales. Existen algoritmos no congruenciales y congruenciales para generar pseudoaleatorios, como el algoritmo de cuadrados medios o el algoritmo congruencial lineal.
Tag Questions ejercicios para resolver e imprimir en pdf / Question Tags ejer...
Números aleatorios y pseudo aleatorios
1. UNIDAD II
NÚMEROS ALEATORIOS Y PSEUDO ALEATORIOS
1. ¿Qué son los números aleatorios y pseudo aleatorios y para qué
sirven?
Los números aleatorios tienen la propiedad de ser obtenidos al azar,
es decir, son resultado de un proceso en el cual su resultado no es
predecible ya que todo número tiene la misma probabilidad de ser elegido
y la elección de uno no depende de la elección del otro. La
palabra aleatorio se usa para expresar una aparente carencia de
propósito, causa, u orden. El ejemplo clásico más utilizado para generarlos
es el lanzamiento repetitivo de una moneda o dado.
Los números pseudo aleatorios son números generados en un
proceso que parece producir números al azar, pero no lo hace realmente,
de aquí el prefijo pseudo que quiere decir falso, ya que su generación parte
de algoritmos determinísticos, lo cual nos quiere decir que obtendremos
siempre el mismo resultado bajo las mismas condiciones iniciales. Estas
condiciones se refieren a varios parámetros de arranque, siendo el valor
inicial, también llamado semilla, el denominador común de todos los
algoritmos.
Estos números tienen la característica de que deben seguir una
distribución Uniforme, es decir que pueden tomar cualquier valor dentro
del intervalo (0, 1), entonces podemos decir que los números pseudo
aleatorios son números entre 0 y 1 que han pasado por un tamizado de
pruebas para poder determinar que tendrán una función aproximada a la
realidad es decir, haya aleatoriedad.
La función de los números pseudo aleatorios es que a partir de ellos
podemos generar variables aleatorias las cuales están sujetas en el mayor
de los casos, a distribuciones estadísticas que son las que se usan para
establecer el comportamiento de materiales, sucesos, personas, etc., en
todo proceso de simulación.
2. ¿Para qué y cómo se usan dichos números?
Se usan como una fuente confiable de variabilidad dentro de los
modelos de simulación fundamentalmente porque las sucesiones de números
pseudoaleatorios son más rápidas de generar que las de números aleatorios.
2. La simulación es el proceso de diseñar un modelo de un sistema real,
que servirá para dirigir experimentos con el propósito de entender, explicar,
analizar o mejorar el comportamiento del sistema.
Para simular el comportamiento de una o más variables aleatorias es
necesario contar con un conjunto suficientemente grande de números
aleatorios, pero por desgracia generar una sucesión de números que sean
completamente aleatorios resulta muy complicado, ya que tendríamos que
generar una sucesión infinita de valores que nos permitiera comprobar la
inexistencia de correlaciones entre ellos, lo que sería costoso y tardado
volviendo impráctica la simulación; por ello es necesario utilizar los números
pseudoaleatorios de los cuales podemos asegurar con un nivel alto de
confiabilidad que se comportan de manera similar a un conjunto de números
aleatorios.
La experimentación directa sobre la realidad puede algunos tipo de
problemas como: costo muy alto, gran lentitud, en ocasiones las pruebas son
destructivas, puede no ser ética (sobre todo si están involucrados seres
humanos), puede resultar imposible, por ejemplo, para predecir sucesos
futuros.
3. ¿Cómo se generan los números pseudo aleatorios entre 0 y 1?
Los números pseudo aleatorios se generan mediante algoritmos
determinísticos, es decir aquellos en que se obtiene el mismo resultado bajo
las mismas condiciones iniciales, por lo cual requieren parámetros de
arranque.
Sea una secuencia ri = {r1 ,r2 ,r3, ..., rn} con n valores distintos, se le
conoce como el conjunto necesario de números entre 0 y 1 para realizar una
simulación, siendo n el periodo o ciclo de vida. Esta secuencia forma la parte
principal de la simulación de procesos estocásticos (basado en probabilidades)
y son usados para generar la conducta de variables aleatorias, continuas o
discretas. Estos números se consideran pseudo-aleatorios porque es imposible
el generar números realmente aleatorios.
Es preciso contar con un conjunto ri grande, esto con la finalidad de
simular el comportamiento de una o más variables aleatorias, además el
periodo de vida debe ser amplio debido a que es conveniente realizar varias
réplicas de simulación, corriendo cada una con números pseudo aleatorios
distintos. Es importante señalar que ri se considera satisfactorio si pasa sin
problema las pruebas de uniformidad e independencia, solo así podrá ser
usado en la simulación.
3. Los algoritmos determinísticos para generar números pseudo
aleatorios se dividen en no congruenciales y congruenciales, éstos a su vez se
dividen en lineales y no lineales.
Algoritmos No Congruenciales
a) Algoritmo de cuadrados medios
Propuesto en la década de los cuarenta del siglo XX por Von Neumann
y Metrópolis, este algoritmo requiere un número entero, llamado semilla, con
D dígitos, este es elevado al cuadrado para seleccionar del resultado los D
dígitos del centro; el primer número ri se determina simplemente
anteponiendo el "0" a esos dígitos. Para obtener el segundo ri se sigue el
mismo procedimiento, sólo que ahora se elevan al cuadrado los D dígitos del
centro que se seleccionaron para obtener el primer ri. Este método se repite
hasta obtener n números ri.
Pasos para generar números con el algoritmo de cuadrados medios:
1. Seleccionar semilla (X0) con D dígitos (D > 3).
2. Sea X0 = resultado de elevar X0 al cuadrado; sea X1 = los D dígitos del
centro, y sea ri = 0.D dígitos del centro.
3. Sea Yi = resultado de elevar Xi al cuadrado; sea Xi+1 = los D dígitos del
centro, y sea ri = 0.D dígitos del centro para toda i = 1, 2, 3,..., n.
4. Repetir el paso 3 hasta obtener los n números ri deseados.
Nota: Si no es posible obtener los D dígitos del centro del número Yi,
agregue ceros a la izquierda del número Yi.
Ejemplo
Generar los primeros 5 números ri a partir de una semilla X0 = 5 735, de
donde se puede observar que D = 4 dígitos.
Solución:
Y0 = (5735)2 = 32 890 225 X1 = 8902 ri = 0.8902
Y1 = (8902)2 = 79 245 604 X2 = 2456 ri = 0.2456
Y2 = (2456)2 = 06 031 936 X1 = 0319 ri = 0.0319
Y3 = (0319)2 = 101 761 X1 = 0176 ri = 0.0176
Y4 = (0176) 2= 030 976 X1 = 3097 ri = 0.3097
Generalmente este algoritmo es incapaz de generar una secuencia de r i
con periodo de vida n grande. En ocasiones sólo es capaz de generar un
4. número, Por ejemplo si X0 = 1 000, entonces X1 = 0000; ri = 0.0000 y se dice
que el algoritmo se degenera con la semilla de X 0 = 1 000.
b) Algoritmo de productos medios
La mecánica de generación de números pseudo aleatorios 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ígitos; además, en lugar de elevarlas al
cuadrado, las semillas se multiplican y del producto se seleccionan los D
dígitos del centro.
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 (X1) con D dígitos (D > 3).
3. Sea Y0 = X0*X1; sea X2 = los D dígitos del centro, y sea ri = 0.D dígitos del
centro.
4. Sea Yi = Xi*Xi+1; sea Xi+2 = los D dígitos del centro, y sea ri+1 = 0.D
dígitos del centro para toda f¡= 1,2,3,...,n;
5. Repetir el paso 4 hasta obtener los n números ri deseados.
Nota: Si no es posible obtener los D dígitos del centro del número Yi agregue
ceros a la izquierda del número Yi.
c) Algoritmo de multiplicador constante
Este algoritmo no congruencial es similar al algoritmo de productos
medios. Los siguientes son los pasos necesarios para generar números pseudo
aleatorios con el algoritmo de multiplicador constante.
1. Seleccionar una semilla (X0) con D dígitos (D > 3).
2. Seleccionar una constante (a) con D dígitos (D > 3).
3. Sea Y0 - a*X0; sea X1 = los D dígitos del centro, y sea ri = 0.D dígitos del
centro.
4. Sea Yi = a*Xi; sea Xi+1 = los D dígitos del centro, y sea ri+1 = 0.D dígitos
del centro para toda
i = 1, 2, 3,..., n.
5. Repetir el paso 4 hasta obtener los n números ri deseados.
Nota: Si no es posible obtener los D dígitos del centro del número Yi agregue
ceros a la izquierda del número Yi.
5. Algoritmos Congruenciales
d) Algoritmo Lineal
Este algoritmo congruencial fue propuesto por D.H. Lehmer en 1951.
Según Law y Kelton, este algoritmo ha sido el más usado. El algoritmo
congruencial lineal genera una secuencia de números enteros por medio de la
siguiente ecuación recursiva:
Xi+1 = (aXi + c) mod (m) i= 0, 1, 2, 3… n donde;
X0 = es la semilla, X0 >0 y debe ser entero.
a = es la constante multiplicativa, a >0 y debe ser entero.
c = constante aditiva, c >0 y debe ser entero.
mod m = modulo, significa realizar las operaciones anteriores y dividir el
resultado entre el valor de m, para obtener solamente el residuo.
Es importante señalar que la ecuación recursiva del algoritmo
congruencial lineal genera una secuencia de números enteros S= {0, 1, 2,
3,…, m-1}, y que para obtener números pseudo aleatorios en el intervalo (0,
1) se requiere la siguiente ecuación:
ri =
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.
Ejemplo:
Generar suficientes números entre 0 y 1 con los parámetros X 0 = 6, k =3,
g =3, c =7, hasta encontrar el periodo de vida máximo (N).
a = 1 + 4(3) = 13 m = 23 = N= 8
X0 = 6
X1 = (13*6+7) mod 8 = 5 r1 = 5/7 = 0.714
X2 = (13*5+7) mod 8 = 0 r2 = 0/7 = 0.000
X3 = (13*0+7) mod 8 = 7 r3 = 7/7 = 1.000
6. X4 = (13*7+7) mod 8 = 2 r4 = 2/7 = 0.214
X5 = (13*2+7) mod 8 = 1 r5 = 1/7 = 0.142
X6 = (13*1+7) mod 8 = 4 r6 = 4/7 = 0.571
X7 = (13*4+7) mod 8 = 3 r7 = 3/7 = 0.428
X8 = (13*3+7) mod 8 = 6 r8 = 6/7 = 0.857
Es importante mencionar que el número generado en X 8 = 6 es
exactamente igual a la semilla X0, y si continuáramos generando más
números éstos se repetirían. Además sabemos que el algoritmo congruencial
lineal genera una secuencia de números enteros S = {0,1, 2, 3,…, m-1}.
Si no se cumple algunas de las condiciones, el periodo de vida máximo
N=m no se garantiza, por lo que el periodo de vida será menor que m.
e) Algoritmo Congruencial Multiplicativo
El algoritmo congruencial multiplicativo surge del algoritmo
congruencial lineal cuando c= 0. Entonces la ecuación recursiva es:
Xi+1 = (aXi) mod (m) i= 0, 1, 2, 3… n
En comparación con el algoritmo congruencial lineal, la ventaja del
algoritmo multiplicativo es que implica una operación menos a realizar. Los
parámetros de arranque de este algoritmo son X 0, a y m, todos los cuales
deben ser números enteros y mayores que cero.
Para transformar los números Xi en el intervalo de (0, 1) se usa la
ecuación:
ri =
De acuerdo con Banks, Carson, Nelson y Nicol las condiciones que
deben cumplir los parámetros para que el algoritmo congruencial
multiplicativo alcance su máximo periodo son:
m = 2g
a = 3 + 8k o a = 5 + 8k
k = 0, 1, 2, 3…
X0 debe ser un número impar.
g, debe ser entero.
A partir de estas condiciones se logra un periodo de vida máximo:
N= m/4= 2g-2.
7. Ejemplo:
Generar suficientes números entre 0 y 1 con los siguientes parámetros:
X0 = 17, k =2, y g =5 hasta encontrar el periodo o ciclo de vida.
Solución:
a = 5 + 8(2) = 21 y m X0 = 17
=32
X1 = (21*17) mod 32 = 5 r1 = 5/31 = 0.1612
X2 = (21*5) mod 32 = 9 r2 = 9/31 = 0.2903
X3 = (21*9) mod 32 = 29 r3 = 29/31 = 0.9354
X4 = (21*29) mod 32 = 1 r4 = 1/31 = 0.3225
X5 = (21*1) mod 32 = 21 r5 = 21/31 = 0.6774
X6 = (21*21) mod 32 = 25 r6 = 25/31 = 0.8064
X7 = (21*25) mod 32 = 13 r7 = 13/31 = 0.4193
X8 = (21*13) mod 32 = 17 r8 = 17/31 = 0.5483
Toda vez que la semilla X0 se repite, volverán a generarse los mismos
números. Por lo tanto, el periodo de vida es n =8, el cual corresponde a N=
m/4 = 32/4 = 8.
f) Algoritmo congruencial aditivo
Este algoritmo requiere una secuencia previa de n números enteros X 1,
X2, X3, X4,..., Xn para generar una nueva secuencia de números enteros que
empieza en Xn+1, Xn+2, Xn+3, Xn+4 ,…
Su ecuación recursiva es:
Xi = (Xi-1 + Xi-n) mod (m) i = n + 1, n + 2, n + 3,…, N
Los números ri pueden ser generados mediante la ecuación ri = xi/ (m-1)
Ejemplo
Generar 7 números pseudo aleatorios entre cero y uno a partir de la siguiente
secuencia de números enteros: 65, 89, 98, 03, 69; m = 100.
Sean X1 = 65, X2 = 89, X3 = 98, X4 = 03, X5 = 69. Para generar r1, r2, r3 r4,
r5, r6 y r7 antes es necesario generar X6, X7, X8, X9, X10, X11, X12.
Solución:
X6 = (X5 + X1) mod 100 = (60+ 65) mod 100 = 34 r1 = 34/99 = 0.3434
X7 = (X6 + X2) mod 100 = (34 + 89) mod 100 = 23 r2 = 23/99 = 0.2323
X8 = (X7 + X3) mod 100 = (23 + 98) mod 100 = 21 r3 = 21/99 = 0.2121
8. X9 = (X8 + X4) mod 100 = (21 +03) mod 100 = 24 r4 = 24/99 = 0.2424
X10 = (X9 +X5) mod 100 = (24 + 69) mod 100 = 93 r5 = 93/99 = 0.9393
X11 = (X10 +X6) mod 100 = (93 + 34) mod 100 = 27 r6 = 27/99 = 0.2727
X12 = (X11 +X7) mod 100 = (27 + 23) mod 100 = 50 r7 = 50/99 = 0.5050
g) Algoritmos congruenciales no lineales
En esta sección se analizarán dos algoritmos congruenciales no
lineales: el congruencial cuadrático y el algoritmo presentado por Blum,
Blum y Shub.
1. Algoritmo congruencial cuadrático
Este algoritmo tiene la siguiente ecuación recursiva:
Xi + 1 = (aX2i + bX¡ + c) mod (m) i = 0,1,2,3,…, N
En este caso, los números r. pueden ser generados con la ecuación r ¡ =
x¡-/(m - 1). De acuerdo con L'Ecuyer, las condiciones que deben cumplir los
parámetros m, a, b y c para alcanzar un periodo máximo de N = m son:
m = 2g
a, debe ser un número par
c, debe ser un número impar
g debe ser entero
(b- 1) mod 4 = 1
De esta manera se logra un periodo de vida máximo N = m.
Ejemplo
Generar, a partir del algoritmo congruencial cuadrático, suficientes
números enteros hasta alcanzar el periodo de vida, considerando los
parámetros X0 = 13, m = 8, a = 26, b = 27 y c = 27. Como todas las
condiciones estipuladas para los parámetros se satisfacen, es de esperarse que
el periodo de vida del generador sea N = m = 8, tal como podrá comprobar al
revisar los cálculos correspondientes, que se presentan a continuación.
Solución:
X1 = (26*1322 + 27*13 + 27) mod (8) = 4
X2 = (26*422 + 27*4 + 27) mod (8) = 7
X3 = (26*722 + 27*7 + 27) mod (8) = 2
X4 = (26*222 + 27*2 + 27) mod (8) = 1
X5 = (26*122 + 27*1 + 27) mod (8) = 0
X6 = (26*022 + 27*0 + 27) mod (8) = 3
X7 = (26*322 + 27*3 + 27) mod (8) = 6
9. X8 = (26*622 + 27*6 + 27) mod (8) = 5
X9 = (26*522 + 27*5 + 27) mod (8) = 4
Por otro lado, el algoritmo cuadrático genera una secuencia de
números enteros S = {0,1, 2,3..., m-1}, al igual que el algoritmo congruencial
lineal.
2. Algoritmo de Blum, Blum y Shub
Si en el algoritmo congruencial cuadrático a = 1, b = 0 y c = 0,
entonces se construye una nueva ecuación recursiva:
Xi+1= (X2i) mod (m) i = 0, 1, 2, 3,… n
La ecuación anterior fue propuesta por Blum, Blum y Shub como un
nuevo método para generar números que no tienen un comportamiento
predecible.
De un ejemplo utilizando un algoritmo de generación de números
pseudo aleatorios
Algoritmo de cuadrados medios
X0 = 2342 D = 4
Y0 = = 05484964 X1 = 4849 r1 = 0.4849
Y1 = = 23512801 X2 = 5128 r2 = 0.5128
Y2 = = 26296384 X3 = 2963 r3 = 0.2963
Y3 = = 08779369 X4 = 7793 r4 = 0.7793
Y4 = = 60730849 X5 = 7306 r5 = 0.7306
Y5 = = 53406864 X6 = 4068 r6 = 0.4068
Y6 = = 165448624 X7 = 5486 r7 = 0.5486
Y7 = = 30096196 X8 = 0961 r8 = 0.0961
Y8 = = 923521 X9 = 2352 r9 = 0.2352
Y9 = = 05531904 X10 = 5319 r10 = 0.5319
Y10 = = 28291761 X11 = 2917 r11 = 0.2917
Y11= = 08508889 X12 = 5088 r12 = 0.5088
Y12= = 25887744 X13 = 8877 r13 = 0.8877
Y13= = 78801129 X14 = 8011 r14 = 0.8011
Y14= = 64176121 X15 = 1761 r15 = 0.1761
Y15= = 03101121 X16 = 1011 r16 = 0.1011
Y16= = 01022121 X17 = 0221 r17 = 0.0221
Y17= = 048841 X18 = 4884 r18 = 0.4884
Y18= = 23853456 X19 = 8534 r19 = 0.8534
Y19= = 71132356 X20 = 1323 r20 = 0.1323
10. 4. ¿Qué propiedades deben cumplir los números pseudoaleatorios
entre cero y uno?
En gran medida, conocer las propiedades que deben tener los
números aleatorios garantiza una buena simulación, por ello se enumeran
a continuación.
Media de los números aleatorios entre cero y uno
En vista de que estos números deben de tener la misma
probabilidad de presentarse, es preciso que su comportamiento muestre
una distribución de probabilidad uniforme continua, con límite inferior
cero y límite superior uno. La función de densidad de una distribución
uniforme es la siguiente.
Para obtener la media de la distribución multiplicamos la función
de densidad por x, y la integramos en todo el rango de la distribución de
la siguiente manera:
∫
Sustituyendo los valores de a y b
Por lo tanto el valor esperado (es decir, la media de los números
aleatorios entre cero y uno) es
Varianza de los números aleatorios
Partiendo de la misma distribución uniforme continua obtenemos la
varianza de la distribución por medio de la ecuación
Lo que nos da
∫
11. Al sustituir tenemos que
Por lo tanto
( )
Dado estos resultados podemos decir que los números aleatorios
entre cero y uno deben tener
Independencia
Esta es una propiedad muy
importante, e indica que los
números aleatorios no deben tener
correlación entre sí; es decir, que
sean independientes, de manera que
puedan dispersarse uniformemente
dentro de un espectro de valores
posibles.
Los datos deben mostrar dispersión como en la figura.
Es posible realizar una serie de pruebas para corroborar que no
existe correlación ente los números aleatorios, e incluso para garantizar
que no existe un sesgo o tendencia entre los dígitos de cada uno de ellos.
13. Prueba de medias
̅ ∑
̅ ∑
Límites de aceptación inferiores y superiores
̅ ( ) ( )
√ √
̅ ( ) ( )
√ √
Con lo anterior podemos comprobar que el valor de la media del
conjunto de datos se encuentra dentro de los límites de aceptación, por lo
tanto se acepta la H0 que nos dice que el conjunto de números pseudo
aleatorios cumplen con la primer propiedad de tener una media de 0.5.
Prueba de varianza
̅
̅
∑ ̅
14. Dado que el valor de la varianza V(r)= se encuentra dentro de
los límites de aceptación, podemos decir que no se puede rechazar que el
conjunto de números tiene una varianza de 1/12.
Prueba de uniformidad
H 0: r i U (0,1)
H1: ri no son uniformes
Para comprobar si nuestro conjunto de datos se distribuyen
uniformemente en el intervalo (0, 1) procederemos a comprobarlo mediante la
prueba de Chi-Cuadrada, en la cual se debe calcular un estadístico de prueba
que posteriormente se va a comparar con un valor crítico utilizando la tabla
de la distribución Chi-cuadrada, si X20 < se acepta la H0.
Para llevar a cabo esta prueba, es necesario dividir el intervalo (0, 1) en
m subintervalos, en donde es recomendable m= √ posteriormente, se
clasifica cada número pseudo aleatorio del conjunto r i en los m intervalos. A
la cantidad de números ri que se clasifican en cada intervalo se le denomina
frecuencia observada (Oi), y a la cantidad de números ri que se espera
encontrar en cada intervalo se le llama frecuencia esperada (E i). A partir de
estos valores se calcula el estadístico de prueba:
X20 =∑ ( )2
15. Oi Ei =
(0.00 – 0.166) 6 5.6569 0.0209222
(0.166 – 0.33) 5 5.6569 0.0760848
(0.33 – 0.5) 5 5.6569 0.0760848
(0.5 – 0.666) 5 5.6569 0.0760848
(0.666 – 0.833) 5 5.6569 0.0760848
(0.833 – 1) 6 5.6569 0.0209222
0.3461838
El estadístico = 0.3461838 es menor al valor crítico
correspondiente de la chi-cuadrada , entonces no se puede
rechazar que el conjunto de números ri sigue una distribución uniforme.
Prueba de independencia
H0: los números de los conjuntos ri son independientes
H1: los números de los conjuntos ri no son independientes
Existen múltiples métodos que tratan de corroborar que si los números
en el intervalo (0, 1) son independientes o, en otras palabras sí parecen
pseudoaleatorios, a continuación se realizará la prueba de corridas arriba y
abajo. El procedimiento de esta prueba consiste en determinar una secuencia
de números (S) que sólo contiene unos y ceros, de acuerdo con una
comparación entre ri y ri-1, la cual se construye de la siguiente manera: se
coloca un cero si el número ri ≤ ri-1; en caso de ser mayor que el que número ri
anterior, se pone un uno. Posteriormente, se determina el número de corridas
observadas, Co la cual se identifica como la cantidad de unos o ceros
consecutivos. Además se necesita hacer los siguientes cálculos:
µCo =
=
Para aceptar o rechazar la hipótesis nula, es necesario hacer una
comparación entre el siguiente estadístico de prueba y el valor crítico,
si Z0< Zα/2 podemos concluir que los números generados corresponden a la
propiedad de ser independientes.
16. Z0 = [ ]
√
Se aplica la prueba de corridas arriba abajo al conjunto de 32 números
pseudo aleatorios generados anteriormente:
0.1935 0.1612 0.6451 0.6129 0.0645 0.0322 0.5161 0.4838
0.9677 0.9354 0.3870 0.3548 0.8387 0.8064 0.2850 0.2258
0.7096 0.6778 0.1290 0.0967 0.5806 0.5483 0 1
0.4516 0.4193 0.9032 0.8709 0.3225 0.2903 0.7741 0.7419
S = {0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0
0 1 0 0 0 1 0}
Co = 19
= = 21
= = 5.3666
Z0 = * + = - 0.8634
√
= = 1.96 entonces - 0.8634 es menor que 1.96 se concluye
que no se puede rechazar que los números del conjunto r i sean
independientes.
17. UNIDAD III
VARIABLES ALEATORIAS
1. ¿A qué se llama variable aleatoria y que tipos de variable aleatoria
existen?
El término variable significa valores inestables, pero decir que
una variable es aleatoria, se refiere a mediciones cuyos valores se
obtienen de algún tipo de experimento aleatorio. Los experimentos
aleatorios presentan un tratamiento matemático, en el cual se deben
cuantificar los resultados de modo que se asigne un número real a cada
uno de los resultados posibles del experimento.
Las variables aleatorias son aquellas que tienen un
comportamiento probabilístico de la realidad.
Tipos de variables que existen:
Variables Discretas
Son aquellas que presentan de modo inherente separaciones
entre valores observables sucesivos. Dicho de otra manera, se define
una variable discreta como la variable tal que entre dos cualesquiera
valores observables hay por lo menos un valor no observable. Por
ejemplo 3 y 4 son potencialmente observables, mientras que 3.5 no
lo es.
Las variables discretas son valores enteros que no presentan
continuidad o sea, existe una ruptura, por ejemplo, el número de
hijos.
Variables Continuas
Las variables continuas son aquella que puede tomar un valor
cualquiera para un determinado intervalo. Tienen la propiedad de
que entre dos cualesquiera valores observables, hay otro valor
observable.
En pocas palabras son números enteros y fraccionarios, por
ejemplo, el peso, la estatura.
18. 2. Determine el tipo de distribución a que pertenecen el conjunto de
datos del ejercicio 6 de la página 91 del libro Simulación y
Análisis de sistemas con Promodel con la herramienta Stat: :Fit.
Objetivo
Utilizar la herramienta Stat::Fit con la finalidad de determinar la
distribución de probabilidad a partir de un conjunto de datos.
Introducción
Stat::Fit permite comparar los resultados entre varias distribuciones
analizadas mediante una calificación. Entre sus procedimientos emplea las
pruebas estadísticas Chi-cuadrada, de Kolmogorov-Smirnov y de
Anderson-Darling.
Conjuntamente calcula los parámetros apropiados para cada tipo de
distribución, e incluye información estadística adicional como media,
moda, valor mínimo, valor máximo y varianza, entre otros datos.
Stat::Fit se puede ejecutar desde la pantalla de inicio de Promodel, o
bien desde el comando Stat::Fit del menú Tools.
Entrada de datos y manipulación
Tabla de Datos
Un nuevo proyecto se crea haciendo clic en el icono new document
en la barra de control o seleccionando File en la barra de menú
y luego New en el submenú, esta acción genera un nuevo documento de
Stat::Fit , y muestra una tabla vacía de datos.
19. Es en la tabla vacía donde se insertan uno por uno los datos del
ejemplo:
Opciones de entrada
Opciones de entrada de datos (Input options) permite establecer varias
opciones de manejo:
El número de intervalos para el histograma, la precisión con que los
datos se muestran y almacenan, y los tipos de distribución que se
permitirán. El cuadro de diálogo Opciones de entrada se ingresa haciendo
clic en el icono Input Options o mediante la selección Input de la barra
de menú y luego Options en el menú secundario.
Se aconseja que el número de intervalos se calcule con la raíz
cuadrada del total de datos, 10 para este ejemplo.
La precisión de los datos es el número de decimales que se muestran
en los datos de entrada y todos los cálculos posteriores. La precisión por
defecto es de 6 cifras decimales y se ajusta inicialmente. La precisión se
puede ajustar entre 0 y 15. Tenga en cuenta que la mayoría de los datos de
este ejemplo tiene un máximo de 5 dígitos por lo tanto es este valor que se
establecerá.
20. El tipo de distribución de análisis puede
ser continua o discreta. En general, todas las
distribuciones serán tratadas como cualquier
tipo de forma predeterminada. Sin embargo,
el análisis puede ser forzado a cualquiera de
las distribuciones continuas o distribuciones
discretas, marcando la casilla correspondiente
en el cuadro de diálogo Opciones de entrada.
Continua en este caso, clic en OK para
guardar las opciones registradas.
Un gráfico de los datos de
entrada se puede ver mediante la
selección de input de la barra de
menús y, a continuación input
graph desde el menú secundario, o
haciendo clic en el icono de gráfico
de entrada. Un histograma de los
datos se desplegara en pantalla.
Análisis estadístico
Estadística Descriptiva
La estadística descriptiva de los
datos de entrada se puede ver mediante
la selección de Statistics en la barra de
Menú y luego descriptive desde el
menú secundario. Se muestra la
siguiente ventana:
El comando de Estadística Descriptiva proporciona las
observaciones y los cálculos estadísticos básicos sobre los datos de entrada
y los presenta en una vista simple como se muestra arriba. El tiempo que
esta ventana este abierta, los cálculos se actualizarán a medida que los
datos de entrada cambien.
21. Ajuste de la Distribución
El ajuste automático de distribuciones continuas se puede realizar
mediante el comando Auto::Fit. Este comando sigue el mismo
procedimiento como se explica a continuación para el ajuste manual, pero
opta por la distribución adecuada de los datos de entrada. También califica
las distribuciones de acuerdo con su relativa bondad de ajuste, y da una
indicación de su aceptación como buenas representaciones de los datos de
entrada.
En el ajuste manual de las distribuciones de análisis de los datos de
entrada en la tabla de datos, las distribuciones adecuadas de los datos de
entrada deben ser elegidas en la configuración del ajuste (setup) junto con
las pruebas de bondad de ajuste deseadas.
Comience el proceso de
ajuste de la distribución
mediante la selección de Fit en
la barra de menú y luego de
setup desde el menú
secundario, o haciendo clic en
el icono de setup apropiado.
La página de distribuciones del cuadro de diálogo Configuración de
ajuste proporciona una lista de distribuciones para la elección de la
distribución para el ajuste posterior. Todas las distribuciones elegidas aquí
se utilizarán de forma secuencial para las estimaciones y pruebas de
bondad de ajuste.
Después de seleccionar las distribuciones, vaya a la siguiente
pestaña del cuadro de diálogo para seleccionar los cálculos a realizar.
Las estimaciones pueden ser obtenidas en momentos o cálculos de
probabilidad máxima (MLEs). El valor predeterminado para el cálculo es
MLE.
22. Para distribuciones continuas con un límite inferior o mínimo como
la exponencial, el límite inferior puede ser obligado a asumir un valor
igual o inferior al valor mínimo
de datos. Este límite inferior se
utilizará tanto para los
momentos y las estimaciones de
máxima verosimilitud. De
forma predeterminada, se deja
desconocido, esto causa que
todos los procedimientos de
estimación varíen el límite
inferior con el resto de los
parámetros.
Pruebas de bondad de ajuste
Las pruebas de bondad de ajuste no son más que las comparaciones
de los datos de entrada a las distribuciones ajustadas de una manera
estadísticamente significativa. Cada prueba tiene la hipótesis de que el
ajuste es bueno y calcula un estadístico de prueba para la comparación con
un estándar. Las pruebas de bondad de ajuste son:
• Chi-cuadrada
• Kolmogorov Smirnov
• Anderson Darling
Si la elección de la prueba es incierto, utilice el test de Kolmogorov
Smirnov, que es aplicable a la gama más amplia de datos y parámetros
ajustados.
Auto::Fit
El ajuste automático distribuciones
continuas se puede realizar haciendo clic en el
icono Auto::Fit o mediante la selección de Fit
de la barra de Menú y luego Auto::Fit en el
submenú.
23. Este comando sigue el mismo procedimiento como se mencionó
anteriormente para el ajuste manual. Auto::Fit elegirá automáticamente
distribuciones continuas adecuadas para adaptarse a los datos de entrada,
calcular las estimaciones de probabilidad máxima para las distribuciones,
los resultados de la prueba de bondad de ajuste, y mostrar la distribución
por orden de su calificación relativa. La calificación relativa se determina
por un método empírico que utiliza efectivos cálculos de la bondad de
ajuste. Una calificación alta indica que la distribución ajustada es una
buena representación de los datos de entrada.
La distribución Normal con media 18.7 y desviación estándar 4.11
consigue una calificación de 100, por lo cual se acepta que esta es la
indicada para seleccionar que los datos del ejemplo siguen esta
distribución.
Gráficos
Un gráfico de la densidad de los datos de entrada y la densidad
ajustada pueden ser vistos seleccionando Fit de la barra de menús y, a
continuación Result Graphs, submenú Density, también se puede acceder
a las gráficas haciendo clic sobre la distribución en la ventana Automatic
Fitting. Este gráfico muestra un histograma de los datos de entrada
cubierto de las densidades ajustadas para distribuciones específicas.
El gráfico aparecerá con la configuración por defecto de los datos de
entrada en un histograma azul y los datos ajustados en un polígono de
color rojo, como se muestra a continuación.
24. La distribución ajustada se muestra en el cuadro inferior de la
derecha. Si ha seleccionado más de una distribución para ajustar, una lista
de las distribuciones se da en el cuadro superior de la derecha. Seleccione
distribuciones adicionales para mostrarlas, para compararlas, haciendo clic
en el nombre de la distribuciones en el cuadro superior. Habrá una
leyenda en la parte inferior de la gráfica, como se muestra a continuación:
Se puede observar que la distribución Lognormal traslapa a la
distribución Normal, dada la semejanza con esta última, y que obtuvo una
calificación de 99.9. La distribución Uniforme es la que menos se ajusta
pues los datos evidentemente no siguen esta tendencia.
25. 3. Mediante un ejemplo genere una variable aleatoria usando el
método de la transformada inversa.
a) Usando distribución exponencial
El método de la transformada inversa puede utilizarse para simular
variables aleatorias continuas, lo cual se logra mediante la función
acumulada f(x) y la generación de números pseudo aleatorios r i U (0, 1).
El método consiste en desarrollar los siguientes pasos:
1. Definir la función de densidad F(x) que represente la variable a
modelar:
F(x) = λe-λx para x≥ 0
2. Calcular la función acumulada F(x):
F(x) = ∫ dx = 1-e-λx para x≥ 0
3. Despejar la variable aleatoria x y obtener la función acumulada inversa
F(x)-1
Despeje de la variable aleatoria: Xi = - ln (1-ri)
Función acumulada inversa: Xi= -λLn (1-ri)
4. Generar las variables aleatorias x, sustituyendo los valores con
números pseudo aleatorios ri U (0, 1) en la función acumulada
inversa.
El tiempo, en minutos, que un alumno usa una terminal de cómputo en una
importante universidad sigue una distribución exponencial de probabilidad, con
promedio de 36 minutos.
Xi= -36Ln (1-ri)
Alumno ri Tiempo Alumno ri Tiempo
1 0.4849 23.882192 11 0.2917 12.4159517
2 0.5128 25.8869003 12 0.5088 25.5925405
3 0.2963 12.6505134 13 0.8877 78.716931
4 0.7793 54.3942348 14 0.8011 58.1383114
5 0.7306 47.2160885 15 0.1761 6.97342016
6 0.4068 18.8000521 16 0.1011 3.83700547
7 0.5486 28.6344509 17 0.0221 0.80452309
8 0.0961 3.63731559 18 0.4884 24.1276395
9 0.2352 9.65307302 19 0.8534 69.1217096
10 0.5319 27.3266399 20 0.1323 5.10873286
26. a) Usando la distribución de Bernoulli
El método de la transformada inversa también se emplea para
simular variables aleatorias de tipo discretas. El método consiste en:
1. Calcular todos los valores de la distribución de probabilidad p(x) de
la variable a modelar.
2. p(x)= px (1-p) 1-x para x=0, 1
Se calculan las probabilidades para x=0 y x=1, para obtener:
x 0 1
p(x) 1-p p
3. Calcular todos los valores de la distribución acumulada P(x).
x 0 1
P(x) 1-p 1
4. Generar números pseudo aleatorios ri U (0, 1).
5. Comparar con el valor de P(x) y determinar qué valor de x
corresponde a P(x).
Si ri (0, 1 –p) x=0
Xi =
Si ri (1 –p, 1) x=1
La probabilidad de que un prospecto elegido al azar realice una compra a un agente
de ventas es 0.20 (x=1) y de 0.8 de que no compre (x=0) en un dia determinado.
p(x)= (0.2)x (0.8) 1-x para x=0, 1
Cálculo de probabilidades puntuales y acumuladas para x=0 y x=1.
X 0 1
p(x) 0.8 0.2
P(x) 0.8 1
27. Si ri (0 – 0.8) x=0
Xi =
Si ri (0.8 - 1) x=1
Si el número pseudo aleatorio es menor que 0.8, no hay compra.
Si el número pseudo aleatorio es mayor que 0.8, si hay compra.
Persona ri Xi Evento: Compra
1 0.1935 0 No
2 0.1612 0 No
3 0.6451 0 No
4 0.6129 0 No
5 0.0645 0 No
6 0.0322 0 No
7 0.5161 0 No
8 0.4838 0 No
9 0.9677 1 Si
10 0.9354 1 Si
11 0.387 0 No
12 0.3548 0 No
13 0.8387 1 Si
14 0.8064 1 Si
15 0.285 0 No
16 0.2258 0 No
17 0.7096 0 No
18 0.6774 0 No
19 0.129 0 No
20 0.0967 0 No
21 0.5806 0 No
22 0.5483 0 No
23 0 0 No
24 1 1 Si
25 0.4516 0 No
26 0.4193 0 No
27 0.9032 1 Si
28 0.8709 1 Si
29 0.3225 0 No
30 0.2903 0 No
31 0.7741 0 No
32 0.7419 0 No
28. Instituto Tecnológico de Reynosa
Ingeniería Industrial
6to semestre
Simulación
MII. José María González Rodríguez
UNIDAD II: Números Aleatorios y Pseudo aleatorios
UNIDAD III: Variables Aleatorias
Abasolo Melchor Alberto
Carranza García Alberto de Jesús
De Luna Pérez Nancy Yadira
Hernández Martínez Diana Celeste
Medrano Meza Erick Roberto
Reynosa, Tamps, 09 de Mayo de 2011