Generación de procesos

Anuncio
4
1
GENERACION DE PROCESOS
Introducción
Hasta el presente sólo hemos estudiado la generación de variables aleatorias distribuidas uniformemente en el
intervalo ( 0,1 ), llamadas “números aleatorios”. Sin embargo, en cualquier experimento de simulación no sólo
se necesitan variables en el intervalo ( 0,1 ) sino que principalmente estamos interesados en analizar otros
procesos que no están descritos por estas variables. Por ejemplo, si estamos interesados en estudiar la forma
como se comporta el inventario de un artículo, necesitamos generar la demanda de ese artículo durante cierto
tiempo, es decir, debemos asignar valores +a la variable aleatoria que nos describe esa demanda. Si esa
demanda está modelada por una distribución de Poisson, entonces debemos generar valores de la
distribución de Poisson. Esos valores se generan mediante el uso de los números aleatorios, generados antes.
Si estuviéramos interesados en estudiar políticas sobre reemplazamiento de equipos, tal vez necesitemos
generar valores de la distribución exponencial. Resumiendo, el interés no se centra en la generación de
números aleatorios en sí, sino que va más allá. El interés está en la generación de las variables aleatorias,
además de la uniforme ( 0,1 ) que nos describen el proceso de interés. Al generar los valores de las variables
aleatorias que describen un proceso, lo que realmente estamos haciendo es un “muestreo artificial”, el cual
nos suministra la información necesaria para analizar más a fondo el proceso, información que sería
sumamente costosa o imposible de conseguir en la práctica
2
METODOS GENERALES
Actualmente existen varios métodos generales para generar variables aleatorias. Los más comunes son:
•
•
•
El método de la transformación inversa
El método del rechazo y
Método de composición
El método más conocido es el de la transformación inversa. El método del rechazo tiene su mayor aplicación
en la solución de problemas determinísticos.
2.1
2.1.1
Método de la transformación inversa.
Caso continuo.
El método de la transformación inversa para generar variables aleatorias se basa en la función de distribución
de la variable de interés.
Si X es una variable aleatoria continua con función de densidad dada por f(x), la función de distribución de X,
denotada por F(x) está dada por:
X
F(x) = P r ( X ≤ x ) =
∫ f( x)dx
−α
El rango de la función de distribución F(x) es entre cero y uno, lo mismo que el rango de los números
aleatorios. Es decir :
0 ≤ F(x) ≤ 1,
0≤r<1
Si R es un número aleatorio, sus funciones de densidad y de distribución están dada por:
f(r) =
0≤r<1
1
r
F(r) =
P(R≤r)=
r
∫ f ( t)dt = ∫ dt = r
R
0
(1)
0
Ahora, la probabilidad de que un número aleatorio R sea menor o igual que F(x) está dada por:
P r [ R ≤ F(x) ] = F(x)),
0 ≤ F(x) ≤ 1
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4-2
Por lo tanto : P ( X ≤ x ) = F(x) ⇒ r = P ( R ≤ F(x))
Es decir las variables F(x) y R están idénticamente distribuidas, siempre y cuando R esté uniformemente
distribuida en el intervalo ( 0,1 ).
En el método de transformación inversa se generan números aleatorios en el intervalo ( 0,1 ) y se hacen
iguales a la función de distribución de la variable aleatoria X, es decir :
R = F(x) → X = F-1 (R)
F(x)
R
El valor de la función inversa F-1 (R)
de R es el valor generado de la
variable aleatoria de interés.
r
El valor de X se puede obtener
gráficamente, como lo indica la figura 5.1
x’
X
Figura 4.1
Dado que 0 ≤ F(x) ≤ 1, y F(x) es continua y ascendente, es claro que existe entre R y F(x) una relación
unívoca.
R ←→ FX (x)
Ejemplo 4.1. Desarrolle un generador del proceso descrito por una variable aleatoria X con función de
densidad uniforme entre a y b.
Solución : (Ver numeral 3.1)
r = F ( x) =
x−a
⇒
b−a
x = a + (b - a ) r.
Así, para generar una variable aleatoria uniforme basta con generar un número aleatorio.
Ejemplo 4.2. Desarrolle un generador del proceso descrito por la variable aleatoria X cuya función de
densidad es exponencial con parámetro “a”.
Solución :(Ver numeral 3.2)
r = F( x) = 1 − e − ax ⇒ 1 − r = e − ax ⇒ x = −
1
a
Ln(1 − r )
Como la distribución uniforme es simétrica y dado que R y 1 - R tienen la misma distribución (tienen los
mismos momentos), entonces en vez de usar 1-r podemos emplear r. Por lo tanto, la distribución exponencial
puede generarse mediante la siguiente expresión
x=−
1
a
Ln( r )
Ejemplo 4.3. Desarrolle un generador del proceso descrito por la variable aleatoria X cuya función de
densidad está dada por :
0≤ x<2
2≤ x<3
1 / 6

f(x) = 1 / 3
1 / 12

3≤ x<7
Solución: Lo primero que debemos hacer es construir la función de distribución F(x). Esta función debe
construirse en forma separada para cada intervalo, de la siguiente forma:
F(x) = P ( X ≤ x ) =
1)
X
0
X
X
−α
−α
0
0
∫ f( x)dx = ∫ f( x)dx + ∫ f( x)dx = ∫ f( x)dx
Para 0 ≤ x ≤ 2, se tiene:
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
X
F1 (x) =
1
∫ 6 dx = x / 6 → F
1
4-3
(2) = 1/3, → 0 ≤ F1 (x) < 1/3
0
Para 2 ≤ x ≤ 3, se tiene:
2)
F2 (x) =
X
2
X
0
0
2
1
∫ f ( x)dx = ∫ f ( x)dx + ∫ f ( x)dx = 1 / 3 + ∫ 3 dx = 1 / 3 + x / 3 − 2 / 3
F2 (x) = x/3 - 1/3 → F2 (3) = 2/3,
3)
X
2
para 2 ≤ x ≤ 3, 1/3 ≤ F(x) < 2/3
Para 3 ≤ x ≤ 7, se tiene:
3
X
X

1
dx = 2 / 3 + x / 12  = 2 / 3 + x / 12 − 3 / 12 = ( x + 5) / 12 →
F3 (x) = f ( x) dx +
12
3
0
3
∫
∫
F2 (7) = 1, → para 3 ≤ x ≤ 7,
2/3 ≤ F(x) < 1
Resumiendo se tiene:
x / 6
F(x) = 
( x − 1) / 3
( x + 5) / 12

0 ≤ x ≤ 2,
0 ≤ F(x) < 1 / 3
2 ≤ x ≤ 3,
3 ≤ x ≤ 7,
1 / 3 ≤ F(x) < 2 / 3
2 / 3 ≤ F(x) < 1
El procedimiento para generar una variable aleatoria se expresará entonces como sigue :
Se genera un número aleatorio r y se iguala a la función de distribución F(x). Sin embargo, debe tenerse en
cuenta el rango en que queda r, así:
•
•
•
Si 0 ≤ r < 1/3 ⇒ F(x) = x/6 = r → x = 6r
Si 1/3 ≤ r < 2/3 ⇒ F(x) = ( x - 1 )/3 = r → x = 3r + 1
Si 2/3 ≤ r < 1 ⇒ F(x) = ( x + 5 )/12 = r → x = 12r - 5
El procedimiento anterior se puede explicar gráficamente como lo indican las figuras 4.1 y 4.2 de la página
siguiente.
Figuras 4.2 y 4.3 Ejemplo del método de la Transformación Inversa. Caso Continuo
f(x)
1/3
F(x)
1
1/6
2/3
1/12
1/3
0
0
0
1
2
3 4 5
Figura 4.2
6
7
8
0
1
2
3 4 5
Figura 4.3
6
7
8
Ejemplo 4.4. Considere la distribución triangular. Una variable aleatoria sigue una distribución triangular si su
función de densidad está dada por:
c( x − a),
F(x) = 
c(b − x),
a≤ x<
a+b
2
a+b
≤x<b
2
f(x)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
donde
c=
4
(b − a)2
a
m
b x
Figura 4.4 Distribución Triangular
La función de distribución está dada por :
1) Para a ≤ x ≤
a+b
2
X
F(x) =
∫
c( x − a) 2
 a + b c  b − c 
→ F

= 
 2  2 2 
2
c( x − a)dx =
a
2)
4-4
Para
2
a+b
≤ x < b, la función de distribución toma la siguiente forma:
2
2
c  b − a
F(x) = 
 +
2 2 
X
X
2
c  b − a
c
2 
c(b − x)dx = 
 − (b − x) 
2 2 
2
 a+b
c +b
∫
2
2
2
2
2
c  b − a
c
c
a + b
c
 b − a
2
2
F(x) = 
 − (b − x) +  b −
 = c
 − (b − x)






2
2
2
2
2
2
2
2
 b − a
 =1
 2 
 2 
c=

 b − a
F(b) = c
2
Resumiendo se tiene :
c
2
 2 ( x − a) ,

F(x) = 
2
c b − a  − c (b − x) 2 ,
  2 
2
a+b
a≤x<
,
a
a+b
≤ x < b,
2
2
0 ≤ F(x) <
c  b − a

 ,
2 2 
0≤r<
2
2
c  b − a
 b − a

 ≤ F(x) < c
 ,
 2 
2 2 
1
2
1
≤r <1
2
Para generar una variable aleatoria X, se genera un número aleatorio r, entre 0 y 1, y se iguala a la función de
distribución, de acuerdo al rango en que quede, así:
2
1) Si r ≤
2
2) Si
2
c  b − a

 , es decir si
2 2 
r < ½ entonces: F(x) =
c  x − a
 =r ⇒

2 2 
2
X=2
2r
+a
c
2
c  b − a
c
 b − a
 b − a
2

 ≤ r < c
 , es decir si r > .5 entonces F(x) = c
 − (b − x) = r ⇒
 2 
 2 
2 2 
2
2
  b − a 2
2
(b − x) 2 = c
 − r  = (1 − r )
c
 c
  2 
⇒ X=b−
2
(1 − r )
c
Resumiendo se tiene que :
x=a+
2r
,
c
Si r < ½
x=b−
2
(1 − r ) ,
c
Si r ≥ ½
Existen muchas variables aleatorias para las cuales es sumamente difícil o imposible expresar la función de
distribución mediante una expresión cerrada que se pueda manipular fácilmente; o una vez obtenida esta
expresión, puede ser complicado expresar la variable X en términos del número aleatorio r. En estos casos,
será necesario emplear otro método.
2.1.2
Método de transformación inversa, caso discreto.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4-5
Cuando la variable aleatoria X no es continua, no puede usarse el método de la transformación inversa en la
forma explicada anteriormente, sino que es necesario modificarlo un poco para tener en cuenta la naturaleza
discreta de la variable aleatoria. En el caso continuo para cada valor de la variable aleatoria X existe uno y
solo un valor del número aleatorio r que genera ese valor de X como se ilustró en la figura 4.1. Es decir,
existe una relación biunívoca entre X y R. Esto no es cierto cuando X es discreta. Para ilustrarlo, considere la
variable aleatoria cuya función de probabilidad está dada por:
1 / 4
P( x) = 
0
x= 1, 2, 3, 4, en otros casos.
La función de distribución F(x) está dada por:
1 / 4
1 / 2

F(x) = 
3 / 4
1
x=1
x=2
x=3
x=4
o simplemente F(x) = x/4, x=1, 2, 3, 4
f(x)
1/2
F(x)
1
3/4
1/4
1/2
r
1/4
0
0
1
2
3
4
0
1
Figura 4.5 Método de la transformación inversa caso discreto
2
3
4
Al generar un número aleatorio r no podemos hacer r = F(x) ya que R es continua y X es discreta. Por
ejemplo : si r = .31 y aplicamos el método de la transformación inversa visto antes el valor correspondiente
de X sería :
r=
x
→ x = 4r = 124
.
4
Sin embargo el valor x = 1.24 no existe.
Sin embargo, si aplicamos el método de la transformación inversa gráficamente, figura 4.5, vemos que el valor
de x correspondiente a un r = 0.31 es 2. Si r fuera 0.48, x seguiría siendo 2. Igualmente sería 2 si r fuera
0.49. Si r fuera 0.50, el valor correspondiente a x sería 3. Es decir, el valor x = 2 puede ser generado por
muchos valores de r, todos aquellos que sean mayores o iguales a 1/4 y menores de 1/2.
El valor de x será entonces el entero aquel que cumpla la siguiente desigualdad :
F ( x - 1 ) ≤ r < F(x)
(1)
En general, si X no varía en intervalos de a 1 sino de µ, el valor x sería aquel que cumpliera la siguiente
desigualdad:
F ( x - µ ) ≤ r < F(x)
(1)
Ejemplo 4.5. Para nuestro ejemplo, el generador del proceso sería:
1
2

x=
3
4
si
0 ≤ r < 1/ 4
si
1/ 4 ≤ r < 1/ 2
si
1/ 2 ≤ r < 3 / 4
si
3 / 4 ≤r <1
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4-6
Así, teóricamente existe un número infinito de valores de r que dan el mismo valor de x.
Dado que en el ejemplo anterior la función de distribución tiene una expresión matemática cerrada, podemos
tratar de encontrar una forma más explícita para la variable aleatoria X. Así:
F(x) =
x
,
4
x = 1, 2, 3, 4
Dado un valor de r, el correspondiente valor de x será el entero que cumpla ( 1 ) F ( x - 1 ) ≤ r < F(x)
es decir:
x−1
x
≤r <
4
4
x −1
≤ r ⇒ x ≤ 4r + 1
4
x
r < ⇒ 4r < x → x > 4r
4
Tomando la parte izquierda de la desigualdad se tiene:
La parte derecha de la desigualdad nos indica que:
(2)
(3)
Combinando las expresiones ( 2 ) y ( 3 ) se obtiene que el valor X estará dado por:
4r < X ≤ 4r + 1⇒ X = [4 r + 1], donde [Y] = parte entera de Y
Si
Si
Si
Si
→
→
→
→
r = 0.31
r = 0.43
r = 0.49
r = 0.50
1.24
1.92
1.90
2.00
<
<
<
<
x
x
x
x
≤
≤
≤
≤
→
→
→
→
2.24
2.92
2.96
3.00
x=2
x=2
x=2
x=3
Ejemplo 4.6. Considere la distribución geométrica. Una variable aleatoria X tiene una distribución geométrica
si su función de probabilidad está dada por :
P( x) = p(1 − p) x−1,
x = 1, 2, .......,
donde X puede representar :
•
•
•
Número de artículos que es necesario inspeccionar antes de encontrar uno defectuoso.
Tiempo (medido en forma discreta) necesario para atender una persona.
Número de veces que es necesario jugar una lotería para ganársela
donde, para cada caso p puede representar :
•
•
•
P = Probabilidad de que un artículo sea defectuoso.
p = Probabilidad de que el servicio se termine en una unidad de tiempo.
P = Probabilidad de ganarse una lotería
La función de distribución está dada por:
x
F(x) = P( X ≤ x) =
∑
i =1
x −1
∑
F(x) = p
i= 0
F(x) =
x
P( X = i) =
∑ pq
i =1
p(1 − q x )
q =
, dado que
1− q
i
i −1
N
∑
i= 0
Zi =
1 − Z N+1
, si Z ≠ 1
1− Z
p(1 − q )
= 1 − q x , x = 1, 2, .....,
1 − (1 − p)
x
Para generar una variable aleatoria X con distribución geométrica se genera un número aleatorio r. El valor de
x será el entero que cumpla :
F ( x - 1 ) ≤ r < F(x)
x-1
≤ r < 1 - qx
1-q
Trabajando con la parte izquierda de la desigualdad, se obtiene:
1 - qx-1 ≤ r ⇒ 1 - r ≤ qx-1 ⇒ Ln ( 1 - r ) ≤ ( x -1 ) Ln q ⇒ x - 1 ≤
Ln(1 − r )
,
Ln. q
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
dado que Ln q < 0 ⇒ x ≤
4-7
Ln(1 − r )
+ 1 (A)
Lnq
Con la parte derecha de la desigualdad, se obtiene:
s
x
1-q > r⇒1-r > q
⇒
x >
⇒ Ln ( 1 - r ) > x Ln q ⇒ x >
Ln(1 − r )
Lnq
Ln(1 − r )
, dado que Ln q < 0
Ln. q
(B)
De las expresiones (A) y (B) se obtiene que el valor de la variable aleatoria X es el entero que satisfaga la
siguiente desigualdad :
Ln(1 − r )
Ln(1 − r )
+1
<x ≤
Lnq
Lnq
Es decir, X es igual a la parte entera que se obtiene de realizar el cálculo
2.2
Ln(1 − r )
+1
Lnq
Método del Rechazo
El método del rechazo está basado en la función de densidad f(x) y no en la función de distribución F(x), como
el de la transformación inversa. Para poder usar este método se requiere que la función de densidad sea
acotada y que el rango de variación de la variable aleatoria sea finito, esto es, a≤ x ≤ b.
El método se basa en a) encerrar la función de densidad dentro de un rectángulo cuya altura es el valor
máximo de dicha función y cuyo base es el rango de variación de la variable aleatoria y b) generar parejas de
números aleatorios, y aceptar aquellas parejas que queden bajo la curva definida por la función de densidad
de la variable de interés.
El procedimiento para aplicar este método es el siguiente.
1) Se normaliza la función de densidad f(x) mediante un factor c tal que su rango de variación esté entre cero
y uno, es decir, 0 ≤ c.f(x) ≤ 1, a≤ x ≤ b. Por lo tanto, el valor de c debe ser tal que
c. Max f(x) =1 ⇒ c= 1/Max f(x)
2) Se genera la variable aleatoria X correspondiente al rectángulo de base (b-a), es decir, como el valor
perteneciente a la función de densidad uniforme entre a y b, a saber,
X= a + (b - a) r
3) Se genera una pareja de números aleatorios (r1, r2).
4) Con el primer número aleatorio se genera el valor de X, un rectángulo de base (b - a), es decir, como
correspondiente a la distribución uniforme. Por lo tanto
X= a + (b -a) r1
y se calcula la ordenada de X correspondiente a la función de densidad normalizada c(f(x). Es decir, se
calcula c.f[a + (b -a) r1 ]
5) Se acepta la pareja de números aleatorios si r2 ≤ c.f(x), o sea si, r2 ≤ c.f[a + (b -a) r1 ]. Por lo tanto, se
acepta la pareja si la intersección de X con r2 cae bajo la curva definida por c.f(x). Si no se acepta la pareja
es necesario generar una nueva pareja, es decir, repetir el procedimiento desde el paso 3.
La figura siguiente ilustra el procedimiento
c.f(x)
1
r22
r21
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
a
x1
x2
b
4-8
x
x1
x2
La pareja (r11, r21), o equivalentemente la pareja (x1, r21) , donde x1 = a + (b - a ) r11, se acepta ya que
r21 < c.f(x1), es decir, la intersección de x1 y r21 queda bajo la curva definida por c.f(x1). Sin embargo, la pareja
(r12, r22), o equivalentemente la pareja (x2, r22) , donde x2 = a + (b - a ) r12, se rechaza ya que r22 > c.f(x2), es
decir, la intersección de x2 y r22 queda fuera de la curva definida por c.f(x2).
Se observa que la pareja (r1, r2) genera un par de coordenadas que definen un punto en el rectángulo que
tiene como base (b - a) y altura unitaria, y que de estas parejas, las que se aceptan son aquellas que quedan
bajo la curva c.f(x).
Si se generan N parejas de números aleatorios (r1, r2) y de estas parejas M caen bajo la curva, entonces la
probabilidad de que una pareja quede bajo la curva puede estimarse como P = M/N. Si se conoce el área del
rectángulo y se desea calcular el área bajo la curva, entonces esta área puede estimarse como el área del
rectángulo por la proporción de puntos que caen bajo la curva, es decir,
Area bajo la curva = Area del rectángulo x P,
donde el área del rectángulos es (b - a) x Máximo f(x)
Además, P puede interpretase como la probabilidad de que una pareja sea aceptada. Dependiendo de la
forma de f(x), esta probabilidad podría calcularse analíticamente.
El método del rechazo se base en el hecho de que la probabilidad de que un número aleatorio R sea menor o
igual que c.f(x) está dada por :
p[R ≤ r] = r ⇒ p[R ≤ c.f(x)] = c.f(x), 0 ≤ c.f(x) ≤ 1
Por consiguiente, si X se escoge al azar en el rango (a,b) como x = a + (b - a) r, y luego se rechaza si r > c.f(x)
entonces a función de densidad de los valores aceptados sería f(x).
Determinemos la probabilidad de que un par de números aleatorios produzcan exitosamente una variable
aleatoria. Esta probabilidad es igual a la probabilidad de que el primer número genere el valor de X = x, que
es igual a dx/(b-a), por la probabilidad de que el segundo número sea menor o igual a c.f(x), la cual es igual a
c.f(x), dado que el número aleatorio está uniformemente distribuido entre cero y uno. Por lo tanto,
P(pareja exitosa) =
∫
b
a
c
dx
. cf ( x) =
b−a
b−a
∫
b
a
f ( x) =
c
b−a
El número esperado de ensayos para obtener una pareja exitosa es (b-a)/c.
El método del rechazo es ineficiente cuando (b-a)/c es f(x
un poco grande, dado que se necesita generar una gran
cantidad de números aleatorios antes de encontrar un
par exitoso, como sería el caso de tener una distribución
como la mostrada en la figura siguiente.
a
b
Ejemplo 4.7. Use el método del rechazo para generar observaciones de una variable aleatoria normal con
media cero y varianza unitaria.
Una variable aleatoria Z tiene una distribución normal con media cero y varianza uno si su función de densidad
está dada por :
f ( z) =
1
2π
2
e − z / 2 , -∞ < z < +∞
En principio, el método del rechazo no puede emplearse para generar una distribución normal, dado que su
rango de variación no es finito. Sin embargo, si se acota la distribución, sí podría emplearse. Se sabe que el
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4-9
99.73% de una distribución normal se encuentra comprendido en el rango de más o menos tres desviaciones
(± 3 para nuestro caso). Es decir, tendríamos la siguiente función de densidad :
f ( z) =
1
2π
2
e − z / 2 , -3 < z < +3
Por lo tanto el procedimiento a aplicar sería :
1) Normalizar f(z). El valor de c es 1/Max f(z) = 1/f(0) =
Por lo tanto c.f(z) =
2)
3)
4)
5)
2π , dado que el máximo valor de f(z) ocurre en z=0.
2
c. f ( z) = e − z / 2
El valor de Z se calculará como a + (b - a) r = -3 + 6 r
Se genera una pareja de números aleatorios (r1,r2).
Se calcula Z como z = a + (b - a) r1 y se calcula c. f(z).
Se acepta la pareja si r2 ≤ c.f(z), es decir, si r2 ≤ c.f(-3+6r1).
Si se acepta la pareja, entonces el valor de la variable sería
el z calculado con r1. Si se rechaza la pareja, es decir,
si r2 > c.f(z), se repite el paso 3.
Ejemplo 4.8. Use el método del rechazo para calcular el área del primer cuadrante de un círculo unitario.
Este ejercicio sirve para ilustrar el método de Montecarlo para resolver problemas completamente
determinísticos.
y
Un círculo unitario está definido mediante la siguiente ecuación :
1
x2 + y2 = 1
De la ecuación se obtiene que
y = 1 − r 12 . Dado que e l rango de
variación de y está entre cero y uno, el factor de normalización sería
c = 1. Por lo tanto, el procedimiento sería :
1) Se genera la pareja de números aleatorios r1 y r2.
2) Se expresa x como x = a + (b - a ) r1 =r1
3) Se calcula y = c.f(x) =
0
1
x
1 − r 12 y se acepta la pareja si r2 < c.f(x), o equivalentemente si
2
2
r1 +r2 ≤ 1, es decir si la pareja cae bajo el círculo.
Se generan varias parejas de números aleatorios (N) y se cuenta el número de parejas aceptadas M. El área
bajo el cuadrante se calcula como el área del rectángulo (la unidad) por la proporción de parejas que caen
bajo la curva, es decir, el área del cuadrante se estima como M/N. Matemáticamente se sabe que el área de
un círculo está dada por πR2, siendo R es el radio del círculo. Por lo tanto el área exacta del cuadrante será
π/4. A medida que se aumente el número de parejas generadas la proporción de las que caen bajo la curva
debe tender a π/4.
Ejemplo 4.9. Use el método del rechazo para calcular el área bajo la curva Y = 3X, entre 2 y 5.
El problema se puede ilustrar gráficamente como se muestra c.f(x)
en la gráfica No 5.x
16
El valor máximo de f(x) para el rango de variación dado ocurre
en x=5, con un valor de 15, por lo tanto, el valor de c es de 1/15. 12
El procedimiento sería entonces :
8
1) Se normaliza f(x) por el factor c=1/15, por lo tanto
c.f(x) = x/5
2) Se genera un par de número aleatorios (r1,r2).
Se expresa x como x = 2 + 3 r1
•
Si r2 ≤ (2 + 3 r1)/5 se acepta la pareja y se contabiliza
•
el número de parejas aceptadas (M)
•
Si r2 > (2 + 3 r1)/5 se rechaza la pareja.
4
0
1
2
3
4
5
6 x
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 10
El área total del rectángulo está dada por (5 - 2) x 15, y
el área bajo la línea y = 3 x se estima como el área bajo
el rectángulo por la proporción de parejas aceptadas, es decir por :
Area_Bajo_Línea = (5 - 2) x 15 x M/N = 45M/N
La tabla siguiente resume resultados obtenidos para diferentes valores de las parejas de números generados.
Parejas Generadas 25
Parejas Aceptadas 22
Proporción
88.00
50
38
76.00
100
69
66.5
200
133
70.6
500
353
70.6
1000
698
69.8
El área real bajo la curva está dada por la integral de la función 3x entre 2 y 5, y su valor es :
5
Area_Real_Bajo_Línea =
∫ 3xdx = 315.
2
y la proporción del área bajo la curva seria de 31.5 x 100/45= 70%.
2.3
Método de relación con otras variables (Convolución).
Un método muy utilizado para generar variables aleatorias es mediante el análisis de la relación matemática
de la variable de interés con otras variables conocidas, o analizando el proceso que da origen a una
determinada variable. Por ejemplo, la distribución Erlang (α, k) resulta de la convolución de k variables
aleatorias distribuidas exponencialmente con valor esperado 1/a. Por lo tanto, para generarla, basta con
generar k variables exponenciales con media 1/α y sumarlas.
k
X =∑ Xi =−
i =1
k
1
1 k
ln
=
−
ln
Ri
∑ Ri α ∏
α i =1
i =1
De igual manera la distribución binomial (n, p) resulta de la convolución (suma) de n variables aleatorias con
distribución Bernoulli con parámetro p. Por lo tanto, su generación se puede realizar a partir de la distribución
de Bernoulli, como se analizará mas adelante.
3
Generación de procesos continuos.
En esta sección se presentará la forma de generar artificialmente las observaciones de las principales
variables aleatorias continuas. Para algunas variables se presentarán varios métodos, indicando cuál de ellos
puede ser más eficiente. Además, en algunos casos se presentarán algunos métodos que, aunque no sean
eficientes desde el punto de vista estadístico o computacional, sirven para ilustrar la aplicación de uno de los
métodos generales presentados en la sección anterior.
3.1
Distribución Uniforme
Una variable aleatoria X se distribuye uniformemente en el intervalo (a,b) si su función de densidad está dada
por :
 1

f(x) =  b − a
0
a≤x<b
en otros casos
Su función de distribución F(x) está dada por :
0
x − a

F(x) = P(X ≤ x) = = 
b − a
1
f(x)
x<0
a≤x≤b
x>b
F(x)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 11
1.0
r
a
b
a
x
b
El valor esperado y la varianza de una distribución uniforme son los siguientes:
a+b
E ( X) = ∫abxf ( x)dx =
2
(b − a)
2
Var ( X) = ∫ab( x − E ( X)) f ( x) dx =
12
2
Aplicación : Errores de redondeo cuando las mediciones se registran con determinada precisión. Por ejemplo,
cuando se registra una calificación, generalmente se aproxima a la décima mas cercana (redondeo simétrico).
Entonces la diferencia entre la nota real y la nota registrada es algún número entre -0.05 y +0.05, y el error se
distribuye uniformemente en este intervalo.
Para generar una variable aleatoria uniforme, se puede hacer uso del método de la transformación inversa de
la siguiente manera : Se genera un número aleatorio R = r y se lo iguala a la función de distribución de la
siguiente manera :
r = F( x ) =
x −a
b−a
⇒
x = a + (b - a ) r.
Así, para generar una variable aleatoria uniforme basta con generar un número aleatorio.
Estimación de los parámetros
Cuando los parámetros de la distribución no son conocidos, debemos
estimarlos con base en datos históricos. La estimación puede hacerse por el método de los momentos o el
método de máxima verosimilitud. A través del método de los momentos, como se tienen dos parámetros se
deben usar los dos primeros momentos, la media y la varianza. Es decir, igualamos la media µ y la varianza σ2
de la distribución con la media y la varianza muestrales, respectivamente.
a +b
µˆ =
=X
2
2
σˆ =
( b −a )
12
2
=S2
Despejando a y b de las dos expresiones anteriores se obtiene:
â = X − 3 S2 ,
b̂ = 2 X −â
Utilizando el método de máxima verosimilitud, los estimativos de a y b estarán dados por:
â =X min ,
3.2
b̂ =X max
Distribución Exponencial
Una variable aleatoria X sigue una distribución exponencial con parámetro λ si su función de densidad tiene la
siguiente forma:
λ −λx
f ( x) =  e
0
x ≥0
en otros casos
La función de distribución está dada por:
F ( x) =1−e−λx
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 12
La media y la varianza están dadas por:
1
E ( X ) =µ = ,
λ
V ( X ) =σ 2=
1
λ
2
Aplicación:
Considere un evento cualquiera, un accidente, por ejemplo. Si la probabilidad de que ocurra
un evento en un intervalo muy corto de tiempo es pequeña, y si la ocurrencia de este evento es
estadísticamente independiente de la ocurrencia de otros eventos, entonces el intervalo de tiempo entre la
ocurrencia de eventos de este tipo, se distribuye exponencialmente. Ejemplos de variables distribuidas
exponencialmente son: intervalo de tiempo entre accidentes en una carretera, la llegada de órdenes a una
fábrica, la llegada de clientes a un supermercado, la duración de un equipo, etc.
Estimación del parámetro: El parámetro λ puede estimarse como X .
La generación de una variable exponencial puede hacerse por varios métodos, de los cuales el rnás eficiente
es el de la transformación inversa.
r = F ( x) =1−e−λx
⇒ 1− r =e− λx ⇒ Ln (1 − r ) = −λ x
⇒ x =−
1
λ
Ln (1− r )
Dado que la distribución uniforme es simétrica, entonces R y 1 – R tienen la misma distribución, por lo cual los
valores generados de r y 1 – r pueden intercambiarse en el proceso de generación de variables aleatorias. De
lo anterior se concluye que X puede generarse como:
x=−
1
λ
Ln r
La distribución exponencial se basa en la suposición de que el parámetro λ es constante esto es, se asume
que todos los eventos han sido generados por un mismo proceso aleatorio. Esta condición no se cumple a
veces en ciertos procesos reales, cuando se trabaja con eventos que son producidos por procesos aleatorios
diferentes pero mezclados. Es posible que una muestra sea tomada de dos o mas distribuciones
exponenciales, teniendo cada una un valor diferente del parámetro λi. Muchos problemas de fenómenos de
espera caen en esta categoría. Por ejemplo, las llegadas pueden ocurrir a tasas λi con probabilidades pi,
donde λi = λpi. es el parámetro de la población i, i = 1,2, ..s, tal ∑pi = 1. Tal mezcla de variables exponenciales
sigue a su vez una distribución hiperexponencial particular (s = 2) ó hiperexponencial generalizada (S > 2).
Si una variable aleatoria sigue una distribución exponencial, entonces su media y su desviación son iguales.
Es decir, el coeficiente de variación es 1.
El coeficiente de variación de datos no negativos) se define como la razón entre la desviación estándar y el
valor medio.
El coeficiente de variación da una medida del grado en que los datos están dispersos alrededor de la media.
Un coeficiente de cero significa que no hay variación, esto es, que los datos son constantes. Para el caso de
una distribución exponencial, como se indicó antes, el coeficiente te de variación es uno. Si el coeficiente de
variación de los datos medidos, está cercano a la unidad, es razonable suponer que los datos se ajustan a una
distribución exponencial. Cuando el coeficiente de variación es significativamente menor o mayor que la
unidad, se usan la distribución especial de Erlang y la distribución hiperexponencial respectivamente.
Observación: A veces la distribución exponencial se expresa como
f ( x) =
1 − x /θ
θ
e
donde el parámetro θ corresponde al inverso de la tasa λ y es el valor esperado de la distribución.
3.3 Distribución Weibull
La distribución exponencial se aplica bastante para describir la duración de un equipo. En este caso, el
parámetro λ recibe el nombre de "tasa de fallas" y el inverso 1/λ recibe el nombre de "tiempo medio entre
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 13
fallas". La distribución exponencial se emplea cuando la "función de tasa de fallas" ó "función de riesgo" es
constante.
Para una distribución continua F, definimos h (t), la función de tasa de fallas como
h(t ) =
f (t )
1 − F (t )
donde f(t) es la función de densidad y es igual a f(t) = dF(t)/dt. Si F es la distribución de la vida de un artículo,
entonces h(t) representa la densidad de probabilidad de que un equipo con una vida t falle. Esto es, h(t)dt es la
probabilidad condicional de que un artículo fallará entre los tiempos t y t + dt dado que ha funcionado hasta el
tiempo t. Decimos que F es una distribución con tasa creciente de falla (TCF) si h(t) es una función creciente
de t. Similarmente, decimos ese F es una distribución con tasa decreciente de falla (TDF) si h (t) es una
función decreciente de t.
La distribución exponencial se usa cuando la función de riesgo es constante, esto es h(t) = λ
Cuando la tasa de fallas no es constante, debe usarse una distribución diferente de la exponencial. Las
distribuciones más frecuentemente usadas son la distribución Weibull y la gama..
La distribución de Weibull se usa con frecuencia para representar la vida de los componentes, pues posee una
serie de ventajas sobre las demás. Fue usada por Weibull (1951) para describir las variaciones en la resistencia a la fatiga del acero y posteriormente se ha usado para representar la vida y el servicio de tubos y otros
equipos electrónicos. La distribución de Weibull posee, en su forma general, tres parámetros lo que le da una
gran flexibilidad. Ellos son:
a)
Parámetro de posición γ representa el tiempo antes del cual se supone que no ocurre ninguna falla. En la
mayoría de los casos se supone γ = 0.
b)
Parámetro de escala o característica de vida θ
c)
Parámetro de forma β
Seleccionando adecuadamente los valores de los parámetros es posible obtener mejores ajustes que los
obtenidos con otras distribuciones.
Debe notarse que si el parámetro de forma toma el valor β = 1,se obtiene la distribución exponencial con dos
parámetros. Si además γ = 0 se obtiene la distribución exponencial de un parámetro (λ = 1/θ).
Sus principales características son las siguientes:
a)
Función de densidad de probabilidad f(t):

 β
f ( f ) = θ

0
b)
 t −γ 


 θ 
β −1
 t −γ 
−
e  θ 
β
t ≥γ
,
, t <γ
Función de distribución F(t), que representa la probabilidad de que el producto o componente falle antes
del tiempo t

 t −γ

−
t
1
−
F (t ) = P(T ≤ t ) = ∫ f (t )dt =  e
0
 θ

0
c)



,
β
,
t ≥γ
t <γ
Tasa o intensidad de falla h(t) (tasa instantánea de falla)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
β
h(t ) =
θ
 t −γ 


 θ 
4 - 14
β −1
cuya representación gráfica se presenta es la mostrada en la figura.
Se observa si β = 1 se tiene una intensidad de fallas constante {h(t) = 1/θ= λ}, típica de la distribución
exponencial. Además si β ≈ 3,75 se obtiene una buena aproximación a una distribución normal
Una elección adecuada del parámetro de forma β permite usar la distribución de Weibull para casos de intensidad de fallas de decreciente (rodaje o fallas infantiles β < 1), para casos de intensidad de fallas constantes (período de operación normal β = 1) o para casos de intensidad de fallas creciente (período de
desgaste con β > 1).
d)
Tiempo medio entre fallas MTBF (TMEF) o Esperanza de vida, está dado por
MTBF = T0 = γ +

1 1
Γ + 1
θ β

Varianza de Vida, σ
2
e)
V(T) = E[X2] - [E(X)]2 =
1
 
θ 
2
[Γ (
2
β
+ 1) − Γ 2 (
1
β
+ 1)]
Si β > 1 la distribución toma la forma de campana; de lo contrario toma la forma de J como la exponencial.
Esta distribución, como se indicó antes, ha encontrado amplio uso al tratar problemas relacionados con
pruebas de duración y datos de confiabilidad.
Para generar una variable aleatoria que siga una distribución Weibull puede hacerse uso de la transformación
inversa, ya que F(x) tiene una forma cerrada.
 t −γ 

r = F (t ) =1 − e−
 θ 
β
⇒
 t −γ 
Ln (1− r ) = − 

 θ 
β
⇒
t =γ + θ
[− Ln(1−r )]1 / β
Al igual que para el caso de la distribución exponencial, podemos reemplazar r por 1 – r, con lo cual la variable
Weibull se genera como:
t =γ + θ
3.3
[− Lnr )]1 / β
Distribuciones Gama y Erlang
Una variable aleatoria X tiene una distribución gama si su función de densidad está dada por:
( λt )
k −1
f ( t ) =λ e
− λt
Γ(k )
t ≥0
donde √(k) representa la función gama de k, que está definida como:
∞
Γ(k ) = ∫ x k −1 e − x dx
0
También se cumple que Γ (k) = (k – 1 ) Γ (k - 1).
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 15
Si el valor de k es entero, se puede demostrar que Γ (k) = (k – 1)!, y en este caso la distribución toma el
nombre de distribución de Erlang.
El valor esperado y la varianza de la distribución gama están dados por:
k
E (T ) = µ = ,
λ
V (T ) = σ 2 =
k
λ
2
La función de distribución F(t), dada por
t
∫0 f ( x)dx no puede ser evaluada en forma explícita como una función
de t, por lo cual no puede ser manipulada algebraicamente.
Cuando k es grande la distribución gama tiende a la distribución normal. Si K = 1 la distribución gama es igual
a la distribución exponencial.
Si los parámetros λ y k no son conocidos, pueden estimarse mediante el método de los momentos como:
X
λˆ = 2 ,
S
3.3.1
2
k̂ = X2
S
Distribución de Erlang
Si un proceso consta de k eventos sucesivos e independientes y si el tiempo total transcurrido en el proceso
puede mirarse como la suma de k variables exponenciales independientes, cada una con parámetro λ, la
distribución de esta suma seguirá una distribución Erlang con parámetros λ y k. Matemáticamente, la
distribución de Erlang es la convolución (suma) de k distribuciones exponenciales. Es decir, si T1, T2,…Tk son
variables aleatorias distribuidas exponencialmente con parámetro λ, entonces
T = T1 + T2 + … + Tk
tiene una distribución Erlang con parámetros λ y k, cuya función de densidad tiene la siguiente forma:
f (t ) = λ e− λt
(λt )k −1
t ≥0
(k − 1)!
Como la función de distribución no tiene forma explícita, no puede emplearse el método de la transformación
inversa. Las variables con distribución Erlang pueden generarse reproduciendo el proceso en que se basa
esta distribución, es decir, mediante la suma de k variables exponenciales. Entonces para generar una
variable Erlang se puede reproducir el proceso que da origen a la distribución, mediante la generación de k
variables exponenciales T1, T2,…Tk cada una con media λ y luego realizando la respectiva suma. Por
consiguiente la variable Erlang T puede expresarse como:
T = T1 + T2 + … + Tk , donde
1
T i = − λ Ln r i
Generación: Para generar una variable Erlang basta con generar k variables aleatorias exponenciales con
tasa λ y sumarlas. Es decir:
T =T 1+T 2 +...+ T k = −
T =−
1
λ
Ln r1−
1
λ
Lnr 2 − ...−
(Ln r1+ Ln r 2+ ...Ln r k )= − λ1 Ln ∏ r i
λ
1
1
λ
Ln r k
( A)
n
( B)
i =1
Por lo tanto para generar una variable Erlang, se generan k números aleatorios, se multiplican, al producto se
le toma el logaritmo natural y se divide por la tasa λ. El negativo de este resultado será la variable Erlang de
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 16
interés. Esta última forma (B) de generación es mucho mas eficiente que sumar directamente las k variables
aleatorias exponenciales (A) ya que el cálculo del logaritmo requiere más tiempo que el efectuar un producto.
3.3.2
Distribución gama
El problema de generar variables aleatorias con distribución gama, cuando k no es entero, es un problema no
resuelto aún completamente en forma analítica, ya que no hay un modelo estocástico para este caso. Se
puede resolver numéricamente. Sin embargo, para resolverlo analíticamente se puede usar el siguiente
enfoque aproximado.
Si k es un número racional puede expresarse como la suma de un entero y una fracción, tal como k = k1 + p,
donde k1 < k < k1+1 y 0 < p < 1. Además, si k2 = k1 + 1, entonces k2 – k1 = 1 - p. Entonces una mezcla de
variables gama escogiendo k2 con probabilidad p y k1 con probabilidad 1 - p se aproximará a una distribución
gama con parámetro k.
Esta aproximación da mejores resultados con valores altos de k. Podría pensarse que el proceso de
generación de una variable gama fuera el contrario al expuesto: es decir, escoger k1 con probabilidad p y k2,
con probabilidad q = 1 - p. Sin embargo, se requiere que el valor medio escogido sea igual al valor que tiene la
distribución, y que expresamos como k = k1 + p. Si escogemos k1 con probabilidad p y K2 = k1 + 1 con
probabilidad q, el valor medio generado de k seria:
K esperado =
k1 p + k2 (1 – p) = k1 p + (k1 + 1) (1 – p) = K1 + 1 – p
Por lo tanto, si se escoge k1 con probabilidad q, y k2 con probabilidad p el valor medio de K sería k1 + p.
3.4
Distribución normal
2
Una variable aleatoria X tiene una distribución normal, denotada por N(µ, σ ) si su función de densidad está
dada por:
f ( x) =
1
σ 2π
−
/2
e (x − µ ) σ
2
2
,
−∞< x + ∞
x
f (t )dt no tiene una forma analítica explícita.
La función de distribución F ( x) = ∫
−∞
La media y la varianza de la distribución están dadas por:
E(X)=µ
2
V(X) = σ
Si los parámetros de la distribución normal toman los valores de µ = 0 y σ2 = 1, la distribución es conocida
como "la distribución normal estándar o típica" N(0, 1) con función de densidad dada por:
f ( z)=
1
2π
−
e z
2
/ 2,
− ∞< x<+ ∞
De nuevo, la función de distribución F(z) no se puede calcular analíticamente, pero debido a su extenso uso, la
función ha sido calculada numéricamente y se encuentra tabulada para valores que varían, por lo general
entre –4 y +4.
Cualquier distribución normal N(µ, σ2) puede convertirse en la forma estándar N(0,1) mediante la siguiente
transformación:
Z=
X −µ
σ
Si se conoce la variable aleatoria Z puede calculares X como X = µ + Zσ. Por lo tanto, puede trabajarse tanto
2
con la variable X que es N(µ, σ ) como con la variable Z que es N(0,1).
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 17
La distribución normal deriva gran parte de su utilidad del teorema central del límite. Este teorema establece
que "Si se toma una muestra aleatoria X1, X2,…, Xn de n variables aleatorias, independientes e idénticamente
distribuidas con media µ y varianza σ2, entonces la distribución de la media X tiende a distribuirse
2
normalmente con valor esperado igual a µ y varianza igual a σ /n, cuando n es grande. Es decir, si X1, X2,…,
2
Xn es una muestra aleatoria con E (X) = µ y V(X) = σ , entonces
1 n
X=
∑Xi
n i =1
2
tiende a una distribución normal, cuando n es grande, con E( X ) = = µ y V( X ) = σ /n. O también, la variable Z
definida como:
Z=
X −µ
σ
n
tiende a seguir una distribución normal con media cero y varianza unitaria.
Observación: A veces el teorema central del límite se expresa en términos de la suma de las variables
aleatorias, y no en términos del promedio, de la siguiente manera: “Si X1, X2,…, Xn es una muestra aleatoria
2
con E (X) = µ y V(X) = σ , entonces la suma S = X1 + X2 +…+ Xn tiende a distribuirse normalmente con valor
2
esperado igual a nµ y varianza igual a nσ , cuando n es grande, ó
(S − nµ ))
σ n
se aproxima a una distribución
normal con media cero y varianza unitaria.
La distribución normal también es importante como una aproximación a varias distribuciones, entre ellas la
binomial y la Poisson.
La distribución normal puede generarse por distintos métodos, unos más eficientes que otros, dependiendo del
uso que se le vaya a dar. Para el proceso de generación, se generará la variable Z que es N(0,1) y luego se
calculará la variable X mediante la transformación X = µ + Zσ.
3.4.1
Método modificado de la transformación inversa, para simulación manual
Como la función de distribución F(z) no existe en forma explícita, no es posible emplear la transformación
Inversa como tal. Sin embargo, para simulaciones manuales o mediante hojas de cálculo, es posible emplear
un procedimiento similar al de la transformación inversa, pero en forma numérica. Sea Z una variable normal
con media cero y desviación estándar unitaria. La función de distribución de Z, F(z) está tabulada, para varios
valores de z y podemos generar la variable Z usando el método de la transformación inversa, haciendo uso de
esta tablas. Entonces, para generar una variable aleatoria normal Z se genera un número aleatorio r, se lo
iguala a la función de distribución F(z), y se busca en la tabla el valor de Z que tenga una probabilidad
acumulada de r. Sea Zr este valor.
r = F(z) ⇒ Zr = F-1(r)
donde Zr es el valor de la normal (0, 1) que tiene un área o probabilidad de r hacia la izquierda. La figura
siguiente ilustra el procedimiento.
Como la variable de interés es X, entonces se generará como X = µ + Zσ = µ + Zrσ
Por ejemplo:
Si r = 0.10 ⇒ Z = -1.28
Si r = 0.50 ⇒ Z = 0.00
Si r = 0.8577 ⇒ Z = 1.07
Si r = 0.4191 ⇒ Z = -1.04
3.4.2
Método del teorema central del límite
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 18
Sean R1, R2,…, RN un conjunto de n variables aleatorias independientes e idénticamente distribuidas, cada
una con distribución uniforme en el intervalo (0,1), con E(R) = 1/2 y V(R) = 1/12. Sea
R=
1 N
∑Ri
n i =1
.
Entonces, en virtud del teorema central del límite R tiende a distribuirse normalmente con
E( R ) = 1/2 y Var ( R ) = 1/12N. O también
ZR=
R − E(R )
σR
=
1 N
∑ R −1 / 2
N i =1 i
1
12 N
N
∑ Ri − N / 2
= i =1
N
12
 12
N
=  ∑ Ri − N / 2 
 N


 i =1
tiende a seguir una distribución normal con media cero y varianza unitaria cuando el valor de N es grande.
Para saber que tan grande debe ser el valor de N, debería lograrse un compromiso o balance entre la
eficiencia computacional y la exactitud o eficiencia estadística. Desde el punto de vista estadístico, N debería
ser muy grande. Las pruebas estadísticas realizadas indican que el valor mínimo aceptable de N para que la
aproximación tienda a una distribución normal , es 10, o sea que cualquier valor igual o superior a 10 es
aceptable estadísticamente. Desde el punto de vista computacional, considerando el tiempo empleado en la
generación de los N números aleatorios necesarios para cada valor de Z, debería usarse un valor pequeño de
N. Analizando las operaciones involucradas en el valor de Z, se ha llegado a la conclusión de que un valor
recomendable para N es 12, ya que simplifica por completo el cálculo de la variable normal estándar. Por lo
tanto, la siguiente variable, sigue una distribución normal típica (0,1)
 12

R i −6 
=
=
ZR  ∑
i =1

Es decir, para generar una variable normal estándar, basta con generar doce números aleatorios, sumarlos y
restarles seis.
Como la variable que por lo general interesas es la variable X que es N(µ, σ2), entonces se la genera como:
 12

X = µ + Z R σ = µ + σ  ∑ Ri − 6 


 i =1

3.4.3
Enfoque Directo
Sean r1 y r2 dos números aleatorios. Se puede demostrar que las variables Z1 ó Z2, definidas por:
Z 1=Cos 2π r1
Z 2 = Sen 2π r1
− 2 Ln r 2
ó
− 2 Ln r 2
son dos variables aleatorias normalmente distribuidas con media cero y varianza unitaria. Este método
produce resultados exactos y tiene una eficiencia computacional similar a la del método basado en el teorema
central del limite. La variable X puede generarse usando Z1 ó Z2, como, se muestra a continuación.
X = µ + Z1 σ ó
3.4.4
X = µ + Z2 σ
Método del Rechazo
Dado que una variable distribuida normalmente no tiene un rango finito de variación, en teoría no puede
usarse el método del rechazo para generarla. Sin embargo se pueden establecerse unos limites
razonablemente confiables entre los cuales se espera que caiga esta variable. Se sabe que el 99.73% de los
valores de una distribución normal están en el intervalo definido por la media mas o menos tres desviaciones.
Es decir, para la variable Z normal (0,1), se tiene que P(-3 < Z < +3) = 0.9973.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 19
Entonces se puede emplear el método del rechazo paro generar una variable Z, normal (0,1), limitando o
truncando sus valores en ± 3 . (Si se quiere una mayor exactitud se puede ampliar el rango a ± 3.5 ó ± 4.0,
reduciendo por consiguiente la eficiencia computacional, al aumentar la región de rechazo). En el ejemplo 4.7
se presentó el procedimiento exacto para la generación de la distribución normal mediante este método.
Este método parece ser menos exacto y es más lento que los anteriores.
3.4.5
Método de Marsaglia Bray
El método de Marsaglia Bray para generar variables normales usa el siguiente procedimiento:
a)
b)
c)
d)
Se genera una pareja de números aleatorios R1 y R2
Se calculan las siguientes expresiones
V1 = 2 R1 – 1
V2 = 2 R2 – 1
S =V 12 +V 22
Si S > 1 se repite el paso a)
Si S ≤ 1 se calculan las siguientes expresiones para Z1 y Z2, que se distribuyen normalmente con
media cero y varianza unitaria:
Z 1=V 1
− 2 LnS
,
S
Z 2 =V 2
y
− 2 LnS
S
Es de anotar que Z1 y Z2 además de ser normales, son independientes, es decir, que ambas variables pueden
emplearse para generar dos procesos normales diferentes, o dos variables diferentes del mismo proceso. Este
método es estadísticamente tan bueno como el del enfoque directo.
3.5
Distribución Logarítmica normal
Si el logaritmo de una variable aleatoria tiene una distribución normal, dicha variable aleatoria tiene una
distribución continua sesgada a la derecha, conocida como la distribución logarítmica normal - lognormal. La
distribución lognormal se utiliza en una amplia variedad de aplicaciones. Se puede usar para describir
procesos aleatorios que representan el producto de varios eventos pequeños e independientes; esta
propiedad de la distribución recibe el nombre de "la ley de los efectos proporcionales" y proporciona la base en
la cual nos podemos apoyar para suponer que la distribución lognormal describe una variable aleatoria
particular. Esta variable solo toma valores positivos. En hidrología, se la usa frecuentemente para describir la
distribución de los caudales de un río en un sitio dado, el cual puede ser la suma de otros caudales más
pequeños de los afluentes a dicho río aguas arriba del punto de medición.
La variable aleatoria continua X tiene una distribución logarítmica normal si la variable aleatoria Y = ln(X) tiene
una distribución normal con media µ y desviación estándar σ . La función de densidad de X que resulta está
dada por:
f ( x) =
−
/2
e (ln x −u ) σ
xσ 2π
2
1
2
0< x < ∞
,
con parámetros -∞ < µ < +∞, 0 < σ < +∞.
Los parámetros µ y σ corresponden a la media y desviación estándar del logaritmo de X.
La media y la varianza de X están dadas por:
2
E ( X ) =e µ +σ / 2
V ( X ) =e2 µ +σ (eσ −1) =[ E ( X )] (eσ −1)
2
2
2
2
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 20
La distribución acumulada es bastante simple debido a su relación con la distribución normal, ya que si X es
lognormal, ln(X) es normal, y por lo tanto la variable Z definida como se muestra a continuación se distribuye
normal con media cero y varianza unitaria.
Z=
ln( X ) − µ
σ
Por lo tanto, para generar una variable con distribución logarítmica normal, basta con generar una variable
normal (0,1), con cualquiera de los métodos analizados previamente, y a partir de esta variable generar la
variable de interés.
ln( X ) = µ + Z σ ⇒ X = µ + Z σ
e
4
Generación de procesos discretos
Si una variable aleatoria es discreta, el método de la transformación inversa nos dice que, para un número
aleatorio r, el valor de X será aquel que cumpla la siguiente desigualdad:
F(x – u) ≤ r < F(x)
cuando la variable aleatoria varia en intervalos de u unidades.
Sin embargo, en muchos casos es muy difícil encontrar una expresión cerrada para la función de distribución
F(x). En estos casos, se debe acudir a otros métodos, principalmente al de buscar una relación entre la
variable aleatoria de interés y otra variable aleatoria que pueda generarse en forma directa (método de
convolución). Por ejemplo la variable aleatoria binomial puede generarse basándonos en el hecho de que esta
variable aleatoria se puede representar como la suma de variables aleatorias con distribución de Bernoulli.
Otro ejemplo: Una variable que siga una distribución de Poisson puede generarse mediante la relación que
esta variable tiene con la distribución exponencial.
4.1
Distribución de Bernoulli
Una variable aleatoria que tome los valores cero y uno sigue distribución de Bernoulli si su función de
probabilidad está dada por:
P(x) = px (1 – p)1 – x,
x = 0, 1
o simplemente:
P(X = 1) = p
P(X = 0) = q = 1 - p
La media y la varianza están dadas por:
E (X) = µ = p
2
V(X) = σ = p q, q = 1 - p
La función de distribución F(x) está dada por:
F(x) = 1 – p para x = 0
F(x) = 1
para x = 1
Por lo tanto, dado un número aleatorio r, el generador del proceso está dado por:
Si r < 1 – p ⇒ x = 0
Si r ≥ 1 – p ⇒ x = 1
(1)
0
{X = 0}
1–p
{X = 1}
1
Como habíamos visto en el capítulo 1, el generador de una variable Bernoulli también puede expresarse como
(método del rechazo):
Si r < p ⇒ x = 1
(2)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
Si r ≥ p ⇒ x = 0
0
{X = 1}
p
{X = 0}
4 - 21
1
En ambos caso a X = 1 se le está dando el 100p% de los números aleatorios generados, los últimos 100p% en
el primer método, y los primeros 100p% en el segundo caso. Así, por ejemplo, si p = 0.20, en el primer caso el
valor X = 1 es generado por todo número aleatorio mayor o igual a 0.8, y en el último caso X = 1 es generado
por todo número aleatorio menor a 0.20. Para un valor específico del número aleatorio r el resultado particular
cambia, pero para una secuencia larga los resultados son los mismos, ya que como se analizó en capítulos
anteriores, el número aleatorio se distribuye uniformemente en el intervalo (0,1). Para generar la variable
aleatoria Bernoulli, usaremos el segundo método.
La variable aleatoria X puede representar por ejemplo, el resultado de examinar un artículo: Si X = 1 el artículo
es defectuoso, y si X = 0 el artículo es aceptable. Otro ejemplo es el relacionado con el resultado obtenido al
lanzar una moneda: X = 1 si cae cara, y X = 0 si el resultado es sello.
Si p = 0.21, entonces X = 1 si r < 0.21, y X = 0 si r ≥ 0.2l
El generador, como se indicó anteriormente, también podría ser:
X = 0 si r < 0.79 y X = 1 si r ≥ 0.79.
porque en esta forma a X = 1 se le da la misma probabilidad de ocurrencia (21 de un total de 100, a saber:
0.79, 0.80,…,0.99)
4.2
Distribución binomial
La variable aleatoria X que representa el número de eventos exitosos en una secuencia de n ensayos
independientes de Bernoulli, sigue una distribución binomial. Matemáticamente la distribución binomial es la
convolución de n distribuciones de Bernoulli.
Si p es la probabilidad de que un evento sea exitoso, la función de probabilidad de la distribución binomial está
dada por:
n
P(x) =  
x
 
p (1− p )
x
n− x
,
x = 0,1,..., n
La función de distribución, dada por la expresión siguiente no tiene una forma explícita.
x
x n
j
n− j
F ( x) =
∑ p( j ) = ∑  j  p (1− p)
j =0
j =0  
Para valores dados de n y p, la función de distribución podría calcularse numéricamente, y luego generarse
usando el método de la transformación inversa para el caso discreto.
El valor esperado y la varianza de la variable binomial están dados por:
E (X) = µ = n p
2
V(X) = σ = n p q, q = 1 - p
Para generar una variable binomial hay diferentes enfoques, dependiendo de los valores de n y p.
4.2.1
Sucesión de eventos de Bernoulli.
Si X1, X2,…,Xn es una secuencia de n variables aleatorias independientes que siguen una distribución de
Bernoulli con parámetro p, entonces X definida como:
n
X =∑ X i
i =1
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 22
sigue una distribución binomial con parámetros n y p. Es decir, la distribución binomial surge de la suma de n
variables con distribución Bernoulli. La anterior relación da la base para definir un generador del proceso
binomial. Esto es, para generar una variable aleatoria binomial con parámetro n y p, sólo necesitamos generar
n variables de Bernoulli con parámetro p y luego sumarlas.
El procedimiento será entonces
a)
b)
c)
d)
e)
Se inicializa X = 0
Se genera un número aleatorio ri, para i = 1, 2,..., n.
Si ri < p, entonces Xi = 1, en caso contrario Xi = 0
Se aumenta X en el nuevo valor de Xi, es decir, X = X + Xi.
Se repite el paso b) para cada valor de i.
El valor de la variable aleatoria será el último valor resultante del proceso anterior.
4.2.2
Aproximación mediante la distribución normal
La distribución normal es una buena aproximación a la distribución binomial para valores grandes de n y de p.
Dado que es posible obtener valores negativos en la distribución normal, entonces el valor mínimo de n para
usar esta aproximación está dado por la siguiente desigualdad:
µ −3σ ≥ 0 ⇒ np −3 n p (1 − p) ≥ 0 ⇒ n ≥9(1− p) / p
dado que se considera que aproximadamente cualquier valor de la distribución está comprendido entre la
media mas o menos tres desviaciones, o mas exactamente en el rango µ ± 3 σ está comprendido el 99.73%
de la población (para efectos prácticos, en muchas aplicaciones se considera que este rango corresponde al
100% de la población).
Para que la aproximación de la distribución normal a la binomial sea buena se requiere que el tamaño de
muestra sea grande (n ≥ 50) y que el parámetro p esté alrededor de 0.5 (0.4 ≤ p ≤ 0.6), ó también que n sea lo
suficientemente grande, sin importar el valor de p (n ≥ 100).
2
La variable binomial se puede aproximar entonces a una normal con µ = np y σ = np(1-p), es decir,
Z=
X − np
n p (1 − p)
se distribuye normalmente con media cero y varianza unitaria. Por lo tanto, la variable X se generaría como:
X = n p + Z n p (1− p’
donde Z corresponde a la variable normal (0,1), que se generaría mediante uno de los métodos analizados
previamente para generar variables normales.
Debe tenerse en cuenta que la distribución binomial es discreta, mientras que la distribución normal es
continua, por lo tanto, el valor resultante para X debe ser entero. Por lo tanto, para generar la variable binomial
mediante la aproximación normal, se recomienda usar el factor de corrección de continuidad de ½ para
aproximar distribuciones discretas mediante distribuciones continuas (usando redondeo simétrico). De acuerdo
con lo anterior, el valor de la variable binomial X estará dado por:
X =[n p + Z n p (1− p ) + 1 / 2]
donde [Y] quiere decir que se toma la parte entera de Y.
4.2.3
Aproximación a través de la distribución de Poisson
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 23
Si p es pequeño (p ≤ 0.1) y n es grande (n ≥ 50), la distribución binomial puede aproximarse por la distribución
de Poisson con parámetro λ = np. Es decir, X puede generarse en igual forma que la distribución de Poisson,
según los métodos que se explicarán posteriormente. Sin embargo este método no es muy eficiente.
4.3
Distribución Geométrica
Una variable aleatoria X tiene una distribución geométrica si su función de probabilidad está dada por:
P(x) = p (1 – p) x-1,
x= 1,.2,…,
donde p representa la probabilidad de que un evento o ensayo de Bernoulli sea exitoso. La variable aleatoria X
puede interpretarse como el número de eventos que es necesario realizar antes de obtener el primer éxito.
Algunas aplicaciones de esta distribución pueden ser:
•
•
•
•
X puede representar el número de lanzamientos requeridos de una moneda antes de obtener la primera
cara; en este caso p representa la probabilidad de que la moneda caiga en cara.
X puede representar el número de artículos que es necesario inspeccionar antes de obtener el primero
que sea defectuoso; en este caso p representa la probabilidad de que un artículo sea defectuoso.
X puede representar el tiempo requerido para terminar una reparación, medido en unidades discretas; en
este caso p representa la probabilidad de que la reparación se termine en una unidad de tiempo.
X puede representar el número de veces que un jugador debe comprar una lotería antes de ganarse la
primera; en este caso p representa la probabilidad de que el jugador se gane una lotería.
La función de distribución está dada por:
x
F ( x) = P( X ≤ x) = ∑ p (1− p)
j −1
j =1
x −1 i
=p ∑
i =0
q
=p
1− q
x
1− q
=1− q
x
La media y la varianza de la distribución geométrica están dadas por:
E (X) = µ = 1 / p,
V(X) = σ2 = q / p2, q = 1 - p
La variable aleatoria geométrica puede generarse por diversos métodos.
4.3.1
Método de la transformación inversa
Como se demostró antes, el valor de la variable aleatoria X será el entero que satisfaga la siguiente
desigualdad F(x – 1) ≤ r < F(x) y como se demostró en el ejemplo 4.6 el valor de X es el entero que cumple la
siguiente desigualdad:
Ln (1− r )
Ln(1− r )
Ln(1− r )
< x≤
+1 ⇒ x es la parte entera de
+1
Ln q
Ln q
Ln q
Ver ejemplo 4.6
4.3.2
Método del rechazo
Como la variable aleatoria X puede interpretarse como el número de eventos que es necesario realizar antes
de obtener el primer éxito, entonces una variación de la técnica del rechazo puede emplearse para generar la
variable geométrica, simplemente mediante la reproducción de ensayos de Bernoulli. Para ello se generan
números aleatorios hasta encontrar el primero que sea menor que p; la variable aleatoria X corresponde al
total de números aleatorios generados, que es equivalente al número de ensayos de Bernoulli realizados. El
procedimiento se puede resumir en los siguientes pasos:
a)
Se inicializa la variable aleatoria en el valor de 1: x = 1(mínimo hay que hacer un ensayo)
b)
Se genera un número aleatorio r.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 24
c)
Si r ≥ p, se hace x = x + 1 y se genera un nuevo número aleatorio (se repite b).
d)
Si r ≥ p, se para el proceso. El valor de la variable aleatoria será el último que tenga la variable x.
Este método es preferido cuando el valor de p es relativamente alto, y cuando se desee una mayor exactitud.
Recuérdese que el valor esperado de la variable es 1/p. Así, si p = 0.01, usando el método del rechazo se
espera tener que generar 100 números aleatorias para obtener el valor de una sola variable aleatoria.
Si definimos Y como la variable que representa el número de fracasos necesarios para obtener el primer éxito,
la función de probabilidad estará dado por:
P(y) = p (1 – p) y-1,
y= 0,1,.2,…,
Entonces se dice que Y = X - 1 sigue una distribución geométrica modificada.
La función de distribución, la media y la varianza de la distribución geométrica modificada están dadas por:
F ( y ) = P(Y ≤ y ) =1− q
y −1
E (Y) = E(X – 1) = µ = q / p
2
2
V(Y) = V(X – 1) = σ = q / p , q = 1 - p
Para generar esta variable aleatoria se usan los mismos métodos de la distribución geométrica, con los
siguientes resultados:
a)
Método de lo transformación inversa
El valor de Y es el entero que satisfaga la siguiente desigualdad:
Ln (1− r )
Ln(1− r )
Ln(1− r )
−1 < x ≤
⇒ Y es la parte entera que resulta de efectuar el siguiente cálculo:
Ln q
Ln q
Ln q
Por ejemplo, si p = 0.20, y se tienen los siguientes números aleatorios, entonces:
Si r = 0.402
Si r = 0.525
Si r = 0.149
Si r = 0.408
Si r = 0.488
Si r = 0.698
b.
⇒
⇒
⇒
⇒
⇒
⇒
1.30 < x ≤ 2.30
2.34 < x ≤ 3.34
-0.38 < x ≤ 0.72
1.35 < x ≤ 2.35
2.00 < x ≤ 3.00
4.37 < x ≤ 5.37
⇒x=2
⇒x=3
⇒x=0
⇒x=2
⇒x=3
⇒x=5
Método del rechazo
El procedimiento es idéntico al de la variable geométrica X, excepto que el contador se inicia en cero y no en
uno.
4.4
Distribución binomial negativa o de Pascal
Cuando estamos interesados en el número de ensayos x necesarios para obtener k éxitos (k > 1), entonces la
variable aleatoria que denota ese número de ensayos tiene una distribución binomial negativa o de pascal.
Matemáticamente, la distribución binomial negativa es la convolución de k distribuciones geométricas. En este
caso k es un entero, y la distribución recibe también el nombre de Distribución de Pascal. La distribución
geométrica es un caso especial de lo distribución de Pascal para k = 1.
La función de probabilidad de la distribución binomial negativa está dada por:
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
 x −1 k
p (1 − p) k ,
p( x, k )=
k
−
1


4 - 25
x = k,k + 1,k + 2,...,
El valor esperado y la varianza de X están dados por:
E (X) = µ = k / p
2
2
V(X) = σ = k q / p , q = 1 - p
Como k es entero, la variable de Pascal puede generarse mediante el proceso matemático que da origen a la
k
distribución, es decir, mediante la suma de k variables geométricas, es decir, X = ∑ X i , donde las Xi siguen
i =1
una distribución geométrica con parámetro p, la cual se genera mediante uno de los dos métodos analizados
previamente. Recordemos que la variable aleatoria representa el número de ensayos requeridos para obtener
los k primeros éxitos (Por ejemplo, X puede ser el tiempo requerido para terminar k tareas)
Observación. Si Y representa el número de fracasos que se presentan antes de obtener k éxitos, entonces Y
= X – K ⇒ X = Y + K. La función de probabilidad de Y estará dada por:
 y + k −1 k
p (1 − p) y ,
p( y, k ) =
k
−
1


y =0,1,2,...,
 y + k −1  y + k −1
 dado que
 =
 k −1   y 
Ahora como se cumple que 
n  n 
 ⇒
  =
 x   n− x 
la función de densidad toma la siguiente forma:
 y + k −1 k
p (1 − p) y ,
p( y, k ) =
 y 
y =0,1,2,...,
donde k es el número total de éxitos en y + k ensayos, y “ y ” es el número de fracasos que se presentan
antes de que ocurran los k primeros éxitos.
El valor esperado y lo varianza de Y están dados por:
E (Y) = µ = k q / p
2
2
V(Y) = σ = k q / p , q = 1 - p
Para generar la variable Y basta con generar k variables geométricas modificadas y sumarlas.
4.4
Distribución hipergeométrica
Considere una población que consta de N elementos, los cuales pueden clasificarse en dos categorías:
categoría I (elementos defectuosos) y categoría II (elementos buenos). El número de elementos que
pertenecen a la categoría I es M, por lo tanto el número de elementos que pertenecen a la categoría II es N
- M. Sea X el número de elementos de la categoría I que hay en una muestra aleatoria de n elementos tomada
de la población total N, n ≤ N. Además, el muestreo se hace sin reemplazamiento. Entonces la variable
aleatoria X tiene una distribución hipergeométrica cuya función de probabilidad está dada por:
 M  N − M 
 

x  n − x 

,
p( x) =
N
 
n 
x = 0,1,..., n, x ≤ M
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 26
donde x, N y M son enteros. La fracción de artículos defectuosos de la población (o elementos que pertenecen
a la categoría I) está dada por: p = M/N.
El valor esperado y la varianza de la distribución hipergeométrica están dados por:
E ( X )=n p
V ( X )=n p q
N −n
N −1
La distribución binomial se usa cuando se hace muestreo, con o sin reemplazamiento, de una población
infinita (o de un proceso). En cambio, la distribución hipergeométrica se aplica cuando se está haciendo
muestreo de una población finita, sin reemplazamiento de los elementos previamente seleccionados. Es decir,
la muestra obtenida resulta de realizar n ensayos de bernoulli, con la diferencia con respecto a la distribución
binomial que la probabilidad de éxito p (fracción de artículos defectuosos) depende de los resultados obtenidos
previamente.
La generación de variables hipergeométricas involucra la simulación de un experimento de muestreo sin
reemplazamiento. Por lo tanto, tenemos que modificar el método de generar ensayos de Bernoulli para tener
en cuento que el tamaño de la población N y el número de elementos tipo I que quedan en la población M
varían a medida que se va realizando el muestreo y por consiguiente p depende del número de elementos de
la categoría l que se vayan obteniendo. A medida que se selecciona cada elemento de la muestra, el valor
original de N se reduce en uno de acuerdo a la fórmula:
Ni = Ni-1 – 1,
para i = 1, 2, …, n, y N0 = N
En igual forma el valor de M se modifica según el resultado obtenido en el muestreo. Se reduce en 1 si el valor
extraído de la muestra pertenece a la categoría I, y queda igual si pertenece a la categoría II. El valor de p
debe recalcularse siempre a medida que se van sacando los elementos de la muestra.
Mi =
=
Mi-1 – 1 si el elemento i pertenece a la categoría I
Mi-1
si el elemento i no pertenece a la categoría I.
El procedimiento completo será:
a)
b)
c)
4.5
Se definen los valores iniciales: N0 = N, M0 = M, x = 0, p = M/N (p =M0 / N0.)
Para i = 1, 2,…, n se genera un número aleatorio ri, y se efectúan las siguientes operaciones:
• Ni = Ni-1 – 1
• Si ri < p, entonces Mi = Mi-1 – 1, x = x + 1
• Si ri ≥ p entonces no se modifican ni Mi ni x
• Se recalcula p como p = Mi / Ni.
Se repite el proceso b) hasta seleccionar los n elementos de la muestra.
Distribución de Poisson
Considere el problema de contar el número de personas N(t) ó X que llegan a recibir servicio a una estación
de gasolina en un intervalo de tiempo t. Si el número medio de personas que llegan por unidad de tiempo es λ,
entonces la variable aleatoria N(t) (ó X) que denota el número de eventos que ocurren en el tiempo t será un
proceso de Poisson con parámetro λ. Por consiguiente, la función de probabilidad estará dada por:
x
(λt )
−
λ
t
p( x) =
,
x = 0,1, 2,...ç
e
x!
La función de distribución está dada por la siguiente expresión, que no puede evaluarse en una forma
analítica::
j
x
− λt (λt )
F ( x) = P( X ≤ x) =
∑e
j!
j =0
La función de distribución también puede expresar en forma recursiva como:
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
F ( x ) = F ( x −1) + p ( x −1)
λt
donde
x
4 - 27
F (0) =e− λt
El valor esperado y la varianza están dados por:
E (X) = µ = λt,
V(X) = σ = λt
2
La distribución de Poisson se aplica en aquellos procesos de conteo en los cuales el número de eventos
depende únicamente de la longitud del intervalo de tiempo. Por ejemplo, el número de personas que llegan a
recibir servicio en un intervalo de tiempo fijo, el número de llamados por minuto que entran a un conmutador,
el número de defectos por metro de tela, etc.
Para generar variables aleatorios que sigan una distribución de Poisson, no es posible usar el método de la
transformación inversa en su forma original, ya que F(x) no tiene uno forma explícita. Se puede emplear una
versión modificada de dicho método o en forma numérica, como si fuera una distribución empírica. El método
más común para generar una variable Poisson es usando la relación que existe entre las distribuciones de
Poisson y la exponencial : Esa relación establece que "si el número de eventos que ocurren en un intervalo de
tiempo t es un proceso de Poisson con parámetro λ, entonces el tiempo entre la ocurrencia de dos eventos
sucesivos sigue una distribución exponencial, con media 1/λ".
4.5.1
Mediante relación con la exponencial
Esta relación entre los variables aleatorias Poisson y exponencial provee un método para generar variables
aleatorios distribuidas poissonianamente. Si X eventos ocurren en el intervalo de tiempo t, entonces la suma
de los tiempos de ocurrencia de los X eventos debe ser menor que t. Es decir, si T1 es el tiempo de ocurrencia
del primer evento, T2 es el tiempo entre la ocurrencia del primero y el segundo eventos, Ti el tiempo entre el
evento i - 1 y el evento i, entonces se debe cumplir que:
x +1
x
∑ T i ≤t < ∑ T i
i =1
i =1
Se sabe que cada Ti, i = 1, 2,..., se distribuye exponencialmente con parámetro λ. Entonces para generar un
valor de x simplemente basta con generar valores sucesivos de Ti. hasta que la suma sea mayor de t. Dado
que estamos interesados en conocer el número de eventos que ocurren en el tiempo t, generamos valores de
Ti hasta que se cumpla por primera vez que:
x +1
∑ T i >t , donde Ti = -Ln ri / λ
i =1
entonces el valor de x será el número de variables Ti generadas menos una (dado que el último evento ocurre
después de t). El valor x = 0 se genera cuando T1 > t, es decir, el primer valor generado es mayor que t.
x +1
x
Esto es, x es el número de eventos tal que ∑ T i ≤t < ∑ T i , donde la sumatoria se inicializa en cero (0.0). Es
i =1
i =1
decir, los primeros x eventos ocurren antes de ó en el tiempo t y el evento x + 1 ocurre después del tiempo t, lo
cual implica que en el tiempo t ocurren x eventos.
Como Ti = -Ln ri / λ, se tiene que:
x +1
x
1 x
1 x +1
x
x +1
i =1
i =1
∑ T i ≤t < ∑ T i ⇒ − λ ∑ Ln r i <t ≤ − λ ∑ Ln r i ⇒ − ∑ Ln r i ≤ λ t ≤ − ∑ Ln r i
i =0
⇒
i =0
i =1
x
x +1
i =1
i =1
i =1
∏ r i <e−λt ≤ ∏ r i
Por lo tanto, y de acuerdo con la expresión anterior, para generar una variable Poisson, basta con generar
números aleatorios, multiplicarlos, y suspender el proceso cuando dicho producto sea menor que e-λt. El valor
de la variable aleatoria x es igual a la cantidad de números aleatorios generados menos 1. La productoria se
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 28
-λt
inicializa en uno (1.0). El valor x = 0 se produce cuando r1 < e , es decir, cuando el primer número aleatorio
-λt
generado es menor que e .
La generación de variables aleatorias mediante la fórmula anterior es más eficiente ya que no se requiere
calcular los logaritmos.
4.5.2
Mediante la transformación inversa
Calculando la función de distribución en forma numérica y recursiva se puede generar variables aleatorias
Poisson, mediante el método de la transformación inversa. El procedimiento es el siguiente, para una
distribución de Poisson con tasa α:
Se inicializa x = 0
Se calcula p = e -α, F = p
Se genera un número aleatorio r
Mientras r≥ F
p =p
α
x
F = F+ p
x= x +1
Fin mientras
4.5.3
Mediante relación con la aproximación normal
Cuando la media de la distribución λt es relativamente grande (λt ≥30) la distribución de Poisson puede
aproximarse por la distribución normal con media y varianza dados por :
µ = σ2 = λt
Por lo tanto, X puede generarse como:
X =[ µ + Z σ + 1 / 2]=[λ t + Z λ t + 1 / 2]
donde Z corresponde a la variable normal (0,1), que se generaría mediante uno de los métodos analizados
previamente para generar variables normales.
Observación. El proceso acabado de presentar se aplica cuando se va a generar un proceso de Poisson,
descrito mediante una distribución de Poisson con media λt, y que describe el número de eventos que ocurren
en un tiempo t, y λ es la tasa media de ocurrencia de eventos por unidad de tiempo (y t puede ser variable).
Por lo general la distribución de Poisson se aplica al número de eventos que ocurren en un intervalo fijo de
tiempo, y el parámetro del proceso se refiere al “numero medio de eventos que ocurren en ese intervalo de
tiempo de interés. En este caso la distribución de Poisson se expresa de la siguiente forma, que es la forma
normal o estándar que toma esta distribución:
x
(a)
−
a
p( x) =
,
x = 0,1, 2,...ç
e
x!
En este caso la variable aleatoria se genera usando exactamente el mismo procedimiento, pero considerando
t = 1.
5
Distribuciones empíricas
Cuando se tiene un conjunto de datos sobre una variable aleatoria, debemos tratar de ajustar esos datos a
una distribución estándar, de las estudiadas antes. Para determinar si los datos se ajustan a la distribución
que se supone, hay disponibles varias pruebas estadísticas, conocidas como pruebas de bondad de ajuste,
tales como la chi cuadrado y la de Smirnov-Kolmogorov, estudiadas antes. Si no es posible describir la función
de probabilidad de a muestra mediante una de las distribuciones estándares, es necesario trabajar entonces
con la distribución empírica que muestran los datos. Para generar estas variables se puede emplear el método
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 29
de la transformación inversa para el caso discreto o una versión modificada de este método propuesta por
Marsaglia.
5.1
Método de la transformación inversa
Si X es una variable aleatoria con función de probabilidad empírica p(x) y función de distribución F(x),
entonces para generar observaciones artificiales de esta variable, se puede usar el método de la
transformación inversa para el caso discreto. Si la variable aleatoria puede tomar únicamente los valores xi,
(variable tipo discreta) con probabilidad p(xi) y función de distribución empírica F(xi), para i = 1, 2,…,N,
entonces, dado un número aleatorio r, el valor de la variable aleatoria X será aquel que satisface la siguiente
desigualdad:
F(xi-1) ≤ x < F(xi)
Ejemplo 4.10. La demanda de un producto durante 55 semanas fue la siguiente:
Demanda
Frecuencia
10
10
15
21
20
17
25
6
30
1
Con base en la frecuencia absoluta, podemos calcular la frecuencia relativa, dividiendo la frecuencia absoluta
por la frecuencia total. Esta frecuencia relativa -p(xi)- nos da la probabilidad (empírica) de que la demanda en
una semana sea igual a xi. Con la frecuencia relativa podemos calcular la frecuencia relativa acumulada que
corresponde a la función de distribución empírica. Estos valores están dados por:
p( xi ) =
f ( xi )
N
i
F ( xi ) = ∑ p ( xi ) = F ( xi −1) + p ( xi )
j =1
La tabla siguiente presenta la información referida anteriormente.
Demanda - xi
Frecuencia relativa - f(xi)
Frecuencia relativa acumulada F(xi)
10
0.18
0.18
15
0.38
0.56
20
0.31
0.87
25
0.11
0.98
30
0.02
1.00
Si la demanda sólo puede tomar los valores anteriores, el generador del proceso usando el método de la
transformación inversa sería el siguiente:
Se genera un número aleatorio R = r
Si
r < F(x1) ⇒
x = x1
Si
F(x1) ≤ r ≤ F(x2) ⇒
x = x2
………………………………………………….
x = xi
Si
F(xi-1) ≤ r ≤ F(xi) ⇒
……………………………………………………………………………….
Si
r ≥ F(xN)
⇒
x = xN
Para el ejemplo que estamos analizando el proceso sería el siguiente:
Gráficamente el proceso sería el siguiente:
Se genera un número aleatorio R = r
Si
r < 0.18 ⇒
x = 10
Si
0.18 ≤ r ≤ 0.56 ⇒
x = 15
x = 20
Si
0.56 ≤ r ≤ 0.87 ⇒
Si
0.87 ≤ r ≤ 0.98 ⇒
x = 25
Si
r ≥ 0.98 ⇒
x = 30
5.2
Interpolación lineal
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 30
Cuando la variable aleatoria X es continua, no discreta, y puede tomar cualquier valor ente xi-1 y xi es posible
usar la interpolación lineal para encontrar el valor de x. E proceso de generación sería el siguiente:
Se genera un número aleatorio R = r
Si
r < F(x1) ⇒
x = x1
………………………………………………….
Si
x = xi −1+
F(xi-1) ≤ r ≤ F(xi) ⇒
(xi − xi −1) (r − )
(F ( xi)− F ( xi −1) xi −1
i
……………………………………………………………………………….
Si
r ≥ F(xN)
⇒
5.3
Método de Marsaglia
x = xN
El método de Marsaglia está diseñado para ser usado en el computador. El método define un bloque o vector
V de N posiciones, a las cuales se le asignan los valores de la variable aleatoria X, y el numero de posiciones
asignadas a cada valor de xi es proporcional a su probabilidad p(xi). Para el ejemplo que estamos
considerando, al valor x = 5 se le asigna el 18% de las posiciones del vector, al valor x = 10 el 38%,…, y al
valor x = 30 el 2%. La tabla siguiente ilustra la forma como quedaría el vector.
Posición
Valor
1 2 3
10 10 10
..
..
17 18 19 20
10 10 15 15
..
..
56 57 58
15 15 20
..
..
86 87 88 89
20 20 25 25
..
..
98 99
25 30
100
30
El número de posiciones N del vector debe ser tal que a cada valor de xi se le asigne un número entero de
posiciones, de tal forma que se preserve la respectiva probabilidad. El número de posiciones asignadas a
cada valor de xi está dado por Np(xi). Por lo tanto, el número de posiciones del vector N debe ser tal que:
Np(xi) = entero, para todo i .
Para nuestro caso, el valor de N debería ser 100. Si las probabilidades las hubiéramos tomado con tres cifras
decimales, hubiéramos requerido un total de 1000 posiciones de memoria, en vez de 100.
Una vez definido y llenado el vector con las N posiciones, entonces para generar una observación de esa
variable aleatoria, se selecciona al azar una de las N posiciones del vector, y el valor de la variable será el
valor que ocupa la posición seleccionada. Es decir, si R es el número aleatorio generado, la posición escogida
j y el valor de la variable están dados por:
Posición
= j = [N r + 1]
Variable aleatoria = Vector(j)
El procedimiento para generar la variable X consta de los siguientes pasos::
1)
Se define un campo de N posiciones en la memoria del computador.
2)
Al valor de xi se le asignan Np(xi) posiciones del total de N, desde la posición F(xi-1) +1 hasta la posición
NF(xi), para i = 1,2.,,,N.
3)
Se genera un número aleatorio r, se calcula la posición correspondiente al valor generado, y se extrae el
respectivo valor. Este es el valor de la variable x.
Los pasos 1 y 2 se realizan solo una vez, al inicializar la simulación, y el paso 3 se repite tantas veces cuantas
variables haya que generar.
Para el ejemplo analizado, los pasos 1 y 2 son los siguientes:
1.
2.
Se define el vector de N = 100 posiciones
Se llenan las 100 posiciones de la siguiente manera:
2.1. Al valor de x1 = 10 se le asignan 18 posiciones, desde la No 1 hasta la No 18.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
3.
4 - 31
2.2. Al valor de x2 = 15 se le asignan 38 posiciones, desde la No 19 hasta la No 56.
2.3. Al valor de x3 = 20 se le asignan 31 posiciones, desde la No 57 hasta la No 87.
2.4. Al valor de x4 = 25 se le asignan 11 posiciones, desde la No 88 hasta la No 98.
2.5. Al valor de x5 = 30 se le asignan 2 posiciones, las posiciones 99 y 100.
Por cada variable aleatoria que se necesite, se genera un número aleatoria, y el valor de la variable
corresponde al número almacenado en la posición j = [100 r +1],
El siguiente seudocódigo ilustra el procedimiento anterior:
Posición inicial = 1
Para i = 1, n
Posición final = Posición inicial + N p(xi)
Para posición = posición inicial hasta posición final
Vector(posición) = xi
Siguiente posición
Posición inicial = posición final + 1
Siguiente i
El procedimiento para generar las observaciones artificiales de la variable aleatoria sería el siguiente
Generar número aleatorio (r)
Posición = j = [N * r +1]
X = vector(j)
6
Generación de variables aleatorias con Excel
La hoja de cálculo excel tiene varias funciones para generar variables aleatorias de diferentes tipos. Estas
funciones son las siguientes:
6.1
Distribución Beta DISTR.BETA.INV
Devuelve, para una probabilidad dada, el valor de la variable aleatoria siguiendo una distribución beta. La
distribución beta puede emplearse en la organización de proyectos para crear modelos con fechas de
finalización probables, de acuerdo con un plazo de finalización y variabilidad esperados.
Sintaxis: DISTR.BETA.INV(probabilidad;alfa;beta;A;B)
•
•
•
Probabilidad: es una probabilidad asociada con la distribución beta. Para la simulación corresponde a un
número aleatorio.
Alfa y Beta son los parámetros de la distribución.
A y B corresponden a los límites inferior y superior, respectivamente, de los valores de x.
DISTR.BETA.INV usa una técnica iterativa para calcular la función. Dado un valor de probabilidad,
DISTR.BETA.INV itera hasta que el resultado tenga una exactitud de ±3x10-7. Si DISTR.BETA.INV no
converge después de 100 iteraciones, la función devuelve el valor de error #N/A.
Ejemplo
DISTR.BETA.INV(0,685470581;8;10;1;3) es igual a 2
6.2
Distribución F DISTR.F.INV
Devuelve el inverso de la distribución de probabilidad F. Si el argumento p = DISTR.F(x,...), entonces
DISTR.F.INV(p,...) = x.
La distribución F puede usarse en una prueba F que compare el grado de variabilidad en dos conjuntos de
datos. Por ejemplo, podría analizar las distribuciones de ingresos en Venezuela y Colombia para determinar si
ambos países tienen un grado de diversidad similar.
Sintaxis: DISTR.F.INV(probabilitdad;grados_de_libertad1;grados_de_libertad2)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
•
•
•
4 - 32
Probabilidad
es una probabilidad asociada con la función de distribución acumulativa F. Para la
simulación corresponde a un número aleatorio.
Grados_de_libertad1 es el número de grados de libertad del numerador.
Grados_de_libertad2 es el número de grados de libertad del denominador.
DISTR.F.INV puede usarse para devolver valores críticos de la distribución F. Por ejemplo, el resultado de un
cálculo AN.VAR generalmente incluye datos para la estadística F, la probabilidad F y el valor crítico F con un
nivel de significación de 0,05. Use el nivel de significación como argumento probabilidad de DISTR.F.INV para
devolver el valor crítico de F.
DISTR.F.INV usa una técnica iterativa para calcular la función. Dado un valor de probabilidad, DISTR.F.INV
reitera hasta que el resultado alcance una exactitud de ± 3x10-7. Si DISTR.F.INV no converge después de 100
iteraciones, la función devuelve el valor de error #N/A.
Ejemplo
DISTR.F.INV(0,01;6;4) es igual a 15,20675
6.3
Distribución Gamma DISTR.GAMMA.INV
Devuelve, para una probabilidad dada, el valor de la variable aleatoria siguiendo una distribución gamma. Si p
= DISTR.GAMMA(x,...), entonces DISTR.GAMMA.INV(p,...) = x
Utilice esta función para estudiar variables cuya distribución podría ser asimétrica.
Sintaxis: DISTR.GAMMA.INV(prob; alfa; beta)
•
•
•
Prob es la probabilidad asociada con la distribución gamma. Para la simulación corresponde a un
número aleatorio.
Alfa es un parámetro de la distribución.
Beta es un parámetro de la distribución. Si beta = 1, DISTR.GAMMA.INV devuelve el valor de la variable
aleatoria siguiendo una distribución gamma estándar.
Ejemplo
DISTR.GAMMA.INV(0,068094;9;2) es igual a 10
6.4
Distribución logarítmica normal DISTR.LOG.INV
Devuelve el inverso de la probabilidad para una variable aleatoria X que sigue una distribución logarítmica
normal, donde ln(x) se distribuye normalmente con los parámetros media y desv_estándar. Si p =
DISTR.LOG.NORM(x,...) entonces DISTR.LOG.INV(p,...) = x.
La distribución logarítmica normal se emplea para analizar datos transformados logarítmicamente.
Sintaxis: DISTR.LOG.INV(probabilidad;media;desv_estándar)
•
•
•
Probabilidad es una probabilidad asociada con la distribución logarítmico-normal. Para la simulación
corresponde a un número aleatorio.
Media es la media de ln(x).
Desv_estándar es la desviación estándar de ln(x).
Ejemplo: DISTR.LOG.INV(0,039084; 3,5; 1,2) es igual a 4,000014
6.5
Distribución normal estándar N(0,1) DISTR.NORM.ESTAND.INV
Devuelve, para una probabilidad dada, el valor de la variable aleatoria que sigue una distribución normal
estándar. La distribución tiene una media de cero y una desviación estándar de uno.
Sintaxis: DISTR.NORM.ESTAND.INV(probabilidad)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
•
4 - 33
Probabilidad
es una probabilidad que corresponde a la distribución normal. Para la simulación
corresponde a un número aleatorio.
La función DISTR.NORM.ESTAND.INV se calcula utilizando una técnica iterativa. Dado un valor del
argumento probabilidad, DISTR.NORM.ESTAND.INV itera hasta que el resultado tenga una exactitud de ±
3x10-7. Si DISTR.NORM.ESTAND.INV no converge después de 100 iteraciones, la función devuelve el valor
de error #N/A.
Ejemplo: DISTR.NORM.ESTAND.INV(0,908789) es igual a 1,3333
6.6
Distribución normal DISTR.NORM.INV
Devuelve, para una probabilidad dada, el valor de la variable aleatoria que sigue una distribución normal con la
media y desviación estándar especificadas.
Sintaxis: DISTR.NORM.INV(prob;media;desv_estándar)
•
•
•
Prob es una probabilidad asociada a la distribución normal. Para la simulación corresponde a un número
aleatorio.
Media es la media aritmética de la distribución.
Desv_estándar es la desviación estándar de la distribución.
DISTR.NORM.INV utiliza la distribución normal estándar si el argumento media = 0 y si el argumento
desv_estándar = 1 (vea DISTR.NORM.ESTAND.INV).
DISTR.NORM.INV se calcula utilizando una técnica iterativa. Dado un valor del argumento probabilidad, la
función DISTR.NORM.INV iterará hasta que el resultado obtenido tenga una exactitud de ± 3x10-7. Si
DISTR.NORM.INV no converge después de 100 iteraciones, la función devuelve el valor de error #N/A.
Ejemplo: DISTR.NORM.INV(0,908789;40;1,5) es igual a 42
6.7
Distribución T DISTR.T.INV
Devuelve, para una probabilidad dada, el valor de la variable aleatoria siguiendo una distribución t de Student
para los grados de libertad especificados.
Sintaxis: DISTR.T.INV(probabilidad;grados_de_libertad)
•
•
Probabilidad es la probabilidad asociada con la distribución t de Student dos colas. Para la simulación
corresponde a un número aleatorio.
Grados_de_libertad es el número de grados de libertad para diferenciar la distribución.
DISTR.T.INV se calcula como DISTR.T.INV=p( t<X ), donde X es una variable aleatoria que sigue la
distribución t.
DISTR.T.INV se calcula utilizando una técnica iterativa. Dado un valor del argumento probabilidad,
DISTR.T.INV reitera hasta obtener un resultado con una exactitud de ± 3x10-7. Si DISTR.T.INV no converge
después de 100 iteraciones, la función devuelve el valor de error #N/A.
Ejemplo: DISTR.T.INV(0,054645;60) es igual a 1,96
6.8
Distribuciones empíricas BUSCARV
Busca un valor específico en la columna más a izquierda de una matriz y devuelve el valor correspondiente en
la misma fila de una columna especificada en la tabla. Se utiliza BUSCARV cuando los valores de
comparación se encuentren en una columna situada a la izquierda de los datos que desea encontrar; cuando
los valores de comparación se encuentren en una fila, se debe usar BUSCARH.
Sintaxis: BUSCARV(valor_buscado;matriz_de_comparación;indicador_columnas;ordenado)
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
•
•
•
4 - 34
Valor_buscado es el valor que se busca en la primera columna de la matriz. Valor_buscado puede ser un
valor, una referencia o una cadena de texto. Para la simulación corresponde a un número aleatorio.
Matriz_de_comparación es el conjunto de información donde se buscan los datos. Se define mediante
una referencia a un rango o un nombre de rango, como por ejemplo Base_de_datos o Lista, $C2:$E15.
Indicador_columnas es el número de la columna de la matriz_de_comparación desde la cual debe
devolverse el valor de la variable. Si el argumento indicador_columnas es igual a 1, la función devuelve el
valor de la primera columna del argumento matriz_de_comparación; si el argumento indicador_columnas
es igual a 2, devuelve el valor de la segunda columna de matriz_de_comparación y así sucesivamente.
Los valores de la primera columna del argumento matriz_de_comparación deben colocarse en orden
ascendente (corresponden a la función de distribución).
Los valores de la primera columna de matriz_de_comparación pueden ser texto, números o valores lógicos. El
texto escrito en mayúsculas y minúsculas es equivalente.
Ordenado
Es un valor lógico que indica si desea que la función BUSCARV busque un valor igual o
aproximado al valor especificado. Si el argumento ordenado es VERDADERO o se omite, la función devuelve
un valor aproximado, es decir, si no encuentra un valor exacto, devolverá el valor inmediatamente menor que
valor_buscado. Si ordenado es FALSO, BUSCARV devuelve el valor buscado. Si no encuentra ningún valor,
devuelve el valor de error #N/A.
Observación. Si BUSCARV no puede encontrar valor_buscado y ordenado es VERDADERO, utiliza el valor
más grande que sea menor o igual a valor_buscado.
Ejemplo. Considere la variable aleatoria analizada en la sección 5.1, cuya información se resume a
continuación:
Demanda – xi
10
15
20
25
30
Frecuencia relativa - f(xi)
0.18
0.38
0.31
0.11
0.02
Frecuencia relativa acumulada - F(xi)
0.18
0.56
0.87
0.98
1.00
Para generar la variable aleatoria mediante la función BUSCARV, la información podría organizarse como se
muestra en la siguiente tabla, y el comando podría ser el siguiente:
Sintaxis: BUSCARV(aleatorio(),$D10:$F$14,3)
Se genera el número aleatorio con la función =aleatorio()
Si
r < 0.18 ⇒
x = 10
Si
r < 0.56 ⇒
x = 15
x = 20
Si
r < 0.87 ⇒
Si
r < 0.98 ⇒
x = 25
Si
r ≥ 0.98 ⇒
x = 30
Para cada valor de Xi se asocia la probabilidad acumulada anterior.
Fila\Columna
1
…
10
11
12
13
14
15
A
.
.
D
.
E
.
F
.
0
0.18
0.56
0.87
0.98
0.18
0.56
0.87
0.98
1.0
10
15
20
25
30
G
.
.
LA función BUSCARH funciona en id’ntica forma, con la diferencia de que la información a buscar está dada
por filas, y no por columnas. Su sintaxis es la siguiente:
BUSCARH(valor_buscado;matriz_buscar_en;indicador_filas; ordenado)
Donde Valor_buscado es el valor que se busca en la primera fila de matriz_buscar_en.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 35
La siguiente tabla resume las funciones generadores de variables dadas en el excel.
Distribución
Beta
F
Gama
Normal
estándar
N(0,1)
Normal
T
7.1
Parámetros
Probabilidad ó
número aleatorio
DISTR.F.INV
Probabilidad ó
número aleatorio
Probabilidad ó
número aleatorio
Probabilidad ó
número aleatorio
DISTR.GAMMA.INV
Logarítmica
Normal
7
Nombre función
DISTR.BETA.INV
DISTR.LOG.INV
Alfa
Beta
Grados de
libertad 1 ν1
Alfa
Grados de
libertad 2 ν2
Beta
AyB
(Valores
mínimo y
máximo)
Desviación
Media del
logaritmo de estándar del
ln x
x
DISTR.NORM.ESTAND.IIIN Probabilidad
V
número aleatorio
DISTR.NORM.INV
DISTR.T.INV
Probabilidad ó
número aleatorio
Probabilidad ó
número aleatorio
Media
Desviación
estándar
Grados de
libertad ν
Otros ejemplos
Ejemplo 4.11 Viaje entre dos puntos.
Se desea un generador que simule el viaje entre dos puntos A y B. entre los cuales hay dos rutas posibles. La
probabilidad de tomar la ruta 1 es p. Las funciones de densidad del tiempo de viaje en cada ruta son :
 1 −λ x
λ e 1

f ( x) =  1
 1 e− λ2 x
 λ 2
x > 0, ruta1


x > 0, ruta 2

Solución : Los tiempos de viaje en cada ruta están dados por :
 1
ln R
−

1
X=
− 1 ln R

2

λ
,
ruta
1
λ
,
ruta
2
Para encontrar el tiempo que dura un viaje cualquiera se debe seleccionar primero la ruta, y luego el tiempo de
viaje en esa ruta.
Deben generarse entonces dos números aleatorios (r1, r2). El primero se usa para determinar ;a ruta que se ha
de tomar, y el segundo para determinar el tiempo en la ruta seleccionada. Por lo tanto, el generador del tiempo
de tiempo será :

−

X=
−

1
λ1
1
λ2
ln R 2 , si R 1 < p
.
ln R 2 , si R 1 < p
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 36
Observación : Sería válido generar solamente un número aleatorio r, el cual nos da primero la ruta que debe
seleccionarse, y luego ese mismo número nos generaría el tiempo en la ruta seleccionada ?. Es decir, puede
usarse el siguiente generador ?
Si r < p tome la ruta No 1 y el tiempo de viaje sería -Ln r/λ1
Si r < p tome la ruta No 2 y el tiempo de viaje sería -Ln r/λ2
La figura No 4. presenta el seudocódigo para simular el tiempo de viaje entre dos putos, cuando se supone
que el tiempo de viaje en cada ruta se distribuye exponencialmente con tiempos esperados de 25 y 40
minutos, y la probabilidad de tomar la ruta No 1 es 0.60.
Definir Número de viajes Nro_Viajes
Definir tasas medias y otros parámetros
Inicializar contadores
Para cada viaje v = 1 hasta Nro_Viajes
Genere Número Aleatorio R1
Si R1 < p, entonces
Ruta ← 1
Si no
Ruta ← 2
Fin Si
Genera R2
Calcule tiempo de viaje
Actualiza Contadodres
Siguiente viaje
Cálculos y generación del reporte
Fin
Read(1, “Número de viajes”)Nro_Viajes
Read(1, “Número de viajes”)Semilla
Tasa(ruta1)=1/25
Tasa(Ruta2)=1/40
p=0.60
Suma_Tiempos=0
Do V = 1,Nro_Viajes
Call num_Aleat(semilla,R1)
If(R1.lt.p) then
Ruta=1
else
Ruta = 2
End if
Call Num_Aleat(Semilla, R2)
Tiempo_Viaje = -Ln R2/Tasa(Ruta)
Suma_Tiempos = Suma_Tiempos +
Tiempo_Viaje
End Do
Tiempo_Medio = Suma_Tiempos/Nro_Viajes
Write(2,10x, ”Número de viajes”, i5/10x,’Tiempo
medio”,f6.1) Nro_Viajes, Tiempo_Medio
End
La tabla siguiente presenta los resultados de la simulación de 500 viajes, para dos semillas diferentes. En la
primera simulación se usó una semilla de 377 para seleccionar la ruta y una de 1425 para calcular el tiempo
de viaje. El programa se implementó en Fortran, y se imprimían los resultados parciales cada 20 viajes.
Concepto
Semillas
Tiempo medio de viaje
Tiempo mínimo de viaje
Tiempo Máximo de viaje
Desviación estándar
Número de viajes
Simulación
No 1
No 2
377 y 1425 1797 y 971
30.6
30.1
0.02
0.07
237.3
241.1
32.0
31.0
500
500
El tiempo medio de viaje calculado analíticamente está dado por:
E(T) = P x E(T1) + (1 - P) x E(T2) = ).6 x 25 +0.4 x 40 = 31.0
La figura No muestras la forma en que varía el tiempo medio de viaje a medida que aumenta el tamaño de la
muestra (número de viajes simulados). Se observa como a medida que aumenta el número de viajes el tiempo
medio tiende a estabilizarse. (ver capítulo No 8, sección relacionada con la determinación del tamaño de la
muestra)
7.2
Ejemplo 4.11 Un problema de inventarios : El problema del vendedor de periódicos
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 37
Un voceador de prensa compra periódicos a $300 cada uno y los vende a $400 la unidad. Al final de cada día
el agente de publicaciones le paga $130 por cada periódico que no haya vendido. La demanda diaria de
periódicos (X) tiene la siguiente función de probabilidad :
x
p(x)
75
0.02
80
0.07
85
0.08
90
0.20
95
0.19
100
0.14
105
0.12
110
0.09
115
0.06
120
0.03
Se desea determinar por simulación el número óptimo de periódicas que el vendedor debe ordenar cada día.
Solución.
El objetivo es definir cuantos periódicos debe ordenar diariamente el voceador de tal forma que se maximice la
utilidad esperada con la venta de los periódicos. Este problema tiene solución analítica. El objetivo será
resolverlo analíticamente y por simulación y comparar las soluciones obtenidas con ambas metodologías.
7.2.1
Solución analítica.
Para la solución analítica y por simulación usaremos la siguiente metodología.
X:
Variable aleatoria que describe la demanda diaria de periódicos.
p(x( ó f(x) : Función de probabilidad o de densidad de demanda diaria de periódicos.
F(x) : Función de distribución
C:
Costo por periódico = $ 300/periódico
V:
Precio unitario de venta = $ 400/periódico
S:
Valor de salvamento o cantidad reconocida por periódico no vendido = $ 130/unidad.
Q:
Cantidad a pedir diariamente
Q* : Cantidad óptima a pedir para maximizar la utilidad esperada.
La utilidad obtenida Si se piden Q periódicos está dada por
Utilidad de periódicos vendidos - Pérdida por periódicos no vendidos
o también por :
Ingresos - egresos
Si el voceador ordena Q periódicos, al final del día puede encontrarse con dos situaciones :
a)
La demanda diaria fue menor que o igual a la cantidad pedida : x ≤ Q
En este caso se obtiene una utilidad por los periódicos vendidos (x) y una pérdida por los periódicos no
vendidos (Q-x). La utilidad está dada por :
U(Q) = x (V - C) - (Q - x) (C - S)
b)
,x≤Q
(1)
La demanda es superior a la cantidad pedida : x > Q
En este caso sólo se obtiene la utilidad por los periódicos vendidos, y no se presenta ninguna pérdida. La
utilidad está dada por :
U(Q) = x (V - C)
,x>Q
(2)
Como la demanda es una variable aleatoria, entonces es necesario calcular la utilidad esperada, la cual estará
dada por la siguiente expresión, dado que se la está tratando como una variable discreta :
E[ U(Q)] =
x=Q
∑
[ x( V − C) − ( Q − x)(C − S)]p( x) +
x=0
∞
∑ Q ( V − c) p ( x )
(3)
x=Q+ u
cuando X es discreta y varía en intervalos de u unidades.
Si Q* es la cantidad a pedir que maximiza la utilidad, entonces se tienen
condiciones :
E[U(Q*)] ≥ E[U(Q* - u)]
E[U(Q*)] ≥ E[U(Q* + u)]
(4)
(5)
que cumplir las siguientes
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 38
Aplicando separadamente las condiciones (4) y (5) a la ecuación (3) se encuentra que el valor óptimo Q* es
aquel que satisface la siguiente desigualdad :
Q*
∑
p ( x) ≤
x = Xmin
V−C
V−S
(5)
Si X es continua la utilidad estará dada por :
E[ U(Q)] =
∫
Q
Xmin
[ x( V − c) − (Q − x)(C − S)]f ( x)dx +
∫
∞
Q
xf ( x)dx
(6)
El valor de Q que maximiza la utilidad esperada es aquel que hace igual a cero la primera derivada de la
ecuación anterior con respecto a Q . Esto es :
dE[ U( Q)]
= 0 ⇒ el valor óptimo de Q es aquel que satisface la siguiente ecuación :
dQ
F (Q*) = ∫
V −C
Q*
f ( x )dx ≥
Xmin
V −S
(7)
Para nuestro caso se tiene :
x
p(x)
F(x)
Ahora
75
0.02
0.02
80
0.07
0.09
85
0.08
0.17
90
0.20
0.37
95
0.19
0.56
100
0.14
0.70
105
0.12
0.82
110
0.09
0.91
115
0.06
0.97
120
0.03
1.00
V − C 400 − 300 100
=
=
= 0.37 ⇒ que la solución óptima es pedir 90 periódicos, si se desea
V − S 400 − 130 270
maximizar la utilidad esperada por la venta de los periódicos.
7.2.2
Solución por simulación
Para determinar por medio de la simulación qué cantidad debe ordenarse, es necesario simular la operación
del sistema (venta de periódicos) durante varios días (N) para diferentes alternativas de la cantidad a pedir
(Q1, Q2,...,QM) y escoger aquella cantidad que maximice la utilidad esperada por día.
Para simular la operación del sistema, dada una cantidad fija a pedir Q, es necesario formular un modelo para
realizar los pasos o etapas que se darían en un día cualquiera si estuviéramos realizando la venta de
periódicos. Este modelo para un día cualquiera está representado mediante las ecuaciones (1) y (2)
formuladas anteriormente. Este procedimiento sería necesario repetirlo para varios días, y luego obtener la
utilidad promedio diaria, que es el mejor estimativo de la utilidad esperada.
El procedimiento a seguir para simular la operación del sistema para una cantidad fija a pedir Q es el
presentado a continuación :
1)
2)
3)
4)
Se define cuantos días se van a simular (N).
Se inicializan los registros o contadores para recoger información (la utilidad promedio, en nuestro caso
∑U=0).
Para cada día i a simular se realizan los siguientes pasos :
3.1) Se genera la demanda de ese día, de acuerdo con la la función de probabilidad de la demanda.
3.2) Se calcula la utilidad diaria, según que la demanda sea menor o igual a la cantidad pedida, o que
sea mayor, usando las expresiones (1) y (2) ya definidas, a saber :
Ui = x (V - C) - (Q - x) (C - S)
x≤Q
Ui = x (V - C)
x>Q
3.3) Se actualiza la utilidad acumulada, según la utilidad obtenida : ∑U=∑U+ Ui
Una vez se han simulado todos los días se calcula la utilidad promedio diaria, dada por ∑U/N
La tabla siguiente presenta el seudocódigo del procedimiento anterior.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 39
Definir Número de días N
Definir cantidad Q
Día = 1
Mientras Día ≤ N
Generar Demanda
Si No
Si Demanda ≤ Q
U = x (V - C) - (Q – x) (C - S)
U = x (V - C)
Actualizar utilidad acumulada ∑U=∑U+ Ui
Día - Día + 1
Utilidad Media UM = ∑U/N
Fin Simulación
El procedimiento anterior es necesario repetirlo para las diferentes cantidades a simular, y de todos ellas se
escoge la que maximice la utilidad promedio.
Para generar la demanda diaria se puede utilizar el método de la transformación inversa, con base en la
función de distribución, de la siguiente manera. Se genera un número aleatorio r. El valor de la demanda será
igual a:
Valor de Demanda
75
80
85
90
95
100
105
110
115
120
Condición
r ∠ 0.02
0.02 ≤ r ∠ 0.09
0.09 ≤ r ∠ 0.17
0.17 ≤ r ∠ 0.37
0.37 ≤ r ∠ 0.56
0.56 ≤ r ∠ 0.70
0.70 ≤ r ∠ 0.82
0.82 ≤ r ∠ 0.91
0.91 ≤ r ∠ 0.97
r ≥ 0.97
Para definir la cantidad óptima, es decir, la que maximice la utilidad esperada, se puede usar un método de
búsqueda. Si en estudios de simulación se desea optimizar una función, deben emplearse métodos numéricos
de optimización, y los mas empleados son los métodos de búsqueda.
Para nuestro caso, la cantidad mínima a pedir sería de 75 unidades, por lo tanto podemos empezar el proceso
de búsqueda en 75 (Q0 = 75), usando un incremento o paso de 5 unidades (∆Q = 5). Se suspende el proceso
de búsqueda cuando la utilidad esperada empiece a decrecer. En resumen, el procedimiento de optimización
sería :
1)
2)
Se simula pidiendo una cantidad inicial Q = Q0 = Xmin = 75 y se obtiene la utilidad media UM(Q0).
Se hace la simulación ordenado una cantidad Q1 = Q0 + ∆Q, y se calcula la utilidad media UM(Q1).
2.1) Si UMQ1) ≤ UM(Q0), entonces termina la búsqueda y la cantidad optima a pedir sería Q= Q0 = 75.
2.2 Si UMQ1) > UM(Q0), entonces se realizan las simulaciones ordenando las siguientes cantidades :
Q2 = Q1 + ∆Q, y se obtiene la utilidad media UM(Q2).
Q3 = Q2 + ∆Q, y se obtiene la utilidad media UM(Q3).
......................
Qk = Qk-1 + ∆Q, y se obtiene la utilidad media UM(Qk).
donde en Qk la función de utilidad no responde, es decir, UM(Qk) ≤ UM(Qk-1).
La cantidad óptima a pedir sería de Q* = Qk-1
La gráfica de la página siguiente presenta el diagrama de flujo completo de la simulación para determinar la
cantidad óptima a pedir.
La tabla siguiente resume los resultados de realizar varias simulaciones para determinar la cantidad óptima.
Además, se presenta los resultados para varios replicados de las corridas (un replicado es el resultado de una
corrida, pero cambiando las semillas usadas para generar los números aleatorios).
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
CANTIDAD
75
80
85
90
95
100
SEMILLA
4 - 40
UTILIDAD MEDIA DIARIA ($) PARA VARIAS SIMULACIONES
No 1
No 2
No 3
7500.0
7500.0
7500.0
7974.4
7977.1
7971.7
8344.8
8362.3
8355.6
8623.4
8639.6
8628.8
8623.9
8656.3
8671.1
8411.1
8407.0
8374.6
9713
1597
475
Para cada corrida se realizaron 1.000 simulaciones. Puede considerarse que la cantidad óptima a pedir
diariamente es de 95 periódicos.
Con el fin de decidir entre 90 y 95 se realizaron corridas de 2000 simulaciones, cuyos resultados se presentan
en la tabla siguiente, los cuales llevan a la misma decisión.
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 41
UTILIDAD MEDIA DIARIA ($) PARA VARIAS SIMULACIONES
No 1
No 2
No 3
8647.7
8642.3
8612.6
8656.3
8646.8
8599.6
9713
1597
475
CANTIDAD
90
95
SEMILLA
Para realizar un seguimiento a una simulación, en la tabla siguiente se presentas los resultados de varias
simulaciones para diferentes valores de Q, realizadas em excel, para un total de 30 días.
Simulación del problema del vendedor de periódicos
para varios valores del tamaño del pedido
Número
Pedido Q =
85
Pedido Q =
90
Pedido Q =
95
Día
Aleatorio
Demanda
Periódicos
Vedidos
Utilidad
Periódicos
Vedidos
Utilidad
Periódicos
Vedidos
Utilidad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Total
Promedi
o
0.0370
0.9553
0.5208
0.0656
0.7514
0.7971
0.9048
0.0747
0.2364
0.6483
0.6962
0.2358
0.0335
0.4260
0.1117
0.5401
0.6454
0.2605
0.4186
0.9268
0.8607
0.0872
0.7895
0.6240
0.9751
0.6145
0.4680
0.6953
0.0680
0.3132
80
115
95
80
105
105
110
80
90
100
100
90
80
95
85
95
100
90
95
115
110
80
105
100
120
100
95
100
80
90
2885
96.2
80
85
85
80
85
85
85
80
85
85
85
85
80
85
85
85
85
85
85
85
85
80
85
85
85
85
85
85
80
85
2520
84.0
7000
8500
8500
7000
8500
8500
8500
7000
8500
8500
8500
8500
7000
8500
8500
8500
8500
8500
8500
8500
8500
7000
8500
8500
8500
8500
8500
8500
7000
8500
246,000
8200.0
80
90
90
80
90
90
90
80
90
90
90
90
80
90
85
90
90
90
90
90
90
80
90
90
90
90
90
90
80
90
2635
87.8
6000
9000
9000
6000
9000
9000
9000
6000
9000
9000
9000
9000
6000
9000
7500
9000
9000
9000
9000
9000
9000
6000
9000
9000
9000
9000
9000
9000
6000
9000
250,500
8350.0
80
95
95
80
95
95
95
80
90
95
95
90
80
95
85
95
95
90
95
95
95
80
95
95
95
95
95
95
80
90
2730
91.0
5000
9500
9500
5000
9500
9500
9500
5000
8000
9500
9500
8000
5000
9500
6500
9500
9500
8000
9500
9500
9500
5000
9500
9500
9500
9500
9500
9500
5000
8000
249,000
8300.0
0.4927
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
8
4 - 42
Problemas
4.1 Usando los mismos números aleatorios generados en el problema 3.1, genere igual número de variables
aleatorios que sigan las siguientes distribuciones:
a) Exponencial con parámetro unitario (exponencial normalizada).
b) Poisson con mismo parámetro de 10
c)
Aplique las pruebas chi-cuadrado y de kolmogorov-Smirnov a las variables obtenidos en a) y b).
4.2 Genere 100 variables aleatorias con una distribución normal cualquiera. Aplique las pruebas de “bondad
de ajuste” chi-cuadrado y de Kolmogorov-Smirnov. Dibuje el histograma respectivo.
4.3 Genere unos 200 números aleatorios con distribución exponencial, para distintos parámetros, y luego
dibuje el histograma de frecuencia respectivos, y obtenga conclusiones con respecto a la forma de la
distribución a medida que el parámetro crece. A qué distribución tiende?.
4.4 Repita el problema anterior, pero con la distribución de Poisson.
4.5 Desarrolle un generador de proceso para una variable aleatoria que siga una distribución chi-cuadrado.
4.6 Desarrolle un generador de procesos para una variable aleatoria que con una distribución F.
4.7 Desarrolle un generador de un proceso que produzca variables aleatorias que sigan una distribución t ó
de “student”.
4.8 Desarrolle generadores de procesos para las siguientes funciones de densidad
x/100
a.
0 < x < 10
f (x) =
(20 - x)/100
b.
f(x) =
(b + 1) ( 1 - x)
10 < x < 20
b
0<x<1
4.9 Desarrolle generadores de procesos para cada una de las variables definidas por las siguientes
funciones de probabilidad:
p (1- p) x-1
------------------,
1 - (1 - p) n
a.
p(x) =
b.
p(x) = x/6,
x = 1, 2,..., n
x = 1, 2,..., 6
4.10 La distribución del tiempo entre llegadas de órdenes a un depósito es exponencial con media de un día.
La distribución del numero de unidades requeridas en cada orden es geométrica con p = 0.5. Desarrolle
un generador que produzca la variable aleatoria que representa el número total de unidades pedidas en
un día de ocho horas.
4.11 Una línea de producción debe ser mantenida por una cuadrilla de reparación. La línea puede fallar por
varias causas. Cuando el sistema falla, el equipo de reparación corrige el problema que ocasionó la falla
y hace los ajustes necesarios en la línea para reducir la probabilidad de que la línea falle por cualquiera
de las restantes causas, es decir, cuando se hace un ajuste por un problema, se corrigen las tres
causas. Sea Ti el tiempo en horas hasta que el sistema falle por la i-ésima causa, medida desde el
último ajuste. La función de densidad de Ti está dada por la siguiente expresión, con los parámetros
dados en la tabla adjunta:
λe
i
f(ti) =
−
λt
i
i
( λ i t i)
ni −1
(n − 1) !
,
ti > 0,
i = 1, 2, 3.
i
i
1
2
3
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
λi
ni
0.25
4
0.10
8
4 - 43
0.25
2
La función de densidad del tiempo requerido para completar las reparaciones está dado por:
g (x) = 5 e -5x
x>0
donde el tiempo de reparación es independiente del tiempo de falla. Se quiere determinar por
simulación a) El porcentaje de tiempo que el sistema está inactivo durante un año y b) El porcentaje de
fallas causadas por cada causa..
4.12 Un fabricante produce uno de sus productos en lotes de 300. Loas programas de producción se hacen
con 10 días de adelanto. Para cada unidad producida se requiere una unidad de materia prima. La
materia prima requerida es comprada a un proveedor y la orden por la materia prima debe colocarse
dentro de los 10 días precedentes al comienzo programado de la producción. La orden puede colocarse
en uno cualquiera de estos 10 días. Si la orden se coloca demasiado tarde la producción se retrasa a un
costo de $ 200.000 por año de retraso. Sin embargo, si la orden se coloca demasiado pronto, la materia
prima debe mantenerse en inventario a un costo de $ 200 por unidad año. La distribución del tiempo de
espera, en años, es Erlang con n = 200, K = 4. Se pide determinar cuándo deben colocarse las órdenes
por la materia prima.
4.13 Todos los días un hombre deja su casa (A) y va a trabajar a (H). Sin embargo, no siempre toma la
misma ruta. El diagrama siguiente indica las rutas que puede tomar. El valor que hay encima de cada
ruta es la probabilidad de tomarla, y el valor que hay debajo identifica la ruta.
0.8
0.8
B
E
3
.7 0.3
0.5
1
0.2
0.6
7
10
9
1A
4
1.
H
G
D
13
.5
.6 . 5
0.4
0.4 11 .6
2
8
12
.4
F
C
6
La distribución del tiempo gastado en cada ruta es normal, con los siguientes parámetros:
Ruta
1
2
3
4
5
6
Media(min)
20
15
5
7
6
10
Desviación
1.0
2.0
0.5
1.0
1.5
2.0
Ruta
7
8
9
10
11
12
13
Media (min)
4
5
3
6
5
7
6
Desviac.
0.6
0.8
0.25
1.0
0.8
1.1
1.0
Determine el tiempo medio de viaje entre (A) y (H), después de 500 viajes y compárelo con la solución
analítica.
4.14 La distribución de la producción diaria de un artículo es normal, con una media de 6.000 artículos y una
desviación de 500. Cada día se debe desechar cierto porcentaje (100p) de la producción total. Esto es
si el porcentaje de deshechos es 100p y si la producción diaria es x, la producción neta será y = x - px.
La función de densidad de la fracción defectuosa p está dada por:
g(p) = 99 (1- p) 98,
0<p<1
Desarrolle un generador para la producción neta por día; genere la producción durante 500 días y
demuestre, usando la prueba chi-cuadrado o la Smirnov-Kolmogorov que la producción neta diaria es
normal. Use α = 0.05.
4.15 Se ha diseñado el siguiente sistema de control de calidad para controlar una dimensión particular. Se
selecciona una muestra de 9 artículos de un lote de 1.000 unidades. Se mide la dimensión de cada
unidad de la muestra y luego se calcula la dimensión media x como:
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 44
N
∑ Xi
X = i =1
N
siendo xi la dimensión del i -ésimo artículo de la muestra y N = 9. Si x cae entre 4.5 y 5.5 el lote es
aceptado; en caso contrario el lote es rechazado. La dimensión deseada es 5. La distribución de la
dimensión de cada artículo del lote es normal, con media m y desviación estándar 0.7 La distribución
de la media del lote m es normal con media 5 y desviación de 0.1. Simulando la inspección de 1000
lotes determine la probabilidad de rechazar un lote.
4.16 Un sistema electrónico está compuesto de tres componentes 1,2 y 3 tal que si cualquier componente
falla, el sistema falla (sistema en serie). La distribución del tiempo hasta la falla de cada componente es
normal con la media y la desviación estándar dados en la tabla dada al final de este problema. Este
sistema debe funcionar en forma continua durante un año. La confiabilidad del sistema (definida como
probabilidad de que sobreviva este período de tiempo) es la probabilidad de que cada uno de los
componentes dure al menos un año, y está dada por:
Confiabilidad = P( T1 ≥ 1) x P( T2 ≥ 1) x P( T3 ≥ 1) = (0.9772) (0.9961) (0.8413) = 0.8189
Una confiabilidad del 81.89% no se la considera lo suficientemente alta. Para aumentar la
confiabilidad del sistema se pueden agregar componentes en estado de alerta de respaldo, los cuales
pueden desempeñar la misma función del componente principal cuando éste falle, extendiendo así la
vida del sistema. La distribución de cada componente adicional (o de respaldo) es exponencial, con la
media dada en la tabla mencionada. Se pueden agregar cualquier número de componentes, pero al
costo dado en la misma tabla. Determine por simulación el número y el arreglo de los componentes que
lleven la confiabilidad del sistema a al 98% (al mínimo costo).
Componente
1
2
3
COMPONENTE PRINCIPAL
Vida Media
Desviación
(años)
Estándar (años)
1.2
0.10
1.4
0.15
1.1
0.10
COMPONENTES DE RESPALDO
Vida media
Costo/unidad
(años)
agregada
0.05
200
0.07
300
0.04
250
4.17 Un centro de cómputo opera 24 horas al día y requiere tres operarios de computador por turno de 8
horas. A cada operario se le pagan $30 la hora. Si un operario no puede trabajar su turno, debe ser
reemplazado en ese turno o el equipo que maneja debe apagarse, a un costo de $ 1.000 por hora. Para
asegurarse contra la posibilidad de pérdidas de tiempo de máquina se ha propuesto que varios de los
operarios sean mantenidos “bajo alerta” para ser llamados en aquellos turnos en que no están
trabajando. Se propone que a estos operarios se les pague una bonificación de $4.00 por hora para que
estén disponibles. Cuando se llame a uno de estos operarios a trabajar se les debe pagar un recargo del
50%. La probabilidad de que un operario pueda trabajar su turno es 0.95 y la probabilidad de que un
operario bajo alerta puede ser localizado cuando se lo necesite es de 0.90. Determine el número óptimo
de operarios que deben mantenerse “bajo alerta”, de tal manera que se minimice el costo total. Asuma
que a cada operario que esté bajo alerta se le pagan los $ 4 por hora sea que se le necesite o no.
4.18 El departamento de control de calidad ha adoptado un plan de muestreo para lotes que se reciben de un
proveedor externo. Las unidades se seleccionan una a una. Si se encuentran dos unidades
defectuosas., el lote debe rechazarse. Si el número de defectuosos encontrados después de
inspeccionar diez artículos es cero o uno, el lote es aceptado. La fracción defectuosa p sigue la
distribución siguiente, con a = 10.
f (p) = (a+1) (1-p)a
,0<p<1
Cada inspección cuesta $ 10 por artículo. El costo esperado de inspección ha sido estimado en $ 85
por lote inspeccionado. Determine por simulación si este estimativo puede aceptarse. Use α = 0.05
4.19 Una compañía produce mezcladores eléctricos a una tasa anual de 1 000. Cada mezclador está
garantizado por un período de 4 años. El costo de producir un mezclador que tenga una vida media de
m años está dado por:
c = a + bm + cm2
donde a = $ 250, b = $ 200, c = $ 10
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 45
El tiempo de funcionamiento de un mezclador hasta que falla se distribuye exponencialmente con la
media m. Cada falla que ocurre durante la garantía le cuesta al productor $ 333.50. Se quiere
determinar por simulación el valor óptimo de m.
4.20 Resuelva el problema anterior cuando el costo de una falla (C) durante el período de garantía es una
variable aleatoria con la siguiente función de densidad:
f (c) =
0.25 (20 - c)
0 < c < 20
4.21 En el problema 18 se espera que el costo de producción por unidad aumente a una tasa promedio de
7% por año para los próximos 5 años y el costo por fallas se espera que aumente en un 10% por año
durante el mismo período. Encuentre el valor óptimo de m.
4.22 La tasa de nacimiento de una población se distribuye normalmente con un valor medio de 5% y una
desviación estándar de 0.5%. La tasa de muerte también se distribuye normalmente con media 6% y
desviación estándar 1%. Calcule los cambios en la población para 5 años a intervalos de un año.
4.23 Un recipiente contiene 1.000.000 de galones de agua y se vacía a una tasa estable de 10.000 galones
por día. Las lluvias ocurren con una distribución de Poisson a una tasa media de una en 10 días. La
cantidad de agua que cae al tanque en cada lluvia está distribuida normalmente con una media de
80.000 galones y una desviación estándar de 5.000 galones.
a)
b)
Determine el contenido del recipiente después de 60 años. Asuma que el recipiente empieza lleno y
que el agua excede la capacidad del recipiente se pierde.
Cuántos galones de agua fueron desaprovechados?
4.24 Los carros llegan aleatoriamente a una cabina y pagan el peaje. Si es necesario, esperan en la cola de
acuerdo al orden de llegada. El tiempo entre llegadas se distribuye uniformemente entre 0 y 9, inclusive
(aproxime al segundo más cercano). El tiempo para pagar es también aleatorio y entre 0 y 9 segundos,
pero con la siguiente distribución de probabilidad:
f(t) = t - 1/2 /6,
0 < t <9
Determine los tiempos de llegada y los tiempos que necesitan para pagar los 10 primeros carros. A
qué hora termina de pagar el quinto carro?. El séptimo?. Trunque todos los números calculados al
entero más cercano.
4.25 Un repartidor compra periódicos en paquetes de veinte a dos pesos cada uno y los vende a tres pesos.
Los periódicos no vendidos carecen de valor. Al analizar las ventas del pasado se descubre que existen
tres distribuciones de la demanda, dependiendo de las noticias que figuran en el periódico. Un día de
“Buenas” noticias da como resultado encabezados interesantes para muchos clientes potenciales; los
días “normales” y “malos” tienen encabezados de menor interés. Históricamente, el 20% de los días han
sido buenos, el 50% “normales” y el 30% “malos”. Las distribuciones de la demanda se resumen a
continuación:
Demanda diaria
40
50
60
70
80
90
100
110
120
130
140
150
Malo
0.05
0.20
0.41
0.26
0.08
Tipo de día, según las noticias
Normal
0.03
0.07
0.28
0.30
0.25
0.07
Bueno
0.02
0.15
0.28
0.24
0.12
0.09
0.06
0.04
Determine la cantidad que debe pedirse.
4.26 Una empresa de alquiler de autos está tratando de determinar el número óptimo de autos a comprar. El
costo promedio anual de un auto es de $ 11 000 000. Además, esta compañía ha recopilado las
siguientes estadísticas sobre las operaciones de carros :
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
Número de autos alquilados por día
Probabilidad
0
0.10
Número de días rentados por auto
Probabilidad
1
0.40
1
0.10
4 - 46
2
0.25
2
0.35
3
0.30
3
0.15
4
0.25
4
0.10
Si la renta diaria por auto es de $52 000, el costo de no tener un auto disponible cuando se lo solicita es
de $30 000, y el costo de tener un carro ocioso durante un día es de $7 500, cuantos autos deberá
comprar la compañía ?. Suponga que un auto que se alquila por un día está disponible al día siguiente.
4.27 Un vendedor de revistas compra mensualmente una revista el día primero de cada mes. El costo de
cada ejemplar es $6 000. La demanda de esta revista en los primeros diez días del mes tiene la
distribución de probabilidad dada a continuación:
Demanda
Probabilidad
5
0.05
6
0.05
7
0.10
8
0.15
9
0.25
10
0.25
11
0.15
Al final del décimo día, el vendedor puede regresar cualquier cantidad de revistas al proveedor, quien se
las pagará a 3 600 el ejemplar, o puede comprar mas revistas a un costo de $4 800 el ejemplar. La
demanda en los siguientes 20 días está dada por la siguiente distribución de probabilidad:
Demanda
Probabilidad
4
0.15
5
0.20
6
0.30
7
0.20
8
0.15
Al final del mes, el vendedor puede regresar al proveedor las revistas que le sobren, las cuales se le
pagarán a $3 600 el ejemplar. Finalmente, se supone que después de un mes ya no existe demanda por
parte del público, puesto que para ese entonces ya habrá aparecido el nuevo ejemplar. Si el precio al
público de la revista es $ 8 000 por ejemplar, determine la política óptima de compra.
4.28 Debido a un aumento en las ventas, cierta compañía productora necesita mas espacio en su fábrica. La
solución que se ha propuesto es la construcción de un nuevo depósito para almacenar los productos
terminados. Este depósito estará localizado a 35 kilómetros de la planta. Además, de acuerdo con este
nuevo plan, se requiere que al final del día se envíe la producción terminada al nuevo depósito.
Por otra parte, con base en información histórica, se ha estimado que la producción diaria de la empresa
tiene la siguiente distribución de probabilidad:
Producción diaria (toneladas)
Probabilidad
50 - 55
0.10
55 - 60
0.15
60 – 65
0.30
65 - 70
0.35
70 - 75
0.08
75 - 80
0.02
También se sabe que el tipo de camiones que se deben utilizar para transportar esta producción tienen
capacidad de 5 toneladas. La cantidad de viajes que se pueden realizar cada día (jornada de 8 horas),
depende del tiempo de carga y descarga, como también del tiempo que se requiere para recorrer la
distancia entre la planta y el depósito. Por lo tanto, la cantidad de producto terminado que un camión
puede transportar de la planta al depósito, es una variable aleatoria cuya distribución de probabilidad es
la siguiente:
Toneladas diarias transportadas/camión
Probabilidad
4.0 –4.5
0.30
4.5 – 5.0
0.40
5.0 –5.5
0.20
5.5 – 6.0
0.10
Si la cantidad diaria producida es mayor que la cantidad que puede transportar la flotilla de camiones, el
excedente debe ser enviado a través de camiones de otra compañía transportadora a un costo de $20 000 la
tonelada. Además el costo promedio anual de un camión nuevo es de $ 20 000 000. Si se trabajan 250 días al
año, cual es el número óptimo de camiones que la empresa debe comprar?
B. Calderón. Introducción a la Simulación. Cap 4. “Generación de Procesos”
4 - 47
METODOS DE BUSQUEDA
Los métodos numéricos de búsqueda se clasifican, en general, en dos clases : 1) Búsqueda en un rango no
restringido, cuando no se conoce el rango en que se encuentra el valor óptimo, y 2) Búsqueda en un rango
restringido cuando se sabe que el óptimo se encuentra en un rango finito, por ejemplo, entre a y b.
Inicia la simulación
Definir : Número de días, semillas,
costos, demanda y probabilidades
Inicializar :
Pedido inicial Q0 = Xmin = 75
Incremento = psao =∆Q = 5
Descargar