Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ANIMACIN
1. OBJETIVO GENERAL
Que el alumno, a partir de la creacin de un modelo de simulacin, aprenda a utilizar la animacin
de las entidades y recursos por medio de las herramientas que proporciona el software ARENA.
2. OBJETIVOS ESPECFICOS
Familiarizacin con la barra de herramientas de animacin
Que el alumno sea capaz de animar las distintas entidades dentro del modelo de
simulacin.
Que el alumno sea capaz de animar los distintos recursos dentro del modelo de simulacin.
Que al final de la prctica el alumno sea capaz de construir un modelo de simulacin
utilizando las diversas herramientas de animacin que proporciona el software ARENA.
3. ANIMACIN
3.1. ANIMACIN DE LAS ENTIDADES
Animar las entidades es un medio efectivo para la visualizacin del flujo de las entidades a travs
del modelo de simulacin. Generalmente a esto se le llama animacin de conectores ya que se
realiza la animacin del flujo de las entidades a travs de los conectores, es decir, a travs de las
lneas que conectan los mdulos grficamente.
3.1.1.IMAGEN DE LA ENTIDAD (ENTITY PICTURE)
La imagen que se utiliza de forma inicial por un tipo especfico de entidades se define en el mdulo
ENTITY. La figura que el software utiliza como predeterminada es llamada picture.report, la cual
hace referencia a una hoja de papel. Esta figura ser utilizada en todos los modelos planteados a
menos que se seleccione otra diferente de la lista predefinida de figuras en el mdulo Entity.
Es necesario hacer mencin que el software ARENA permite definir un nuevo nombre para una
imagen con su respectivo smbolo.
3.1.2.CAMBIAR
ENTIDAD
LA
IMAGEN
DE
LA
Con el propsito de animar un cambio en la imagen de las entidades es necesario utilizar el mdulo
ASSIGN, ya que, de otra forma, las entidades sern representadas por su imagen inicial y se
mantendrn sin ningn cambio durante todo el tiempo de corrida.
Mdulo Assign
El mdulo assign se utiliza para asignar nuevos valores a las variables, atributos, tipos de entidad,
imagen de la entidad u otras variables del sistema.
La barra de herramientas de animacin proporciona la interface para animar objetos dentro del
Software Arena, sin embargo, es necesario aclarar que estas opciones no se encuentran
disponibles dentro de ningn men.
Idle (ocioso)
Busy (ocupado)
Inactive (inactivo)
Failed (fallado)
Pantalla de estatus:
o
Reloj
Fecha
Variables
Niveles
Histogramas
Grficas
4. MODELO PROPUESTO
Utilizando el modelo propuesto en la Gua de laboratorio Construccin de un modelo utilizando
mltiples recursos realizar los siguientes cambios en el sistema:
Cambiar la imagen predeterminada de la entidad de Picture.Report a Picture.Blue Page.
Utilizando el mdulo Assign, cambiar la imagen de la entidad despus del proceso revisar
y tomar foto a Picture.Yellow Page.
Animar los recursos del modelo y el reloj que indica el tiempo de la simulacin.
5.
PASOS
SIMULACIN
PARA
CONSTRUIR
EL
MODELO
DE
Haciendo doble clic en el mdulo assign nombrado cambio de imagen se llenan los campos
respectivos, agregando un assignment (asignacin) y posteriormente seleccionando Entity picture
en el campo de Type (tipo) y Picture.Yellow Page en el campo de Entity Picture.
Al seleccionar OK, el cursor aparecer como una cruz la cual permitir colocar el recurso en
cualquier parte de la pgina del modelo cuando se presione el botn izquierdo del ratn.
Esta misma secuencia se utiliza para los otros dos recursos presentes en el modelo propuesto y se
visualiza de la siguiente forma:
Cuando se realice la corrida del modelo, los recursos cambiarn de forma de acuerdo a los
atributos seleccionados para cada uno de los estados posibles que stos puedan tomar.
5.4. ANIMAR EL RELOJ
Con la finalidad de animar el reloj dentro del modelo propuesto, se debe seleccionar con un clic del
ratn el botn Clock dentro de la barra de herramientas de animacin.
Esta accin desplegar una nueva ventana donde se definen los atributos del reloj como starting
time (tiempo de inicio), formato del reloj, ttulo del reloj, etc. Al terminar de definir los atributos, se
selecciona OK y el cursor aparecer como una cruz la cual permitir colocar el recurso en cualquier
parte de la pgina del modelo cuando se presione el botn izquierdo del ratn.
6. EJERCICIOS PROPUESTOS
1. Utilizando el modelo desarrollado en la prctica, animar todos los recursos con las imgenes
de la librera contactcenter de la forma siguiente:
2. Animar los diferentes recursos del set ENCARGADOS (Diana, Laura y Mnica), del ejercicio
de la prctica N 4: construccin de un modelo utilizando mltiples recursos.
PRCTICA N 6
AJUSTE DE DATOS CON EL INPUT ANALYZER
1. OBJETIVO GENERAL
Que el estudiante pueda, con el uso del Input Analyzer, ajustar, convertir o arreglar una serie de
datos que se recolecten para representar de forma realista los modelos de simulacin.
2. OBJETIVOS ESPECFICOS
Que el estudiante maneje de forma eficaz Input Analyzer para establecer el mejor modelo
probabilstico que represente a los datos de un modelo real.
Arena se utiliza para realizar la simulacin, mientras que el Input Analyzer determina la distribucin
de probabilidad que ms se asemeja a un conjunto de datos, adems calcula los parmetros
adecuados para cada tipo de distribucin de probabilidad, incluyendo informacin estadstica
suplementaria como nmero de datos (data points), valor mximo (maximum), valor mnimo,
media, mediana, moda, desviacin estndar, varianza, coeficiente de variacin, sesgo, curtosis,
entre otros datos. Input Analyzer utiliza ms comnmente las pruebas de bondad de Ajuste de:
Anderson-Darling, Chi-Cuadrada y la de Kolmogorov-Smirnov.
Para preparar los datos que se utilizarn en el Input Analyzer, basta con crear un simple archivo de
texto ASCII que contiene los datos en formato libre. Cualquier editor de texto, procesador de textos,
hoja de clculo o programa puede ser utilizado para este propsito. Los datos individuales deben
estar separados por uno o ms caracteres de espacio en blanco. No existen otros requisitos de
formato. Cuando se usa un procesador de texto, asegrese de guardar el archivo en un formato de
"texto nico" (.txt). Esto elimina cualquier carcter o formato de prrafo que de otro modo sern
incluidos en el archivo. Arena utiliza una extensin de archivo predeterminado .dst para los ficheros
de datos.
4. MODELO PROPUESTO
Los datos de las personas que entran a un banco por hora son:
Luego, guardar el archivo para poder importarlo desde Arena. A continuacin, abrir Arena y entrar
en la ventana del Input Analyzer.
Al dar clic en Input Analyzer, aparece una nueva ventana. Dar clic en Nuevo
proyecto nuevo.
para abrir un
El siguiente paso ser importar los datos que fueron creados en el bloc de notas para que Arena
determine la distribucin que ms se ajusten a dichos datos.
Para importar datos, dar clic en File > Date File > Use Existing
Dicha herramienta permite evaluar, mediante la prueba de Chi cuadrado, cual distribucin de
probabilidad muestra menor error indicando la que ms se ajusta a los datos del ejemplo.
Para este ejemplo, Arena concluye que la distribucin que ms se ajusta a los datos una Normal
con media de 15.1 y desviacin tpica de 3.59.
ejemplo con todas las distribuciones de probabilidad. Al ver como se aproximan los datos con las
otras distribuciones de probabilidad, se puede observar que la siguiente distribucin a la que los
datos ms se ajustan es la distribucin tipo Poisson.
6. EJERCICIOS PROPUESTOS
1. Cierta universidad, cuya especialidad es la economa y las finanzas, posee un sistema de
evaluacin en el que las notas de los estudiantes de cada curso deben seguir una distribucin
normal; Si esto no fuera as, se ha determinado que se sumar a un punto a todas las notas
menores de 6 y 0.5 a todas las notas mayores que 6. Ciertos alumnos insurgentes consideran que
esta regla no ha sido aplicada a la materia ms difcil de la carrera por lo que quieren comprobar si
sus notas siguen una distribucin normal.
Segn el listado de publicado, las notas de los alumnos son las siguientes:
5
10
10
10
10
10
10
10
10
2. Determinar si los siguientes datos de fractura de un bloque de cemento siguen una distribucin
de Weibull.
303
124
228
185
257
149
197
279
272
334
350
114
230
128
178
131
139
196
147
283
266
299
153
317
300
324
301
200
153
171
234
163
351
274
286
222
327
170
306
313
165
165
139
226
305
PRCTICA N 7
CONSTRUCCIN DE UN MODELO UTILIZANDO MDULOS AVANZADOS
1. OBJETIVO GENERAL
Que el Alumno aprenda y conozca las ventajas de utilizar los mdulos avanzados del Software
Arena para la simulacin y al mismo tiempo ample su capacidad de representar un modelo con
mayor precisin.
2. OBJETIVOS ESPECFICOS
El conocer las diferentes opciones que los mdulos avanzados proponen y las ventajas
que estas representan.
Aprender a sincronizar con Arena datos existentes en diferentes programas y de igual
forma saber exportar datos de simulacin hacia estos.
Que el alumno sea capaz de reconocer que mdulo es el ms conveniente para la
simulacin de un sistema, el cual haga dicha simulacin ms apegada a la realidad.
4. MODELO PROPUESTO
Se busca simular tres procesos diferentes de una panadera: horneado, empaquetado y entrega a
repartidores.
En una pequea panadera se hacen un aproximado de 100 panes especiales diarios, la masa de
los panes es preparada y sta puede ser para panes de dos diferentes tipos, dulce o salado, para
lo cual se sigue un orden especfico (creado ms adelante aleatoriamente para efectos de
prctica), contenido en la base de datos para la preparacin.
Una vez la masa preparada, sta llega en bandejas pequeas de 4 panes, con una distribucin
exponencial de una bandeja pequea con una media de 30 minutos, sin importar si son dulces o
salados, luego son puestas en bandejas de mayor tamao con capacidad para 10 panes, para
luego ser horneadas una bandeja a la vez; a continuacin son separados y empaquetados en
bolsas.
Horno: Cuando una bandeja de 10 panes est completa se procede a hornear, el horno se calienta
hasta una temperatura de 120 grados centgrados, variando constantemente 2 grados por minuto,
una vez alcanza la mxima temperatura comienza el enfriamiento hasta una temperatura de 25
grados centgrados, al alcanzar sta temperatura la bandeja es retirada y reemplazada por la
siguiente.
Empaque: al salir del horno la bandeja de 10 panes es separada y entra al proceso de
empaquetado donde se hacen bolsas de 4 panes, incluyendo dos panes salados y dos panes
dulces.
Entrega a repartidores: una vez empaquetados las bolsas de 4 panes pasan a la canasta de
finalizado, donde se espera a que llegue un repartidor, los repartidores llegan con una media de
una hora exponencialmente. Al llegar el repartidor, se avisa a la canasta de finalizado y se le
entrega hasta un mximo de 5 bolsas por repartidor, si no hay bolsas para entregar no se le
entrega nada y se espera el siguiente repartidor. Normalmente el mximo de repartidores que
llegan diariamente es de 10, pero esto es lo nico que se puede modificar, la frecuencia de llegada
de los repartidores y la cantidad de estos que llegarn diariamente.
Para un mejor control se busca conocer cuantas bolsas se lleva cada repartidor, y el horario a las
que estas son entregadas, actualizando la base de datos de la panadera contenida en Excel.
5.
PASOS
SIMULACIN.
PARA
CONSTRUIR
EL
MODELO
DE
Las bandejas son simuladas con la opcin entities per arrival, es decir llegarn 4 panes al
mismo tiempo, se simular un mximo de 25 arribos para simular la llegada de 100 panes.
Luego es necesario especificar que tipo de pan es cada uno, esta informacin se extraer desde
un archivo de Excel donde se contienen todos los datos, con el mdulo ReadWrite del panel de
procesos avanzados y al mismo tiempo ese mismo archivo servir para la recoleccin de datos de
repartidores y tiempos de partida; antes de editar el mdulo ReadWrite es necesario crear el
archivo de Excel contiendo las tablas que se utilizarn:
El tipo de pan puede ser simulado con la opcin ALEATORIO.ENTRE(1;2) siendo el tipo
de pan 1, salado y el tipo de pan 2, dulce, luego se arrastra la celda hasta simular 100
datos.
Para nombrar rangos es necesario dar clic derecho a una celda y elegir la opcin asignar
nombre a un rango, aparecer el siguiente cuadro:
Se pondr como nombre Tipo y en la casilla hace referencia a: se marcaran los datos
de la celda A2 hasta la celda A101 donde se han simulado los tipos de pan; lo mismo se
har para crear un rango de datos de salida, se nombrar a este rango salida:
A diferencia de los datos de entrada para este rango de salidas en la casilla hace
referencia a: se marcaran 3 columnas al mismo tiempo. DESDE B2 HASTA D101
Una vez marcados los rangos de entrada y salida se guardar el archivo de EXCEL en mis
documentos, con el nombre avanzados, este deber ser un tipo de archivo de EXCEL 2003. (al
utilizar Microsoft EXCEL 2007, se deber recurrir a guardar como > libro de EXCEL 97-2003)
La casilla Access Type se define el programa de donde se tomaran los datos, en este caso
se elegir Microsoft Excel; en la casilla operating system file, se buscar el archivo de
Microsoft Excel recin guardado.
End of File Action: sta es la opcin que le dir a la entidad que hacer al terminar los datos
del archivo que est leyendo, en este caso se reiniciar (rewind).
Initialize Option: al inicio de cada rplica, el archivo que se est leyendo puede ser cerrado
(Close), reiniciado (rewind) o mantenerlo sin cambio alguno (Hold).
En la casilla Recordsets, se deben definir los rangos que se utilizaran, tipo y salida ya
creados en Excel, al dar clic en el botn 0 rows:
Una vez editado el mdulo File, en la ventana del modelo, se editar el mdulo ReadWrite,
agregado anteriormente, y se agregar un mdulo batch, del panel de procesos bsicos, el
cual simular las bandejas grandes para 10 panes.
El mdulo batch sirve para agrupar un grupo de entidades en lotes, en ste caso 10 panes
en una bandeja, ya sea temporal o permanentemente; este mdulo ser temporal es decir
estar unido solamente para el horneado, eventualmente se sacarn los panes de la
bandeja, para esto se utilizar un mdulo Separate.
Al dar clic en el botn Add se elegir un tipo de atributo y se nombrar Tipopan, ste
atributo se agregar a cada entidad que pase por el mdulo ReadWrite.
Para el batch 1, la casilla Batch size deber valer 10 para simular una bandeja de 10
panes, y deber ser tipo temporal (temporary) para luego separarlo:
A continuacin se agregaran dos sub-modelos, uno para el horno y uno para el empaquetado, los
cuales sern editados ms adelante; para agregar un sub-modelo se recurre al men Object >
submodel > add submodel, y luego se da clic donde se pondr.
Al mismo tiempo se agregar un mdulo hold del panel de procesos avanzados, para
simular la canasta de finalizado donde las bolsas de 4 panes esperaran la llegada del
.)
Luego se necesita un mdulo ReadWrite el cual permitir guardar los datos de salida en el archivo
de Microsoft Excel, creado anteriormente; inmediatamente las bolsas con panes, salen del sistema
en la canasta de un repartidor, es decir se simular con un dispose, ambos mdulos se acoplarn a
continuacin del mdulo hold, de la siguiente manera:
Los mdulos debern quedar editados de la siguiente manera: (doble clic a cada mdulo
para editarlo)
A-93
El valor esperado (Wait for value) es el valor que la seal enviar y el lmite (Limit) quiere
decir que ese es el mximo de bolsas que se dejarn ir, al llegar la seal.
Para el ReadWrite, El tipo (Type) de ste mdulo debe ser para escribir (Write to file).
Se usar el recordset 2, el cual contiene las tres columnas vacas en el documento de
Microsoft Excel
En cuanto las asignaciones (assignments) se agregarn una a una, en el orden que se
desean, es decir, primero la hora, luego los minutos y por el ltimo el nmero de repartidor,
de la siguiente manera:
Dando clic en el botn Add se agregar la hora, la opcin Type debe ser Other, ya que el dato que
se escribir es un dato existente dentro del sistema (hora actual), al dar clic derecho en la casilla
de other, en el men desplegable se elige la opcin Build Expression
A-94
Para poner la hora en que la entidad pasa por el mdulo, en build Expression se despliega la
opcin Date and Time Functions > Hour, as:
que llega a recoger, dando clic en el botn add, el tipo deber ser una variable y su nombre se
reemplazar por repartidor, as:
Al finalizar el cuadro del mdulo ReadWrite deber quedar de la siguiente manera: (NOTA: las
asignaciones deben tener el orden mostrado, ya que en ese orden sern escritas en las tres
columnas del archivo avanzados de Microsoft Excel.)
Para el Dispose:
5.2. HORNO
Para simular el horno, se dar doble clic en el primer sub-modelo, (para cambiar nombre solamente
se debe dar clic derecho al submodelo > propierties > Submodel Name : Horno).
Una vez abierto el submodelo horno, se agregaran cuatro mdulos avanzados: Un seize, dos
adjust variable y un release, de la siguiente forma:
. Estos deben
El mdulo Seize simula la utilizacin del horno, dando clic en el botn add se agregar el
recurso horno:
En el mdulo release, se simula la liberacin del horno, es decir, queda libre para una
nueva bandeja grande de 10 panes, al dar doble clic en el mdulo y luego en la pestaa
Add se debe elegir de la lista desplegable el recurso horno:
Para cerrar el submodelo, se da clic derecho en la hoja de trabajo y luego clic a la opcin close
Submodel.
5.3. EMPAQUE
Una vez terminado la edicin del submodelo horno, se pasa a editar el submodelo 2, el cual se
nombrar empaque (clic derecho al submodelo y luego clic a la opcin properties).
Al dar doble clic y abrir el submodelo se agregaran cuatro mdulos: Un separate, un Batch,
un decide(del panel de procesos bsicos) y un Match, quedando organizados de la
siguiente forma:
El mdulo separate simular la accin de extraer los panes de la bandeja grande, en el tipo
de separacin se pondr la opcin Split existing batch, lo significa que se separar el batch
1, que simula la bandeja grande con capacidad mxima de 10 panes:
El mdulo decide simula la separacin de tipos de panes, en salado (tipo 1) y dulce (tipo 2),
el tipo ser por condicin, la cual ser un atributo ya creado anteriormente, Tipopan, ser
verdadero si su valor es igual a 1, de lo contrario ser falso y se asumir un valor igual a 2.
Para salir del submodelo, se debe dar clic derecho a la hoja de trabajo y luego clic a la opcin close
Submodel.
5.4. REPARTIDORES
A continuacin se proceder a simular las llegadas de los repartidores, este puede hacerse junto al
modelo general, ya que ser otro modelo independiente, pero relacionado.
El mdulo Assign permite asignarle una imagen y un valor al repartidor, al dar clic en el
botn Add... se agregan las asignaciones, en este caso ser una variable ya existente,
repartidor, la cual ira aumentando de 1 a 1 cada vez que un repartidor llegue, deber
quedar con los siguientes datos:
El mdulo Signal enva una seal al mdulo Hold (canasta de finalizado), el cual permite
liberar 5 bolsas de panes, el valor de la seal debe ser igual al valor editado en el mdulo
Hold (100), y el lmite de entidades liberadas ser 5, as:
Para ste modelo no ser necesario editar las opciones de corrido (run setup), ya que al terminar
de llegar entidades la simulacin finalizar, a continuacin se correr el sistema (es recomendable
tener cerrado el archivo de Microsoft Excel, para evitar conflictos).
Al finalizar la simulacin y abrir el archivo avanzados de Microsoft Excel, se puede apreciar las
horas en que los repartidores recogen las bolsas, as como cual repartidor ha recogido dichas
bolsas.
6. ANLISIS Y CONCLUSIONES
Los datos obtenidos luego de correr la simulacin debern ser similares a los siguientes: tomando
en cuenta que los datos del tipo de pan son diferentes por ser simulados con la opcin
ALEATOREO, lo que concluir en que cada uno de las corridas (al actualizar la tabla aleatoria de
Excel) ser diferente, tambin la hora variar, dependiendo a la hora que se haga la simulacin.
A continuacin se muestra un ejemplo de cmo modificar la llegada de repartidores: (tomando en
cuenta que los datos aleatorios de Excel no cambiaran si no se hace alguna modificacin al
archivo)
Al realizar este cambio y correr la simulacin una vez ms los datos debern cambiar, (no es
completamente necesario cerrar el documento de Microsoft Excel, para correr la simulacin):
En sta recoleccin de datos se puede apreciar que el repartidor 1, si logr llevar bolsas de panes,
pero de igual forma se puede ver que algunos repartidores no llevan bolsas, como es el caso del
repartidor 2 y 5, y otros llevan menos de 5 bolsas, como es el repartidor 6, 9 y 10, para esto se
puede cambiar la frecuencia de llegada de repartidores y la cantidad de estos que llega.
Recomendacin: Utilice el modulo delay para simular tiempo de transporte y mdulos hold y
signal para simular inventarios.
PRCTICA N 8
EXPLORANDO VISUAL BASIC CON ARENA.
1. OBJETIVO GENERAL
Que el estudiante obtenga un panorama del funcionamiento bsico del entorno del lenguaje de
programacin Visual Basic y de sus aplicaciones con la interfaz de Arena, en el desarrollo de
simulaciones de modelos en las que sea necesaria o de gran servicio su utilizacin.
2. OBJETIVOS ESPECFICOS
Que el estudiante explore el lenguaje Visual Basic, y comprenda lo esencial de sus
aplicaciones adquiriendo un conocimiento que le ser al til al momento de simular con Arena.
Que el estudiante pueda desarrollar modelado de sistemas sencillos utilizando la herramienta
Visual Basic integradas en Arena (VBA).
3. INTRODUCCIN A VBA
A diferencia de las dems aplicaciones de Arena vistas hasta el momento, la aplicacin de VBA
representa un grado mayor dificultad, esto porque implica una introduccin terica del
funcionamiento general de la aplicacin. Por sta razn antes de realizar una aplicacin se
describir brevemente los aspectos ms importantes del lenguaje de programacin.
3.1. QU ES VBA?
Es un componente de Arena bajo licencia de Microsoft Corporation. Es el mismo lenguaje de
programacin que ofrece Microsoft Office en sus aplicaciones, tales como Microsoft Word o
Excel. Con sta aplicacin es posible escribir cdigo personalizado que aumenta la lgica del
modelo y, por ende flexibiliza la simulacin para beneficio del usuario. Adems al integrar la
aplicacin VBA a Arena, los desarrolladores o usuarios pueden utilizar Arena con otros programas
que soportan la interface de programacin Microsoft ActiveX, que permite a las aplicaciones que
la poseen contralarse las unas a las otras.
La aplicacin VBA soporta acciones que son definidas por lo que se llama un modelo de objetos.
Los desarrolladores construyen este modelo de objetos para suministrar una interfaz de modo que
el usuario pueda realizar, mediante el lenguaje de programacin, lo que usualmente hara con el
mouse o teclado. El modelo de objetos incluye:
Una lista de objetos que se pueden controlar, tales como: hojas de clculo y grficos.
Las propiedades de estos objetos que se pueden examinar o modificar, tales como: el nombre
de los objetos y el valor dentro de determinado campo (una celda de una hoja de clculo).
Los mtodos que se pueden efectuar sobre los objetos o que stos pueden realizar, tales
como: crear o eliminar un objeto.
que
En el lado izquierdo se encuentra el panel Project (Proyecto) que muestra una lista de modelo
abiertos, conteniendo a su vez una lista de los objetos de Arena, siendo estos: Logic y
ThisDocument.
El objeto Logic no permite modificacin por parte del usuario; ste contiene las funciones,
subrutinas y variables que son convertidas a cdigo por parte de los mdulos de Arena, es decir,
que los mdulos sirven de interfaz del usuario con el editor de Visual Basic. El usuario no debe
escribir cdigo adicional en este objeto, ya que este espacio es utilizado exclusivamente por Arena
para escribir cdigo automticamente mientras se ejecuta el modelo.
El objeto ThisDocument es, como lo pone en evidencia su nombre (en castellano Este
documento), una referencia al modelo mismo. Permite modificacin mediante la introduccin de
propiedades y mtodos, que pueden se asociados con los mdulos de Arena. El objeto
ThisDocument posee una coleccin de eventos que contienen el cdigo VBA, segn David Kelton
et al. en el libro Simulacin con Software Arena, estos pueden ser catalogados en tres grandes
categoras, se presentan algunos de ellos en seguida:
Eventos previos a la ejecucin, como: DocumentOpen [AbrirDocumento] o DocumentSave
[GuardarDocumento].
Eventos de ejecucin iniciados por Arena, tales como: RunBegin [IniciarEjecucin],
RunBeginSimulation
[IniciarEjecucinDeSimulacin],
RunEndReplication
[FinalizarEjecucinDeReplicacin].
Eventos
de
ejecucin
[FuncinDelUsuario],
iniciados
por
el
VBA_Block_Fire
modelo/usuario,
como:
[VBA_Block_Disparar],
UserFuntion
OnKeystroke
[GolpeDeTeclaParaAccin].
En esta gua se le dar nfasis a lo eventos iniciados por la ejecucin de Arena. Cuando se inicia la
ejecucin del modelo Arena sigue una secuencia de eventos, en algunos de los cuales puede ser
introducido cdigo VBA para flexibilizar la simulacin. En caso de no existir cdigo VBA dentro de
dichos eventos, Arena simplemente contina la secuencia dando la impresin de que el evento no
existiera. Se muestra a continuacin la secuencia de eventos, en negrita tal como se definen en el
libro Simulacin con Software Arena, los eventos en los que es posible introducir cdigo VBA:
1. RunBegin (iniciarEjecucin)
2. Arena hace las verificaciones e inicializa el modelo
3. RunBeginSimulation (IniciarEjecucinDeSimulacin)
4. RunBeginReplication (IniciarEjecucinDeReplicacin)
5. Arena ejecuta la replicacin
6. RunEndReplication (FinalizarEjecucinDeReplicacin)
7. RunEndSimulation (FinalizarEjecucinSimulacin)
8. Arena termina la ejecucin de la simulacin
9. RunEnd (FinalizarEjecucin)
3.2.1.MODELLOGIC_RUNB
EGIN
En este evento es posible realizar cambios estructurales en la simulacin, como por ejemplo para
preguntar que valor de media el usuario desea asignar a la distribucin de probabilidad de arribos
del mdulo Create. Empero, dado que no se ha ejecutado la simulacin no es posible modificar
valores propios del tiempo de ejecucin como los atributos de las entidades.
3.2.2.ARENA HACE LAS VERIFICACIONES E INICIALIZA EL MODELO
En este momento en Arena, todas las variables tienen asignados sus valores iniciales, por
mencionar un ejemplo las capacidad de los recursos, pero no an no se han introducido entidades
al modelo.
3.2.3.MODELLOGIC_RUNBEGINSIMULATION
Es en este evento que se debe insertar cdigo VBA con el propsito que slo se ejecute una vez al
principio de la simulacin. Claro est, es necesario que el modelo no presente errores, de otra
manera no se ejecutara y Arena no llamar a ste evento. Puede ser utilizado para cargar
grandes cantidades de datos provenientes de fuentes externas tales como Excel, asignar valores a
las variables en el modelo de Arena, crear entidades, modificar las capacidades de recursos, etc.
3.2.4.MODELLOGIC_RUNBEGINREPLICATION
Durante la simulacin, al principio de cada rplica Arena llamar a este evento. Sus aplicaciones
son similares a las descritas en el evento anterior (ModelLogic_RunBeginSimulation), con la
excepcin que lo que se defina aqu se repetir en cada una de las rplicas programadas.
3.2.5.ARENA EJECUTA LA SIMULACIN
En este paso se ejecuta la simulacin del modelo, contemplando todo los que el usuario defini en
su desarrollo, se crean entidades, se toman y liberan recursos, las unidades salen del sistema.
Arena permite la introduccin de cdigo VBA por medio de sub-eventos como:
ModelLogic_UserFunction: se llama siempre que se hace referencia a la variable UF en la
lgica de Arena. Se podra utilizar este evento para realizar clculos complejos para la demora
de un proceso o el criterio de decisin.
ModelLogic_VBA_Block_Fire: se llama cuando una entidad pasa a travs de un mdulo VBA
(aparecen en el panel Blocks) en la lgica del modelo.
ModelLogic_OnKeystroke: Se llama siempre que el usuario golpee una tecla en el curso de
ejecucin de la simulacin.
ModelLogic_OnClearStatistics: se llama siempre que se eliminan las estadsticas, como
cuando el tiempo de simulacin llega al valor introducido para el periodo de calentamiento.
3.2.6.MODELLOGIC_RUNENDREPLICATION
Es llamado cuando cada rplica llega a su fin, por lo que si se suspende la simulacin antes de que
la rplica termine el evento no se ejecutar. Puede ser utilizado para almacenar la informacin
proveniente de cada rplica en un archivo externo.
3.2.7.MODELLOGIC_RUNENDSIMULATION
Este evento es llamado cuando finalice la simulacin, independientemente de cmo finalice sta.
Aqu todava siguen disponibles los datos del tiempo de ejecucin de la simulacin para la toma de
estadsticas.
3.2.8.ARENA TERMINA LA EJECUCIN DE LA SIMULACIN
En este evento Arena elimina todos los datos del tiempo de ejecucin de la
simulacin.
3.2.9.MODELLOGIC_RUNEND
En este evento no se puede tener acceso a la informacin de tiempo de ejecucin de la simulacin,
sin embargo, es posible introducir cdigo VBA a manera de un UserForm consultando si desea
ejecutar la simulacin de nuevo.
4. MODELO PROPUESTO
Para ejemplificar los conceptos anteriormente vertidos, se utilizar un enfoque orientado a la
utilizacin de las herramientas, no explicndolo mediante un caso prctico, sino describiendo
detalladamente los pasos para crear cdigo VBA satisfactoriamente en el Editor de Visual Basic.
El modelo que se propone deber ser capaz de realizar mediante la automatizacin en VBA las
siguientes acciones:
Desplegar un formulario, del estilo Userform, que permita la introduccin mediante un
campo de texto de la cantidad de entidades que entran simultneamente al sistema.
Cambiar el valor medio de la distribucin del tiempo entre arribos (el campo Value, del
cuadro de dilogo Create), por medio de la funcin de VBA UserFunction [UF()], de modo
que cuando la cantidad de entidades en lnea de espera alcance cierto nmero (para el
ejemplo 5 entidades en espera) el tiempo promedio entre arribos sea considerablemente
grande (para el ejemplo 1000). Esto permitir simular
entidades cuando alcanza una capacidad crtica en cola, pero que una vez se libere puede
seguir procesando entidades al mismo ritmo.
Para hacer ms asequibles lo conocimiento se utilizar un modelo sencillo del tipo: Create
ProcessDispose; con el que se ha trabajado previamente.
Con el propsito de simplificar la manipulacin mediante cdigo VBA del mdulo Create1 se
cambiar el nombre que ste tiene asignado, para ello se debe acceder al cuadro de dilogo de las
propiedades del mdulo, seleccinese el mdulo y luego presinese la combinacin de teclas Alt +
Enter. Una vez aparezca el cuadro de dilogo debe cambiarse en el campo Tag del nombre que
actualmente tiene (por ejemplo: Object.40) por la palabra Crear:
Ahora agrguese un cuadro de texto al formulario, para esto dese click al botn TextBox
luego dibjese el correspondiente cuadro de texto utilizando el puntero del mouse. Posteriormente
agrguese un botn de comando dndose click al botn CommandButton
y siguindose el
Set m = ThisDocument.Model
i = m.Modules.Find(smFindTag, "Crear") Set
Modulo = m.Modules(i) Modulo.Data(Batch
Size") = TextBox1.value Me.Hide
End Sub
Luego de escribirse el cdigo la ventana del Editor de Visual Basic la ventana deber verse como
la siguiente figura (para verse explicaciones de las lneas de cdigo se debe leer los comentarios
escritos en color verde):
Ntese que en el mtodo Data (que aparece en la lnea 8 de cdigo como Modulo.Data) aparece
el nombre Batch Size. En esa lnea de cdigo es donde se le dice a Arena a que campo debe
asignar el valor que se introduce en la en el cuadro de texto; como se habr apreciado ste nombre
es distinto del campo que se quiere modificar, esto es porque el mensaje que el campo muestra,
Entities per Arrival, no es el nombre subyacente del operando, es decir, el nombre con el que
VBA llama al campo no es el mismo que aparece en el cuadro de dilogo del mdulo.
Para saber el nombre verdadero del operando, se debe buscar en un archivo de texto que se
encuentra en el mismo directorio que todos los accesorios de Arena, para el caso como el mdulo
que se esta explorando es el Create que forma parte de la coleccin Basic Process, estar bajo
el nombre BasicProcess.txt . Para buscarlo se debe encontrar el directorio en que Arena fue
guardado, la ubicacin predeterminada es: Disco Local (C:) > Archivos de Programa> Rockwell
Software > Arena 12.0 > BasicProcess.txt . Una vez abierto el archivo el mdulo Create es el
primero que aparece en lista, el archivo lucir como la siguiente figura.
Como es posible distinguir, a la izquierda del archivo, aparecen los nombres de los operandos; y a
la derecha, mensajes con lo que aparecen los campos en el cuadro de dilogo de los mdulos.
Para asignar un valor al operando por medio de cdigo VBA, se debe hacer referencia al nombre
del operando y no a su mensaje. Es por esta razn que en el ejemplo que se trata, para asignar un
valor a Entities per Arrival se ha llamado a Batch size.
Aparecer el Editor de propiedades del Formulario. Cada campo representa una determinada
propiedad del formulario como: el color, el tipo y formato de letra, sus dimensiones, su nombre, etc.
Para propsito de sta gua se realizarn algunos cambios en los campos con el fin de ilustrar su
significado.
Colquese en el campo Caption y escrbase la frase Entidades por Arribo. Ntese que
esto cambia el ttulo del Formulario, mas no su nombre. La diferencia reside en que el ttulo
(Caption) es lo que muestra el encabezado del formulario, y el nombre (Name) es como
VBA reconoce al formulario (UserForm1).
Ahora seleccinese el botn de comando (CommandBottom1), el cuadro de propiedades
cambia automticamente al del botn de comando, e introduzca en el campo Caption la
palabra Aceptar.
4.5. CDIGO DEL EVENTO
Hasta este momento lo que se ha escrito en el editor Visual Basic, es el cdigo VBA que permitir
designar el nmero de entidades que arriban simultneamente, sin embargo, no se ha ordenado a
Arena cuando debe ejecutar ste cdigo. Para que el formulario aparezca al momento justo antes
que se ejecute la simulacin, es necesario recordar los conocimientos vistos en la introduccin a
VBA.
Como se recordar el evento en que es
ModelLogic_RunBegin; por lo que las lneas de cdigo debern ser introducidas en este evento.
Ahora bien, para poder acceder a este evento se debe primero dar doble clic al icono con el
nombre ThisDocument, ubicado en la ventana Project a izquierda del editor bajo el folder con
nombre Arena Objects.
Paso seguido seleccionar de la lista desplegable (combo box), que aparecen arriba a la izquierda
del espacio destinado para escribir el cdigo la opcin ModelLogic; despus en el combo box en
la parte superior derecha la opcin RunBegin, tal como se muestra a continuacin:
Hecho esto se proceder a escribir un cdigo VBA que llame al formulario en el momento antes
en que se ejecute la simulacin, para este propsito basta escribir el siguiente cdigo:
Cuando aparezca el cuadro de dilogo Expression Builder , en el cuadro de texto bajo el nombre
Current Expression escrbase la funcin UF(); posteriormente insrtese, dentro del parntesis de
la funcin, la expresin: NQ(Process 1.Queue). Para insertar la expresin vase
el rbol que
aparece bajo el nombre Expression Type, seleccinese Basic Process Variables > Queue >
Current Number In Queue, y presinese OK. La expresin terminada deber verse as:
funcin y que valores arrojar una vez sea ejecutada la simulacin, eso se describe en esta
seccin.
Accdase al editor Visual Basic, por alguno de los mtodos ya estudiados. Posteriormente, en la
ventana Project seleccinese el objeto de Arena ThisDocument
Al hacer dichas selecciones la primera lnea del cdigo ser automticamente escrita,
complemntese el cdigo como aparece en seguida:
5. EJERCICIOS PROPUESTOS
1.
Crese una expresin de tipo UserFunction (utilizando como base la estudiada en la gua)
que est en funcin de de la cantidad total de entidades en el proceso, a diferencia de las
entidades en cola como se hizo en el modelo propuesto.
PRCTICA N 9
UTILIZACIN DE LA HERRAMIENTA ARENA 3DPLAYER
1. OBJETIVO GENERAL
Que el estudiante conozca las herramientas necesarias y los procedimientos bsicos para editar un
modelo en Arena que permita observar la simulacin de dicho proceso en el editor de modelos en
3D.
2. OBJETIVOS ESPECFICOS
Que el alumno aprenda a crear los archivos en Arena, necesarios para editar los mdulos
en 3DPlayer
Que el alumno se familiarice con la herramienta 3DPlayer.
Que el alumno pueda ejecutar un modelo en 3D.
3. ARENA 3DPLAYER.
3DPlayer es una herramienta que permite editar vistas en 3D de los modelos creados en Arena.
Esta herramienta es muy importante ya que simplifica, mediante una interfaz grfica, la
comprensin de procesos utilizando dimensiones ms reales del plano en el que se desarrollan los
procesos a simular.
La interfaz de Arena 3DPlayer es muy similar a la de Arena. La ventana principal se divide en tres
partes:
Ventana de diseo: Esta es el rea en la cual de disea el modelo en 3D. Se muestra un plano
cuadrado el cual simula la superficie en la cual se colocan todos los elementos a utilizar. Para
facilitar la creacin de elementos, existe la opcin de navegar a travs del plano utilizando las
herramientas que cmara.
Barra de elementos: Esta es el rea en la cual se muestran todos los elementos que forman parte
de la simulacin como por ejemplo: recursos, estaciones, rutas, colas, etc.
Panel de propiedades: Esta es el rea en la cual se definen cada una de las propiedades de los
elementos que se quieren modificar.
Ventana de diseo
Barra
de
elementos
Panel de propiedades
Para ejecutar una animacin en Arena 3DPlayer se necesitan dos tipos de archivos, un Playback y
un Layout. Un Playback es un archivo en formato .pbf el cual se crea en Arena dentro de las
opciones de simulacin y en la cual se almacenan todas las estadsticas generadas durante la
simulacin del modelo. Un Layout es un archivo que se genera en Arena 3DPlayer o ya sea en
algn programa que maneje la extensin .cad; este archivo representa los elementos que se
observan en la simulacin ya sea un cliente, un mquina, un recurso, etc.
4. MODELO PROPUESTO
En un centro de comida rpida, en el rea de autoservicios, los clientes pasan por tres procesos
para poder recibir su orden. Primero, los clientes llegan a la ventanilla en la cual piden su orden,
este proceso puede tomar de 2 a 5 minutos. Luego, los clientes pasan a la siguiente ventanilla en
la cual pagan por lo que han ordenado, este proceso suele tomar entre 1 a 2 minutos. El ltimo
paso del proceso es entregarle la orden completa al cliente, dicho proceso suele tomar entre 0 y 6
minutos. El tiempo que tarda un cliente en pasar de una ventanilla a otra es aproximadamente de
30 segundos. La tasa de arribos de los clientes al centro de comida se distribuye
exponencialmente con una media de 10 minutos.
En la lgica de mdulo anterior se introducen dos nuevos mdulos del panel Advance Transfer a
continuacin se presenta una pequea descripcin de ambos:
Mdulo Route: Este mdulo transfiere una entidad a una estacin especfica o en la
siguiente estacin, en la secuencia que ha sido definida. Permite al modelador representar
una el caso en que una entidad, requiere tiempo para desplazarse entre estaciones porque
estas no se encuentran adyacentes, adems de definir la trayectoria que seguir.
Mdulo Station: Representa una locacin, ya sea lgica o fsica, donde ocurre un
proceso. Tambin se utiliza para almacenar la informacin de todos los tiempos y costos
acumulados por las entidades en su paso por esa estacin, de manera que es posible
generar reportes con estos datos.
Los mdulos Station que se han colocado en el modelo representarn las ventanillas en cada uno
de los procesos. Las entidades llegan a este mdulo usando el mdulo Route que tenga de destino
dicho mdulo. Se definir cada una de los mdulos Station de la siguiente manera:
Station 1:
Station 2:
Station 3:
Los mdulos Route simularn el recorrido de la entidad de una ventanilla a otra sin agregar tiempo
a los procesos. A estos mdulos se les deber definir el destino al cual sern enviadas las
entidades que lleguen a dicho mdulo. Se definir cada uno de los mdulos Route como se
muestra a continuacin:
Route 1
Route 2
Route 3
Los mdulos Process se definirn de la siguiente forma (Tmense en cuenta que en cada proceso
se define un recurso diferente):
Tomar orden del cliente.
Pago de la orden.
Una vez definido cada uno de los mdulos, el sistema se ver de la siguiente forma:
b. Generar el Playback.
El Playback es el archivo que Arena genera para que Arena 3Dplayer reconoce todos los atributos
de dicho modelo.
Para generar este archivo se debe modificar la ventana Setup del modelo en la opcin de Run
Control. Se debe marcar la opcin Generate Playback File as como se muestra en la siguiente
figura:
Luego, se establecer la longitud de la simulacin para 50 horas y se correr el modelo hasta que
finalice la simulacin. Una vez terminen las 50 horas, guardar el archivo para que los ltimos
cambios queden almacenados en el archivo que se acaba de generar.
Luego aparecer una ventana en la cual se tendr que buscar el Playback. Ese archivo se crea en
la misma direccin en la que se tiene el archivo .doe del modelo del cual se est simulando.
Una vez se abra el Playback, aparecer en la ventana principal ciertos elementos en letras rojas lo
cual indica que el modelo est incompleto y se tienen que definir dichos elementos para poder
observar la simulacin.
En este modelo, se deben definir las estaciones; representando las tres ventanillas, las colas en
cada uno de los procesos y los recursos que son los operarios en cada uno de los procesos.
Se comenzar por definir las estaciones, dar doble clic en Ventanilla1 para poder ubicar dicho
mdulo en el plano. Al dar doble clic aparecer una ventana en la cual se deber colocar el nombre
de la estacin que se desea ubicar, para este caso se colocar la que aparece por defecto y luego
dar OK en la ventana.
Luego se tendr que ubicar la estacin que representar la ventanilla 1. Dar clic en el plano para
ubicar la estacin la cual es representada por un bloque de color blanco.
Seguir el mismo procedimiento para colocar las dos ventanillas restantes. El plano deber verse de
la siguiente forma:
El siguiente paso ser colocar las colas en cada uno de los procesos. Dar doble clic en la cola que
se desea colocar en el plano; aparecer una ventana con sus respectivos parmetros. Dar clic en
el botn OK ya que no se modificarn dichos parmetros.
Luego, nuevamente en el plano se deber trazar una lnea simulando la lnea de cola en la cual
esperaran los clientes. La cola debe quedar como se muestra en la figura siguiente:
Seguir el mismo procedimiento para colocar las dos colas restantes. El modelo debe quedar de la
siguiente forma:
El siguiente elemento a definir sern los recursos, para ellos dar doble clic en el nombre del
recurso que se desea colocar en el plano. Luego aparece una ventana con el nombre de dicho
recurso; dar clic en OK para colocar el recurso en el plano. El recurso se ubica de la misma forma
en la que se ubicaron las estaciones. El primer recurso queda ubicado de la siguiente forma:
Seguir el mismo procedimiento para colocar los otros dos recursos en el plano. El modelo debe
quedar de la siguiente forma:
Utilizando el cursor para navegar a travs del plano se puede observar el modelo desde otra
perspectiva.
El ltimo paso es definir las rutas por las cuales se movern las entidades a travs del sistema. Dar
clic en el icono Route
para definir una ruta. Luego aparecer una ventana en la cual de define
el origen y destino de la ruta. Dar en el botn OK para definir la ruta.
De clic en la estacin que se desea establecer como origen y luego dar clic en la estacin que se
desea establecer como destino.
Seguir el mismo procedimiento para unir mediante una ruta a las dos estaciones restantes.
Una vez definido cada uno de los elementos y las rutas en el sistema, solo queda ejecutar el
modelo. Al igual que en Arena, dar clic en el botn
En este modelo solo se ha editado los elementos necesarios para la simulacin, pero Arena
3DPlayer tiene una herramienta de dibujo la cual sirve para disear un entorno mucho ms realista.
6. PROBLEMAS PROPUESTOS
1.
Utilizando el modelo anterior, se desea agregar el rea que corresponde a los clientes que
llegan al establecimiento sin vehculo. Utilizar un sistema de caja en la cual un operario
tomar la orden del cliente y recibir el pago correspondiente y otro operario ser el
encargado de entregar la orden al cliente. Utilizar los mismos tiempos de arribo y de
procesos.
2.
PRCTICA N 10
ANLISIS DE ALTERNATIVAS: OUTPUT ANALYZER Y PROCESS ANALYZER.
1. OBJETIVO GENERAL
Presentar al estudiante dos herramientas dentro del paquete de Arena, el Output Analyzer y el
Process Analyzer, que permiten la evaluacin de distintas alternativas o escenarios, capacitndole
para seleccionar la ms adecuada en base a mtodos estadsticos.
2. OBJETIVOS ESPECFICOS
Que el estudiante aprenda a utilizar ambas herramientas, y ofrecerle los criterios de decisin
para elegir cul de ellas es la ms adecuada para un problema particular.
Informar al alumno de las limitantes que tienen los algoritmos en los cuales se basan las
herramientas para elegir el escenario ms conveniente, permitindole llegar a conclusiones
informadas aun cuando la respuesta del programa no sea concluyente.
Que el estudiante se capaz de generar desde un modelo de Arena, los archivos necesarios
para la evaluacin de alternativas en las dos herramientas presentadas.
3. ANALISIS DE ALTERNATIVAS
Uno de los propsitos de la simulacin es optimizar los sistemas mediante una comparacin de
alternativas utilizando mtodos estadsticos. Estos mtodos se tienen ciertas limitantes a la hora de
evaluar grandes cantidades de informacin por lo cual se hace indispensable contar con un
sistema que realice dichos anlisis.
El Output Analyzer y el Process Analyzer son una de las herramientas que proporciona Arena que
sirven para el propsito de evaluar escenarios en base a criterios especificados por el evaluador
para determinar la mejor opcin ante dos o ms alternativas.
El Output Analyzer nicamente puede evaluar dos alternativas como limitantes y su anlisis lo hace
basndose en criterios previamente establecidos mediante una funcin la cual se crea utilizando la
herramienta de Expression Builder en el mdulo Statistic.
El Process Analyzer a diferencia del Output Analyzer, puede comparar ms de dos alternativas y
hacer un anlisis global de todas las estadsticas generadas en el modelo.
Ambas herramientas se encuentran en la carpeta de Arena la cual puede ser ubicada desde el
men principal as como se muestra en la figura siguiente:
4. MODELO PROPUESTO
Una cooperativa lanzara prximamente una nueva lnea de crditos para sus cooperantes. Se ha
proyectado que la llegada de solicitudes para este tipo de crditos es cada 30 minutos de acuerdo
con una distribucin exponencial.
Cuando llegan las solicitudes estas son recibidas por un practicante el cual revisa el monto
solicitado y las enva al departamento apropiado. El proceso de revisin al practicante le toma
entre dos y cinco minutos pero usualmente lo realiza en tres.
Aproximadamente el 25% de las solicitudes son de un monto superior a $2000. Estas solicitudes se
envan al departamento apropiado para su aprobacin antes de proceder al desembolso. Este
proceso puede durar hasta 5 horas aunque casi siempre dura 2.5 horas y lo menos que puede
durar son 2. Solamente el 50% de las solicitudes son aprobadas y se envan a un agente de
desembolsos.
Las solicitudes de menos de $2000 se envan directamente a un agente de desembolsos.
Una vez que se le asigna una solicitud a un agente de desembolsos, este lo procesa entre 30 y 60
minutos.
La cooperativa planea contratar para la realizacin de sus funciones a un practicante y cuatro
ejecutivos con los salarios que se muestran en la siguiente tabla:
Empleado
Salario/hora
Practicante
$0.5
Imelda
$5
Pablo
$5
Juan
$3
Salvador
$3
Se desean evaluar las siguientes alternativas, para determinar aquella que genere los menores
costos y tiempos promedio en espera.
Alternativa
Departamento de
Departamento de
aprobacin
desembolso
Pablo
Imelda
Juan
Salvador
Imelda
Juan
Pablo
Salvador
5. OUTPUT ANALYZER
5.1. ELABORACION DEL MODELO A UTILIZAR
Primero se colocarn los mdulos a utilizar en este modelo. La lgica a seguir tiene un esquema
como se muestra a continuacin:
Antes de definir cada mdulo, se crearn dos Set de recursos los cuales trabajarn en el proceso
de aprobacin de solicitud y en el proceso de desembolso.
y en la hoja de clculo
agregar los nombres de los recursos y sus respectivos salarios, la hoja de clculo debe quedar de
la siguiente forma:
Para el Set 2:
Una vez definidos los Set, se comenzar a definir cada uno de los mdulos.
El siguiente mdulo a definir es el mdulo Decide el cual enviara las solicitudes menor a $2000 a
su respectivo proceso. El mdulo queda definido de la siguiente forma:
Para el Process 3:
Seguido del proceso de aprobacin, se definir el mdulo Decide que determina cuales son las
entidades que han sido aceptadas o no. Dicho mdulo se define de la siguiente forma:
Por ltimo, los mdulos Dispose, para las solicitudes que saldrn del sistema, quedan definidas de
la siguiente manera:
Para Dispose 1:
Para Dispose 2:
Una vez definidos todos los mdulos, el sistema debe quedar de la siguiente
manera:
Como siguiente paso se definirn los archivos que se generarn en Arena los cuales analizarn las
estadsticas obtenidas. Para este ejemplo, se debe hacer una comparacin entre los costos y el
tiempo de espera de los clientes utilizando la herramienta del Output Analyzer.
Ingresar en el mdulo Statistic en la barra de Advanced Process. Luego se deben generar dos
estadsticas. El tipo de estadstica ser Output. Aparecer una columna en la cual se debe colocar
la expresin la cual se generar desde la simulacin misma. Para crear la expresin para los
costos de los recursos, dar clic derecho sobre la columna Expression y escoger la opcin Build
Expression
Luego, en el editor de expresiones, se deben sumar todos los costos relacionados a los recursos
que estn involucrados en el sistema. Para ubicar los costos de recursos dar clic en el siguiente
directorio Basic Process Variable > Resource > Cost > Total Busy Cost / Total Idle Cost (si el lector
lo desea puede profundizar ms en el significado y posibles aplicaciones de estas expresiones
utilizando el buscador en el men Help > Arena Help). Se debern agregar los costos de los
recursos cuando est ocupado y cuando esta ocioso ya que el costo por hora es fijo para cada
recurso y se deber especificar el costo de cada uno de los recursos.
Para los costos de los recursos, la ecuacin ser la siguiente:
Para el costo de cada operario:
ResBusyCost(Practicante) + ResBusyCost(Imelda) + ResBusyCost(Juan) + ResBusyCost(Pablo) +
ResBusyCost(Salvador) + ResIdleCost(Imelda) + ResIdleCost(Juan) + ResIdleCost(Pablo) +
ResIdleCost(Practicante) + ResIdleCost(Salvador)
Adems de los costos, otra estadstica que se desea comparar es el tiempo en espera de los
clientes en cola.
Para el tiempo en cola:
TAVG(Aprobacion.Queue.WaitingTime) +
TAVG(Realizar
desembolso.Queue.WaitingTime) +
TAVG(Revision de monto.Queue.WaitingTime)
Una vez definidas las expresiones, la ventana de Statistic queda de la siguiente manera:
El siguiente paso ser, definir los Output File que se crearn con las estadsticas que se han
definido; para ello, dar clic en la celda Output file y luego seleccionar el directorio en el cual se
desea guardar dicho archivo y colocarle un nombre diferente a cada uno ya que esos archivos
sern importados desde otra herramienta para su anlisis correspondiente.
Antes de ejecutar el modelo, guardar el archivo con el nombre Alternativa 1.
Debido a que se desea una mayor precisin en los resultados, se simular un da y se realizarn
100 rplicas.
Una vez termina la simulacin, el siguiente paso ser, crear la alternativa B en la cual Pablo pasa a
trabajar con Imelda. Para esta modificacin, abrir el mdulo Set y mover de un Set a otro el recurso
Pablo.
Luego se guardar el nuevo archivo con el nombre de Alternativa 2 y los archivos Output debern
ser modificados para que al ejecutar el modelo, se creen las 2 alternativas por separado.
5.2. INGRESAR AL OUTPUT ANALYZER
El siguiente paso, despus de ejecutar las dos alternativas, es ingresar en Output Analyzer desde
el men inicio.
Dar clic en Nuevo para crear un nuevo proyecto, aparecer la ventana siguiente:
Dar clic en Add para agregar las dos alternativas que se desean evaluar. En la ventana de
bsqueda se debe seleccionar la opcin que permite visualizar todas las clases de archivos y luego
ubicarse en la carpeta en la cual se guardaron los archivos Output. Una vez agregadas ambas
alternativas la ventana se ver de la siguiente forma:
Para este ejemplo se dejara 0.95 el nivel de confianza. Dar clic en Add para agregar las
alternativas a evaluar. Aparecer la ventana siguiente:
Mediante la prueba de hiptesis de medias, con un 95% de confianza, se ha determinado que las
medias son iguales. En este caso se ha evaluado solamente los costos totales, para evaluar el
tiempo en cola se debe seguir el mismo proceso con la diferencia que al seleccionar las
alternativas, se deben colocar las que corresponden al tiempo en cola.
6. PROCESS ANALYZER
6.1. CREACIN DEL ARCHIVO .p
Como primer paso, para cada una de las alternativas se debe crear un archivo .p o utilizar uno
existente, el cual se gener al ejecutar el modelo y se encuentra en la misma ubicacin que el
archivo .doe. (Otra forma de crearlo es: men Run Check Model, o se presiona F4, debe recordar
que las alternativas se encuentran en archivos diferentes y se crear un archivo .p para cada una
por separado.):
Una vez se ingresado al Process Analyzer, se proceder a crear un archivo nuevo (File New).
En la ventana aparecer una rejilla con varios campos, en la cual el ttulo principal ser Scenario
Properties, el cual hace referencia las propiedades de los escenarios.
En la casilla Program File se debe buscar la ubicacin del archivo .p, presionando el botn
Browse, para la primera alternativa y as sucesivamente se crean los tres
escenarios:
Para la segunda respuesta en el men insert response se abre el rbol User Specified y luego
se elige Tiempo de espera por cliente, manteniendo siempre el nmero de posiciones decimales.
Debern aparecer dos columnas de respuestas en la rejilla.
Nota: El proyecto debe ser guardado, de lo contrario al momento de ejecutar los escenarios, el
Process Analyzer pedir que sea guardado.
6.5. EJECUCIN DE LOS ESCENARIOS
Para ejecutar los escenarios se deben seleccionar, posicionndose el puntero en el extremo de la
rejilla con los nmeros correspondientes a los escenarios, aparecer una flecha horizontal de color
negro, de clic sobre el nmero 1 arrastre hacia abajo.
Luego se sigue el men Run Go o se da clic al botn play , aparecer la siguiente ventana
que se muestra en la siguiente figura, clic en el botn ok para ejecutar.
Una vez finalizada la ejecucin de los escenarios la columna de replicas y las columnas de
respuestas mostrarn los valores correspondientes a cada alternativa:
La columna con el ttulo reps, indica el nmero de rplicas que se han ejecutado, en el transcurso
de la ejecucin se puede apreciar como aumenta el nmero de rplicas hasta completar la cantidad
especificada (100 rplicas) en el archivo .doe de cada alternativa; la longitud de cada rplica (8
horas) tambin ha sido definida en este mismo archivo.
Se dejar marcada la casilla de la opcin compare the average values of a response across
scenarios, en el tipo de grfico se puede elegir cualquier grfico, en ste caso se elegir la opcin
En esta ventana se puede elegir ambas respuestas para ser presentadas en un solo grfico, sin
embargo se utilizar solo una, ya que esto permitir elegir la mejor alternativa posteriormente. Clic
en siguiente, cambiar a la siguiente ventana, que es el paso 3 del grfico.
En esta ventana se puede modificar los nombres que llevarn los ejes, as como el ttulo. Clic en
siguiente, cambiar a la ventana que se presenta a continuacin, el paso 4 del asistente.
En esta ventana elegir la opcin Identify Best Scenarios, y por tratarse de costos totales se debe
seleccionar la opcin Smaller is better, debido a que se busca minimizar costos. Para una vista
previa de cual escenario es el mejor se da clic en el botn show best scenarios.
Como se puede ver en la ventana, segn el algoritmo utilizado por el Process Analyzer no se
puede asegurar que ninguna alternativa sea mejor en base a costos, ya que no varan
significativamente uno de otro.
En la ventana se muestra un campo con el nombre de Error Tolerance, que especfica la distancia
(expresada en unidades de la respuesta) que se utiliza para dejar fuera las alternativas inferiores,
representa una medida de la tolerancia ha dejar fuera la verdadera mejor alternativa. Si se le
asigna un valor pequeo, menos alternativas sern eliminadas (como es el caso); si se le asigna un
valor mayor al predeterminado, menos escenarios sern elegidos como mejores, pero se correr
el riesgo de elegir un mejor escenario cuando la diferencia entre estos no sea estadsticamente
significativa.
Una manera de solventar el problema anterior es correr un mayor nmero de rplicas, lo cual
traer menor variabilidad, sin embargo, si an se mantiene el problema significa que,
realmente, los
escenarios son muy similares entre s, por lo que correspondera evaluar otros distintos para
obtener un resultado ms satisfactorio.
Para esta gua no se buscar corregir el resultado inicial del algoritmo, mas el lector est en
libertad de intentar alguna de las modificaciones. Luego al dar clic en finalizar, se generar el
grfico que sigue:
Al dar clic en el botn Show best scenarios muestra que el escenario 3, es decir, la alternativa 3,
es la ms conveniente segn el criterio de tiempo de espera.
El grfico muestra en color rojo la columna que corresponde al mejor escenario, que como se
puede apreciar es el escenario 3.
7. EJERCICIOS PROPUESTOS
1.
PRCTICA N 11
UTILIZACIN DE LOS MDULOS DE FLUIDOS.
1. OBJETIVO GENERAL
Que el estudiante adquiera la habilidad para utilizar apropiadamente los mdulos del panel Flow
Process, de manera que se capaz de simular procesos o sistemas que impliquen el flujo de
sustancias en tuberas o su respectivo almacenamiento en unidades contenedoras.
2. OBJETIVOS ESPECFICOS
Introducir los conceptos relativos a la simulacin de procesos que conlleven flujo de
sustancias.
Que estudiante comprenda el funcionamiento de los mdulos del panel Flow
Process.
Que luego de la prctica el alumno se capaz de construir la lgica de un modelo que lleva
implcito el almacenamiento y transferencia de sustancias.
Que el estudiante pueda aplicar las tcnicas de animacin correspondientes a la herramienta
level, lo que le permitir animar el flujo de sustancias en los dispositivos de almacenamientos
(tanques) y tuberas.
Que el alumno pueda interpretar y analizar la informacin que le proporciona Arena mediante
los informes, particularmente los relacionados con los mdulos de flujo.
3. MODELO PROPUESTO
En un proceso industrial se necesitan dos substancias para obtener la mezcla comercializable.
Ambas substancias se almacenan en recipientes separados. El proceso consiste en descargar en
un recipiente para mezcla 75 Galones de substancia A, luego sta se somete a un proceso con
una duracin de 20 minutos, para posteriormente aadir 15 Galones de la substancia B. Una vez
que la mezcla tenga todos sus componentes, se somete otro proceso con una duracin de 30
minutos, para en seguida descargar la mezcla y dejar el tanque de mezcla disponible para ejecutar
el proceso de nuevo. El proceso global tarda 1 hora 30 minutos.
El contenido de los tanques con substancia A (Tanque A) y con substancia B (Tanque B), es
vigilado mediante
Ahora inserte el mdulo Tank del panel recin adjuntado dndose clic sobre l y luego
arrastrndolo hacia la hoja de trabajo.
Luego reptase el procedimiento dos veces hasta tener tres tanques con su respectiva animacin
(el cilindro plateado con un rectngulo de color azul dentro) y dispngalos de manera que dos
queden a la izquierda de la pantalla, con los tanques a la derecha del mdulo; y uno a la derecha
de la pantalla, con su respectivo tanque a la izquierda del mdulo. La hoja de trabajo lucir de
sta manera:
El cuadro de dilogo se debe llenar acorde con la informacin del tanque correspondiente
proporcionada arriba. Este tanque es el de mezcla, por tanto llnese as:
En el campo Name introdzcase el nombre de Mezcla
En el campo Capacity se debe escribir 100.0 (es la opcin predeterminada)
En el campo Initial level se debe poner 0.0 (predeterminado)
Para el campo Regulators, debe darse clic en botn a la derecha Add, aparecer otro
cuadro de dilogo. Debe seleccionarse el nombre que aparecer como predeterminado
Mezcla.Regulator 1 , en Maximum Rate el valor de 5.0 y en el campo Units djese la
opcin predeterminada en minutos (Per minute), de clic en OK como sigue:
Ahora recurdese que el tanque tiene dos reguladores por donde entra la sustancia de los
otros dos tanques y por dnde es descargada la mezcla, por lo que debe agregrsele otro
regulador (el cual se ocupar como regulador de salida. Siempre dentro Regulators de clic
en Add de nuevo, y llnese los campos como sigue:
Por ltimo de clic en OK a ambos cuadros de dilogo. El cuadro de dilogo Tank lucir de esta
manera una vez completo:
Como se habr notado con sta herramienta es posible disear los tanques que Arena
automticamente anexa en la hoja de trabajo junto al mdulo Tank, pero esta vez se utilizar para
simular las tuberas. Para lograr esto en la seccin Type seleccinese la opcin Flow, la
estructura del cuadro de dilogo variar un poco para propsitos de la animacin de la tubera.
Modifquese el cuadro de dilogo de la siguiente manera:
1. En el campo # Flow Arrows cmbiese el valor a 5 (recurdese que la velocidad de flujo es de
5 galones por minuto). ste valor indica el nmero de flechas que recorrern la tubera
mientras se desarrolla la simulacin, a mayor nmero de flechas dar la impresin de que
fluye ms rpido.
2.
Sobre el campo con el nombre Rate Expression de clic derecho y seleccinese la opcin
Build Expression, en el cuadro de dilogo Expression Builder eljase del rbol de opciones
Expression Type la expresin , que se encuentra en el subconjunto Regulator, que a la
vez esta dentro del conjunto Flow Process Variables (ruta Flow Process Variables >
Regulator > Flow Rate Between Regulators).
3.
La ventana del cuadro de dilogo Level, una vez complementada con la informacin aparece
abajo.
Cuando se le de clic al botn OK aparecer el puntero en forma de cruz, de manera que se pueda
dibujar la tubera con el mouse; para ello, de clic al costado derecho del dibujo de animacin del
Tanque A y luego doble clic al costado izquierdo de Mezcla, y as habr terminado el diseo de
esta tubera.
3.10.
Siguiendo el mismo procedimiento para sta tubera, pero ajustando los parmetros acorde a los
del Tanque B tendramos complementados los cuadros de dialogo de la siguiente manera:
Expression Builder
Level
Despus de haberse dibujado ambas tuberas, la hoja de trabajo se ver de la manera siguiente:
3.11.
Hasta este punto slo se ha descrito en el modelo cuales son los tanques que existen, sus
reguladores, el sentido de flujo, velocidad de flujo, etc.; sin embargo, no le se ha dejado explcita la
lgica que seguir, es decir, cuando comenzar el flujo, los tanques involucrados, la cantidad de
substancia que fluye, y otras particularidades de la secuencia de simulacin. En esta seccin se
explicar como desarrollar dicha lgica para el ejemplo propuesto.
Para facilitar el desarrollo de sta gua primero se insertarn todos lo mdulos necesarios para
desarrollar la lgica, y luego de tener todo el diagrama del modelo se proceder a establecer los
parmetros de ste.
3.12.
Al costado inferior derecho (slo una sugerencia por esttica, los mdulos pueden ser colocados
en cualquier lugar de la hoja de trabajo), introdzcanse y conctese entre s, es esta secuencia, los
siguientes mdulos:
1. Del panel Basic Process introduzca un mdulo Create.
2.
Del panel Flow Process introduzca un mdulo del tipo Seize Regulator.
3.
4.
Del panel Flow Process introduzca un mdulo del tipo Release Regulator.
7. Conctese, con la herramienta Connect, el primer mdulo Delay insertado con el mdulo
Seize Regulator del grupo de mdulos duplicados.
8. Reptase el mismo procedimiento para duplicar mdulos Seize Regulator, Flow y Release
Regulator; luego conctese al resto del modelo.
9.
Ahora introdzcase un mdulo Dispose para recibir las entidades generadas. Con esto se ha
finalizado la rama principal de la lgica.
10. El siguiente paso consiste en construir la lgica del funcionamiento de los sensores, para ello
introdzcase un mdulo Sensor.
Este mdulo permite el monitoreo de las operaciones
de un tanque, y puede habilitarse para ejecutar un comando, segn lo requiera el modelo. Se
profundizara ms adelante en l.
11. Duplquese la ltima lnea del proceso creado arriba, desde Seize Regulator hasta Dispose
y se coloca a un lado del mdulo Sensor. Por el momento no es posible conectar el mdulo
Sensor al mdulo Seize Regulator, se conectar luego.
12. Como siguiente paso se duplicar la lnea de lgica del modelo recin creado.
3.13.
LGICA PRINCIPAL.
Como se ha realizado ya el mapa del modelo, es momento para introducir la informacin de
acuerdo con las condiciones de comportamiento del modelo tal como fueron estipuladas en el
problema. Solamente se mostrarn los cuadros de dilogo correspondientes a los primeros
mdulos de la lgica del modelo para ilustrar como se deben llenar.
Primer mdulo Seize Regulator. El mdulo debe ser nombrado Captura Regulador 1. Se
debe declarar los nombres de los reguladores que se capturarn, en ste caso
Mezcla.Regulator 1 y Tanque A.Regulator 1, de clic en el botn Add y procdase a
elegirlos de la lista desplegable. Los cuadros de dilogo se vern as:
Primer mdulo Delay. ste es el mdulo que simular la espera de 20 minutos, como tal
se nombrar Espera 20 minutos.
DEL TANQUE A.
En este apartado se introducir la informacin a los mdulos que se encargarn de ejecutar la
accin de llenado del Tanque A, una vez ste haya alcanzado su nivel de contenido mnimo
establecido en el problema. Se utilizar la primera lnea de lgica del modelo que contiene el
mdulo Sensor, de arriba hacia abajo. De igual forma que el apartado anterior slo se mostrarn
las imgenes de los cuadros de dilogo correspondientes a los mdulos que an no se han
abordado.
Mdulo Sensor. Este mdulo detecta cuando se ha alcanzado un nivel determinado del
contenido en tanque. En el campo Name se escribir el nombre Sensor A; el campo con
lista desplegable Tank Name se seleccionar Tanque A; los dems campos se dejarn
como tal, pero la casilla Create Discrete Entity debe ser seleccionada, esto permitir que
cuando se alcance el nivel programado en el sensor se gener una entidad que de origen al
resto de la lgica del evento de llenado del Tanque A.
El campo Location Type, indica el criterio que seguir el mdulo para percibir cuando el nivel
deseado, ya sea un nivel especfico o un porcentaje del contenido total; el campo level indica el
nivel que activar el sensor; el campo Crossing Direction, en este caso seleccionado Negative,
indica que el sensor esperar que el nivel alcance ese nivel o inferior para activarse; el campo
Initial State slo habilita al mdulo; mientas que la casilla Animation es para establecer si se
desea o no, poner la animacin de un generador de luz que aparece sobre el mdulo
automticamente, que mediante un cdigo de luz establece si el sensor se ha activado.
DEL TANQUE B.
Ahora se ingresar a los mdulos la informacin de acuerdo a lo pautado por el problema. Se
utilizar la lnea de lgica de modelo restante, el procedimiento es similar al descrito arriba para el
Tanque A, por lo que no se ha considerado necesario agregar imgenes explicativas.
Mdulo Sensor. Se le dar el nombre de Sensor B. En el nombre del tanque (Tank
Name) seleccinese el Tanque B, y en le nivel 600. No debe olvidarse de marcar la casilla
Create Discrete Entity.
Mdulo Seize Regulator de sensor B. Le pondr el nombre de Captura Regulador B. Se
capturar el regulador de llenado del Tanque B, Tanque B.Regulator 2.
Mdulo Flow del sensor B. Se nombrar al mdulo Llenado de Tanque B. El tipo de flujo
ser Add; el nombre del regulador de destino Tanque B.Regulator 2, como es de esperar,
ya que es el nico capturado; y la cantidad de substancia depositada dentro del tanque ser
300.
Mdulo Release Regulator del sensor B. Recibir el nombre de Libera Regulador B. Se
liberar el regulador Tanque B.Regulator 2.
Mdulo Dispose del sensor B. En este mdulo se deposita la entidad generada por el
mdulo Sensor para finalizar la sucesin de eventos para llenar el Tanque B.
Paso seguido, seleccinese la pestaa Replication Parameters. Para la sta ejecucin slo se
desarrollar una rplica, con una duracin de 8 horas y las unidades de tiempo estarn en minutos.
Segn los parmetros establecidos se simularan ochos horas de los ciclos de llenado y vaciado de
los tanques, esto no permitir observar al Sensor B entrar en accin, sin embargo, puede
ejecutarse de nuevo el modelo con una duracin de rplica ms larga. La ventana correspondiente
a la pestaa lucir tal como sigue.
En ltima instancia para poder apreciar la animacin del movimiento de substancias a travs de
tuberas, as como el llenado y el vaciado de los tanques, se har otra modificacin al cuadro de
dilogo Run Setup, esta vez en la pestaa Run Speed. Para que Arena no ejecute el perodo
del tiempo que permitira observar las animaciones instantneamente (lo que resultara en una
especie de salto de las animaciones), se seleccionar la casilla Update Simulation Time Every, y
el campo con el nombre Time Units escrbase la cantidad 0.01, esto permitir apreciar la
animacin sin cambiar la velocidad de la simulacin. La ventana de la pestaa lucir como la que
sigue.
5. ANLISIS DE REPORTES
El enfoque de esta seccin ser en el anlisis exclusivo del reporte Tank generado, ste es muy
sencillo, bsicamente se refiere a la utilizacin del los tanques: Mezcla, Tanque A y Tanque B.
El reporte se divide en tres secciones:
Level. Proporciona tres datos para los tres tanques: el nivel de contenido promedio
(Average), el nivel mnimo (Minimum Value) y el nivel mximo de contenido (Maximum
Value). Como se ver en el reporte el mayor nivel promedio fue el del Tanque B, lo que se
esperaba porque era el de mayor capacidad y no tena mucha utilizacin, ya que slo
demandaba 25 galones cada 90 minutos; al observar el reporte se nota que el Tanque B fue el
nico que no alcanz nivel de 0, esto porque la duracin de la simulacin no lo permita;
adems como era de esperarse la mxima cantidad de substancia es la capacidad mxima de
cada tanque.
Total Quantity Added. Esta seccin reporta la cantidad total de substancia aadida a los
tanques, es decir, la cantidad de substancia que los respectivos sensores ordenan que se
aada a los tanques para llenarlos una vez se ha alcazado el lmite establecido. Al observar
las cifras se puede constatar que el tanque Mezcla fue completamente llenado 5 veces(la
simulacin se interumpio antes que se llenar las 6 veces), el Tanque A fue llenado tan slo una
vez y el Tanque B ninguna.
Total Quantity Removed. Esta seccin indica la cantidad de substancia que ha sido
removida de cada tanque. Se puede ver, como ya se haba resaltado, que el tanque Mezcla
se vaci 5 veces, que al Tanque A le fueron removidos 450 galones (capacidad para 300
galones) y al Tanque B se le removieron 125 galones de su capacidad total de 900 galones.
PROBLEMA
PROPUESTO
1. Una comunidad obtiene su agua potable de un pozo comn de con una capacidad 1000
litros.
La comunidad consta de 3 casas todas con demandas de agua diferentes, como sigue:
Casa A. Consume 5 litros cada vez que abre el grifo, y el comportamiento de grifo sigue
una distribucin normal con una media de 2 horas y una desviacin estndar de media
hora.
Casa B. Consume de 13 a 18 litros con una distribucin uniforme, cada 6
horas.
Casa C. Su consumo se comporta como una distribucin triangular con los valores de
(10,
15,20), cada 4 horas.
Modele las condiciones de la comunidad y determine durante cunto tiempo se esperara que
el contenido del pozo se agotar si el pozo estaba lleno al inicio del perodo.
Nota: Se debe asumir que todos los grifos abren por primera vez cuando inicia
la simulacin y que solamente se abren un grifo por casa a la vez. Adems para
terminar la simulacin justo cuando ya el pozo est vaco, constryase una
expresin dentro del campo Terminating Condition en el men Run > Setup >
Replication Parameters.
C e n t r a l Tel e f n i c a : 2 6 6 1 - 4 4 4 4 e x t 1 2 8 , F a x : 2 6 6 1 - 2 7 6 9 , A p d o . : 1 4 8 - 5 4 0 0 P u n t a r e n a s
E -ma il : jf a l v a ra d o @ u tn .a c .c r ; w ww.u t n .a c .c r