Documentos de Académico
Documentos de Profesional
Documentos de Cultura
http://www.minutemansoftware.com
GPSS - PC
GPSS es un lenguaje de Simulacin de Sistemas
de Propsito General (General Purpouse
System Simulation).
Es un lenguaje estructurado en base a
sentencias de bloque para representar los
eventos del sistema y las sentencias de control
para controlar la simulacin del sistema.
Se inicializa con
una sentencia de
control:
Start n
Que inicializa un
contador de la
finalizacin de la
simulacin en n, el
cual es disminuido
por una sentencia
de bloque:
Terminate 1
Sentencia GPSS
Estructura de una sentencia de declaracin GPSS/PC :
Nro. Etiqueta
Nro.
Etiqueta
Verbo
Operandos
Comentario
Verbo
Operandos
;Comentario
Bloque : Generate
GENERATE
Ejemplos : Generate
GENERATE 2700,200,1000,100,50
Crea transacciones cada 2700 200 unidades de tiempo,
pero la primera transaccin se crea al tiempo 1000.
Despus de 100 transacciones no se generan ms y cada
una de las 100 generadas tendrn una prioridad de 50.
GENERATE 30,FN$XPDIS
Crea transacciones segn una distribucin exponencial
negativa con media 30 unidades de tiempo.
Bloque Terminate
TERMINATE
Ejemplos: Terminate
TERMINATE
Cada transaccin que ingresa a este bloque se
destruye.
TERMINATE 5
Cada vez que una transaccin ingresa a este
bloque se destruye y disminuye en 5 el contador
de finalizacin de la simulacin.
Bloque : Seize
SEIZE
Bloque : Release
RELEASE
Bloque : Advance
ADVANCE
Ejemplos :
ADVANCE 12,4
Retarda la transaccin 12 4 unidades de tiempo simulado.
ADVANCE 15
Retarda exactamente 15 unidades de tiempo a la transaccin.
ADVANCE 5,FN$XPDIS
Retarda a la transaccin un tiempo distribuido exponencialmente con media 5 .
Bloque: Queue
QUEUE
QUEUE FILAB,3
Declara una fila de nombre FILAB y le suma 3 unidades cada vez que una
transaccin pasa por ella.
Bloque : Depart
DEPART
DEPART FILAB 3
La fila FILAB se reduce en 3 unidades cada vez que una transaccin pasa
por esta instruccin.
Cola
Poblacin
Tiempo
entre
Arribos (t)
Politica de
servicio
SEIZE
Arribos
GENERATE
QUEUE
DEPART
ADVANCE
TERMINATE
SISTEMA DE COLAS
Simulacin de Sistemas
Tiempo de
Servicio
RELEASE
Servicio
Ejemplo 1
Elabore un programa de simulacin que represente el
siguiente sistema: La operacin de un telfono que sirve
para que los empleados hagan sus llamadas. El tiempo
por llamada es de 3 a 7 min con probabilidad uniforme;
los empleados llegan al telfono cada 10 5 min. Simule
50 llamadas efectuadas. (por ejemplo para saber si un
telfono es suficiente o es necesario otro).
Bloques GPSS
Elabore un programa de simulacin que represente el
siguiente sistema: La operacin de un telfono (SEIZE)
que sirve para que los empleados hagan sus llamadas. El
tiempo por llamada es de 3 a 7 min con probabilidad
uniforme (ADVANCE); los empleados llegan al telfono
cada 10 5 min (GENERATE) y si no esta libre el
telfono se quedan esperando (QUEUE). Simule 50
llamadas efectuadas (START 50). (por ejemplo para
saber si un telfono es suficiente o es necesario otro).
QUEUE
COLA
SEIZE
TELEFONO
GENERATE
10,5
COLA
DEPART
ADVANCE
5,2
RELEASE
TELEFONO
TERMINATE
GENERATE 600,300
TELEF. U/C 600300 SEG
QUEUE
COLA
SEIZE
TELEFON
TELEFONO.
DEPART
COLA
ADVANCE
300,120
TELEF: 300 120 SEG
RELEASE
TELEFON
DESPUES DE LLAMAR.
TERMINATE 1
LLAMADA.
START
50
LLAMADAS
GENERA USUARIOS DE
COLA POR LLAMADAS
SOLICITAN ACCESO AL
SALIDA DE COLA
TPO. OCUPACION DEL
LIBERAN EL TELEFONO
SE CUENTA UNA
SE SIMULAN 50
Bloque : Enter
ENTER
Bloque : Leave
LEAVE
LEAVE MESAS,3
Cada transaccin que ingresa solicita que la unidad de equipo mltiple (o
storage) MESAS libere 3 de sus unidades.
Nota : STORAGE se ubica junto a las instrucciones de control del inicio del
programa (donde usualmente se colocan las declaraciones de variables).
Ejemplo 2
Se desea saber cuntos puntos de cobro (casetas)
de peaje se deben abrir en uno de los sentidos de
una autopista, para tenerlos disponibles en caso
de que la demanda aumente al doble de autos por
unidad de tiempo (en promedio), puesto que se
desea que el nmero de autos en espera de
servicio no sea superior a 20, por el riesgo de
accidente que hay en la zona. Si el tiempo inter
arribo de los autos en cada carril es 20 10 sg y el
tiempo de cobro por auto es de 10 5 sg, simule
ocho horas de operacin para tomar una decisin.
TERMINATE
LEAVE
ADVANCE
DEPART
ENTER
QUEUE
Carril 1
Carril 2
GENERATE
GENERATE
LEAVE
TERMINATE
DEPART
ADVANCE
ENTER
QUEUE
GENERATE
Carril 2
Simulacin de Sistemas
Carril 1
GENERATE
Tiempo Servicio
en cada caseta 10 5 sg
CABINAS
STORAGE 3
Se inicia con 3 cabinas.
* ESTE PROGRAMA SIMULA LA OPERACION DE UN PUNTO DE COBRO
* SOBRE UNA AUTOPISTA. INICIA CON 3 CABINAS DE COBRO *
* PROGRAMA BASE: *
GENERATE
20,10
Tiempo de inter arrivo (seg) en el carril 1
QUEUE
FILA
Auto forma frente a las cabinas (alguna de ellas)
ENTER
CABINAS
Se solicita acceso a alguna cabina
DEPART
FILA
Auto abandona la fila.
ADVANCE
10,5
Tiempo de servicio en alguna cabina.
LEAVE
CABINAS
Auto deja alguna cabina.
TERMINATE
GENERATE
20,10
Tiempo de inter arrivo (seg) en el carril 2.
QUEUE
FILA
Auto forma frente a las cabinas (alguna de ellas)
ENTER
CABINAS
Se solicita acceso a alguna cabina
DEPART
FILA
Auto abandona la fila.
ADVANCE
10,5
Tiempo de servicio en alguna cabina.
LEAVE
CABINAS
Auto deja alguna cabina.
TERMINATE
GENERATE
8*3600
Se crea 1 transaccin a las 8 horas de operacin
TERMINATE
1
Y el programa termina en este momento.
START
1
Inicia una corrida de la siumulacin.
Carril 1 de la via
GENERATE
QUEUE
ENTER
DEPART
20,10
FILA
CABINAS
FILA
Carril 2 de la via
GENERATE
QUEUE
ENTER
20,10
FILA
DEPART
FILA
10,5
ADVANCE
10,5
LEAVE
CABINAS
LEAVE
CABINAS
TERMINATE
8*3600
TERMINATE
CABINAS
ADVANCE
TERMINATE
GENERATE
Representa a un reloj
de control de fin de la
simulacin para
periodos de 8 horas.
Bloque : Transfer
TRANSFER
Forma Incondicional
Para hacer esto se deja el campo A en blanco y en
B se coloca una etiqueta que seala el bloque
donde ingresar incondicionalmente la
transaccin.
Ejemplo:
TRANSFER
, PROXIMO
.33,DIRUNO,DIRDOS
Ejemplo 2:
TRANSFER .33, ,DIRDOS
Aqu el 33 % de las transacciones que ingresen se dirigen al bloque
etiquetado con DIRDOS y el resto pasa al siguiente bloque.
Forma Condicional
Manera 1. Si en el campo A se emplea la opcin BOTH
Ejemplo:
TRANSFER BOTH,INICIO,FINAL
La transaccin al llegar se transfiere como primera opcin al bloque
etiquetado como INICIO y como segunda opcin al etiquetado como
FINAL hasta que logre el acceso.
TERMINATE
20%
Galletas
SEIZE
DEPART
RELEASE
TRANSFER
10%
25%
GENERATE
ADVANCE
10%
75%
TRANSFER
Refrescos
QUEUE
TRANSFER
ADVANCE
60%
80%
SEIZE
TERMINATE
RELEASE
DEPART
Modelo GPSS
GENERATE 120,60
TRANSFER .20,,FINAL
QUEUE
FILA
TRANSFER .25,,GALLET
SEIZE
MBEBIDAS
DEPART
FILA
ADVANCE 90,30
RELEASE MBEBIDAS
TERMINATE
GALLET
TRANSFER .40,,SOLOGALL
SEIZE
MBEBIDAS
ADVANCE 90,30
RELEASE
MBEBIDA
SOLOGALL SEIZE
MGALLETAS
ADVANCE 90,30
RELEASE
MGALLETAS
DEPART
FILA
FINAL
TERMINATE
GENERATE 4*3600
TERMINATE 1
START 1
Bloque: Test
TEST
"X" A,B,C
TEST E Q$LINEA,Q$INICIO
Aqu la instruccin detendr las transacciones que intenten pasar al bloque
siguiente mientras las longitudes de las filas LINEA e INICIO sean diferentes.
Cuando sean iguales las transacciones pasarn al siguiente bloque.
SNA DEFINICION
SNAs
Parqueo de Taxis
1
208
155
DESVIO
42
ENTER
ADVANCE
208
GENERATE
155
LEAVE
TRANSFER
TERMINATE
ADVANCE
DESVIO
42
TRANSFER
Diagrama de Bloques
GENERATE
intento
ingreso
TRANSFER
15,5
Both,ingreso,desvio
ENTER
Parqueos
ADVANCE
20,8
desvio
ADVANCE
4,2
TRANSFER
LEAVE
TERMINATE
Parqueos
1
,intento
Parqueos
Storage
4
Start 50
inicializa un contador de finalizacion de
la simulacion el cual es disminuido por cada transaccion
que pase por el bloque Terminate
Modelo GPSS
10 ************ MODELO PAQUEO DE TAXIS ***********************
12 PARQUEOS
STORAGE 4
14 ***********************************************************
16
GENERATE 10,5
18 EVALUAR
TRANSFER BOTH,PARQU,DESVIO
20 PARQU
ENTER
PARQUEOS
22
ADVANCE 20,8
24
LEAVE
PARQUEOS
26
TERMINATE
30 ***********************************************************
32 DESVIO
ADVANCE 4,2
34
TRANSFER ,EVALUAR
36 ***********************************************************
40
GENERATE 60
42
TERMINATE 1
44 ***********************************************************************
Resultados de la Simulacin
Ejemplo 3: Restaurant
Barra
Area de
Mesas
Caja
Servicio
comida
Entrada
RELEASE
ENTER
Area de
Mesas
ADVANCE
ADVANCE
Caja
SEIZE
LEAVE
LEAVE
ADVANCE
Barra
Servicio
comida
DEPART
GENERATE
TERMINATE
QUEUE
Entrada
ENTER
GENERATE
TEST
C
VAN
AC1,7200,OTRO
OTRO
QUEUE
ENTER
DEPART
ADVANCE
TEST
SEIZE
G AC1,14400,FIN
90,50
RELEASE
CAJA
ADVANCE
LEAVE
COLA
BARRA
COLA
14,20
FIN TERMINATE
TERMINATE
QUEUE
,VAN
TRANSFER
C
ENTER
BARRA
b
a
CAJA
ADVANCE
DEPART
LEAVE
60,30
COLAMESA
MESAS
COLAMESA
18,5
MESAS
15,7.5,7200
GENERATE
TEST
GE
AC1,7200,SALIR
TEST
LE
AC1,14400,SALIR
SALIR TERMINATE
,VAN
TRANSFER
GENERATE 30,15
TRANSFER .52,ESPUNO,ESPDOS
ESPUNO TEST L
Q$ESPA,5,AYUDB
NOAYB QUEUE
ESPA
SEIZE
ESPECIA
DEPART
ESPA
ADVANCE 20,10
RELEASE ESPECIA
TERMINATE 1
ESPDOS TEST L
Q$ESPB,5,AYUDA
NOAYA QUEUE
ESPB
SEIZE
ESPECIB
DEPART
ESPB
ADVANCE 20,10
RELEASE ESPECIB
TERMINATE 1
AYUDA TEST E
Q$ESPA,0,NOAYA
QUEUE
ESPA
SEIZE
ESPECIA
DEPART
ESPA
ADVANCE 30,5
RELEASE ESPECIA
TERMINATE 1
AYUDB TEST E
Q$ESPB,0,NOAYB
QUEUE
ESPB
SEIZE
ESPECIB
DEPART
ESPB
ADVANCE 30,5
RELEASE ESPECIB
TERMINATE 1
START
100
Modelo GPSS
Bloque : Gate
GATE
Ejemplo(s) :
GATE SNF NAVE,OTRO
La transaccin al ingresar en el GATE preguntara si es verdad que el storage
llamado NAVE no est totalmente lleno, si es verdad pasar al siguiente
bloque, si no se dirige al bloque etiquetado con OTRO.
GATE NU CAJAS
Aqu las transacciones se preguntan si el facility llamado CAJAS no est
siendo usado (sin usarse), si es verdad pasan al siguiente bloque y si es falso
se detienen hasta que este sin usarse.
GENERATE 30,15
SE GENERAN LAS QUEJAS (MIN)
TRANSFER .52,ESPUNO,ESPDOS
SE DISTRIBUYEN LOS CASOS 48% PARA UN ESP.
ESPUNO TEST L
Q$ESPA,5,AYUDB
SI LA FILA ES DE 5 LA SIG. SE TURNA AL OTR. ESP.
NOAYB QUEUE
ESPA
SE FORMAN PARA VER EL ESP. A.
SEIZE
ESPECIA
SOLICITAN ATENCION DEL ESP. A
DEPART
ESPA
SALEN DE LA FILA
ADVANCE 20,10
LOS ATIENDE EN 20 10 MIN.
RELEASE ESPECIA
SE DESOCUPA EL ESPECIALISTA A
TERMINATE 1
ESPDOS TEST L
Q$ESPB,5,AYUDA
SI LA FILA ES DE 5 LA SIG. SE TURNA AL OTR. ESP.
NOAYA QUEUE
ESPB
SE FORMAN PARA VER AL ESP. B
SEIZE
ESPECIB
SOLICITAN ATENCION DEL ESP. B
DEPART
ESPB
SALEN DE LA FILA
ADVANCE 20,10
LOS ATIENDE EN 20 10 MIN.
RELEASE ESPECIB
SE DESOCUPA EL ESPECIALISTA B
TERMINATE 1
AYUDA GATE NU ESPECIA,NOAYA
SI EL ESP. NO TIENE QUEJAS ESPERANDO
QUEUE
ESPA
SE FORMAN EN SU FILA
SEIZE
ESPECIA
SOLICITAN SU ATENCION
DEPART
ESPA
SE DESFORMAN
ADVANCE 30,5
TIEMPO POR QUEJA (AYUDA)
RELEASE ESPECIA
SE DESOCUPA EL ESPECIALISTA A
TERMINATE 1
AYUDB GATE NU ESPECB,NOAYB
SI EL ESP. NO TIENE QUEJAS ESPERANDO
QUEUE
ESPB
PASAN POR SU FILA
SEIZE
ESPECIB
SOLICITAN SU ATENCION
DEPART
ESPB
SALEN DE SU FILA
ADVANCE 30,5
TIEMPO DE ATENCION POR QUEJA (AYUDA)
RELEASE ESPECIB
SE DESOCUPA EL ESPECIALISTA B
TERMINATE 1
START
100
SE SIMULAN 100 QUEJAS ATENDIDAS.
Modelo GPSS
CONTRES
EXTRAS
NORMAL
EXTRA
DOSEX
DEXTRA
STORAGE 3
STORAGE 1
GENERATE 5,2 EN MINUTOS
QUEUE
FILA
TEST L
QT$FILA,15,OTRO
ENTER
CONTRES
ADVANCE 10,8
LEAVE
CONTRES
DEPART
FILA
TERMINATE OTRO
GATE UN UNOMAS,DOSEX
TRANSFER BOTH,NORMAL,EXTRA
SEIZE
UNOMAS
ADVANCE 10,8
RELEASE
UNOMAS
DEPART
FILA
TERMINATE
TRANSFER BOTH,NORMAL,DEXTRA
ENTER
EXTRAS
ADVANCE 10,8
LEAVE
EXTRAS
DEPART
FILA
TERMINATE
GENERATE 8*60
TERMINATE 1
START 1
Modelo GPSS
8.0
TIEMPO
6.0
5.0
x
4.0
X-3.0 0.59-0.55
=
4.0 -3.0 0.65-0.55
3.0
2.0
1.0
0
v
0.35
0.45
0.55
0.65 0.80
059
0.90
1.0
RN5
Function
Funcin Continua ( C )
lnx
Input
Output
Variable
5#x$costo/24.8
FUNCTION V$Input,C3
1.1,10.1/20.5,98.7/33.3,889.2
Xpdis
FUNCTION RN200,C24
0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2/.75,1.38
.8,1.6/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81/.95,2.99/.96,3.2
.97,3.5/.98,3.9/.99,4.6/. 995,5.3/.998,6.2/.999,7/.9998,8
tpo =
-1 ln(1-#R)
Funcin Discreta ( D )
(GPSS no realiza internamente una interpolacin)
DIista
FUNCTION
X$A2,D5
1.1,6.9/2.1,7/6.33,9.4/7,10/9.9,12.01
Ran1
FUNCTION
RN1,D5
0,0/.2,7.2/.4,6.667/.8,9.92/1.0,10
Funcin Lista ( L )
Lista
FUNCTION
Q$Barbero,L5
1,PAR1/2,PAR2/3,PAR3/4,PAR4/5,PAR5
Cantidad
1,10/2,15/3,25/4,50
FUNCTION
P$tipo,L4
Funcin Discreta de
atributo valuado ( E )
Edisc
FUNCTION
X$QRA,E5
1,S$Stor1/3,S$Stor2/5,S$Stor3/9,S$Stor5/10,S$Stor6
Funcin lista de
atributos valuados (M)
Mlist
FUNCTION
X$Name1,M5
1,Q$Nam1/2,Q$Nam2/3,Q$Nam4/4,Q$Nam6/5,Q$Nam7
Funcin Exponencial
EXPONENTIAL (ENTRADA, LAMBDA, BETA)
Entrada: El generador de nmeros aleatorios el nmero de registro.
Requerido. Debe ser mayor o igual a 1.
Lambda: El valor de compresin utilizado para expandir o contraer la
distribucin.
Beta: El valor de cambio utilizado para la posicin de la distribucin.
Teniendo en cuenta adems que:
Funcin Uniforme
UNIFORM (ENTRADA, A, B)
Entrada: El generador de nmeros aleatorios el nmero de
registro. Requerido. Debe ser mayor o igual a 1.
A: El valor ms pequeo que cabe extraer de la distribucin.
Debe ser inferior al mximo.
B: El valor ms grande que se desprende de la distribucin.
Deber ser superior al min.
Teniendo en cuenta adems que:
Funcin Normal
NORMAL (ENTRADA, MEDIA, DESV_ESTANDAR)
Entrada: El generador de nmeros aleatorios el nmero de
registro. Requerido. Debe ser mayor o igual a 1.
Media: el valor medio de la distribucin. Requerido.
Desv_estandar: la desviacin estndar de la distribucin.
Estrictamente positiva. Requerido.
Media =
Desviacin Estndar =
Funcin Poisson
POISSON (ENTRADA, LAMBDA)
Entrada: El generador de nmeros aleatorios el nmero de
registro. Requerido. Debe ser mayor o igual a 1.
Lambda: el valor medio de eventos a ocurrir.
Teniendo en cuenta adems que:
Ejemplo 6 :
HORNOS STORAGE 2
Unidad de recursos multiple de tamao 2
PINTORS STORAGE 2
Se declaran 2 pintores iguales
PINUNO
FUNCTION RN1,D4 TIEMPO DE PINTURA PARA EL PINTOR 1
.1,70/.5,50/.8,60/1.0,65
PINTOS
FUNCTION RN2,BN TIEMPO DE PINTURA PARA LOS PINTORES 2 Y 3
EXPON
FUNCTION RN3, BE
FUNCION EXPONENCIAL
GENERATE FN$EXPON*30,,540,150
GENERACION DE LLEGADAS POISS. AUTOS (MIN)
* * EMPIEZAN LAS LLEGADAS A LAS 9 HRS Y ES UN TOTAL DE 150 AUTOS. ****
QUEUE
FILAAP SE FORMA UN AUTO PARA PINTURA
TRANSFER BOTH,DIRPINU,DIRPIND
SE LOCALIZA EL PINTOR DESOCUPADO
DIRPINU SEIZE
PINTORU
SE OCUPA AL PINTOR UNO
DEPART
FILAAP
ADVANCE FN$PINUNO
TIEMPO DE PINTADO
RELEASE PINTORU
TERMINA DE PINTAR Y SE DESOCUPA
QUEUE
FILAHOR
FORMA EL AUTO PARA ENTRAR AL HORNO
ENTER
HORNOS
SE SOLICITA ACCESO AL HORNO
DEPART
FILAHOR
ADVANCE 30,5 SE HORNEA
LEAVE
HORNOS
SE LIBERA EL HORNO
QUEUE
FILAINS SE FORMA PARA INSPECCION
SEIZE
INSPECC
PASA AL PUESTO DE INSPECCION
DEPART
FILAINS LIBERA LA FILA DE INSP.
ADVANCE 7,2
LO INSPECCIONAN
RELEASE INSPECC
LIBERA EL PUESTO DE INSP.
TRANSFER .01,,REPIN
SE MANDA A REPINTADO
QUEUE
FILAFIN FILA DE AUTOS TERMINADOS
TERMINATE
SE TERMINA UN AUTO
Modelo GPSS
DIRPIND
REPIN
ENTER
PINTORS
DEPART
FILAAP
ADVANCE FN$PINTOS*10+60
LEAVE
PINTORS
QUEUE
FILAHOR
ENTER
HORNOS
DEPART
FILAHOR
ADVANCE 30,5
LEAVE
HORNOS
QUEUE
FILAINS
SEIZE
INSPECC
DEPART
FILAINS
ADVANCE 7,2
RELEASE INSPECC
TRANSFER .01,,REPIN
QUEUE
FILAFIN
TERMINATE
PRIORITY 1
QUEUE
FILAAP
TRANSFER BOTH,DIRPINU,DIRPIND
TERMINATE 0
GENERATE 1080
TERMINATE 1
START 1
SPLIT
Bloque : Split
La instruccin SPLIT permite simular que una
pieza o un paquete se desensambla en varios
que lo componen. Su sintaxis es:
SPLIT A,B,C,D,E,F,G,H
Donde A es el nmero de transacciones creadas
en la cascada (cuantas transacciones saldrn
despus de que alguna ingrese en el bloque
SPLIT. En B se coloca la direccin del bloque al
cual se dirige la cascada creada.
Nota : Para los operandos subsecuentes vase el manual de referencia
correspondiente a la versin que posea ya que estn fuera del nivel de este
curso.
Bloque: Assemble
ASSEMBLE
Bloque: Assign
ASSIGN
Bloque : Savevalue
SAVEVALUE
Nombre
Variable
expresion
Operadores matematicos
Savevalue espacioTotal+,v$espacio
Ubica la sentencia de control variable de nombre
espacio, determina el valor de la expresion y se lo
adiciona a la variable tipo savevalue espacioTotal.
Ejemplo de EQU
Precio EQU
19.5
Ejemplos de INITIAL
INITIAL X$InvInicial,25
Esta sentencia asigna el valor inicial de 25 a la variable
global InvInicial del tipo Savevalue.
INITIAL Resultados
Esta sentencia prepara una entidad Matrix previamente
definida y denominada Resultados para usar en una
simulacin a partir de una matriz sin datos.
Bloque TABULATE
TABULATE
Ej:
TABULATE
Ventas
Ejemplo de TABLE
Ventas Table
X$ventas,10,10,5
ventas
10
20
30
40
50
SALIR
LOC
1
2
3
4
5
6
7
8
9
10
11
BLOCK TYPE
GENERATE
ASSIGN
TEST
QUEUE
SEIZE
DEPART
ADVANCE
RELEASE
TABULATE
TERMINATE
TERMINATE
ENTRIES
28
13
27
26
9
QUEUE
1
2
3
4
5
TABLE
COLA4
MEAN STD.DEV.
3.170
2.094
RANGE
2.000 4.000 6.000 8.000 - _
2.000
4.000
6.000
8.000
RETRY
0
FREQUENCY CUM.%
32
51
10
5
2
32.00
83.00
93.00
98.00
100.00
Ejemplo de Matriz
Produccion
Matrix
,3,2
Maq2: 2
ProdA: 1
ProdB: 2
ProdC: 3
MSAVEVALUE
Bloque MSAVEVALUE
Ejemplo de MSAVEVALUE
Msavevalue Ventas+,parte_7,cliente_4,6.25
Cuando una transaccin ingresa a este bloque el
elemento de la matriz denominada Ventas,
ubicado en la fila parte_7 y columna cliente_4 es
incrementada en 6.25.
Bloque PREEMPT
PREEMPT
PREEMPT
A,B
Bloque PREEMPT
En caso de que se omita B y si la transaccin que
usa PREEMPT encuentra el recurso A ocupado
puede:
Esperar, si el recurso est ocupado por una transaccin que esta
utilizando PREEMPT
Interrumpe el servicio de la transaccin si sta ocupando el
recurso definido con el bloque SEIZE (clientes menos prioritarios).
Ejemplo de interrupcin
* Compradores de peridicos
GENERATE
QUEUE
PREEMPT
DEPART
ADVANCE
RELEASE
TERMINATE
120,30
TOTQ
VENDEDOR
TOTQ
45,30
VENDEDOR
* Compradores de alimentos
GENERATE
QUEUE
SEIZE
DEPART
ADVANCE
RELEASE
TERMINATE
360,120
TOTQ
VENDEDOR
TOTQ
240,150
VENDEDOR
Bloque LOGIC
LOGIC
Bloque MARK
MARK
Ej. Mark P2
Cuando una transaccin ingresa a este bloque en el parmetro
denominado 2 de la transaccin se estampa el tiempo de reloj del sistema
AC1.
Ej. Mark
Cuando una transaccin ingresa a este bloque se le estampa el tiempo
de reloj absoluto del sistema AC1.
y todo lo dems