Sie sind auf Seite 1von 37

Simulacin de Sistemas

MODELAMIENTO BASICO CON REDES

5.1 INTRODUCCIN. .............................................................................................................................. 2

5.2 RED VISUAL SLAM: EJEMPLO DE UNA COLA SIMPLE. ....................................................... 2


5.2.1 Modelamiento de Colas y Servidores. ...................................................................................... 3
5.2.2 Modelamiento de llegadas de las entidades. ............................................................................. 3
5.2.3 Modelamiento de la Salida de las Entidades. ........................................................................... 4
5.2.4 Combinacin de los Conceptos de Modelamiento. .................................................................. 4

5.3 MODELACIN DE REDES CON VISUAL SLAM. ...................................................................... 6


5.3.1 Ruteo de entidades desde los nodos (Ramificacin). ............................................................... 7
5.3.2 Variables VISUAL SLAM, Funciones, y Variables Aleatorias ............................................... 8
5.3.3 Instruccin EQUIVALENCE para variables VISUAL SLAM .............................................. 11
5.3.4 Instruccin ARRAY ............................................................................................................... 11

5.4 INTRODUCCIN A LOS ELEMENTOS BSICOS DE REDES ............................................... 11

5.5 NODO CREATE. .............................................................................................................................. 12

5.6 Nodo QUEUE..................................................................................................................................... 12

5.7 NODO TERMINATE. ...................................................................................................................... 15

5.8 NODO ASSIGN. ................................................................................................................................ 15

5.9 ACTIVIDADES. ................................................................................................................................ 17


5.9.1 Duracin de una actividad. ..................................................................................................... 18
5.9.2 Especificacin de Probabilidades. .......................................................................................... 18
5.9.3 Especificacin de Condiciones. .............................................................................................. 19

5.10 EJEMPLOS ................................................................................................................................... 19


5.10.1 Ilustracin 5 - 1. Dos Servidores Paralelos. ........................................................................... 19
5.10.2 Ilustracin 5 - 2. Dos tipos de entidades................................................................................. 20
5.10.3 Ilustracin 5 - 3. Bloqueos y Desvos desde los nodos QUEUE. ........................................... 21
5.10.4 Ilustracin 5 - 4. Ramificacin Condicional y Probabilstica. ................................................ 22
5.10.5 Ilustracin 5-5. Tiempo de Servicio dependiente del nodo de trmino. ................................. 23

5.11 NODO GOON ............................................................................................................................... 24


5.11.1 Ilustracin 5 - 6. Archivos especificados por Atributo y el nmero de la Actividad de
Servicio. 24

5.12 NODO COLCT. ............................................................................................................................. 25

5.13 INTRODUCCIN A EJEMPLOS E INSTRUCCIONES DE CONTROL ............................. 30

5.14 EJEMPLO 5-1. ESTACIONES DE TRABAJO EN SERIE ..................................................... 32

5.15 EJEMPLO 5-2. INSPECCIN y ESTACIONES DE AJUSTE EN UNA LNEA DE


PRODUCCIN. ............................................................................................................................................. 33

5.16 EJEMPLO 5-3. OPERACIONES DE EXTRACCIN. ............................................................ 34

5.17 NODO SELECT ............................................................................................................................ 34

APUNTES AWESIM 1
Simulacin de Sistemas

5.1 INTRODUCCIN.

Consideremos un sistema de cola, en el cual los elementos que forman el sistema llegan,
esperan, son procesados por un recurso, y luego salen del sistema.

Esta secuencia de eventos, actividades, y decisiones se consideran como un proceso.


Las entidades fluyen a travs del proceso. De este modo, los elementos del sistema se
consideran como entidades. Una entidad posee atributos, a los cuales se le puede asignar
un valor, lo que permite al modelador distinguir entidades que sean del mismo tipo.

Por ejemplo, un atributo de una entidad puede ser el tiempo en que la entidad ingresa al
sistema. El valor del atributo acompaa a la entidad a travs de toda la red que describe
el proceso. Los recursos del sistema pueden ser los cajeros, las herramientas o las cosas
por las que las entidades compiten mientras fluyen por el sistema. Un recurso puede
estar ocupado o desocupado.

La red representa todos los posibles caminos que una entidad puede seguir, desde su
creacin hasta que abandona el sistema.

5.2 RED VISUAL SLAM: EJEMPLO DE UNA COLA SIMPLE.

En este ejemplo se simula un sistema de control de calidad de aparatos de radio. En este


sistema, las radios que llegan se envan a un inspector quien examina a cada una de
ellas. Despus de la inspeccin, la radio deja el rea de inspeccin.

Aspectos considerados:

1.- Llegada de radios al rea de inspeccin.


2.- Acumulacin de radios esperando inspeccin.
3.- La inspeccin de las radios.

Las radios son las entidades, el inspector es el recurso que entrega un servicio, la
inspeccin es la actividad de servicio, y la acumulacin es la cola. El diagrama del
sistema se muestra en la Figura 5-1.

APUNTES AWESIM 2
Simulacin de Sistemas

Llega Radio Cola de Radios Inspeccin Radio


Esperando Atencin Inspeccionada

Figura 5-1: Sistema Inspeccin de Radios.

5.2.1 Modelamiento de Colas y Servidores.

El paso del tiempo se representa por una rama. La rama es la representacin grfica de
las actividades. El servicio de inspeccin es una actividad y se representa por una rama.

Si el servicio se esta desarrollando, esto es, si el servidor (el inspector) esta ocupado, las
entidades que llegan (radios), deben esperar. La espera produce una cola (un nodo
QUEUE). Entonces, en un sistema de un servidor y una cola se puede representar por un
nodo QUEUE y una rama como en la Figura 5-2.

Figura 5-2: Nodo QUEUE y actividad de Servicio.

En nuestro ejemplo, las radios deben esperar por el servicio en una cola.

Como pueden haber varias colas y varios servicios en una red, cada una de ellas se
identifica por un nmero. As, las entidades que esperan en una cola se mantienen en el
archivo con un nmero IFL.
En las actividades se define el nmero de servidores paralelos N que puede haber, es
decir, el nmero de entidades posible que pueden procesarse simultneamente. Las
actividades se identifican con el nmero A.

El procedimiento para ordenar las entidades en el archivo no se indica en las figuras


anteriores, cosa que se har ms adelante.

Tambin se puede especificar la cantidad IQ de entidades que inicialmente estn en la


cola, y la capacidad QC de ellas.

5.2.2 Modelamiento de llegadas de las entidades.

Las entidades se incorporan a la red mediante el nodo CREATE.

APUNTES AWESIM 3
Simulacin de Sistemas

Figura 4-3: Nodo Create.

TF : tiempo en que se crea la primera entidad y se incorpora al sistema.


TBC: tiempo entre la creacin de entidades.
MA : nmero del atributo en el cul se guarda el tiempo en que se crea la entidad.
MC: cantidad mxima de entidades que se puede generar.
M: cantidad mxima de ramas por las cuales las entidades pueden fluir.

5.2.3 Modelamiento de la Salida de las Entidades.

Hasta ahora se ha modelado el comportamiento de entrada de las entidades y de las


operaciones de espera y de servicio. Lo que queda es modelar el proceso de salida de
una entidad. Para nuestro sistema, se har que las entidades dejen el sistema despus de
haber terminado el servicio. El modelamiento de la salida se logra con el nodo
TERMINA TE

Figura 5-4: Nodo Termnate.

El nodo TERMINATE es una de las maneras para especificar la detencin de la


simulacin. Cada simulacin de una malla se denomina una carrera. El nodo
TERMINATE se puede usar para especificar que se detenga la simulacin al llegar TC
entidades a este nodo. Como se ver ms adelante, la simulacin tambin se puede
detener despus de un periodo de tiempo, por ejemplo, despus de 1000 horas de
operacin.

5.2.4 Combinacin de los Conceptos de Modelamiento.

En la Figura 5-5 se muestra el uso combinado de los tres nodos mencionados


anteriormente, los que representan el ejemplo de la inspeccin de radios.

MALLA 1: Inspeccin de Radios. Las instrucciones que representan estos nodos son las
siguientes:

APUNTES AWESIM 4
Simulacin de Sistemas

CREATE,EXPON( 10), 7,,,;


ACT, 3;
QUEUE(1);
ACT(1)/3,9;
TERM, 100;

Tambin se requiere de las siguientes instrucciones de control, que son complementarias


a los nodos.

GEN;
LIMITS;
NETWORK;
FIN;

** AweSim SUMMARY REPORT **


Wed Mar 05 17:06:33 2003

Simulation Project :
Modeler :
Date :
Scenario : BASECASE

Run number 1 of 1
Current simulation time : 974.622431
Statistics cleared at time : 0.000000

** FILE STATISTICS REPORT for scenario 00 **

File Label or Average Standard Maximum Current Average


Number Input Location Length Deviation Length Length Wait Time

1 QUEUE Line 3 5.889 5.124 16 6 53.643


0 Event Calendar 3.253 0.606 6 3 9.969

** ACTIVITY STATISTICS REPORT for scenario 00 **

Activity Label or Average Standard Entity Maximum


Number Input Location Utilization Deviation Count Utilization

1 Line 2 0.329 0.550 107 3

Activity Current
Number Utilization

1 0

** SERVICE ACTIVITY STATISTICS REPORT for scenario 00 **

Activity Label or Server Entity Average Standard


Number Input Location Capacity Count Utilization Deviation

2 Line 4 1 100 0.923 0.266

Activity Current Average Maximum Maximum


Number Utilization Blockage Idle Time Busy Time
or Servers or Servers

2 1 0.000 23.049 702.000

APUNTES AWESIM 5
Simulacin de Sistemas

En el siguiente ejemplo se tiene la misma estructura que en el ejemplo anterior, slo que
algunos de los valores se asignan de acuerdo a funciones de distribucin de
probabilidades.

MALLA 2: Uso de funciones probabilsticas.

A continuacin, en el ejemplo 3, se presenta el caso de un almacn donde hay un cajero.


El tiempo entre las llegadas de los clientes es aleatoria entre 1 y 8 minutos. Cada tiempo
entre llegadas tiene la misma probabilidad. El servicio del cajero vara entre 1 y 6
minutos. Se desea simular la llegada y el servicio de veinte clientes. El modelo vuelve a
ser el mismo que en los ejemplos anteriores.

MALLA 3: Misma estructura, diferente frecuencia de creacin.

TERMINOLOGIA:

Entidades: Son las unidades de trfico que fluyen a travs del sistema.

Atributos: Son valores numricos asignados a una entidad para especificar sus
caractersticas.

Actividades: Representa la demora en el movimiento de una entidad.

Nodos: Indican el inicio y el trmino de una actividad.

Recurso: Representa los elementos que una entidad puede requerir a medida que avanza
por las actividades.

Puertas: Regula el flujo de las entidades a travs de puntos de control en la red.

5.3 MODELACIN DE REDES CON VISUAL SLAM.

Las instrucciones Visual SLAM consisten de un grupo de smbolos interconectados, los


que representan las operaciones del sistema en estudio. Los smbolos se pueden
convertir en una manera tal que para que se puedan incorporar a un programa que
analiza el modelo usando las tcnicas de simulacin. Las entradas que se usan para

APUNTES AWESIM 6
Simulacin de Sistemas

incorporar la representacin grfica de Visual SLAM es a travs de instrucciones, que


son las mostradas anteriormente.

Se usa punto y coma para terminar una instruccin. Cuando una coma es el ltimo
carcter en la lnea, la instruccin continua en la lnea siguiente. Los comentarios se
pueden incluir despus del punto y coma. El orden de los campos de una instruccin
esta prefijado.

En la red, las actividades se representan con lneas slidas. Las lneas segmentadas
representan una transferencia directa de las entidades entre nodos.

5.3.1 Ruteo de entidades desde los nodos (Ramificacin).

Las entidades se rutean a travs de las ramas que salen de los nodos. El nmero mximo
de ramas, M, que se pueden seleccionar, se especifican al lado derecho de los nodos
mediante un valor asignado a M. El valor por defecto de M es INF. Cuando M es igual a
1, se tomar a lo ms una rama. Si hay probabilidades asignadas a las ramas que salen
de un nodo que tiene asignado el valor de 1 a M, entonces se dice que el nodo tiene una
ramificacin probabilstica. Si no hay probabilidades ni condiciones establecidas en las
ramas, y M es igual al nmero de ramas que emanan desde el nodo, entonces se tiene
una ramificacin determinstica. La ramificacin determinstica hace que una entidad
sea duplicada y ruteada por cada uno de las ramas del nodo.

El concepto de ramificacin determinado por el valor de M es muy general. Permite el


ruteo de entidades sobre un subconjunto de ramas para las cuales se establecen las
condiciones. Por ejemplo, si M es igual a 2 y hay cinco ramas que salen del nodo,
entonces la entidad se podra rutear por las dos primeras ramas para las cuales se
cumplen las condiciones.

Tambin se pueden representar situaciones an ms complejas, en las que se mezclan


ramificaciones probabilsticas y condicionales. Haciendo pi la probabilidad de rutear
una entidad por una rama i y haciendo Cj la condicin de rutear por la rama j, como en
la siguiente situacin:

El tipo de nodo que se muestra es un GOON. Cada entidad que llega al nodo GOON
hace que este sea liberado. El nmero dos al interior especifica el valor de M antes
mencionado. La instruccin es la siguiente:

GOON, M;

APUNTES AWESIM 7
Simulacin de Sistemas

para este ejemplo, en que M es Igual a 2, significa que a lo ms dos ramas de las cinco
se van a tomar. Suponiendo que las ramas se evalan en el orden 1,2,3,4 y 5, se hace
una seleccin aleatoria entre las ramas 1 y 2 (p1 + p2 debe ser igual a 1) y luego se
tomara la rama 3 si se cumple la condicin 3. Si no, se prueba la condicin 4 y luego la
5.

5.3.2 Variables VISUAL SLAM, Funciones, y Variables Aleatorias

En la Tabla 5-1 se muestran las variables usadas en Visual SLAM y sus definiciones.
Los vectores ATRIB, LTRIB y STRIB definen los atributos de una entidad que fluye a
travs de la red. Cada entidad tiene su propio vector, el que se anexa a la entidad
durante todo su trayecto por la red. En ocasiones se hace referencia a la entidad vigente
para indicar aquellas que recin se han creado o que hayan completado una actividad y
estn llegando a un nodo en la red. La variable II es un entero que normalmente se usa
como un subndice para otras variables Visual SLAM, por ejemplo, ATRIB[II]. Las
variables XX[I], LL[I] y SZ[I] son variables de estado que mantienen un valor hasta que
el usuario lo cambie a travs del modelo.

ARRAY[I,J] proporciona un mecanismo para almacenar tablas de valores en filas y


columnas. Se dispone de una instruccin ARRAY para inicializar la tabla ARRAY. Las
variables DD[I] y SS[I] tienen una definicin especial que se usan para modelar
sistemas continuos. Especficamente, la variable DD[I] se define como la primera
derivada de SS[I] cuando se usan ecuaciones diferenciales para representar el estado de
un sistema.

APUNTES AWESIM 8
Simulacin de Sistemas

Tabla 5-1. Variables Visual SLAM


Nombre de Variable Definicin

ATRIB[I] Atributo I de la entidad vigente


LTRIB[I] Atributo entero de la entidad vigente.
STRIB[I] Atributo de caracteres de la entidad vigente.
ETYPE Atributo entero para dar a entidad vigente un tipo de nmero.
ENUM Identificador entero nico de slo de lectura de la entidad vigente.
ERETURN Valor almacenado con la entidad vigente en el ltimo return de una subred.
II Variable entera global; II se usa frecuentemente como un sub ndice.
XX[I] Vector real global o del sistema.
LL[I] Vector entero global o del sistema.
SZ[I] Vector de caracteres global o del sistema.
ARRAY[I,J] Arreglo global o del sistema.
SS(I) Valor de la variable de estado I
DD(I) Valor de la derivada de la variable de estado I.
TNOW Tiempo vigente

La Tabla 5-2 presenta las funciones de redes de Visual SLAM y variables aleatorias que
se usan para modelar los aspectos lgicos y estocsticos de un sistema.

La funcin GGTBLN(IRX, IRY, XVALUE) es una funcin Visual SLAM de bsqueda


en una tabla la que se puede usar directamente desde la red. Los primeros dos
argumentos de la funcin GGTBLN entregan los punteros para las filas de ARRAY que
contienen los valores dependientes de la variable Y correspondiente a los valores de la
variable independiente X. Si IRY=5 e IRX=3, entonces el valor de Y almacenado en
ARRAY(5,1) corresponde al valor de X almacenada en ARRAY(3, 1). XVALUE es el
valor de X para el cual se desea un valor correspondiente de Y. Como ejemplo
considere la siguiente tabla

K ARRAY(3,K) ARRAY(5,K)

1 100 10
2 200 20
3 300 15
4 400 10
5 1000 0

La especificacin GGTBLN(3, 5, 400) asigna un valor de 10 a la variable que tiene la


funcin GGTBLN. Se usa interpolacin lineal para valores intermedios, as es que se
obtendra un valor de 5 cuando se invoque GGTBLN(3, 5, 700). Para valores fuera del
rango de la variable independiente se asigna los valores extremos de la variable
dependiente. Es decir, para valores de XVALUE menor de 100 entrega un valor de 10, y
para valores de XVALUE superior a 1000, asigna un valor de 0.

La funcin USERF(N) es una funcin que se puede insertar en un modelo de redes que
incluye una subrutina codificada en C o en Visual Basic. El argumento N es un cdigo
que diferencia las distintas invocaciones de la funcin USERF que haga el modelador.
La funcin USERF se puede usar en cualquier parte de una red Visual SLAM, donde se
pueda usar una variable Visual SLAM. Esto permite una mayor flexibilidad en el

APUNTES AWESIM 9
Simulacin de Sistemas

modelamiento con Visual SLAM.

Visual SLAM contiene una funcin DPROBN(IC, IV, IS) para obtener una muestra de
una funcin de probabilidad representado por un histograma. Las probabilidades
acumuladas asociadas con el histograma se almacenan en la fila IC de la variable global
ARRAY y el valor correspondiente del histograma se almacenan en la fila IV de
ARRAY. IS es un nmero de la corriente aleatoria. El uso de DPROBN es similar al uso
de la funcin de bsqueda en tabla GGTBLN con un nmero aleatorio usado como
valor independiente para el cual se debe obtener una muestra aleatoria.

Tabla 5-2: Listado de variables/funciones de las cuales es posible obtener valores:


Variable/Funcin Definicin

ASSERT(VAL, LOW, HIGH) Funcin para verificar el rango de valores y estar seguro de que se
encuentra entre dos valores. El valor de retorno es VAL. Se produce un
error si VAL esta fuera del rango.
GETEXCEL(SHEET,IROW,ICO Toma datos desde una planilla Excel de la fila IROW, columna ICOL.
L)
GGTBLN(IRX,IRY,XVALUE) Bsqueda en una tabla de la fila IRY del arreglo global al interpolar
XVALUE entre valores de la variable independiente en la fila IRX.
NNACT(I) Nmero de entidades activas en la actividad I en el momento vigente.
NNCNT(I) Nmero de entidades que han completado la actividad I.
NNGAT(GLBL) Condicin de la compuerta GLBL en el momento vigente: 0 abierto, 1
cerrado.
NNRSC(RLBL) Nmero actual de unidades del recurso del tipo RLBL que estn
disponibles.
NRUSE(RLBL) Nmero actual de unidades del recurso del tipo RLBL en uso.
NNGRP(I) Cantidad vigente de unidades del grupo I que estn disponibles.
NGUSE(I) Cantidad vigente de unidades del grupo I que estn en uso.
NNQ(I) Nmero de entidades en el archivo I en el momento vigente (recuerde
que las cantidades en el nodo QUEUE se guardan en archivos).
PROB(P) Slo para ser usada en el campo de la condicin de la ACTIVITY.
Entrega una valor verdadero si un nmero aleatorio est entre 0 y 1 y es
menor que P. P debe estar entre 0 y 1.
USERF(N) Un valor obtenido desde una funcin escrita por el usuario USERF con
el nmero de funcin del usuario N.
DRAND(IS) Nmero pseudo - random obtenido desde la corriente generadora IS de
nmeros al azar.
EXPON(XMEAN, IS) Una muestra de una poblacin con distribucin exponencial con media
XMEAN usando la corriente IS.
UNFRM(ULO, UHI, IS) Una muestra desde una distribucin uniforme en un intervalo ULO y
UHI, usando la corriente de nmeros aleatorios IS.
WEIBL(ALPHA, BETA, IS) Una muestra desde una distribucin Weibull con parmetro escalar
ALPHA y parmetro de forma BETA usando la corriente de nmeros
aleatorios IS.
TRIAG(XLO, XMODE, XHI, IS) Una muestra desde una distribucin triangular en el intervalo XLO y
XHI con moda XMODE usando la corriente de nmeros aleatorios IS.
RNORM(XMN, STD, IS) Una muestra desde una distribucin normal con media XMN y
desviacin estndar STD usando la corriente de nmeros aleatorios IS.
RLONG(XMN, STD, IS) Una muestra desde una distribucin lognormal con media XMN y
desviacin estndar STD usando la corriente de nmeros aleatorios IS.
ERLNG(EMN, XK, IS) Una muestra desde una distribucin Erlang la que es la suma de XK
muestras exponenciales con media EMN usando la corriente de
nmeros aleatorios IS.
GAMA(BETA, ALPHA, IS) Una muestra desde una distribucin gamma con parmetros BETA y
ALPHA usando la corriente de nmeros aleatorios IS.
BETA(THETA, PHI, IS) Una muestra desde una distribucin beta con parmetros THETA y PHI
usando la corriente de nmeros aleatorios IS.

APUNTES AWESIM 10
Simulacin de Sistemas

NPSSN(XMN, IS) Una muestra desde una distribucin Poisson con media XMN usando la
corriente de nmeros aleatorios IS.
DPROBN(IC, IV, IS) Una muestra de una funcin de probabilidades en la que la probabilidad
acumulativa est en la fila IC de ARRAY y los correspondientes valores
estn en la fila IV de ARRAY usando la corriente de nmeros aleatorios
IS.
VSNEXPR(VSN, INST, EXPR) Evala una expresin dentro de la submalla VSN e instancia INST.
Ejemplo: VSNEXPRN(MACHGR, DRILL, NNQ(1)).

5.3.3 Instruccin EQUIVALENCE para variables VISUAL SLAM

Visual SLAM tiene una instruccin EQUIVALENCE para que los nombres de las
variables puedan ser usadas textualmente por las variables Visual SLAM en la
construccin de los modelos. El formato de la instruccin EQUIVALENCE es:

EQUIVALENCE{{nombre, variable Visual SLAM}, repetir};

5.3.4 Instruccin ARRAY

La instruccin ARRAY se usa para inicializar una fila de la variable matricial global
ARRAY. El nmero de elementos en una fila de ARRAY puede variar y, de aqu que se
denomina tabla variable. El formato de la instruccin ARRAY es:

ARRAY, IROW, NELEMENTS, {valor inicial, repetir};

donde IROW es un entero constante que define la fila en la cual los valores iniciales
estn siendo entregados; NELEMENTS es el nmero de elementos en esta fila; y
valores inicial son constantes que se incorporan en el orden de las columnas de la fila.
Por ejemplo, la instruccin

ARRAY, 2, 4, {5, 4, 2, 7.3};

Define:
ARRAY[2, 1] como 5; ARRAY[2, 2] como 4; ARRAY[2,3] como 2 y ARRAY[2, 4]
como 7.3.

Los elementos de ARRAY se pueden usar en la red Visual SLAM donde se permita una
variable Visual SLAM. Los sibndices pueden ser constantes o variables Visual SLAM:
II, XX(I) y ATRIB(I) donde I es una constante positiva.

5.4 INTRODUCCIN A LOS ELEMENTOS BSICOS DE REDES

Hay siete elementos de redes bsicos en Visual SLAM. Estos elementos de redes son:
nodo CREATE, nodo QUEUE, nodo TERMINATE, nodo ASSIGN, ramas de
ACTIVITY, nodo GOON y nodo COLCT. Con estos elementos de redes bsicos, se
pueden construir diversos modelos.
El nodo CREATE es un mtodo para crear entidades en la llegada o insertarlas en la
red. El nodo QUEUE se usa para modelar procesos de decisiones complejas que se

APUNTES AWESIM 11
Simulacin de Sistemas

presenten cuando una entidad llega a un servicio donde la decisin sobre esta entidad
depende del estado del servidor y del nmero de entidades que ya estn esperando en la
cola por el servidor. El nodo ASSIGN se usa para asignar un nuevo valor o uno
actualizado a variables Visual SLAM. Cuando una entidad llega a un nodo ASSIGN, se
realizan las asignaciones establecidas en el nodo ASSIGN. Las ramas de ACTIVITY
representan explcitamente las demoras de las entidades en atravesar la red. Las
actividades de servicio son usadas para representar mquinas, operadores y elementos
similares que puedan procesar un nmero limitado de entidades simultneamente.
Previo a una actividad de servicio, se debe definir una cola o rea de espera lo que se
logra con el uso del nodo QUEUE. Las actividades que modelan explcitamente
demoras pero que no tienen un lmite en el nmero de entidades simultneas se
denominan actividades regulares. Los nodos GOON se usan para separar las actividades
y pueden modelar lgicas de ruteos de las entidades que terminan la actividad.
Informacin estadstica de las entidades y de las variables Visual SLAM se obtiene con
el uso del nodo COLCT. Cada uno de estos elementos de red bsicos se describirn en
detalle.

5.5 NODO CREATE.

CREATE, TBC, TF, MA, MC, M;

Este nodo genera entidades. La primera entidad se crea en el tiempo TF y las siguientes se
generan con intervalos de TBC unidades de tiempo. Las entidades se crearn hasta el lmite de
MC entidades. El tiempo en que se crea cada entidad se registra en el atributo MA de dicha

entidad.
Los nodos CREATE son procesados por Visual SLAM de acuerdo a las ubicaciones de la
instruccin. La instruccin ms cercana a la instruccin NETWORK se procesa primero.

5.6 Nodo QUEUE.

APUNTES AWESIM 12
Simulacin de Sistemas

QUEUE(IFL), IQ, QC, BALK(NLBL) o BLOCK;

Un nodo QUEUE es un lugar de la red en el que las entidades esperan por un servicio.
Cuando una entidad llega al nodo QUEUE, la disponibilidad de sta depende del estado
del servidor que sigue al nodo QUEUE.

Cuando una entidad est esperando en un nodo, sta se guarda en un archivo el cual
mantiene los atributos de la entidad y su posicin relativa con respecto a las otras
entidades que esperan en la misma QUEUE. El orden en que las entidades esperan se
especifica fuera de la red, en una instruccin de prioridad PRIORITY. Las entidades se
pueden ordenar: FIFO, LIFO, LVF(NATR), HVF(NATR).

Figura 5-8: Nodo QUEUE

Las colas pueden contener entidades al inicio de la carrera, indicndose el nmero


inicial de entidades en el nodo QUEUE, IQ. Estas entidades parten con todos sus
atributos en valor cero. Cuando IQ > 0, todas las actividades de servicio que salen del
nodo se supone que estn ocupadas inicialmente trabajando en otras entidades con todos
sus atributos igual a cero.

QC es la capacidad del nodo. Cuando una entidad llega a un QUEUE que esta completo,
sta puede ser transferida (BALK), o bloqueada (BLOCKED).

En el caso de transferencia (balking), la entidad puede ser traspasada a otro nodo de la


red. Este otro nodo debe tener su etiqueta, de lo contrario, la entidad se elimina del
sistema. Cuando una entidad est bloqueada, debe esperar hasta que exista un espacio
disponible en la prxima cola. La actividad que acaba de ser desarrollada por la entidad
bloqueada, tambin se considera bloqueada. Los nodos QUEUE slo pueden bloquear
actividades de servicio.

APUNTES AWESIM 13
Simulacin de Sistemas

Ejemplos de transferencia y de bloqueo de entidades se muestran en las Figura 5-9 y


Figura 5-10.

QUEUE(1 ),0,4,BALK(QUE2); QUEUE(3),2, 10,BLOCK;


Fig. 5 - 9 Fig. 5 - 10

El nmero del archivo del nodo QUEUE se puede especificar por medio de uno de los
atributos de la entidad que llega. Para hacer esto, se debe definir el nmero, o el rango
de los nmeros, con que se van a identificar de los archivos. El nmero del archivo IFL,
se especifica de la forma ATRIB(I) = J,K donde I es el nmero del atributo; el rango
desde J hasta K son los nmeros de archivos permitidos que se puede especificar por
ATRIB(I).

QUEUE, ASSERT(LTRIB[2], 3, 5), 0;


Fig. 5 11

En la instruccin QUEUE, el atributo 2 define el nmero del archivo, y en la instruccin


de la actividad, el nmero de la actividad que va a desarrollar la entidad, la que puede
ser 3, 4 5.

Cuando hay ms de una actividad despus de una cola y los servicios no son iguales, se
debe efectuar un proceso de seleccin. Esta seleccin se hace con un nodo SELECT
asociado al nodo QUEUE.

NODO SELECT
Fig.5 - 12

Cuando una entidad llega a un nodo QUEUE, se consulta de inmediato su nodo


SELECT. Cuando SELECT encuentra un servidor libre, la entidad que llega al nodo
QUEUE es transferida al nodo SELECT e inmediatamente puesto a ejecutar la actividad
libre. Un posible uso es:

APUNTES AWESIM 14
QUE1
Simulacin de Sistemas

Este modelo hace que una entidad sea bloqueada si hay dos entidades esperando en
QUE1. Hay dos servidores que pueden procesar una entidad que llega a QUE1.
Inicialmente hay una entidad esperando.

5.7 NODO TERMINATE.

La instruccin es TERMINATE, TC;

Se usa para destruir las entidades de la red. Este nodo puede ser usado para especificar
el nmero de entidades que deben ser procesadas en una corrida. Este nmero se
determina en TC.

5.8 NODO ASSIGN.

ASSIGN,{{VAR, VALUE}, repite}, M;

Este nodo se usa para asignar valores a los atributos de una entidad que pasa por el
nodo, o para asignar valores a las variables del sistema que pertenecen a la red en

APUNTES AWESIM 15
Simulacin de Sistemas

general. Las variables a las cuales se les puede asignar un valor en este nodo se indican
en la Tabla 5-1.

En simulacin combinada, las asignaciones se pueden usar para cambiar los valores de
variables que son parte de modelos discretos o continuos.

La variable XX(I) puede ser usada en modelos de redes como una variable global que se
calcula en una parte de la red y que se puede usar en cualquier otra parte de ella.

Los valores asignados a las variables en un nodo ASSIGN puede ser una constante, una
de las variables indicadas arriba, una variable de status de la red, una muestra de una
distribucin de probabilidades, o un valor calculado en una funcin escrita por el
usuario (programa inserto).

El nmero de entidades que se han creado se puede obtener al asignar un nmero a la


actividad que sale del nodo CREATE y con el uso de la variable NNCNT(I) (nmero de
entidades que han completado actividad I).

Figura 5-16: Ejemplo de nmero nico a entidades

Aqu se ilustra el caso de como un nmero nico se puede asignar a una entidad. Se usa
la variable NNCNT como el contador de entidades que ha pasado por la actividad 1. El
nodo ASSIGN asigna al atributo 1 de cada entidad el nmero de entidades que han
pasado por actividad 1.

El lado izquierdo de la instruccin esta reservado a las variables de la Tabla 5.1. El lado
derecho puede aceptar hasta 10 operaciones matemticas usando las constantes o
variables descritas en Tabla 5.2. El orden de las operaciones es multiplicaciones y
divisiones primeros, luego sumas y restas. La expresin es evaluada desde la izquierda
hacia la derecha.

Un ejemplo de asignacin indirecta de subndices:

ASSIGN,{{II, ATRIB[2]},{ATRIB[2], XX(II)}, 1;

Otro ejemplo es:

ASSIGN, {XX(l), EXPON(ATRIB[1], 2)};

Esta instruccin hace XX(1) igual a una muestra tomada desde una distribucin

APUNTES AWESIM 16
Simulacin de Sistemas

exponencial cuya media es tomada del atributo 1 usando la corriente aleatoria 2.

En la Figura 5 - 17 se presenta el uso del nodo ASSIGN.

Q1

Fig. 5- 17

CREATE, 8,,, 100;


ASSIGN, ATRIB(1)=EXPON(7);
ACT,,, Ql;
CREATE, 12,,, 50;
ASSIGN, ATRIB(1)=EXPON(12);
Ql QUEUE(1);
ACT/l, ATRIB(1)+RNORM(0, 1);
TERM;

GEN,AUTOR,ILUSTRACION 1, 1/21/87, 1 ;
LIMITS, 1, 1, 200;
NETWORK;
FIN;

5.9 ACTIVIDADES.

Las ramas se usan para representar las actividades. Solamente en las ramas se indican
las demoras prescritas para las entidades que fluyen por la red.

Las actividades que salen de un nodo QUEUE o SELECT se denominan actividades de


servicio.

Las actividades de servicio restringen el nmero de entidades que pasan por ella, que
debe ser igual al nmero de servidores. La duracin de una actividad es el atraso que
encuentra una entidad cuando fluye por la red.

Cada rama tiene un nodo al principio y otro al final. Cuando una entidad sale del nodo
inicial, se debe seleccionar la rama por la cual la entidad debe seguir. La seleccin
puede ser probabilstica, en tal caso se define una probabilidad en la actividad; y
tambin puede ser condicional, en tal caso una condicin debe estar en el campo de la
descripcin. Las actividades de servicio no pueden tener condiciones prescritas, ya que
la disponibilidad de la entidad depende de los servidores y deben ser usadas cuando
haya servidores libres.

APUNTES AWESIM 17
Simulacin de Sistemas

Al asignar el nmero I a una actividad, se calcula las estadsticas en forma automtica y


se informa del nmero de entidades que estn siendo procesadas por la actividad,
NNACT(I), como tambin
el nmero de entidades
que han completado la
actividad NNCNT(I).

Para una actividad de


servicio, se debe indicar el
nmero de servidores
paralelos idnticos si este
difiere de 1.

ACTIVITY(N)/A, DUR,
PROB o COND,NLBL;

N = nmero de servidores paralelos.


A = nmero de la actividad.
PROB = probabilidad de seleccin de la actividad.
COND = condicin para seleccionar la actividad, si la actividad no es de servicio.
NLBL = es el nodo terminal y es requerido slo si el nodo terminal no es el
siguiente nodo.

5.9.1 Duracin de una actividad.

Se puede definir mediante cualquier expresin que contenga variables Visual SLAM.

La duracin de una actividad tambin se puede hacer depender del instante en que otra
entidad abandone un nodo (NLBL), logrando con esto que la actividad contine hasta
que se produzca el abandono de un nodo en particular. Esto se logra al usar
REL(NLBL).

Tambin se puede hacer depender de alguna asignacin hecha en un nodo ASSIGN.


Esto se logra con STOPA(NTC). El valor NTC puede ser un nmero, una variable
Visual SLAM, o una variable random. El valor NTC ser truncado al entero mayor y la
actividad continuar en operacin, manteniendo a la entidad que esta siendo procesada,
hasta que se haga una asignacin en la que STOPA se iguale a NTC.

ACT, STOPA(1);

Esta actividad tendr un tiempo de ejecucin desde el tiempo en que una entidad
comienza la actividad hasta que STOPA sea igual a 1.

5.9.2 Especificacin de Probabilidades.

Las probabilidades se especifican con el argumento de la funcin PROB. El argumento

APUNTES AWESIM 18
Simulacin de Sistemas

es una expresin que entrega un valor entre 0 y 1. La suma de las probabilidades debe
ser 1.0. Las probabilidades se pueden asignar a las ramas que salen de un nodo QUEUE.
En este caso, se supone que las actividades son del mismo tipo de servicio y la
probabilidad puede ser usada para estimar diferentes duraciones o diferentes caminos
para entidades procesadas por el mismo servidor.

5.9.3 Especificacin de Condiciones.

Slo se aplica a actividades regulares (no de servicio).

La condicionalidad se expresa de la forma:

VALOR. OPERADOR. VALOR.

Los operadores son los usados en C:

Cdigo Definicin Relacional

< Menor que


<= Menor que o igual a
== Igual a
!= No igual a
> Mayor que
>= Mayor que o igual a

Las intersecciones de dos o ms condiciones pueden describirse usando las


especificaciones && y ||.

El modo de usarse es:

TNOW = = 100

TNOW= =100 || ATRIB[2] < 5.

5.10 EJEMPLOS

En esta seccin se presentan ilustraciones que combinan los conceptos de nodos y


actividades usados en las mallas.

5.10.1 Ilustracin 5 - 1. Dos Servidores Paralelos.

Considere una situacin que considera la atencin de clientes en un banco con dos
cajeros y una cola simple de espera. La malla que modela esta situacin se muestra a
continuacin.

APUNTES AWESIM 19
Simulacin de Sistemas

En este ejemplo, dos servidores (cajeros) estn asociados con la actividad 1. El tiempo
de servicio de cada servidor es uniformemente distribuido entre 6 y 12 unidades de
tiempo. Las entidades (clientes) que llegan al nodo de espera QUEUE esperan cuando
los dos servidores estn ocupados. Inicialmente, hay dos entidades en la cola lo que
hace que los dos servidores estn ocupados. As, inicialmente hay cuatro en el sistema;
dos en servicio y dos esperando en el nodo de espera QUEUE. Se ha designado una
capacidad para diez entidades en la cola. Dado que no hay especificaciones de BLOCK
ni de BALK, los clientes que llegan cuando el banco est lleno, se eliminarn a su
llegada. Se entregar un mensaje de advertencia en este evento.

El nodo TERMINATE indica que el modelo se analizar hasta que 100 entidades hayan
completado el proceso. El tiempo entre llegadas se describe en el nodo CREA TE como
muestras tomadas de una distribucin exponencial con media de 10. La primera entidad
est programada para llegar al tiempo 5.

5.10.2 Ilustracin 5 - 2. Dos tipos de entidades.

Suponga una situacin que considera dos tipos de trabajos que requieren ser procesados
por el mismo servidor. Los tipos de trabajos se suponen que vienen de una cola simple
antes del servidor. La malla y las instrucciones del modelo de esta situacin se
presentan a continuacin.

En este modelo, un tipo de entidad (trabajo) se programa para llegar cada 8 unidades de
tiempo y solamente se deben crear 100 de ellas. Estas entidades tienen un tiempo de
servicio estimado que se toma de una muestra de distribucin exponencial con una
media de 7. El tiempo de servicio se asigna al atributo 1 en el nodo ASSIGN. Para el
otro tipo de entidad (trabajo), el tiempo entre llegadas es de 12 unidades y se crearn 50
entidades. El tiempo de servicio estimado para cada una de estas entidades es
exponencialmente distribuido con un tiempo medio de 10. Ambos tipos de entidades se
envan a un nodo QUEUE cuya etiqueta es Q1. Las entidades en Q1 esperan en el
archivo 1 y son ordenadas segn el menor valor del atributo 1. La especificacin de la

APUNTES AWESIM 20
Simulacin de Sistemas

prioridad se hace mediante la instruccin de control PRIORITY que se describir en la


seccin 5.13. El servidor se modela en la actividad 1 donde el tiempo de servicio se
especifica como el atributo 1 ms una muestra tomada de una distribucin normal. As,
el tiempo de procesamiento real es igual al tiempo de procesamiento estimado ms un
error que se ha asumido como un valor con una distribucin normal. Este modelo se
puede usar para representar un proceso de atencin en la que los trabajos se ordenan
segn el menor tiempo estimado de proceso.

Se asumen muchos valores por defecto en las instrucciones del modelo de arriba.
Ambos tipos de entidades tienen su tiempo de la primera llegada al tiempo 0 y a
ninguna se le marca el tiempo de llegada. El de la cantidad inicial en el nodo QUEUE es
cero y la capacidad del nodo QUEUE se asume como infinito. No hay especificaciones
en el nodo TERMINATE para la cantidad de entidades que terminan y, as, la carrera se
completa cuando todas las entidades creadas hayan pasado por el proceso, lo que en este
caso es 150. (Nota: estas condiciones de trmino no se pueden determinar
absolutamente de la descripcin del modelo, teniendo la posibilidad de hacerlo. El
procedimiento para especificar el tiempo de trmino se discute en la seccin 5.13).

Para ilustrar el uso de la instruccin EQUIVALENCE, que se usa para hacer el modelo
ms entendible, las instrucciones del modelo se describen a continuacin.

El tiempo de servicio estimado se define como ESERVET y es equivalente a ATRIB[l].


El error del tiempo de servicio estimado se define como NOISE y es equivalente a
RNORM(0.0,1.0). Como se puede ver, el uso de la instruccin EQUIVALENCE mejora
el entendimiento de las instrucciones del modelo en Visual SLAM.

5.10.3 Ilustracin 5 - 3. Bloqueos y Desvos desde los nodos QUEUE.

Considere una compaa con un sistema de mantencin de la fbrica que consta de dos
operaciones en serie. Cuando se requiere una mantencin en una mquina y hay cuatro
mquinas esperando por la operacin 1, las operaciones de mantenimiento se realizan
por subcontratistas externos. Esta situacin se modela a continuacin. Las entidades
representan las solicitudes de mantenimiento.

En este modelo, las entidades se generan cada dos unidades de tiempo y se enva
directamente a un nodo QUEUE que tiene una capacidad de cuatro. En este nodo, las
entidades se almacenan en el archivo 1 y, si una entidad llega cuando hay otras cuatro
entidades en el archivo 1, esta se desva al nodo TERMINATE con etiqueta SUBC.
Cuando se hayan desviado 10 entidades al nodo SUBC, se terminar la carrera de este
modelo. El tiempo de servicio de la actividad 1 es triangularmente distribuida con una

APUNTES AWESIM 21
Simulacin de Sistemas

moda de 0.4, un mnimo y un mximo de 0.2 y 0.8 respectivamente. Cuando la


actividad de servicio 1 se complete, las entidades se envan directamente a un segundo
nodo QUEUE. El archivo 2 se usa para almacenar las entidades que esperan por el
servidor 2. Si hay dos entidades esperando por el servidor 2, la entidad que termin la
actividad 1 es bloqueada y la actividad de servicio 1 debe mantenerse bloqueada por
esta entidad. No se podrn iniciar ms actividades de servicio por el servidor 1, aunque
haya entidades esperando por el servicio. Cuando la cantidad de entidades en el archivo
2 disminuye a menos de 2, la entidad bloqueada se enva al archivo 2 y se puede iniciar
entonces otra actividad de servicio 1. El tiempo de procesamiento del servidor 2 es
uniformemente distribuido entre 0.5 y 1. El ejemplo presentado en la Seccin 5.14 es
similar a esta ilustracin y entrega las entradas y salidas del procesador Visual SLAM.

5.10.4 Ilustracin 5 - 4. Ramificacin Condicional y Probabilstica.

Considere una situacin que considera a un inspector ya un tcnico de ajuste. Se


presume que el setenta por ciento de los tem inspeccionados son enviados directamente
a la zona de empaque y que el treinta por ciento de los tem necesita de un ajuste.
Despus del ajuste, los tem se devuelven para una re inspeccin. Haremos que el
tiempo de inspeccin sea una funcin de la cantidad de tem que estn esperando por
inspeccin en la cola 1 (NNQ(1)) y la cantidad de entidades esperando por el ajuste
(NNQ(2)). El modelo correspondiente a esta descripcin se presenta a continuacin.

En este modelo, se especifica la ramificacin condicional desde en nodo CREATE,


donde el nmero M es uno, esto es, que puede escoger un mximo de una de las tres
ramas que salen desde el nodo CREATE. La entidad se enva a un nodo ABNM, si la
cantidad de entidades en el archivo 1 es menor o igual a 5. En el nodo ASSIGN ABNM,
ATRIB[l] se hace igual a 6 unidades de tiempo. ATRIB[1] se usar en la ilustracin
para representar el tiempo de procesamiento de una entidad. La rama desde el nodo
CREATE a nodo ASSIGN NORM se toma si la cantidad de entidades en el archivo 1 es
menor que 9 y la cantidad de entidades en el archivo 2 es menor o igual a 2. Cuando
esto ocurre, se almacena en ATRIB[1] el tiempo de procesamiento de 8 unidades de

APUNTES AWESIM 22
Simulacin de Sistemas

tiempo en el nodo ASSIGN NORM.

No se especifican las condiciones de para tomar la rama desde el nodo CREATE al


nodo TERM SECS. Ya que las condiciones son evaluadas en el orden en que aparecen
en el modelo, esta rama se tomar solamente si las dos ramas precedentes no fueron
tomadas. Esta rama representa el no procesamiento de una entidad por un servidor de
proceso. Si hay 20 ocurrencias, la corrida de la simulacin termina.

QUE1 es el nodo QUEUE para el servidor 1. Con una probabilidad de 0.3, la entidad es
enviada a QUE2. Con probabilidad de 0.7, se enva al nodo TERM PACK. Estas dos
actividades representan la actividad de servicio 1. El tiempo de servicio se hace igual a
ATRIB[1], previamente definido en los nodos ASSIGN. En QUE2, la entidad pasa a
travs de la segunda actividad de servicio cuyo tiempo de servicio es exponencialmente
distribuido con una media de 10 unidades de tiempo. Las entidades son devueltas al
nodo QUE1 para procesamiento adicional del servidor 1. En el nodo TERMINATE
PACK, se especifica que la llegada de 300 entidades para que se complete una corrida
de la malla. As, una corrida puede ser terminada por la llegada ya sea al nodo PACK o
al nodo SECS.

5.10.5 Ilustracin 5-5. Tiempo de Servicio dependiente del nodo de trmino.

Considere una lnea de ensamblaje que se ajusta de tal modo que las unidades slo se
pueden completar al final de un intervalo de 10 minutos. Este modelo representa a dos
servidores idnticos con una cola simple y es similar al modelo representado en la
Ilustracin 5-1. Sin embargo, para este modelo, la definicin del tiempo de servicio de
la actividad se hace dependiente de la prxima salida de una entidad desde el nodo
CREATE TIMR. Desde el nodo CREATE TIMER sale la primera entidad en el tiempo
10 y despus cada 10 unidades de tiempo. Esto especifica que la duracin de la
actividad de servicio 1 va a terminar en momentos mltiples de 10. Si la actividad de
servicio 1 comienza en el tiempo 13, entonces el tiempo de trmino ser 20. As, la
duracin de la actividad de servicio es de 7 unidades de tiempo.

Si se pone una entidad en servicio en el tiempo 49, el tiempo de servicio se completar


en el tiempo 50 y su duracin ser de 1. Otros aspectos de esta ilustracin fueron
descritos anteriormente. El modelo de esta situacin se entrega a continuacin.

APUNTES AWESIM 23
Simulacin de Sistemas

5.11 NODO GOON

Es un nodo de continuidad.

Se usa para modelar actividades que estn en paralelo o una a continuacin de la otra,
ya que el comienzo de una actividad debe estar separado del termino de la anterior por
un nodo.

5.11.1 Ilustracin 5 - 6. Archivos especificados por Atributo y el nmero de la


Actividad de Servicio.

En esta ilustracin se demostrar el uso uno de los atributos para especificar el nmero
del archivo y el nmero de la actividad de servicio. La situacin que se va a modelar
consiste de entidades que llegan al sistema cada 5 unidades de tiempo. Cada entidad que
llega va a ser procesada secuencialmente por los servidores 1, 2 y 3. Las entidades que
esperan por el servidor I se almacena en el archivo I, con I igual a 1, 2 3. Esta
situacin ser modelada por una combinacin de una cola simple QUEUE y una
actividad de servicio donde el nmero del archivo y el nmero de la actividad de
servicio se especifican por el valor (LTIB[1]). El valor de LTRIB[1] se hace
inicialmente igual a 1 y luego se aumenta cada vez que el servicio se ha cumplido para
esa entidad. Cuando el valor de ATRIB[1]==3, la entidad se enva al nodo TERM
porque el procesamiento de la entidad ha terminado. El tiempo de servicio de cada
servidor se asume que es exponencialmente distribuido con una media diferente de
tiempo de servicio dado por XX[II], II=1, 2, 3. Se asumir que estos valores de XX se
especificaron en las condiciones iniciales o en una red anexa a la malla de esta
ilustracin. La malla del modelo y las instrucciones se muestran a continuacin.

APUNTES AWESIM 24
Simulacin de Sistemas

Bsicamente, el modelo anterior consiste de una combinacin de una cola y una


actividad de servicio con el uso de un nodo ASSIGN y ramificacin condicional para
permitir las diferentes definiciones del archivo y el nmero del servicio. En esta
ilustracin, la situacin se pudo haber con una combinacin de tres colas y sus
actividades de servicio en serie. Sin embargo, para una cantidad mayor de operaciones
en serie, el procedimiento anterior, que especifica indirectamente el nmero del archivo
y el nmero del servidor, reduce significativamente el tamao del modelo. Aunque esta
ilustracin tiene entidades que fluyen a travs de servidores en un orden prescrito, es
fcil modificar la malla de modo que el valor de LTRIB[1] se cambia de acuerdo con la
estructura del ruteo definido para cada tipo de entidad, esto es, un atributo se puede usar
para definir el tipo de entidad y luego, segn el tipo de entidad, se puede definir, para
LTRIB[1], los diferentes nmeros de los servidores.

5.12 NODO COLCT.

COLCT, TYPE, ID, NCEL/HLOW/HWID, M;

Es un nodo que sirve para calcular el promedio de los valores que han tomado las
variables durante una carrera completa. Se puede estimar cinco tipos de estadsticas en
este nodo. Cuatro se refieren al tiempo o a las veces que una entidad llega al nodo
COLCT. La quinta permite el clculo de los valores estadsticos de las variables Visual
SLAM en nodos especficos. Los tipos son:

1.- Tiempo del primer arribo (FIRSTARRIVE). Solo se graba un valor en cada carrera.
2.- Tiempo de todas las llegadas (TNOW). Cada vez que llega una entidad, su tiempo
de llegada se suma a los tiempos anteriores. Al final se obtiene un promedio.

APUNTES AWESIM 25
Simulacin de Sistemas

3.- Tiempo entre llegadas. El tiempo de la primera llegada se usa como un punto de
referencia. En las llegadas siguientes, el tiempo entre llegadas se registra como
variable de inters (TNOW - LASTARRIVE).
4.- Estadsticas de intervalo (TNOW - ATRIB(I)). Esta estadstica calcula el tiempo de
llegada de una entidad al nodo menos un valor de un atributo de la entidad. El valor
del atributo pudo haber sido especificado anteriormente como el tiempo de creacin
en el nodo CREATE o en un nodo ASSIGN.
5.- Variables Visual SLAM. El valor de una variable Visual SLAM se almacena como
una observacin cada vez que llega una entidad. Nota: El valor de USERF(I) puede
ser parte de la expresin de Visual SLAM.

En la Figura 5 - 22 se muestra el ejemplo 6 donde se usa el nodo COLCT.

MALLA 6

Figura 522.
CREATE, 1, 0.0,, INF, 1;
ACTIVITY,,, PROB(0.1);
ACTIVITY,,, PROB(0.2),"FIG6-COLCT-1";
ACTIVITY,,, PROB(0.3),"FIG6-COLCT-2";
ACTIVITY,,, PROB(0.4),"FIG6-COLCT-3";
COLCT, 1, NNCNT(1),,,,, 1;
ACTIVITY;
TERMINATE, INF;
COLCT_l: COLCT, 2, NNCNT(2),,,,, 1;
ACTIVITY;
TERMINATE,INF;
COLCT_2: COLCT, 3, NNCNT(3),,,,, 1;
ACTIVITY;
TERMINATE, INF;
COLCT_3: COLCT, 4, NNCNT(4),,,,, 1;
ACTIVITY;
TERMINATE, INF;

En la Figura 5-23 se representa el Ejemplo 7 donde se repite el caso anterior, pero se


ocupa una variable auxiliar en lugar de la variable NNCNT(I).

APUNTES AWESIM 26
Simulacin de Sistemas

MALLA 7

Figura 5-23
;
CREATE, 1, 0.0,, INF, 1;
ACTIVITY,,, PROB(0.1);
ACTIVITY,,, PROB(0.2),"EJE7-ASSIGN-l";
ACTIVITY,,, PROB(0.3),"EJE7-ASSIGN-2";
ACTIVITY,,, PROB(0.4),"EJE7-ASSIGN-3";
ASSIGN,{{XX[1], XX[1] + 1}}, 1;
ACTIVITY;
Al: COLCT, 1, XX[1],,,,, 1;
ACTIVITY;
TERMINATE, INF;
EJE7_ASSIGN_l: ASSIGN,{{XX[2],XX[2] + 1}},1;
ACTIVITY;
A2: COLCT, 2, XX[2],,,,, 1;
ACTIVITY;
TERMINATE, INF;
EJE7_ASSIGN_2: ASSIGN,{{XX[3],XX[3] + 1}},1;
ACTIVITY;
A3: COLCT, 3, XX[3],,,,, 1;
ACTIVITY;
TERMINATE, INF;
EJE7_ASSIGN_3: ASSIGN,{{XX[4],XX[4] + 1 }}, 1;
ACTIVITY;
A4: COLCT, 4, XX[4],,,,, 1;
ACTIVITY; TERMINATE, INF;

En cada caso se calcula la media y la desviacin estndar de los valores de las variables
en estudio. Adems se obtiene un histograma. Este histograma se genera al especificar
el nmero de celdas, NCEL; el valor lmite superior de la primera celda, HLOW; y el
ancho de la celda HWID. NCEL es el nmero de celdas. Se agregan dos celdas mas, la
de los extremos. (-INF, HLOW) y (HLOW + NCEL * HWID, + INF). Las celdas
terminan en su valor HLOW, es decir, HLOW inclusive.

Ej.: NCEL=5, HLOW=0; HWID=10.

(-INF, 0), (0, 10), (10, 20), (20, 30), (30, 40), (40, 50), (50, -INF).

En la Figura 5-24 se presenta el Ejemplo 8 en el que se muestra la generacin de


histogramas mediante el uso de la instruccin COLCT. Slo se muestra el primero de

APUNTES AWESIM 27
Simulacin de Sistemas

ellos.

MALLA 8

;
CREATE, UNFRM(1, 8), 0.0, ATRIB[1], 20, 1;
ACTIVITY;
ASSIGN,{{ATRIB[3], UNFRM(1,6)}}, 1;
ACTIVITY;
QUEUE, 1, 0, INF, NONE;
ACTIVITY, 1, ATRIB[3];
COLCT,, ATRIB[3], "Durac Activ", 10, 0, 1, 1;
ACTIVITY,,,,"COL2";
;
COL2: COLCT, 2, TNOW - ATRIB[1], "TPO_EN_SIST", 10, 0, 2, 1;
ACTIVITY;
ASSIGN,{{ATRIB[2], TNOW - ATRIB[3] - ATRIB[1]}},l;
ACTIVITY;
COLCT, 3, ATRIB[2], "TPO_EN_COLA", 10, 0, 1, 1;
ACTIVITY;
TERMINATE, INF;

En la Figura 5-25 se representa el ejemplo 9 el que muestra las instrucciones para


obtener un histograma de la duracin de la actividad, otro para el tiempo que las
entidades han estado en el sistema, y un tercero para el tiempo en que las entidades han
estado en la cola.

APUNTES AWESIM 28
Simulacin de Sistemas

MALLA 9

GEN, AUTOR, EJEMPLO 2 1 BANKS, 1/21/87, 1;


LIMITS, 1, 3, 50;
NETWORK;
CREATE, UNFRM(1, 8, 1),,1, 20;
ACT,,0.1, Al;
ACT,,0.2, A2;
ACT,,0.3, A3;
ACT,,0.25, A4;
ACT,,0.1, A5;
ACT,,0.05, A6;
A1 ASSIGN, ATRIB(3) = 1;
ACT,,, Q1;
A2 ASSIGN, ATRIB(3) = 2;
ACT,,, Q1;
A3 ASSIGN, ATRIB(3) = 3;
ACT,,, Q1;
A4 ASSIGN, ATRIB(3) = 4;
ACT,,, Q1;
A5 ASSIGN, ATRIB(3) = 5;
ACT,,, Q1;
A6 ASSIGN, ATRIB(3) = 6; Q1 QUEUE(l);
ACT(1)/1, ATRIB(3);
COLCT, ATRIB(3), DURAC ACTIVIDAD, 10/0/1;
COLCT, INT(1), TIEMPO EN SISTEMA, 10/0/2;
ASSIGN, ATRIB(2)=TNOW-ATRIB(1)-ATRIB(3);
COLCT, ATRIB(2), TIEMPO EN COLA, 10/0/1;
TERM;
END;
FIN;

Casos de inters:

a) Estadstica del tiempo en que estuvieron las entidades en el sistema. Cada entidad
tiene su tiempo en ATRIB(1).

APUNTES AWESIM 29
Simulacin de Sistemas

COLCT, INT(3), TPO EN SISTEMA,, 1;


Fig. 4 - 26

b) Estadstica de la variable global XX(1) cada vez que una entidad pasa por el nodo.
Ej., control de inventario.

COLCT, XX(1), INVENTARIO, 20/10/5, 2;


Fig. 4 - 27

5.13 INTRODUCCIN A EJEMPLOS E INSTRUCCIONES DE CONTROL

A lo largo de este libro, se ha usado un formato en la presentacin de los ejemplos.


Primero, se presenta un definicin del problema que describe el sistema que se va a
modelar incluyendo el objetivo del anlisis. Luego se presenta una seccin en la que se
describen los principales conceptos que se pretende ilustrar en el ejemplo. Luego se
presenta el modelo en Visual SLAM. Finalmente, se presenta un resumen de resultados
en el Summary Report.

El ltimo paso a desarrollar en una simulacin de redes es combinar las instrucciones de


la red con las instrucciones de control que se necesiten. Las instrucciones de control
entregan la informacin acerca de los experimentos que se van a desarrollar. A lo menos
las instrucciones de control GENERAL, LIMITS, y FINISH deben incluirse en todos
los modelos. Otras instrucciones de control tales como PRIORITY, MONTR, y
INITIALIZE se incluyen de acuerdo a lo que se desee obtener de las carreras de
simulacin. La instruccin TIMST se usa para recolectar las estadsticas de las variables
dependientes del tiempo, y la instruccin ENTRY se usa para incorporar entidades en
archivos.

En esta seccin, se presenta el formato de estas instrucciones en forma resumida.

La forma abreviada de GENERAL o GEN es la siguiente:

GEN, NAME, PROJECT, MONTH/DAY/YEAR, NNRNS;

Los campos en la instruccin GEN son el nombre del modelador, el ttulo del proyecto,
y la fecha de la carrera. El valor especificado en NNRNS es el nmero de carreras que
se van a hacer.

El formato de LIMITS o LIM es el siguiente:

LIM, MFIL, MATR, MNTRY;

donde MFIL es el nmero de archivo mayor que se usa, MATR es el nmero de atributo
mayor que se usa en una entidad, y MNTRY es un estimado de la mxima cantidad de
entidades que van a estar en forma simultnea en el sistema. MNTRY se estima de
carreras pilotos.

APUNTES AWESIM 30
Simulacin de Sistemas

El formato de INTLC es el siguiente:

INTLC, {{VAR = valor}, repetir};

INTLC se usa para asignar valores iniciales a variables Visual SLAM.

El formato abreviado de INITIALIZE en INIT y su formato es:

INIT, TTBEG, TTFIN, JJCLR;

donde TTBEG es el tiempo de inicio de una simulacin, TTFIN es el tiempo que se


desea que termine la simulacin, y JJCLR se usa para especificar si se van a mantener
las estadsticas separadamente para cada carrera.

El formato abreviado de TIMST es:

TIMST, VAR, ID;

donde VAR es una variable Visual SLAM cuyo valor persiste por un tiempo de la
simulacin, por ejemplo, XX(I). ID es un identificador numrico que se imprime en el
informe resumen (Summary Report) para identificar el resumen de las estadsticas
calculadas por V AR.

El formato de ENTRY es el siguiente:

ENTRY, IFILE, NLBL, {valores de atributos};

La instruccin ENTRY se usa para poner entidades en archivos. Un ingreso se


especifica indicando el nmero del archivo, IFILE, seguido por los atributos de la
entidad separadas por comas. El slash (/) se usa para indicar el inicio de otra entidad que
se va a ingresar al archivo.

El formato de PRIORITY es el siguiente:

PRIORITY, {IFILE, ordenamiento}, repetir};

donde IFILE es el archivo al cual se le define su prioridad de ordenamiento.


Ordenamiento es la especificacin de la prioridad. Las opciones para el ordenamiento
son: FIFO,(first-in, first-out); LIFO (last-in, first-out); HVF(N) primero se ponen las
entidades con mayor valor del atributo N; y LVF(N) primero se ponen las entidades con
el menor valor en el atributo N.

El formato de la instruccin MONTR es:

MONTR, opcin, TFRST, TSEC, { expresiones};

Por ahora, slo se considerarn las opciones TRACE y CLEAR. TRACE especifica que
una lista de eventos se van a imprimir al tiempo inicial TFRST y al tiempo final TSEC.
Variables es el listado de las variables Visual SLAM cuyo valor se va a imprimir en

APUNTES AWESIM 31
Simulacin de Sistemas

cada evento. La opcin CLEAR hace que se eliminen las estadsticas en el tiempo
TFRST. CLEAR se usa para eliminar las estadsticas coleccionadas durante el perodo
que transcurri.

La instruccin FIN consiste en un slo campo como se muestra a continuacin.

FIN;

y establece el final de todas las instrucciones de entrada. La instruccin SIMULATE o


SIM consiste tambin de un slo campo.

SIM;

y define el trmino de las variables de entrada de una carrera. La instruccin SIM no se


requiere si la ltima instruccin es FIN.

5.14 EJEMPLO 5-1. ESTACIONES DE TRABAJO EN SERIE

Las instalaciones de mantencin de una fbrica desarrollan dos operaciones. Estas


operaciones se deben desarrollar en serie; operacin 2 siempre sigue a la operacin 1.
Las unidades que deben ser mantenidas son voluminosas, y el espacio disponible
alcanza slo para ocho unidades, incluyendo las que estn siendo atendidas. Un diseo
propuesto deja dos espacios entre las estaciones de trabajo, y un espacio para cuatro
unidades antes de la estacin 1. El diseo propuesto se muestra en la figura 4-1.
Actualmente la poltica de la compaa es subcontratar la mantencin si es que una
unidad no puede entrar al departamento de mantencin.

Llegada de Estacin 1 Estacin 2


unidades

Cola de espera de
Estacin 1

Unidad a Subcontratista

Datos histricos indican que el tiempo entre llegadas de requerimientos de mantencin


es exponencialmente distribuido con una media de 0.4 unidades de tiempo. Los tiempos
de servicio tambin son exponencialmente distribuidos con un tiempo de servicio en
promedio de 0.25 en la primera estacin y de 0.5 en la segunda estacin. Las unidades
se transportan automticamente desde la estacin 1 a la estacin 2 con duracin
despreciable. Si la cola de la estacin 2 est llena, esto es, si hay dos unidades
esperando por la estacin 2, la primera estacin se bloquea y la unidad no puede dejar la
estacin de trabajo. Una estacin bloqueada no puede atender otro trabajo.

Para evaluar el diseo propuesto, se desea obtener las siguientes estadsticas por un
periodo de 300 unidades de tiempo.

APUNTES AWESIM 32
Simulacin de Sistemas

1. Utilizacin de las estaciones de trabajo.


2. Tiempo para procesar una unidad a travs de las dos estaciones.
3. Tiempo entre las subcontrataciones.
4. Cantidad de unidades esperando en cada estacin; y
5. Fraccin del tiempo que la estacin 1 estuvo bloqueada.

5.15 EJEMPLO 5-2. INSPECCIN y ESTACIONES DE AJUSTE EN UNA


LNEA DE PRODUCCIN.

Los televisores ensamblados pasan por una serie de estaciones de prueba en la etapa
final de su produccin. En la ltima de estas estaciones, se prueba el ajuste de control
vertical en los televisores. Si se encuentra que dicho ajuste no funciona apropiadamente,
el aparato probado es ruteado hacia una estacin de ajuste donde el aparato es ajustado.
Despus de ajustado, el televisor es devuelto hacia la ltima estacin de inspeccin
donde es inspeccionado nuevamente. Los televisores que han pasado la fase final de
inspeccin, sea en la primera vez o despus de una o ms pasadas a travs de la estacin
de ajuste, son ruteados hacia el rea de empaque.

La situacin descrita se representa en la figura 4-6, donde los "crculos" representan a


los televisores. Los "crculos abiertos" son televisores esperando por la inspeccin final
y los con X son aparatos cuyo ajuste de control vertical est defectuoso. Estos aparatos
o, estn siendo atendidos en la estacin de ajuste o bien, estn all esperando por
servicio.

El tiempo entre llegadas de aparatos de televisin a la estacin de inspeccin final est


uniformemente distribuida entre 3.5 y 7.5 minutos. Dos inspectores trabajan
simultneamente en la estacin final de inspeccin. El tiempo requerido para
inspeccionar un televisor est uniformemente distribuido entre 6 y 12 minutos. En
promedio, 85% de los aparatos pasan la inspeccin y continan hacia el departamento
de empaque. El otro 15% son ruteados a la estacin de ajuste, donde opera un solo
trabajador. El ajustar el control vertical requiere entre 20 a 40 minutos, uniformemente
distribuidos..

Simular la estacin de inspeccin y el ajustador por 480 minutos, para estimar el tiempo
de proceso de los televisores a travs de esta etapa final de produccin y determinar el
uso de los inspectores y el ajustador.

LLEGADA DE
TELEVISORES

INSPECTORES

AJUSTE

Diagrama de Estaciones de Inspeccin y Ajuste

APUNTES AWESIM 33
Simulacin de Sistemas

5.16 EJEMPLO 5-3. OPERACIONES DE EXTRACCIN.

En este ejemplo, se modelan operaciones de extraccin. En una extraccin, los


camiones entregan mineral desde tres cargadores frontales a un molino. Un camin
siempre retorna a su pala asignada despus de botar la carga en el molino. Hay dos
tamaos distintos de camin en uso, 20 toneladas y 50 ton. El tamao del camin afecta
su tiempo de carguo en la pala, al tiempo de viaje hacia el molino, al tiempo de volcado
en el molino y al tiempo del viaje de retorno desde el molino a la pala asignada. Para el
camin de 20 ton, estos tiempos de: carguo, viaje de ida, vaciado y viaje de regreso
son: distribuidos exponencialmente con una media 5; una constante 2.5, distribuido
exponencialmente con media 2 ; y constante 1.5 Los tiempos correspondientes para los
de 50 ton son: distribuido exponencialmente con media 10; constante 3; distribuido
exponencialmente con media 4 y constante 2. A cada pala se le asignan dos camiones de
20 ton y uno de 50 ton. Las colas en las palas son ordenadas en base a primero-en-
llegar, primero-en-salir. La cola del molino se ordena de acuerdo al tamao del camin,
camiones ms grandes primero. Un diagrama esquemtico de las operaciones de
extraccin se muestra en la figura 4-11. Se desea analizar este sistema por 480 unidades
de tiempo para determinar el uso y largo de las colas asociadas con las palas y molino.

5.17 NODO SELECT

QSR SSR

SELECT, QSR, SSR, BLOCK o BALK(NLBL), QLBL;

Cuando el nodo SELECT se usa para un solo propsito, el campo en la regla QSR o
SSR que no se necesita, se debe dejar con el valor por defecto. En la instruccin de
arriba, los QLBLs son las etiquetas de los nodos QUEUE asociados con la regla QSR.
Los nodos QUEUE pueden estar antes o despus del nodo SELECT. Las etiquetas no
son parte del formulario de entrada del nodo SELECT, ya que Awesim los incorporar
al nodo SELECT en la medida que los nodos QUEUE estn conectados con el nodo
SELECT.

APUNTES AWESIM 34
Simulacin de Sistemas

Se mencionan cinco observaciones respecto al nodo SELECT:

1. No pueden haber nodos QUEUE a ambos lados del nodo SELECT .

2. Si siguen actividades de servicio desde el nodo SELECT, entonces los nodos


QUEUE deben preceder al nodo SELECT para mantener las entidades cuando se
estn desarrollando todas las actividades.

3. Es posible que ocurran bloqueo y desvo (Block y Balk) en el nodo SELECT cuando
todos los nodos QUEUE que siguen estn llenos y tiene prescritos la opcin de
block y balk. El smbolo es el siguiente:

Balking Block

4. Cada vez que se requiera mirar hacia atrs, los nodos QUEUE que preceden al nodo
SELECT deben referirse a ste para transferir las entidades que van llegando.

5. Un nodo SELECT siempre requiere de una etiqueta.

La lista de reglas de seleccin de colas (QSR) se lista en la Tabla 5-4. La lista de reglas
de seleccin de servidores (SSR) se listan en la Tabla 5-5.

A continuacin se presentan ejemplos de uso del nodo SELECT:

1. Enviar entidades a los nodos QUE1 o QUE2 dependiendo de cual tenga la menor
cantidad de entidades esperando en cola (SNUM). El valor por defecto de seleccin
de servidores ORDER, se debe ignorar en este caso.

SELECT, SNUM, ORDER, NONE, (QUE1, QUE2);

2. Seleccionar un servidor de servidores 1, 2, y 3 para procesar entidades esperando en


la cola WAIT. Se prefiere usar el servidor 1 al servidor 2 y al servidor 2 en lugar del
servidor 3. Esto es, se va a usar un orden preferido de seleccin de servidores. La
regla por defecto de seleccin de colas, ORDER, se ignorar en este caso.

Este segmento de malla podra representar tres mquinas que pueden ser usadas para
procesar un trabajo que est esperando en la cola WAIT. El tiempo de procesamiento y
el ruteo despus del procesamiento se modela como si fuese una mquina dependiente.

3. Las ilustraciones l y 2 se combinan a continuacin de modo que el nodo SELECT

APUNTES AWESIM 35
Simulacin de Sistemas

SELS toma entidades de los nodos QUEUE QUE1 y QUE2 (en lugar del nodo
QUEUE WAIT). Una seleccin de colas cclica se usa en el nodo SELECT SELS.

En este segmento de malla, el nodo SELECT SELQ enva las entidades al nodo QUE1 o
al nodo QUE2, dependiendo de que cola tenga la menor cantidad de entidades
esperando en el momento de envo. Si las colas tienen igual cantidad de entidades,
entonces se selecciona la cola QUE1 ya que est primera en la lista. Cuando llega una
entidad a cualquier cola, y un servidor (actividades 1, 2 3) no estn ocupados, la
entidad se enva al servidor desocupado. Si hay ms de un servidor desocupado, la regla
de seleccin por ORDER asociado al nodo SELECT SELS, enviar al primer servidor
listado despus del nodo SELECT SELS. As, la regla de seleccin de servidores
ORDER, le da prioridades a los servidores en el orden en que son listados en el modelo.
La regla ORDER es por defecto para ambas selecciones de colas en el nodo SELQ y la
seleccin de servidores en el nodo SELS.

Cuando un servidor se desocupa y hay entidades esperando en ambas colas QUE1 y


QUE2, el nodo SELECT SELS usa la regla cclica y toma entidades desde el nodo
QUEUE que no fue seleccionado cuando la ltima entidad se envi a un servidor.

Tabla 5-4: Reglas de prioridades asociadas a los nodos SELECT para seleccionar desde
un grupo de colas.
Cdigo Definicin

ORDER Prioridad dada en un orden preferido.

CYCLIC Prioridad cclica. Transferir al primer nodo QUEUE disponible partiendo desde el ltimo
nodo QUEUE que fu seleccionado.

RANDOM Prioridad aleatoria. Asigna igual probabilidad a cada nodo QUEUE que tenga una entidad.

LAVERAGE Prioridad dada al nodo QUEUE que ha tenido en promedio el mayor nmero de entidades
hasta la fecha.

SAVERAGE La prioridad se da al nodo QUEUE que ha tenido en promedio el menor nmero de


entidades hasta la fecha.

LWAIT La prioridad se da al nodo QUEUE en el que la primera entidad tenga el mayor tiempo de
espera.

SWAIT La prioridad se da al nodo QUEUE en el que la primera entidad tenga el menor tiempo de
espera.

LNUM Prioridad se da al nodo QUEUE que posea el mayor nmero de entidades.

SNUM Prioridad se da al nodo QUEUE que posea el menor nmero de entidades.

LAVAIL Prioridad se da al nodo QUEUE que tenga la mayor cantidad de entidades sin usar.

SAVAIL Prioridad se da al nodo QUEUE que tenga la menor cantidad de entidades sin usar.

NQS(exp) Una funcin escrita por el usuario para seleccionar una cola. El valor de la expresin es un
entero que se usar en la funcin NQS.

APUNTES AWESIM 36
Simulacin de Sistemas

Tabla 5-5: Reglas de prioridades asociadas con los nodos SELECT para seleccionar desde un
conjunto de servidores.
Cdigo Definicin

ORDER Selecciona desde servidores libres en un orden predeterminado.

CYCLIC Selecciona servidores en una manera cclica. Esto es, selecciona el prximo servidor libre
partiendo con el ltimo servidor seleccionado.

LBUSY Selecciona el servidor que tiene la mayor parte del tiempo ocupado.

SBUSY Selecciona el servidor que tiene la menor parte del tiempo ocupado.

LIDLE Selecciona el servidor que ha estado desocupado durante ms tiempo.

SIDLE Selecciona el servidor que ha estado desocupado durante menos tiempo.

RANDOM Selecciona al azar desde los servidores desocupados de acuerdo a probabilidades


preasignadas.

NSS(exp) Funcin escrita por el usuario para seleccionar un servidor. N es un entero para distinguir
entre el uso de NSS en diferentes nodos SELECT.

APUNTES AWESIM 37