Técnicas de Simulación y Modelos Aleatorios
Técnicas de Simulación y Modelos Aleatorios
SIMULACIÓN
7.1 INTRODUCCIÓN
Es una técnica que permite realizar experimentos sobre una representación de un sistema
(modelo).
Un modelo es una representación o abstracción de una situación o fenómeno reales. Algunos
tipos de modelos: Icónicos, Diagramáticos (Analógicos), Matemáticos. Los de tercer tipo son los
que más se utilizan en la simulación.
El tiempo para ver los resultados probablemente sea muy amplio como para hacer un
experimento.
La inversión al hacer un experimento puede ser alta.
Existe un riesgo al hacer un experimento real.
1. Formular el modelo que representa el sistema a ser investigado. Por ejemplo: diagramas de
procesos, flujogramas, diagramas de redes, organigramas.
UES/FIA/EII/IOP215 Pá gina 1
2. Validar el modelo: Tomar muestras, comprobar, interpretar, decidir. Algunas veces el modelo
deber ser estadísticamente comprobable que es el correcto o el más adecuado.
3. Diseñar el experimento: ¿Qué se desea medir? ¿Cuántos resultados se necesitan? ¿Cómo
probará los resultados? La información disponible es una forma de indicar que el modelo es
correcto.
4. Desarrollar el programa para el computador. Para obtener información en forma ágil y
oportuna.
5. Generar los números aleatorios. Son números al azar que son los que permiten realizar las
pruebas.
Nuestro énfasis se centrará en el último de los pasos mencionados.
La generación de números aleatorios son aquellos procedimientos que se utilizan para generar
datos que siguen alguna distribución de probabilidad a través de la toma de números al azar. Los
procedimientos a aplicar dependerán de la existencia o no de una función conocida que permita
generar los números aleatorios. Cuando no existe la función, se utiliza el Método de Montecarlo
que aplica a distribuciones de probabilidad discretas, mientras que si se conoce la función se
pueden generar variables aleatorias para distribuciones de probabilidad continuas.
Se utiliza para generar números aleatorios decimales para variables aleatorias con
distribución de probabilidad conocida.
Pasos:
UES/FIA/EII/IOP215 Pá gina 2
1) Seleccionar un número “x” que posea una cantidad cualquiera de dígitos,
menor que 9.
2) Seleccionar un número “y” que también posea una cantidad cualquiera de
dígitos, menor que 9. Es preferible que este segundo número posea menos
dígitos que el primero o a lo sumo igual.
3) Multiplicar el primer número por el segundo (xy ).
4) Seleccionar una fracción o número decimal pequeño “z”. Multiplicar el
producto del paso 3 por el número “z” ( xyz).
5) Seleccionar la porción decimal como el primer número aleatorio decimal.
6) Multiplicar el producto “xy” obtenido en el paso 3 por el número “y” del paso
2,( xyy= xy 2).
7) Multiplicar el producto del paso 6 por el número decimal “z” del paso 4,
(xy ¿¿ 2 z) ¿
8) Seleccionar la parte decimal como el siguiente número aleatorio.
9) Multiplicar el producto del paso 7 por el número “y” del paso 2,( xy 3 z ) .
Continuar con el paso 8.
10) El producto del paso 9 se multiplica por el numero “y” tantas veces como sea
necesario hasta obtener la cantidad deseada de números al azar decimales o
fraccionarios ( xy n z ).
Un resumen de los pasos anteriores es el siguiente:
Producto Nº Aleatorio
xyz 1º
2
xy z 2º
3
xy z 3º
. .
. .
. .
n
xy z enésimo
Ejemplo. Obtenga diez números decimales de dos dígitos a partir de los números
x=4681, y=325 , z=0.03 :
Nota: Se puede aproximar el segundo dígito siguiendo las reglas o se deja sin aproximar.
UES/FIA/EII/IOP215 Pá gina 3
Se usa para resolver problemas que dependen de la probabilidad en los que la experimentación
física es no factible y donde es “imposible” la creación de una fórmula exacta. Este consiste en una
simulación con técnicas de muestreo, es decir que en vez de obtener muestras de una población
real se obtiene un “duplicado” técnico de la población real. La no factibilidad de la
experimentación puede deberse a una inversión muy alta o porque es muy riesgosa.
Algunos campos de aplicación
Inventarios
Proyectos de inversión
Inspecciones para el control de calidad
Programación de recursos (humanos o materiales)
Líneas de espera
Programación de proyectos
Secuencia de trabajo en una planta
Mantenimiento
Flujo de tránsito
EJEMPLOS.
x 10 20 30 40 50
P(x ) 0.05 0.20 0.40 0.30 0.05
SOLUCIÓN
x P ( x) Σ P (x) Rango
10 0.05 0.05 01 – 05
20 0.20 0.25 06 – 25
30 0.40 0.65 26 – 65
40 0.30 0.95 66 – 95
50 0.05 1.00 96 - 00
Tipo: Variable aleatoria discreta (V.A.D.) sin distribución de probabilidad: Método de Montecarlo.
Semilla Generadora de datos para la demanda: 4217
4217
UES/FIA/EII/IOP215 Pá gina 4
Dí Inventario Nº Aleatorio Demand Inventario Unidades Unidades ¿Hacer
a Inicial p/demanda a Final Vendidas en escasez pedido?
1
2
3
4
5
6
7
8
9
10
Una empresa está considerando realizar una inversión en un equipo que tenga una ganancia
esperada alta con respecto al valor presente de los gastos iniciales. El problema se origina dada la
serie de situaciones del proyecto en las fuentes de riesgo o incertidumbre:
UES/FIA/EII/IOP215 Pá gina 5
6 0.2
Se asume que el equipo tiene un valor residual bajo al final de su vida, por lo que puede
considerarse igual a cero. La tasa de interés aplicada es de 10% anual. Para efectos de decisión se
considerará el análisis beneficio-costo. Realice una simulación de seis pruebas para encontrar el
radio beneficio-costo promedio y tomar la decisión de aceptar o no el proyecto.
r B/ C =
Ingresos
=
P
G( )
A
=
G
[
( 1+ i)n−1
i(1+i)
n
] r <1 → No se acepta
r =1→ Indiferente
Egresos I I
r >1 → Se acepta
Procedimiento de solución:
r=
∑r
Nº de iteraciones
8. Teniendo el radio promedio, tomar la decisión de acuerdo a los parámetros:
(r <1 , r=1 ó r >1)
SOLUCIÓN
I P( x ) Σ P ( x) Rango
8000 0.05 0.05 01-05
10000 0.80 0.85 06-85
12000 0.15 1.00 86-00
G P( x ) Σ P ( x) Rango
2000 0.1 0.1 01-10
3000 0.4 0.5 11-50
4000 0.4 0.9 51-90
UES/FIA/EII/IOP215 Pá gina 6
5000 0.1 1.0 91-00
n P( x ) Σ P (x) Rango
5 0.1 0.1 01-10
6 0.2 0.3 11-30
7 0.4 0.7 31-70
8 0.2 0.9 71-90
9 0.1 1.0 91-00
Utilizando tres semillas generadoras de datos para I, G y n:
I G n
5789 3648 7592
Iter.
Nº
Aleat.
para I
I
Nº Aleat.
para G
G
Nº Aleat.
para n
n
r=
G
[ (1+i)n−1
i(1+i)n ]
I
[ ]
7
(1.1) −1
3
1 0.1(1.1)7
r= =¿
10
[ ]
8
(1.1) −1
4
2 0.1(1.1)8
r= =¿
10
[ ]
8
(1.1) −1
3
3 0.1(1.1)8
r= =¿
10
[ ]
7
(1.1) −1
2
4 0.1(1.1)7
r= =¿
10
[ ]
5
(1.1) −1
2
5 0.1(1.1)5
r= =¿
8
[ ]
6
( 1.1) −1
5
6 0.1(1.1)6
r= =¿
10
UES/FIA/EII/IOP215 Pá gina 7
r=
∑ ri =
1.4605+ 2.1340+1.6005+0.9737+0.9477+ 2.1776 ❑
= =¿
Nº Iter . 6 6
Tomando la decisión:
r =¿ 1∴ SE ACEPTA EL PROYECTO
()
b ( x , n , p )= n p q
x
x n−x
Una empresa manufacturera elabora cierto artículo del cual se obtienen lotes buenos y lotes
malos. El procesamiento de lotes malos está en función de los artículos defectuosos. Si se
inspeccionan 100 artículos, la empresa desea conocer mediante simulación la probabilidad de
encontrar lotes malos. Se acepta como fracción defectuosa 5% y se considera un lote malo aquel
que posee 4 artículos defectuosos o más. Realice diez pruebas.
Lote malo = 4 o más artículos defectuosos ⟹ Prob . ( Lote malo )=1− prob .(lote bueno)
3 3
p ( lote bueno )=∑ Pn= p 0+ p1 + p2 + p3=∑ b(x , 100 ,005)
x=0 x=0
( )
P0= 100 (0.05)0 (0.95)100 =0.
0
1( )
P1= 100 ( 0.05 ) ( 0.95 ) =0.
1 99
2( )
P2= 100 ( 0.05 ) ( 0.95 ) =0.
2 98
( )
P3= 100 (0.05)3 (0.95)97=0.
3
UES/FIA/EII/IOP215 Pá gina 8
3
Semilla: 7531
7531
Casos favorables ❑
Frecuencia de lotes malos¿ = =0. (Existe un % de posibilidad de encontrar
Casos posibles 10
lotes malos)
El director de una estación de bomberos desea saber el número de llamadas que pueden ocurrir
para efectos de programación de las unidades. Se tiene un registro del número de llamadas por
hora de donde se sabe que la media es de 3 llamadas por hora durante 1000 observaciones y que
siguen una distribución de Poisson. Realice una simulación para 10 llamadas.
λx e− λ
P ( x) =
x!
Semilla: 7816
7816
UES/FIA/EII/IOP215 Pá gina 9
( ) λx e− λ 30 e−3
Ejemplo de cálculo de P x = → P ( 0 )= =0.049787
x! 0!
x P( x ) Σ P ( x) Rango Nº Aleat. x
0 0.0498 0.0498 001-050 089
1 0.1494 0.1992 051-199 806
2 0.2240 0.4232 200-423 028
3 0.2240 0.6472 424-647 078
4 0.1680 0.8152 648-815 614
5 0.1008 0.9160 816-916 773
6 0.0504 0.9664 917-966 799
7 0.0216 0.9880 967-988 872
8 0.0081 0.9961 989-996 038
9 0.0027 0.9988 997-000 147
10 o
0.0012 1.0000 Σ
más
x=
∑ xi =❑ = , por lo tanto, se necesitan llamadas por hora para programar
Nº Iter . 10
unidades.
A través de muestreo se han tomado 100 horas de observación. La evaluación se realizará con el
criterio del radio beneficio-costo. La vida útil de un montacargas se estima en 5 años.
UES/FIA/EII/IOP215 Pá gina 10
Procedimiento de solución
1. El beneficio será el ahorro en costo en toda la vida del segundo montacargas pasado al
año cero (valor presente). El ahorro en costo se calculará así:
a. Estimar el costo de espera de servicio por unidad de tiempo. Se considera que es
de $0.30 / minuto.
b. Por simulación se establecerán los costos de espera al año para un montacargas.
c. Por simulación se obtendrán también los costos de espera al año para los dos
montacargas.
d. La diferencia calculada de los literales c y b (c-b) si es negativa, por tratarse de
costos, se traduce en un ahorro (beneficio).
2. El radio beneficio/costo será igual al ahorro en costos (beneficio) con dos montacargas
entre la inversión (costo) del segundo montacargas.
DATOS
12meses
Salario del operario del montacargas = $400/mes X =$ 4800/año
1año
Alm. Alm.
1 2 ... n
M.P. P.T.
UES/FIA/EII/IOP215 Pá gina 11
La simulación requiere que la distribución de frecuencia para el tiempo entre arribos y el tiempo
de servicio sea determinada por muestreo. Se tomaron 100 datos y los resultados son los
siguientes:
UES/FIA/EII/IOP215 Pá gina 12
12. Repetir pasos del 3 al 11 hasta completar el tiempo estipulado de simulación o el número
de pruebas requeridas.
Semilla generadora para tiempos entre arribos: 6347. Semilla para tiempos de servicio: 7123
Tiempo
Nº al Hora Inicio Nº al Tiempo Fin de Tiempo Tiempo
entre
azar arribo servicio azar servicio servicio espera ociosidad
arribos
28 8:05 8:05 73 8:12
44 8:11 8:12 71 8:19
08 8:15 8:19 33 8:24
83 8:22 8:24 16 8:29
77 8:29 8:29 99 8:37
96 8:37 8:37 58 8:43
77 8:44 8:44 16 8:49
76 8:51 8:51 17 8:56
46 8:57 8:57 61 9:03
61 9:04 9:04 46 9:10
72 9:11 9:11 77 9:18
49 9:17 9:18 33 9:23
54 9:23 9:23 79 9:30
80 9:30 9:30 92 9:38
03 9:33 9:38 87 9:45
04 9:36 9:45 20 9:50
09 9:40 9:50 03 9:54
24 9:45 9:54 84 10:01
85 9:52 10:01 14 10:06
37 9:58 10:06 74 10:13
88 10:06 17
03 10:09 26
min $ 0.30 $
Costo de espera anual: , 000 x =
año min año
UES/FIA/EII/IOP215 Pá gina 13
Simulación para dos montacargas
Montacargas I Montacargas II
Tiempo Tiempo Ocio Tiempo
Nº al Hora Nº al Ocio
entre de Inicio Fin Inicio Fin sidad de
azar arribo azar sidad
arribos Servicio espera
77 8:07 64 8:07 8:13 - -
19 8:12 49 - - - 8:12 8:18
58 8:19 58 8:19 8:25 - - -
29 8:24 96 - - - 8:24 8:32
97 8:32 76 8:32 8:39 - - -
72 8:39 28 8:39 8:44 - - - -
49 8:45 18 8:45 8:50 - - -
19 8:50 63 8:50 8:56 - - - -
19 8:55 47 - - - 8:55 9:01
65 9:02 07 9:02 9:06 - - -
86 9:09 15 9:09 9:14 - - -
12 9:13 58 - - - 9:13 9:19
16 9:18 42 9:18 9:24 - - -
65 9:25 73 9:25 9:32 - - -
77 9:32 25 9:32 9:37 - - - -
22 9:37 85 9:37 9:44 - - - -
62 9:44 68 9:44 9:50 - - - -
92 9:52 22 9:52 9:57 - - -
58 9:59 53 9:59 10:05 - - -
92 10:07 96
71 11
56 68
Comparación situación propuesta versus situación actual para determinar las diferencias en costos
S. P. S. A.
Cop = _ Cop = =
Cesp= Cesp =
UES/FIA/EII/IOP215 Pá gina 14
∑¿
r B/ C =
[
G
( 1+i )n−1
][
i ( 1+i )n
=
( 1.1 )5−1
]
0.1 ( 1.1 )5 ( 3.7908 )
= =¿
I ❑ ❑
La tabla que se muestra a continuación resume las actividades para realizar un proyecto. Se desea
encontrar a través de simulación la duración promedio del proyecto y el índice crítico. Realice 6
pruebas.
UES/FIA/EII/IOP215 Pá gina 15
Tipo: Unidades discretas: V.A.D. (Método de Montecarlo). Red original
C
2 4
5 6 155 20 21
15 F
A
5 9
1 D 5 G 6
30 30 38 38
0 0 14 8
B
12 E
22
2 3 18
22
12
22
2
12
2
“C” “D”
t P(t) ∑ P( t) Rango t P(t) ∑ P( t) Rango
11 0.1 0.1 01-10 13 0.15 0.15 01-15
12 0.2 0.3 11-30 14 0.80 0.95 16-95
13 0.4 0.7 31-70 15 0.05 1.00 96-00
14 0.2 0.9 71-90
15 0.1 1.0 91-00
“E” “F”
t P(t) ∑ P( t) Rango t P(t) ∑ P( t) Rango
17 0.05 0.05 01-05 7 0.05 0.05 01-05
18 0.90 0.95 06-95 8 0.15 0.20 06-20
19 0.05 1.00 96-00 9 0.60 0.80 21-80
10 0.15 0.95 81-95
11 0.05 1.00 96-00
UES/FIA/EII/IOP215 Pá gina 16
“G”
t P(t) ∑ P( t ) Rango
7 0.25 0.25 01-25
8 0.50 0.75 26-75
9 0.25 1.00 76-00
#s aleatorios para las pruebas (cada prueba equivale a una red CPM)
Semilla Actividad 1 2 3 4 5 6
3579 A
9354 B
6321 C
3538 D
6523 E
9572 F
7136 G
Prueba
Actividad 1 2 3 4 5 6
A 5 6 5 3 4 5
B 12 12 12 10 12 11
C 15 13 12 12 11 11
D 14 14 14 13 14 13
E 18 18 18 18 18 18
F 9 9 10 9 8 8
G 9 7 7 7 8 8
Actividad
Prueba A B C D E F G Duración
1
2
3
4
UES/FIA/EII/IOP215 Pá gina 17
5
6
∑ di ; n = # de pruebas simuladas
i=1
Duración promedio=
n
{
Desviación del proyecto= Duración mayor−Duración promedio
Duración promedio−Duración menor
El objetivo es generar números al azar en una forma de cualquier distribución conocida. Primero
se generan números decimales al azar (“ y ”). Después se iguala la función acumulada de
probabilidad al número “ y ” generado al azar, luego se despeja la variable aleatoria de la función
de probabilidad. De este despeje se obtiene la ecuación que servirá para obtener los números
aleatorios.
−t t
1
f ( t )= e β 2
; μ= β , σ =β 2
; F ( t )= ∫ f (t) dt= y ; t=−β ln (1− y)
β −∞
Distribución Normal:
UES/FIA/EII/IOP215 Pá gina 18
[√]
n
n ∗σ
σ 2
f ( x )= y ; x= ∑ y i + μ−
√ n
12
i=1 n
12
Distribución Gamma:
k
ln (1− y i)
x=∑
i=1 −kα
1
Media de la distribución: μ= , k = parámetro de variabilidad, α = parámetro de la distribución
α
EJEMPLOS
2
f ( x )= x , si 0 x 9
81
[ ]
∞ 9 2 9
2 2 x 1 1
F ( x )= ∫ f ( x ) dx=1.0 →∫ x dx= = [ 92−02 ] = [ 81−0 ] =1
−∞ 0
81 81 2 0 81 81
[ ]
x x x
2 2 x2 1 2 2 1 2
F ( x )= ∫ f ( x ) dx= y →∫ x dx= = [ x −0 ]= [ x ]
−∞ 0
81 81 2 0 81 81
x
x2
Como F ( x )= ∫ f ( x ) dx= y → y= 81
→=→=√ → x=√
−∞
Valores a usar para generar los números decimales: x = 857, y = 2, z = 3.3 x 10−5
UES/FIA/EII/IOP215 Pá gina 19
n Nº Aleatorio x=9 √ y
xy z y
857 (2¿¿1)(3.3 x 10 )¿
−5
x=9 √ ❑=2.1412
−5
857 (2¿¿ 2)(3.3 x 10 )¿ x=9 √❑=3.0267
857 (2¿¿ 3)(3.3 x 10−5 )¿ x=9 √ ❑=4.2804
857 (2¿¿ 4)(3.3 x 10−5)¿ x=9 √ ❑=6.0541
857 (2¿¿5)(3.3 x 10−5)¿ x=9 √❑=8.5618
UES/FIA/EII/IOP215 Pá gina 20
Dí Nº al Inventario Inventario Unidades Unidades en Unidades a
Demanda
a azar Inicial Final Vendidas escasez ordenar
1 8.91
2 8.73
3 8.20
4 6.30
5 6.10
6 5.55
7 3.49
8 6.04
9 5.25
10 1.27
UES/FIA/EII/IOP215 Pá gina 21