Está en la página 1de 23

Instituto tecnológico de Tepic

Simulación
Ing. Guerrero Medina Manuel

Investigación unidad 2
Simulación de variables aleatorias

Hora de clase: 10.00 am a 11:00 pm


Fecha de entrega: 27 junio 2017

Alumna:
Nelly de Jesús Rodríguez Herrera
No. De control: 16400864
Carrera: Ingeniería Industrial

Nelly de Jesús Rodríguez Herrera 1


Temas de la unidad
2.1 Producción de números con comportamiento estadístico aleatorio y
uniforme en [0,1] .......................................................................................... 3
2.1.1 Uso del generador incluido en la hoja de cálculo. ..................... 4
2.1.2 Teoría: métodos congruenciales ................................................. 4
2.2 Simulación de otras variables aleatorias ............................................. 7
2.2.1 Teoría: transformación inversa, composición, convolución y otros
procedimientos........................................................................................... 17
2.2.2 Funciones inversas de hoja de cálculo, utilizables como
simuladores ................................................................................................ 22
2.3 Simulación de variables especiales: tablas ....................................... 22

Nelly de Jesús Rodríguez Herrera 2


2.1 Producción de números con comportamiento estadístico aleatorio y
uniforme en [0,1]
En simulación, para poder realizar las corridas de los sistemas o generar los
modelos se necesita de variables aleatorias, que a su vez requieren de números
pseudoaleatorios. Un número pseudoaleatorio es un número U (0,1) producido por
un algoritmo matemático.
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.
Y otras características son que 𝜇 = 1/2, 𝛿 2 = 1/12 y debe existir
𝐼𝑛𝑑𝑒𝑝𝑒𝑛𝑑𝑒𝑛𝑐𝑖𝑎 𝑒𝑛𝑡𝑟𝑒 𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒𝑠.

A los conjuntos de números pseudoaleatorios también se les conoce como ri y se


pueden generar mediante distintos métodos, además de que para ser
representativos se les aplican distintas pruebas estadísticas como:
 Prueba de medias
 Prueba de varianza
 Pruebas de uniformidad
o Chi-cuadrada
o Kolmogorov-Smirnov
 Pruebas de independencia
o Corridas arriba y abajo
o Corridas arriba y debajo de la media
o Prueba póker
o Prueba de series
o Prueba de huecos

Nelly de Jesús Rodríguez Herrera 3


2.1.1 Uso del generador incluido en la hoja de cálculo
La función ALEATORIO() de Excel
Las hojas de cálculo como Excel (y cualquier lenguaje de programación estándar)
son capaces de generar números pseudo-aleatorios provenientes de una
distribución uniforme entre el 0 y el 1. Este tipo de números pseudo-aleatorios son
los elementos básicos a partir de los cuales se desarrolla cualquier simulación por
ordenador. En Excel, es posible obtener un número pseudo-aleatorio -proveniente
de una distribución uniforme entre el 0 y el 1- usando la función ALEATORIO:
Los números generados mediante la función ALEATORIO tienen dos propiedades
que los hacen equiparables a números completamente aleatorios:
1. Cada vez que se usa la función ALEATORIO, cualquier número real entre 0
y 1 tiene la misma probabilidad de ser generado (de ahí el nombre de
distribución uniforme).
2. Los diferentes números generados son estadísticamente independientes
unos de otros (es decir, el valor del número generado en un momento dado
no depende de los generados con anterioridad).
La función ALEATORIO es una función volátil de Excel. Esto significa que cada vez
que pulsamos la tecla F9 o cambiemos alguno de los inputs del modelo, todas las
celdas donde aparezca la función ALEATORIO serán recalculadas de forma
automática.
2.1.2 Teoría: métodos congruenciales
Algunos de los métodos utilizados para la generación de los números aleatorios
son:
Algoritmo de cuadrados medios:
 Inicie con un número entero positivo de 4 (2n) dígitos y llámele Z 0 (X0),
llamado semilla.
 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.
 Tome los 4 (2n) dígitos centrales como el próximo número de 4 (2n) dígitos
y llámele Z1(X1).
 Coloque el punto decimal a la izquierda de Z1(X1) para obtener el primer
número pseudoaleatorio U(0,1).
 Continué generando de esta forma números pseudoaleatorios U(0,1)

Algoritmo de productos medios:

 Seleccionar semilla (Xo) con D dígitos (D>3)

Nelly de Jesús Rodríguez Herrera 4


 Seleccionar una semilla (X1) con D dígitos (D>3)
 Sea Y0=X0*X1 Sea X2 los D dígitos del centro y sea ri=.0 D dígitos del centro.
 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 i=1,2,3,…n.
 Seguir generando números aleatorios.

Algoritmo de multiplicador constante:


 Selecciona una semilla (X0) con D dígitos (D > 3).
 Seleccionar una constante (a) con D dígitos (D > 3).
 Sea Y0 = a * X0; sea X1 = los D dígitos del centro y sea r1 = 0.D dígitos del
centro.
 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.
 Repetir el paso 4 hasta obtener los n números ir deseados.

Algoritmo lineal:
Este algoritmo genera una secuencia de números enteros por medio de la
ecuación
𝑋𝑖 + 1 = (𝑎𝑋𝑖 + 𝑐)𝑚𝑜𝑑(𝑚) 𝑖 = 0,1,2,3, … , 𝑛
Donde:
 Xo>0, semilla
 a=1+4k, constante multiplicativa, k debe ser entero
 c primo a m, constante aditiva
 m=2^g es el modulo, donde g es un entero
A partir de los enteros generados por la ecuación anterior, para obtener los
números pseudoaleatorios (0,1) se usa la ecuación
𝑋𝑖
𝑟𝑖 = 𝑖 = 0,1,2,3, … , 𝑛
𝑚−1

Algoritmo congruencial multiplicativo:


𝑋𝑖 + 1 = (𝑎𝑋𝑖)𝑚𝑜𝑑(𝑚) 𝑖 = 0,1,2,3, … , 𝑛
Donde:
 Xo debe ser un número impar
 a=3+8k, constante multiplicativa, k= 0, 1, 2, 3,…
 m=2^g es el modulo, donde g es un entero
Nelly de Jesús Rodríguez Herrera 5
𝑋𝑖
𝑟𝑖 = 𝑖 = 0,1,2,3, … , 𝑛
𝑚−1

Algoritmo congruencial aditivo:


𝑋𝑖 = (𝑋𝑖−1 + 𝑋𝑖−𝑛 )𝑚𝑜𝑑(𝑚) 𝑖 = 𝑛 + 1, 𝑛 + 2, 𝑛 + 3, … , 𝑁
Para este algoritmo se requiere tener una secuencia previa de n número enteros
𝑋1, 𝑋2, 𝑋3… y para obtener los números pseudoaleatorios se usa:
𝑋𝑖
𝑟𝑖 = 𝑖 = 0,1,2,3, … , 𝑛
𝑚−1

Algoritmo congruencial cuadrático


𝑋𝑖 + 1 = (𝑎𝑋𝑖 2 + 𝑏𝑋𝑖 + 𝑐)𝑚𝑜𝑑(𝑚) 𝑖 = 0,1,2,3, … , 𝑁
Donde:
 a debe ser un número par
 c debe ser un número impar
 m=2^g , g es un entero
𝑋𝑖
𝑟𝑖 = 𝑖 = 0,1,2,3, … , 𝑛
𝑚−1
Algoritmo de Blum y Shub

𝑋𝑖 + 1 = (𝑋𝑖 2 )𝑚𝑜𝑑(𝑚) 𝑖 = 0,1,2,3, … , 𝑛


𝑋𝑖
𝑟𝑖 = 𝑖 = 0,1,2,3, … , 𝑛
𝑚−1

Nelly de Jesús Rodríguez Herrera 6


2.2 Simulación de otras variables aleatorias
La generación de variables aleatorias es un proceso que enfrenta la simulación
debido a que cuenta con variables con un comportamiento probabilístico. En donde
dicha variabilidad se pudiera clasificar dentro de alguna distribución de probabilidad
conocida.
Las distribuciones de probabilidad pueden ser discretas o continuas, en donde las
distribuciones discretas, la aleatoriedad de la variable sólo puede tomar valores
enteros. Las distribuciones más utilizadas son: Bernoulli, Uniforme, binomial,
Poisson, geométrica. En cambio las distribuciones continuas modelan la
aleatoriedad en eventos en los cuales los valores de las variables pueden estar
dentro de un rango de valores reales. Las funciones continuas más utilizadas son:
uniforme, exponencial, Weibull, triangular, y la normal.
Una variable aleatoria es una variable cuyo valor depende del resultado de un
experimento aleatorio. Las variables aleatorias discretas toman un conjunto de
valores finitos, los cuales son enteros no negativos (usualmente utilizados para
conteo). La distribución de probabilidad es un conjunto de probabilidades para los
posibles distintos sucesos o eventos que pueden darse en un experimento aleatorio.
Es decir nos proporciona cómo distribuir la probabilidad entre los sucesos que
pueden producirse. Existe un gran número de distribuciones de probabilidad para
variables aleatorias que únicamente tiene valores enteros no negativos. Las
distribuciones discretas de probabilidad son útiles cuando se usan procesos de
conteo en muestras aleatorias.

Nelly de Jesús Rodríguez Herrera 7


Variables aleatorias discretas

Nelly de Jesús Rodríguez Herrera 8


Nelly de Jesús Rodríguez Herrera 9
Nelly de Jesús Rodríguez Herrera 10
Nelly de Jesús Rodríguez Herrera 11
Nelly de Jesús Rodríguez Herrera 12
Variables aleatorias continuas

Nelly de Jesús Rodríguez Herrera 13


Nelly de Jesús Rodríguez Herrera 14
Nelly de Jesús Rodríguez Herrera 15
Nelly de Jesús Rodríguez Herrera 16
2.2.1 Teoría: transformación inversa, composición, convolución y otros
procedimientos
Un modelo de simulación involucra variables aleatorias, las cuales siguen
distribuciones de probabilidad teóricas o empíricas. Para simular las variables se
requiere de algunos procedimientos que transformen las variables a la distribución
de probabilidad que deseemos usar. Algunos de estos métodos son:

 Método de la transformada inversa


La transformada inversa en un método que usa la distribución acumulada F(x) de la
distribución que se desea simular (variables aleatorias continuas). La función F(x)
se encuentra en el intervalo de cero a uno, y es posible generar un número
pseudoaleatorio R y tratar de determinar el valor de la variable aleatoria para la cual
su distribución acumulada es igual a R. Se determina al resolver la siguiente
ecuación:
𝐹(𝑥) = 𝑅
𝑥 = 𝐹 −1 (𝑅)
Su método como tal, consiste en:
1. Definir la función de densidad F(x) que represente la variable a modelar.
2. Calcular la función acumulada F(x).
3. Despejar la variable aleatoria x y obtener la función acumulada inversa
𝐹(𝑥)−1.
4. Generar variables aleatorias x, sustituyendo valores con números
pseudoaleatorios en la función acumulada inversa.
Este método puede usarse también para simular variables aleatorias discretas como
en las distribuciones de Poisson, Bernoulli, binomial, geométrica, etc. La generación
se lleva a cabo mediante la probabilidad acumulada P(x). El método cambia a:
1. Calcular todos los valores de la distribución de probabilidad p(x) de la variable
a modelar.
2. Calcular todos los valores de la distribución acumulada P(x).
3. Generar números pseudoaleatorios
4. Comparar con el valor de P(x) y determinar qué valor de x corresponde a
P(x).

Nelly de Jesús Rodríguez Herrera 17


 Método de convolución
En algunas distribuciones de probabilidad la variable a simular, Y, puede generarse
mediante la suma de otras variables aleatorias X de manera más rápida que a través
de otros métodos. Entonces el método de convolución se puede expresar como:
𝑌 = 𝑋1 + 𝑋2 + ⋯ + 𝑋𝑘
Las variables aleatorias de Erlang, normal, binomial y Poisson pueden generarse a
través de éste método.
Erlang
La variable aleatoria k.Eerlang con media 1/λ puede producirse a través de la
generación de k variables exponenciales con media 1/kλ:
𝑌 = 𝑋1 + 𝑋2 + ⋯ + 𝑋𝑘

Distribución normal
La variable aletoria normal con media µ y desviación estándar σ puede generarse
mediante el teorema de límite central:
𝑌 = 𝑋1 + 𝑋2 + ⋯ + 𝑋𝑘
Al sustituir Xi por números pseudoaleatorios se obtiene:

Despejando Xi se tiene:𝑥 = 𝑁𝑖 = [∑12


𝑖=1(𝑟𝑖) − 6 (σ) + µ]

Nelly de Jesús Rodríguez Herrera 18


Distribución binomial
Las variables pueden ser generadas a través de la suma de N variables aleatorias
con distribución de Bernoulli con parámetro p.
𝑌 = 𝐵𝑗 = 𝐵𝐸1 + 𝐵𝐸2 + ⋯ + 𝐵𝐸𝑁

 Método de composición
El método de composición permite generar variables aleatorias x cuando éstas
provienen de una función de densidad f(x) que puede expresarse como la
combinación convexa de m distribuciones de probabilidad fi(x).
La combinación convexa puede expresarse como:
𝑚

𝑓(𝑥) = ∑ 𝑓𝑖(𝑥)𝐼𝑎(𝑥)
𝑖=1

Donde
Ia (x)= 1 si x E A
Ia (x)= 0 si x no E A
Las distribuciones más usadas en éste método son la triangular, la de Laplace y la
trapezoidal. El procedimiento general de la generación es:
1. Calcular la probabilidad de cada una de las funciones f(x).
2. Asegurarse que cada función f(x) se función de densidad.
3. Obtener mediante el método de la transformada inversa, expresiones para
generar variables aleatorias de cada una de las distribuciones.
4. Generar un número pseudoaleatorio ri.
5. Seleccionar la función generadora correspondiente a f(x).
6. Generar un segundo número pseudoaleatorio ri y sustituirlo en la función
generadora para obtener Y.
Distribución triangular
A partir de la función triangular

Calcular la probabilidad de cada uno de los segmentos de la función

Nelly de Jesús Rodríguez Herrera 19


Ajustar a funciones de densidad

Expresar función como combinación convexa

Aplicar el método de la transformada inversa

Despejar x y sustituir ri en F(x)

Expresar la ecuación con la función indicadora

Nelly de Jesús Rodríguez Herrera 20


 Método de transformación directa
Se basa en el teorema de Pitágoras y se usa para generar variables aleatorias
normales.

La suma de v variables aleatorias normales estándar sigue una distribución Chi-


cuadrada con v grados de libertad

La función de densidad de una variable aleatoria chi-cuadrada con 2 grados de


libertad es la misma de una distribución exponencial con media igual a dos. Por lo
que con la ecuación obtenida por la transformada inversa y sustituyéndola con la
ecuación anterior, queda:

Se generan variables aleatorias uniforme del ángulo entre o y 2pi mediante el


método de la transformada inversa.

Sustituyendo

Para cualquier variable aleatoria N

Al despejar N y sustituir el valor de z obtenido previamente:

Nelly de Jesús Rodríguez Herrera 21


2.2.2 Funciones inversas de hoja de cálculo, utilizables como
simuladores

Construcción de funciones en Excel mediante VBA


Dado que en determinadas simulaciones las variables a simular no siguen ninguna de
las distribuciones que incorporan las aplicaciones de hoja de cálculo, se debe proceder
a su simulación. Básicamente, existen dos posibilidades:
• Realización manual de los cálculos necesarios en la propia hoja de
cálculo.
• Programación de la función adecuada mediante VBA.
La primera de las técnicas puede suponer el problema de que existan cálculos
intermedios que es necesario realizar para obtener el valor final. En este caso, para cada
tirada aleatoria habría que recalcular la simulación y guardarla mediante macros en una
tabla, en la cual se vería solamente el valor obtenido. Adicionalmente, en el caso de que
se necesitara efectuar otra simulación mediante la misma distribución de probabilidades
se deberían rehacer los cálculos nuevamente. Por otra parte, esta posibilidad tiene como
ventaja que no precisa conocimiento alguno en programación para poder efectuarla.
La segunda técnica, que implica conocer programación en Visual Basic para
Aplicaciones (VBA), plantea la ventaja de que mediante una función que se añade a la
hoja de cálculo como cualquier otra función de las que trae incorporadas la propia
aplicación, puede ser llamada tantas veces como sea necesario y en tantas celdas como
sea preciso simular sin ninguna limitación. Adicionalmente, se puede proteger su
contenido para que no sea visible por el usuario de forma que éste sólo tenga que
conocer la sintaxis de la función para su utilización. De esta forma, también, se evitan
manipulaciones que puedan arrojar resultados incorrectos.

2.3 Simulación de variables especiales: tablas


Existen diferentes tipos de métodos para generar variables aleatorias, pero también
existen casos especiales para generar estas los cuales son:
La distribución de Poisson parte de la distribución binomial:
Cuando en una distribución binomial se realiza el experimento un número "n" muy
elevado de veces y la probabilidad de éxito "p" en cada ensayo es reducida, entonces se
aplica el modelo de distribución de Poisson:
Se tiene que cumplir que:
 " p " < 0,10
 " p * n " < 10
Nelly de Jesús Rodríguez Herrera 22
La distribución de Poisson sigue el siguiente modelo:

Fuentes bibliográficas
http://www.cyta.com.ar/biblioteca/bddoc/bdlibros/monte_carlo/monte_carlo.htm

http://simulacion-itstb.blogspot.com/p/unidad-dos-numeros-aleatorios-y.html

https://www.academia.edu/7207310/Librodesimulacion?auto

https://www.researchgate.net/profile/Soledad_Maria_Maria-
Dolores/publication/26440880_Aplicacion_de_la_simulacion_con_hoja_de_calculo_a_la_teoria_d
e_colas/links/55a77e8508ae0b4e87122481.pdf

Simulación y análisis de sistemas con PRO MODEL 2da Edición, Pearson

Nelly de Jesús Rodríguez Herrera 23

También podría gustarte