Escolar Documentos
Profissional Documentos
Cultura Documentos
DE
SIMULACIN
Pedro Linares
Andrs Ramos
Pedro Snchez
ngel Sarabia
Begoa Vitoriano
Octubre 2005
[]
Alberto Aguilera 23 E 28015 Madrid Tel: 34 91 542 2800 Fax: 34 91 541 1132 www.doi.icai.upcomillas.es
NDICE
I.1 MODELADO DE SISTEMAS MEDIANTE SIMULACIN(MM) ...................................3
I.1.1 Sistemas, modelos y simulacin..................................................... 3
I.1.2 Ventajas e inconvenientes de la simulacin .................................... 6
I.1.3 Tipos de sistemas y de simulacin ................................................. 7
I.1.4 Elementos de la simulacin de eventos discretos ............................. 9
I.1.5 Organizacin de un modelo de simulacin .................................... 10
I.1.6 Algunas aplicaciones de simulacin ............................................. 14
1.1.1.1. Disponibilidad dinmica de un sistema paralelo .............................................................14
1.1.1.2. Fiabilidad esttica de un sistema de generacin de energa elctrica ..............................16
1.1.1.3. Fiabilidad dinmica de un sistema de energa elctrica ..................................................17
Generacin
Generacin
Generacin
Generacin
de
de
de
de
muestras
variables
variables
variables
uniformes................................................................................44
aleatorias discretas .................................................................48
aleatorias absolutamente continuas ........................................50
aleatorias mixtas ....................................................................57
06/07/2006
ii
06/07/2006
I SIMULACIN
06/07/2006
06/07/2006
I SIMULACIN
Llega
maquinaria
nueva?
0.71
SI
0.29
NO
p=0.14
p=0.28
p
SI
Grave
0.35
DA=4
Tipo avera
Avera
1-p
NO
Leve
0.65
DA=1
DA=0
DT=L1/x1+DA
dado hasta que la diferencia entre las veces que han salido nmeros pares e
impares sea tres. Pepe pagar 100 monedas en cada tirada y cobrar 1000 al
final. Cmo puede comprobar Pepe si Juan es realmente un buen amigo?
Para comprobarlo, Pepe puede hacer los clculos necesarios para calcular la
esperanza de la ganancia o de la prdida o puede simular las tiradas del dado y
observar los resultados.
06/07/2006
I SIMULACIN
poltica, no slo por las consecuencias que pueda tener, sino porque para
observarlas habra que esperar numerosos aos.
Por ltimo, una caracterstica importante de la simulacin es que permite
estudiar sistemas dinmicos en tiempo real.
06/07/2006
Segn la aleatoriedad
o Deterministas: no incluyen variables aleatorias. Dados unos datos de
entrada, existe un nico conjunto posible de datos de salida.
o Probabilistas o estocsticos: contienen variables aleatorias, las salidas son
aleatorias (estimaciones de las verdaderas caractersticas).
06/07/2006
I SIMULACIN
06/07/2006
eventos es fijo o para animacin grfica. Sin embargo, para otros casos
presenta algunos inconvenientes, fundamentalmente, la simultaneidad de
eventos cuando ms de un evento ocurre en un intervalo y el error que se
comete de redondeos al considerar que los eventos ocurren al final del
intervalo y que para disminuirlo hace que se tomen incrementos muy
pequeos que ralentizan enormemente la simulacin comprobando muchos
intervalos en los que no ocurre nada.
Incremento al prximo evento (event step): el reloj de simulacin se inicializa
a cero y se determinan los instantes en que sucedern los futuros eventos
(todos o los ms inmediatos que puedan ocurrir). El reloj de simulacin se
avanza hasta el instante del suceso ms inminente de los futuros eventos (el
primero de ellos), actualizando en ese instante el estado del sistema
dependiendo del evento de que se trate. Este procedimiento tiene como
ventajas respecto al anterior que no tiene errores al considerar tiempos
exactos de ocurrencia de los eventos y que es ms rpido ya que los periodos
en que no hay eventos son saltados.
Obsrvese que en ambos casos es necesario tener definidos cules son los
eventos futuros y en qu instantes se van a dar, al menos los ms inmediatos, lo
que se ver en el siguiente captulo.
10
06/07/2006
I SIMULACIN
Reloj simulacin = 0
Inicializar estado y contadores
Inicializar lista de eventos
Programa principal
Actualizar estado
Actualizar contadores
2 Llamar
rutina evento
Regla de parada
Fin de
simulacin?
NO
SI
Generador
resultados
06/07/2006
11
N (t ) =
N (t ) 1 si es final de servicio
TM=min(TL,TS)
Servicio
NO
TL<TS?
SI
Llegada
TANT=TM
SUMA/TM
Parar
12
NO
TM<T?
SI
06/07/2006
I SIMULACIN
Llegada
N=N+1
Servicio
NO
N=N-1
NO
N>0?
TS=
SI
N>1?
Generar DS
TS=TM+DS
SI
Generar DS
TS=TM+DS
Generar DL
TL=TM+DL
SUMA=SUMA+(N+1)(TM-TANT)
SUMA=SUMA+(N-1)(TM-TANT)
Volver
Volver
06/07/2006
Reloj Simulacin
0
3
5
7
8
10
11
13
Tipo evento
Inicio
Llegada
Llegada
Servicio
Servicio
Llegada
Llegada
Llegada
N
0
1
2
1
0
1
2
3
TL
3
5
10
10
10
11
13
19
TS
7
7
8
14
14
14
SUMA
0
0+03=0
0+12=2
2+22=6
6+11=7
7+0=7
7+11=8
8+22=12
13
8
9
10
11
12
13
14
15
16
17
14
15
18
19
21
25
27
28
33
35
Servicio
Servicio
Servicio
Llegada
Servicio
Llegada
Llegada
Servicio
Servicio
Final
2
1
0
1
0
1
2
1
0
19
19
19
25
25
27
35
35
35
15
18
21
28
28
33
12+31=15
15+21=17
17+31=20
20+0=20
20+12=22
22+0=22
22+12=24
24+21=26
26+15=31
31+02=31
7 8
10 11
13 14 15
18
14
06/07/2006
I SIMULACIN
la
1 en funcionamiento
La variable de estado de cada componente es x i =
y
0 en reparacin
1 sistema en funcionamiento
del sistema ES =
0 sistema en fallo
Inicializacin:
TM = 0
TPS = 0
Definir estado inicial:
xi = 1
ES = 1
Generar muestra de distribucin de tiempo entre fallos TFi
TPi = TFi
2. Rutina de tiempo: Determinar mnimo de TPi (cundo), actualizar el tiempo
de simulacin TM = TPi , determinar el evento de fallo o reparacin (qu) y
el componente al que afecta (a quin)
3. Rutina de evento de fallo del componente i
xi = 0
Si estn en fallo el resto de componentes se declara indisponible el
sistema ES = 0 y se registra el instante de la parada TI = TM
Generar muestra de distribucin de tiempo de reparacin TRi
TPi = TPi + TRi
4. Rutina de evento de fin de reparacin del componente i
xi = 1
Si el sistema est indisponible () se contabiliza el tiempo de parada del
sistema TPS = TPS + TM TI y se declara disponible el sistema
ES = 1
06/07/2006
15
16
06/07/2006
I SIMULACIN
Estado
sistema
1111111
1111110
1111101
1111100
1111011
1111010
1011111
...
1011110
1011101
1011100
1011011
1011010
1011001
1011000
...
0000110
0000101
0000100
0000011
0000010
0000001
0000000
Pot Disp
[MW]
4550
4350
4300
4100
4200
4000
3050
...
2850
2800
2600
2700
2500
2450
2250
...
600
550
350
450
250
200
0
Dficit
[MW]
0
0
0
0
0
0
0
...
150
200
400
300
500
550
750
...
2400
2450
2650
2550
2750
2800
3000
Probab
LOLP
EENS
0.6537
0.0133
0.0202
0.0004
0.0344
0.0007
0.0726
...
0.0015
0.0022
0.0000
0.0038
0.0001
0.0001
0.0000
...
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
...
0.0015
0.0022
0.0000
0.0038
0.0001
0.0001
0.0000
...
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
151.2
305.5
12.5
779.8
26.5
44.2
1.2
...
1.0
1.6
0.0
2.8
0.1
0.1
0.0
06/07/2006
17
Hora
L
M
X
J
V
S
D
1
2936
2789
2971
2689
2846
2967
2959
2
2893
2770
2875
2894
2988
2633
2500
3
2675
2879
2538
2685
2516
2906
2575
4
2676
2695
2893
2718
2686
2582
2957
5
2533
2644
2695
2742
2601
2778
2975
6
2652
2710
2837
2954
2544
2518
2824
7
2546
2792
2716
2675
2815
2859
2792
8
2794
2706
2606
2985
2916
2798
2766
9
2848
2839
2702
2714
2506
2904
2744
10
2623
2518
2893
2646
2558
2541
2686
11
2616
2942
2738
2615
2606
2867
2958
12
2811
2788
2598
2660
2531
2818
2861
Hora
L
M
X
J
V
S
D
13
2951
2605
2638
2697
2515
2641
2624
14
2638
2740
2757
2908
2531
2944
2797
15
2712
2530
2607
2503
2717
2554
2914
16
2506
2845
2534
2573
2557
2510
2738
17
2617
2524
2949
2771
2541
2963
2791
18
2551
2654
2734
2970
2645
2859
2771
19
2507
2845
2692
2582
2703
2851
2933
20
2962
2709
2792
2831
2522
2867
2841
21
2898
2747
2621
2552
2587
2638
2920
22
2902
2840
2720
2820
2674
2707
2638
23
2930
2732
2739
2602
2567
2879
2507
24
2800
2646
2866
2861
2839
2652
2668
Grupo
1
2
3
4
5
6
7
Coste variable
[/MWh]
10
15
25
30
35
50
70
MTTF
[h]
115
54
93
141
95
97
98
MTTR
[h]
10
6
7
9
5
3
2
18
06/07/2006
I SIMULACIN
06/07/2006
19
compararlas con el modelo, para ello una traza bien elegida y desarrollada puede
ser una valiosa ayuda. En el caso de ser detectados errores, habr de volver a la
fase anterior.
VALIDAR EL MODELO
Consiste en comprobar la validez del modelo diseado y para ello hay que
ejecutar el modelo y comparar con el propio sistema o con soluciones tericas de
casos sencillos que se hallen bien resueltos. La comparacin con el propio
sistema sugiere comparacin de datos reales y datos simulados. Cuando existe
aleatoriedad no es fcil hacer tal comparacin y un procedimiento habitual para
llevarla a cabo consiste en alimentar el modelo con los mismos datos con los que
se alimenta al sistema real para obtener los resultados que se van a comparar.
Por ejemplo, si es un sistema de colas con un servidor, se le da al modelo los
tiempos entre llegadas y de servicio observados y se compara lo que ocurre en el
sistema real con esos tiempos con lo que el modelo simula (no se generan
aleatoriamente, en este caso para la validacin).
Hasta aqu, sera el desarrollo del modelo de simulacin, es decir, la
construccin de una herramienta que simule un sistema. Slo faltara para dar
por terminada esta parte documentar el modelo con instrucciones al usuario,
descripcin de hiptesis y datos, etc., y la puesta en servicio para otros usuarios,
si es el caso, que sean, al fin y al cabo, los usuarios finales. Esa fase de
finalizacin, puede ser tambin muy larga y costosa, dependiendo de dnde haya
de ser instalado, de la documentacin que haya que entregar, de la formacin
que haya que dar a los usuarios, etc.
Sea quien sea el usuario final (es decir, tanto si es quien ha desarrollado el
modelo como si no), el modelo se usar para ayudar en la toma de decisiones y
para ello habr que llevar a cabo ejecuciones con distintas configuraciones, etc.
Tambin para esta parte, existe una metodologa con el fin de hacer crebles los
resultados obtenidos y obtener la mayor informacin posible de forma eficaz.
DISEAR EL EXPERIMENTO
Hay que disear las estrategias a evaluar, las pruebas que se van a llevar a
cabo, el nmero de simulaciones de cada una de ellas, etc. Un buen diseo de
experimentos puede ser fundamental para obtener la informacin eficientemente.
Tambin las tcnicas de reduccin de la varianza que permiten obtener
estimadores ms precisos con el mismo esfuerzo computacional, o igual de
precisos con menor esfuerzo computacional, son una buena ayuda para resolver
el problema de forma eficiente. Algunas de estas tcnicas estn especialmente
diseadas para simulacin (variables antitticas, variables de control, muestreo
20
06/07/2006
I SIMULACIN
06/07/2006
21
I SIMULACIN
06/07/2006
23
Las variables aleatorias que pueden ser de nuestro inters, se clasifican en:
discretas, absolutamente continuas (en general, las llamaremos continuas) y
mixtas. Las que no corresponden a ninguno de estos grupos exceden al objetivo
de esta revisin bsica.
Se dice que una variable aleatoria es discreta cuando puede tomar una
cantidad numerable1 de valores.
Estas variables son caracterizadas, adems de por la funcin de distribucin,
por la funcin de masa de probabilidad, que es una funcin que asigna a los
posibles valores su probabilidad y al resto 0. Los valores de esta funcin han de
estar entre 0 y 1 ya que son probabilidades y la suma de todos ha de ser 1.
La funcin de distribucin F (x ) de este tipo de variables se calcula como la
suma de la funcin de probabilidad para valores iguales o inferiores al valor x ,
y resulta por lo tanto una funcin escalonada:
F (x ) =
P(x = x )
i
; < x < +
xi x
Es decir, una cantidad finita o infinita numerable (los nmeros naturales, los enteros, los
racionales,...)
1
24
06/07/2006
I SIMULACIN
P (x I ) =
f (x )dx
f (x )dx = 1
f (y )dy ; x
F (x ) = f (x )
As por ejemplo para una variable aleatoria uniforme para el intervalo [0, 1]
se tiene que:
1 0 x 1
f (x ) =
0
resto
F (x ) =
x
0
f (x )dx =
x
0
1dx = x
f(x)
F(x)
0
1
0
1
06/07/2006
25
tiene un salto.
Aunque las definiciones que se han dado son vlidas en general, hay algunas
cuestiones especficas cuando las variables estn definidas no en , sino en n ,
siendo denominadas variables multidimensionales. Las siguientes definiciones son
las equivalentes a las anteriores pero en este contexto, en el que una variable
aleatoria es de la forma (X1,..., X n ) :
f (x )dx
P (B ) = p(x )
x B
P (B ) =
...
x i 1 x i +1
xn
26
06/07/2006
I SIMULACIN
x
E [X ] = =
i
La
esperanza
i =1
i =1
por
su
definicin
es
un
operador
lineal,
es
decir,
06/07/2006
27
i =1
i =1
x 2
1
x 1dx = =
2 0 2
1
2
x 3
1
1
1
x 1dx = =
3 0 4 12
2
2
ij =
28
C ij
i j
1 ij 1
06/07/2006
I SIMULACIN
i = ;
i2 = 2 ; i
06/07/2006
29
X (n ) = =
n
i =1
xi
2
i =1
=
. Sin embargo, no es habitual que se conozca la media con
n
certeza, sino que suele ser estimada con la media muestral. En tal caso, el
estimador utilizado es la cuasivarianza.
La cuasivarianza o varianza muestral es un estimador insesgado de la
varianza de la variable, es decir, E (S 2 (n )) = 2 . La cuasivarianza para un
tamao n de la muestra se nota por S 2 (n ) o por 2 .
30
06/07/2006
I SIMULACIN
S (n ) =
n
i =1
(x i X (n ))2
n 1
S (n )
=
var X (n ) =
n
(x
X (n ))2
i =1
n(n 1)
X (n ) z , X (n ) + z
2
2
n
n
S 2 (n )
S 2 (n )
X (n ) t
,
X
(
n
)
t
n 1, 2
n 1, 2
n
n
06/07/2006
31
8
8
32
06/07/2006
I SIMULACIN
H 1 : 0
X (n ) 0
S 2 (n )
Los tests que se utilizan suelen ser de mxima potencia (mnima probabilidad error de tipo
II) para un valor de , pero an as queda sin acotar y con un valor siempre desconocido.
Aunque una cosa es cierta, cuanto menor sea la cota del error de tipo I ( ), mayor es la
probabilidad de cometer el error de tipo II:
3
06/07/2006
33
34
06/07/2006
I SIMULACIN
bondad del ajuste para confiar en que el modelo es el apropiado, y usar esta
distribucin para generar valores luego de esa variable.
2. Definir la distribucin emprica de los datos: de modo que la distribucin de
los datos es utilizada directamente para generar valores de la variable
posteriormente.
La aproximacin 2 debe usarse slo si no se puede usar la 1, por las
siguientes razones:
06/07/2006
35
casos, que las observaciones se den agrupadas por intervalos o que no sea as.
Variables continuas con observaciones no agrupadas: X1,..., Xn
El procedimiento para obtener la funcin de distribucin emprica es el
siguiente:
1) Ordenar los valores de la muestra de menor a mayor: X(1),..., X(n )
2) Obtener la funcin de distribucin segn la siguiente expresin:
0
x < X(1)
i 1
x X(i )
F (x ) =
X(i ) x < X(i +1) i = 1,..., n 1
+
1
x X (n )
Frecuencia acumulada
0
0
0 .2
0 .4
0 .6
0 .8
1
1
16
20
15
12
9
0 .2
3
0
10
15
20
V a lo re s
36
n
i =1
, sera la siguiente:
06/07/2006
I SIMULACIN
0
x < a0
x a j 1
G (x ) = G (a j 1 ) +
(G (a j ) G (a j 1 )) a j 1 x < a j , j = 1,..., k
a j a j 1
x ak
1
Frecuencia acumulada
[2,4) 1
[4,8)
[8,10)
0.8
[10,15)
2
10
8
5
n=25
[4, 8)
10
4
8
10
15
[8,10)
8
[10,15)
4
n = 25
1
0.12
0.52
0.84
1
0.84
0.6
0.52
0.4
0.2
0.12
0
0
0
8
Valores
10
12
14
16
06/07/2006
37
38
06/07/2006
I SIMULACIN
min
x0.25
Me
x0.75
max
outlier
39
excepto, en todo caso, los extremos. No hay que olvidar que con el
histograma pretendemos ver grficamente si los datos tienen una distribucin
que se pueda parecer a alguna conocida, as que se debe probar con distinto
nmero de intervalos, y con distintas amplitudes, buscando la semejanza con
alguna distribucin.
Como orientacin para el nmero de intervalos, se suele probar con nmeros
cercanos a la raz cuadrada del nmero de datos o a la frmula de Sturgess:
N intervalos k = [1 + log2 n ] = [1 + 3.322 log10 n ]
Levantar sobre cada intervalo un rectngulo de rea proporcional a la
frecuencia, manteniendo la misma constante de proporcionalidad en todos los
intervalos.
Comparar con las funciones de densidad
Un posible histograma se muestra a continuacin. En general, las
herramientas informticas estadsticas construyen los histogramas con toda
facilidad, representando incluso la funcin de densidad de una distribucin
propuesta a su lado. Sin embargo, aunque se utilicen estas herramientas, la
decisin de cmo agrupar los datos para lograr una semejanza si es posible,
sigue siendo una tarea a realizar por el usuario.
8
datos
7
datos
16
datos
8 datos
10
40
06/07/2006
I SIMULACIN
8
datos
7
datos
4
datos
2
datos
06/07/2006
41
H 0 : F = F0
H 1 : F F0
Observaciones:
1. Por la naturaleza de los contrastes en general, si el resultado es rechazar
la hiptesis nula se har con bastante seguridad; si el resultado es
aceptarla se debe decir "no rechazar H 0 ya que no hay evidencia
estadstica para ello". En general, los tests tienden a aceptar que los datos
pueden provenir de la distribucin propuesta.
2. Para una cantidad grande de datos es habitual que el resultado sea
rechazar H 0 , ya que algunos contrastes son muy sensibles a pequeas
variaciones.
3. Se debe utilizar el p-valor como medida del ajuste:
El p-valor es el nivel de significacin para el que se rechazara H 0 con los
datos utilizados para realizar el contraste, es una cota de la probabilidad
de cometer el error de tipo I (rechazar H 0 siendo cierta). Cuanto mayor
sea el p-valor mejor es el ajuste.
Sin embargo, no se ha de ser ciego a la hora de seleccionar una
distribucin, ya que puede ser preferible una distribucin ms sencilla
aunque tenga un p-valor peor (siempre que sea razonable) que otra que
tenga un mejor valor pero sea muy compleja.
Existen dos tipos de tests de bondad de ajuste que son los ms utilizados: el
test de la 2 y el test de Kolmogorov-Smirnov. En general, estos tests estn
incluidos en todas las herramientas informticas de estadstica, pero, es
recomendable saber en qu consisten con el fin de dar los parmetros
adecuados, saber cundo utilizarlos y saber interpretarlos.
Test de la 2 (Pearson, 1900)
La idea bsica de este test es agrupar los datos en intervalos y comparar las
frecuencias de estos intervalos con las probabilidades que la distribucin
terica les asigna, midiendo la distancia entre ambas.
Este test es aplicable tanto a distribuciones discretas como continuas,
aunque requiere tener una muestra suficientemente grande ya que se basa en
un resultado asinttico.
El procedimiento sera el siguiente:
a) Dividir el rango de la distribucin ajustada en k intervalos adyacentes:
[a 0 , a1 ), [a1, a2 ),..., [ak 1, ak )
b) Sea N j = nmero de X i en intervalo j -simo = frecuencia absoluta
observada de intervalo a j 1, a j )
c) Calcular de la distribucin terica la probabilidad de cada intervalo:
42
06/07/2006
I SIMULACIN
Una consideracin a hacer es que el valor del estadstico X 2 vara segn los
intervalos elegidos. No hay normas claras al respecto, excepto que no puede
haber intervalos de frecuencia nula, pero, una idea es que sean de igual
amplitud, que haya al menos 3 intervalos y que la frecuencia esperada sea al
menos 5, es decir, n p j 5.
Test de Kolmogorov-Smirnov
Este test compara la funcin de distribucin emprica de los datos con la
funcin de distribucin terica.
Este test es aplicable en la versin que se presenta slo para distribuciones
continuas (existe una versin para distribuciones discretas que no se presenta
en este captulo), y es vlido para cualquier tamao de muestra, incluso
aunque se disponga de pocos datos.
El procedimiento para aplicarlo es el siguiente:
a) Calcular la funcin de distribucin emprica de los datos sin interpolacin,
nmero de X i ' s x
es decir: Fn (x ) =
n
b) Obtener la mxima diferencia entre la funcin de distribucin emprica y
la terica: esta diferencia se alcanzar en los puntos observados, ya que son
los puntos de salto de la funcin emprica, pudiendo ser en el propio punto o
i
justo antes. Por ello, se calcula Dn+ = max F (X(i ) ) que es la mxima
1i n n
diferencia en los puntos observados con el valor de la distribucin emprica
i 1
justo en el punto, y se calcula Dn = max
F (X(i ) ) que es la mxima
1i n
n
diferencia tomando el valor de la distribucin emprica justo antes (por la
izquierda) del punto. As la mxima diferencia entre la funcin de
distribucin emprica y la terica ser el mximo de ambos valores, es decir,
Dn = max {Dn+, Dn } .
c) Rechazar H 0 si Dn > dn ,1 , donde dn ,1 es el valor que se recoge para esa
significacin y tamao de muestra en las tablas de Kolmogorov-Smirnov.
En la siguiente figura se muestra grficamente el significado de los valores
06/07/2006
43
Dn+ y Dn .
1
D n = D n+
D n+
D n
44
06/07/2006
I SIMULACIN
06/07/2006
45
Mtodo de Lehmer
Sea x 0 un nmero al azar de n cifras. Se multiplica por otro k (fijo del
generador) de k cifras, dando lugar a uno de n + k . Se quitan las k cifras de la
izquierda, obteniendo uno de n cifras al que se resta el de k cifras que se haba
separado.
Ejemplo:
x 0 =4122 k =76 4122 76=31|3272 3272-31=3241
x 1 =3241 k =76 3241 76=24|6316 6316-24=6292
Este mtodo acaba degenerando a 0.
Mtodos congruenciales
Estos mtodos tambin son debidos a Lehmer (1951). Los mtodos de
generacin de nmeros pseudoaleatorios llamados congruenciales se basan en el
concepto matemtico de nmeros congruentes.
Sean x , y, m . Se dice que x es congruente con y en mdulo m si y slo
(m )
x n +1 ax n + b
donde x n {0,..., m 1} n = 0,1,... , siendo x 0 la semilla de la sucesin que
suele ser un valor dado por el programador, a m se le denomina mdulo y a a
multiplicador. Adems si b = 0 se denomina generador multiplicativo y, en el
caso general, generador mixto.
Los nmeros generados por el mtodo congruencial verifican que x n +1 es el
resto de dividir yn +1 = ax n + b entre m . Adems la ley recurrente es
x n +1 = yn +1 mod m = (ax n + b)mod m
Ejemplo: m = 8 , a = 5 , b = 7 , x 0 = 4
6, 5, 0, 7, 2, 1, 4.
Ejemplo: m = 9 , a = 5 , b = 1 , x 0 = 1
y1 = 5 1 + 1 = 6
y2 = 5 6 + 1 = 31
y 3 = 5 4 + 1 = 21
y 4 = 5 3 + 1 = 16
y5 = 5 7 + 1 = 36
y6 = 5 0 + 1 = 1
46
x1
x2
x3
x4
x5
x6
=6
=4
=3
=7
=0
= 1 = x0
06/07/2006
I SIMULACIN
Este mtodo es evidente que genera valores a gran velocidad y ocupa poca
memoria de ordenador, puesto que no se guarda toda la secuencia sino que para
generar un valor slo necesito el ltimo valor generado. Tambin es claro que es
reproducible (con una misma semilla se obtiene una misma secuencia). Sin
embargo, hay tres propiedades que no son tan evidentes y que no se cumplen
para valores cualesquiera de a , b y m .
Respecto al ciclo no repetitivo en el mismo ejemplo se puede ver que es muy
corto. De hecho, hay que observar que la mxima longitud que se puede lograr
sin repetir es de m , ya que es la mayor cantidad de nmeros diferentes que se
puede obtener y una vez que se obtiene un nmero repetido toda la secuencia se
repite, por lo que m hay que elegirlo suficientemente grande. Adems se suele
elegir de tal forma que facilite los clculos (potencias de 2 o similares).
Existe una gran variedad de resultados buscando condiciones que han de
tener los parmetros para que el ciclo no repetitivo sea el mximo posible.
A su vez, los generadores tienen que cumplir propiedades estadsticas:
uniformidad e independencia de las secuencias. Para determinados valores de los
parmetros de los generadores (valores para los que el ciclo sea el mximo
posible) se han generado distintas secuencias y se les ha hecho pasar contrastes
de bondad de ajuste para la uniformidad y contrastes de independencia.
De todo ello, se puede afirmar que los dos generadores multiplicativos
siguientes generan valores con la propiedad de la uniformidad y la
independencia y con ciclo no repetitivo maximal: m = 231 1 para ambos y
multiplicador a = 16807 o bien a = 63036016 . El primero es ms rpido y tiene
menor riesgo de desbordamiento de memoria. Sin embargo, el segundo tiene
mejores propiedades estadsticas5.
Por ltimo, sealar que el fin de la generacin de nmeros pseudoaleatorios
es obtener muestras uniformes en el intervalo (0,1), para ello lo que se hace es
dividir cada nmero generado por el mdulo m , con lo que la muestra obtenida
puede ser considerada uniforme en ese intervalo6.
Si se dispone de diferentes cadenas de nmeros aleatorios cada una se debe
utilizar para un parmetro aleatorio [Law]. En este caso se debe tener en cuenta
la longitud de la cadena para evitar solapes. En [Law] se pueden encontrar
diferentes semillas para cadenas del generador mencionado separadas entre s
por 100000 nmeros pseudoaleatorios. Algunas de estas semillas para el
06/07/2006
47
un =
4294967087 4294967088 si z n = 0
48
06/07/2006
I SIMULACIN
Sea una variable aleatoria con una distribucin discreta que toma ciertos
x 1 con prob p1
x con prob p
2
2
, siendo pk = 1 .
valores con determinada probabilidad X =
x 3 con prob p3
k
p1
p1 + p2
p1 + p2 + p3
1
Por ejemplo, sea X =
2
0.3
0.1
0
1 2
06/07/2006
49
= 1 + ln(u ) 7
x = 1+
ln(1 p)
ln(1 p)
50
06/07/2006
I SIMULACIN
Sea X
la variable aleatoria cuya funcin de distribucin es
F (x ) = P {X x } . Se genera un nmero aleatorio uniforme entre 0 y 1, u , y
luego se determina x tal que F (x ) = u .
Supongamos que la variable tiene distribucin exponencial con
F (x ) = 1 e x para x 0 siendo 1 la media de la distribucin. Dado un
ln(1 u ) d ln(u )
nmero aleatorio u tal que F (x ) = u , luego x =
.
=
1
(1/ ) , es f (x ) = x 1e (x ) , x 0 ,
distribucin Weibull (, ) de media
c max f (x ) : x (a1, a2 ) .
06/07/2006
51
El procedimiento es:
1. Generar u1, u2 U (0,1)
Calcular x = a1 + (a2 a1 )u1
Calcular y = cu2
2. Calcular f (x ) . Si y > f (x ) ir a 1
3. Salida: X toma el valor x que se distribuye segn f (x )
1
, por lo tanto
c(a2 a1 )
el valor de c es deseable que sea lo ms pequeo posible. En particular, siempre
Obsrvese que P (aceptar un valor dado por (x, y )) =
triangular. Sea f (x ) = 2 x
1x 2
0
fuera de [0,2]
f (x )
1
El procedimiento es el siguiente:
d
52
06/07/2006
I SIMULACIN
elegida por nosotros tal que a > 1 : f (x ) ag(x ) x 8 (en particular, esto
implica que el soporte de g() ha de contener al soporte de f () ).
El procedimiento es el siguiente:
d
1. Generar x = g()
d
Generar y =U (0, ag(x ))
2. Calcular f (x ) Si y > f (x ) ir a 1
3. Salida: X se distribuye segn f (x )
Respecto a la eleccin de la envolvente g() no hay nada establecido acerca
de cul es la mejor, pero se debe elegir lo ms parecida posible a la funcin a
generar pero que sea sencillo obtener valores para ella. En cuanto al valor de la
constante a , hay que tener en cuenta que P (aceptar x ) = P (y f (x )) = 1 a y,
por lo tanto, a debe ser lo menor posible pero manteniendo la hiptesis inicial,
f (x )
constante a = sup
: g(x ) > 0 que resulta ser a 1.5958 .
g(x )
El algoritmo sera:
d
1 u1
u1
g() se toma para que se puedan simular valores sin dificultad y previamente a
aplicar el algoritmo es necesario calcular el valor de la constante a que haga que se
verifique la relacin anterior.
8
06/07/2006
53
i =1
distribucin de
tiende a la distribucin N (0,1) cuando n .
n
Este resultado aplicado a variables distribuidas segn una distribucin
n
u n 2
i =1 i
. Un valor que facilita los clculos es
uniforme U (0,1) sera
n /12
n = 12 , con lo que el procedimiento sera obtener 12 variables con distribucin
12
uniforme U (0,1) y calcular i =1 ui 6 .
54
06/07/2006
I SIMULACIN
06/07/2006
55
(MM)
i =1
v.a.i.i.d. U (0,1) , y calcular x =
.
a
Beta (, ) ,
(MM)
d
X
d
= Beta(, ) , por
X +Y
v.a.i.i.d. U (0,1) y se calcula
i =1
ln ui
i=1 ln ui + i=1 ln vi
56
i =1
06/07/2006
I SIMULACIN
5. Salida: X =
Z + WY
se distribuye segn (p, a )
a
F (x ) = x 1 3 / 2 x < 2
1
x 2
06/07/2006
57
I SIMULACIN
06/07/2006
59
60
De tipo general:
06/07/2006
I SIMULACIN
06/07/2006
61
Existe una tercera, programacin de actividades, pero que est cayendo en desuso
y por lo tanto no ser mencionada.
9
62
06/07/2006
I SIMULACIN
Entre los sucesos que cabe considerar, o mejor dicho, que un lenguaje de
simulacin puede considerar, se clasifican en dos tipos: sucesos incondicionales y
sucesos condicionales.
06/07/2006
63
uno de ellos.
2. INTERACCIN DE PROCESOS (Process Interaction, PI)
Contempla el progreso de las componentes del sistema a travs de una
secuencia de pasos o procesos, cada uno de los cuales puede tener dos
posibles componentes, un segmento de condicin cuya ejecucin identifica si
se puede pasar a ejecutar la segunda componente, que es un segmento de
accin.
Un proceso es una secuencia ordenada de eventos interrelacionados,
separados por pasos de tiempo, que describe la experiencia entera de una
entidad como su flujo a travs de un sistema. As, un proceso, o mejor dicho,
una rutina de proceso contiene explcitamente el camino del tiempo simulado
de cada entidad y suele tener mltiples puntos de entrada. Un modelo de
simulacin puede tener diferentes tipos de procesos.
Para el ejemplo de un sistema de colas con un servidor, el proceso comienza
por la llegada de un cliente (que sera una entidad), cmo este ocupa al
servidor o es situado en espera, la ocupacin del servidor y tiempo que lo
tiene ocupado y el final de servicio y desaparicin de la entidad del sistema.
Las entidades del sistema pueden ser fijas o mviles. Las entidades fijas (o
recursos) son denominadas procesadores y representan servidores en un
sistema de colas, instalaciones, semforos y entidades lgicas. Las entidades
mviles (o cargas), o simplemente entidades, son las que se mueven a travs
del proceso.
En un instante determinado cada entidad se puede encontrar en un estado
diferente. Los posibles estados de una entidad son los siguientes:
64
06/07/2006
I SIMULACIN
Inicio servicio
Final servicio
Evento
Evento
Evento
t
Tiempo en cola
Tiempo en sericio
Cuando una entidad est activa se mueve por su ruta o proceso hasta que es
detenida o demorada por algn suceso o desaparece del sistema. En ese
momento se vuelve al programa de control que analiza las entidades que hay
abiertas en ese momento (u otras que puedan surgir) y, ante los cambios
producidos por el proceso de la entidad que acaba de dejar de ser activa, cul
de todas las entidades es la primera que se puede activar, moviendo el reloj
de simulacin al instante en que se activa esta entidad.
Un diagrama del proceso de un cliente en una cola con un servidor puede
verse en la Figura 10. Diagrama del proceso en una cola con un servidor.
Obsrvese que el punto 4 supone una espera condicional y el punto 8 una
espera incondicional. As mismo, los puntos 1, 5 y 9 son puntos de entrada
desde el programa de control.
06/07/2006
65
Cliente
1
Servidor
libre?
Aadir cliente
a la cola
NO
4
Esperar
turno
SI
Sacar cliente
de la cola
Ocupar servidor
10
Volver
66
06/07/2006
I SIMULACIN
06/07/2006
67
ES T A CIO N A R IA S
= E [Y
Y ik
E [Y i ]
Y i4
Y i1 Y i2
i1
i2
Y ik +1
Y i5
Y i3
i3
i4
i5
.....
ik
ik + 1
S=20
E[Di / S ]
d = 9
S=0
S : n c lie n te s e n s is te m a e n t= 0 ,
E [ D i / S ] : n m e d io c lie n te s e n s is te m a
68
06/07/2006
I SIMULACIN
06/07/2006
i =1
, que es un
69
(Y
es la
Y )2
i =1
S2
, entonces, el valor
resulta ser
varianza de la media muestral es Var[Y ] =
n
n
un estimador para la varianza de la media muestral. Estos estimadores sern
insesgados slo si la muestra es aleatoria simple, es decir, si existe independencia
entre las variables.
Los valores de la media y varianza muestrales se pueden calcular
iterativamente de acuerdo con estas expresiones [Ramos:90]
Yn =
S 2 (n ) =
S 2 (n ) =
1
(n 1)Y n 1 + Yn
n
2
1
n
2
Y n Yn )
(n 2)S (n 1) +
(
n 1
n 1
2
1
n 1
2
Y n 1 Yn )
(n 2)S (n 1) +
(
n 1
n
(n 2)S (n 1) +
S (n ) =
Yi (n 1)Yn
n 1
n(n 1) i =1
2
2
n
1
1
2
(n 2)S (n 1) +
S (n ) =
Yi nYn
n 1
n(n 1) i =1
2
S
n
70
06/07/2006
I SIMULACIN
variable. Obsrvese que al hacer slo uno, no hay seguridad de que la media real
se encuentre en tal intervalo, slo cierta confianza.
Por otra parte, si se desea dar una estimacin de la precisin de la media, se
puede deducir a partir del intervalo de confianza. A la vista de la expresin
anterior una multiplicacin por 4 del nmero de muestras implica una
disminucin del intervalo de confianza aproximadamente a la mitad.
Por lo tanto, una medida de la precisin de la estimacin de la media viene
dada por la relacin entre la desviacin tpica de la media y la media
S 2 (n )
n
Xn
06/07/2006
71
C) Procedimientos regenerativos
A) Mtodo de Replicacin/Eliminacin:
Se realizan n replicaciones independientes de longitud m . Se determina el
periodo de arranque (warmup) de longitud l (l << m ) , y se eliminan esas
observaciones en la estimacin. As si las observaciones de cada replicacin son
Y11, ,Y1m , ,Yn 1, ,Ynm , se consideran slo las observaciones posteriores al
periodo de arranque para hacer la estimacin, obtenindose de cada replicacin
m
X1 =
Y1i
i =l +1
ni
, ..., X n =
i =l +1
Y2 (k )
Yn (k )
Por ltimo, se obtiene la media de los valores medios obtenidos de cada lote
n
nk
Y (k ) Y
j
Y (n, k ) =
72
j =1
i =1
nk
06/07/2006
I SIMULACIN
(Y (k ) Y (n, k ))
S 2 (n, k ) =
j =1
n 1
El problema que puede presentar este mtodo es que se haga una estimacin
baja de la varianza del estimador, Var ( ) . Esta infraestimacin puede darse
porque al ser una nica replicacin las observaciones no son independientes y,
por lo tanto, si el tamao de cada replicacin no es suficientemente grande
puede haber correlacin entre ellas y no ser correcta la estimacin de la
varianza. sa es, por lo tanto, la mayor dificultad del mtodo, cmo obtener el
tamao k para lograr la incorrelacin. Respecto al mtodo anterior presenta la
ventaja de no tener que realizar la simulacin del periodo de arranque ms que
una vez.
C) Procedimientos regenerativos:
En este caso se realiza una nica replicacin, como antes, pero los bloques no
son del mismo tamao, sino que se toma un punto de regeneracin para
determinar dnde acaba, siendo variable la longitud de cada secuencia obtenida,
N i . Se entiende por punto de regeneracin, un punto en el que el sistema vuelve
a comenzar como si fuera el principio. Por ejemplo, en un sistema de colas
podra ser que el sistema se encuentre vaco. De ese modo, se evita el problema
de la correlacin entre las observaciones de dos secuencias. Sin embargo, ahora
hay que tener en cuenta que el tamao de cada secuencia es tambin una
variable aleatoria.
As si las observaciones obtenidas, agrupadas ya en secuencias, son las
siguientes
Y1,Y2 ...,YB1 , YB1 +1,...,YB2 , ..., YBn 1 +1,...,YBn
con tamaos respectivos, N 1 = B1 , N 2 = B2 B1 , N n = Bn Bn 1 , se consideran
Bj
Yi ,
i =B j 1 +1
y el tamao de stas, N j .
Para cada una de estas variables se consideran las estimaciones de su media
y varianza, as a partir de las X j se obtienen X y S X2 , y a partir de las N j se
obtienen N y S N2 .
Por ltimo, el estimador de la media ser S 2 = S X2 2ZS X2 ,N + Z 2S N2 , y el
S 2 = S X2 2ZS X2 ,N + Z 2S N2 ,
donde
estimador
de
su
varianza,
ser
06/07/2006
73
2
X ,N
(X
X )(N j N )
j =1
Z z /2
n 1
El
intervalo
de
confianza
resultante
ser
.
N n
Con este mtodo tambin se corre el riesgo de hacer una infraestimacin de
la varianza. Pero su principal inconveniente es que puede ser difcil de aplicar,
bien porque no haya punto de regeneracin o que la probabilidad de que se d
sea muy pequea teniendo que hacer largas simulaciones para lograr una
muestra o que el nmero de secuencias obtenido sea muy pequeo, o bien por
todo lo contrario, que resulten secuencias de tamao N j demasiado pequeos,
que hagan que no se puedan considerar independientes las secuencias y por lo
tanto se est infravalorando su varianza.
74
06/07/2006
I SIMULACIN
Vamos a ver una introduccin a todas ellas, para ampliar el estudio puede
consultarse cualquier libro de teora de muestras o de simulacin avanzado(ver
[Law, 2000] o [Ros-Insa, 1997])
= 1 2 = E (X1 j ) E (X 2 j )
Sea la variable Z j = X1 j X 2 j , cuya esperanza es el valor que se desea
n
V (Z j )
n
V (X1 j ) + V (X 2 j ) 2Cov(X1 j , X 2 j )
n
06/07/2006
75
76
06/07/2006
I SIMULACIN
Veamos cmo utilizar esta variable de control para mejorar la eficiencia del
estimador. Para ello se define el siguiente estimador de control:
XC = X a(Y )
Obsrvese que este estimador es un estimador insesgado para , ya que
1.1.1.18. Condicionamiento
La tcnica de condicionamiento para reducir la varianza del estimador
intenta aprovechar alguna propiedad especial del modelo para remplazar un
valor estimado por un valor analtico exacto. Al eliminar esta fuente de
variabilidad es de esperar que la variable aleatoria de salida sea ms estable,
aunque no est absolutamente garantizado. Esta tcnica tiene su origen en el
mtodo de Monte Carlo condicional introducido por Trotter y Tukey (1956) y
desarrollado por Hammersley and Handscomb (1964).
Supongamos que X es la variable de salida de nuestro modelo, cuya media
desea ser estimada. Supongamos que existe otra variable aleatoria Z tal que
para un valor dado de sta, z , es posible calcular analticamente el valor de la
esperanza condicionada de X por este valor, es decir, E [X / Z = z ] es un valor
conocido. Entonces un estimador insesgado para se puede obtener a partir de
la esperanza en Z de la esperanza condicionada de X a los valores de Z , es
decir, = E [X ] = EZ [E (X / Z )] . Como ejemplo de lo que sera este estimador, si
Z fuera discreta aunque de distribucin desconocida el estimador por
condicionamiento sera EZ [E (X / Z )] = E (X / Z = z )p(z ) , que sera centrado.
z
77
78
06/07/2006
I SIMULACIN
Di
h(x )f (x )dx .
Di
i =1
La idea bsica de este mtodo consiste en observar que para cualquier otra
variable aleatoria Z con funcin de densidad g con el mismo dominio D ,
denominada distribucin de importancia, se puede expresar el estimador como
h(z )f (z )
h(z )f (z )
=
g(z )dz = EZ
D
g(z )
g(z )
As se puede estimar el parmetro muestreando los valores z i de Z y utilizar
como estimador
1 n h(z i )f (z i )
=
n i =1 g(z i )
que es un estimador insesgado. Bsicamente, este estimador es una media de los
valores h(z i ) ponderados con pesos f / g . La varianza de este estimador puede
llegar a ser mucho menor que la de X si se toma la distribucin de importancia
con forma similar a hf de modo que el cociente sea casi constante.
Esta tcnica concentra la distribucin en los puntos que se consideran de
mayor importancia, de modo que si supisemos de antemano que algunos valores
son ms importantes que otros en la determinacin del parmetro, desearamos
06/07/2006
79
80
06/07/2006
I SIMULACIN
06/07/2006
81
82
06/07/2006
I SIMULACIN
datos para cada nivel del facto da con los dos empleados, siendo una
tabla de doble entrada.
De los dos enfoques el primero tiene como inconveniente principal que no
tiene en cuenta la interaccin entre los factores. Por ejemplo, supongamos que
se desea investigar si la temperatura y la concentracin influyen en el
rendimiento de un proceso. Con el diseo clsico fijaramos la temperatura a un
valor de referencia y modificaramos el valor de la concentracin para ver su
efecto; despus haramos lo mismo pero fijando la concentracin a un valor y
variaramos la temperatura. De esta forma es posible llegar a conclusiones tales
como que aumentar la temperatura disminuye el rendimiento y aumentar la
concentracin tambin, y sin embargo, es posible que aumentando temperatura
y concentracin a la vez se logre un mayor rendimiento. Esto ocurre porque los
efectos pueden no ser aditivos, es decir, el modelo puede ser del tipo
Rend = b1Conc + b2Temp + b3Conc Temp , y sin embargo, con el diseo clsico se
supone que el coeficiente b3 es cero.
El concepto de bloque
Una variable o factor cuyo efecto sobre la respuesta no es directamente de
inters pero que se utiliza para obtener comparaciones homogneas se denomina
variable bloque. En el ejemplo, de la venta del producto sera el empleado si lo
que realmente nos interesa saber es slo el efecto del tipo de da. La principal
diferencia en el tratamiento de un factor y de una variable bloque es que, en
general, se supone que hay independencia entre los factores y las variables
bloque.
06/07/2006
83
ij
, y
ni
definiendo los residuos como eij = yij yi . , el estimador de la varianza es
eij2
.
2 = ij
n
A continuacin se plantea el contraste de igualdad de medias:
H 0 : 1 = ... = I = frente a la hiptesis de que hay alguna distinta. Para
hacer este contraste se compara la variabilidad explicada por los grupos (VE)
con la no explicada o residual (VNE), de modo que si es muy grande la
explicada respecto a la que no entonces se rechaza la hiptesis nula y se acepta
que el factor influye en la variable respuesta. Este anlisis se conoce como
anlisis de la varianza y para llevarlo a cabo se utiliza una tabla denominada
ANOVA (ADEVA en castellano):
Fuentes variacin
Suma de cuadrados Grados de libertad Varianzas
Entre grupos (VE)
se2
I 1
ni (yi. y.. )2
Interna, no explicada
o residual (VNE)
Total
(y
ij
yi . )2
n I
sR2
(y
ij
y.. )2
n 1
sy2
i, j
i, j
84
06/07/2006
I SIMULACIN
06/07/2006
85
Entre tratamientos
(distintas )
Entre bloques
(distintas )
Residual
J (yi . y.. )2 = J i2
I 1
s2
I (y. j y.. )2 = I j2
J 1
s2
2
ij
i, j
Total
= (yij i j )2 (I 1)(J 1)
sR2
i, j
(y
ij
y.. )2
n 1
sy2
i, j
s2
, y es un contraste independiente del anterior.
sR2
La eficacia del diseo depende de los efectos de los bloques, pero en cualquier
caso nunca es peor que si se tratara como un diseo completamente aleatorio
como el de la seccin anterior.
Si del anlisis de la varianza se deriva que el factor influye entonces se pasa
a realizar comparaciones entre las medias de los grupos determinados por los
niveles del factor, tal y cmo se coment en la seccin anterior.
Respecto a la validacin de modelo, el principal error que se puede estar
cometiendo es que se est despreciando la interaccin entre el factor y el bloque,
y podra ser que existiera, es decir, el modelo podra ser de la forma:
yij = + i + j + ( )ij + uij
Este modelo tiene demasiados parmetros, por lo que Tukey propuso tomar
( )ij = i j que slo aade un parmetro.
La interaccin se detecta fundamentalmente porque si sta existe y no ha
sido considerada en el modelo, los residuos no tendrn esperanza nula, y
grficamente si se representa en el eje de abscisas el valor previsto y en el de
ordenadas el residuo se podr ver una curvatura.
F(J 1),(I 1)(J 1) =
86
06/07/2006
I SIMULACIN
Los residuos en este caso sern: eijk = yijk yij . . La tabla ANOVA ser en tal
caso la siguiente
Fuente
Suma cuadrados
G. libertad Varianzas
2
Factor
JK i
s2
I 1
Factor
Interaccin
IK j2
J 1
s2
K ( )ij2
(I 1)(J 1)
2
s
IJ (K 1)
sR2
i, j
Residual
2
ijk
i , j ,k
06/07/2006
87
(y
Total
ijk
y... )2
IJK 1
sy2
i , j ,k
H 0 : j = 0, j ;
estadstico
H 0 : ( )ij = 0, i, j ;
F(J 1),IJ (K 1) =
estadstico
s2
sR2
2
s
= 2
sR
88
06/07/2006
I SIMULACIN
A B C
B C
A B
A B
B C
A B C
A B C
N =4
A B C
A D C
D C
A B
A D C
D C
D C
A B
A B
B
A D C
N =5
A B C
B C
C
E
A B C
D E
A B C
D E
A B
D E
A B C
A B
A B C
B C
D E
D E
D E
D E
D E
D E
A B C
A B C
N =6
06/07/2006
D E
B C
D E
A B C
D E
A B C
D E
A B
A B C
D E
A B C
A B C
D E
B C
A B
D E
89
A B C
D E
A F
E C
A D E
D C
A F
B C
D C
A B
Para ver los cuadrados latinos de mayor dimensin consultar Pea (1998).
Se asigna un factor a las filas, otro a las columnas y otro a las letras. El
diseo es simtrico para ambas as que se pueden asignar como se desee, y en
general, se hablar del efecto fila, efecto columna y efecto letra. A continuacin
se aleatoriza el orden de las columnas y el de las filas, resultando as las
combinaciones de niveles de los tres factores que han de ser experimentadas.
Por ejemplo, si para comparar el efecto que tiene sobre el consumo en
automviles cuatro tratamientos de la gasolina, se seleccionan 4 automviles y 4
conductores, se puede aplicar un diseo de cuadrado latino con N = 4 para
eliminar en las comparaciones del efecto vehculo y conductor. Se asigna, por
ejemplo, que las columnas sean los conductores (cada columna es un conductor),
las filas el vehculo (cada fila un vehculo) y las letras el tratamiento.
Entonces se selecciona un cuadrado latino de orden 4, por ejemplo,
A B C
A D C
A B
T1 T 2 T 3 T 4
T 2 T1 T 4 T 3
T 3 T 4 T1 T 2
T 4 T 3 T 2 T1
D C B A
Ahora, se aleatoriza a quin corresponde cada fila y cada columna. As, si el
orden resultante para las filas es (2,1,3,4) y para las columnas (3,4,2,1) el diseo
resultante sera:
C3 C4 C2 C1
V2 T1 T2 T3 T4
V1 T2 T1 T4 T3
V3 T3 T4 T1 T2
V4 T4 T3 T2 T1
Reordenando las filas y columnas, que es como se suele presentar el diseo,
C1 C2 C3 C4
V1 T3 T4 T2 T1
V2 T4 T3 T1 T2
V3 T2 T1 T3 T4
90
06/07/2006
I SIMULACIN
V4 T1 T2 T4 T3
Cada celda representa un experimento que hacer con el conductor de la
columna correspondiente, el vehculo de la fila correspondiente y el tratamiento
de gasolina que se indique en la celda. Obsrvese que cada nivel de un factor
aparece combinado con todos los niveles de los dems factores. Por otra parte,
un diseo completo exigira 43 = 64 experimentos mientras que este diseo
requiere 42 = 16 pruebas.
El modelo que se supone es el siguiente
yij (k ) = + i + j + k + uij (k ), i, j, k = 1,..., N
i = j = k = 0 .
= y... =
ij .
i, j
N2
i = yi .. y...;
yi .. =
j = y. j . y...;
y. j . =
k = y..k y...;
y..k =
ij .
N
yij .
i
N
yij (k )
i, j
N
= yij (k ) i j k , y la estimacin
2
ij (k )
i, j
.
(N 1)(N 2)
Por ltimo, el cuadro del anlisis de la varianza sera
Fuente
Suma cuadrados
G. libertad
2
Efecto fila
N i
N 1
i
Varianzas
s2
Efecto columna
N j2
N 1
s2
Efecto letra
N k2
N 1
s2
(N 1)(N 2)
sR2
Residual
2
ij (k )
i, j
06/07/2006
91
Total
(y
ijk
y... )2
sy2
N2 1
i, j
1)
efecto fila H 0 : i = 0, i;
2)
efecto columna H 0 : j = 0, j ;
3)
estadstico
efecto letra H 0 : k = 0, k ;
estadstico
estadstico
s2
sR2
s2
sR2
s2
sR2
Para cuatro variables existe una extensin de este diseo que son los
cuadrados greco-latinos, que no se va a ver en esta introduccin pero que puede
ser consultado en cualquier libro de diseo de experimentos o estadstica como
Pea (1998).
92
06/07/2006
I SIMULACIN
influye son idnticos. Sin embargo cuando existe interaccin entre dos efectos,
los contrastes cambian de modo que si en el de efectos fijos para ver el efecto de
un factor se contrasta el valor de s2 / sR2 , en el de efectos aleatorios se contrasta
2
s2 / s
.
Por otra parte, en el modelo de efectos aleatorios la estimacin de los valores
i , j ,... no tiene sentido, por lo que no se plantea el problema de las
comparaciones mltiples, ya que el objetivo es contrastar que los efectos existen,
y en caso afirmativo, estimar las varianzas.
Un caso especial de este tipo de diseos es cuando los factores que
intervienen estn anidados o jerarquizados. Por ejemplo, si se desea estudiar la
influencia en la opinin de los trabajadores del sector industrial en que trabajan
y de la empresa en qu estn, no es posible cruzar todos los niveles de los
factores. En primer lugar habr que seleccionar sectores, despus, para cada
sector seleccionar empresas de ste, y dentro de cada empresa seleccionar
trabajadores. As el factor empresa puede medirse slo a un nivel fijo del factor
sector. Este tipo de diseos se denominan de clasificacin jerrquica o diseos
anidados, y en ellos al no existir cruces entre factores no puede existir
interaccin entre ellos.
El caso de diseos jerrquicos ms importante es el modelo con dos factores
aleatorios o modelo de componentes de la varianza. Supngase que se quiere
estimar la variabilidad en el rendimiento siendo un factor las mquinas y otro
los operarios. Para ello se selecciona un conjunto de mquinas al azar (efecto
aleatorio) y se toman varias muestras de la produccin con distintos
trabajadores en cada mquina. La diferencia fundamental con otros diseos es
que no estn todas las mquinas y que los trabajadores son distintos en cada
mquina, no se cruzan.
El modelo que se establece es yijk = + i + j (i ) + uijk , donde yijk es la
respuesta, i es el efecto aleatorio de la mquina que es un valor de una
N (0, 2 ) , j (i ) es el efecto del trabajador j con la mquina i cuya distribucin
es N (0, ) y uijk es el error experimental al actuar un trabajador en una
mquina concreta y se considera N (0, ) . Tomando varianzas se tiene
y2 = 2 + 2 + 2 .
Cuando se toma la misma cantidad de trabajadores por cada mquina los
datos pueden disponerse en una tabla de doble entrada como en un diseo
factorial con dos factores (mquina y operario) con replicacin. Sin embargo, la
interpretacin es muy distinta ya que los operarios en el diseo clsico eran los
mismos para todas las mquinas, mientras que aqu son diferentes para cada
mquina (el hecho de que sea por ejemplo la primera columna supone que es el
primero en orden para cada mquina no el mismo operario).
06/07/2006
93
2 = sR2 = i, j ,k
.
IJ (K 1)
A continuacin se estima la varianza debida al factor anidado
K (yij . yi .. )2
2
2
s sR
i, j
donde s22 =
.
2 = 2
I (J 1)
K
Por ltimo, la variabilidad debida al factor principal se estima como
JK (yi .. y... )2
2
2
s
K
i
.
2 = 1
donde s12 =
KJ
I 1
La diagnosis del modelo se efecta con los contrastes habituales.
94
06/07/2006
I SIMULACIN
y11 (o)
+
y21 (a)
+ y12 (b)
+
+ y22 (ab)
El modelo factorial sera de la forma
yij = + i + j + ( )ij + uij ;
i, j = 1,2
1 si factor k en nivel
yij = + 2X1 + 2X 2 + ( )22 X1X 2 + uij ; i, j = 1,2
En este diseo hay un parmetro por cada factor y uno por interaccin. Tal
y como est expresado los coeficientes representan el incremento esperado en la
respuesta cuando los factores se fijan al nivel +. Sin embargo, por conveniencia,
se hablar de efecto de un factor como el efecto esperado en la respuesta cuando
pasa de a +. Estos efectos los vamos a denotar por la misma letra pero sin
subndice ya que no es necesario, verificndose las siguientes relaciones:
1
1
1
( )22 = ( )
2 = 1 =
2 = 1 =
2
2
2
La estimacin de estos nuevos parmetros sera de la forma
1
1
1
= (o + a + b + ab) = (a + ab o b) = (b + ab o a )
4
2
2
1
( ) = (o + ab a b)
2
Una forma de recordar estas estimaciones es conocida como el algoritmo de
los signos. Este algoritmo se aplica creando una tabla denominada estndar a
partir de la tabla de observaciones. En ella se aade una columna AB que es el
producto de las columnas A y B, y la estimacin de cada parmetro se hace
multiplicando la correspondiente columna de signos por las observaciones y
dividiendo luego entre 2. Este algoritmo es aplicable tambin cuando hay ms
de dos factores. La tabla estndar entonces sera:
A
B AB
Y
+ y11 (o)
+
y21 (a)
+
y12 (b)
+
+
+ y22 (ab)
En este anlisis se estiman cuatro parmetros con cuatro observaciones, de
modo que no es posible estimar el error experimental. Por lo tanto, para hacer
intervalos de confianza o contrastes de hiptesis para los parmetros ser
06/07/2006
95
+ +
+
(o)
+
+
+
(a)
+
(b)
+
+
(ab)
+
+
+
(c)
+
+
+
(ac)
+
+
+
(bc)
+
+
+
+ +
+
+
(abc)
Para hacer la estimacin del efecto de un factor o interaccin se multiplica la
columna de signos correspondiente por la columna de las observaciones,
dividiendo despus por n / 2 = 2k 1 = 22 . Slo el estimador de la media va
dividido por n = 2k .
Una vez hechas las estimaciones para interpretarlas con intervalos de
confianza o hacer contrastes es necesaria una estimacin de la varianza residual.
Hay bsicamente tres formas de estimarla:
a) mediante una estimacin externa
b) replicando el diseo: los efectos se estiman con las medias de los valores
correspondientes y la varianza residual ser la suma de los cuadrados de
los residuos dividida entre 8(R 1) , siendo R el nmero de replicaciones;
96
06/07/2006
I SIMULACIN
C(-)
(-)
Factor A
(+)
06/07/2006
97
c) El hecho de que no sean paralelas las rectas indica que hay interaccin
entre ambas variables. Es decir, slo se puede considerar que no hay
interaccin si ambas rectas fueran paralelas.
El modelo 2k
El modelo, estimaciones, etc. son prcticamente iguales que el modelo
anterior. Slo hay algunas matizaciones que hacer. La primera es que en estos
modelos las interacciones altas se suelen considerar nulas, en concreto las
superiores a 3, lo que adems supone que se dispone de observaciones para
estimar el error experimental. Se suele utilizar el mismo estimador a partir de la
MEDA para el error experimental salvo que en este caso ser = s 2k 2 .
Respecto a los contrastes sobre los parmetros, en la prctica se suponen
significativos aquellos para los que j 2s y si k es grande se hace con un 3.
Una cuestin que resulta de inters es decidir si es mejor hacer un diseo
2k 1 replicado o introducir un factor ms y hacer uno 2k con el riesgo de aadir
un factor inerte, es decir, que no ejerce influencia alguna. La respuesta es
sencilla, es mejor hacer uno 2k , ya que si el nuevo facto es inerte ambos
procedimientos son idnticos y tendremos el diseo replicado, y si es activo, bien
por s solo o por interaccin el diseo amplido permitir medir su efecto.
Fracciones de diseos factoriales a dos niveles
El problema de los diseos anteriores es que requiere un nmero elevado de
pruebas, especialmente si se utilizan muchos factores. La idea de los diseos
fraccionales es realizar slo una fraccin del diseo completo que permita
estimar los parmetros de orden bajo. En estos diseos se suponen nulas las
interacciones de orden alto. Estos diseos se utilizan sobre todo en los principios
de una investigacin para identificar los factores que tienen mayor efecto en la
respuesta.
Supongamos que en un diseo 23 seleccionamos como fraccin aquellos
experimentos en que ABC siempre tiene signo +.
A
B
C AB AC BC
+
+
+
+
+
+
+ +
+
98
La tabla sera:
ABC
Y
+
(a)
+
(b)
+
(c)
+
(abc)
06/07/2006
I SIMULACIN
los
factores
con
las
AI = A
reglas
A = AI = AABC = IBC = BC ,
C = IC = ABCC = ABI = AB ,
A = BC
B = AC
C = AB
AA = I .
As
se
tiene
B = BI = BABC = AC
es
decir,
la
confusin
y
ser
06/07/2006
99
E = AB )
la
ecuacin
de
definicin
de
la
fraccin
ser
Se
llama
ecuacin
generatriz
completa
todas
las
posibles
100
generatriz
sera
definido por D = AB
E = AC
F = BC , la
la
completa
06/07/2006
I SIMULACIN
sB B + AC
sC C + AB
s + ABC .
Supongamos
06/07/2006
101
yi = 0 + j x ij + i ,
i v.a.i.i.d. N (0, 2 )
j =1
102
06/07/2006
I SIMULACIN
I.5.1 Definiciones
El desarrollo de un modelo de simulacin pasa por distintas fases, pudiendo
06/07/2006
103
Cada una de estas fases tiene asociado un concepto que representa el proceso
de aceptacin de la correccin de esa fase tanto por la persona que desarrolla el
modelo como por el usuario o cliente del mismo. Estos conceptos son la
verificacin, la validacin y la credibilidad.
La verificacin consiste en determinar que el programa de ordenador se
comporta como es debido, es decir, que se ha realizado una traduccin correcta
del modelo conceptual a un programa de ordenador que funciona correctamente.
La validacin consiste en determinar si el modelo conceptual es una
representacin adecuada del sistema, es decir, si nuestro conocimiento del
sistema se ha traducido en hiptesis que reproducen correctamente su
comportamiento referente a los objetivos del estudio.
La credibilidad es hacer que los resultados sean aceptados por el decisor para
ser utilizados en el proceso de toma de decisiones, es decir, han de ser crebles.
La siguiente grfica muestra las fases y los conceptos que intervienen en cada
una de ellas.
104
06/07/2006
I SIMULACIN
VALIDACIN
VERIFICACIN
VALIDACIN
ESTABLECER
CREDIBILIDAD
ESTABLECER
CREDIBILIDAD
SISTEMA
MODELO
CONCEPTUAL
ANLISIS
Y DATOS
PROGRAMA
SIMULACIN
RESULTADOS
CORRECTOS
DECISIONES:
IMPLANTACIN
PRUEBAS Y
PROGRAMACIN EXPERIMENTOS ACEPTACIN
POR EL
DECISOR
06/07/2006
105
106
06/07/2006
I SIMULACIN
Datos histricos de
REAL
entrada al sistema
MODELO DE
Resultados sistema
COMPARAR
SIMULACIN
Resultados modelo
06/07/2006
S R2
S2
+ M
m
n
107
8
1
x (2, 8 ]
.
f (x ) = 2
5 x
x (8,10]
4 8
0
resto
108
06/07/2006
I SIMULACIN
I.6 Referencias
Barcel, J. (1996) Simulacin de Sistemas Discretos. Isdefe.
Bratley, P., Fox, B.L., Schrage, L.E. (1987) A Guide to Simulation. SpringerVerlag.
Carter, G. and Ignall, E.J. (1975) Virtual Measures: A Variance Reduction
Technique for Simulation, Management Science, 21, 607-616.
Fushimi, M. (1989) Random Number Generation on Parallel Processors
Proceedings of the 1989 Winter Simulation Conference. pp 459-461.
Geweke, J. (1989) Bayesian Inference in Econometrics using Monte Carlo
Integration. Econometrica, 57, 1317-1340.
Hammersley, J.M. and Handscomb, D.C. (1964) Monte Carlo Methods, Methuen
Kelton, W.D., Sadowski, R.P. and Sadowski, D.A. (2002) Simulation with
Arena. McGraw-Hill.
Kleijnen, J. and Van Groenendaal, W. (1994) Simulation. A Statistical
Perspective. John Wiley and Sons.
Law, A.M., Kelton, W.D. (2000) Simulation Modeling and Analysis. McGrawHill.
LEcuyer, P. (1999) Good Parameters and Implementations for Combined
Multiple Recursive Random Number Generators Operations Research. Vol.
47, No. 1, January-February, pp 159-164.
LEcuyer, P., Simard, R., Chen, E.J., and Kelton, D. (2002) An ObjectOriented Random-Number Package with Many Long Streams and
Substreams Operations Research. Vol. 50, No. 6, November-December, pp
1073-1075.
Montgomery, D.C.
Iberoamericana.
(1991)
Diseo
anlisis
de
experimentos.
Ed.
06/07/2006
109
Aplicaciones. Ra-Ma
Rubinstein, R.Y. and Melamed, B. (1998) Modern Simulation and Modeling.
John Wiley and Sons.
Thomson, S.K. (1992) Sampling. Wiley.
Trotter, H. and Tukey, J. (1956) Conditional Monte Carlo for normal samples,
in Symposium on Monte Carlo Methods, H. A. Meyer (ed.), Wiley, 64-79
110
06/07/2006
I SIMULACIN
PROBLEMA 2
Sea una variable aleatoria X con funcin de densidad y de distribucin:
06/07/2006
111
x
x 2
x [0,2]
8
16
1
1
x
(2,8]
1
, F (x ) = + (x 2)
f (x ) = 12
4 12
5 x
2
x (8,10]
x + 5x 21
4 8
16
0
4
4
resto
x <0
x [0,2]
x (2,8]
x (8,10]
resto
f (x ) = 2
1 x 1
cualquier otro valor
x 0
0
x
0 x a
a(1 a )
1
a x 1 a para valores de 0 < a < 1/ 2
f (x ) =
1 a
1 x
1a x 1
a(1 a )
x 1
0
Comentar qu mtodo es el ms conveniente para cada funcin de densidad.
PROBLEMA 4
Dado un sistema de dos componentes colocadas en serie de modo que el fallo
de una de ellas supone el fallo del sistema, y tal que cuando una pieza falla la
otra se desconecta (no sigue funcionando hasta que la que ha fallado no sea
112
06/07/2006
I SIMULACIN
10
11
06/07/2006
113
20 < x 25
50
25 < x 30
0.1
f1(x ) =
35 x
30 < x 35
50
0
resto
114
06/07/2006
I SIMULACIN
Una empresa fabrica dos tipos de productos que han de ser procesados por
un nico empleado. El tiempo de fabricacin del primer tipo de producto sigue
una distribucin normal de media 4 horas y desviacin tpica 1, y el del segundo
tipo de producto sigue una distribucin triangular simtrica entre 2 y 4 horas, es
x 2 x (2, 3)
4 x x (3, 4)
Los pedidos son unitarios, el tiempo que transcurre entre pedidos es uniforme
entre 3 y 5 horas, y el 35 % de ellos son pedidos de tipo 1.
a) Obtener el nmero medio de pedidos sin atender al finalizar el da,
explicando el procedimiento utilizado para generar las variables aleatorias
que aparecen en el modelo, con un tiempo lmite de 40 horas, y utilizando
los siguientes valores obtenidos independientemente y con distribucin
uniforme en el intervalo (0,1) (cada secuencia una variable y redondear a un
decimal los valores obtenidos) (3.5p.):
Serie
Serie
Serie
Serie
1: 0.5, 0.9, 0.3, 0.7, 0.9, 0.2, 0.1, 0.6, 0.8, 0.3, 0.6, 0.1, 0.8, 0.7, 0.9, 0.1, 0.4, 0.2
2: 0.2, 0.8, 0.1, 0.5, 0.9, 0.6, 0.7, 0.1, 0.2, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2, 0.9, 0.7, 0.6
3:0.1, 0.4, 0.8, 0.6, 0.7, 0.2, 0.1, 0.5, 0.7, 0.9, 0.8, 0.6, 0.9, 0.2, 0.3, 0.7, 0.3, 0.5
4: 0.2, 0.7, 0.5, 0.3, 0.1, 0.9, 0.5, 0.6, 0.2, 0.8, 0.7, 0.4, 0.5, 0.6, 0.9, 0.3, 0.1, 0.4
06/07/2006
720.00
Absolute clock
(1)
(2)
Average
Number
utilization
entries
.80
2869
.51
2892
720.00
(3)
Average
time/trans
.20
.13
115
Queue
(AD set)
TLLER1
MECAN1
TLLER2
MECAN2
Queue
(AD set)
(1)
Maximum
contents
19
18
11
10
(6)
Average
time/trans
(2)
Average
contents
3.73
2.93
.98
.47
(7)
$Average
time/trans
(3)
Total
entries
2869
2869
2892
2892
(4)
Zero
entries
0
566
1
1455
(5)
Percent
zeros
.00
19.73
.03
50.31
(8)
Current
contents
TLLER1
.94
.94
1
MECAN1
.74
.92
0
TLLER2
.24
.24
0
MECAN2
.12
.23
0
$Average time/trans=average time/trans excluding zero entries
PROBLEMA 9
A una centralita llaman clientes de dos tipos, con tiempos entre llamadas
distribuidos segn una distribucin Exponencial de parmetro 1 (minutos) para
el primer tipo de clientes y uniforme entre 2 minutos y 5 minutos para el
segundo tipo. La centralita tiene varias lneas con unos amables caballeros que
atienden cada una de ellas. Si al recibir una llamada todas las lneas estn
ocupadas, salta una espantosa musiquilla con la que se suponen entretienen al
cliente de modo que ste queda pacientemente esperando a que su llamada sea
atendida, lo cual se hace por riguroso orden de llamada.
Una vez que la llamada del cliente es atendida, se le pasa la llamada a unas
agradables seoritas que amablemente resuelven la razn de la llamada,
escuchando una segunda horrorosa msica si todas las seoritas estn
atendiendo otras llamadas hasta que le toque el turno de ser atendido por stas.
La distribucin del tiempo que cada caballero tarda en atender la llamada se
distribuye segn una uniforme entre 3 y 5 minutos, y la distribucin del tiempo
que las seoritas tardan en resolver el problema uniforme entre 5 y 15 minutos.
Escribir un modelo/programa para estudiar en una jornada de 8 horas el
nmero de lneas que debe tener la centralita y de seoritas que resuelven el
problema, dando para el diseo ptimo el tiempo medio que pasa un cliente
escuchando la espantosa primera musiquilla, el tiempo medio que pasa un
cliente escuchando la horrorosa segunda msica, y una tabla de frecuencias y la
media del tiempo que pasa cada tipo de clientes colgado del telfono, adems
del grado de ocupacin de cada uno de los amables caballeros y de las eficientes
seoritas.
PROBLEMA 10
En una fbrica se producen dos tipos de producto segn peticiones. La
demanda de los productos es unitaria siguiendo el tiempo entre pedidos una
distribucin exponencial de media 2 horas para el primer producto, y de media
30 minutos para el segundo producto.
116
06/07/2006
I SIMULACIN
P1
P2
M1
U(0.5,1)
U(0.5,1)
M2
U(1,1.5)
M3
U(0.75,1.25)
U(0.75,1.25)
M4
U(0.3,0.5)
M5
U(0.5,0.8)
U(0.75,1.25)
06/07/2006
117
SIMULATEtall3
GENERATE 5*FN$XPDIS
STORAGE
2QTABLE ARRIVE OPT2
OPT1,0,5,15
SEIZE aer,Q
ADVANCE 3*FN$XPDIS
GENERATE
RELEASE aer
5*FN$XPDISARRIVE
DEPART OPT2
OPT1SEIZE
TERMINATE
tall1,QADVANCE
4*FN$XPDIS
RELEASE tall1
DEPART OPT1
TERMINATE
Facility
TALL1
AER
Storage
contents
.37
Storage
TALL3
Average
(AD set)
OPT1
TALL1
OPT2
AER
OPT3
TALL3
Queue
(AD set)
(1)
Average
utilization
.77
.62
(2)
Number
entries
1682
1754
Capacity
Average
utilization
1711
3.76
(6)
Current
contents
0
(1)
Total
contents
19
18
13
12
7
5
(6)
Average
time/trans
GENERATE 5*FN$XPDIS
ARRIVE OPT2
SEIZE aer,Q
ADVANCE 3*FN$XPDIS
RELEASE aer
DEPART OPT2
TERMINATE
GENERATE 8760
TERMINATE 1
START 1
END
(3)
Average
time/trans
4.02
3.08
Average
time/trans TALL3
Entries
2
Average
.73
(7)
Maximum
contents
2
(2)
(3)
Zero
Percent
contents
entries
3.04
2.26
1.53
.92
.84
.10
(7)
$Average
time/trans
1682
1682
1754
1754
1711
1711
(4)
entries
0
418
0
688
0
1355
(5) Queue
Maximum
zeros
.00
24.85
.00
39.22
.00
79.19
(8)
Current
contents
OPT1
15.81
15.81
0
TALL1
11.79
15.69
0
OPT2
7.65
7.65
1
AER
4.57
7.52
0
OPT3
4.28
4.28
0
TALL3
.52
2.50
0
$Average time/trans=average time/trans excluding zero entries
Table
(1)
(2)
(3)
Entries in table
Mean argument
Standard deviation
1682
15.81
14.87
Range
Observed
Per cent
frequency
of total
percentage
remainder
.00
.00
100.00
.01 5
436
25.92
25.92
5.01 10
358
21.28
47.21
10.01 15
232
13.79
61.00
15.01 20
161
9.57
70.57
20.01 25
121
7.19
77.76
25.01 30
103
6.12
83.89
30.01 35
88
5.23
89.12
35.01 40
56
3.33
92.45
40.01 45
35
2.08
94.53
45.01 50
30
1.78
96.31
50.01 55
19
1.13
97.44
55.01 60
11
.65
98.10
60.01 65
10
.59
98.69
Overflow
22
1.31
100.00
(5) Average value of overflow
72.84
(4)
Sum of arguments
26592.06
Cumulative
Cumulative
0
0
74.08
52.79
39.00
29.43
22.24
16.11
10.88
7.55
5.47
3.69
2.56
1.90
1.31
.00
PROBLEMA 12
El departamento de contabilidad de una empresa tiene un sistema
informtico con varios ordenadores en un mismo dominio, un ordenador que
acta como servidor de impresin (que procesa los trabajos por riguroso orden
de llegada sin que sean establecidas prioridades en los trabajos) y una impresora
118
06/07/2006
I SIMULACIN
x
0 < x < 0.5
0
resto
x 1
G (x ) = 12
x + 5
20
1
a)
x <1
1 < x < 10
10 < x < 15
x > 15
06/07/2006
119
b)
PROBLEMA 13
Se considera un taller de reparaciones con un robot. Se considera la
posibilidad de sustituir ste por otro robot. Ambos robots son diferentes, con
diferentes costes. En la siguiente tabla se recogen los datos de cada uno de los
robots, entendindose por costes operativos los costes por unidad de tiempo que
el robot est realizando alguna reparacin y por costes de amortizacin costes
por unidad de tiempo, est reparando o no el robot.
Costes amortizacin (/h) Costes operativos (/h)
Robot 1
1000
2000
Robot 2
1500
4000
El primer robot puede reparar a razn de 6 mquinas por hora y el segundo
puede reparar a razn de 7 mquinas por hora.
Cuando una mquina se encuentra en el taller de reparacin se considera un
coste por unidad de tiempo por prdida de productividad estimado en 8000 /h
y el taller lo asume como coste por unidad de tiempo y por cliente. Se supone
que las mquinas llegan al taller segn un proceso de Poisson de parmetro 5
mquinas por hora y que el tiempo de reparacin con que reparan los robots
sigue una distribucin exponencial.
Adems los robots se averan, siendo
32
(x 0.75) 0.75 x 1
3
16
f (x ) = (1.5 x ) 1 x 1.5
3
0
resto
120
06/07/2006
I SIMULACIN
a) Obtener el coste por hora del primer robot, mediante una traza que simule
hasta 2 horas (no incluir eventos posteriores a 2 horas), explicando cules
son todos los elementos del modelo (variables de estado, datos, hiptesis,
eventos, ...) y el procedimiento utilizado para generar las variables aleatorias
que aparecen en el modelo, utilizando los siguientes valores obtenidos
independientemente y con distribucin uniforme en el intervalo (0,1) (cada
secuencia una variable en el orden en que se piden en la hoja de soluciones y
redondear a 2 decimales los valores obtenidos):
Serie 1: 0.5, 0.9, 0.3, 0.7, 0.2, 0.1, 0.6, 0.3, 0.6, 0.1, 0.8, 0.7, 0.9, 0.1, 0.4, 0.2, 0.9, 0.8
Serie 2: 0.2, 0.8, 0.1, 0.5, 0.9, 0.6, 0.1, 0.3, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2, 0.9, 0.7, 0.6, 0.7
Serie 3: 0.9, 0.1, 0.8, 0.6, 0.2, 0.5, 0.7, 0.4, 0.1, 0.6, 0.3, 0.7, 0.3, 0.1, 0.1, 0.4, 0.3, 0.1
06/07/2006
121
Funcin de densidad
1/20
1/40
1/40
% IBEX 35
-10
10
20
t
5
Potencia
transformada
122
06/07/2006
I SIMULACIN
4 x 12
resto
06/07/2006
123
0.8
Serie 2: 0.2, 0.8, 0.1, 0.5, 0.9, 0.6, 0.1, 0.3, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2, 0.9, 0.7, 0.6,
0.7
Serie 3: 0.9, 0.2, 0.8, 0.6, 0.2, 0.5, 0.7, 0.4, 0.1, 0.6, 0.3, 0.7, 0.3, 0.5, 0.1, 0.4, 0.3
PROBLEMA 19
Sea una planta de produccin con un puesto al que llegan dos tipos de
producto, P1 y P2. El tiempo entre llegadas de los productos se considera que
sigue una distribucin F1, de las cuales el 65 % son productos de tipo P1. Los
productos llegan en un orden aleatorio. En el puesto hay un robot que tarda en
procesar los productos de tipo P1 un tiempo distribuido segn una distribucin
G1 y los productos de tipo P2 segn una distribucin G2. El robot tiene dos
modos de configuracin, uno para cada tipo de producto, de forma que para
cambiar de modo de configuracin (pasar de procesar un producto de un tipo a
procesar uno de otro tipo), el robot requiere un tiempo de ajuste de Taj
minutos. Por esta razn, el orden en que se procesan los productos es tal que si
el robot est procesando un producto de un tipo a continuacin procesar otro
del mismo tipo, hasta que no le queden ms, es decir, hasta que al acabar un
producto no queden ms de ese tipo en la cola. Inicialmente, el modo en que
est configurado el robot es el modo 1, es decir, para procesar productos de tipo
P1.
a) Hacer un modelo de simulacin de eventos discretos con incremento de
tiempo al prximo evento para obtener el nmero de productos procesados
de cada tipo durante un tiempo T y el nmero de productos de cada tipo
que quedan sin procesar al final, definiendo todos los elementos que
intervienen.
b) Obtener durante 100 minutos los productos procesados de cada tipo, y el
nmero de productos que quedan sin procesar de cada tipo al final, siendo:
x 10
16
0.1345
e
10 < x < 20
f (x ) =
0
resto
124
06/07/2006
I SIMULACIN
Serie 2: 0.8, 0.1, 0.9, 0.6, 0.2, 0.3, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2, 0.9, 0.7, 0.6, 0.7, 0.3
06/07/2006
125
I SIMULACIN
127
Otras variables:
- TM: Reloj de simulacin.
- DL: Tiempo entre llegadas = Exponencial.
- DS1: Tiempo de servicio ventanilla1 = Discreta.
- DS2: Tiempo de servicio ventanilla2 = Discreta.
- TL: Instante de la prxima llegada.
- TS1: Instante del prximo final de servicio en ventanilla1.
- TS2: Instante del prximo final de servicio en ventanilla2.
MODELO:
Programa principal:
0.- Inicializacin
N1 = 0; N2 = 0; TM = 0; TS1=inf.; TS2=inf.;
Generar DL; TL = DL
1.- Actualizacin del reloj de simulacin: TM = min (TL, TS1, TS2);
2.- Identificacin de evento y llamada a subrutinas de evento.
Si TM = TL. Llamar a subrutina: Llegada a servidor 1.
Si TM = TS1. Llamar a subrutina: Servicio1.
Si TM = TS2. Llamar a subrutina: Servicio2.
3.- Regla de parada.
Si TM<TMAX, ir a 1. Si no, parar: N1, N2.
Subrutinas
Llegada a servidor1
1.- N1=N1+1:
2.- Generar DL, poner TL=TM+DL.
Si N1=1, Generar DS1, poner TS1=TM+DS1:
3.- Volver a Programa principal.
Servicio1
1.- N1 = N1 - 1; N2 = N2 + 1.
2.- Si N1 = 0, poner TS1=inf. Si no, Generar DS1, poner TS1 = TM + DS1
Si N2=1, Generar DS2, poner TS2 = TM + DS2;
3.- Volver a Programa principal.
128
06/07/2006
I SIMULACIN
Servicio2
1.- N2 = N2 1.
2.- Si N2 = 0, poner TS2=inf. Si no, Generar DS2, poner TS2 = TM + DS2;
3.- Volver a Programa principal.
N1
0
1
0
0
N2
0
0
1
0
TL
0.27
3.08
3.08
3.08
TS1
TS2
0.87
1.77
129
4
5
6
7
8
9
10
11
12
13
14
15
16
3.08
3.68
4.58
4.91
5.14
5.61
5.75
6.27
6.31
6.51
7.11
7.51
7.81
Llegada
Servicio1
Servicio2
Llegada
Llegada
Servicio1
Llegada
Llegada
Servicio1
Servicio2
Servicio1
Servicio2
Servicio1
1
0
0
1
2
1
2
3
2
2
1
1
0
0
1
0
0
0
1
1
1
2
1
2
1
2
4.91
4.91
4.91
5.14
5.75
5.75
6.27
8.04
8.04
8.04
8.04
8.04
8.04
3.68
17
8.04
Llegada
8.16
8.64
18
8.16
Llegada
8.85
8.64
8.31
19
8.31
Servicio2
8.85
8.64
9.21
20
8.64
Servicio1
8.85
9.34
9.21
21
8.85
Llegada
8.92
9.34
9.21
22
8.92
Llegada
2 10.02 9.34
9.21
23
9.21
Servicio2
24
9.34
Servicio1
25
9.94
Servicio1
26
10.02
Parada
5.61
5.61
6.31
6.31
6.31
7.11
7.11
7.81
7.81
4.58
6.51
6.51
6.51
6.51
7.51
7.51
8.31
8.31
8.31
130
06/07/2006
I SIMULACIN
N 1 N 1 + 1 N 1 = 0
N 2 N 2 + 1 N 2 = 0 N 1 = 1
NE NE + 1 N 2 = 1 N 1 = 1.NE = 0
NR NR + 1 N 2 = 1 N 1 = 1.NE = 1
Llegada de un lote.
Datos:
- Distribucin de tiempos entre llegadas al sistema (Discreta).
- Distribucin de los tiempos de servicio en ambas envasadoras
(Exponencial)
- TMAX = tiempo mximo de simulacin. (8 horas = 480 minutos).
Otras variables:
- TM: Reloj de simulacin.
- DL: Tiempo entre llegadas = Discreta.
- DS1: Tiempo de servicio envasadora1 = Exponencial.
- DS2: Tiempo de servicio envasadora2 = Exponencial.
06/07/2006
131
MODELO:
Programa principal:
0.- Inicializacin
N1 = 0; N2 = 0; NR = 0; NE = 0; TM= 0; TS1=inf.; TS2=inf.;
Generar DL; TL = DL
1.- Actualizacin del reloj de simulacin:
TM = min (TL, TS1, TS2);
N= N1 +N2 + NE;
2.- Identificacin de evento y llamada a subrutinas de evento.
Si TM = TL. Llamar a subrutina: Llegada a sistema.
Si TM = TS1. Llamar a subrutina: Servicio1.
Si TM = TS2. Llamar a subrutina: Servicio2.
3.- Regla de parada.
Si TM<TMAX, ir a 1. Si no, parar:
N1, N2. NR.
Coste = 5000 k + NR 10000
Subrutinas
Llegada a sistema
1.- Si N1 = 0, N1=N1+1. Generar DS1, poner TS1=TM+DS1
Si no
Si N2= 0, N2= N2+1. Generar DS2 poner TS2=TM+DS2
Si no,
Si NE < k Entonces NE=NE+1
Si no
NR= NR + 1;
2.- Generar DL, poner TL=TM+DL.
3.- Volver a Programa principal.
Servicio1
1.- Si NE>0 entonces NE=NE-1; Generar DS1, poner TS1 =TM +DS1,
Si no, N1=N1-1, TS1=inf.
132
06/07/2006
I SIMULACIN
1
15 Llegada
1
0
0
0
45 153
2
45 Llegada
1
1
0
0
90 153 117
3
90 Llegada
1
1
0
1 120 153 117
4
117 Servicio2 1
1
0
0 120 153 213
5
120 Llegada
1
1
0
1 135 153 213
6
135 Llegada
1
1
1
1 150 153 213
06/07/2006
133
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
150
153
195
210
213
240
270
285
291
315
345
345
375
381
390
420
450
480
Llegada
Servicio1
Llegada
Llegada
Servicio2
Llegada
Llegada
Servicio2
Servicio1
Llegada
Llegada
Servicio1
Llegada
Servicio2
Servicio1
Llegada
Llegada
Servicio2
1
1
1
1
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
1
0
1
1
0
1
1
0
0
0
1
0
1
0
0
0
1
0
195
195
210
240
240
270
315
315
315
345
375
375
420
420
420
450
495
153
291
291
291
291
291
291
291
345
345
390
390
390
546
546
546
213
213
213
213
285
285
285
381
381
381
381
381
381
480
480
480
480
134
06/07/2006
I SIMULACIN
Los eventos que se pueden dar en nuestro sistema tal que produzcan un
cambio en el mismo son:
- Llegada de un autobs al servidor 1.
- Servicio de un autobs en el servidor 1, que implica la llegada de autobs
al servidor 2 o la salida definitiva del sistema despus de servicio 1
- Servicio de un autobs en el servidor 2 (lo que equivale a irse
definitivamente del sistema).
Mecanismo de transicin:
Los cambios que se producen en el estado del sistema cuando se produce uno
de los eventos anteriormente descritos son:
- Llegada de un autobs al servidor 1 : N1 N1+1.
- Servicio de un autobs del servidor 1. N1 N1-1. y con probabilidad p
es la llegada de un autobs al servidor 2 N2 N2+1, o la salida
definitiva del sistema despus de servicio 1.
- Servicio de un autobs en el servidor2: N2 N2-1.
Datos:
- Distribucin de tiempos entre llegadas a la zona de inspeccin (la llegada
se produce cada 30 minutos).
- Distribucin de los tiempos de servicio en la zona de inspeccin 1
(distribucin trapezoidal).
- Llegada de autobuses a la zona de reparacin (discreta), p.
- Distribucin de los tiempos de servicio en la zona de reparacin
(distribucin Gamma de parmetros p = 0,2 y a = 0,05, truncada en 30
minutos).
- TMAX = tiempo mximo de simulacin. ( 4 horas =240 minutos).
Otras variables:
- TM: Reloj de simulacin.
- DL1: Tiempo entre llegadas al servidor 1 = Cte.
- DS1: Tiempo de servicio ventanilla1 = Trapeizoidal.
- DS2: Tiempo de servicio ventanilla2 = Gamma.
- DP: Tipo de servicio despus de salir de servidor1 (llegada a servidor 2 o
salida definitiva).
- TL1: Instante de la prxima llegada.
- TS1: Instante del prximo final de servicio en ventanilla1.
- TS2: Instante del prximo final de servicio en ventanilla2.
- SUMA: contador acumulado suma de reas de autobuses en el sistema
06/07/2006
135
136
06/07/2006
I SIMULACIN
1.2.3.4.5.-
N2 = N2 1.
Si N2 = 0, poner TS2= inf. Si no, Generar DS2, poner TS2 = TM + DS2
SUMA = SUMA + NANT x (TM-TANT)
NANT=N1+N2, TANT=TM
Volver a Programa principal.
25 < x 30
0.1
f1(x ) =
35 x
30 < x 35
50
0
resto
06/07/2006
137
x =
ln u
i =1
1
30
Llegada
1
60 57.5
2
57.5 Servicio1 0
1
60
3
60
Llegada
1
1
90 84.5
4
84.5 Servicio1 0
1
90
5
90
Llegada
1
1 120 123.5
6
120
Llegada
2
1 150 123.5
7
121.87 Servicio2 2
0 150 123.5
8
123.5 Servicio1 1
0 150 155.5
9
150
Llegada
2
0 180 155.5
10
155.5 Servicio1 1
0 180 184.5
11
180
Llegada
2
0 210 184.5
138
TS2
TP
SUMA
0
121.87
S2
27.5
121.87
30
121.87 Fuera
79
121.87
84.5
121.87
144.5
150.11
Fuera 153.37
179.87
Fuera 190.87
215.37
06/07/2006
I SIMULACIN
12
13
14
15
184.5
210
218
240
Servicio1
Llegada
Servicio1
Llegada
1
2
1
2
0
0
1
1
210
240
240
270
218
218
244
244
257
257
Fuera
S2
224.37
249.87
265.87
309.87
06/07/2006
139
Otras variables:
- TM: Reloj de simulacin.
- DL: Tiempo entre pedidos. (uniforme).
- DS1: Tiempo de servicio tipo 1 = Normal.
- DS2: Tiempo de servicio tipo 2 = Normal.
- TL: Instante de la prxima llegada de cualquier tipo de pedido.
- TS1: Instante del prximo final de servicio de tipo 1.
- TS2: Instante del prximo final de servicio de tipo 2.
- TP: Tipo de pedido.
MODELO:
Programa principal:
0.- Inicializacin
N = 0; TM = 0; TS1 = inf.; TS2 = inf.; SUMA =0;
Generar DL;
TL = DL;
1.- Actualizacin del reloj de simulacin: TM = min (TL TS1, TS2);
TANT =TM;
2.- Identificacin de evento y llamada a subrutinas de evento.
Si TM = TL1. Llamar a subrutina: Llegada a fabricaron.
Si TM = TS1. Llamar a subrutina: Servicio1.
Si TM = TS2. Llamar a subrutina: Servicio2.
3.- Regla de parada.
Si TM < TMAX, ir a 1. Si no, parar: SUMA/TM
Subrutinas
Llegada a fabricacin
1.- N = N + 1;
2.- Generar DL; TL = TM + DL;
3.- Si N = 1; Generar TP;
Si TP = 1; Generar DS1 TS1= TM + DS1; TS2 = inf.
Si TP = 2; Generar DS2 TS2= TM + DS2; TS1 = inf.
4.- SUMA = SUMA + (N 1) (TM TANT )
5.- Volver a Programa principal.
140
06/07/2006
I SIMULACIN
Servicio1
1.- N = N - 1.
2.- Si N = 0, poner TS1 = inf. TS2 = inf.
Si N > 0;Generar TP;
Si TP = 1; Generar DS1 TS1= TM + DS1; TS2 = inf.
Si TP = 2; Generar DS2 TS2= TM + DS2; TS1 = inf.
3.- SUMA = SUMA + (N 1) (TM TANT ).
4.- Volver a Programa principal.
Servicio2
1.- N = N - 1.
2.- Si N = 0, poner TS1 = inf. TS2 = inf.
Si N > 0 Generar TP;
Si TP = 1; Generar DS1 TS1= TM + DS1; TS2 = inf.
Si TP = 2; Generar DS2 TS2= TM + DS2; TS1 = inf;
3.- SUMA = SUMA + (N 1) (TM TANT ).
4.- Volver a Programa principal.
0.5
Serie 1: 0.5, 0.9, 0.3, 0.7, 0.9, 0.2, 0.1, 0.6, 0.8, 0.3, 0.6, 0.1, 0.8, 0.7, 0.9, 0.1, 0.4, 0.2
Serie 2: 0.2, 0.8, 0.1, 0.5, 0.9, 0.6, 0.7, 0.1, 0.2, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2, 0.9, 0.7, 0.6
06/07/2006
141
Serie 4: 0.2, 0.7, 0.5, 0.3, 0.1, 0.9, 0.5, 0.6, 0.2, 0.8, 0.7, 0.4, 0.5, 0.6, 0.9, 0.3, 0.1, 0.4
142
Tipo
evento
Inicio
N TL
TS1
TS2
0 3.2
TP
SUMA
06/07/2006
I SIMULACIN
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
3.2
7
7.7
11
11.1
13.5
15.2
18.8
19.6
23
23
26.4
27.9
29.6
32.2
33.6
35.6
38
38
Llegada
Llegada
Servicio1
Llegada
Servicio2
Servicio2
Llegada
Servicio2
Llegada
Llegada
Servicio2
Llegada
Servicio1
Llegada
Servicio1
Llegada
Servicio2
Llegada
Servicio2
1
2
1
2
1
0
1
0
1
2
1
2
1
2
1
2
1
2
1
7
7.7
11
7.7
11
15.2
15.2
15.2
19.6
19.6
23
26.4
26.4 27.9
29.6 27.9
29.6 32.2
33.6 32.2
33.6
38
38
42.8
42.8
11.1
11.1
13.5
18.8
23
23
35.6
35.6
38
38
41.6
2
1
1
2
2
0
3.8
3.8
7.1
7.1
7.1
7.1
7.1
7.1
10.5
10.5
13.9
13.9
15.6
15.6
17
17
19.4
19.4
Al cabo de estas 40 horas se han dejado sin atender 1 pedido. Se han dado
servicio a una media de 19.4/40 = 0.485 productos cada hora.
RESULTADO DEL PROBLEMA 12
En primer lugar se presentar el modelo con todos los elementos que incluye
y en segundo lugar se presentar la traza, junto con los mtodos utilizados para
generar las variables aleatorias que se describen.
ELEMENTOS DEL MODELO:
Variables de estado:
El objetivo de la simulacin va a ser estudiar el factor de utilizacin de la
impresora.
NES(t) = Nmero de trabajos que esperan para ser procesados por el
servidor
NEI(t) = Nmero de trabajos que esperan en el buffer para ser impresos o
estn siendo impresos.
N(t) = Nmero de trabajos impresos.
Eventos:
06/07/2006
143
Los eventos que se pueden dar en nuestro sistema tal que produzcan un
cambio en el mismo son:
- Llegada de un trabajo al servidor.
- Servicio de un trabajo en el servidor = Llegada de cliente al buffer
directamente a impresin.
- Impresin de un trabajo (lo que equivale a irse definitivamente del
sistema).
Mecanismo de transicin:
Los cambios que se producen en el estado del sistema cuando se produce uno
de los eventos anteriormente descritos son:
- Llegada de un cliente al servidor 1 : NES NES+1.
- Servicio de un trabajo en el servidor =Llegada de un cliente al servidor 2
NES(t) NES(t)-1;
NEI(t) NEI(t)+1.
- Servicio de un cliente en el servidor2: NEI(t) NEI(t)-1.
N(t) N(t) + 1.
Datos:
- Distribucin de tiempos entre llegadas al servidor (exponencial de media
5 minutos)
- Distribucin de los tiempos de servicio del servidor (trapezoidal)
- Distribucin de los tiempos de impresin de la impresora (G(x))
- TMAX = tiempo mximo de simulacin. (30 minutos).
Otras variables:
- TM: Reloj de simulacin.
- TU: tiempo que la impresora ha estado trabajando.
- DL: Tiempo entre llegadas = Exponencial.
- DS1: Tiempo de servicio servidor = Trapezoidal.
- DS2: Tiempo de servicio impresora = G(x).
- TL: Instante de la prxima llegada.
- TS1: Instante del prximo final de servicio en servidor.
- TS2: Instante del prximo final de servicio en impresora.
MODELO:
Programa principal:
0.- Inicializacin
144
06/07/2006
I SIMULACIN
06/07/2006
145
Usamos serie 1: 0.5, 0.9, 0.3, 0.7, 0.2, 0.1, 0.6, 0.8, 0.3, 0.6, 0.1, 0.8, 0.7,
0.9, 0.1, 0.4, 0.2, 0.9
Valores para DL con la serie 1:
3.47 0.53 6.02 1.78 8.05 11.51 2.55 1.12 6.02 2.55 11.51 1.12 1.78 0.53 11.51
4.58 8.05 0.53
-
Usaremos la serie 2:
Serie 2: 0.2, 0.8, 0.1, 0.5, 0.9, 0.6, 0.7, 0.1, 0.3, 0.6, 0.8, 0.3, 0.4, 0.5, 0.2,
0.9, 0.7, 0.6
Modo de obtencin de las variables aleatorias:
x (0.2,25);
c max f (x ) : x (0.2,25);
c = 2 / 3;
Genero
u1
u2
x = 2,25 u1;
y = 2 / 3 u 2;
Calculof (x )
Si y < f (x ) Aceptox ;
Valores para DS1:
0.45 no acepto no acepto 1.575 0.675 1.8 0.9 0.45 1.575
-Los tiempos de servicio de la impresora DS2: funcin de distribucin G(x):
146
06/07/2006
I SIMULACIN
x 1
G (x ) = 12
x + 5
20
1
x <1
1 < x < 10
10 < x < 15
x > 15
06/07/2006
Reloj
TM
0
3.47
3.92
4
5.75
8.52
10.02
10.7
11.8
12.5
14.32
19.85
20.75
25.32
Tipo
NES NEI TL
TS1
evento
Inicio
0
0
3.47
Llegada
1
4
3.92
Servicio
0
1
4
Llegada
1
1 10.02 5.75
Servicio
0
2 10.02
Impresin
0
1 10.02
Llegada
1
1
11.8 10.7
Servicio
0
2
11.8 12.5
llegada
1
2 19.85 12.5
Servicio
0
3 19.85
Impresin
0
2 19.85
Llegada
1
2 31.36 20.75
Servicio
0
2 31.36
Impresin
0
1 31.36
TS2
TU
8.52
8.52
8.52
14.32
14.32
14.32
14.32
14.32
25.32
25.32
25.32
33.52
0
0
4.6
4.6
4.6
10.4
10.4
10.4
10.4
10.4
21.4
21.4
21.4
29.6
0
0
0
0
0
1
1
1
1
1
2
2
2
3
147
148
06/07/2006
I SIMULACIN
Otras variables:
- TM: Reloj de simulacin.
- DL: Tiempo entre llegadas = Poisson
- DS1: Tiempo de reparacin = Exponencial.
- DAR: Tiempo entre averas de robot. F(x).
- TL: Instante de la prxima llegada.
- TS1: Instante del prximo final de reparacin.
- TAR: Instante del prximo final de avera de robot.
- TFR: instante del prximo final de reparacin de robot
- SUMA: contador acumulado suma de reas de taller en el sistema por
tiempo de permanencia.
- TANT: variable auxiliar.
- NANT: variable auxiliar.
- A: Variable auxiliar que me dice cuanto tiempo trabaja el robot.
- T(t) :Tiempo que el robot esta funcionando.
MODELO:
Programa principal:
0.- Inicializacin
N1 = 0; N2 = 0; TM = 0; TS1 = inf.; TFR = inf.; NNAT = 0; TANT =
0; R=0 ; A = 0 ;
Generar DL; TL = DL
Generar DAR; TAR = DAR;
1.- Actualizacin del reloj de simulacin: TM = min (TL, TS1, TAR, TFR);
2.- Identificacin de evento y llamada a subrutinas de evento.
Si TM = TL. Llamar a subrutina: Llegada a taller.
Si TM = TS1. Llamar a subrutina: Reparacin.
Si TM = TAR. Llamar a subrutina: Avera.
Si TM = TFR. Llamar a subrutina: Fin Avera.
3.- Regla de parada.
Si TM < TMAX, ir a 1. Si no, parar:
Coste = 10002+2000A/60+8000SUMA/120
Subrutinas
06/07/2006
149
Llegada a taller
1.- Si R = 0
1.- N1 = N1 + 1:
Si N1 = 1, Generar DS1, poner TS1 = TM + DS1, A = DS1 + A;
NANT=N1, TANT=TM
Volver a Programa principal.
2.- Si R = 1
N1 = N1 +1
Si N1 = 1
Generar DS1, TS1 = TFR + DS1, A = DS1 + A;
3. Generar DL, poner TL = TM + DL.
SUMA = SUMA + NANT x (TM-TANT)
NANT=N1, TANT=TM
4. Volver a Programa principal.
Reparacin
1.- N1 = N1 - 1;
2.- Si N1 = 0, poner TS1 = inf. Si no, Generar DS1, poner TS1 = TM +
DS1; A = A + DS1;
3.-SUMA = SUMA + NANT x (TM-TANT)
4.- NANT=N1, TANT=TM
5.- Volver a Programa principal.
Avera
R=1
1.- TFR = TAR + 15;
Si N >= 1
TS1 = TS1 + 15;
2.-SUMA = SUMA + NANT x (TM-TANT)
3.- NANT=N1, TANT=TM
4.- Volver a Programa principal.
Fin avera
R=0
1.- TFR = infinito;
Generar DAR; TAR = DAR + TM;
2.- Volver a programa principal
150
06/07/2006
I SIMULACIN
0
resto
Usaremos la serie 3:
Serie 3: 0.9, 0.1, 0.8, 0.6, 0.2, 0.5, 0.7, 0.4, 0.1, 0.6, 0.3, 0.7, 0.3, 0.1, 0.1, 0.4, 0.3, 0.1
y < f (x ) Aceptox ;
06/07/2006
151
Reloj
TM
0
8.31
9.57
24.01
24.4
26.63
28.29
47.6
48.7
55.63
56.68
72
75.23
77.9
82.18
83.44
87
Tipo
evento
Inicio
Llegada
Llegada
Llegada
Reparacin
Reparacin
Llegada
Llegada
Reparacin
Reparacin
Reparacin
Avera
Llegada
Llegada
Llegada
Llegada
Fin avera
17
92.1
Reparacin 3
18
111.07
19
115.92 Reparacin 3
152
Llegada
N1 N2
0
1
2
3
2
1
2
3
2
1
0
0
1
2
3
4
4
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16.09
16.09
16.09
18.32
40.39
40.39
40.39
47.32
48.37
48.37
48.37
53.47
53.47
53.47
53.47
53.47
TL
TS1
8.31
9.57
24.4
24.01 24.4
28.29 24.4
28.29 26.63
28.29 48.7
47.6
48.7
75.23 48.7
75.23 55.63
75.23 56.68
75.23
75.23
77.9
92.1
82.18 92.1
83.44 92.1
111.07 92.1
111.07 92.1
72
72
72
72
72
72
72
72
72
72
72
72
87
87
87
87
87
141
0
0
0
0
0 1.26
0 30.14
0 31.31
0 35.77
0 37.42
0 76.04
0 79.34
0 93.2
0 94.25
1 94.25
1 94.25
1 96.92
1 105.48
1 109.26
0 109.26
0 129.66
0 186.57
0 205.97
141
06/07/2006
I SIMULACIN
fuerzas
= K 1651,23 [Newton ]
5
La varianza del valor medio viene dada por:
Media =
i =1
i =5
Valor =
_ 2
(xi x )
s
= i =1
= K 574413;
5
5 (5 1)
06/07/2006
153
1/ 20 0 x 10
1/ 40 10 x 0
i(x ) =
1/ 40 10 x 20
0 resto
x + 10
10 x 0
40
p
1
x
I (x ) = i(x )dx =
0 x 10
+
4 20
3 x 10
+
10 x 20
4
40
1 x > 20
Nmeros pseudoaleatorios: 0.12, 0.28, 0.79, 0.34, 0.52, 0.37, 0.89, 0.24, 0.09,
0.93
Clculo de la media muestral del incremento porcentual del IBEX-35
aplicando el mtodo de la transformada inversa:
Regla:
Si u (0,1/ 4) entonces u = (x+10)/40
Si u (1/ 4, 3 / 4) entonces u = +x/20;
Si u (3 / 4,1) entonces u = +(x-10)/40;
Las variables aleatorias resultantes:
U
x
0.12,
-5,2
0.28,
0,6
0.79,
11,6
0.34,
1,8
0.52,
5,4
0.37,
2,4
0.89,
15,6
0.24,
-0,4
0.09,
-6,4
0.93
17,2
i =10
154
xi
i =1
10
= 4,26 %
06/07/2006
I SIMULACIN
t
5
F (t ) = P (T t ) = 1 e exponencial de media 5.
Estimacin de la vida media del equipo:
Mtodo de la transformada inversa: t = - 5 Ln(F);
Con los 15 nmeros aleatorios sacamos 15 tiempos de duracin t y tomamos
estos de 3 en 3. La vida del equipo ser el mximo tiempo de entre los tres; esto
es porque estn en paralelo, y el equipo no dejar de funcionar hasta que las tres
componentes fallen.
Usando los nmeros aleatorios:
0.51, 0.46, 0.41, 0.53, 0.21, 0.08, 0.74, 0.10, 0.65, 0.77, 0.25, 0.74, 0.89, 0.95, 0.69
06/07/2006
de equipo
4.46
12.62
11.51
6.93
1.86
155
0.69
1.85531841
i =5
Vida media =
tiempo
i =1
= 7, 478
1
b a
a C b
2p
C2
0 p C
y la de distribucin:
p
F (p ) =
f (p)dp = p 2
C 2
p >C
0 p C
luego p = C F (p)
2p
C2
0 p C
156
06/07/2006
I SIMULACIN
u1,u2
0.128
Media =
= 281.09
6
Mtodo de aceptacin-rechazo:
i =1
u1,u2,u3
0.435
C
401.525
p*
51.3952
f (p)*
f (p * )
0.128
0.301
0.604
129.7
0.321
0.165
0.603
0.516
0.321
06/07/2006
157
0.932
0.859
Media: 129.7
158
06/07/2006