Ejemplo 3 Simio
-
Upload
julio-mora -
Category
Documents
-
view
219 -
download
0
Transcript of Ejemplo 3 Simio
-
7/27/2019 Ejemplo 3 Simio
1/4
Ejemplo 3.
Seleccionar de la lista de enrutamiento dinmico.
En este ejemplo vamos a utilizar la opcin: Seleccionar de la lista de enrutamiento,
para enviar a las entidades que llegan al servidor con el menor nmero de entidades
de espera en la cola.
Considere el siguiente sistema con llegadas de forma dinmica dirigida a uno de los
tres servidores, basndose en la longitud de la cola ms pequea.
Server1 tiene un tiempo de procesamiento constante de 20 minutos. Servidor2 tiene
un tiempo de procesamiento aleatorio en minutos con una distribucin triangular con
un mnimo de 1, de modo 3, y un mximo de 8. Server3 tiene un procesamiento tiempo
de 0,1 minutos. Observe la figura siguiente.
Corra Simio y coloque un Source, tres Servers y un Sink.
Use el componente Path, para unir Source a los nodos de entrada de cada uno de los
tres servidores y tambin conecte cada salida de los Servers al Sink.
Edite el Processing Time, de cada uno de los servers (seleccione Processing Time en
la ventana de Property) y click sobre la flecha para abrir el editor de expresiones
introduciendo:
Server1 ..tiempo de procesamiento constante de 20 minutos.
Server2 .tiempo de procesamiento random en minutos, con una distribucin
triangular y un mnimo de 1, modo de 3 y mximo de 8.
Server3 tiempo de procesamiento de .1 minutos.
Tambin, fije la capacidad del Input Buffer (Buffer Capacity) de cada Server a cero.
Esto forzara a las entidades entrando al Server, esperar en el camino hasta que no
est el input buffer disponible.
Cambie la opcin: Allow Passing de las rutas o caminos conectados del nodo de salida
del Source a los nodos de entrada del Server a False, para que las entidades sepongan en fila a lo largo del camino o ruta.
-
7/27/2019 Ejemplo 3 Simio
2/4
Antes de usar la opcin: Select From List, para seleccionar el destino debemos
primero definir una lista de nodos objetivo.
En este caso nuestros nodos objetivos son: Input@Server1, Input@Server2, e
Input@Server3.
Crearemos una lista de estos nodos para seleccionar nuestro destino.
Para definir una lista en Simio, click en la pestaa de Definitions y entonces click
sobre el icono de Lists en el selector de panel en la parte izquierda.
En la seccin Create (parte superior izquierda), podemos dar click sobre los iconos
para crear una cadena (String), objeto (Object), nodo (Node), o transporte
(Transporter).
String lists, son utilidades para crear propiedades o estados que tiene valores de
nombres especficos (por ejemplo, Small, Medium, Large).
Los Object lists, son tiles para seleccionar objetos especficos para interactuar con,
por ejemplo, seleccionando un operador por su capacidad.
Transporter lists, son utilidades para seleccionar un transporte (tranporter) particular
para solicitar un pickup (recogida).
En este caso, damos click sobre el icono Node para crear una lista de los nodos de
entrada del Server, para seleccionar las entidades de enrutamiento.
Daremos esta lista de nodos los nombres Servers, y con los nombres de los nodos de
entrada para los tres servers, como sigue:
-
7/27/2019 Ejemplo 3 Simio
3/4
Ahora que hemos definido nuestra lista, regresamos al facility model dando click a la
pestaa de Facility.
Click sobre el nodo de salida para el Source, para especificar la lgica de
enrutamiento desde este nodo a los tres Servers.
En la seccin: Routing Logic de la ventana Property, cambiamos: Entity Destination
Type a Select From List, y especificamos el Node List Name como el nodo creado
llamado: Servers.
En seguida, fije el Selection Goal a Smallest Value y conserve la expresin default
Selection Expression, como:
Candidate.Node.InputLocation.Overload
A continuacin se explica lo que significa esta expresin:
Las expresiones, son normalmente evaluadas en el contexto del objeto padre o elobjeto entidad ejecutando el process logic, el cual en este caso es nuestro modelo
principal o la entidad siendo enrutada.
Cuando estamos buscando los nodos en la lista, queremos decirle a Simio como usar
el contexto del objeto candidato que nosotros miramos en la bsqueda, y no el objeto
padre o entidad enrutada.
La palabra clave: Candidate es usada para este propsito.
La siguiente parte de la expresin, le dice a Simio que el tipo de objeto siendo
examinado es una clase: Node.
El InputLocation, especifica una referencia a un lugar de entrada en este nodo,
tpicamente la entrada o estado de procesamiento en el objeto asociado.
Finalmente, la funcin Overload es una funcin constructiva sobre la clase Node que
retorna la sobrecarga en este nodo. La sobrecarga est definida como el nmero de
entidades en esta localizacin, ms el nmero esperando entrar en esta localizacin,
ms el nmero de entidades viajando con este nodo como su destino, menos la
capacidad en esta localizacin.
Note que, el nmero positivo indica que la localizacin de entrada est actualmentesobrecargada (mas ah o sobre el camino que la capacidad disponible).
Un valor negativo, indica que la capacidad es aun disponible, basado sobre aquello
en o viajando al Server.
Aunque esto, generalmente balancea la carga entre los tres servers, podemos hacer
un cambio adicional para seguir mejorando el balance, especificando en la propiedad:
Blocked Destination Rule como: Prefer Available.
Note que podemos tener una situacin, donde ambos Server1 y Server2 estn
ocupados, Server3 esta desocupado, pero ninguna entidad est actualmente viajando
a alguno de los servers.
-
7/27/2019 Ejemplo 3 Simio
4/4
Mediante especificando la regla: Prefer Available, seleccionaremos Server3 en este
caso, el cual produce un flujo de trabajo ms balanceado para los tres Servers.
Nuestro modelo final con las tres opciones se muestra en seguida: