Professional Documents
Culture Documents
UNIDAD 6 pg. 1
SIMULACIN
UNIDAD 6 pg. 2
donde
1 n
Yi
n i 1
es posible.
El estimado puntual de sobre los datos {Y(t), 0tTE}, donde TE es el tiempo de la corrida de simulacin est definido
como:
T
1 E
Y (t )dt
TE 0
Y se llama promedio en el tiempo de Y(t) en el intervalo [0,TE]. Los lenguajes de simulacin lo refieren como
estadstico de tiempo continuo, de cambio discreto o de tiempo persistente. Es deseable que sea un
estimador insesgado pero en general E( )
UNIDAD 6 pg. 3
SIMULACIN
Generalmente y son considerados como medidas medios de performance del sistema que est siendo
simulado. Tambin pueden aparecer otros estimadores particulares. Por ejemplo si se quiere estimar la
proporcin de das que se pierden ventas por falta de stock, se puede plantear
1, si falta stock da i
Yi
0 de otro modo
Con n igual al nmero total de das estimado en la primera ecuacin (6.1) la proporcin de das sin stock, o
de prdidas de ventas, es un estimador puntual de .
Sea la proporcin de veces en que la longitud de cola es mayor de 10 clientes. Si L Q(t) representa la longitud de
cola en el tiempo t, luego
1, si LQ (t ) 10
Y (t )
0 de otro modo
As es un estimador puntual de , la proporcin de veces en que la longitud de cola es mayor que 10 en el
tiempo de simulacin.
Las estimaciones de proporciones o probabilidades son casos especiales de estimadores de medias.
Otras medidas de performance o desempeo son los percentiles o cuantiles. Los cuantiles describen el nivel de
performance que puede ser entregados con una dada probabilidad p. por ejemplo supongamos que Y
representa la demora en cola en minutos que experimenta un cliente en un sistema de servicios. Luego el p0,85
cuantil de Y es el valor tal que
Prob {Y } = 0,85
es el 100 % o 85 percentil de demora de un cliente. En consecuencia el 85% de todos los clientes demorarn
minutos o menos. De otra forma un cliente tiene solo un 15 % de probabilidad de experimentar una demora
mayor de minutos. Una mediad ampliamente usada es la mediana que representa el 0,5 cuantil o 50 percentil.
El problema de estimar un cuantil es lo inverso del problema de estimar una proporcin o probabilidad. Para
estimar una proporcin est dado y la probabilidad p debe ser estimada. Sin embargo, para estimar un
cuantil, p est dado y hay que estimar .
El mtodo ms intuitivo para estimar un cuantil es formar un histograma de los datos observados de Y, y luego
encontrar un valor tal que el 100 % del histograma est a la izquierda o sea menor que . Por ejemplo si se
observan n=250 demoras de clientes luego un 85 percentil estimado se puede calcular como 0,85 x 250 213
de los valores observados que son menores o iguales a .
En el caso de datos continuos, el histograma brinda la fraccin de tiempo en que el proceso permanece en un
cada nivel posible por ejemplo, posibles valores de longitudes de cola. El proceso es igual al de datos discretos.
Estimacin del intervalo de confianza
Un intervalo de confianza mide el error de una media. Sea la varianza de la muestra con R repeticiones.
S2
1 n
(Yi Y ) 2
n 1 i 1
El intervalo de confianza usual asume que Yi est distribuida con una normal. Y el intervalo de confianza es:
Y t / 2,n 1
S
n
UNIDAD 6 pg. 4
SIMULACIN
Donde t/2, n-1 es el cuantil de la distribucin t con n-1 grados de libertad que corta /2 del rea de cada cola de
la distribucin.
El intervalo de confianza da los extremos o lmites donde puede estar
ms pequeo es el intervalo de confianza y menos error tendr Y .
Y t / 2,n 1S 1
1
n
La longitud del intervalo no tiene a cero si n aumenta (no disminuye), y en el lmite se transforma en
z/2
De esta forma, aunque se hagan muchas simulaciones, el ciclo de tiempo vara.
As un intervalo de prediccin como el que se explica es una medida del riesgo, mientras que un intervalo de
confianza es una medida del error. Se puede simular lejos del error con ms y ms corridas o repeticiones pero
nunca se puede simular lejos del riesgo, que es una parte inherente del sistema. Sin embargo podemos hacer
un mejor trabajo para evaluar riesgos con ms repeticiones.
Ejemplo: suponer que el promedio general del ciclo de tiempo promedio sobre 120 repeticiones de una
simulacin de manufactura es 5,8 horas, con una desviacin estndar muestral de 1,6 horas. Como t0,025, 119 es
1,98 un intervalo de confianza del 95 % para un ciclo de tiempo promedio diario esperado para una corrida
larga es 5,8 1,98 (1,6 120 ) o 5,8 0,29 hs. De esta forma la mejor estimacin de un promedio de corrida
larga para ciclo de tiempo diario promedio es 5,8 horas pero podra se en mas y en menos 0,29 hs de error en
este estimado.
Para un da particular y teniendo en cuenta el intervalo de prediccin es 5,8 1,98 (1,6 1 1 / 120 ) es 5,8
3,18 hs. Este ltimo valor refleja la variabilidad inherente en el ciclo de tiempo promedio diario y el hecho que se
quiere un 95 % de confianza de cubrir el ciclo de tiempo promedio real en un da particular antes que considerar
simplemente un promedio por corrida larga. Hay que tener la precaucin que el valor est estimado para un
promedio diario, no para productos individuales.
UNIDAD 6 pg. 5
SIMULACIN
El objetivo de la creacin de modelos es que estos sean vlidos y crebles para poder utilizarlos.
Para la simulacin es importante la verificacin del modelo que permite determinar que el programa
realiza lo que se propuso. Si no fuera as se realiza la correccin de los errores.
La verificacin chequea el traslado del modelo de simulacin conceptual (diagrama de flujo e
hiptesis) en un programa que ejecute correctamente lo pactado. El concepto es simple pero el
trabajo es tedioso.
La validacin es la determinacin si el modelo de simulacin conceptual representa exactamente al
sistema en estudio
Si un modelo est validado, las decisiones hechas con el modelo son similares a las de la experiencia
fsica. Es necesario tener credibilidad en el modelo ya que el programa se usa con confianza en
la toma de decisiones.
Ambas validacin y verificacin se pueden realizar en las distintas etapas del desarrollo de un
modelo de simulacin:
Validacin
Sistema
Verificacin
Modelo
Conceptual
anlisis y datos
Programa
Simulacin
programa
Validacin
de
Credibilidad
Resultados
"correctos"
disponibles
corrida
Resultados
implementados
La validacin implica el contraste de los datos reales con el anlisis de las salidas de simulacin.
Busca la estimacin de las verdaderas medidas o respuestas. Se pretende aproximar el modelo lo
que ms se pueda al sistema real representado.
El problema es estadstico y depende de la longitud de la corrida (tiempo o nmero de entidades
simuladas) y del nmero de repeticiones de cada corrida de simulacin. Cabe recordar que son
necesarias como mnimo dos corridas de simulacin para obtener salidas de simulacin
promediadas, considerando la caracterstica aleatoria de los sistemas discretos.
La bondad del modelo debe aproximar su comparacin con el mundo real. Esto en general implica
dos etapas:
1. Que las hiptesis asumidas sean razonables (validacin).
2. Que las hiptesis estn correctamente implementadas en el modelo (verificacin).
Hay distintas categoras de modelos:
vlidos y no verificados
invlidos y no verificados (las hiptesis estn lejos de la realidad)
invlidos y verificados
vlidos y verificados
UNIDAD 6 pg. 6
SIMULACIN
Nodo Fuente S1
Destino D1
Nodos intermedios
Nodo Fuente Si
Destino Di
R1
R2
Rm
Nodo Fuente Sn
Destino Dm
Rm
R1
S1
..... Sm
10
MB
56 M B
D1
..... D m
10
MB
Figura 6. 3: representacin de mdulos de un sistema de red.
Se puede subdividir cada nodo como una subrutina, de manera de poder hacer mejor la verificacin .
Luego es ms fcil detectar los errores.
Correccin de errores (Debugging)
Hay varias formas de hacer la correccin de errores (debbuging):
1.
2.
3.
4.
SIMULACIN
5.
6.
7.
8.
UNIDAD 6 pg. 7
Estructura caminar a travs de (walking through): Se explica el cdigo a otra persona o grupo. Si
no lo entienden se observa cuidadosamente dnde est el error.
Modelos determinsticos: Se usan funciones de distribucin conocidas para saber los resultados para su
correccin.
Casos simplificados de corridas: Se corren casos simples para saber si hay errores.
Traza: es una lista ordenada en el tiempo de eventos y sus variables asociadas. El nivel de detalle puede
ser la traza de eventos, de procedimientos, de variables. Las salidas de trazas son tiles para detectar
errores pero causan mucho overhead en el procesamiento.
Grficas on-line: Muestra lo que sucede durante la corrida. Demanda mucho tiempo pero es ms
informativo que la traza.
Test de continuidad: Se corre varias veces la simulacin para parmetros de entrada ligeramente
diferentes. Normalmente un pequeo cambio en la entrada provoca un pequeo cambio en la salida. Si no
se registra esto hay un error.
Test de degeneracin: Chequean el modelo para valores de parmetros que producen resultados
similares. Por ejemplo 2 fuentes con = 100 pps carga la red de la misma forma que 4 fuentes con = 50
pps. Si hay una diferencia debe explicarse o se debe a un error de programacin.
Independencia de la semilla: Semillas distintas dan resultados aproximadamente diferentes. Si no fuera
as, la semilla est afectando a la simulacin.
Por ejemplo: Se producen 10 latas de tomates al natural a velocidad constante. Cada lata es 1 entidad en el
modelo. En este caso el modelo es costoso y poco til. En cambio, si se hace un flujo continuo se logra la
optimizacin del modelo.
Los principios bsicos de la validacin y la verificacin son:
1. Una clara definicin de las entidades y salidas o respuestas (por ejemplo, si se calcula la velocidad de
procesamiento pero no el espacio ocupado).
SIMULACIN
UNIDAD 6 pg. 8
Es importante hacer una experimentacin, si es factible. En el caso de un sistema real se pueden medir
algunas de las variables de respuesta para comparar con los resultados del modelo de simulacin, por
ejemplo, el tiempo de espera en cola de los clientes en una caja en un banco.
La dificultad o facilidad de validacin depende de la disponibilidad de datos en el tiempo y en el espacio. No
siempre es posible medir variables de respuesta como en el caso mencionado en el punto anterior.
El modelo de un sistema complejo es una aproximacin al mundo real: a mayor detalle, mayor
aproximacin. Sin embargo en algunas ocasiones los errores aumentan segn el grado de detalles del
sistema modelado, como puede ser el de un modelo de demanda de transporte en una gran ciudad. En la
medida que se plantee un modelo complejo, los errores en las predicciones pueden ser mayores en relacin
a un modelo simple.
SIMULACIN
UNIDAD 6 pg. 9
Bajo estas suposiciones se hacen las estimaciones de las medias y varianzas, como se vio al principio de esta
unidad, y se sacan conclusiones.
UNIDAD 6 pg. 10
SIMULACIN
Una solucin puede ser realizar ejecuciones con repeticiones y que sean independientes. En una computadora,
las repeticiones de una simulacin son diferentes a las que se hacen en otros mbitos y tienen las siguientes
caractersticas:
-
xz
n
s
s
xz
n
n
xz
r
r
); x (1
)
100
100
x(1
r
s
)xz
100
n
z
s
r
x
100
n
100zs
n
rx
x = 20
s=5
z = 1,96 (de tabla, para 1- = 95 y p = 1-/2 = 0,975)
100zs (100)(1,96)(5)
n
=
r x (5)( 20)
2
n = (9,8) = 96,04
UNIDAD 6 pg. 11
SIMULACIN
Simulaciones terminantes y no
Un banco: el banco abre cada da a las 8:00, sin clientes en el banco y cierra a las 15:00,
completando el servicio de los clientes que estn en el banco. Aqu la longitud de cada periodo es
diferente, pero cada periodo empieza siempre sin clientes en el sistema. El suceso de fin se
produce cuando sale el ltimo cliente. Posibles medidas de ejecucin pueden ser el tiempo medio
de espera de los clientes, as como la proporcin de llegadas en diferentes momentos del da.
Un aula de libre acceso: Cada periodo comienza cuando el aula se abre y termina cuando llega la
hora de cerrar. En este caso el suceso de fin siempre ocurre a la misma hora. Posible medidas de
ejecucin pueden ser el nmero medio de usuarios conectados al sistema en los diferentes
momentos del da, media del nmero de usuarios conectados.
En un sistema con final definido en un determinado momento de tiempo cesan de ocurrir los sucesos. Un
evento seala el final de un perodo, dicho suceso puede ocurrir siempre en el mismo tiempo durante cada
perodo o en un tiempo de ocurrencia aleatorio. Se conoce como perodo o poca al trnsito desde el comienzo
al suceso de fin.
En un sistema con final definido, el estado al finalizar un perodo no debe afectar al comienzo del siguiente
periodo. Hay que hacer una distincin entre el sistema y la simulacin de dicho sistema. Cada simulacin
(ejecucin del modelo) es un proceso con final definido, aunque el sistema al que representa lo sea o no.
Por contraste, en un sistema con final no definido, los sucesos discretos que dirigen el sistema no dejan nunca
de ocurrir. Slo existe un periodo indefinido y no existe un suceso de fin.
Los sistemas con final no definido son aquellos en que los eventos o sucesos que ocurren en el sistema no
terminan y no hay un evento que indique el fin.
Un aeropuerto: los aviones van aterrizando y despegando durante todo el da y no existe un momento
en que esta actividad cese. Si consideramos un periodo de un da, en el da siguiente la actividad no es
independiente sino que est conexionado con el da anterior. Posible medidas de ejecucin pueden ser
el tiempo entre aterrizajes.
Un hospital: los pacientes son atendidos, puede que ingresados y son dados de alta y estos sucesos no
acaban nunca de producirse, ni se pueden diferenciar periodos independientes en la actividad. Posibles
medidas de comportamiento son el tiempo medio que los pacientes estn en lista de espera, el tiempo
medio de estancia en el hospital.
Las simulaciones de sistemas con final definido se denominan terminantes y las de los sistemas que no lo
tienen final definido, no terminantes.
SIMULACIN
UNIDAD 6 pg. 12
En cambio, un servicio de emergencias es un sistema con final no definido, y si a esto se le suma llamadas de
servicio que cambian a lo largo de la actividad del sistema, se trata de un sistema con estado no estacionario.
9
Nmero de observaciones
Sean n observaciones {x1, x2,......,xn}.
1.
2.
Ignorando la primer observacin (l=1) se tiene un rango desde 2 hasta 11. Como la segunda
observacin es igual al mnimo, la fase transiente es mayor que 1.
Ignorando las dos primeras observacin (l=2) se tiene un rango desde 3 hasta 11. Como la siguiente
observacin (3) es igual al mnimo, la fase transiente es mayor que 2.
Hacer corridas sin cambios en los parmetros de entrada salvo en la semilla, varias repeticiones.
Promediando a travs de las repeticiones resulta en una trayectoria ms suave.
Sean n repeticiones de tamao n cada una. xij es la observacin j en la repeticin i. j = 1,2,.....n (tiempo), i =
1,2,...m (repeticin).
UNIDAD 6 pg. 13
SIMULACIN
2- Promedio total:
xj
1 m
xij
m i 1
j 1,2,....n
1 n
xj
n j 1
Sea l =1 y seguir en 3.
3. Si el transiente es la longitud l, se borran las l observaciones desde la trayectoria media y se toma el
promedio desde n-l valores
xl
1 n
xj
n 1 j 1l
xl x
x
Repetir variando l desde 1 hasta n-1. Graficar la media total y el cambio relativo como funcin de l. Hay un l
que aunque aumenta, el promedio se estabiliza, ese punto se conoce como punto de inflexin. Es el punto
de longitud del intervalo del transiente.
xj
1 m
xij
m i 1
j 1,2,....n
Se hace k=1
xj
k
1
x j 1
2k 1 l k
j k 1, k 2,..n k
Medias batch
El procedimiento consiste en correr una simulacin muy larga y dividir en varios intervalos de igual duracin.
Cada parte es llamada batch o submuestra. La media es la media batch. El mtodo requiere estudiar la
variancia de estas medias batch como funcin del tamao batch.
Sea una corrida larga de N observaciones divididas en m batchs de tamao n.
N
m
n
Por ejemplo: Se comienza con n=2. Se obtienen xij observaciones j del batch i.
1. Para cada batch se calcula
3. Se calcula la varianza
xi
Var ( x)
1 n
xij
n j 1
i 1,2,....n
1 m
xi
m i 1
2
1 m
xi x
m 1 i 1
UNIDAD 6 pg. 14
SIMULACIN
Se aumenta n y se repite desde las etapas 1 hasta 3 para n = 2,4,5...r. Se grafica la varianza como funcin del
tamao batch n.
La longitud del transiente se determina cuando el valor de n muestra una varianza que comienza a decrecer.
Suponer que la longitud del transiente es T. Si el tamao batch n es << T, los batchs iniciales dan una media
cuya variancia es pequea.
- A > n mayor varianza.
- A n > T la primera media es ligeramente diferente pero las siguientes comienzan a parecerse, por lo cual la
varianza disminuye.
Simulaciones terminantes
Hay simulaciones que nunca alcanzan el estado estacionario, siempre estn en estado transiente. Por ejemplo,
en una red la transferencia de pequeos paquetes, de 1 a 3 nunca interese para grandes archivos. Por lo que
se necesita estudiar el estado transiente. Eso implica las simulaciones terminales.
A veces suceden cosas parecidas a las condiciones finales. El sistema al final de la simulacin no interesa o no
alcanza al estado estacionario, por lo que hay que excluir esta informacin. El mtodo es similar a las
condiciones iniciales. Hay que tener cuidado con el manejo de las entidades al final de la simulacin.
Los tiempos de servicio: slo se consideran los que completaron el servicio.
Tiempos de espera: slo interesan los que completaron la espera y comienzan con la ejecucin.
La longitud de cola no es igual a la suma de las longitudes de cola en cada evento dividida por el nmero total
de eventos, sino es la longitud de cola ponderada en el tiempo:
Longitud promedio de cola Q =
1 T
Q (t )dt
T 0
Repeticiones independientes
Se repite la simulacin con distintas semillas. La hiptesis es que las medias de repeticiones independientes
son independientes aunque las observaciones en una repeticin simple estn correlacionadas.
Se hacen m repeticiones de tamao n+n0 cada una donde n0 es la longitud de la fase transiente. Las primeras
n0 observaciones de cada repeticin se descartan.
1. Para cada repeticin se calcula
xi
1 n0 n
xij
n j n0 1
j 1,2,....n
UNIDAD 6 pg. 15
SIMULACIN
x
3. Se calcula la varianza de las medias repetidas
Var ( x)
1 m
xi
m i 1
2
1 m
xi x
m 1 i 1
x z1 / 2Var ( x)
Se descartan las mn0 observaciones iniciales.
El intervalo de confianza (IC) es inversamente proporcional a
pero para reducir mn0 residuos, m debe ser pequeo, aprox. 10.
Cov( x, x i 1 )
El n correcto surge de la
1 m1
( x i x)( x i 1 x)
m 2 i 1
es una auto covarianza, por lo que m y n son miembros del mismo conjunto.
Se repite el anlisis hasta que hay un n donde la auto covarianza de las medias batch es pequea comparada
con sus varianzas.
Mtodos de la regeneracin
Por ejemplo sea una simulacin de escalado de una CPU simple. El inicio es una cola de trabajos vaca. A
menudo se vuelve al estado inicial (cola vaca). Despus de este estado no hay dependencia de la historia
previa. El tiempo de espera depende de los trabajos previos pero despus de un intervalo donde la CPU estuvo
vaca no depende de estos trabajos previos.
El sistema toma un nacimiento totalmente independiente de su vida previa. Por lo tanto hay una regeneracin.
Dnde se produce?
El punto de regeneracin es el instante en el cual el sistema entra en fase independiente. La duracin de
tiempo entre dos puntos de regeneracin es un ciclo de regeneracin. En cada ciclo las respuestas no estn
correlacionadas. El sistema regenerativo se puede analizar as: si el sistema tiene dos colas, se regenerara
cuando las dos estn vacas. A mayores colas, la regeneracin es ms rara y los ciclos son ms largos. El
sistema se torna no regenerativo, tienen memoria ms larga. El clculo de la varianza es ms complejo que los
dos mtodos anteriores. Los ciclos donde distintas longitudes. Los promedios de los ciclos son relaciones con
bases distintas (longitudes de ciclos.).
Suponemos que tenemos una simulacin regenerativa de m ciclos de tamaos n1, n2, ...,nm.
Las medias de los ciclos son
xi
1 ni
xij
ni j 1
j 1,2,....n
1 m
xi
m i 1
UNIDAD 6 pg. 16
SIMULACIN
ni
yi xij
j 1
La media total es
yi
i 1
m
ni
i 1
Se hace la diferencia wi = yi ni x
i=1,2,....m
Var ( w) S w2
El IC es
x z1 / 2
1 m
2
wi
m 1 i 1
1 m
ni
m i 1
Sw
n m