Simulaci on a Eventos Discretos - Facultad de Ingeniería

26
Simulaci´ on a Eventos Discretos Clase 12: M´ etodos de reducci´ on de varianza

Transcript of Simulaci on a Eventos Discretos - Facultad de Ingeniería

Page 1: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Simulacion a Eventos Discretos

Clase 12: Metodos de reduccion de varianza

Page 2: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Respuestas de interes, estimaciones de parametros

Un programa de simulacion es un sistema de muestreo estadıstico basadoen computadora. En base a la muestra obtenida se estiman medidas sobretoda la poblacion.

En la mayorıa de las simulaciones, los experimentos tienen por objetivoobtener valores medios de los resultados que se muestrean (de susdistribuciones), ademas de saber en que medida los valores se alejan de lasmedias.

2

Page 3: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Respuestas de interes, estimaciones de parametros

Sea xij la i esima medida (por ejemplo, tiempo de espera del i esimocliente del banco) en la replicacion independiente j. Entonces tenemos:

x11 x21 ... xm1 X1 =∑

i=1..m xi1/mx12 x22 ... xm2 X2 =

∑i=1..m xi2/m

. . ... . .x1n x2n ... xmn Xn =

∑i=1..m xin/m

Las muestras de una misma fila (replicacion) en general no sonindependientes, pero las de una misma columna sı.

X (media de los valores de una replicacion) es la variable aleatoria cuyadistribucion (sus parametros) interesa conocer como respuesta de interespara la toma de decisiones.

3

Page 4: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Replicaciones

Se ejecutan n corridas independientes, obteniendo las muestrasX1, X2, ...Xn con media µ y varianza σ2. Se estima la media como

X =

∑ni=1Xi

n,

y la varianza como

V ar(

∑ni=1Xi

n) =

1

n2V ar(

n∑i=1

Xi) =1

n2

n∑i=1

V ar(Xi) =

1

n2n

∑i=1..n(Xi− X)2

n− 1=

∑i=1..n(Xi− X)2

n(n− 1).

4

Page 5: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Replicaciones e intervalos de confianza

El intervalo de confianza para se calcula como

µ± νσ

donde ν se calcula segun la cantidad de replicaciones n, utilizando ladistribucion Normal o la t-Student.

El tamano del intervalo indica la precision de la estimacion.

Cuanto mayor sea la varianza obtenida, mayor debe ser la cantidad dereplicaciones a realizar, lo que implica un mayor esfuerzo computancional.

Por este motivo han surgido los metodos de reduccion de varianza(eficiencia estadıstica vs. eficiencia computacional).

5

Page 6: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Tasas constantes

El uso de tasas de arribo y/o estadıas constantes (determinısticas) reduceconsiderablemente la varianza de las muestras obtenidas como resultados.

Esta tecnica debe ser usada con precaucion, ya que todas las caracterısticasestocasticas del sistema podrıan perderse, al quizas obtener datos sobre osub-evaluados.

La incorporacion de valores constantes puede ser util como forma deestablecer cotas para las medidas buscadas.

6

Page 7: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Torrentes comunes

Esta tecnica se usa para determinar diferencias entre resultados, cuando losniveles de los factores son cambiados.

Si Xi es el resultado de una corrida respecto a un determinado nivel eYi es el resultado respecto de otro nivel, entonces X − Y (la diferenciaentre las medias resultantes de n corridas para cada nivel), puede ser usadapara estimar el valor esperado de la diferencia E(X − Y ) (se construye unintervalo de confianza que idealmente debe excluir al cero).

Para reducir el numero necesario de corridas, queremos minimizar la varianzade la estimacion:

V ar(X − Y ) = V ar(X) + V ar(Y )− 2Cov(X, Y ).

Si X y Y son independientes, entonces Cov(X, Y ) = 0.

7

Page 8: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Torrentes comunes

Observar que los resultados Xi y Yi de la corrida i estan emparejados de talmodo que se puede asumir que la diferencia entre ambos se debe unicamenteal cambio en el nivel del factor, entonces X y Y no son independientes.

Si la covarianza es grande, la varianza de la diferencia sera mucho menor.

Esta condicion es verdadera siempre que se usen diferentes torrentes denumeros para cada distribucion de los experimentos. Solamente se cambianlos niveles de los factores entre pares de experimentos.

Por ejemplo, en el sistema del hospital se utilizan distintos torrentes para losarribos, el tiempo de las estadıas de los pacientes a operarse, a no operarse,tiempos de operacion, tiempos pos-operatorios.

8

Page 9: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Torrentes comunes

Ejemplo: cambiamos el factor numero de camas; si lo aumentamos, entoncesel largo de las colas y los tiempos de espera disminuiran. Las tasas dearribos y los tiempos de las actividades se mantendran incambiados entreambos experimentos; las mismas entidades utilizaran los recursos en elmismo orden. Del mismo modo podemos razonar con el factor tiempo deapertura de la sala de operaciones.

9

Page 10: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Torrentes comunes

Si cambiamos un solo factor, entonces las diferencias entre experimentos esbastante determinada y los analisis estadısticos entre resultados emparejadosson mas manejables.

En simulaciones mas complejas y cuando se cambia mas de un nivel,entonces los efectos en los resultados pueden ser impredecibles.

Otro problema surge al intentar repetir corridas de modo de compararcon diferentes conjuntos de numeros pseudoaleatorios. Se debe tenerespecial cuidado de no repetir ningun torrente de numeros ya que estopodrıa llegar a causar correlacion entre los resultados de los experimentos.

10

Page 11: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Torrentes comunes

En resumen, el metodo de usar diferentes torrentes para cada distribucion,y utilizar torrentes comunes en experimentos utilizando distintos niveles enuno (o mas) factor(es), es un metodo efectivo para reducir la varianzaen simulaciones de tipo comparativas. Observar que no facilita lainterpretacion del analisis estadıstico y requiere de un gran numero detorrentes de numeros pseudoaleatorios.

11

Page 12: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Metodo antitetico

Este metodo se basa en las llamadas variables antiteticas y en la hipotesisde que si un torrente de numeros pseudoaleatorios produce resultados devalores altos, entonces el torrente opuesto producira resultados bajos, porlo tanto estan correlacionados negativamente.

Si u1, u2, . . . um es un torrente de numeros pseudoaleatorios, entonces(1−u1), (1−u2), . . . (1−um) tambien lo es; cualquiera de los dos torrentespodrıa ser usado en una simulacion. Ambos torrentes son muestras de loque se denominan variables antiteticas.

12

Page 13: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Metodo antitetico

Si una simulacion se corre con dos torrentes de numeros antiteticos,realizando n pares de corridas, el promedio de los resultados debera estarmas cerca del valor esperado que el promedio de 2n corridas usando torrentesde numeros independientes.

Esto es valido en modelos pequenos y simples. En sistemas complejos,donde por ejemplo la salida de alguna actividad es luego la tasa de entradade otra, los resultados de aplicar esta metodologıa pueden ser adversos (lavarianza aumenta en lugar de disminuir).

13

Page 14: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Metodo antitetico

Es un metodo relativamente facil de implementar y puede ser utilizado enmodelos sencillos.

Se ejecutan pares de corridas (X11 , X

21) . . . (X1

n, X2n) donde

• X1j es el resultado de la corrida j usando el torrente u.

• X2j es el resultado de la corrida j usando el torrente 1− u.

Por ser X1j y X2

j muestras resultantes del modelo, entonces E(X1j ) =

E(X2j ) = µ. Cada par es independiente de todo otro par, pero X1

j y X2j

estan correlacionadas negativamente ∀j (por ser antiteticas).

14

Page 15: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Metodo antitetico

Justificacion del metodo:

• Para j = 1, 2, . . . n, sea Xj =X1

j+X2j

2 .

• Sea X(n) el promedio de las Xj, usado como estimador de µ = E(X1j ) =

E(X2j ) = E(Xj) = E[X(n)].

• Dado que las Xj son IID, entonces

V ar[X(n)] =V ar(Xj)

n=V ar(X1

j ) + V ar(X2j ) + 2Cov(X1

j , X2j )

4n.

15

Page 16: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Metodo antitetico

En EOSimulator, puede crearse un generador adicional para generar variablesantiteticas.

En Pascal SIM las variables antiteticas se definen mediante la variablebooleana antithetic; se introduce un segundo conjunto de torrentesantiteticos a los 32 existentes. Cuando la variable antithetic = true

entonces se resta a 1 el valor de la funcion rnd (ver pagina 154 de Daviesy O’Keefe).

16

Page 17: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Este metodo tambien trata de aprovechar la correlacion entre variables paraobtener cierta reduccion de la varianza.

Sea X la variable aleatoria que representa un resultado; supongamosque queremos estimar E(X) = µ.

Supongamos tambien que en la simulacion hay otra variable Y que estacorrelacionada con X y que conocemos E(Y ) = ν.

Utilizaremos nuestro conocimiento sobre Y , en el sentido de que acercaraX a su media µ, reduciendo su variabilidad de una corrida a otra.

Por eso llamamos a Y variable de control de X; la utilizaremos paraajustar X, es decir para controlarla parcialmente.

17

Page 18: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Ejemplo: En el caso del hospital simple, si nuestra respuesta de interes esel largo de la cola X (con valor medio desconocido µ), podemos utilizarel tiempo entre arribos Y (con valor medio conocido ν) como variablede control. El valor exacto ν lo conocemos, dado que es un parametrode entrada de la simulacion (por ejemplo, la media de una distribucionexponencial negativa, estimada a partir de datos de entrada). En cadacorrida de la simulacion, el tiempo medio entre arribos observado, presentarauna discrepancia con respecto al valor esperado ν. Esta discrepancia seutiliza para corregir la estimacion de la respuesta de interes, en el metodode variables de control.

18

Page 19: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Justificacion del metodo:

• Sea a una constante a determinar, que tiene el mismo signo que lacorrelacion entre X e Y .

• (Y − ν) es la desviacion de Y con respecto de su media ν.

• Calculamos el valor controlado de X como Xc = X − a(Y − ν).

• Si X e Y estan correlacionados positivamente, entonces a > 0, por loque ajustaremos X hacia abajo si Y > ν y hacia arriba si Y < ν.

• Si X e Y estan correlacionados negativamente haremos lo opuesto.

19

Page 20: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Teniendo en cuenta que Xc = X − a(Y − ν), E(X) = µ y E(Y ) = ν,entonces para cualquier a se cumple

• E(Xc) = µ y

• V ar(Xc) = V ar(X) + a2V ar(Y )− 2aCov(X,Y ),

por lo tanto la dispersion de Xc es menor que la de X si y solo si2aCov(X,Y ) > a2V ar(Y ).

Lo importante de este metodo es elegir el mejor valor de a, deforma de minimizar el valor de V ar(Xc). Para eso, consideramosla expresion dependiente de a, derivamos y obtenemos el mejor valora∗ = Cov(X,Y )/V ar(Y ).

20

Page 21: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Considerando las expresiones de V ar(Xc) y a∗ llegamos a

V ar(Xc) = V ar(X)− [Cov(X,Y )]2

V ar(Y ).

Sin embargo, no siempre conocemos V ar(Y ) (dependiendo de sunaturaleza) y generalmente desconocemos Cov(X,Y ), por lo tanto esimposible calcular el valor exacto a∗. Por lo tanto, utilizamos un metodoalternativo para estimarlo, usando los datos de la propia simulacion.

21

Page 22: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

• Supongamos que realizamos n corridas independientes para obtener lasobservaciones X1, X2, . . . Xn de X (cuyo promedio es X(n)), ası comoY1, Y2, . . . Yn de Y (cuyo promedio es Y (n)).

• Sea S2Y (n) =

∑j[Xj − X(n)]2/(n − 1) la varianza estimada de Y en

esas n observaciones.

• Estimamos la constante a∗ = CXY (n)/S2Y , donde la covarianza es

estimada como

CXY (n) =

∑nj=1[Xj − X(n)][Yj − Y (n)]

n− 1

• Luego calculamos el valor corregido Xc(n) = X(n)− a∗(n)[Y (n)− ν].

22

Page 23: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Que variables usar como variables de control, no es muy facil de determinar.En un simple sistema de colas M/M/1 podrıamos estimar X como la demoraen cola y usar como variable de control los tiempos de servicios (cuya tasaconocemos). En este caso se utiliza nada mas que una sola variable decontrol.

Pero la varianza de la estimacion de una respuesta se puede ver mejoradautilizando mas de una variable de control. Se debe adaptar la formula aellas (pagina 156 de Davies y O’Keefe).

En la eleccion de variables de control, recordar que los tiempos de lasactividades influyen en los largos de las colas y tambien en el uso de losrecursos implicados.

23

Page 24: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Variables de control

Sin embargo las tasas de arribo solo influyen en las primeras actividadesllevadas a cabo en la simulacion, por ese motivo es conveniente:

1. Identificar aquellos factores que puedan estar correlacionados con lasrespuestas.

2. Estimar la varianza y el promedio de cada factor, ası como la covarianzaentre ellos y la respuesta asociada.

3. Ajustar la estimacion de la respuesta mediante la ponderacion de lasvariables de control.

Este metodo es muy util para realizar experimentos, ya que luego de haberrealizado los pasos 1 y 2, se pueden realizar muchas corridas cambiandoniveles de factores e hipotesis (ver pagina 157 de Davies y O’Keefe).

24

Page 25: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Resumen

• El uso de torrentes comunes de numeros es usable en simulacionescomparativas.

• El metodo de variables antiteticas es util en simulaciones que involucranmodelos simples.

• El metodo de variables de control es util en caso de realizar simulacionespara, por ejemplo, explorar el efecto del uso de distintos datos o polıticasen una organizacion.

Cada uno de estos metodos se debe adecuar a la complejidad del sistemaa simular. Por eso se debe estudiar cuidadosamente cuales son losbeneficios obtenidos, teniendo en cuenta el trabajo adicional requeridopara implementar el metodo elegido.

25

Page 26: Simulaci on a Eventos Discretos - Facultad de Ingeniería

Preguntas

1. ¿Cual es el objetivo de los metodos de reduccion de varianza ensimulacion?

2. ¿Cuales son las formas mas sencillas (en cuanto a complejidad conceptualy de implementacion) de reducir la varianza y que inconvenientes tienen?

3. ¿En que tipo de simulacion es aplicable el metodo de torrentes comunesy que aspectos deben tenerse en cuenta para que su aplicacion seaefectiva?

4. Idem. pregunta anterior, para los metodos de variables antiteticas y decontrol.

26