Professional Documents
Culture Documents
DE
SIMULACION
Un enfoque practico
con Witness
Marzo 2012
PROLOGO
A quien va dirigido el libro
Como utilizar el libro
No es un tratado exhaustivo de como utilizar Witness
No es un libro de teora de simulacion
De que tipos de sistema se ocupa el libro
Explicar el formato del texto: cuadros grises, cuadros blancos, mas?
Sobre los materiales. Nomenclatura de los archivos, como estan organizados,
etc.
Tipografas Criterio de tipografa:
INTRODUCCION A LA SIMULACION
1.1. Introduccion
Existen modelos de muy diferente naturaleza, tan diferentes entre s como los Existen multitud
modelos fsicos y los modelos de simulacion discreta. La naturaleza de dichos de modelos
problemas condiciona la idoneidad de los modelos utilizados y de las tecnicas
apropiadas para explotar dichos modelos.
Estos problemas se pueden abordar mediante modelos exactos. La Programa- Los metodos
cion Lineal, la Teora de Colas, la Programacion Dinamica son ejemplos de exactos
modelos para cuyo tratamiento existen tecnicas exactas. Los modelos de es-
te tipo permiten representar en terminos analticos tanto el problema como el
objetivo que se persigue con su estudio. Para muchos de estos modelos existen
tecnias que permiten obtener la mejor solucion para el problema estudiado. En
general, los metodos exactos son preferibles frente a otros.
Captulo 1. INTRODUCCION A LA SIMULACION 6
UN MODELO EXACTO
Una empresa fabrica bicicletas y triciclos. Con la venta de una bicicleta ob-
tienen un benecio de 10 unidades monetarias (um) y con la de un triciclo 5
um. Como es natural, cada bicicleta necesita dos ruedas y cada triciclo tres.
Tanto las bicicletas como los triciclos necesitan el mismo tipo de manillar.
Si la empresa dispone de semanalmente de 100 ruedas y de 30 manillares,
cual es la produccion que le reporta un mayor benecio?
Si se denen x1 como el numero de bicicletas producidas semanalmente y
x2 el de triciclos, el benecio se puede computar como 10x1 + 5x2.
Por otro lado, el consumo de ruedas sera 2x1 + 3x2 y no puede superar las
100 ruedas disponibles, con lo que debera cumplirse 2x1 + 3x2 100.
Igualmente, para los manillares debera cumplirse x1 + x2 30.
Por ultimo, se debe cumplir que x1 , x2 0.
El modelo siguiente es un modelo de Programacion Lineal, para cuya resolu-
cion existen tecnicas de resolucion exactas, como el metodo del Simplex, que
permiten obtener la mejor solucion al problema.
Conviene senalar que los modelos de simulacion son de caracter descriptivo. Modelos
Esto signica que permiten reproducir el comportamiento del sistema pero,por s descriptivos
solos, no ofrecen soluciones buenas u optimas con respecto a algun
criterio. Los modelos normativos, como la Programacion Lineal, permiten des-
cribir el comportamiento del sistema y s guan el proceso de busqueda de so-
luciones. Por ello, es importante la intervencion del analista para la explotacion
de un modelo de simulacion. Tambien, en ocasiones, se combina la simulacion
con tecnicas para la busqueda de soluciones en lo que se conoce, en ingles,
como Simulation Optimization.
En este epgrafe se presenta un problema sencillo que puede ser tratado me-
diante el desarrollo de un modelo de simulacion basado en una hoja de calculo.
Este tipo de simulacion se conoce como Metodo de Montecarlo, en el que se uti-
lizan los numeros aleatorios distribuidos entre 0 y 1 para resolver problemas
en los que aparecen fenomenos tanto de caracter aleatorio como determinista.
Captulo 1. INTRODUCCION A LA SIMULACION 8
Para reproducir el comportamiento del sistema se admite que el tiempo avanza Hipotesis del
en intervalos de tiempo constantes e iguales a un da. As, para simular la modelo
evolucion del sistema se obtendra el estado del sistema a lo largo de los 365
das de un ano.
A partir de esas tres columnas, hay otras dos columnas dispuestas de tal ma- Generacion de
nera que mediante la funcion de Excel CONSULTARV (o BUSCARV para numeros
versiones anteriores a Oce 2010) y a partir de un valor aleatorio entre 0 y1 aleatorios
es posible generar valores de la demanda consistentes con la funcion de
probabilidad (ver cuadro 1.3).
PENDIENTE: poner caption al cuadro, que aparece referenciado como cuadro 1.3
Existen tantas las como das mas una la inicial en la que se genera la infor-
macion relativa a la llegada del primer tren. Cada la contiene la informacion
correspondiente a los trenes, la demanda, el stock y los costes de ese da.
Captulo 1. INTRODUCCION A LA SIMULACION 11
Las columnas H-J, sombreadas en gris, reproducen la evolucion del stock. Generacion de
Consta de tres columnas que permiten registrar: la demanda
el stock teorico, columna H, como resultado de la diferencia entre lo que Evolucion del
entra al deposito y lo que sale, y que puede ser negativo; stock
el stock real, columna I, que es el maximo entre el stock teorico y 0; y
la existencia de carencia o no, columna J; se produce una carencia si el
stock teorico es menor que el real (es decir, cuando el stock real es igual
a 0 y no se ha podido atender la demanda de ese da).
Costes de stock, columna K. Para cada da se puede calcular el coste del Computo de los
stock como el proucto del stock del deposito multimplicado por el coste costes
unitario por da y Tm de carbon.
Costes de carencia, columna L. Cuando se producen una carencia (guraun
SI en la columna J se computa el coste de carencia, de 100 um.
Las cuestiones anteriores son algunos ejemplos de los aspectos que hay que Algunas
tener en cuenta al realizar un estudio de simulacion. A lo largo de los captulos cuestiones
del libro se abordan las cuestiones mas importantes para realizar de forma pendientes
correcta un estudio de simulacion.
Los problemas que se abordan mediante simulacion discreta son mas comple- Eventos y
jos que el sistema del ejemplo anterior. En esos sistemas hay mas elementos, estados
mas eventos y mas estados. Por ejemplo, un puesto en una lnea de montaje
puede estar en diferentes estados: ocioso, trabajando, averiado, esperando a
un operario, etc. Igualmente, puede haber diferentes eventos: avera del pues-
to, n de operacion, comienzo de operacion, n de reparacion, etc. La gene-
racion de eventos y la modicacion de estados son aspectos nucleares de a l
simulacion de eventos discretos. En el siguiente apartado se presentan todos
los elementos de un modelo de simulacion de eventos discretos.
El ejemplo anterior, a pesar de ser muy sencillo, incluye una version poco so-
sticada de algunos de estos elementos. Por ejemplo, la celda que contiene el
valor del stock inicial forma parte de la inicializacion. Las columnas donde se
almacenan tanto la demanda como el siguiente da en el que se producira una
llegada de tren actuan como las variables de un modelo de simulacion. Por
ultimo, la primera columna hace las veces del reloj de la simulacion, y para
cada lnea se puede observar el estado del sistema.
Datos de entrada, que son aquellos datos que sirven para alimentar el Variables y
modelo, dentro de los cuales se pueden distinguir dos tipos. parametros
Los datos relativos a los trenes y a la demanda, sobre los cuales el para el ejemplo
decisor no tiene control. Para este problema, la demanda es algo de la hoja de
que no se puede mociar, como tampoco la cantidad de carbon yel calculo
tiempo entre llegada de los trenes
El valor de stock inicial, sobre el cual el decisor s tiene control. De
hecho, el estudio se realiza para determinar el valor del stock inicial
mas adecuado.
Datos de salida, que son los datos que se obtienen al ejecutar el modelo,
que son los costes de stock y de carencia.
Variables de entrada
MODELO
Variables de salida
Parmetros de diseo
Variables de entrada. Las variables de entrada son todos aquellos datos Deniciones y
de entrada sobre los cuales el decisor no tiene control. Por ejemplo: la ejemplos
frecuencia con la que llegan las llamadas de a un centro de atencion
telefonica, el tiempo entre averas de una maquina, la demanda de un
determinado prodcuto, etc.
Parametros. Los parametros son aquellos datos de entrada sobre los cua-
les el decisor tiene control. Tpicamente, en un estudio de simulacion se
trata de obtener un conjunto de valores de los parametros (es decir, una
conguracion del sistema) satisfactoria o buena de acuerdo con algun
criterio. Por ejemplo: el numero de puestos de atencion al cliente en una
ocina, la cantidad de operarios con los que se cuenta en el sistema, el
orden en que se realiza un conjunto de operaciones (el emabarque a un
avion), etc.
Variables de salida. Las variables de salida son todos aquellos valores
que permiten conocer la bondad del funcionamiento del sistema estudi-
do. Como se ha dicho, con el desarrollo de un estudio de simulacion se
pretende obtener una buena solucion con respecto a algun criterio. Los
valores de las variables de salida permiten evaluar el sistema. Por ejem-
plo: el benecio derivado de una nueva instalacion, el nivel de saturacion
de los controladores aereos, la productividad de una lnea de montaje,
etc.
Por ultimo, conviene notar que segun el estudio del que se trata un mismo
elemento puede ser o bien una variable de entrada o bien un parametro. Por
ejemplo, en el diseno de las instalaciones de un nuevo aeropuerto, la tasa de
averas de las maquinas que realizan el escaneado de las maletas puede ser
un parametro, ya que en ese tipo de estudio se pueden emplear diferentes ti-
pos de maquina, cada una de ellas con su tasa de averas correspondiente. Sin
embargo, en el rediseno de las operaciones de control de equipaje de un aero-
puerto existente (salvo si existe la posibilidad de invertir en nuevas maquinas),
el dato de la tasa de averas es una variable de entrada.
Captulo 1. INTRODUCCION A LA SIMULACION 17
DE DE
O E O DEL
EM
E O D DE
DO
MODELO
O E L
MODELO OM
O
MODELO
O M O
E LO
D E O DE
E E ME O
DO ME
M L
E L DO
Por otro lado, los objetivos que se persiguen con el estudio de simulacion con- Denicion del
dicionan la seleccion de variables de salida y el nivel de detalle del modelo. Por sistema y de los
ejemplo, un modelo de un operador logstico que quieres realizar un estudio objetivos
para determinar el tamano de la ota de camiones es muy diferente un m o
d
lopara
e
establecer la forma de operacion de los muelles de un almacen. Mientras en el
segundo caso sera neceario reproducir con detalle los movimientos del
material destinado a la manutencion de la mercanca, en el segundo no lo sera.
Igualmente, las variables de salida de uno y otro modelo seran diferentes.
La gura 1.7 ofrece un posible modelo comunicativo en el que se explicitan al- Modelo
gunas de las hipotesis del modelo. Por ejemplo, se admite que la demanda tiene comunicativo
lugar despues de que llegue el tren, el da en el que llega un tren. Podra haber-
se admitido el orden inverso, y habra tenido efectos sobre el resultado de la
simulacion. Este modelo comunicativo no contiene expresiones matematicas,
pero podra haberlo includo. Dependiendo de los participantes en el estudio,
convendra utilizar diferentes elementos en el modelo comunicativo.
Captulo 1. INTRODUCCION A LA SIMULACION 19
Inicializacin
Stock inicial
Costes
s Llega tren?
Generacin de la
demanda
no
Informe con
Se ha simulado un
s costes
ao?
Una vez denido el estudio que se quiere realizar (habiendo realizado las eta-
pas anteriores), es necesario construir el modelo informatico. Dado que la
simulacion de sistemas complejos implica la realizacion de numerosos calcu-
los, es absolutamente necesario desarrollar un programa que reproduzca el
comportamiento previsto por el modelo conceptual, alimentarlo con las va-
riables de entrada adecuadas y con el que examinar diferentes valores de los
parametros.
En este libro, a lo largo de los captulos, se presentan los aspectos mas im- Vericacion,
porantes de las etapas que se han comentado. En cada caso, se ofrecen las validacion y
tecnicas mas frencuentemente utilizadas, primero con una introduccion teori- credibilidad
ca y despues con ejercicios de aplicacion practica.
Captulo 1. INTRODUCCION A LA SIMULACION 21
+ Hojas de clculo -
Para casos muy sencillos
Esfuerzo de programacin
Lenguajes de propsito general
Lenguajes de simulacin
Entornos de simulacin
Witness
Arena
Promodel
- Simul8
+
Figura 1.8: alternativas de software para el desarrollo de modelos de simula-
cion.
Todos los ejercicios practicos que empleados en este libro (salvo el de este
captulo) se han desarrollado usando Witness 2008, herramienta desarrollada
por Lanner Group, a cuyo estudio se dedica el captulo siguiente.
1.8. Resumen
bajo realizado.
En los captulos que siguen se presentan las tecnicas mas importantes para
la realizacion de un estudio de simulacion de eventos discretos correspon-
dientes a las etapas descritas en el epgrafe 1.6. Cada captulo consta de una
introduccion de caracter teorico con la presentacion de los aspectos esencia-
les. Despues, se proponen ejemplos de aplicacion sencillo desarrollados en
Witness.
Captulo 1. INTRODUCCION A LA SIMULACION 24
dd
Captulo 2
2.1. Introduccion
El el apartado siguiente, 2.2, se presenta el conjunto de modulos que acom- Estrucutra del
panan a Witness y que permiten realizar diferentes tareas relacionadas con el capitulo
desarrollo de un estudio de simulacion. En el apartado 2.3 se describen los
aspectos fundamentales relativos a la manera en la que se construyen los mo-
delos usando Witness. A continuacion, los elementos que permiten constuir
modelos se presentan en el epgrafe 2.4. Finalmente, en los apartados 2.5 - 2.9
se desarrollan cinco modelos sencillos que ilustran todo lo anterior.
Este captulo no pretende ser un manual exhaustivo orientado al aprendizaje Objetivo del
de Witness. El objetivo es, por un lado, dar a conocer los aspectos fundamenta- captulo
les que permitan entender e, incluso, elaborar todos los modelo que se utilizan
en es texto. Ademas, este captulo permite una primera toma de contacto con
Witness.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 26
Para aprender mas sobre la programacion con Witness, recomendamos la lec- Para
tura del documento Getting Started (referencia PENDIENTE), la consulta de la profundizar
ayuda de Witness y de los ejemplos que se proporcionan en la carpeta Demo
en el directorio de instalacion de Witness. Para conocer mas sobre la aplica-
cion de Witness a diferentes situaciones, recomendamos visitar la pagina de
Lanner, http://www.lanner.com/.
Con Witness es posible desarrollar y explotar modelos de simulacion. Para ex- Witness Suite
tender las posiblidades, Lanner ofrece un conjunto de modulos que se pueden
utilizar junto con Witness, que son las siguientes.
La logica general con la que se construyen los modelos es la siguiete. Existen Entidades o
entidades que circulan por el modelo. Las entidades pueden represetar mu- piezas
chos elementos de un sistema real; por ejepmlo, piezas de un taller de mecani-
zado, personas un centro comercial, llamadas telefonicas. Estas entidades se
pueden transformar, agrupar, separar, almacenar, transportar, etc. Las piezas
en un taller mecanico pueden ser torneadas, pulidas, etc. Los clientes de un
centro comercial pueden acumularse y esperar en las colas de las cajas. Las
llamadas telefonicas pueden ser atendidas, rechazadas, acumuladas en una
cola de llamadas, transferidas entre departamentos, etc.
El resto de los elementos actividades, colas, caminos, etc gobiernan el con- Reglas
trol del ujo de las entidades mediante lo que se conoce como reglas. Por
ejemplo, cuando un viajero (entidad) ha terminado de realizar la facturacion
en un aeropuerto, debe haber alguna regla que conduzca a ese cliente hacia el
control de suguridad. La sintaxis de Witness permite constuir una regla equi-
valente a empujar al viajero a la cola del control de seguridad. Igualmente,
habra que introducir alguna regla del tipo empujar el equipaje del viajero a la
zona de manutencion de equipajes.
Ademas, para completar la logica del modelo, generalmente hay que utilizar Acciones
acciones, que modican el estado de los elementos. Por ejemplo, tras n liz
a
r la
facturacion del viajero, una accion puede actualizar el contador que registra
cuantos viajeros han realizado la facturacion para ese vuelo en particular. Para
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 29
ello habra que introducir alguna accion del tipo incrementar el contador del
numero viajeros en una unidad.
Los elmentos se pueden dividir en tres grandes grupos atendiendo a su natu- Segun su
raleza: naturaleza
son: las cintas transportadoras, los recursos, las vas, los vehculos, los
caminos, etc. En los modelos de este texto, los elementos de este tipo
que se han utilizado son piezas, maquinas, buffers y caminos. Estos
Elementos de tipo logico. Son los elmentos que permiten gestionar la Elementos
informacion y la logica del modelo. En particular, en este texto se utlizan: logicos
variables, atributos, distribuciones (tanto predenidas como d e
n
ia
s por el
usuario) y funciones (de usuario y predenidas).
Elementos de tipo graco. Son elementos que permiten visualizar gra- Elementos
camente algun aspecto del modelo, como, por ejemplo, la evolucion del gracos
tiempo medio de entrega de pedidos o el numero de productos enviados
a los clientes. En los modelos que siguen se han utilizado diagramas
de tarta e histogramas.
La carpeta Tipo contiene todos los tipos de elementos basicos a partir de Carpeta Tipo
los cuales se pueden contruir los modelos en Witness. Estos elementos
estan disponibles en su version mas simple, es decir, sin ningun tipo
de caracterizacion. Por ejemplo, existe un elemento variable, pero no
esta congurada como variable entera, real, etc.
actividad para representar una caja y, con ella, como se muestra mas
adelante, crear tantas cajas como sean necesarias en uno o varios mode-
los.
Se abre una nueva ventana, como la de la gura 2.4, en la que hay que
introducir el nombre y seleccionar el tipo de elemento en el cuadro des-
plegable Tipo de elemento. Para algunos tipos de elementos hay que intro-
ducir algun dato mas. En este segundo caso, se puede seleccionar (arriba)
si el elemento se crea como elemento de la simulacion o como elemento
predenido (para ser reutilizado de nuevo de la manera anterior).
2.5. Ejemplo 1
Para crear este modelo solo son necesarios dos elementos, uno de tipo
pieza para representar los redondos y otro de tipo maquina simple para
representar el torno.
En primer lugar, hay que denir un elemento pieza, por ejemplo, ha- Piezas pasivas
ciendo uso de los elementos predenidos, como se ha indicado en el
apartado anterior. Entrando en la ventana de conguracion (gura 2.9) es
posible modicar el nombre del elemento.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 35
Las piezas pasivas son aquellas que solo entran en el modelo porque
algun elemento del modelo hace que entren. En este caso, cada vez que
el torno termine de realizar una operacion, obtendra una nueva pieza
Redondo del elemento de sistema WORLD y la introducira en el modelo.
A contiunuacion, hay que introducir una maquina a partir de los elemen- Maquinas
tos predenidos. La conguracion de este nuevo elemento (gura 2.8) simples
tambien presenta varias pestanas (comunes y especcas). Por ejemplo,
la pestana General, permite denir algunos aspectos basciso como el
nombre (Torno) o el tipo. Las masquinas simples toman las piezas de
una en una, las procesan y pasan a otro elemento del sistema. Existen
otros tipos de maquinas que, por ejemplo, producen piezas a partir de
una dada o trabajan con lotes. Torno es una maquina simple.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 36
La regla que aparece por defecto es WAIT. Esta regla signica queTorno
no trata de conseguir piezas de entrada, sino que solo procesa piezas
si algun otro elemento hace que le lleguen. Tecleando la regla
PULL from Redondo out of WORLD, como en la gura 2.9, Torno intro-
ducira una pieza Redondo en el modelo e, inmediatamente, la comenza-
raa tornear.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 37
Una vez que Redondo tiene una pieza puede comenzar su ciclo, cuya Tiempo de ciclo
duracion se indica dentro del cuadro de texto Duracion. En este caso, el
valor es 5. De esta manera, se admite que una unidad del reloj de la
simulacion simula el transcurso de un minuto de la realidad, y sera ne-
cesario mantener la consistencia a lo largo de todos los valores que se
introduzcan en el modelo.
Existe una forma que facilita la comporobacion de que las reglas se Flujo de
han editado correctamente. Activando la opcion Flujo de elementos del elementos
menu Ver, haciendo clic en Aceptar, se puede muestra lneas que enla-
zan los elementos de acuerdo con las reglas del modelo. En este caso,
el aspecto del modelo tras activa el Flujo de elementos es el de la g
u
ra 2.10.
Con esto el modelo ya tiene los dos elementos y esta congurado pa- Ejecucion paso
ra funcionar como se desea. Este modelo, ya construido, corresponde al a paso
archivo Ejemplo2-1.mod. Existen diferentes formas de ejecucion del mo-
delo. Una de ellas es la opcion Paso a paso. Al ejecutar el modelo de esta
manera se ejecutan los eventos uno tras otros y se muestra la evolucion
del estado del sistema en una nueva ventana: la Ventana de interaccion.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 38
2.6. Ejemplo 2
En primer lugar, hay que anadir un elemento de tipo buffer al mode- Buers
lo, por ejemplo, utilizando los elementos predenidos. Accediendo a la
Ventana de conguracion del elemento, aparecen las pestanas de e sttipo
de elemento. En particular, en la pestana General es posible modi- car
el nombre (para llamarlo Cola), establecer el numero de e n
tid
a
d
sque puede
e
albergar y los aspectos relativos a la entrada, la salida y la permanencia
de las piezas en el buffer (gura 2.12).
Por defecto, las piezas entran por detras y salen por delante, y no hay
ningun requisito con respecto al tiempo de permanencia en el buffer,
con lo que la disciplina de cola por defecto es FIFO. Se pueden establecer
condiciones tanto en la entrada como en la salida, para que las piezas
entren o salgan segun alguna condicion, por ejemplo. Tambien se puede
establecer un tiempo maximo o un tiempo mnimo de permanencia. Por
ejemplo, esto permite representar el hecho de que los clientes que llevan
mas de 10 minutos esperando en una cola abandonan el sistema.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 40
A diferencia del modelo anterior, ahora las piezas entran al sistema de Piezas activas
forma autonoma, de acuerdo con un tiempo entre llegadas. Para ello, es
necesario modicar la conguracion de Redondo y convertirla en p aactiva,
z
ie
con lo que la Ventana de conguracion muestra un aspecto dife
-rente, como
el de la gura 2.13.
Para congurar una pieza activa, hay que establecer, entre otras cosas,
el numero maximo de llegadas de ese tipo, el instante en el que llega la
primera, el tamano de lote y la regla de salida, es decir a que elemento
trata de acceder cuando llega al modelo. Para congurar esto ultimo hay
que acceder a las reglas de salida, haciendo clic en el boton Hacia... En
este caso, estas piezas llegan a Cola, por lo que la regla sera: PUSH
to Cola.
Ademas, hay que indicar, para Redondo, cual es el intervalo entre llega- Aleatoriedad.
das en el cuadro de texto correspondiente de su Ventana de congura- Distribuciones
cion. Este valor no es determinista, sino que es una variable aleatoria:
una exponencial de media 8 minutos. Witness permite generar variables
aleatorias de diferentes tipos. En este caso, el valor para el el Intervalo
entre llegadas es NEGEXP(8).
Una vez construido el modelo, se puede ejecutar como se presento en Ejecucion Run
el ejercicio anterior para comprobar su evolucion paso a paso. Alternati-
vamente, se puede utilizar la opcion Ejecutar, mediante la cual, se pone
en marcha el modelo y se muestra como se modica la representacion
graca de los elementos a medida que transcurre el tiempo. Ademas, se
puede jar un valor para el tiempo durante el cual ejecutar el modelo.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 41
Para ello, tal y como se puede ver en la gura 2.14, hay que dejar p u
d
a
ls
oel
boton que contiene el icono de un reloj, a su derecha teclear el instante
en el que el modelo se detendra y, nalmente, pulsar en el boton
Ejecutar (un triangulo negro apuntando hacia la derecha).
Una vez el modelo se ha ejecutado hasta el instante 100, se pueden ob- Informes
tener informes de tipo estandar de los elementos del modelo. Para ello,
en la ventana de seleccion de elementos se pueden marcar todos los ele-
mentos, hacer clic con el boton secundario y seleccionar Estadsticas.
Conviene notar que los resultados que se obtienen con la ejecucion del Informes y
modelo dependen de los numeros aleatorios que se utilicen para generar aleatoriedad
los distintos eventos. Por eso, los numeros obtenidos pueden ser dife-
rentes. En el captulo 6 se comenta mas detalle el efecto de los numeros
aleatorios sobre el analisis de los datos de salida.
2.7. Ejemplo 3
Ademas de las piezas que llegaban antes (redondos de tipo A), ahora
llega tambien otros redondos (de tipo B) con otras caractersticas. Al
llegar al sistema, cada tipo se almacena de forma independiente antes
de ser torneado. Los nuevos redondos llegan segun una exponencial de
media 18 minutos. Cuando el torno termina una operacion, toma un
redondo del stock que contenga mas piezas.
Ambos tipos de piezas pueden ser o bien de calidad alta (el 20 %) o alta
(80 % baja), de manera que el tiempo de tornado depende de la calidad y
del tipo de redondo. En particular, los tiempos de torneado son
variables normales logartmicas conlas medias y las desviaciones de la
siguiente tabla:
c. baja c. alta
Pieza A (5,0, 0,10) (6, 0,15)
Pieza B (4,5, 0, 12) (5,2, 0,16)
En primer lugar, para distinguir los dos tipos de redondo, se puede re-
nombrar el elemento Redondo y llamarlo RedondoA, as como llamar
ColaA a Cola. A contnuacion, hay que denir una nueva entidad, Re -
dondoB, y un nuevo buffer, ColaB. Tambien es necesario que las reglas
de salida de RedondoA y RedondoB sean PUSH to ColaA y PUSH to
ColaB, respectivamente.
Para distiguir unas piezas de otras durante la animacion, se puede modi- Cambio de la
car el aspecto con el que aparece RedondoB. Para ello, se puede a e
c
de
ra la representacion
Representacion (similar a la gura ). Se puede modicar el color (y
cambiar el rojo por el verde, por ejemplo) y mantener el icono de una
pequeno crculo.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 44
Cuando un RedondoA o un RedondoB entra al modelo, hay que asignar Acciones a crear
un valor a su atributo Calidad, a traves de las Acciones al crear cada
pieza, a las que se puede acceder a traves de la ventana de conguracion
de RedondoA y de RedondoB (gura 2.17).
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 45
De esta manera, cuando Torno queda libre, si hay mas piezas en ColaA
o en ColaB y toma una del que tenga mas, o de ColaA si la cantidad es la
misma.
Por lo tanto, hay que denir una funcion, TiempoTorno. Esta funcion
devuelve un valor real a partir de dos parametros, uno de tipo cadena
(llamado CalidadPieza) y otro de tipo nombre (TipoPieza (ver gura
2.19). El cuerpo de la funcion es el codigo que se ejecuta con los
valores de los parametros. La funcion incluye sentencias de tipo
RETURN con las que se indica el valor devuelto por la funcion.
Para nalizar este ejemplo, se puede ejecutar el modelo con la opcion d e Ejecucion
Ejecucion acelerada. Como en el ejemplo anterior, senalando una instan- acelerada
te para nalizar la simulacion, se puede omitir la animacion graca, d e
manera que solo se consumen recursos de computacion para la genera-
cion de eventos y para la actualizacion de los estados de los elementos.
Para ello, se puede utilizar el boton con dos triangulos apuntando hacia
la derecha (boton de Ejecucion acelerada).
2.8. Ejemplo 4
Una vez que los redondos son torneados, se acumulan en una zona de
almacenamiento intermedio. Para llegar hasta ese punto desde el torno,
siguen una trayectoria en la que se tarda 5 minutos.
Los pales torneados se agrupan en pales de cinco en cinco, del mismo
tipo (no necesariamente de la misma calidad). Existen dos maquinas que
montan los pales, una con redondos A y la otra con redondos B, y tardan
en montar cada pale exactamente 10 minutos, desde el momento en el
que los cinco redondos han entrado en la maquina. En ocasiones, con
un 1 % de probabilidad, al montar el pale, el procedimiento no realiza de
forma correcta, y ese pale se debe desechar.
Modicar el modelo del ejemplo anterior para representar la situacion
anterior. Ademas:
representar los elementos ColaA y ColaB como un unico elemento,
(Cola), con cantidad 2 y
sustituir la regla de entrada del torno por una regla de tipo MOST
ENTITIES.
Primero, como se ha hecho en los ejercicios anteriores, hay que denir: Nuevos
una maquina, que tendra el nombre slPaletizadora, elementos
un buffer, con el nombre de ColaPaletizadora,
dos nuevas entidades, llamadas PaleA y PaleB y
un camino, con el nombre CaminoAPale.
Ahora, es posible referirse a cada uno de los dos elementos con la sinta- Cantidad de un
xis cola(1) y elemento
Para ser consistente con el cambio de notacion, hay que mocar la s Cantidad de un
reglas de salida de las piezas RedondoA y RedondoB. Ahora seran, res- elemento
pectivamente, PUSH to Cola(1) y PUST to Cola(2).
La regla de entrada del torno, que antes utilizaba una sentencia IF se Regla MOST
puede modicar por la siguiente regla MOST ENTITIES Cola(1), Cola(2), ENTITIES
lo cual signica que Torno, al quedar libre, evaluara en cual de los dos
elementos (Cola(1) y Cola(2)) hay mas entidades y, de aque que tenga
mas, cogera una.
Los caminos permiten conectar dos elementos, de tal manera que al des- Conguracion
plazarse las entidades entre esos dos elementos, pueden hacerlo si- del camino
guiendo ese camino. Los aspectos mas importantes de la conguracion
de un camino son los dos elementos que conecta y el tiempo de transito
entre estos dos elementos.
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 50
Para que las piezas transiten por el camino, es necesario modicar a l Using Path
regla de salida del Torno PUSH to Cola using Path. Si no se modica a
l
sintaxis, el desplazamiento se realiza de forma inmediata.
Con respecto a la maquina que agrupa los redondos, como toma 5 re- Conguracion
dondos y devuelve un pale, se trata de una maquina de ensamblado. En Paletizadora
la ventana de conguracion de Paletizadora se puede indicar el Tipo, y
en la cantidad de entrada, indicar 5. El tiempo de ciclo es de 10 minutos.
Por ultimo, como existen 2 maquinas que montan los pales, la cantidad
de este elemento debe ser 2.
La regla de salida de Paletizadora se puede construir con una sentencia Regla PERCENT
de tipo IF. Sin embargo, Witness proporciona una regla mas compac-
ta que opera tal y como se desea en este caso. Con PERCENT SERVED
99.00 ,LOST 1.00 , todas las piezas salen del sistema, el 99 % se dirigen
a SERVED y el resto a LOST. Si fuera necesario, se pueden poner otros
destinos (mas de dos), que pueden ser diferentes elementos del modelo.
Por ultimo, dado que la piezas que salen de Paletizadora ya no son re- Funcion
dondos, sino que son pales, conviene reejar ese cambio en el modelo. CHANGE
Con la funcion CHANGE es posible cambiar un tipo de pieza en otra. Tal
y como aparece en la gura se puede realizar el cambio en las acciones
al nalizar el ciclo de Paletizadora
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 52
2.9. Ejemplo 5
Por ultimo, para detner el modelo cuando ha entrado el redondo numero NCREATE. STOP
200 es necesario evaluar cual es el numero total de entidades que ha
entrado cada vez que entra una nueva. Por ello, es necesario ampliar las
acciones al crear de las dos entidades RedondoA y RedondoB. La fun-
cion NCREATE devuelve el numero de entidades de un determinado
tipo que han sido creadas. Por otro lado, la funcion STOP detiene la
ejecucion del modelo. Si se incluyen las acciones de la gura 2.28 en la s
acciones al entrar de RedondoA y de RedondoB, el modelo se detiene
Captulo 2. CONSTRUCCION DE MODELOS CON WITNESS 57
2.10. Resumen
Bla, bla
Captulo 3
REPASO DE ESTADISTICA
3.1. Introduccion
Validacin
EM Anlisis de resultados
EL
Generacin de O
variables aleatorias
MODELO
...
O
Test de ajuste
Experimentacin
Se dice que una variable aleatoria es discreta cuando puede tomar un Denicion
numero contable de valores. Algunos ejemplos de variables aleatorias
discretas son: el resultado del lanzamiento de una moneda al aire, cuyo
resultado puede ser cara o cruz o la nota entera correspondiente a la
calicacion de un examen, que puede tomar valores enteros entre 0 y 10.
Funcion de probabilidad
Funcion de distribucion
.
i
F(xi) = p(xj) (3.4)
j=1
Funcion de densidad
Funcion de distribucion
F(x1) = P (X x1)
Captulo 3. REPASO DE ESTADISTICA 62
Medidas de centralizacion
Medidas de dispersion
,
2
(xi ) p(xi )
variables discretas
2
= Var(X) =
, (x )2 f (x)dx
variables continuas
(3.10)
La varianza cumple las siguientes propiedades:
1. Var(X) 0.
2. Var(cX) = c2Var(X).
,n ,n
3. Var( i=1 Xi ) = i=1 Var(Xi), si las variables Xi son independien-
tes.
P ( k X + k) 1 1/k2 (3.11)
2 2
baja alta
(a) (b)
Figura 3.2: funciones de densidad de una variable continua con varianza alta
(a) y baja (b)
Media:
.
n
E(Y ) = k1E(X1) + k2E(X2) + + knE(Xn) = kiE(Xi) (3.14)
i=1
Varianza:
.n
Var(Y ) = k12Var(X1) + k22Var(X2) + + k2nVar(Xn) = k2Var(X
i
i) (3.15)
i=1
La funcion de verosimilitud, indica, para cada valor del parametro , cual es la Interpretacion
probabilidad de que obtener ese conjutnto valores x1, x2, ..., xn. El estimador
maximo verosmil es aquel valor de que hace maximo el valor de la funcion
, es decir, la probabilidad de que se obtengan los valores xi.
Por ello, para obtener el valor de , hay que resolver la siguiente ecuacion: Procdeimiento
dL()
=0 (3.20)
d
En las funciones que se presentan mas adelante se indica cuales son los esti-
madores de maxima verosimilitud de los parametros correspondientes.
Captulo 3. REPASO DE ESTADISTICA 67
Uniforme U(a, b)
Posibles Se emplea cuando una variable toma valores en un
aplicaciones rango nito de valores equiprobables.
Rango [a, b]
a+b
Media
2
Captulo 3. REPASO DE ESTADISTICA 68
(b a)2
Varianza
12
Estimadores a = mn xi , b = max xi
1in 1in
f (x)
1/(a b)
0 a b x
Triangular triang(a, b, m)
Posibles Modelo aproximado en ausencia de datos.
aplicaciones
2(xa)
(ba)(m a) si a x m
2(bx)
Densidad f (x) = (b si m x b
a)(bm)
0 resto de casos
0 si x < a
(xa)2 si a x m
(ba)(ma)
Distribucion F (x) =
(bx)2
1 (ba)(bm) si m x b
1 si x > b
Captulo 3. REPASO DE ESTADISTICA 69
Rango [a, b]
a+b+m
Media 3
a2 + b2 + m2 ab am bm
Varianza 18
Moda m
f (x)
2/(b a)
0
0 a m bx
Exponencial Exp()
Posibles Tiempo entre llegadas de clientes o piezas a un siste-
aplicaciones ma.
x/
1 e
si x 0
Distribucion F (x) =
0 resto de casos
Parametros >0
Rango [0, ]
Media
Varianza 2
Moda 0
Estimadores = x(n)
f (x)
0.8
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 x
Gamma Gamma(, ))
Posibles Tiempo para completar una tarea. Por ejemplo: dura-
aplicaciones cion de un servicio o de una reparacion.
x 1 ex/ si x > 0
()
Densidad f (x) =
0 resto de casos
,1 (x/)j si x > 0
x/
1 e
j=0 j!
Distribucion F (x) =
0 resto de casos
Parametros >0y>0
Rango [0, ]
Media
Varianza 2
Moda ( 1) si 1, 0 si < 1 .
Estimadores -
Captulo 3. REPASO DE ESTADISTICA 72
Comentarios 1. Exp()=Gamma(1, ).
si < 1
1
2. lm f (x) = si = 1
x
0 si > 1
f (x)
1.2
1
1 = 2
0.8
=1
0.6
=2
0.4
=3
0.2
0
x
1 2 3 4 5 6 7
Normal N(, 2)
Posibles Variables que representan la suma de otras variables.
aplicaciones
Variables con distribucion simetrica (por ejemplo,
tiempos de ciclo)
Parametros (, ) , > 0
Rango [0, ]
Media
Varianza 2
Moda
,n n1
xi
= , 2
Estimadores
i=1 = S2(n)
n n
f (x)
0.5
0.4
0.3
0.2
0.1
-3 -2 -1 0 1 2 3 x
Lognormal LN(, 2)
Posibles Su principal aplicacion se da en variables que son el
aplicaciones producto de un gran numero de variables aleatorias
(por ejemplo, la produccion total de un sistema en el
que hay varias categoras de piezas).
Rango [0, ]
2/2
Media e+
2 /2
Varianza e2+ (e 1)
2
Moda e /2
,n ,n
ln xi 2 = i=1 lnxi 2
Estimadores =
i=1 ,
n n
X ~ LN(, 2) ln X ~ N(, 2)
f (x) 3
1 = 2
1
= 2
0.8
0.6
=1
0.4
0.2
0 1 2 3 4 5 x
Weibull Weibull(, )
Posibles Tiempo para completar alguna tarea.
aplicaciones
Intervalo entre dos averas de un equipo.
(x/)
1 e
si x > 0
Distribucion F (x) =
0 resto de casos
Parametros >0,>0
Rango [0, ]
.
1
Media
. . . 2
2 2 1 1
2
Varianza
.
1 1/
si 1
Moda
0 si < 1
= i
=
i
n
,n i=1
x
i=1 i
. ,n 1/
xi
=
i=1
n
f (x)
1.4
1.2 =3
1
=2
0.8
0.6 =1
0.4 = 0,5
0.2
0
0 1 2 3 4 5 x
Bernoulli Bernoulli(p)
Posibles Suceso aleatorio con dos posibles valores.
aplicaciones
Base de otras distribuciones discretas (binomial,
geometrica, binomial negativa...)
1 p si x = 0
Probabilidad p(x) = p si x = 1
0 resto de casos
0 si x < 0
Distribucion F (x) = 1 p si 0 x < 1
0 si x 1
Parametros p (0, 1)
Rango 0, 1
Media p
Captulo 3. REPASO DE ESTADISTICA 78
Varianza p(1 p)
0 si p < 1
2
1
Moda 0y1 si p =
2
1 si p > 1
2
Estimadores p = x(n)
p(x)
1p
0 1 x
Binomial Binomial(n, p)
Posibles Numero de fallos en un lote de piezas.
aplicaciones
Tamano de un lote de piezas o de un grupo de perso-
nas.
0 si x < 0
, .
x ] t
Distribucion F (x) = i =0 i pi (1 p)1i si 0 x t
0 si x > t
donde x] representa el mayor numero entero menor
que x.
Rango 0, 1, ,t
Media tp
Varianza tp(1 p)
p(t + 1) 1
y p(t + 1) si p(t + 1) es entero
Moda
p(t + 1)resto de casos
Estimadores x(n)
p=
t
Captulo 3. REPASO DE ESTADISTICA 80
3. Binomial(1, p)=Bernoulli(p).
p(x)
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8 x
Geometrica geom(p)
Posibles Numero de piezas inspeccionadas antes de encontrar
aplicaciones la primera defectuosa.
Probabilidad p(x) =
0 resto de casos
Captulo 3. REPASO DE ESTADISTICA 81
x]+1
1 (1 p)
si x 0
Distribucion F (x) =
0 resto de casos
Parametros p (0, 1)
Rango 0, 1,
1 p
Media
p
1 p
Varianza
p2
Moda 0
Estimadores 1
p=
x(n) + 1
p(x)
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8 x
Poisson Poisson()
Posibles Numero de eventos que ocurren en u intervalo de
aplicaciones tiempo cuando esos eventos suceden de uno en uno y
con una tasa constante.
0
si < 0
Distribucion F (x) =
,ix0] i si x 0
= i!
Parametros >0
Rango 0, 1,
Media
Varianza
1
si es entero
Moda
] resto de casos
Estimadores = x
Captulo 3. REPASO DE ESTADISTICA 83
p(x)
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
x
0 1 2 3 4 5 6 7 8
Se supone que se dispone de una muestra x1, x2, , xn compuesta por va- Estimacion de la
lores independientes identicamente distribuidos de X, donde y 2 son, res- media de una
pectivamente, la media y la varianza de la poblacion de dicha variable. Para variable
estimar se puede emplear la media de la muestra expresada por: aleatoria
,n
xi
= x(n) = i=1 (3.22)
n
es un estimador centrado o insesgado de , es decir, independiente-
donde
mente del tamano de la muestra:
=
E()
anteriores tambien es
estan mas cerca de que en otros. Esto se debe a que suciente...
una variable aleatoria, que depende de los valores observados en la muestra,
cuya varianza Var[x(n)] se expresa por:
1
1 . xi .
n n
Var [x(n)] = Var n = 2 Var xi
i=1 n i=1
. 1
n
= Var(x ) (porque
i i x son independientes)
n2
i=1
1 2
= n 2 = (3.24)
n2 n
Dado que E[x(n)] = , cuanto menor es el valor de su varianza mayor es su
precision como estimador, es decir, menor es la distancia esperada entre x(n)
y el verdadero valor de . El valor de Var[x(n)] se puede estimar aplicando la
ecuacion 3.23 en la expresion anterior:
,n
S2(n) [xi x(n)]2
Var [x(n)] = = i=1
(3.25)
n n(n 1)
Por todo ello, no se puede garantizar que la media de una muestra tome un
valor cercano a . Lo que s es cierto es que, en general, a medida que aumenta
el tamano de la muestra es mas probable que se acerque a . El metodo mas
habitual de evaluar la precision de como estimador de es acompanar al
valor puntual de un rango de valores dentro del cual se encuentra con una
probabilidad determinada. A ese rango de valores se le conoce por intervalo
de conanza y se trata con mas detalle en el siguiente apartado.
Captulo 3. REPASO DE ESTADISTICA 85
|x(n) |
Zn = , (3.27)
S2(n)/n
P (Z > z1/2) = 1 /2
Captulo 3. REPASO DE ESTADISTICA 86
f (x)
P (z area sombreada) = 1
, ,
S2(n) S 2 (n)
= P x(n) z 1/2 x(n) + z 1/2
n n
1 (3.28)
Por lo tanto, para valores altos de n, con una probabilidad de (1), este per-
tenecera al intervalo: ,
S2(n)
x(n) z1/2 (3.29)
n
El intervalo de
conanza para , = E(X) se construye a ,
partir dela expresion
anterior: x(n) z1/2 S (n) S (n)
, x(n) + z 1/2 (3.30)
2 2
n n
n n
|x(n) |
,
S2(n)/n
En los sistemas reales, los numeros aleatorios aparecen de manera natural y se Numeros
pueden aprovechar esos fenomenos para conseguir secuencias de valores ri . aleatorios y
Por ejemplo, las primeras tablas de numeros aleatorios construidas en Espana pseudo-
se obtuvieron a partir de la secuencia de numeros premiados en la lotera na- aleatorios
cional. Otra posibilidad consiste en generarlos con algun metodo que no es, de
hecho, aleatorio. En la practica, existen diversas tecnicas para obtener secuen-
cias de valores ri . A diferencia de lo que ocurre en la naturaleza, estos numeros
no son aleatorios ya que al conocerse el metodo mediante el cual son gene-
rados, la secuencia esta perfectamente determinada. No obstante, se pueden
obtener valores que cumplen las principales propiedades de los numeros alea-
torios: uniformidad e independencia. Por ello, son conocidos como numeros
pseudo-aleatorios y, a efectos practicos, se pueden considerar numeros aleato-
rios (en adelante, salvo especicacion previa, se consideran aleatorios).
Uno de los metodos mas utilizados para la generacion de numeros aleatorios Metodo de
es el llamado de congruencia lineal. Con este metodo se obtiene una muestra congruencia
de numeros aleatorios en el intervalo de numeros naturales [0, m 1] me- lineal
diante un calculo recurrente, en el cual un nuevo numero aleatorio se obtiene
a partir del ultimo generado aplicando la siguiente expresion:
zi = (a zi1 + b)mod(m)
r1 = z1
= 27 =
100
0,
100
27
z2 = (13 27 + 31)mod(100) = 89
r2 = 89100
= 0, 89
vdots
Cabe destacar que la seleccion de los parametros del generador afecta consi-
derablemente a las propiedades ideales y a la longitud del ciclo. Para obtener
mas informacion acerca de el generador congruente lineal o de otros metodos
de generacion de numeros aleatorios se recomienda consultar [1].
Los programas de simulacion incorporan o bien algoritmos para generar nume- Numeros
ros aleatorios, o listas de estos numeros. Por ejemplo, el paquete de simulacion aleatorios en los
Witness no genera valores ri cuando los necesita, si no que incorpora una lista programas de
de numeros aleatorios organizados en series y subseries (para mas informa- simulacion
cion acerca de este tema se recomienda consultar la ayuda de Witness).
Hasta ahora se ha visto un metodo para generar valores de una variable alea- Como se
toria que se distribuye uniformemente en el intervalo (0,1). Sin embargo, en utilizan los
general, las variables aleatorias necesarias para construir un modelo de si- numeros
mulacion tienen distribuciones diferentes de la uniforme. A continuacion, se aleatorios?
explica uno de los numerosos metodos existentes para generar valores de una
variable aleatoria, cuya funcion de distribucion es conocida: el metodo de la
transformada inversa.
En el cuadro 3.12 se indica como aplicar el metodo anterior a varias funciones Aplicacion para
de distribucion utilizadas frecuentemente en simulacion. En dichas expresio- algunas
nes, r indica siempre un numero aleatorio (U(0, 1)), y x el valor de la variable funciones
aleatoria que se desea generar.
F(x)
1
0.8
ri
0.6
0.4
0.2
0
0 1 2 xi 3 4 5 x
U(a,b) x = a + (b a)r
Exp() x = ln r
1. v1 = 2r1 1
v2 = 2r2 1
2. w = v2 + v2
1 2
x1 = v1 y
x2 = v2 y
x' = + x
weibull(, ) x = ( ln r )1/
4.1. Introduccion
Cuando se dispone de datos historicos del sistema estudiado, existen tres po- Formas de
sibles maneras de alimentar el modelo de simulacion corresondiente: con los alimentar un
propios datos historicos, con una funcion de distribucion emprica o con una modelo de
funcion de distribucion teorica. simulacion
1. La primera posibilidad consiste en alimentar al modelo con los datos
historicos tal y como se han recogido. Por ejemplo, si se estudia el mo-
delo de un muelle de descarga de camiones, en la simulacion se utilizan
Captulo 4. ANALISIS DE DATOS DE ENTRADA 94
Figura 4.2: alimentacion del modelo con datos obtenidos de una distribucion
emprica
Figura 4.3: alimentacion del modelo con datos obtenidos mediante una distri-
bucion teorica
Sin embargo, los datos historicos son muy valiosos para la validacion del mo-
delo, es decir, para conrmar que el modelo representa de forma adecuada el
sistema estudiado, contrastando los resultados obtenidos en la simulacion con
lo ocurrido en el sistema real.
En el caso de formar una distribucion emprica con las observaciones se pue- Distribucion
den generar todos los valores entre los el menor y el mayor valor. Por lo tanto, emprica
en terminos de su utilidad para la explotacion del modelo no presentan los
inconvenientes que aparecen con la alimentacion del modelo con los datos
historicos. Las principales desventajas de este metodo son dos.
El uso de una funcion teorica presenta ventajas sobre el uso de una distribu- Distribucion
cion emprica, sobre todo si el numero de datos no es muy elevado. teorica
Por todo lo anterior, esta ultima suele ser la mejor opcion y solo en caso de no
encontrar una distribucion teorica que se ajuste bien a los datos historicos se
justica el uso de funciones empricas.
frelativa
0.4
0.3
0.2
0.1
0
0 2.5 5 7.5 x
frelativa
0.4
0.3
0.2
0.1
0
0 2.5 5 7.5 x
3. Estimar los parametros. Para ello se aconseja emplear los estimadores maximo
verosmiles. En el captulo dedicado a repaso de estadstica se detalla ampliamente
como llevar a cabo este paso para cada distribucion (ver 3.2.5).
Cuales son las tabla 3 y 4 (a la que se reere el cuadro resumen del test) PENDIENTE
4.4. Ejemplo 2
1. Agrupar los valores en parejas (xi, xi+1) para formar puntos en el es-
pacio XY, de manera que queden n 1 puntos (x1, x2), (x2, x3), ,
(xn1, xn). Para ello, lo que hay que hacer es copiar en dos columnas
adyacentes los valores observados de tal modo que cada xi tenga a su
derecha el valor xi+1.
Captulo 4. ANALISIS DE DATOS DE ENTRADA 102
xi+1
200
150
100
50
0
0 50 100 150 200 xi
Como resultado se obtienen las frecuencias absolutas con las que se repiten
las observaciones en cada rango de valores.
Test 2
Captulo 4. ANALISIS DE DATOS DE ENTRADA 105
En primer lugar se realiza el test 2 para la hipotesis lognormal y despues para 2, lognormal
la exponencial. En el primer caso, la formulacion de la hipotesis es la siguiente:
Procediendo de este modo se obtienen unos intervalos como los del cua-
dro 4.2.
(Ni npi)2
Frecuencia es-
Intervalo Limite Limite Frecuencia ob-
npi
inferior superior servada (Ni) perada (npi)
1 0,00 1,43 30 25 1,00
2 1,43 2,36 21 25 0,64
3 2,36 3,30 18 25 1,96
4 3,30 4,32 16 25 3,24
5 4,32 5,43 25 25 0,00
6 5,43 6,67 20 25 1,00
7 6,67 8,08 22 25 0,36
8 8,08 9,69 15 25 4,00
9 9,69 11,55 21 25 0,64
10 11,55 13,72 20 25 1,00
11 13,72 16,31 37 25 5,76
12 16,31 19,44 27 25 0,16
13 19,44 23,31 27 25 0,16
14 23,31 28,22 33 25 2,56
15 28,22 34,68 32 25 1,96
16 34,68 43,64 38 25 6,76
17 43,64 57,05 40 25 9,00
18 57,05 79,90 30 25 1,00
19 79,90 131,66 25 25 0,00
20 131,66 3 25 19,36
2 = 60, 56
Cuadro 4.2: intervalos equiprobables, frecuencias y estadstico
hipotesis lognormal
(Ni npi)2
Frecuencia es-
Intervalo Limite Limite Frecuencia ob-
npi
inferior superior servada (Ni) perada (npi)
1 0,00 1,33 28 25 0,36
2 1,33 2,74 31 25 1,44
3 2,74 4,24 24 25 0,04
4 4,24 5,82 35 25 4,00
5 5,82 7,50 28 25 0,36
6 7,50 9,30 19 25 1,44
7 9,30 11,23 18 25 1,96
8 11,23 13,32 21 25 0,64
9 13,32 15,59 34 25 3,24
10 15,59 18,08 24 25 0,04
11 18,08 20,83 22 25 0,36
12 20,83 23,90 20 25 1,00
13 23,90 27,38 24 25 0,04
14 27,38 31,41 15 25 4,00
15 31,41 36,16 29 25 0,64
16 36,16 41,99 21 25 0,64
17 41,99 49,49 31 25 1,44
18 49,49 60,07 24 25 0,04
19 60,07 78,15 24 25 0,04
20 78,15 28 25 0,36
2 = 22, 08
Cuadro 4.3: intervalos equiprobables, frecuencias y estadstico
hipotesis exponencial
Lognormal Exponencial
2 = 127, 6 2 = 22, 08
18,0,9 25,989 RECHAZADA ACEPTADA
18,0,95 28,869 RECHAZADA ACEPTADA
18,0,99 34,805 RECHAZADA ACEPTADA
Test de Kolmogorov-Smirnov
Igual que con es test anterior, en primer lugar se realiza el contraste corres- K-S, lognormal
pondiente a la distribucion lognormal. El procedimiento para realizar el test
de Kolmogorov-Smirnov es el que sigue.
F=
n
i
500
3. Obtener Di para cada valor xi. Para ello, se calculan en cada x(i) las dos
siguientes expresiones1:
. .
a) .Fn (x(i1) ) F(x(i)) .
b) .
.Fn(x(i)) F(x(i))
.
.
y en cada punto Di toma el mayor de los valores anteriores.
Como D > D(0, 9, 500), se rechaza la hipotesis de que la muestra sigue una
distribucion lognormal con parametros = 2, 62 y 2 = 1, 89 (ver cuadro 4.6).
. . . .
i x(i) Fn(x(i)) F(x i) .Fn (x(i1 ) F(xi ). .Fn (x(i ) F(xi ). Di
1 0,01 0,002 0,000 - 0,002 0,002
.. .. .. .. .. .. ..
. . . . . . .
496 127,34 0,992 0,947 0,043 0,045 0,045
D = max Di = 0, 087
Lognormal Exponencial
D = 0, 124 D = 0, 044
D0, 9, 500 0,055 RECHAZADA ACEPTADA
D0, 95, 500 0,061 RECHAZADA ACEPTADA
D0, 99, 500 0,073 RECHAZADA ACEPTADA
Procediendo de manera analoga para la hipotesis exponencial2 se obtiene que K-S, Exponencial
segun este test no se puede rechazar con un nivel de conanza del 99 % que la
muestra siga una distribucion Exp(26, 9). Por lo tanto, al igual que sucede en
el test 2 , se rechaza la hipotesis lognormal y se acepta la exponencial.
Cabe destacar que, aunque en este caso coincidan, los resultados de los dos Comentarios
tests pueden ser diferentes. En estos casos se puede recurrir a otros tests como
Anderson-Darling (ver Law 2001 [1], pags. 351-352).
2 para evaluar exp() en x en Excel se emplea la expresion DISTR.EXP(x; 1/;VERDADERO)).
Captulo 4. ANALISIS DE DATOS DE ENTRADA 110
Para obtener los resultados del test, hay que realizar lo siguiente.
3. Realizar el ajuste. Para realizar el ajuste se elige Run Fit en el menu Fit-
ting.
4. Interpretar los resultados. Despues del paso anterior se abre una venta-
na como la de la gura 4.10. En ella se pueden distinguir tres bloques d e
informacion.
a) A la izquierda se enumeran las distribuciones seleccionadas en
orden creciente de bondad del ajuste segun tres tests: 2 ,
Kolmogorov-Smirnov y Anderson-Darling. El test se selecciona en
la pestana desplegable de la parte inferior del bloque.
Los resultados de cada test se presentan en el cuadro 4.7. No existe una re-
gla para decidir que test es mejor en cada caso. Cada uno tiene sus ventajas e
inconvenientes por lo que una buena opcion es estudiar los resultados de los
tres conjuntamente. En este caso, por ejemplo, no hay ninguna razon para
pensar que la muestra no se ajusta a una Exp(26,08), ya que los resultados de
los tres para esta funcion son aceptables. Aunque tambien es razonable acep-
tar que se distribuye segun una Beta(0,88 , 27,35), que es la que proporciona
un ajuste mejor segun los test 2 y K-S.
Captulo 4. ANALISIS DE DATOS DE ENTRADA 112
4.6. Resumen
Existen tres formas de alimentar un modelo. Con datos historicos, con datos
generados a partir de una distribucion emprica y con datos generados a traves
de una distribucion teorica.
Con los datos historicos es posible realizar la validacion del modelo. Sin em-
gargo, como el numero de valores de los datos historicos no suele ser muy
grande, no resultan utiles para explorar diferentes conguraciones y evaluar el
comportamiento del sistema para tomar una decision.
5.1. Introduccion
Para que un modelo sea de utilidad debe estar bien hecho. Esto signica dos Deniciones
cosas: primero, debe estar bien programado y, segundo, debe representar bien
la realidad. Al proceso que garantiza que un modelo esta bien programado, se
le denomina vericacion, mientras que el que se reere a la representacion
adecuada del sistema estudiado, se denomina validacion.
DE DE
O E O DEL
EM
E O D DE
DO
MODELO
O E L
MODELO OM
O
MODELO
O M O
E LO
D E O DE
E E ME O
DO ME
M L
E L DO
Los ejemplos que se muestran en este epgrafe son sencillos, con lo cual, mu-
chas de las comprobaciones pueden parecer triviales, pero en modelos com-
plejos, son extremadamente utiles.
5.3.1. Ejemplo 1
En el caso del ejercicio, no existe la llegada de un solo cliente, sino dos di-
ferentes, que siguen distribuciones exponenciales. En una hora, por termino
medio, llegan 3 llamadas VIP y 40 llamadas normales, es decir, 43 llamadas en
conjunto. El tiempo entre llamadas (independientemente del tipo) es 43 60
, que
es el valor de para la expresion 5.1. Por otra parte, n = 4 y = 4, por lo que
el tiempo medio de ocupacion esperado sera:
4
= = 71,67 (5.2)
4 60
43
El tiempo de servicio no suele ser exponencial. Incluso el tiempo entre las lle-
gadas de los clientes podra no seguir una distribucion exponencial. En este
caso, una posible forma de proceder sera modicar el modelo e introducir
distribuciones exponenciales, comprobar que el resultado es correcto para esa
conguracion y, despues, volver a introducir las distribuciones originales. Se
entiende que si los valores son correctos cuando las distribucinoes son expo-
nenciales, la logica del modelo es correcta y los seguira siendo al cambiar las
expresion de los tiempos de servicio y del tiempo entre llegadas de clientes.
5.3.2. Ejemplo 2
IF TYPE = LlamadaNormal
PRINT "\n" + "Llamadas VIP en espera " + NENTS2 (ELEMENT,LlamadaVIP,0)
PRINT "Llamadas normales en espera " + STR (NENTS2 (ELEMENT,LlamadaNormal,0))
ELSE
PRINT "\n" + "Llamadas VIP en espera " + STR (NENTS2 (ELEMENT,LlamadaVIP,0))
PRINT "Llamadas normales en espera " + NENTS2 (ELEMENT,LlamadaNormal,0)
ENDIF
5.3.3. Ejemplo 3
En una parte de una planta pintan y secan productos para servidos a otra par-
te de la fabrica. Los productos que hay que pintar llegan a un almacen previo
a la zona de pintado segun una exponencial de media 4 minutos.
El proceso de pintado puede realizarse con tres calidades: baja, media y alta.
Las proporciones en las que deben pintar productos con estas calidades son
20, 40 y 40 %, respectivamente.
Igualmente, los productos son de tres tamanos: pequeno, mediano y grande,
en proporciones del 15, 50 y 35 %. Los tiempos de pintado siguen distribu-
cinoes lognormales de parametros (, ) dependientes del tamano y de la
calidad, y son los que se indican en la siguiente tabla
Por ultimo, Envio es una actividad que permite retirar cinco unidades
de Producto cuando estan cinco o mas disponible. Para ello, la Regla de
entrada es PULL from ColaEnvio cuando se cumple IF NENTS (Envio)
+ NENTS (ColaEnvio) >= 5 (ver la gura 5.6).
Haciendo uso de las Acciones de usuario imprimir por pantalla los valores de
los atributos Calidad y Tamano de las entidades que estan en Secado.
Captulo 5. VERIFICACION Y VALIDACION DE MODELOS 126
Crear una variable que registre el numero de entidades que se han servido de
tipo calidad alta y tamano grande. Comprobar que representa la proporcion
esperada, dadas las probabilidades con las que llegan ese tipo de productos.
5.3.4.6. Depurador
Witness ofrece tambien la herramienta del Depurador, que sirve para ejecu-
tar el codigo de manera que sea mas sencillo evaluar si ha sido programado
correctamente.
Por ultimo, otra practica que facilita la construccion de modelos bien veri-
cados es mediante el uso de modulos, que, una vez vericados, se pueden
reutilizar bien en un mismo modelo o bien en diferentes modelos.
Crear un modulo con Pintura, Secado, ColaEnvio y Envio y duplicar estos ele-
mentos.
Captulo 5. VERIFICACION Y VALIDACION DE MODELOS 131
La forma mas sencilla para crear un modulo consiste en seleccionar los ele-
mentos que se desea que formen parte del modulo en y hacer clic en el boton
como el de la gura 5.19. A continuacion, Witness solicita el nombre del n
u
e
- vo
modulo. En el archivo Ejemplo5-4-7.mod a este modulo se le ha dado el
nombre PinturaSecado.
Al igual que se puede hacer con cualquier elemento que forma parte del mode-
lo de simulacion, es posible clonar modulos. Seleccionando el elemento, en es-
te caso el modulo PinturaSecado, con Elementos / Clonar se genera un modulo
identico al anterior, pero con un nombre distinto, PinturaSecado01, como se
muestra en la gura 5.21.
5.3.4.8. Documentor
Uno de los aspectos mas importantes para mantener un modelo bien verica-
do es disponer de una buena documentacion del mismo. Como se ha podido
comprobar, el codigo de un modelo de Witness aparece en diferentes elemen-
tos y, dentro de cada elemento, en diferentes ventanas. El modulo Documentor
permite recopilar toda esta informacion de manera sistematica en un archivo
de texto .rtf.
Captulo 5. VERIFICACION Y VALIDACION DE MODELOS 132
5.5. Resumen
Un modelo bien vericado y validado se pueden explotar para ayudar a a l Tecnicas para la
toma de decisiones. Para ello, es necesario realizar el analisis de las variables validacion
de salida de forma rigurosa, que es a lo que se dedica el captulo siguiente.
Captulo 6
6.1. Introduccion
Existen dos errores que se cometen con frecuencia en relacion con la naturale- Dos errores
za estocastica de los sistemas que se analizan mediante simulacion. El primero comunes
consiste en analizar el comportamiento durante un solo periodo de tiempo, es
decir, realizar una sola replicacion. Por ejemplo, sera erroneo extraer conclu-
siones sobre el funcionamiento de un puerto mediante en analisis del modelo
durante un solo mes. Los datos correspondientes a ese mes pueden no ser re-
presentativos. Es necesario realizar varias replicaciones y obtener informacion
signicativa a patir de ellas. El segundo error consiste en realizar la experi-
mentacion de forma poco rigurosa y estadsticamente erronea. Por ejemplo, si
existe correlacion entre los datos obtenidos en una replicacion y los datos de
la anterior, en analisis que se propone aqu no tiene validez y las conclusiones
pueden ser equivocadas.
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 136
A lo largo del resto del captulo se presenta como realizar el analisis de una Estructura del
alternativa. En primer lugar, en la seccion 6.2 se presenta la diferencia entre captulo
le regimen permanente y el regimen transitorio. En la sigiente seccion, 6.3, se
describen los tipos de simulacion atendiendo al tipo de analisis que requiere
cada una de ellas: las simulaciones con terminacion, cuyo analisis se presenta
con detalle en la seccion 6.4 y las simulaciones sin terminacion, a las que se
dedica la seccion 6.5. En la seccion 6.6 se proponen dos ejemplo, uno para
cada tipo de simulacion. Finalmente, se resumen las ideas mas importantes
del captulo en la seccion 6.7.
Por otro lado, una simulacion sin terminacion es aquella en la que no hay Simulaciones sin
un evento que marque el n de la misma y en la que el inicio tampoco suele terminacion
una parte representativa del mismo. Las simulaciones sin terminacion pueden
ser de tres tipos. Con regimen permanente, en las que, como se ha comentado
antes, el comportamiento de las variables de salida se estabiliza y a partir de
cierto instante ya no vara. Con regimen permanente periodico, en que se
puede observar un comportamiento cclico de las variables de salida. Otros
tipos en los que no se puede hablar de ningun regimen permanente ni cclico.
En este texto nos ocuparemos de las simulaciones sin terminacion y las simi-
luaciones con terminacion y con regimen permanente.
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 138
Los problemas especcos de los que depende el analisis de las simulaciones Analisis de las
con terminacion son dos: establecer las condiciones inciales y caracterizar las simulaciones
variables de salida. conn
terminacion
Condiciones inciales. Para obtener resultados ables, es necesario repre-
sentar, con la herramienta de software correspondiente, las condiciones
iniciales a partir de las cuales opera el sistema.
Estimacion de media y de otros parametros. Tpicamente, en un primer
analisis se obtiene una estimacion de la media de la variable de salida
estudiada y un intervalo de conanza para la misma. Por supuesto, e s
pueden realizar analisis mas amplios.
En el caso de las las simulaciones sin terminacion, los problemas son los si- Analisis de las
guientes. simulaciones sin
terminacion
Estimar cuando se ha alcanzado el regimen permanente para deterim-
nar cual es el tiempo de calentamiento durante el cual se debe correr el
modelo y a partir del cual se deben tomar resultados.
Estimacion de media y de otros parametros, como en el caso de las simu-
laciones con terminacion. En este caso, como se comentara, existen dos
alternativas.
,n ,n 2
Cuanto mayor es el nivel de conanza, 1 , mayor es la amplitud del inter- Obtener una
valo que acompana al valor puntual y, por lo tanto, menor la precision de la precision
estimacion de la variable deseada. Explicado de otra manera, para un determi- concreta
nado numero n de observaciones de la variable de salida, cuanto mayor es la
amplitud del intervalo mayor sera la probabilidad de que dicho intervalo con-
tenga, efectivamente, a la media. Para aumentar esta precision, o lo que es lo
mismo reducir la amplitud del intervalo para un determinado, existen dos
alternativas:
na() = min i n tal que
i1,1/2 i (6.3)
Y (n) 1
Hay casos en los que interesa estudiar otros valores relativos al compor-
tamiento del sistema diferentes al valor esperado de una variable. Por
ejemplo, si se analiza el funcionamiento de una cola, puede interesar, ademas
del tiempo medio de espera, conocer en profundidad como se distribuye esa
espera: la probabilidad de que el tiempo en cola supere un valor concreto, la
tasa de ocupacion de los puestos de servicio, etc. En otro caso, por ejemplo,
puede ser interesante conocer la probabilidad de que un pedido se rechace
porque el sistema de fabricacion este saturado.
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 141
Aunque queda fuera del alcance de este texto revisar en profundidad este tipo Estimacion del
de analisis, a continuacion, a ttulo ilustrativo, se comenta un ejemplo. Para parametro de
estimar la probabilidad p de que una variable Y tome algun valor dentro del una distribucion
intervalo B, es decir, P (Y B) basta con realizar n replicaciones independien- binomial
tes, con las que se obtiene una muestra y1 , yn . Sea S el numero de ob-
servaciones que caen dentro del intervalo B. La variable S se distribuye segun
una binomial de parametros p y n. El valor de p y su intervalo de conanza
asociado (con un nivel 1 ) se estima mediante las expresiones:
S
p =
n
, ,
p z p(1 p) p(1 p)
1/2
n , p z 1/2 n
(6.4)
El segundo metodo consiste en recoger datos del estado de las variables Reproducir el
en el sistema real y modelar las condiciones iniciales a partir de las dis- estado inicial a
tribuciones de probabilidad que mejor se ajusten a los mismos. De este patir de datos
modo, las condiciones iniciales de cada replicacion vendran determina- historicos
das por variables aleatorias independientes. Aplicandolo al ejemplo, se
tratara de tomar muestras en el sistema del numero de clientes a las
12:00 pm, e intentar ajustar estos datos mediante una funcion de proba-
bilidad para, posteriormente, al iniciar cada replicacion generar valores
de dichas variables con los cuales congurar el estado inicial del
modelo.
En las simulaciones sin terminacion, las condiciones iniciales y la duracion de El problema del
la simulacion no son relevantes para la evaluacion del comportamiento del tiempo de
sistema y, generalmente, interesa el comportamiento durante el regimen esta- calentamiento
cionario. En estos casos, hay que aislar la parte de la simulacion perteneciente
al regimen transitorio, que depende del estado inicial del modelo, para no in-
cluirla en el analisis. Si no se hace as, dado que el valor esperado de la variable
de salida es diferente en el regimen transitorio con respecto al estacionario, la
estimacion obtenida tiene un sesgo respecto al verdadero valor esperado du-
rante el regimen estacionario. Independientemente de las condiciones iniciales
elegidas, pasado un tiempo, la simulacion converge al regimen estacionario sin
afectar al valor esperado, aunque el tiempo que tarda en converger s depende
de las condiciones iniciales. Por lo tanto, es necesario identicar el regimen
transitorio y ejecutar el modelo durante un periodo de tiempo hasta que el
comportamiento de la variable de salida (y en particular su valor esperado) se
estabilice. Cuando se alcanza este momento, a partir del estado en el que se
encuentra el modelo, se comienza la toma de datos de las variables de salida
para el analisis del sistema. El tiempo durante el cual hay que correr el modelo
antes de tomar datos se conoce como tiempo de calentamiento del modelo.
m
te erroneo ya que existen observaciones que pertenecen al regimen transitorio
y, por lo tanto, no corresponden a valores de la variable aleatoria Y una vez su
comportamiento de ha estabilizado.
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 143
Para estimar el valor esperado de una variable de salida, existen dos alterna-
tivas: realizar varias replicaciones o realizar una unica replicacion de mayor
longitud. A continuacion se presentan estas dos alternativas.
Multiples replicaciones
Replicacion unica
Una sucursal bancaria abre a las 9:00 de la manana y cierra sus puertas a
las 14:00, pero la sucursal no termina el servicio hasta que son atendidos
todos los clientes que estan dentro en el momento del cierre. La ocina
tiene tres puestos de servicio: dos cajas, donde se atienden las operaciones
mas rapidas, y una mesa, donde se llevan a cabo los servicios de mayor
importancia que, ademas, requieren mas tiempo. Los clientes se pueden
agrupar en tres tipos, cuya caracterizacion viene dada por la tabla siguiente:
Se pide estimar:
el tiempo medio que los clientes pasan en la cola, acompanado de un
intervalo de conanza al 90 % con un error relativo maximo para la
estimacion de la media menor del 15 %;
la probabilidad de que el servicio se extienda mas alla de las 14:00.
Calcular el valor puntual acompanado de un intervalo de conanza al
90 %.
Para seguir la resolucion del ejemplo se recomienda trabajar sobre los siguien- Planteamiento
tes cheros:
El experimento Archivos
El primer paso es abrir el modelo Ejemplo1-1.mod. Se compone, principal- disponibles
mente, de:
El tiempo medio que los elementos entidad pasan en un elemento tipo cola Contenido del
se almacena en la columna numero 13 del archivo de salida csv. Esta infor- archivo csv
macion se utiliza para obtener el tiempo medio que los clientes pasan en la
cola en cada replicacion. Con la variable Tcierre se registra la salida del ulti-
mo cliente para comprobar si la duracion de esa replicacion es mayor de 300
minutos (columna 9 del chero csv).
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 152
El analisis estadstico
3. Copiar los 20 valores del tiempo medio de espera en la hoja Calculo rep.
adicionales (columna 13 del csv, columna M una vez importado).
4. Rellenar esta hoja de acuerdo con el contenido del cuadro 1 6.1. Como el
cociente entre la semiamplitud del intervalo y la estimacion de la media
(0.2) es mayor que 1 = 0,15 es necesario realizar replicaciones adicio-
nales.
1 A la hora de calcular t
n1,1/2 hay que tener en cuenta que los parametros de esta funcion
en Excel son DISTR.T.INV(,grados de libertad)
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 153
, = =
= 0,36
25 ,
n
p(1 p) 0,36 0,64
p z1/2 = 0,36 1,64 = 0,36 0,16
n 25
Se estima que la probabilidad de que en un da el banco cierre mas tarde de las Probabilidad de
14:00 se encuentra en el intervalo [0,20, 0,52], con un 90 % de probabilidad. queden clientes
a las 14h
Se trata de una simulacion sin terminacion de un sistema del que interesa, basica-
mente, su comportamiento una vez alcanzado el regimen permanente. Por lo tanto,
el primer paso para estimar la produccion media por hora en regimen estacionario,
Y , consisten en el calculo del tiempo de calentamiento, expresado por el numero de
horas l que hay que dejar pasar para superar el regimen transitorio. Una vez que se
conozca l, se puede estimar el valor esperado de la variable de salida acompanado de
un intervalo de conanza.
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 155
El experimento Planteamiento
1. Ordenar los datos de la hoja CSV primero por el instante al que corresponden
los datos (columna D) y despues por replicacion (columna C), como en la gura
6.7(a).
Captulo 6. ANALISIS DE DATOS DE SALIDA. ANALISIS DE UNA ALTERNATIVA 156
4. Filtrar las celdas no vacas (gura 6.7(b)) y copiar los 160 valores y(j) en la
columna G.
5. Calcular, segun la expresion 6.5, la media alisada del conjunto y(j) aumentando
w hasta apreciar con claridad el paso de regimen transitorio a estacionario. En
concreto, tomar w = 5, w = 10 y w = 15. y representar gracamente dichos
valores (gura 6.8).
A patir del graco correspondiente a y (j) (15) (w = 15) se puede admitir que tras 25
horas para que el sistema ha alcanzardo el regimen permanente. Es decir, l = 25.
Para estimar el numero de piezas producidas por hora, solo se tienen en cuen-
ta los valores yi(j) con i = 1, , 10 y j = 26, , 160:
1. Ordenar los datos de la hoja CSV primero por replicacion y despues por hora
(al contrario que para el tiempo de calentamiento).
Como conclusion del analisis, el valor esperado del numero de piezas que se producen
por hora se encuentra en el intervalo [59,07, 60,08], con una probabilidad de 95 %.
6.7. Resumen
7.1. Introduccion
Una manera intuitiva de tratar este problema es ejecutar los modelos durante un tiem-
po determinado y, dependiendo de si interesa un valor alto o bajo de la variable de
salida, elegir el que tenga mejor respuesta. Pero, al igual que sucede en el caso de es-
tudiar una conguracion unica, la salida de estos modelos es un fenomeno estocastico
y no hay garantas de que la alternativa elegida por este metodo sea la adecuada.
En esta seccion se explica como comparar dos alternativas suponiendo que se evalua
su comportamiento a traves de una unica variable de salida1 . A partir de ahora y1i
representa el valor en la i-esima replicacion de la variable de salida en la primera al-
ternativa (Y1) y que su valor esperado es 1 = E(Y1) (2 = E(Y2) para la segunda
alternativa). La comparacion se hace a partir de una nueva variable aleatoria, Z, de-
nida como la diferencia de la variable de salida en las alternativas 1 y 2, Z = Y1 Y2.
1 cuando se quiere estudiar el comportamiento de mas de una variable simultaneamente, el
problema se conoce como decision multicriterio y su resolucion se escapa del objetivo de este
texto. Para mas informacion se recomienda consultar la referencia Law, 2001
Captulo 7. ANALISIS DE DATOS DE SALIDA. COMPARACION DE VARIAS ALTERNATIVAS 159
.
k
P(s Ispara todos = 1, 2, , k) 1 s (7.2)
s=1
Otra forma de aplicar este metodo, ademas del caso en el que se quiera contrastar
posibles alternativas frente a una existente, es comparar varias alternativas tomando
como referencia la que tenga una media menor (o mayor, depende de que se busque).
De este modo se comprueba si la alternativa aparentemente mejor realmente es signi-
cativamente diferente al resto.
Captulo 7. ANALISIS DE DATOS DE SALIDA. COMPARACION DE VARIAS ALTERNATIVAS 161
Sea Yji la variable de interes de la alternativa j en la replicacion i y sea j = E(Yji ). Planteamiento del
Para aplicar este metodo es necesario que los valores Yji se hayan obtenido a partir de metodo
replicaciones independientes para cada sistema y que se distribuyan normalmente2.
Debido a la aleatoriedad de Yji no se puede asegurar al 100 % que la eleccion a partir
de una muestra sea la correcta, pero si es posible jar una probabilidad de aciertoP .
Del mismo modo, no tiene sentido complicar en exceso los calculos para discernir que
alternativa es la mejor si la diferencia entre las 2 mejores es muy pequena. Por
tanto es aceptable jar un d tal que si la alternativa elegida es 1, la diferencia entre
esta y cualquier otra no supere dicho valor (es decir, i 1 d para todo i). En resu-
men, aplicando este metodo se puede armar que, con probabilidad P , la diferencia
de las medias de la alternativa elegida y la mejor del conjunto no supera el
valor d.
Primera etapa
Segunda etapa
Wj 2 = 1 Wj 1 (7.6)
Los valores de P y d son eleccion del analista y dependeran de los objetivos del
estudio de simulacion. Logicamente, cuanto mayor sea P y menor d mayor sera el
coste de computacion pero mejores los resultados obtenidos.
Captulo 7. ANALISIS DE DATOS DE SALIDA. COMPARACION DE VARIAS ALTERNATIVAS 163
La variable de salida es el tiempo medio que cada vehculo pasa en el siste- Planteamiento
ma una vez que la simulacion alcanza el estado estacionario. Para resolver el
problema, se toma como tiempo de calentamiento 720 horas (se deja su calcu-
lo como ejercicio) y se realiza un experimento como el que se muestra en el
cuadro 7.1. La resolucion del problema consiste, basicamente, en obtener un
intervalo de conanza (en este caso al 99 %) de la diferencia de la variable de
salida en cada modelo, Y1 e Y2.
Numero de replicaciones 40
Tiempo de calentamiento 720 horas
Longitud de cada replicacion 4000 horas
Variable de salida Tiempo medio en el sistema
El experimento
Analisis estadstico
Semi-longitud del
intervalo 99 % F6*RAIZ(F5/60) 0,07
El experimento
Los pasos para realizar obtener los datos de la simulacion son los siguientes:
4. El tiempo total que han estado paradas las 5 maquinas en cada replica-
cion se guarda en la columna I. Ordenar los datos por numero de repli-
cacion ( Datos / Ordenar / Columna B) y copiarlos en el lugar correspon-
diente de la hoja Comparacion de alternativas.
Analisis estadstico
1. Calcular las diferencias z2i = y2i y1i , z3i = y3i y1i y z4i = y4i y1i .
Estos valores representan el coste de mantenimiento en miles de euros.
Captulo 7. ANALISIS DE DATOS DE SALIDA. COMPARACION DE VARIAS ALTERNATIVAS 169
Los dos primeros intervalos no contienen al cero y son negativos por lo que se Conclusion
puede decir que hay una mejora signicativa al tener un total de 2 o 3
mecanicos en plantilla. Por otro lado, con estos datos no se pude armar que
exista una diferencia signicativa entre el sistema actual y tener 4 mecanicos.
Primera etapa
j y(1)j(20) Sj2(20)
1 68,79 19,72
2 54,63 3,66
3 60,53 1,86
4 68,34 1,88
4. Calcular Ni, que representa el mayor valor3 entre n0 + 1 (21 en este caso)
y el valor de la expresion 4 :
h21 S j2 (n0 )
(d)2
2 2
1 j
j n0 (d)2
h S (n
j replicaciones adicionales
2 21 24,40 25 5
3 21 12,42 21 1
4 21 12,57 21 1
3 la funcion de EXCEL MAX(n1; n2; ) devuelve el valor maximo del conjunto n1, n2,
4 para calcular Jx] puede emplearse, entre otras, la funcion MULTIPLO.SUPERIOR(x;1)
Captulo 7. ANALISIS DE DATOS DE SALIDA. COMPARACION DE VARIAS ALTERNATIVAS 171
Segunda etapa
j y (j2)(Nj 20)
1 69,96
2 55,21
3 58,75
4 66,64
2. Calcular los pesos W1i y W2i a partir de la ecuacion 7.6 (ver cuadro 7.4).
8.2. Introduccion
Sin embargo, en otros estudios las alternativas pueden estar menos claramen-
te denidas. Por ejemplo, puede ser interesante estudiar cual es el tamano de
lote de transferenciamas ventajoso en un taller, es decir, el numero de piezas
que componen cada lote, de tal manera que hasta que no se procesan todas
las piezas de ese lote en una parte del taller, no se enva el conjunto a la si-
guiente etapa. Pueden existir, de hecho, diferentes factores que condicionan el
comportamiento del sistema. En este caso, el interes puede ser buscar un con-
junto de valores para dicho parametros que de lugar a un comportamiento del
sistema sucientemente bueno (si no el mejor). Sin embargo, evaluar todas las
posibles combinaciones de todos los factores puede ser computacionalmente
inviabel, por el elevadsimo numero de alternativas. En este captulo se pre-
senta, primero, una metodologa para evaluar la inuencia de los parametros,
para conocer si su inuencia es signicativa (diseno de experimentos), y, des-
pues, una forma de obtener un modelo del propio modelo de simulacion para
poder precedir el comportamiento del modelo y elegir una buena combinacion
de factores (supercie de respuesta).
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 173
En una lnea de montaje, un factor puede ser el tamano de los stocks interme- Ejemplos
dios; el un centro de atencion telefonica, el numero de teleoperadores de los
que se dispone en cada nivel; en un supermercado, la disciplina de colas que
se adopta en las cajas.
Por otra parte, la respuesta del sistema es el valor que toma la variable de Respuestas
salida considerada. Cuando existen varios factores que pueden condicionar la
respuesta del sistema, el objetivo es evaluar el efecto de estos factores para
alcanzar una combinacion de sus valores que ofrezca una buen valor de la
respuesta.
Cuando solo hay un parametro que modicar, evaluar su efecto pasa por e j- Un solo
cutar el modelo para cada uno de los posibles valores de ese parametro (o para parametro
un conjunto de valores) y emplear las tecnicas presentadas en el captulo 7.
Cuando existen mas de dos parametros, factores de ahora en adelante, una Varios factores
posible estrategia podra consistir en jar el valores de todos los parametros
menos uno, Fi . A continuacion, modicar el valor de Fi y evaluar si tiene un
impacto signicativo sobre la respuesta del sistema. Este enfoque tiene dos
deciencias:
Combinacion c F1 F2 F3 Rc
1 R1
2 + R2
3 + R3
4 + + R4
5 + R5
6 + + R6
7 + + R7
8 + + + R8
El efecto principal del factor Fi, que se denota por ei, mide el efecto en la Efectos
respuesta al modicar modicar el factor Fi del nivel al nivel +, mientras el principales
resto de factores mantienen sus niveles. En particular, los valores de e1, e2 y e3
vendran dado por la expresiones 8.1
Existe una forma sencilla de computar los efectos principales con ayuda de la Regla sencilla
tabla 8.3. Por ejemplo, si se reordenan los terminos que aparecen en e1 en la
expresion 8.1, se puede obtener la expresion 8.2, en la que cada respuesta
aparece con el signo con el que aparece el nivel del F1 en dicha tabla.
R1 + R2 R3 + R4 R5 + R6 R7 + R8
e1 = (8.2)
4
1 (R4 R3) + (R8 R7) (R2 R1) + (R6 R5)
e12 =
2 2 2
1 (R6 R5) + (R8 R7) (R2 R1) + (R4 R3)
e13 = (8.3)
2 2 2
1 (R7 R5) + (R8 R6) (R3 R1) + (R4 R2)
e23 =
2 2 2
De nuevo, existe una forma sencilla de computar estos efectos. En la tabla 8.3 Regla sencilla
se muestran tres nuevas columnas, en particular, aparece una nueva con la
cabecera F1 F2 , donde, para combinacion de factores aparece el producto del
signo correspondiente al nivel del factor F1 por el signo correspondiente a F2.
Aplicando estos signos a cada una de las respuestas Rc , se obiene la expresion
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 176
R 1 R 2 R 3 + R 4 + R5 R 6 R 7 + R 8
e12 = (8.4)
4
Combinacion c F1 F2 F3 F1 F2 F1 F3 F2 F3 F1 F2 F3 Rc
1 + + + R1
2 + + + R2
3 + + + R3
4 + + + R4
5 + + + R5
6 + + + R6
7 + + + R7
8 + + + + + + + R8
Por ultimo, para este ejemplo, se puede evaluar el efecto de la interaccion de Interacciones
los tres factores, que se dene como la semidiferencia entre la interaccion d e ij k
los factores F1 y F2 cuando el factor F3 esta en su nivel + y la interaccion de
los factores F1 y F2 cuando el factor F3 esta en su nivel , tal y como se puede
ver en la expresion 8.5.
1 (R8 R7) + (R6 R5) (R4 R3) + (R2 R1)
e123 = (8.5)
2 2 2
Reorganizando la expresion anterior, se puede comprobar que los signos de la Regla sencilla
columna F1 F2 F3 permiten reconstruir de forma sencilla la expresion e123 ,
asignando a cada termino Rc el signo que indica aquella columna.
R1 + R2 + R3 R4 + R5 R6 R7 + R8
e123 = (8.6)
4
En este ejemplo solo hay tres factores, de manera que no existen interacciones Mas
de nivel superior. Sin embargo en disenos con 4, 5, etc factores se podran de- interacciones
nir de forma analoga y evaluar, todas y cada una de las posibles interacciones.
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 177
Tpicamente, en un modelo de simulacion cada vez que se calcula Rc para una Caracter
combinacion de factores se obtiene un valor dierente. La forma de abordar un aleatorio de Rc
estudio con respuestas estocasticas es la siguiente.
2. Estimar tantos valores de ei, eij. etc. como replicaciones: eir , eijr , etc.
con r = 1...n. Por ejemplo, para el efecto principal del factor F1 en un
diseno 23 y realizando 10 replicaciones (k = 3, n = 10), se obtendran 10
valores e1r :
3. Caluclar, para cada factor y para cada una de sus interacciones, un inter-
valo de conanza con un determinado nivel de conanza. La expresion
corresponde
al intervalo ,
para el mismo efecto principal F1 .
,
e (n) t S2 (n)
, e (n) t S 2 (n)
e1 e1
1 (8.8)
+
n1,1/2 n1,1/2
1 n
n
donde:
.
n
e1(n) = e1r
,n r=1
(8.9)
(e1r e1 (n))2
e1
r =1
S2 (n) =
n1
.
En el siguiente apartado se propone un ejercicio para elaborar un diseno de
experimentos con dos factores para una poltica de gestion de stocks.
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 178
8.4. Ejemplo 1
Una empresa mayorista sirve productos a sus cliente, que son minoristas. La
empresa compra productos a un proveedor, los almacena, y de ah sirve a sus
clientes.
La demanda diaria agragada para todos los minoristas sigue una distribucion
uniforme entre 240 y 260 productos.
El Lead time del proveedor sigue una lognormal de media 2 das y desviacion
tpica 0.5.
Existe relacionados con la gestion de stocks para atender la demanda son los
siguientes.
Coste unitario de stock o de almacenamiento: 1 unidad monetaria (um)
por unidad de producto (up) y por da.
Coste de carencia 10 um por unidad de producto no servido.
Coste de emision de un pedido: 250 um.
d
La demanda no atendida en un da determinado se pierde, es decir, la empresa
no entrega productos con retraso.
La poltica que se quiere evaluar consiste en pedir un lote de productos al
proveedor cuando el stock disponible, que es la cantidad de productos en el
almacen mas la cantidad de productos pendientes de recibir, cae por debajo
de un determinado nivel. Las diferentes formas que puede adptar esta poltica
se caracteriza mediante los dos parametros siguientes:
el tamano de pedido, Q y
el nivel de reaprovisionamiento, s, que es el valor tal que cuando el
stock disponible es inferior a el, se lanza un pedido al proveedor.
Se pide realizar un diseno de experimentos para analizar el efecto de los fac-
tores s y Q.
8.4.1. El modelo
En primer lugar, existen dos variables de tipo entero: s y Q que son los
parametros del modelo, los factores del diseno de experimentos.
Ademas, existen todos las variables para calcular los costes de cada
tipo y el coste total y las variables correspondientes a los valores de la
demanda y del lead time.
Para representar la evolucion del stock fsico y del stock disponible, hay
un histograma que se actualiza cada da simulado.
Para computar los costes, se calculan los tres costes: carencia, emision y alma- Computo de los
cenamiento como con el codigo de la gura . En particular: costes
8.4.2. Experimentacion
Si el problema fuera determinista con los valores medios, entonces D = 250. Estimacion de Q
Los datos correspondientes a los costes son CE = 200, CC = 10 y CA = 1, por
lo que, de acuerdo con la expresion , el tamano de lote economico optimo
sera, redondeando, Q = 331.
Por otro lado, si el lead time del proveedor fuera determinista e igual a 2 das, Estimacion de s
el nivel de reaprovisionamiento sera igual a la demanda correspondiente a ese
periodo, es decir, s = 2 250 = 500.
Para determinar el efecto de los factores s y Q, se pueden estudiar dos valores Niveles de s y Q
para cada factor, uno inferior y otro superior al valor teorico que se habra
obtenido en el caso no estocastico. Estos valores se muestran en el cuadro
8.4.2.
s() s(+)
450 550
Q() 315 R1 R3
Q(+) 345 R2 R4
Combinacion c s Q s Q Rc
1 + R1
2 + R2
3 + R3
4 + + + R4
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 182
Lo primero que hay que hacer es realizar un conjunto de diez replicaciones Replicaciones
(n = 10) para cada una de las combinaciones de factores. Para eso hay que
hacer los siguiente:
Una vez que se dispone de los valores de los efectos para cada replicacion, se Intervalos para
puede calcular un intervalo de conanza para cada uno de ellos, como e s es, eQ y eSQ
muestra en la gura 8.4. Para ello, de la misma manera que en el captulo 6, se
calcula estiman la media y la varianza, se establece un nivel de c
o
n
a
n
z
ay se obtiene
la semiamplitud del intervalo, con lo que, nalmente, se pueden calcular los
extremos superior e inferior del intervalo.
Los intervalos que se han obtenido para los efectos principales y para la inter- Analisis de
accion de los dos factores son: resultados
es (68,78, 53,51)
eQ (43,20, 16,74) (8.11)
esQ (10,89, 6,59)
A partir del diseno de experimentos con dos factores a dos niveles del ejemplo Modelo de
anterior, se puede construir un primer modelo de regresion de primer orden regresion
de la siguiente forma:
2(s s)
xs = s
2(Q Q) (8.13)
xQ =
0 = RF (n)
es(n)
s =
2 (8.15)
eQ(n)
Q =
2
esQ(n)
sQ =
2
Donde es(n), eQ(n) y esQ(n) son los valores medios de las respuesta corres-
pondientes a las cuatro combinaciones de los niveles de los factores al realizar
n replicaciones. RF (n) es el valor medio de la respuesta para todas las combi-
naciones y para las n replicaciones.
Para cada dos de los 2m valores anteriores, se puede calcular Dj(n) como
la diferencia entre los valores del modelo RCj (n) y del metamodelo RFj (n), con
j = 1, ..., m, de manera que el intervalo para la media de D(n) = RF (n)RC(n),
con un nivel de conanza vendra dado por la expresion siguiente:
2 2
, Dj(n) (m) , Dj(n) (m)
. , D(n) + tm1,1/2 .
D(n) tm1,1/2 . S .S (8.16)
m m
Por ultimo y admitiendo que la supercie fuera adecuada es posible explotar Explotacion del
el modelo para buscar optimos locales cercanos a los puntos correspondientes metamodelo
a las combinaciones de las factores estudiadas.
8.6. Ejemplo 2
Para realizar este ejercicio, ademas del material disponible para el ejercicio
anterior, se puede utilizar el archivo Ejemplo8-1 100R.xpt para facilitar la
realizacion de las replicaciones que permiten obtener las diferencias R j (n)
C y
RFj (n)
Supercie en
E [R(s, Q)] = 263,25 30,57xs 14,99xQ 1,08xsxQ (8.18) funcion de xs y
xQ
Captulo 8. DISENO DE EXPERIMENTOS Y SUPERFICIES DE RESPUESTA 188
Para poder hacer predicciones a partir del metamodelo, si se utiliza la expre- Valores de xs y
sion anterior, es necesario obtener los valores de xs y sQ a partir de s y Q. sQ
Existen 10 cuadros azules, cada uno correspondiente las m = 10 observacio- Estructura hoja
nes de RFj (n) y las m = 10 observaciones de RjC(n). Cada cuadro contiene Comprobacion
cinco las corresondientes a cuatro combinaciones de los factores de expe-ri punto C
mentacion. Los cuatro primeros, correspondientes a un diseno 22 y la quinta
corresondiente al punto C. Cada cuadro tiene ademas tantas columnas dispo-
nibles como las replicaciones que hay que realizar en cada caso (n= 10). Para
cada cuadro, es posible obtener los valores de FRj (n) y RF j (n)
8.7. Resumen
Si los modelos son muy pesados, y su ejecucion lleva mucho tiempo, puede
resultar interesante disponer de un metamodelo que permita predecir el com-
portamiento del modelo para diferentes valores de los factores sin necesidad
de realizar replicaciones. En primera aproximacion, un modelo de regresion de
primer orden puede ser suciente. Si no lo fuera, se pueden construir metamo-
delos de orden superior, que son mas eles al modelo pero exigen un mayor
tiempo de computacion.
Captulo 9
REDUCCION DE LA VARIANZA
9.1. Introduccion
La calidad de los resultados se puede medir segun la amplitud del intervalo de Como mejorar
conanza que acompana al valor estimado, expresado por: la eciencia
,
S2(n)
y(n) tn1,1/2 (9.1)
n
Uno de los caminos para aumentar la eciencia de la simulacion es m jo
erala
programacion para conseguir modelos que requieran menos recursos para su
ejecucion. De este modo, con el mismo esfuerzo de computacion, se puede
aumentar el numero de replicaciones (n) por lo que el intervalo anterior se
estrecha. Otro camino se dirige a mejorar la , es decir, que los datos de salida
de la simulacion tengan una varianza menor. Si se consiguen datos con me-
nor varianza, S 2 (n) disminuye y el intervalo de conanza sera mas estrecho.
Por tanto la precision de los resultados crece sin aumentar la duracion de la
simulacion. Al conjunto de tecnicas empleadas para lograr este proposito se
les conoce como tecnicas de reduccion de la varianza (en ingles de Variance
Reduction Techniques, VRT ) y su aplicacion puede ser la unica manera de
obtener resultados utiles de un proyecto.
Captulo 9. REDUCCION DE LA VARIANZA 192
Como se explica mas adelante, la forma de aplicar estas tecnicas depende de Las VRT no
cada modelo en particular y no se puede saber de antemano los b e
ne
io
c
s en la siempre
reduccion de la varianza de aplicarlas. Como consecuencia, la mayora de funcionan!
las estas tecnicas necesitan un estudio previo para saber si su aplicacion
contribuye a una mejora en la eciencia de los recursos o si, por el contrario,
conllevan una perdida de rendimiento.
En la secciones 9.2 y 9.3 se desarrollan brevemente los fundamentos de dos Estructura del
tecnicas de reduccion de la varianza (numeros aleatorios comunes y variables captulo
antiteticas). Estas tecnicas se desarrollan de forma practica en la resolucion de
un problema real mediante simulacion (seccion 9.4).
9.2.1. Fundamentos
Por tanto, si se consigue que los valores de cada par (y1i , y2i ) se correlacionen
positavemente, V ar [y(n)] se reduce, y el intervalo de conanza se estrecha. Se
puede conseguir esta correlacion si en cada replicacion i se usan los mismos
numeros aleatorios para generar1 las variables de entrada de ambas alterna-
tivas. De este modo se simulan situaciones similares en ambos modelos por
lo que es de esperar que las salidas tambien esten relacionadas. Cada nume-
ro aleatorio ri(0, 1) se utiliza para generar variables equivalentes en las dos
alternativas.
Ejemplo 5.2.1 Una empresa decide instalar un sistema telefonico de atencion al
cliente (a partir de ahora SAT). Para ello cuenta con dos propuestas y realiza un
estudio de simulacion para elegir aquella que ofrezca un tiempo total medio de
llamada menor. En ambos modelos existen dos variables de entrada: tiempo en-
tre llamadas (T ) y duracion de cada llamada (D). Si cada replicacion se naliza tras
100 llamadas, seran necesarios 100 valores tj y otros 100 dj (donde j toma
valores entre 1 y 100) que se generan a partir de 200 numeros aleatorios. Para
aplicar CRN se utilizan los mismos 200 numeros aleatorios en ambas alternativas
de manera que cada pareja (y1i , y2i) comparte los 100 valores (tj , dj ). Si en una
replicacion el conjunto d1 , , d100, por ejemplo, toma valores altos tanto y1i
como y2i tenderan a ser mayores y de este modo se introduce una correlacion
positiva en cada par.
9.2.2. Sincronizacion
La mayor dicultad de aplicar esta tecnica reside en conseguir utilizar los m-is
mos numeros aleatorios con el mismo proposito en ambas conguraciones. Si
se utiliza el numero aleatorio ri (0, 1) en la primera alternativa con un proposi-
to determinado debe utilizarse con ese mismo proposito tambien en la segun-
da. A diferencia del ejemplo anterior, cada conguracion puede necesitar un
numero diferente de ri (0, 1), y si se quieren hacer n replicaciones se complica
localizar donde se ha empleado cada numero aleatorio. Para solucionar este
problema la mayora de los programas de simulacion agrupan sus numeros
aleatorios en series numeradas a las que se puede acceder selectivamente. De
este modo se puede sincronizar el uso de los numeros aleatorios empleando
una serie concreta con un el mismo proposito en las dos conguraciones. Este
metodo de sincronizacion se conoce como series dedicadas.
1 ver seccion 3
Captulo 9. REDUCCION DE LA VARIANZA 194
Conguracion 1 Conguracion 2
Rep.
t d t d
1 Serie 10 Serie 20 Serie 10 Serie 20
2 Serie 11 Serie 21 Serie 11 Serie 21
3 Serie 12 Serie 22 Serie 12 Serie 22
4 Serie 13 Serie 23 Serie 13 Serie 23
5 Serie 14 Serie 24 Serie 14 Serie 24
6 Serie 15 Serie 25 Serie 15 Serie 25
7 Serie 16 Serie 26 Serie 16 Serie 26
8 Serie 17 Serie 27 Serie 17 Serie 27
9 Serie 18 Serie 28 Serie 18 Serie 28
10 Serie 19 Serie 29 Serie 19 Serie 29
9.3.1. Fundamentos
compense con un valor alto en la otra (es decir, que esten correlacionadas ne-
gativamente). El promedio de estas parejas tiene el mismo valor esperado que
la salida del modelo pero con una varianza menor. Esta idea se fundamenta
matematicamente de la siguiente manera:
.
+yi
(1) (2)
yi Y (1) + Y (2) Y + Y
mi = 2 E(M) = E 2 2
= = Y
2 2 2
V ar [m(n)] = = i i i i
n n
y, por tanto, cuanto mayor sea la correlacion negativa entre y (1) e y (2) menor
i i
es la varianza de m(n). Como E(M) = E(Y ), M(n) es un estimador sin sesgo
de = E(Y ) y los resultados del analisis de M son aplicables a Y . Como ven-
taja, tiene una varianza menor por lo que se obtiene un intervalo de
conanza mas estrecho.
9.3.2. Aplicacion
Y (1) Y (2)
Rep. Variables: regulares Variables: antiteticas
t d t d
1 Serie 10 Serie 20 Serie 10 Serie 20
2 Serie 11 Serie 21 Serie 11 Serie 21
3 Serie 12 Serie 22 Serie 12 Serie 22
4 Serie 13 Serie 23 Serie 13 Serie 23
5 Serie 14 Serie 24 Serie 14 Serie 24
6 Serie 15 Serie 25 Serie 15 Serie 25
7 Serie 16 Serie 26 Serie 16 Serie 26
8 Serie 17 Serie 27 Serie 17 Serie 27
9 Serie 18 Serie 28 Serie 18 Serie 28
10 Serie 19 Serie 29 Serie 19 Serie 29
Cuadro 9.1: aplicacion de AV para una de las conguraciones del ejemplo 5.2.1
En primer lugar se resuelve el ejemplo anterior sin aplicar ninguna tecnica de Objetivos del
reduccion de la varianza y despues se resuelve aplicando CRN. Como conclu- ejemplo
sion se comparan los resultados obtenidos por ambos metodos. Por tanto, el
objetivo de esta seccion es doble: por un lado, exponer de manera practica
como aplicar el metodo CRN y, por otro, demostrar el gran benecio que e n
algunos casos supone aplicar este tipo de tecnicas.
4. Proceder como en el caso anterior para llevar los datos generados al lugar
correspondiente de la hoja Analisis CRN.
Las semillas de Witness se organizan en series y subseries tal y como muestra Semillas en
la gura 9.3. Hay un total de 400.000 series, divididas a su vez en 10.000 s
ubs
e-ries. Witness
Cada subserie contiene 7, 5x1047 numeros aleatorios. Estos numeros alea-
torios se usan como semillas para generar valores de las variables aleatorias
del modelo (ver seccion 3.5). Se puede controlar el uso de semillas asignando
series concretas las funciones. La sintaxis para hacerlo es la siguiente:
FUNCION(parametros, serie)
FUNCION(parametros, serie,subseries)
Los argumentos serie y subserie son opcionales, es posible asignar la serie y la
subserie, solamente la serie o ninguna de las dos. Si no se especica ninguna
Captulo 9. REDUCCION DE LA VARIANZA 200
Como se explica en la seccion 9.2, la base de la tecnica CRN es la sincroni- Como asignar
zacion. En los dos modelos se utilizan numeros aleatorios con los mismos las series para
propositos: generar tiempos entre llegadas de nuevos clientes y generar dura- aplicar CRN en
ciones de servicio. La sincronizacion se consigue asignando la misma serie en el ejemplo
las dos alternativas, para cada uno de estos propositos.
Los pasos para resolver el ejemplo aplicando CRN son los siguientes:
Primera alternativa:
7. Importar los datos del archivo Ej5-1.csv generado en la hoja CSV CRN
1 del archivo Ejemplo5-1.xls .
cion tambien se cambia de serie. Por ejemplo, si en una funcion se emplea la serie 50 en la
replicacion 1, al pasar a la replicacion 2 se emplea la serie 51
Captulo 9. REDUCCION DE LA VARIANZA 201
Segunda alternativa:
Una vez que se tienen los datos y1,1 , , y1,100 e y2,1 , , y2,100 , se
calculan los 100 valores de Y . Se obtienen dos conjuntos de 100 de yi, que
representan la diferencia del tiempo medio de espera de los 100 primeros
clientes en la replicacion i aplicando CRN y sin aplicarlo. A partir de estos
valores se obtiene un cuadro como 9.2 donde se presentan los resultados del
analisis.
NOTA: Existe una fuerte correlacion entre y1i e y2i (0,72) a pesar de no
haberla inducido intencionadamente. Se debe a que con la asignacion au-
tomatica de Witness se consigue una sincronizacion parcial debido a la
sencillez del modelo. Para apreciar este concepto se presentan los resultados
para un experimento donde las series se han escogido intencionadamente
para que y1i e y2i sean completamente independientes.
Proporcion de CONTAR.SI 56 % 55 % 96 %
aciertos (F16:F115;'' > 0'')/100
Resultado NO NO SI
signicativo
Figura 9.4: graco de correlacion entre Y2i (eje vertical) e Y1i (eje horizontal)
Figura 9.5: comparacion del valor de los pares (Y1i , Y2i ) ordenados por repli-
cacion
Cual sera su estimacion del tiempo medio que pasaran los clientes en
la cola antes de poder utilizar uno de los cajeros? El resultado debe
expresarse en forma de un intervalo de conanza al 90 %.
Captulo 9. REDUCCION DE LA VARIANZA 204
En este caso solo se considera una unica alternativa, por lo que el problema consiste en Planteamiento
estimar el tiempo medio de espera del servicio (como en el caso anterior se consideran
solo los 100 primeros clientes). Para observar la reduccion de la varianza resultante de
aplicar AV , se lleva a cabo el estudio de simulacion mediante dos experimentos con
la misma duracion:
El primero de ellos consta de 200 replicaciones sin controlar la asignacion de
numeros aleatorios. Los valores obtenidos se analizan como 200 observaciones
del tiempo medio de espera. El resultado se da en forma de un intervalo de
conanza al 90 % para la media de esta variable.
Como se comento en el ejemplo anterior, este problema se puede resolver analtica- Ya se sabe el
mente y el valor esperado de la variable de salida es E(Y ) = 3, 70. La comparacion de resultado...
los dos metodos se hace en funcion del valor puntual obtenido y de la amplitud del
intervalo de conanza al 90 % que lo acompana.
Los archivos necesarios para seguir la resolucion de este ejemplo son los siguientes:
Ejemplo5-2.mod : coincide con el modelo Ejemplo5-2.mod .
Ejemplo5-2 Experimento1.txt : es el experimento para conseguir 200 repli-
caciones sin aplicar CRN.
Ejemplo5-2 Experimento2.txt : es el experimento para conseguir 200 repli-
caciones aplicando CRN. En las 100 primeras replicaciones se emplean valores
regulares de las semillas y de la 101 a la 200 se emplean los valores antiteticos.
Ejemplo5-2.xls : es la hoja de calculo donde se debe resolver el ejemplo.
Ejemplo5-2 solucion.xls : muestra como debe quedar la hoja de calculo una
vez resuelto el ejemplo.
3. Importar los datos del archivo generado Ej5-2.csv en la hoja CSV del
archivo Ejemplo5-2.xls .
2. Asignar una serie a la funcion mediante la que se generan los tiempos entre
llegadas de clientes, tal y como se hizo en el ejemplo anterior (por ejemplo,
POISSON(1) por POISSON(1,100)).
3. Del mismo modo, asignar una serie a la funcion mediante la que se generan las
duraciones de los servicios. Para evitar que se solapen sustituir, por ejemplo,
NEGEXP(0.9,200) por NEGEXP(0.9,200).
Para analizar los datos del primer experimento se calcula directamente un in-
tervalo de conanza de su media al 90 %. En el segundo experimento. Por otro lado,
en el segundo experimento el intervalo ed conanza se calcula para el conjunto de
valores obtenidos promediando cada par (y ( 1i) ,y ( 2 ) ).i En el cuadro 9.3 se presentan
los intervalos obtenidos mediante los dos metodos.
Sin AV Con AV
y(n) PROMEDIO(D14:D213) 4,11 PROMEDIO(H14:H113) 4,04
Pronostico SI SI
acertado
Ademas, se observa que aunque en ambos casos el valor real esperado (Y = 3, 70)
esta contenido en el intervalo de conanza, el valor puntual se acerca mas en el caso de
aplicar AV.
Captulo 9. REDUCCION DE LA VARIANZA 207
5
Captulo 10
OPTIMIZACION Y SIMULACION
10.3. Ejemplo