Sie sind auf Seite 1von 62

Manual condensado de EXTEND

Lluis M. Pl y Sara V. Rodrguez


Dep. Matemtica
Universidad de Lleida


Simulacin con Extend Curso 2007-2008




CONTENIDO

1. INTRODUCCIN.................................................................................................... 3
2. EXTEND. ................................................................................................................. 4
2.1. QU ES EXTEND?......................................................................................... 4
2.2. CMO ENTRAR A EXTEND?...................................................................... 4
2.3. ENTORNO. ....................................................................................................... 5
2.4. USOS DE EXTEND........................................................................................ 11
2.5. VENTAJAS E INCONVENIENTES AL SIMULAR CON EXTEND. ......... 11
3. SIMULACIN DE EVENTOS EN TIEMPO CONTINUO. ................................ 12
3.1. LIBRERA GENRICA.................................................................................. 12
3.2. EJEMPLOS. .................................................................................................... 20
4. SIMULACIN DE EVENTOS DISCRETOS....................................................... 23
4.1. LIBRERA DE EVENTOS DISCRETOS. ..................................................... 23
CONECTORES COMUNES EN LOS BLOQUES DE LA LIBRERA DE
EVENTOS DISCRETOS. ...................................................................................... 30
4.2. EJEMPLOS. .................................................................................................... 32
5. CORRER UNA SIMULACIN CON EXTEND. ................................................. 36
6. OTRAS LIBRERIAS DE UTILIDAD. .................................................................. 38
ANEJO A.................................................................................................................... 40
PROBLEMAS DE EVENTOS EN TIEMPO CONTINUO. ................................. 40
PROBLEMAS DE EVENTOS EN TIEMPO DISCRETO.................................... 54

Simulacin con Extend Curso 2007-2008


1. INTRODUCCIN

En una empresa, industria o negocio, evaluar opciones para tomar una decisin no es
una tarea fcil. En un mundo en el que cada da se diversifica la variedad de alternativas
y se intensifica el ritmo competitivo, la exigencia por resultados rpidos y anticipados
requiere enfoques y herramientas innovadoras y potentes.

Ejemplo de ello se puede apreciar en el siguiente caso: el restaurante Can Ninot goza de
gran popularidad, la demanda de clientes que requieren su servicio es cada vez mayor,
la administracin prev que dentro de poco tiempo sern ineficientes las instalaciones
con las que se cuenta, hecho que podra afectar la calidad del servicio que lo distingue
como el mejor restaurante de la ciudad. Previendo esto se quiere implantar una
estrategia de gestin efectiva para continuar con el xito del negocio. Sabiendo que si
no se acta, el restaurante Chiness aprovechar cualquier oportunidad para quitarle
clientela.

En este sentido la cuestin que se plantea es Qu decisin tomar dentro del plan de
accin?: Ampliar las instalaciones, cambiar el diseo de las mesas, requerir ms
camareros, ampliar el horario, realizar reservas, pagar overbooking, incrementar los
precios.
Cual es la ms indicada de acuerdo al presupuesto?, Existe limitante de espacio?,
Cual de ellas arroja el mejor beneficio?.

El mundo actual es muy competitivo, por lo tanto tenemos que buscar herramientas de
apoyo para tomar decisiones efectivas y eficaces.

En este contexto la simulacin constituye una metodologa capaz de dar respuesta a
estas cuestiones. La simulacin puede ayudar a predecir el impacto de determinadas
acciones sin incurrir en los riesgos, compromisos y plazos de una implementacin real.
En entornos competitivos, la disponibilidad de herramientas de apoyo a la toma de
decisiones resulta importante para toma de decisiones efectivas y eficaces.

Antiguamente el empleo de la simulacin era reducido o nulo. Ello debido al
inconveniente computacional, que imposibilitaba obtener respuestas oportunas a las
interrogantes planteadas y/o realizar modificaciones del modelo, as como a la
complejidad en el algoritmo para simular, por ello solo expertos en materia de
programacin podan hacerlo. No obstante ahora con el desarrollo de la tecnologa estos
inconvenientes se han ido disminuyendo.

Hay una gran variedad de entornos que ayudan al desarrollo de la simulacin, como
ejemplo se puede citar: Microdinamo, Stella, Extend, Arena, etc. En este texto nos
centraremos en la introduccin al uso de EXTEND.


Simulacin con Extend Curso 2007-2008
2. Visin general de EXTEND

2.1. Qu es extend?
Extend es una herramienta de simulacin que permite visualizar en forma intuitiva el
comportamiento de un sistema dinmico. Basado en una arquitectura de bloques
preprogramados en ambiente grfico que permite reproducir procesos y operaciones en
una amplia gama de aplicaciones, sin necesidad de programacin alguna.
Se entender por simulacin la definicin dada por Shannon: proceso de disear un
modelo de un sistema real y realizar experimentos con l para entender el
comportamiento del sistema o evaluar varias estrategias (dentro de los lmites impuestos
por un criterio o conjunto de criterios) para la operacin del sistema.

Para ejemplificar lo anterior se analizar la cola creada en una verdulera (Fig.1).

Qu elementos comprenden el sistema?
1. Dependiente que atiende a los clientes.
2. Cliente que espera ser atendido.
3. Entrada y salida a la verdulera.












SISTEMA MODELO EN EXTEND

Fig. 1. Representacin de la cola presente en una verdulera.


2.2. Cmo entrar a Extend?
Una manera de entrar a Extend es dar doble-clic al icono de la aplicacin de Extend
(Fig. 2).



Fig. 2. cono de acceso directo para la aplicacin de Extend.

Una vez abierto aparece la ventana Demo.mox (Fig. 3), la cual pone a disposicin una
amplia gama de ejemplos de diversos sistemas para observarlos, analizarlos y
Simulacin con Extend Curso 2007-2008
estudiarlos. En una primera toma de contacto, en caso de no requerir dicha informacin
bastar con cerrar la ventana.















Fig. 3. Ventana Demo.mox.

Para empezar a trabajar se ha de abrir algn modelo, nuevo, si se quiere construir uno, o
guardado si ya existe.

2.3. Entorno
Hay tres tipos de documentos en Extend: Modelos, libreras y ficheros de texto.

2.3.1. MODELOS

El modelo esta compuesto por un conjunto de bloques enlazados a travs de sus
conectores por medio de conexiones que representan el flujo de informacin. Cada
bloque contiene la informacin procesal as como datos de entrada o resultados. Una
vez creado el modelo, este puede ser modificarlo mediante la agregacin o eliminacin
de bloques, moviendo conexiones o cambiando datos del bloque. Cuando se quiere
insertar un bloque al modelo, se copia directamente de la librera donde este contenido
el bloque.

Extend cuenta con algunos ejemplos de modelos en la carpeta correspondiente
(File|Open|Examples). En ella existe una amplia gama de ejemplos que pueden servir
como referencia para los modelos que se pretendan construir, ofreciendo un panorama
de lo que se puede hacer con Extend en la simulacin de modelos.


2.3.2. BLOQUES

Se puede definir como bloque a la representacin pictogrfica (por medio de iconos) de
una funcin. As cada bloque contiene en su estructura un programa donde se especifica
la accin o proceso que debe realizar. El bloque es el elemento bsico de un modelo en
Extend.

Simulacin con Extend Curso 2007-2008
Para que actu dentro del modelo deber recibir informacin ya sea mediante el ingreso
directo de datos a su dilogo de entrada y/o utilizando el conector de entrada, dicha
informacin ser procesada por el programa que contiene en su estructura, emitiendo as
una salida o resultado, disponible en los dilogos de salida y/o en el conector de salida,
de esta manera podr existir un intercambio de informacin de bloque a bloque si se
establece una conexin.

Partes de un bloque. Cada bloque esta formado por una serie de mecanismos bsicos
como son:
PARTE DESCRIPCIN
Dilogo
Es la ventana que se abre cuando se da doble clic sobre el icono del
bloque. El dilogo permite introducir informacin al bloque, as como
tambin reportar resultados.

Cdigo
ModL
ModL es el lenguaje de programacin que hace que el bloque trabaje. El
programa lee informacin de los conectores, dilogos y del ambiente del
modelo produciendo as una salida que puede ser usada por otros
bloques. Un bloque puede tambin preguntar y controlar otros bloques
en el modelo a travs de su cdigo.
Icono
El icono es la representacin pictogrfica del bloque. Se puede dibujar el
icono con el dibujo de Extend, o con cualquier otro programa de dibujo,
o copiando un icono de otro ambiente.
Animacin
Es una parte animada del icono, que solo se puede ver si se activa la
casilla de Show Animation mientras se corre la simulacin. La
simulacin puede ser mostrada sobre el bloque del icono o podra
mostrarse tambin fuera de l.

Conectores
Los conectores de entrada y salida del bloque. Estos se encuentran en el
icono y transmiten la informacin hacia y/o del cdigo del programa.
Los bloques pueden tambin transmitir informacin de forma no visible
sin usar conectores, a travs de un bloque de mensaje y variables
globales.

Texto de
ayuda
Para acceder a la ayuda se debe dar clic en el botn inferior izquierdo
que aparece en el dilogo de cada bloque. La ayuda explica de forma
resumida para que sirve cada bloque, sus conectores, cuales son las
entradas y salidas, etc.

Dilogo

La mayor parte de los bloques tienen un dilogo asociado con ellos. Una de las
funciones de los dilogos es introducir valores y ajustar parmetros, adems de ver los
resultados de las corridas de simulacin.

Para abrir el dilogo de un bloque, se deber presionar dos veces el ratn sobre el icono
del bloque.

Se pueden dejar dilogos abiertos mientras se esta corriendo la simulacin (aunque esto
reduce la velocidad) as se puede ver como varan algunas variables a medida que
evoluciona la simulacin. Esto puede resultar til para mostrar valores que se deseen
controlar durante la simulacin. Adems tambin es posible modificar el valor de los
parmetros de un dilogo mientras se corre la simulacin.

Simulacin con Extend Curso 2007-2008
Un dilogo puede ser muy simple con poca informacin o ms complejo con diferentes
pestaas y varios parmetros e incluso tablas. En general siempre aparecen los botones
para aceptar (OK) o cancelar (Cancel).

Resumiendo se dir que los dilogos son los mecanismos tiles para:

1. Ingresar datos al bloque del modelo. Por ejemplo introducir el contenido inicial en el
bloque Accumulate (Fig. 9).







Fig. 9. Dilogo del bloque Accumulate.

2. Reportar resultados. Por ejemplo en la pestaa de resultados del bloque Queue
FIFO (Fig. 10).








Fig. 10. Dilogo del bloque de la cola FIFO.

3. Realizar comentarios o asignar diferentes imgenes para la animacin.

Nota: Si se ha conectado una entrada y tambin a su vez se ha introducido un valor para
esa entrada en el dilogo esta ser omitida ya que el valor del conector siempre
sobrescribir el valor del dilogo.

Conectores y conexiones.

La mayor parte de bloques en Extend tienen conectores de entrada y salida,
representados por pequeos cuadrados conectados a cada lado del bloque. De manera
visual se puede observar la diferencia entre el conector de entrada y el conector de
salida de un bloque ya que stos ltimos son representados con una lnea ms obscura
(Fig. 11).







Fig. 11. Conectores de entrada y salida.

Simulacin con Extend Curso 2007-2008
La informacin que fluye dentro del bloque va del conector de entrada al conector de
salida.

Se tiene tres tipos de conectores:
Conectores que transportan valores.
Conectores que transportan tems.
Conector universal, que puede transportar tanto tems como valores.

Los conectores que transportan valores son representados por pequeos cuadros
dibujados con lnea sencilla, en cambio los conectores que transportan tems son
representados por pequeos cuadros dibujados con lneas dobles, y el conector universal
es representado por un cuadrado dentro de un crculo, como se puede apreciar en la Fig.
12.








Fig. 12. Representacin de los diversos conectores.

Los bloques de la librera de eventos discretos tambin contienen conectores de valor,
pero sus conectores principales son los conectores de entrada y salida que pasan
entidades (llamados tems).

El conector de salida admite enlaces a diferentes bloques. En cambio el conector de
entrada slo admite un enlace de conexin.

Para enlazar los bloques a travs de los conectores se utilizan lneas llamadas
conexiones, estas muestran el flujo de informacin del bloque a travs del modelo.

Como se observa en la figura las conexiones de modelos de eventos en tiempo continuo
se caracterizan por ser lneas simples, y realizar un flujo lgico de valores. En cambio
en modelos de eventos en tiempo discretos el flujo lgico es a travs de tems y las
conexiones de este tipo de modelo son dobles. (Fig. 13.)











Fig. 13. Representacin de conexiones para bloques de modelos de evento continuo y discreto.

Simulacin con Extend Curso 2007-2008

2.3.3. LIBRERA

Una librera bsicamente se describe como un almacn de bloques. Extend cuenta con
un gran nmero de libreras las cuales incluyen bloques que son los elementos que
sirven para crear modelos de forma gil y rpida.

Como libreras bsicas de Extend cabe destacar a la librera genrica y a la librera de
eventos discretos. No obstante existen libreras complementarias como Manufacturing,
BPR, Plotter, Animation, entre otras. Estas libreras en conjunto permiten modelar un
importante nmero de procesos sin escribir ninguna ecuacin.

Por otra parte existe la posibilidad de crear nuevos bloques, o modificar los ya
existentes y a su vez guardarlos en libreras nuevas o ya existentes.

CMO ABRIR UNA LIBRERA?
Para trabajar con Extend y poder crear modelos es necesario tener acceso a los bloques
que se van a utilizar en la construccin del modelo. Como esos bloques se guardan en
libreras, estas deben ser abiertas previamente para poder tener acceso.

1. Dar clic en el men Library de la barra de comandos.
2. Seleccionar Open library (Fig. 4).







Fig. 4. Open Library de la barra de comandos.


3. Seleccionar del catlogo de libreras disponibles en Extend la que se requiera usar.
Por ejemplo la librera Generic. Dar clic en el botn Abrir (Fig. 5).












Fig. 5. Ventana Abrir, muestra las libreras existentes en Extend.

4. Dar clic en Library, Generic.lix, Open Library Windows y aparecer la
ventana de la librera con los respectivos bloques, como se muestra en la fig. 6.

Simulacin con Extend Curso 2007-2008











Fig. 6. Librera Generic.

CMO CREAR UNA LIBRERA?
El objetivo de crear una librera es reservar un espacio donde guardar bloques propios
que se puedan necesitar en la creacin de modelos particulares.

Una vez abierto el programa de Extend:
1. Dar clic en el men Library de la barra de comandos.
2. Seleccionar New Library, ver Fig. 7.








Fig. 7. Men Library de la barra de comandos.

3. Introducir el nombre del archivo.










Fig. 8. Ventana Create New Library.

4. Guardar.


2.3.4. FICHEROS DE TEXTO.

Los ficheros de texto almacenan datos de una forma que puede ser leda por casi
cualquier aplicacin. Los ficheros de texto son especialmente usados para importar
Simulacin con Extend Curso 2007-2008
largas sumas de datos dentro del modelo, por ejemplo de una hoja de clculo, o exportar
resultados o informes a partir de la ejecucin de un modelo.


2.4. USOS DE EXTEND.
Extend es una herramienta avanzada de simulacin que puede usarse para las tareas
propias de la simulacin como:
Predecir el curso y los resultados de ciertas acciones.
Entender porque ocurren los eventos observados.
Explorar los efectos de las modificaciones.
Identificar reas problemticas antes de la implementacin.
Confirmar que todas las variables son conocidas.
Evaluar ideas e identificar eficiencias.
Obtener ideas y estimular el pensamiento creativo.
Comunicar la integridad y factibilidad de los planes.

2.4.1. VENTAJAS DE EXTEND.
Realizar una interfase grfica mostrando las relaciones en el sistema que se esta
modelando.
Animar el modelo, para mejorar la presentacin.
Descomposicin jerrquica de los modelos, permitiendo que un sistema complejo
sea fcil de construir y entender.
Probar de manera rpida todas las suposiciones o alternativas del modelo ya que se
puede cambiar los valores de manera rpida y eficiente.
Reportes para presentaciones y anlisis profundos.
Disponibilidad para analizar costos.
Optimizacin Evolucionaria, Monte Carlo, batch mode y anlisis de sensibilidad
para sistemas ptimos.
Disponibilidad para ajustar parmetros mientras la simulacin esta corriendo.
2.5.2. INCONVENIENTES DE EXTEND

El principal inconveniente de Extend es que no es un programa libre, aunque la versin
DEMO es muy potente.
Otra desventaja sera que no se trata de un software orientado a un rea de simulacin
especfica sino que se compone de libreras generales que permitirn tratar problemas a
nivel general.






Simulacin con Extend Curso 2007-2008
3. SIMULACIN DE EVENTOS EN TIEMPO CONTINUO.

La simulacin clsica de eventos es generalmente dividida en dos categoras: eventos en
tiempo continuo y eventos en tiempo discreto. Una caracterstica propia de la
simulacin de eventos continuos representada por el paso del tiempo continuo es que los
valores cambian conforme cambia el tiempo (incrementos constantes), en cambio en
simulaciones de eventos discretos representadas por el paso de tiempo discreto, las
entidades del modelo cambian de estado basados en la ocurrencia de los eventos
(incrementos variables). De manera general, en Extend se usa la librera genrica,
Generic.mox, para modelar eventos continuos como por ejemplo un juego de azar.

3.1. LIBRERA GENRICA.
La librera Genrica puede definirse como un almacn de bloques con funcionalidades
especficas, pensadas para su uso en modelos de eventos en tiempo continuo, como
puede ser un icono que arroje valores aleatorios, o bien un icono que almacene valores
en cualquier momento.

BLOQUES DE LA LIBRERA GENRICA.
Una vez abierta la librera genrica (ver seccin 2.3.2.) aparecer la lista de bloques que
se muestra en la Figura 14.













Fig. 14. Bloques de la Librera Genrica.
stos pueden ser divididos de acuerdo a las funciones que realizan: Series, decisiones,
acumuladores, entradas y salidas, matemticas, estadsticos. A continuacin se definen
cada uno de ellos:
Vector/Arrays: Almacenan, accesan a datos globales.
Series Funcin


Global Array
Permite el acceso a vectores globales de Extend definidos por el
usuario. Los valores de los vectores globales estn disponibles en
cualquier parte del modelo. Cualquier bloque de Vector Global puede
tener acceso a l. La fila y columna del conector especifican la clula
en la serie para el valor de entrada o salida del conector.
Simulacin con Extend Curso 2007-2008


Global Array
Manager
Crea, redimensiona, suprime y visualiza los vectores globales de
Extend. Estos pueden ser usados para transferir valores de un punto a
otro en el modelo o acumular la informacin. Los vectores
manejados por este bloque pueden ser nmeros enteros o reales. Cada
serie global es referida por un nombre nico y puede tener cualquier
nmero de filas, y hasta 255 columnas.

Decisiones/ Decisions: deciden que valor usar o qu camino tomar.
Decisiones Funcin


Decision
Representa una decisin lgica basada en la evaluacin de una
relacin definida de forma interna a partir de los enlaces del bloque.
En esencia se compara el valor de A con B cuando existe, o con una
constante cuando no existe. El resultado es 1 0 segn sea verdadero
o falso el resultado de la evaluacin.


Select Input
Selecciona su salida entre dos entradas basados en un valor umbral.
Acta como un interruptor. La entrada superior es usada cuando el
valor del conector de T es menor que el valor crtico definido en el
dilogo; la entrada inferior es usada cuando el valor del conector de
T es mayor que o igual al valor crtico.


Select Input (5)
Selecciona su salida segn el valor del conector de T. La entrada
superior es seleccionada si el conector de T es 1, y la inferior si el
conector de T es 5. El dilogo tambin nos permite especificar un
valor de salida de ningn valor o de 0 si el valor en la T es fuera del
rango de 1 a 5.



Select output
Pasa el valor de entrada a uno de los dos conectores de salida basado
en un valor umbral. Es decir el conector de entrada selecciona el
conector de salida comparando el valor de T a un valor crtico
especificado en el dilogo. El conector de salida superior es usado
cuando el valor del conector T es menor que el valor crtico, de lo
contrario el conector de salida inferior es usado. El valor de T por
defecto es 0.5.



Select Output (5)
Pasa el valor de entrada a una de las cinco salidas segn el valor del
conector de T. La salida superior es seleccionada si el conector de T
es 1 y la salida inferior es seleccionada si su valor es 5. Para los
conectores que no son seleccionados, el dilogo le deja especificar un
valor de salida de novalue, 0 o de una repeticin del ltimo valor de
ellos a la salida.

Simulacin con Extend Curso 2007-2008

Acumuladores/Holding: Acumulan o almacenan valores.
Acomuladores Funcin



Accumulate
Acumula los valores del conector de entrada de cada paso o
acontecimiento y muestra el contenido total en el conector de salida.
Esto es esencialmente una operacin de suma sin el retraso.
El bloque puede ser usado como un almacn, depsito o reserva.



Holding Tank
Acumula el total de los valores de entrada, adems nos permite
liberar una cantidad si esta disponible. La cantidad a liberar se
especifica en el conector want; tal cantidad sale por el conector get.
Se puede decidir si la salida puede tener valores negativos; pero por
defecto no se permite.


Holding Tank
(Indexed)
Este bloque representa una serie de Holding tanks. Este acumula los
valores de entrada, permite que el contenido corriente sea reducido
una cierta cantidad y reportar el contenido de los tanques. El tank
especfico es controlado por su conector toggle. El tank activo es
controlado por el conector de entrada el cual especifica el ndice del
tanque a ser usado. Ms de 100 Holding Tank pueden ser indexados.




Retain
Da como salida el valor inicial colocado en su dilogo hasta que el
conector de T es Verdadero (mayor que 0.5) entonces la salida es el
valor de su entrada mientras la T es Verdadera. Este bloque conserva
el valor corriente en su entrada cuando la T se hace Falsa. Mientras la
T es Falsa, el valor que retiene es la salida. Si la T se hace Verdadera
otra vez, las salidas de bloque y conserva el valor corriente en su
entrada. El valor inicial debe ser especificado en el dilogo (por
defecto el valor es 0). El valor conservado y la salida es cambiado al
valor de la entrada solo cuando el valor en el conector de T es
VERDADERO (mayor que 0.5).



Wait Time
Retiene las entradas para una cantidad especificada de tiempo (el
retraso). Este bloque no debera ser usado en un modelo de
acontecimiento discreto.
Este bloque trabaja como un transportador con ranuras: los valores
entran en una ranura, la posicin de avance basada en un avance en el
tiempo de simulacin, luego salen cuando su ranura alcanza el final
del transportador. El nmero de ranuras es igual al retraso.

Simulacin con Extend Curso 2007-2008
Entradas y salidas /Input and output: Leen y escriben filas o generan valores.
Input/output Funcin


Constant
Genera un valor constante en cada paso. Se especifica dicho valor en
el dilogo (por defecto el valor es de 1). Si el conector de entrada es
conectado, el valor de entrada es aadido al valor constante en el
dilogo. Este bloque es tpicamente usado para colocar el valor de las
entradas a otros bloques.



File Input
Lee los datos de un archivo de texto en forma de tabla de hasta 5
columnas. En el dilogo se ha de indicar el fichero. Puede ser
ficheros de texto u hojas de clculo. Los valores de cada columna se
suministran de forma ordenada por cada conector. Este bloque puede
ser usado para el control de los parmetros por muchos bloques en un
modelo o muchas corridas del modelo.



File Output
Escribe los datos de los conectores de entrada a un archivo de texto.
Los datos del modelo pueden ser entradas a travs de los conectores
de entrada durante la simulacin. Se especifica en el dilogo si el
archivo es escrito al final de la simulacin o cuando se pulsa el botn
escribir en el dilogo, debiendo indicar el nombre del fichero.


Help
Este bloque es obsoleto. Usa un nuevo bloque jerrquico con una
descripcin de texto en l. Muestra ayuda del texto. Puedes usar este
bloque para documentar tu modelo. Incluye informacin acerca de
que es lo que el modelo hace, que impacto especfico tienen los
bloques o parmetros sobre el modelo.


Input Data
Contiene una tabla de datos con tiempo y valores. Permite interpolar
valores para tiempos no tabulados a partir de los valores existentes.


Input
Function
Genera una funcin dependiente del tiempo. Un parmetro de retraso
es incluido para la mayor parte de funciones as que la salida podra
ser retardada un tiempo especfico.



Input Random
Number
Genera nmeros aleatorios basados en la distribucin seleccionada.
Se puede usar el dilogo o los tres conectores para especificar
argumentos para las distribuciones. Puede seleccionar el tipo de
distribucin: Uniforme, Beta, Binomial, Poisson, Triangular
Simulacin con Extend Curso 2007-2008
Entradas y salidas /Input and output: Leen y escriben filas o generan valores.
Input/output Funcin



Read Out
Muestra el valor en el conector de entrada en cada paso de la
simulacin. Este bloque viene al frente de la pantalla durante la
corrida de la simulacin si la opcin de "Open dilogo" es
seleccionado, an delante de cualquier plotters. Esto es til para
eliminar fallos del modelo. El campo de Nticks en el dilogo permite
colocar un retraso en ticks (60ths de un segundo) para que el bloque
haga una pausa mostrando cada nmero.



Prompt
Apunta para un valor a la salida si las entradas encuentran una
prueba. Hasta que la prueba sea encontrada, la salida de bloque es un
valor especificado en el dilogo. Cuando la prueba es encontrada, el
bloque apunta para un nuevo valor de salida, entonces la salida es
aquel valor. Se puede ingresar un mensaje en el dilogo, tecleando
sobre el valor por defecto. Si usted pulsa el botn cancelar en el
prompt, la simulacin es parada. Note que la salida de este bloque
puede ser cualquier valor, mientras que el bloque de decisin saca
slo 1 0.



Sound
Emite un sonido cuando el valor de entrada esta por encima o por
debajo de un valor crtico especificado en el dilogo. El tipo de
sonido se especifica en el dilogo (por defecto es clic). Tambin
permite personalizar sonidos almacenados en ficheros generados en
la carpeta de Extensiones de Extend.


Stop
Detiene la simulacin cuando la entrada esta por encima o por debajo
del valor crtico colocado en el dilogo. Este bloque es usado para
finalizar la simulacin antes del final especificado en el dilogo de
Simulation Setup.



System
Variable
Permite recuperar algunas variables del sistema y ser usadas en el
modelo. Las variables que se pueden usar son: nmero de corrida
corriente, paso corriente, tiempo corriente, tiempo final, nmero de
corridas, nmero de pasos, tiempo inicial, tiempo de paso.



TimeOut
Salidas de un valor verdadero (1.0) en tiempo especfico, y valor
falso (0.0) en todos los otros tiempos. En el dilogo, se especifica el
tiempo entre valores outputting verdaderos (el retraso o la
interrupcin); el valor del dilogo es anulado por el conector de D. El
conector de R reinicializa el bloque de regreso al inicio del perodo
de retraso.

Simulacin con Extend Curso 2007-2008
Matemtica/Math: Calculando valores.
Math Funcin


Suma
Este bloque suma las tres entradas de la derecha del bloque y saca el
total.


Conversin
Function
Este bloque arroja una salida que es la entrada modificada por una
funcin. Las funciones que se pueden seleccionar del dilogo son:
seno, coseno, arcoseno, arcocoseno, arcotangente



Conversin
Table
Este bloque acta como una funcin de conversin discreta. Contiene
una tabla de valores (x dentro y fuera) que son usados para calcular
de forma aproximada o interpolar el valor de salida para la entrada
dada. La tabla se puede escribir en el dilogo, importado de un
archivo, o pegada del portapapeles que usa el comando en el Men
edicin. Los valores en la tabla no tienen que estar en el orden
clasificado.


Divide
Divide la entrada superior por el valor inferior. Puedes escoger si el
botn inferior de campo 0 una salida de no valor o parar la
simulacin con un mensaje de error.



Equation
Arroja los resultados de una ecuacin ingresada en el dilogo, a partir
de 5 variables como mximo. La ecuacin debe ser de la forma
Results=Frmula. Se puede usar los operadores y funciones de
construccin de Extend, y alguno de todos los valores de entrada
como parte de la ecuacin. Cada entrada debe nombrarse en el
dilogo en orden para usarse en la ecuacin. Extend advertir si es
usada en la ecuacin pero no esta conectada.


Exponent
Determina la potencia del valor x de acuerdo a el valor y. puedes
especificar el valor de y a travs del conector de entrada o en el
dilogo. El conector anula el valor del dilogo.



Financials
Calcula tambin el inters, periodo, pago, valor presente, valor
futuro, basado sobre los otros cuatro valores, se puede especificar los
valores en el dilogo, o en los cuatro conectores de entrada pasa
saber el valor. Si se conecta los conectores de entrada, se debe
controlar la simulacin para calcular el quinto valor.


Simulacin con Extend Curso 2007-2008
Matemtica/Math: Calculando valores.
Math Funcin


Integrate
Integra la entrada sobre el tiempo. Si el presente, un valor de inicio es
aadido a las salidas. Este bloque puede ser usado en un modelo de
eventos discretos.


Limits
Permite limitar los valores de salida a un rango de valores. El rango
es especificado por un conjunto mximo y mnimo en el dilogo. El
bloque pasa la entrada a travs de la salida a no ser que la entrada
exceda el lmite dado mximo o se caiga debajo del lmite dado
mnimo, en el caso de que la salida es aquel lmite.


Logical AND
Desarrolla una operacin lgica AND sobre las entradas. Si cada una
de las dos entradas es mayor que 0.5, la salida es 1, si ninguna o solo
una entrada es mayor que 0.5, la salida es 0.


Logical NOT
Desarrolla una operacin lgica NOT sobre las entradas. Si la entrada
es mayor a 0.5, la salida es 0, de otra manera es 1.


Logical OR
Desarrolla una operacin lgica OR sobre las entradas. Si cualquiera
de las entradas es mayor que 0.5, la salida es 1, si ninguna de las
salidas es mayor que 0.5, la salida es 0.


Max and Min
Determina el mximo y mnimo valor de entre los 5 valores de
entrada. El dilogo muestra el valor mximo y mnimo y el conector
de entrada de donde ellos vienen. El bloque de salida del valor
mximo y mnimo y su respectivo nmero de conector.


Multiply
Este bloque multiplica las entradas.


Subtrac
Resta el botn inferior del botn superior.


Threshold
Tiene una salida de 0 hasta que la entrada excede el valor del umbral;
cuando la entrada excede el umbral, la salida es la diferencia entre la
entrada y el umbral. El valor del umbral viene del dilogo a no ser
que el T conector sea usado.

Time Unit
Convierte el valor en el conector de entrada de una unidad de tiempo
a otra.

Simulacin con Extend Curso 2007-2008
Estadsticos/Statistics: Calcula la media y la varianza.

Statics Funcin

Clear
m
v
M
V
SD

Mean &
Variance
Calcula la media, la varianza, y la desviacin estndar de los valores
de entrada durante la simulacin. Si una entrada es un no valor, este
es ignorado y no afecta al clculo.
Dependiendo de la seleccin en el dilogo, la varianza es calculada
como:
Suma de (entradas validas-media)^2 / (nmero de entradas) o
Suma de (entradas validas-media)^2 / (nmero de entradas-1)
La varianza es computada usando 1/(N-1) como un factor promedio.
Simulacin con Extend Curso 2007-2008
3.2. EJEMPLOS

PROBLEMA 3.1. PROYECTO

Suponer un proyecto que consta de 6 actividades. Cada actividad tiene un costo
asociado del que se conoce su rango posible de variacin (ver tabla 1). A partir de cada
actividad se puede construir la funcin de costos total como una suma de los costos de
cada actividad. Asumiremos que el costo de cada actividad es independiente y que no
hay interacciones.

Tabla 1: Costos mximos y mnimos por actividad.

ACTIVIDAD 1 2 3 4 5 6 TOTAL
Mnimo 10000 15000 7500 4800 20000 5000 62300
Mximo 20000 15000 12000 6200 25000 7000 85200

SOLUCIN.

Se necesita un bloque que permita representar el rango de variacin del costo de cada
actividad, en este caso el bloque Input Random Number genera nmeros aleatorios
acorde a una distribucin. En este sentido la distribucin real uniforme permite generar
nmeros aleatorios de acuerdo a un rango de valores, tal y como se desarrolla cada
actividad, por lo que este bloque coincide perfectamente con el requerimiento para
poder modelar el proyecto (Fig. 15).

















Fig. 15. Bloque Input Random Number.

La actividad que no tiene variacin en sus costes, puede ser modelada con el bloque
constant.

Para sumar el valor de las actividades se cuenta con un bloque add, el cual solo
permite la entrada de tres valores por lo que deberemos sumar por partes.

Simulacin con Extend Curso 2007-2008
De esta forma el modelo queda de la siguiente manera (Fig. 16):


















Fig. 16. Solucin del modelo del problema 1: Proyecto.

A continuacin se citan diversos problemas, la solucin aparece en el Anexo A.

PROBLEMA 3.2. CAJA DE AHORRO.

Juan desea planear sus vacaciones para el prximo ao por lo cual ha decidido guardar
850 en la caja de ahorros SR Direct la cual ofrece una tasa de inters compuesto del
6% nominal en el primer mes y del 1% nominal en los meses restantes. Adems prev
unos gastos de 50 /mes. De esta manera Juan esta interesado en saber cuanto dinero
disponible tendr dentro de 12 meses.

PROBLEMA 3.3. JUEGO DE AZAR.

Se propone participar en un juego de azar que consiste en el lanzamiento de monedas.
El juego es el siguiente: se debe pagar 1 por cada lanzamiento, el jugador gana 10
cuando obtiene 3 caras seguidas.

Interesa o no participar?.

PROBLEMA 3.4. PRESA/CAZADOR.

El problema consiste en construir la dinmica de un pequeo ecosistema compuesto de
liebres y linces. Cada poblacin tiene un efecto directo sobre otro: el alimento de los
linces son las liebres, as que la disminucin de la poblacin de liebres causa un
decremento en la poblacin de linces, etc.

Algunos supuestos son:

El ecosistema inicial de 100 hectreas contiene 6000 liebres y 125 linces.
Simulacin con Extend Curso 2007-2008
En promedio cada liebre se reproduce a razn de 1.25 descendientes por ao y cada
lince a 0.25 descendientes por ao.
Se supondr que la liebre tiene suficiente suministro de comida, y que slo causan
muerte debido a la depredacin del lince.
El rango de caza del lince es de 1 hectrea y su nica fuente de comida es la liebre.
El nmero de liebres cazadas dependen de su densidad en el ecosistema y del
nmero de linces.
El rango de mortalidad del lince depende de la densidad de liebres segn la tabla
adjunta:
Densidad Mortalidad
0 0,5
10 0,45
20 0,4
30 0,35
40 0,3
50 0,25
60 0,2
70 0,15
80 0,1
90 0,05
100 0,005
100000 0,005

No hay factores externos (tales como el tiempo de un ao) los cuales afecten el
rango en el cual la poblacin cambie.
El modelo final corre para 24 aos.
Simulacin con Extend Curso 2007-2008


4. SIMULACIN DE EVENTOS DISCRETOS.
La caracterstica principal de la simulacin de eventos discretos radica en que las
entidades del modelo cambian de estado basados en la ocurrencia de los eventos.

La librera de eventos discretos de Extend esta acondicionada para ser usada para
modelar sistemas de eventos discretos como por ejemplo problemas de colas, o de
inventario.

4.1. LIBRERA DE EVENTOS DISCRETOS.
La librera de eventos discretos contiene el conjunto de bloques bsicos para crear
modelos de eventos en tiempo discreto. Los elementos bsicos para modelarlos son: un
generador, una cola, una actividad y la salida del sistema.

BLOQUES DE LA LIBRERA DE EVENTOS DISCRETOS.
Una vez abierta la librera de eventos discretos (ver seccin 2.3.2.) aparecer la ventana
que se muestra en la Fig. 17.














Fig. 17. Bloques de la librera de Eventos discretos.
Los bloques de esta librera pueden ser divididos de acuerdo a las funciones que
realizan: Ejecutivo, actividades, atributos, procesamiento por lotes, generadores,
informacin, colas, recursos y ruteo. A continuacin se definen cada uno de ellos:
Executive /Ejecutivo: Este bloque es necesario en todo modelo de evento discreto.
Gestiona y controla el tiempo del modelo en tiempo de ejecucin.
Executive Funcin


Executive
Este bloque es necesario en todo modelo de evento en tiempo
discreto, debe ser localizado a la derecha de todos los bloques del
modelo.
Simulacin con Extend Curso 2007-2008
Activities/Actividades: Procesan tems.
Activities Funcin


Activity, Delay
Sostiene un tem por un tiempo, entonces lo libera. El tiempo de la
actividad es especificado en el dilogo o, a travs del D conector (el
valor del D conector sobrescribe el valor en el dilogo).


Activity, Delay
(Attibutes)
Trabaja de forma similar que el bloque Activity delay excepto que
permite usar el valor del atributo como retraso y/o modificar su
valor.


Activity, Multiple
Este bloque admite ms de un tem a la vez. El nmero mximo de
tems se indica en el dilogo o a travs del conector C. El tiempo de
retraso para cada tem es colocado a travs del conector D o si nada
es conectado ah, puede ser especificado en el dilogo.

Attributes/Atributos: Dan a los atributos una identidad.
Attributes Funcin



Change
Attribute
Cambia el valor del atributo de los tems que pasan a travs de l. Se
debe especificar el nombre del atributo a cambiar, la operacin a usar
en el cambio, y el valor del modificador para cambiar.
Estas operaciones son: incrementar, decrementar, multiplicar, dividir.
Los valores que se pueden usar como modificadores son: una
constante, el valor de otro atributo, el valor del conector A.


DE Equation
Calcula una ecuacin cuando un tem pasa a travs de l. Las
entradas para la ecuacin pueden ser los atributos del tem, los
valores, prioridades o uno de los cinco valores de los conectores de
entrada. El resultado de la ecuacin puede ser opcionalmente
asignado a un atributo.




Get Attribute
Muestra y/o remueve los atributos de los tems, despus los pasa a
travs de l. Los valores de los atributos son mostrados en el dilogo
de salida y afuera en el conector A. Mientras que los tems pasan a
travs del bloque, el bloque puede leer o quitar un atributo o
cualidad, el atributo se puede especificar como la primera cualidad en
la lista o una cualidad nombrada. Si el atributo es encontrado, su
valor es reportado en el dilogo y enviado a travs del conector A. El
conector emite una salida de 1 si el valor del atributo ha cambiado
desde el ltimo valor que ha sido ledo.


Get Priority
Lee la prioridad de los tems despus los pasa. La prioridad es
mostrada en el dilogo y en la salida del conector P. El valor del
conector emite una salida de 1 si el valor de la prioridad ha
cambiado desde el ltimo valor que fue ledo.
Simulacin con Extend Curso 2007-2008


Get Value
Lee el valor de los tems despus los pasa. El valor es mostrado en el
dilogo del conector y en la salida del conector V. El conector de
salida emite una salida de 1 si el valor del valor ha cambiado desde
el ltimo valor que fue ledo.



Set Attribute
Asigna atributos a los tems que pasan a travs del bloque. Hasta 7
nombres de atributos y valores pueden ser asignados a un tem con
cada bloque. Los atributos pueden agregarse o remplazar atributos
existentes. Se puede especificar el valor de uno de los atributos con el
conector A. El valor en el A conector reemplaza el valor
correspondiente en el valor del dilogo.

Attributes/Atributos: Dan a los atributos una identidad.
Attributes Funcin



Set Attribute
(5)
Asigna atributos a los tems que son pasados a travs del bloque.
Hasta 5 atributos y valores pueden ser asignados a un tem. Los
atributos pueden agregarse o remplazar atributos existentes. Se puede
especificar el valor de cada uno de los atributos con el conector de
valor de entrada.


Set Priority
Asigna una prioridad a los tems que pasan a travs del bloque. El
valor de la prioridad puede ser colocado en el conector P o, en el
dilogo. Nota: el ms bajo valor (incluyendo nmeros negativos)
tienen la ms alta prioridad.




Set Value
Asigna un valor a los tems. Este se utiliza para cambiar el valor
inicial de un tem de 1 a un valor diverso. Los tems tienen
originalmente un valor de 1 a menos que el valor sea cambiado por
los bloques Generator, Set Value, Get Attribute, Program, or
Shedule. Nota; los tems con un valor mayor que uno dentro de las
colas se parten. Por ejemplo si se coloca un valor de 5 sobre un tem,
cuando este vaya dentro de una cola, este llegar a ser 5 distintos
tems.

Batching/Procesamiento por lotes: Ensamblan y desensamblan tems.
Batching Funcin

Batch
Permite a tems de varias fuentes ser ensamblados como uno solo. En
el dilogo se especifica el nmero de tems de cada una de las
entradas que es requerida para producir un tem de salida. Adems
tambin se puede especificar que tems de uno o ms entradas no
sern trados dentro del bloque hasta que uno o ms de las otras
entradas tengan sus requerimientos completos.
Simulacin con Extend Curso 2007-2008


Unbatch
Produce varios tems de un solo tem de entrada. El nmero de tems
producidos en cada salida es especificado en el dilogo. Por defecto,
este bloque detiene sus entradas hasta que su salida sea usada u otra
demanda ocurra en el conector.
Generators/Generadores: Crean tems, programas.
Generators Funcin



Generator
Provee tems con tiempos de arribo aleatorios. Los tems pueden ser
creados con una distribucin aleatoria o un rango constante de arribo.
Tambin puedes especificar el nmero de tems que arriban en cada
evento utilizando el conector de valor V. Los conectores de entrada1,
2 y 3 te permiten cambiar los parmetros de entrada de la
distribucin aleatoria cuando la simulacin este en progreso.


Program
Provee tems programando su entrada en el modelo. Es similar al
bloque Generator excepto que los tiempos de llegada de los tems son
programados, ms bien que al azar. Este bloque es usado para las
necesidades repetidoras o del tiempo o con patrones fijos.
Information/Informacin: Obtiene informacin de los tems.
Information Funcin


Count tems
Reporta el nmero total de tems pasados a travs de l en su dilogo
y en el conector #. Un valor mayor que 0.5 en el conector r causar
que el conector sea reseteado a cero.



Information
Analiza y muestra la informacin de los tems acerca de los tems
que pasan a travs de l. Se debe especificar el nombre de los
atributos que se desee observar. Si un atributo no es encontrado la
informacin estar en blanco.



Show times
Muestra cuando el prximo evento ocurrir para cada bloque en el
modelo. Se puede especificar en el dilogo un retardo antes de
mostrar el dilogo. Este bloque debe ser localizado a la derecha de
todos los bloques para mostrar los eventos de todos los bloques.


Status
Analiza y muestra informacin acerca de un tem o valor. Si este
bloque es dejado abierto durante la simulacin, este parar la
simulacin en cada evento y entonces se puede especificar la
longitud del tiempo de pausa antes de mostrar la informacin.


Timer
Muestra el tiempo que toma a un tem pasar entre dos partes del
modelo. Se puede encontrar que tanto tiempo toma a un tem pasar de
un bloque a otro. Tambin se puede especificar el tiempo slo de los
tems con un atributo en particular.

Simulacin con Extend Curso 2007-2008
Queues/Colas: Detienen, sortean tems.
Queues Funcin


Queue
Attributes
Este bloque representa una cola, que puede ser ordenada en funcin
de un atributo preestablecido. Si no hay atributos establecidos, esta
cola funciona como una cola FIFO. Si algn tem que no tiene
atributos caer al final de la cola.



Queue FIFO
En esta cola el que primero entra es el que primero sale. La mxima
longitud determina cuantos tems en la cola pueden ser sostenidos.
Tambin se podra especificar un coste para cuando la cola esta llena
(alcanza la mxima longitud). El dilogo muestra la longitud media
de la cola, el tiempo de espera medio, y la utilizacin de la cola.


Queue LIFO
Es parecida a la cola FIFO, con la diferencia que ahora los ltimos en
entrar son los primeros en salir.


Queue
Matching
Es una cola en la cul los tems son liberados slo si ellos tienen un
atributo en especfico y el valor del atributo marca el valor en el ID
conector. Si hay ms de un tem con el nombre del atributo y el valor,
slo el primero que entr en el bloque ser liberado a no ser que la
opcin en el dilogo "Liberacin de mltiples tems" sea
seleccionada.


Queue,
Priority
Una cola que libera tems por prioridad. El tem en la cola con el ms
bajo valor numrico para su prioridad ser liberado primero. Si todos
los tems en la cola tienen la misma prioridad esta se convierte en una
cola FIFO.





Queue,
Resurse Pool
Una cola para las unidades de resource pool. Los tems esperan hasta
que un nmero especificado de unidades de resource pool este
disponible. El orden de los tems en la cola es determinada segn la
regla que est en el dilogo del bloque Resource Pool.
Rosources/Recursos: Representan tems como recurso, cambios.
Queues Funcin


Resource Pool
Este bloque tiene las unidades del resource pool para ser usadas en la
simulacin. Represntan recursos limitados. A diferencia del bloque
Resource, las unidades Resource Pool no son tems. Son variables
que indican disponibilidad de un factor. El bloque Resource Pool
trabaja con el bloque Release Resource Pool para liberar los recursos
del Pool.
Simulacin con Extend Curso 2007-2008



Release
Resourse Pool
Libera un resource pool como un tem pasado a travs de l. Las
unidades del resource pool pueden ser liberadas por:
- Seleccionando el botn nombre Release Resource Pool y
tecleando el nombre del bloque del Resource Pool y el nmero de
unidades a ser liberadas.
- Seleccionado el botn atributo Release Resource Pool y
especificando un atributo el cual tiene que ser colocado por una cola
o un bloque Resorce Pool.



Resourse
Este bloque sostiene y provee tems para ser usados en la simulacin.
Puede ser usado como parte de un sistema abierto o cerrado. Si se usa
este bloque en lugar del Generator o el bloque Program para proveer
tems a la simulacin hay que estar seguros de que hay suficientes
tems al inicio y as satisfacer los requerimientos durante la
simulacin. Este bloque es similar al de la cola. Los tems pueden ser
expulsados del bloque hasta su agotamiento. Si el contenido del
bloque llega a ser negativo, el bloque no sacar ningn valor hasta
que el contenido del bloque vuelva a ser un nmero positivo. El
conector de cambio modifica el nmero de tems almacenados en el
recurso por el valor del tem en el cambio.



Queue
Matching
Genera un programa sobre un calendario. Shifs puede ser tambin
ON/OFF o representado por un nmero. Si un Shift es ON/OFF, los
bloques los cuales usan este Shift sern suspendidos cuando el shift
sea off y opera normalmente cuando el shift sea on. Si el shift es
numrico, los bloques que usan un shift cambiarn su capacidad
basada sobre el valor corriente de este shift. Solo bloques con una
capacidad de unidad mltiple (tal como los bloques Activity Multiple
and Resource) utilizarn el shift numrico.
Routing/Ruteo: Moviendo tems al lugar correcto.
Routing Funcin


Activity
Service
Pasa un tem solo cuando el conector de demanda es conectado y
ciertas condiciones existen en la entrada de la demanda (tambin
cuando el valor de la demanda es verdadero [mayor que 0.5] o se
expulsa en un tem). Si un conector de salida de tem es conectado al
conector de demanda, el bloque acumula el valor de los tems que
entran en ello y pasa muchos tems a travs de l.


Catch
Este bloque recibe tems enviados por el bloque Throw aunque los
bloques no son conectados por lneas de conexin. La conexin entre
los bloques se especifica en su dilogo mediante la etiqueta y el
nmero de bloque Catch.


Combine
Combina los tems de dos diferentes fuentes dentro de un solo flujo
de tems. ste es diferente del bloque Batch el cual une tems de
diferentes fuentes en un solo tem.

Simulacin con Extend Curso 2007-2008


Exit
Pasa un tem fuera de la simulacin. El nmero total de tems
absorbidos por este bloque es reportado en su dilogo o en el
conector #.


Exit (4)
Pasa tems fuera de la simulacin de hasta 4 entradas. El nmero total
de tems absorbidos por este bloque es reportado en su dilogo o en
el conector #. El nmero absorbido por cada entrada es reportado en
el dilogo y en el conector de valor de la derecha del bloque.


Gate
Permite que solo un nmero especfico de tems estn en una seccin
del modelo (una restriccin de seccin). Se especifica en el dilogo el
nmero de tems los cuales pueden estar en un rea restringida en un
cierto tiempo.

Routing/Ruteo: Moviendo tems al lugar correcto.
Routing Funcin



Prioritizer
Da prioridad a las salidas, permitiendo que los tems sean enviados a
procesos en paralelo basados en una prioridad definida por el usuario.
Los tems saldrn por orden de prioridad. Si dos o ms tems tienen
la misma prioridad, saldrn por el primer conector que haya
disponible de forma secuencial.


Select DE
Input
Selecciona una entrada de entre dos basada en una decisin. Los
tems que estn presentes en la entrada seleccionada son pasados a
travs de la salida. Los dilogos tienen opciones para seleccionar
basados en la prioridad superior, cambiando que entrada es
seleccionada despus de que un nmero dado de tems haya pasado o
basado en el conector seleccionado.





Select DE
Output
Selecciona una salida entre dos basados en una decisin. El dilogo
tiene opciones para cambiar las salidas despus de que un nmero
dado de tems haya pasado y seleccionado basado en el conector
selector. Si el conector selector no es usado, tu puedes tener 1 salida
de cada nmero especificado de tems yendo al conector superior o a
una probabilidad aleatoria para que cada tem vaya al conector
superior. Si el conector selector es usado, el dilogo tiene opciones
para accionar la palanca (es decir elegir las salidas secuencialmente
cada vez que el selector es activado), elegir las salidas basadas sobre
el valor en el conector selector o especificando la probabilidad del
conector superior.


Throw
Este bloque lanza tems al bloque Catch sin usar conector de salida o
lneas de conexin. La conexin entre los bloques se hace por
etiquetas y el nmero de bloque del bloque catch en el dilogo del
bloque Throw.
Simulacin con Extend Curso 2007-2008
CONECTORES COMUNES EN LOS BLOQUES DE LA LIBRERA DE
EVENTOS DISCRETOS.
Conector Significado
# Nmero de tems
A Atributo para el tem pasando a travs del bloque
D Suma de tiempo a retrasar el tem en el bloque
demand
Hace que el bloque acumule una demanda de mltiples tems si una entrada
del tem es conectada. Tambin es usado provocar la operacin del bloque de
Servicio de Actividad.
Indica un cambio en el valor
F Full: salidas de 1 cuando el bloque este lleno, de otra manera 0
L Longitud de la cola: Nmero de tems en la cola
P Prioridad de los tems pasando a travs del bloque.
sensor Observa la presencia de un tem pero no lo recibe
select Selecciona la entrada o salida basada en las opciones en el dilogo.
T
Tiempo en uso: Salidas de un valor no-cero mientras el bloque esta en uso.
Este valor representa la suma de tiempo desde el evento pasado, en cada
evento cuando, en cada evento cuando el bloque es activado. Tu puedes
conectar esto a un bloque acumulador para encontrar el tiempo total en uso
durante la simulacin.
U
Utilizacin; El porcentaje de tiempo en el que el bloque estuvo en uso
durante el cuso de la simulacin.
V Valores para los tems pasando a travs del bloque (esto es usualmente 1).
W Tiempo de espera para tems dejando la cola.

CONSIDERACIONES SOBRE LA LIBRERA DE EVENTOS DISCRETOS.
Los modelos de eventos discretos pasan entidades (llamadas tems) de bloque a bloque
durante la simulacin. Los tems son usualmente generados por el bloque Generator
como una distribucin aleatoria dentro de parmetros especficos, o por el bloque
Program como una lista de cuando los eventos ocurren. Estos tems a menudo tienen
prioridades y atributos que les ayudan a corresponder ms estrechamente a partes,
clientes, y empleos en la vida real.
En bloques de eventos discretos, un conector tem pasa un tem y toda la informacin
asociada con l al prximo conector tem. El conector de valor y los parmetros del
dilogo especifican informacin acerca del tem y sus propiedades (atributos, tiempo,
etc.) adems de la informacin de los efectos que el tem tiene en el modelo (tales como
longitud de la cola y tiempo de espera).
El objeto de la simulacin de estos modelos generalmente es para determinar donde hay
cuellos de botella en el proceso y para ver que partes del proceso podran mejorarse.
Todo bloque debe de continuar su conexin ya sea a un bloque ms o a un bloque de
Simulacin con Extend Curso 2007-2008
salida. Por lo tanto puedes examinar la salida del bloque Exit y encontrar cuantos tems
han dejado el modelo.
Se tiene por regla general que todo modelo de eventos discretos debe tener siempre
un bloque Executive localizado en la parte izquierda de todos los bloques del modelo.
TEMS Y VALORES DE INFORMACIN.
Las unidades bsicas que son pasadas entre bloques de eventos discretos son los tems.
Los tems son estructuras de datos complejas que adems de valores sobre las variables
que representan tambin contienen informacin sobre el tiempo de la simulacin. Los
tems suelen representar entidades individuales que pueden tener propiedades nicas
como el especificado por sus atributos, prioridades y valores. En la fabricacin de
modelos, los tems pueden ser partes sobre una cadena de montaje; en modelos de red,
un tem sera un paquete de informacin; en modelos de negocio, los tems pueden ser
facturas o gente.
Los valores asociados a un tem pueden proporcionar informacin relacionada con la
naturaleza de los tems y acerca de las cantidades asociadas a determinadas variables o
atributos. Otros valores que pueden hallarse entre los resultados que facilitan algunos
bloques estn el nmero de clientes en la cola, o cuantas elementos han sido
transportados o expedidos por un bloque o la frecuencia de ocurrencia de llamadas.
ATRIBUTOS.
Los atributos son un aspecto importante de la simulacin de eventos discretos.
Bsicamente los atributos son caractersticas de un tem que acompaan al tem
mientras se desplaza por el modelo. Cada atributo consiste en un nombre y un valor
numrico. El nombre de los atributos es usado para identificarlos y su valor es utilizado
para especificar algn aspecto asociado con el nombre.
PRIORIDADES.
Las prioridades permiten especificar la importancia de un tem. Por ejemplo, se podra
tener un paso en un proceso de manufactura donde un trabajador mira todo el trabajo
pendiente y entonces decide ordenar y escoger el que es el ms urgente. Cada tem slo
puede tener una prioridad. La prioridad superior tiene el valor ms bajo, incluyendo
valores negativos (es decir un tem con una prioridad "de -1" tiene una prioridad ms
alta que uno con una prioridad "de 2").
VALORES DE TEMS.
Cada tem puede representar una sola entidad o un grupo. Si el valor de un tem es 1,
este representa un tem; si es otro diferente de 1, representar a un grupo. Los tems
originalmente tienen un valor de 1 a menos que el valor sea cambiado por los bloques
Set Value, Generator, Get Attribute, or Program.

Los tems con valores diferentes que 1 se tratan de forma diferente dependiendo de la
naturaleza del bloque que los procesa. Viajarn juntos como unidad, siendo procesado
esencialmente como un tem, hasta que alcanzan una salida, una cola, un batch, o un
bloque de resource, o se envan en un conector universal (tal como cambio, demanda,
selector, o comienzo).
Simulacin con Extend Curso 2007-2008
RETENER TEMS.
Los bloques de eventos discretos tratan la salida de los tems de dos formas:

El tem es retenido en el bloque y lo deja salir solo cuando otro bloque lo requiere,
la mayora de bloques tienen este tipo de comportamiento.
El tem es empujado del bloque cuando este es creado, independientemente si ser
recogido por otro. Si no puede ser alojado en el bloque consecutivo, se genera un
error.
4.2. EJEMPLOS.
CMO CREAR UN MODELO DE EVENTOS EN TIEMPO DISCRETO?
Para dar inicio a la creacin de modelos de eventos en tiempo discreto se har uso de
varios ejemplos.

PROBLEMA 4.1. VERDULERA HIPER FRUIT.

Carles dueo de la verdulera Hiper Fruit quiere saber cual es el tiempo medio de espera
de sus clientes as como la longitud mxima de la cola. Se ha observado que los clientes
arriban con una frecuencia que sigue una distribucin constante de cada 2 min., y en
promedio el cajero tarda en cobrar una media de 4min.


SOLUCIN.
a) Arribo de clientes a la verdulera: El arribo de clientes a la verdulera puede estar
representado por cualquiera de los dos bloques Generadores cuya funcin es crear
tems, no obstante por las caractersticas de los datos es conveniente usar el bloque
Generator (Fig. 18) el cual proporcionar tems de acuerdo a la distribucin indicada
en su dilogo. En este caso ser una distribucin constante de 2 min.








Fig. 18. Bloque Generador.

b) Esperar turno para pagar: Los bloques que retienen a los tems mientras son
requeridos son los bloques de cola. En el modelo la cola apropiada para este tipo de
sistemas sera una cola FIFO (Fig. 19), ya que los primeros en entrar sern los primeros
en salir.






Fig. 19. Bloque cola FIFO.
Simulacin con Extend Curso 2007-2008

c) Pago por las verduras, vendr representado por un bloque de actividad.

El bloque Activity Delay (Fig. 20) es el indicado para representar la actividad de pagar
la verdura, ya que retrasar al tem por una cantidad de tiempo indicada en el dilogo,
esta cantidad representar el tiempo que tarda el cajero en cobrar.










Fig. 20. Bloque Activity, Delay.

De esta manera se podra integrar el modelo realizando las conexiones pertinentes (Fig.
21).














Fig. 21. Resolucin del modelo.

Al correr el modelo con un tiempo de simulacin igual a 1hr de trabajo, se obtienen los
siguientes resultados de la cola FIFO (Fig. 22). Con la informacin recabada se puede
dar respuesta a las preguntas realizadas por el dueo de la verdulera.











Fig. 22. Resultados de la simulacin para el problema 5: verdulera Hiper Fruit.
Simulacin con Extend Curso 2007-2008

A partir de los resultados se observa que el tiempo medio de espera es amplio (15 min.),
por lo que se plantea la siguiente interrogante, A cuanto se reducira la longitud de la
cola, si Carles decidiera contratar a otra persona con las mismas aptitudes?.

Para introducir la variante planteada, bastar con copiar bloque de actividad y realizar
las conexiones pertinentes, como se muestra en la figura 23.














Fig. 23.Resolucin del modelo anexando una caja ms.


Al correr la simulacin se observa que el tiempo medio de espera se reduce a 0.

A continuacin se citan diversos problemas, la solucin puede observarse en el Anexo
A.

PROBLEMA 4.2. FUNCIONAMIENTO DE UN LAVADO DE AUTOS.
El Sr. German gerente del Lavado de Autos C&S quiere evaluar un proyecto de
expansin de servicios. Para ello, requiere saber cmo se comporta actualmente el
sistema, y que beneficios traera la implantacin del proyecto.
Actualmente los autos arriban siguiendo una distribucin constante de cada 4 min.
Hay solo una lnea de lavado.
Toma 6 min. lavar el auto.
El proyecto de expansin consiste en aadir una segunda estacin de lavando con las
mismas caractersticas. Siendo esto un ejemplo de procesamiento en paralelo de autos.
Qu efectos tiene sobre el sistema esta modificacin?.
A su vez dicho proyecto tambin contempla ofrecer el servicio de engrasado,
estimndose una demanda del 25% sobre los autos que arriban. Cmo modifica esta
decisin al modelo?
CREANDO ESTRATEGIAS.
Para consolidar la lealtad de los clientes se tiene la siguiente idea: Se prev establecer
una promocin de cliente frecuente que consiste en lo siguiente: a lo largo de 5 visitas
Simulacin con Extend Curso 2007-2008
acumuladas los clientes reciben un cupn, el cul permitir por una nica ocasin pasar
a la estacin de lavado sin tener que formarse.
Una interrogante a plantear ser Qu ocurre si llegan al mismo tiempo dos clientes con
este cupn?.
OTROS ASPECTOS A CONSIDERAR.
Considerar que el tiempo gastado en la estacin de servicio es dinmico.
Considerar una capacidad lmite del estacionamiento.
Considerar que cada estacin de lavado tiene su propia cola.
PROBLEMA 4.3. FUNCIONAMIENTO DE UNA GASOLINERA.

La compaa Repsol ha recibido grandes quejas por parte de los consumidores de
Terrasa, debido a que tienen que esperar demasiado tiempo antes de que ellos puedan
acceder a la bomba de gasolina. En los ltimos meses este hecho ha provocado la
disminucin de ventas, por ello la gerencia esta planeando enviar un proyecto a la
corporacin que sea viable para eliminar el problema.

No obstante antes de proponer alguna alternativa se desea analizar el sistema planteado.
El comportamiento actual de la gasolinera es el siguiente:

El arribo de coches viene determinado por una funcin de densidad f(t)=1/5e
-(1/5)t
,
con t>0.
Ingreso libre a cualquiera de las 2 bombas de gasolina si estn disponibles, de lo
contrario se debe esperar en una sola fila.
El nmero mximo de autos esperando en la fila es de 5 debido a una limitante de
espacio.
Cada auto tarda un tiempo medio de 1.5 y desviacin de 0.5, en tomar gasolina.
Aproximadamente el 30 % de autos requieren el servicio de aceite, actividad que
tarda 0.5 min. ms sobre el tiempo medio de la gasolina.

Realizar la simulacin y el anlisis del proceso para 8 hrs de trabajo.

Una vez obtenido el modelo del sistema, la tarea siguiente ser evaluar las diferentes
alternativas de proyectos y seleccionar la que reduzca el tiempo de autos que salen del
sistema por no poder esperar en la cola.

Agregar una bomba ms.
Evaluar la alternativa de que solo 2 bombas ofrezcan cargar gasolina y una ms
para el servicio conjunto de gasolina con el servicio de aceite, contra la
alternativa de que todas las bombas ofrezcan el mismo servicio.
Establecer dos Filas, con la misma restriccin de 5 autos.


PROBLEMA 4.4. FUNCIONAMIENTO DE UNA OFICINA BANCARIA.

Una oficina bancaria abre de 9:00 a 17:00hrs. Normalmente la oficina atiende a 40
clientes por hora. Dispone de dos cajas una con ms experiencia que otra para atender al
Simulacin con Extend Curso 2007-2008
pblico. Si la cola arriba a 3 personas se abre una caja ms hasta reducir la cola a 1 o 0
personas. Segn las operaciones a hacer los clientes tardan aproximadamente lo que
indica la tabla.

Tabla de distribucin:

TIEMPO 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10
NOVATO 0.05 0.10 0.20 0.15 0.20 0.15 0.07 0.05 0.03
EXPERIENCIA 0.10 0.25 0.15 0.15 0.20 0.15


5. CORRER UNA SIMULACIN CON EXTEND.

PASOS PARA CORRER LA SIMULACIN.

1. Dar clic en la pestaa Run de la barra de comandos.
2. Seleccionar Run Simulation.

Estos son los dos pasos bsicos a realizar para correr la simulacin, ya que por default
Extend tiene algunas instrucciones que le indican como y cuando terminar la
simulacin. No obstante estas instrucciones pueden ser modificadas en el men
Simulation Setup.

a) Estatus de la Simulacin.

Cuando se comienza a correr el modelo, Extend muestra alguna informacin de status
inicial en la forma de mensajes que aparecen momentneamente sobre la pantalla.
Dependiendo de la velocidad de la computadora, se pueden ver los siguientes mensajes
Please wait, Cheking data, o Initializing Data.

Una vez que la simulacin se esta llevando a cabo, Extend muestra una pequea barra
de estado.



Los nmeros despus del reloj de arena son un estimado del tiempo actual de salida de
la simulacin, as que se puede determinar que tan larga es la corrida. El reloj muestra el
tiempo corriente de la simulacin, y Run es el nmero total de simulaciones si es que se
estn corriendo simulaciones mltiples.

b) Opciones del me: Simulation Setup

El comando Simulation Setup del men Run permite especificar cmo y que tan
largo correr la simulacin. El dilogo tiene tablas para modelos de eventos en tiempo
discreto y continuo, as como tambin tablas para nmeros aleatorios y unidades de
tiempo.



Simulacin con Extend Curso 2007-2008
Tabla de Eventos en tiempo discreto.















Selecciona Descripcin.
End simulation
at time.
Indica el tiempo final de la simulacin.
Start simulation
at time
Es el punto en el que se inicia la simulacin. Usualmente es 0.
Number of runs El nmero de veces a correr la simulacin.
Global time units Unidades de tiempo en que se regir el modelo entero.
Comments Este es un tem opcional usado para documentar aspectos del
modelo, tales como las unidades.

Tabla de Eventos Continuos.











Selecciona Descripcin.
End simulation
at time.
Indica el tiempo final de la simulacin.
Start simulation
at time
Es el punto en el que se inicia la simulacin. Usualmente es 0.
Number of runs El nmero de veces a correr la simulacin. Seleccionar esta opcin
si se quiere repetir la simulacin para desarrollar el anlisis de
sensibilidad y observar como cambian los resultados sobre varias
corridas.
Time per step
(dt)
Representa un tiempo delta, o la longitud de tiempo por paso. Este
es seleccionado por default para determinar la granularidad de la
corrida de la simulacin.
Simulacin con Extend Curso 2007-2008
Number of steps Es otro mtodo para determinar la granularidad de la corrida de la
simulacin.
Global time units Unidades de tiempo en que se regir el modelo entero.
Stepsize
calcultions
Esto es solo usado en modelos continuos que cambian la variable
del sistema Delta Time, tal como en simulaciones electrnicas.
Simulation order Orden de la simulacin.
Comments Este es un tem opcional usado para documentar aspectos del
modelo, tales como las unidades.

Cada vez que se corre una simulacin, Extend usa el mismo valor del dilogo contenido
en el dilogo Simulation Setup. As que habitualmente se usa este dilogo una vez por
modelo.

Generalmente, la nica parte que se necesita cambiar en el dilogo es End simulation
at time parmetro localizado sobre la tabla de eventos discretos o continuos.

c) Animacin.
Para animar un modelo de forma automtica slo basta con seleccionar del men Run
de la barra de comandos el men Show Animation.

6. OTRAS LIBRERIAS DE UTILIDAD.

LIBRERA PLOTTER.
La librera plotter cuelga todos los tipos comunes de plotters usados para mostrar
grficamente las salidas del modelo, utilidad principal de esta librera.

Bloque Funcin


Bar Chart
Muestra un grfico de barras de hasta seis valores de entrada. Las
barras pueden cambiar instantneamente o en intervalos regulares. A
diferencia de otros Plotters, el bloque Bar Chart no registra
ningn dato.


Gantt Chart
Muestra una grfica de tipo Gantt. Hasta 6 grficas son trazadas en
un solo bloque grfico Gantt.


Histogram
Crea un histograma de todos los valores que recibe.


Plotter DE,
Error bars
Muestra la media y la desviacin estndar de un valor.
Simulacin con Extend Curso 2007-2008






Plotter DE,
Multisim
Acumula los resultados de hasta 4 corridas de informacin de una
simulacin de eventos discretos sobre un solo plotter.


Plotter DE
Este plotter es solo utilizado para trazar eventos discretos.



Plotter Error
bars
Muestra la media y la desviacin estndar de valores.


Plotter FFT
Este plotter traza una seal.


Plotter I/O
Proporciona un grfico y una tabla para hasta cuatro valores de
entrada para modelos continuos.


Plotter,
Multisim
Acumula los resultados de hasta cuatro corridas de una simulacin
continua sobre un solo plotter.


Plotter Scatter
Muestra dos conjuntos de datos, cada grfico como valores pares x,
y.


Plotter Scatter
(4)
Muestra dos conjuntos de datos, cada grfico como valores pares x,
y.


Plotter Strip
Da grficas y tablas de datos para hasta cuatro veces asociados las
entradas.



Plotter Worm
Muestra dos conjuntos de datos trazados como valores pares x, y,
pero solo para un nmero especfico de puntos.
Simulacin con Extend Curso 2007-2008


ANEJO A.

PROBLEMAS DE EVENTOS EN TIEMPO CONTINUO.

SOLUCIN: PROBLEMA 2. CAJA DE AHORRO.

Si se realizara este problema con ayuda de Excel se tendra lo siguiente:



























Este mismo problema puede ser modelado en Extend de una manera fcil y sencilla:

1. Identificar los elementos que estn en juego.

a) Una caja de ahorro.
b) Los gastos de cada mes.
c) Intereses para cada mes.
TAE EFECTIVO MENSUAL
Simulacin con Extend Curso 2007-2008
a) Una caja de ahorro.

En el modelo la caja de ahorros debe estar representada por un bloque que acumule
mensualmente la cantidad ms los intereses otorgados. Adems se debe realizar las
deducciones que corresponden a los gastos de cada mes. Si se analizara cada uno de los
bloques genricos se observara que el bloque Holding Tank es ideal para los
requerimientos (Fig. 24).










Fig. 24. Bloque Holding Tank.

b) Los gastos de cada mes.

Juan gasta mensualmente 50 Euros, cantidad que retira al final del mes. Para modelar
esto se conecta el bloque constant (con un valor de 50) al conector want (Fig. 25).


























Fig. 25. Representacin del funcionamiento del bloque Holding Tank.
Simulacin con Extend Curso 2007-2008
Al observar los resultados arrojados por el plotter al realizar la simulacin, se aprecia
que la cantidad de 50 se esta deduciendo al inicio del mes y no al final, por lo que se
introducir un bloque que retrase la deduccin un mes. Para ello se emplear el bloque
Time (Fig. 26).

























Fig. 26. Representacin del funcionamiento del bloque Holding Tank anexando el bloque Time.


c) Intereses para cada mes.

En el problema existen dos tipos de inters compuesto: del 6% TAE para el primer mes
y del 1% TAE para los meses restantes. As que se emplear un bloque selector que
permita seleccionar de acuerdo al mes el tipo de inters a aplicar (Fig. 27).












Fig. 27. Combinacin de bloques para representar los intereses de cada mes.
Simulacin con Extend Curso 2007-2008
De esta forma se tiene el modelo completo, (Fig. 28).



























Fig. 28. Representacin del problema 2. CAJA DE AHORRO.
Simulacin con Extend Curso 2007-2008
SOLUCIN: PROBLEMA 3. JUEGO DE AZAR.

Desarrollar el modelo.

Es comn cuando se construye un modelo comenzar con un modelo simple, y agregar
detalles hasta que se tenga capturado la esencia del sistema.

Primero se desarrollar un model bsico y se irn introduciendo bloques que
aumentarn la complejidad del modelo.

Otra manera de hacer ms fcil la modelacin de nuestro sistema es desarrollar
un diagrama de flujo.

1. Identificar los elementos que estn en juego.

a) Un lanzador de monedas.
b) El pago por jugar.
c) Un registro de resultados.
d) Registro de tres caras seguidas.
d) El pago por ganar.

a) Un lanzador de monedas.

La funcin del lanzador de monedas consiste en proporcionar nmeros aleatorios entre 0
y 1, de manera tal que dichos nmeros representen la aleatoriedad en el lanzamiento de
monedas con probabilidad de 0.5, (Fig. 29).










Fig. 29. Bloque Randon Input Number.

En este caso el bloque de Input random number es un bloque ptimo para representar
el lanzamiento de monedas ya que proporciona nmeros aleatorios de acuerdo a una
distribucin, que de acuerdo al problema se definir como una distribucin uniforme
entre 0 y 1.

b) El pago por jugar.

b).1. Selector de lanzamientos.

En el sistema real se tiene que cada que se realice un lanzamiento se pagar 1, esto
pude ser modelado haciendo el siguiente planteamiento. El lanzador de monedas arroja
valores entre 0 y 1 por lo que combinando este bloque con un bloque de decisin
Simulacin con Extend Curso 2007-2008
bloque de decisin con una prueba lgica que arroje una salida de 1 (haciendo
referencia al lanzamiento) si el valor que enva el lanzador de monedas es mayor que 0.
As de esta manera se registrara todos los lanzamientos realizados (Fig. 30).

















Fig. 30. Combinacin de bloques para representar el lanzamiento de monedas.

b).2. Pago.

Cada que se realiza un lanzamiento se paga 1. Esto se modela con los siguientes
bloques (Fig. 31):
















Fig. 31. Combinacin de bloques para representar el pago por jugar.


b).3. Registro de lo que voy gastando.

En este sentido es interesante tener un registro en donde consultar la cantidad que se ha
gastado hasta ese momento, para posteriormente realizar las respectivas comparaciones
y analizar si interesa o no participar en el juego.

Simulacin con Extend Curso 2007-2008
As que se introducir el bloque acumulador el cual acumular el total de euros que se
ha pagado por jugar (Fig. 32).


















Fig. 32. Combinacin de bloques para representar lo que se ha pagado por jugar.

Para analizar lo que acontece en el sistema se puede hacer uso de la librera plotter (Fig.
33).



















Fig. 33. Registro del pago por los lanzamiento realizados utilizando el bloque Plotter.


c) Registro de resultados.

Para modelar el registro de resultados (caras o cruces), se requiere introducir un bloque
que separe las caras de las cruces.

Simulacin con Extend Curso 2007-2008
Una forma de hacerlo es mediante el bloque de decisin. Cuya prueba lgica consistir
en que valores mayores a 0.5 representan caras, y viceversa cruces, as de esta forma se
determina si el lanzamiento es cara o cruz Fig. 34.












Fig. 34. Combinacin de bloques para determinar si el lanzamiento es cara o cruz.

Se introducir un plotter para observar como funciona el sistema en esta etapa (Fig. 35).



























Fig. 35. Registro grfico mostrando si el lanzamiento es cara o cruz.

d) Registro de tres caras seguidas.

d).1. Registro de caras.

Simulacin con Extend Curso 2007-2008
Ahora bien, se entrar a la parte ms complicada del modelo, la cual consiste en ir
registrando y acumulando las caras que se vayan obteniendo. Para ello se utilizar el
bloque Acumlate Fig. 36.












Fig. 36. Combinacin d bloques para el registro de caras.

De esta forma se obtiene el total de caras que hayan salido hasta ese momento, sin
embargo la regla del juego indica que para ganar se necesita tener tres caras seguidas.

As que se debe tener un registro de caras, pero adems este registro requiere ser
reinicializado a 0 cuando el resultado del lanzamiento sea una cruz. Para ello se tiene los
siguientes bloques (Fig. 37).













Fig. 37 Reinicializacin a 0 cuando se tiene una cruz.

d).2. Conteo de las veces que sale tres caras seguidas.

Con el modelo de la fig. 37 se obtendra el nmero de caras seguidas, no obstante se
puede dar la posibilidad que durante 2, 3, 4, 5, .. lanzamientos seguidos salga cara as
que para eliminar esto se introducir un bloque que cuente tres caras seguidas, registre
este resultado y reinicialice el contador de caras a un valor 0. De esta forma se van
obteniendo el nmero de veces que obtenemos 3 caras seguidas, ver Fig. 38.






Simulacin con Extend Curso 2007-2008





Fig. 38 Registro del nmero de veces que se obtienen tres caras seguidas.

e) El pago por ganar.

Una vez que se tiene el registro de 3 caras seguidas, se sabe que se ganar 10 as que se
procede a modelar este aspecto Fig. 39.












Fig. 39 Registro de la ganancia por obtener tres caras seguidas.


Interesa o no Participar?

Para contestar a la pregunta de si interesa o no participar es necesario realizar una
combinacin de bloques estadsticos y analizar los resultados arrojados por el modelo
Fig. 40.















Fig. 40 Registro de la ganancia por obtener tres caras seguidas.

Una vez desarrollado el modelo se puede plantear otras alternativas de accin o negocio
y por ende modificar el modelo.

Simulacin con Extend Curso 2007-2008

SOLUCIN: PROBLEMA 4. PRESA/CAZADOR.

1. Primeramente se modelar la dinmica de reproduccin de la liebre.

El primer paso en la construccin del modelo presa/cazador es modelar la dinmica de
la poblacin de liebres. Para hacer esto se utilizar el bloque Constant que representar
la tasa de natalidad de la liebre y un bloque Holding Tank que represente a la poblacin
de liebres.

La conexin desde el conector de salida C del bloque Holding Tank al conector superior
del bloque Multiply realiza la alimentacin del nmero corriente de la poblacin de
liebres que se encuentra en el bloque Holding Tank al bloque Multiply.

Cuando se multiplica la poblacin total de liebres por la tasa de natalidad, se consigue
obtener el nmero de liebres nacidos en un ao. Cuando se corre la simulacin y se
calculan los valores ao tras ao, el nmero de liebres nacidas es agregado a la
poblacin original de liebres a travs de una conexin que va del conector de salida del
bloque Multiply al conector de entrada del bloque Holding Tank (Fig. 41).












Fig. 41. Combinacin de bloques para representar la dinmica de la poblacin de la liebre.


Cmo se puede ver en el plotter la poblacin ha crecido a 7, 0305, 624 liebres despus
de 6 aos. Al no contemplar algn depredador, el crecimiento de la poblacin es libre,
(Fig. 42).










Fig. 42. Grfica de la dinmica de la poblacin de la liebre.

2. Influencia del lince sobre la poblacin de la liebre.

Simulacin con Extend Curso 2007-2008
Para realizar esto se utilizar un bloque Constant para representar la poblacin de
linces y un control Slider para colocar un nmero constante de liebres muertas por
lince. El bloque Multiply es la seleccin obvia para multiplicar el nmero de liebres
muertas por lince por el total de la poblacin de linces, su salida ser el nmero total de
liebres muertas por los linces cada ao. As que esta salida ser conectada al conector
Want del bloque Holding Tank para remover esta suma de la poblacin de liebres
(Fig. 43).














Fig. 43. Influencia del lince sobre la poblacin de la liebre.

Este es un buen ejemplo para sealar una caracterstica del bloque Holding Tank el
cual por defecto no permite que su contenido sea negativo. Esto significa que la
poblacin de liebres no podr ser reducida por debajo de lo disponible, no importa que
haya un requerimiento por parte del conector want.

Si se corre la simulacin con el Slider colocado en 60, el modelo muestra que la
poblacin de liebres desciende rpidamente como se aprecia en el plotter (Fig. 44).











Fig. 44. Representacin grfica de la dinmica de la poblacin del lince sobre la liebre.

3. Dinmica de reproduccin del lince.

Hasta el momento se haba contemplado a una poblacin constante de linces y esto en la
realidad no es as, ellos tambin tienen una dinmica de reproduccin. Para modelarla se
seguirn los mismos supuestos que para la liebre. Obteniendo el siguiente modelo (Fig.
45).


Simulacin con Extend Curso 2007-2008











Fig. 45. Combinacin de bloques para representar la dinmica de la poblacin de la lince.

Cmo podemos ver en el plotter la poblacin de linces es ahora variable. Sin embargo
el modelo muestra una continua proliferacin de linces aunque su comida se haya
terminado. Para corregir esto se necesita mejorar el factor de mortalidad de las liebres, y
despus redefinir la interaccin entre el lince y su fuente de comida (Fig. 46).













Fig. 46. Representacin grfica de la dinmica de la poblacin del lince.

4. Redefiniendo el factor de mortalidad de la liebre.

El modelo que se construy de forma rpida utiliza un Slider para proveer un rango
constante de mortalidad para la liebre. Sin embargo como se dijo al inicio, el nmero de
liebres muertas depende tanto de su densidad en el ecosistema como del nmero de
linces disponible para cazarlas. Estas suposiciones tambin establecen que el lince tiene
un rango territorial de una hectrea y pueden consumir alguna liebre en su territorio.

As que el siguiente paso es cambiar el factor de mortalidad de la liebre ha ser variable,
basado en su densidad dentro del ecosistema. Para hacer esto se remover el Slider y
se sustituir por un bloque Constant (representando el rea del ecosistema), y un
bloque Divide (el cual divide la poblacin de liebres por el rea del ecosistema), Fig. 47.







Simulacin con Extend Curso 2007-2008


Fig. 47. Combinacin de cloques para Redefinir el factor de mortalidad de la liebre.

El plotter muestra un pequeo cambio en la poblacin de liebres, pero el cambio en la
poblacin de linces esta todava independiente del cambio en la poblacin de liebres
(Fig. 48).












Fig. 48. Representacin grfica de la dinmica de la poblacin redefiniendo el factor de mortalidad
de la liebre.

5. Redefiniendo el factor de mortalidad del lince.

El paso final en la construccin de este modelo es incluir la interdependencia del lince y
la liebre. El lince necesita liebres para sobrevivir y el nmero de liebres consumidas
afecta directamente a la tasa de mortalidad del lince. La relacin del nmero de liebres
consumidas y la tasa de mortalidad del lince esta dado en la siguiente tabla, donde la
primera columna es la densidad de la liebre y la segunda columna es la correspondiente
tasa de mortalidad del lince.

Tabla 4. Relacin del nmero de liebres consumidas y la tasa de mortalidad del lince.









Para incluir esta tabla en el modelo, se adicionar el bloque Conversion Table y se
introducir los datos de la tabla. Se realizar una conexin desde la salida del bloque
Divide a la entrada del bloque Conversion Table, as el bloque Conversion Table
puede ver la densidad corriente de la liebre. Entonces se agregar un bloque Multiply
para multiplicar la salida del bloque Conversion Table (rango de mortalidad del lince)
por la poblacin del lince (Fig. 48).




Simulacin con Extend Curso 2007-2008




Fig. 49. Combinacin de bloques para modelar la dinmica de la poblacin incorporando la
relacin del nmero de liebres consumidas y la tasa de mortalidad del lince.

En cada paso de la simulacin el bloque Conversin Table compara la densidad de la
liebre de su entrada a los valores de la primera columna de la tabla, entonces obtiene el
correspondiente rango de mortalidad de la segunda columna.

Cuando se corre la simulacin se puede observar la relacin directa entre la liebre y el
lince como se ve en el siguiente plotter( Fig. 49).

















Fig. 50. Representacin grfica de la relacin directa entre la liebre y el lince.


PROBLEMAS DE EVENTOS EN TIEMPO DISCRETO.

SOLUCIN: PROBLEMA 6. FUNCIONAMIENTO DE UN LAVADO DE
AUTOS.

1. Identificar los elementos que estn en juego.

a) Arribo de autos al lavado de Autos.
b) Estacionar el auto para esperar el servicio.
c) Servicio de lavado.
d) Salida del sistema.

a) Arribo de autos al lavado de Autos.

Simulacin con Extend Curso 2007-2008
Para modelar el arribo de autos se debe incorporar al modelo un bloque cuya funcin
sea generar tems (autos) acorde a una distribucin aleatoria. Caracterstica que coincide
con la funcin desempeada por el bloque Generador (Fig. 51).




Fig. 51. Bloque Generator.

b) El estacionar el auto para esperar el servicio.
El estacionar el auto para esperar el servicio ocasiona la formacin de una cola. Se
emplear la cola FIFO, as que los primeros autos en entrar sern los primeros en salir
(Fig.52).






Fig. 52. Bloque FIFO.

c) Servicio de lavado.

Para representar la accin del lavado de auto dentro del modelo se emplear el bloque
Activity delay en donde el tem (auto) ser detenido por cierto tiempo y despus
liberado, la liberacin del tem indicar la finalizacin del lavado (Fig. 53).












Fig. 53. Bloque Activity Delay.


d) Salida del sistema.

La salida del sistema estar representada con el bloque Exit (Fig. 54).





Simulacin con Extend Curso 2007-2008



Fig. 54. Bloque Activity Delay.


e) Modelo bsico de evento de tiempo discreto.

Es importante comenzar con un modelo simple, luego aadir la complejidad tanto como
sea necesario hasta que todos los factores relevantes sean considerados y el modelo
aproxime el sistema que se desea modelar (Fig. 55).













Fig. 55. Bloques que representan un modelo bsico de evento de tiempo discreto.


AGREGANDO ELEMENTOS AL PROBLEMA.
Se observa en la simulacin del modelo que la longitud de la cola se incrementa sobre el
tiempo, es decir los autos estn arribando ms rpidamente que lo que ellos estn siendo
lavados.
En este sentido se sabe que en la mayora de los negocios las colas largas desmotivan al
cliente, por lo que se debe implementar una estrategia que ayude a reducir el nmero de
autos en la cola.
Una alternativa de accin sera el aadir una segunda estacin de lavando con las
mismas caractersticas. Siendo esto un ejemplo de procesamiento en paralelo de autos.






Fig. 56. Modelo de procesamiento en paralelo.
Simulacin con Extend Curso 2007-2008
Al correr la simulacin, se observa que la entrada de la longitud de la cola esta cerca de
0 la mayora del tiempo.
Por otra parte al mirar el dilogo del bloque Exit se observa que un nmero es ms largo
que otro. Ello es debido a que no se especifica ninguna regla concerniente a como los
autos debern ir a las estaciones de lavado, por lo que por defecto el auto ir a la
primera estacin disponible. Esto causa que los autos usen una estacin con ms
frecuencia que la otra.
AGREGANDO VARIABLES AL PROBLEMA.

En el proyecto de expansin se contempla ofrecer el servicio de engrasado, estimndose
una demanda del 25% sobre los autos que arriban.

Se prev que al entrar al lavado de autos los conductores informen el servicio que
solicitan. Para modelar esto se hace uso de los atributos, es decir una vez que los autos
arriban al lavado, estos son etiquetados de acuerdo al servicio que requieren, en este
caso se crear un atributo con valor 0 (probabilidad del 0.25) para los que no requieren
engrasado y 1 (probabilidad 0.75) en caso contrario.











Fig. 57. Modelacin del proyecto de expansin utilizando atributos.

El bloque get Attribute observa el primer atributo en cada tem y reporta el valor del
atributo en el conector A.
El bloque Select es usado para direccionar los autos basndose en el atributo
encontrado. De esta manera se obtiene el modelo deseado.
CREANDO ESTRATEGIAS.

La promocin de cliente frecuente consiste en lo siguiente: a lo largo de 5 visitas
acumuladas los clientes reciben un cupn, el cul permitir por una nica ocasin pasar
a la estacin de lavado sin tener que formarse.

Para modelar esto, se hace uso del bloque Set priority. Usar prioridades es similar a
usar atributos
excepto que slo hay
un valor a colocar.


Simulacin con Extend Curso 2007-2008






Fig. 58. Modelacin de la estrategia cliente frecuente utilizando prioridades.
Qu ocurre si llegan al mismo tiempo dos clientes con este cupn?.
OTROS ASPECTOS A CONSIDERAR.
Considerar que el tiempo gastado en la estacin de servicio es dinmico.
Considerar una capacidad lmite del estacionamiento.
Considerar que cada estacin de lavado tiene su propia cola.

SOLUCIN: PROBLEMA 7. FUNCIONAMIENTO DE UNA GASOLINERA.

1. Identificar los elementos bsicos que estn en juego.

a) Arribo de autos a la gasolinera.
b) Esperar si las bombas de gasolina estn ocupadas.
c) Limitante de espacio en la fila.
d) Servicio de gasolina.
e) Servicio de aceite por parte del 30% de autos.
f) Salida del sistema.

a) Arribo de autos a la gasolinera.

Para modelar el arribo de autos se tiene que seleccionar un bloque cuya funcin sea
generar tems (autos) acorde a una distribucin aleatoria. Caracterstica que coincide
con la funcin desempeada por el bloque Generator.











Fig. 59. Bloque generator.


b) Esperar si las bombas de gasolina estn ocupadas.
Simulacin con Extend Curso 2007-2008
Para representar este hecho se ocupar la cola FIFO, en donde los primeros autos en
entrar sern los primeros en salir.

c) Limitante de autos estacionados en la fila.

Esta limitante ser incluida al abrir el dilogo del bloque de la cola FIFO y en la pestaa
de QUEUE indicamos la longitud mxima de la cola, tal y como se observa en la figura.











Fig. 60. Dilogo del bloque de cola FIFO.

d) Servicio de gasolina.

Para representar la accin del lavado de auto dentro del modelo emplearemos el bloque
Activity delay en donde el tem (auto) ser detenido por cierto tiempo y despus
liberado. La liberacin del tem indicar la finalizacin del servicio de gasolina.

Como el tiempo de servicio para poner gasolina sigue una distribucin aleatoria se
deber presionar el botn Random Delay e indicar la distribucin que corresponda.

f) Servicio de aceite por parte del 30% de autos.

Para modelar este supuesto es necesario diferenciar el 30% de autos que requieren
aceite sobre los que no, una forma de hacerlo es colocar un atributo que represente si se
desea o no este servicio, as que se utilizar el bloque Set Attribute, el cual asignar
un valor de 0 para los autos que requieren aceite y 1 para los que no.















Simulacin con Extend Curso 2007-2008
Fig. 61. Modelacin del servicio de aceite utilizando atributos.

No obstante falta considerar en el modelo que los autos que requieren aceite tardarn
0.5 min. ms sobre la media del tiempo de servicio de gasolina. Las bombas tendrn un
tiempo para los autos que solo quieran gasolina y otro para los que quieran aceite y
gasolina.

Para ello emplearemos el bloque Select input. Adems se combinar con el bloque de
decisin para satisfacer el funcionamiento del modelo.






















Fig. 62. Resolucin del modelo de la Gasolinera.


SOLUCIN: PROBLEMA 8. FUNCIONAMIENTO DE UNA OFICINA
BANCARIA.

Una oficina bancaria abre de 9:00 a 17:00hrs. Normalmente la oficina atiende a 40
clientes por hora. Dispone de dos cajas una con ms experiencia que otra para atender al
pblico. Si la cola arriba a 3 personas se abre una caja ms hasta reducir la cola a 1 o 0
personas. Segn las operaciones a hacer los clientes tardan aproximadamente lo que
indica la tabla.

1. Identificar los elementos bsicos que estn en juego.

a) Arribo de clientes al banco.
b) Esperar si la caja est ocupada.
c) Abrir una caja ms si la cola arriba a 3 personas.
d) Servicio de caja.


Simulacin con Extend Curso 2007-2008






a) Arribo de clientes al banco.

Para modelar el arribo de clientes se tiene que seleccionar un bloque cuya funcin sea
generar tems (personas) acorde a una distribucin aleatoria. Caracterstica que coincide
con la funcin desempeada por el bloque Generator.











Fig. 63. Bloque generator.


b) Esperar si la caja esta ocupada.
Para representar este hecho se ocupar la cola FIFO, en donde los primeros clientes en
entrar sern los primeros en salir.

c) Abrir una caja ms si la cola arriba a 3 personas.

Para ello usaremos una combinacin del bloque Decision y del bloque Unbatch, de
manera tal que cuando la cola registre un valor igual o mayor de tres active el bloque
Unbatch, el cual demandar tems para la tercera caja en servicio.

d) Servicio de caja.

Para representar la accin del lavado de auto dentro del modelo emplearemos el bloque
Activity delay en donde el tem (persona) ser detenido por cierto tiempo y despus
liberado. La liberacin del tem indicar la finalizacin del servicio de banco.





Simulacin con Extend Curso 2007-2008


Fig. 64. Resolucin del modelo del Banco.


Bibliografa

[1] A. M. Law and W. D. Kelton "Simulation, Modeling and Analysis" .
McGraw-Hill, 1982

[2] S. M. Ross. "A course in simulation ". Macmillan, 1990.

[3] P. Bratley, B. L. Fox y L. E. Schrage. "A guide to simulation". Springer-
Verlag, 1987

Das könnte Ihnen auch gefallen