You are on page 1of 6

Sistemas de simulacin Conceptos bsicos

CONCEPTOS DE SIMULACIN EN GPSS


INTRODUCCIN El GPSS/PC Y el GPSS/H son las aplicaciones nuevas e iterativas dentro del ambiente IBM del GPSS, General Purpose Simulating System ( en espaol, Sistema de Simulacin de Propsito General ) desarrollo a principios de la dcada de los 60 por Geoffrey Gordon. El objetivo principal del GPSS es la modulacin de sistemas discretos. Cualquier sistema por simular en este lenguaje se debe describir mediante un diagrama de bloques que representan las actividades, unidos mediante lneas que representan la frecuencia que seguirn un grupo de transacciones, que a su vez se muestran a travs de los bloques. Las transacciones dependen de la naturaleza del sistema, por ejemplo, un sistemas de comunicaciones se refiere al movimiento de mensajes; un sistema de transporte se refiere al movimiento de vehculos motorizados; un sistema de produccin al movimiento de piezas. ELEMENTOS BSICOS Como se menciona en la subseccin anterior la simulacin mediante GPSS se realiza con dos elementos bsicos conocidos como transacciones y bloques. Una transaccin es aquello que fluye a travs del sistema de manufactura, y que puede ser: informacin, piezas, ordenes de produccin, fallas, operarios, mecnicos, etc. Mientras que un bloque se define como cualquier operacin que realiza una transaccin dentro de un sistema: procesamiento, entrada a un almacn, salida de un almacn, inicio de proceso, fin de proceso, salida del sistema, ensamble, desensamble, etc..

CONCEPTOS DE PROGRAMACIN
1

Sistemas de simulacin Conceptos bsicos

Un programa en GPSS puede ser visualizado desde dos puntos de vista;

el primero, dentro del contexto de programacin por bloques ya descrito;

el segundo, dentro del contexto de cadenas de eventos. Por lo general es ms sencilla la visualizacin de la simulacin dentro del primero de ellos, y es posible programar modelos validos sin considerar el concepto de cadenas de eventos. Se entiende por cadena de eventos el lugar donde se envan las transacciones que durante su recorrido a travs del modelo o bloques encuentra una condicin de bloqueo que les impide seguir un cambio libremente. Existen dos tipos de bloqueo: a) Bloqueo de retraso o b) Bloqueo condicional.
a) El bloqueo de retraso consiste en la entrada de una transaccin a un bloque que retardara

su tiempo de avance; en otras palabras la transaccin estar en el tiempo t1 y saldr del bloque en el tiempo t2, en el intervalo entre estos dos tiempos, la transaccin permanece, a los ojos de un programador, por bloques en el bloque retardante, sin embargo, a los ojos de un programador por eventos, la transaccin para formar parte de la cadena de eventos futuros, a la que entra en t1 y sale en t2. En GPSS existen solo dos bloques retardantes: el GENERATE, que coloca la transaccin en la cadena de eventos futuros hasta el tiempo que deba de entrar al sistema, y el ADVANCE, que coloca la transaccin en la cadena de eventos futuros hasta que haya cumplido con su retraso asignado.

b) El bloque condicional ocurre cuando una transaccin intenta entrar a un bloque y encuentra un impedimento fsico o una condicin no cumplida en el bloque; por ejemplo, una transaccin que intenta entrar a un bloque que simula una maquina, y dicha maquina se encuentra trabajando con otra transaccin o esta descompuesta. Entonces la transaccin queda bloqueada hasta que la maquina se desocupe o quede reparada. Hablamos en programacin por bloques, en apariencia la transaccin queda suspendida en el espacio
2

Sistemas de simulacin Conceptos bsicos

esperando su entrada al bloque que se lo impide. Sin embargo, esa transaccin es enviada a esperar su destino a la cadena de eventos actuales, hasta que la condicin de bloques desaparezca y pueda continuar su camino. En este sentido en GPSS existen muchos bloques que actan sobre las transacciones; por mencionar algunos, SEIZE, GATE, TEST y ENTER. ESTRUCTURA DEL LENGUAJE Para usar el GPSS se requiere tener condiciones de comandos ms comunes del sistema DOS. Dentro de un programa de GPSS se pueden distinguir cuatro tipos de instrucciones, cada una de las cuales se detalla a continuacin: Instrucciones de acceso al sistema GPSS Estas instrucciones permiten al usuario el acceso al compilador del GPSS y dependen de cada tipo de versin utilizada: en este punto se recomienda hacer referencia al manual respectivo. Instrucciones de definido de variables Son un tipo de instrucciones especiales de carcter opcional; su inclusin depende del sistema a modelar. Estas instrucciones siempre se encuentran relacionadas con las instrucciones de lgica del programa. Dentro de las instrucciones se encuentran las siguientes: definicin de las funciones a utilizar, definicin de la capacidad de los almacenes, definicin del numero de operarios maquinas por estacin, inicializacin de variables, definicin de las operaciones matemticas por utilizar, etctera. A continuacin de muestra una lista de las definiciones mas comunes utilizadas en GPSS:

Sistemas de simulacin Conceptos bsicos

Definicin de funciones Definicin del nmero de mquinas Definicin de matrices Asignacin numrica a variables Inicializacin de variables Definicin de histograma Definicin de operaciones

FUNCTION STORAGE MATRIX EQU INITIAL TABLE VARIABLE y FVARIABLE

Instrucciones de lgica del programa Este tipo de instrucciones son las conocidas como bloques; son las que se ejecutaran durante la simulacin; la lgica depender de cada sistema que se desee simular. Teniendo en cuenta la funcin que realizan, una clasificacin de los bloques o instrucciones de lgica es la siguiente: Simulacin de inicio de proceso y captura de mquina SEIZE ENTER PREEMPT Simulacin de fin de proceso y liberacin de mquina RELEASE LEAVE RETURN Simulacin de entradas de transacciones a un almacn QUEUE ENTER LINK Simulacin de salidas de transacciones a un almacn DEPART ENTER UNLINK Simulacin de entrada de transaccin del sistema Simulacin de salidas de transacciones del sistema Simulacin de diversos tipos de procesos GENERATE SPLIT TERMINATE ADVANCE ASEEMBLE
4

Sistemas de simulacin Conceptos bsicos

MATCH GATHER Simulacin de control de flujo de transacciones TRANSFER TEST GATE LOGIC SELECT LOOP BUFFER Bloques de operaciones aritmticas SAVEVALUE MSAVEVALUE ASSIGN INDEX PRIORITY Bloques de creacin de estadsticas TABULATE

Las instrucciones de tipo b) y c) se codifican siguiendo un formato general, dentro del cual se pueden distinguir los siguientes elementos:

2 Loc

8 Bloque

19 Operandos

31 Comentarios

donde: Loc Representa el nombre de una etiqueta o una direccin. La etiqueta es un campo opcional y su existencia depende de la lgica del programa. Esta localizado en la columna 2. Su funcin es simular a las etiquetas en Fortran o Basic.
5

Sistemas de simulacin Conceptos bsicos

Bloque Es la instruccin especfica por ejecutar. Representa la accin que va a llevar a cabo cada una de las transacciones que cursan por all. Se coloca en la columna 8. Operandos Cada bloque representa la accin por ejecutar, sin embargo, es necesario incluir un documento, como puede ser la duracin o el lugar de dicha accin. Los operandos son las caractersticas individuales de cada bloque, y dependern de la lgica del sistema. Se coloca en la columna 19. Comentarios Es el espacio donde el usuario puede colocar cualquier indicacin o identificacin de la instruccin. En algunas versiones del GPSS, como en el GPSS/PC, cada instruccin debe ir precedida de un nmero de instruccin en forma ascendente de acuerdo con la lgica, pero se utiliza solo como referencia para la edicin del programa.