practica 1 sed teoria de colas

Upload: alvar-sanchez

Post on 05-Oct-2015

66 views

Category:

Documents


0 download

DESCRIPTION

Practica de teoria de colas usando el software Arena de Rockwell

TRANSCRIPT

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial

    Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica Prctica I- SED. Modelado y simulacin de sistemas de eventos discretos: ARENA.

    Objetivos Iniciacin al entorno de simulacin ARENA. Introduccin a los conceptos de colas (queue), entidades temporales (entity) y recursos

    (resource) Bloques bsicos: CREATE, DISPOSE, DELAY, SEIZE, RELEASE, PROCESS,

    MATCH Uso de elementos de visualizacin bsicos: grficas de tendencia e indicadores

    numricos Introduccin a la interpretacin de resultados

    Tiempo estimado de realizacin: 2 sesiones de 2 horas. Contenidos: Como gua en el manejo de ARENA se recomienda la consulta de dos manuales en formato pdf almacenados en el directorio creado al instalar ARENA. Los manuales son Arena Standard Edition. User`s Guide y Arena Variables Guide. Aparte de la documentacin, ARENA dispone de una potente herramienta de ayuda con la que conviene que se familiarice. Para empezar a ejecutar la aplicacin ARENA versin 13.5 seleccione Rockwell Software; Arena; Arena. La ventana principal tiene tres zonas:

    La primera en la que estn las libreras de componentes a utilizar, el acceso a los resultados de la simulacin y la navegacin a travs del modelo de simulacin.

    La segunda en la que se almacena el modelo de simulacin. La tercera en la que se muestran las propiedades del componente seleccionado.

    Figura 1

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Para modelar un sistema se seleccionan mdulos de alguna de las libreras disponibles (Figura 2), se arrastran desde el panel correspondiente a la ventana del modelo, se conectan y se parametrizan adecuadamente. Si se quieren utilizar otras libreras se pueden seleccionar desde la opcin File; Template Panel; Attach. Pueden distinguirse dos familias de mdulos (Figura 2): mdulos de flujos y mdulos de datos.

    Mdulos de flujo. Permiten describir el flujo de las entidades a travs del sistema, desde su creacin hasta su eliminacin del modelo. Los mdulos pertenecientes al panel Basic Process son: CREATE; PROCESS; DECIDE; BATCH; SEPARATE; ASSIGN; RECORD y DISPOSE. Algunos de estos bloques se utilizarn en esta prctica y otros en prcticas posteriores.

    Mdulos de datos. Presentan la informacin de modo estructurado acerca de los componentes del modelo. Por ejemplo, los mdulos Entity, Queue y Resource, nos indican la informacin relativa a los tipos de entidades, las colas de espera de las entidades y los tipos de recursos, respectivamente, definidos en el modelo. Asimismo existen otros mdulos de datos que complementan la descripcin del modelo proporcionada por los mdulos de flujos, como por ejemplo el mdulo Schedule que permite la planificacin de la capacidad de los recursos, Variable en el que se describen las variables globales del modelo y Set en el que se describen los distintos tipos de conjuntos manejados en el modelo tanto de recursos, tipos de entidades (estos mdulos se utilizarn en posteriores prcticas).

    Los mdulos de datos no pueden ser arrastrados a la ventana del modelo: en cada modelo slo existe un modulo de datos de cada clase y est ubicado en su correspondiente panel. Para editar uno de estos mdulos basta con seleccionarlo y aparecer la correspondiente informacin en la ventana 3 en forma de hoja de clculo.

    Se puede dotar al modelo de simulacin de elementos para mostrar valores numricos o representaciones grficas (Figura 3). Dichos elementos pueden encontrarse en la barra de herramientas. En prcticas posteriores tambin veremos que se puede animar la simulacin e incluso registrar dicha animacin en un fichero *.avi para hacer alguna demo. Para definir el experimento debe seleccionarse la opcin Run/Setup del men principal y aparecer una ventana de dilogo en la que se pueden especificar las condiciones del experimento. La ventana dispone de varias pestaas que permiten configurar los distintos aspectos del experimento (Project Parameters, Replication Parameters, ). La pestaa Project Parameters se usa para indicar el nombre del proyecto y el analista, as como los aspectos del modelo que se desea que ARENA consider en el momento de generar el fichero de resultados. La pestaa Replication Parameters permite indicar (Figura 4):

    El nmero de rplicas independientes que se desea realizar de la simulacin. Si se desea realizar ms de una rplica debe especificarse como tratar el estado del sistema y las estadsticas entre dos rplicas consecutivas (seleccionando las casillas Statistics y System de la opcin Initialize Between Replications).

    o Inicializar sistema y estadsticas, implica que las rplicas son estadsticamente independientes (secuencia de nmeros aleatorios distintos en cada rplica). Se obtienen informes independientes de cada rplica.

    o Inicializar sistema pero no estadsticas, implica que las rplicas son estadsticamente independientes. Se obtienen informes acumulativos (el primer informe es el de la primera rplica, el segundo el de las dos primeras rplicas y as sucesivamente).

    o No inicializar el sistema pero si las estadsticas, implica que el estado inicial de una rplica coincide con el estado final de la rplica previa (la rplicas no son

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    necesariamente independientes ni idnticamente distribuidas en el sentido estricto). Se obtienen informes independientes de cada rplica.

    o No inicializar el sistema ni las estadsticas, implica que el estado inicial de una rplica no coincide con el estado final de la rplica previa y se obtienen informes acumulativos.

    Base Time units es la unidad de tiempo que debe emplear ARENA internamente para realizar la simulacin.

    La simulacin puede finalizarse por tiempo Replication Length o por condicin lgica de finalizacin Termination Condition.

    Warm-up Period es el tiempo de calentamiento, tiempo a partir del cual los datos generados empiezan a considerarse para las estadsticas (de ese modo pueden generarse las estadsticas cuando el sistema ha alcanzado un rgimen estacionario).

    Figura 2

    Figura 3

    Figura 4

    Figura 5

    La simulacin se puede ejecutar hasta que se cumplan las condiciones de finalizacin, o paso a paso. Usando los controles de la Figura 5 o el men run. Por defecto, los resultados de la ejecucin de la simulacin son accesibles desde el panel Reports de la barra del Proyecto (Figura 6). Los datos mostrados en este informe son extrados de un fichero Access (con extensin .mdb) creado durante la simulacin. Estos mismos resultados pueden recogerse, de forma ms compacta, en el informe SIMAN (fichero ascii con extensin .out). Para ello en la pestaa Reports de la ventana Run Setup debe elegir SIMAN (Figura 7. ). En prcticas posteriores se indicar en detalle la informacin que se obtiene de los informes o reports, as como la estructura del fichero .out.

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Figura 6

    Figura 7

    Estos dos ficheros de salida de la simulacin son guardados en el mismo directorio donde se guarda el modelo de simulacin (fichero con extensin .doe). La ejecucin de la simulacin genera otros ficheros que tambin se guardan en el mismo directorio donde est el modelo de simulacin (Figura 8).

    Figura 8

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Para iniciarnos en el uso de ARENA simularemos dos sistemas: Ejercicio 1: Proceso simple con una estacin de trabajo que consta de dos mquinas, con piezas que esperan en una cola de tipo FIFO (First Input Firsty Output)p ara ser procesadas (Figura 9).

    Figura 9

    Si se analiza este ejemplo desde una orientacin a procesos, las piezas o entidades temporales entran desde el exterior y esperan en la cola de entrada compitiendo para capturar (que le asignen) una mquina, recurso o entidad permanente limitada. Una vez la pieza captura el recurso (mquina) se inicia el procesado de la pieza (que puede modelarse como un retardo que sufre la pieza debido al tiempo que est procesndose). Una vez finalizado el proceso, se libera la mquina y la pieza procesada sale del sistema.

    La Figura 10 muestra el modelo de simulacin del proceso. El bloque CREATE modela la llegada de piezas desde el exterior. Para ello resulta adecuado que defina en el mdulo de datos Entity el tipo de entidad Pieza, que luego usar en el bloque CREATE. El bloque SEIZE modela la asignacin de mquina a pieza, para ello dispone de una cola visible en la que se van situando las piezas que demandan mquinas y de otra cola interna en la que estn las mquinas paradas. Antes de configurar el bloque SEIZE seleccione el mdulo de datos Resource y defina el recurso Maquina con capacidad 2. Finalmente, el bloque DELAY modela el hecho de que la pieza y la mquina estn involucradas en la actividad de procesar. Pasado el tiempo especificado en el DELAY de dicho bloque sale la entidad pieza (con la mquina que se le ha asignado en el bloque SEIZE) y entra en el bloque RELEASE en el que se especifica la liberacin de la mquina asignada a la pieza, de modo que la mquina vuelve a la cola interna del bloque SEIZE. La pieza que sale del bloque RELEASE, una vez liberada la mquina se enva al bloque DISPOSE que la enva hacia el exterior.

    PROCESAR PIEZA

    PIEZA ENTRA AL SISTEMA

    PIEZAS ESPERANDO POR

    MQUINA

    MQUINAS

    LIBRES

    EXTERIOR

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Figura 10

    Como datos, suponga que el ritmo de llegada de piezas viene descrito por una distribucin exponencial de valor medio 3 minutos y que el tiempo de servicio de cada mquina viene dado por una distribucin exponencial de media 2 minutos. Simule el sistema durante 6.000 minutos y, usando la informacin de la pestaa report responda a las siguientes preguntas:

    Factor de utilizacin de cada mquina (% del tiempo que ha estado activa). Nmero promedio de las piezas en el sistema. Nmero promedio de las piezas en cola de espera por mquina. Retardo promedio de las piezas en el sistema (tiempo promedio en cola). Tiempo promedio de las piezas en el sistema. Nmero promedio de las mquinas en el sistema. Nmero promedio de las mquinas en cola de espera por pieza. Retardo promedio de las mquinas en el sistema (tiempo promedio en cola). Tiempo promedio de las mquinas en el sistema.

    Observe que hay alguna pregunta que no podemos responder, cules?. Dado que la captura de recursos, su uso y su posterior liberacin se efecta continuamente en el modelo de simulacin, puede usarse el bloque PROCESS que aglutine los bloques SEIZE, DELAY y RELEASE y alguna posible combinacin de ellos. De modo que el modelo de simulacin tambin puede construirse como en la figura adjunta.

    Figura 11

    Los bloques CREATE, DISPOSE y PROCESS los encontrar en la librera BASIC PROCESS. Los bloques SEIZE (capturar), DELAY y RELEASE (liberar) los encontrar en la librera ADVANCED PROCESS. Otra forma de modelar el sistema es considerar las mquinas, no como recursos, sino como entidades temporales como las piezas. Para ello en el mdulo de datos Entity debe definir la nueva entidad Maquina y eliminarla del mdulo Resource. Comprobar que manejar los recursos como entidades va a complicar el problema, ya que deben utilizarse los siguientes bloques:

    Un bloque CREATE adicional para crear las dos mquinas que estn presentes en el sistema.

    Un bloque de tipo MATCH, ubicado en la librera ADVANCED PROCESS, para simular la asignacin de una mquina a una determinada pieza.

    Un bloque de tipo DELAY para simular la actividad procesamiento. De nuevo, otro bloque de tipo MATCH para simular el evento de liberar una mquina

    una vez que ha finalizado el procesamiento. En este caso el modelo es el reflejado en la Figura 12.

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Figura 12

    Simule el sistema durante 6.000 minutos, visualice los resultados en el fichero de resumen de SIMAN y tratar de responder a las siguientes preguntas:

    Factor de utilizacin de cada mquina (% del tiempo que ha estado activa). Nmero promedio de las piezas en el sistema. Nmero promedio de las piezas en cola de espera por mquina. Retardo promedio de las piezas en el sistema (tiempo promedio en cola). Tiempo promedio de las piezas en el sistema. Nmero promedio de las mquinas en el sistema. Nmero promedio de las mquinas en cola de espera por pieza. Retardo promedio de las mquinas en el sistema (tiempo promedio en cola). Tiempo promedio de las mquinas en el sistema.

    Compare los resultados con lo obtenido anteriormente. Observe que ahora hay alguna pregunta ms que podemos responder, pero otras no. Ejercicio 2: Un proceso robotizado simple caracterizado porque dos flujos diferentes de fabricacin compiten por un mismo recurso (robot), ya que el robot tiene que procesar las piezas de tipo 1 y de tipo 2 (Figura 13).

    Estacin

    Pieza enel servidor

    Piezas quesale del servidor

    Tipo 1

    Tipo 2

    Cola 1

    Cola 2

    Piezas quellega

    Tipo 1

    Tipo 2 Figura 13

    En este caso resulta til manejar el robot como un recurso y modelar el procesamiento de cada tipo de pieza usando bloques de tipo PROCESS. La Figura 14 muestra el cdigo del proceso en el que los dos tipos de piezas evolucionan de forma concurrente pero comparten un mismo recurso, el robot por el que compiten.

  • Modelado y Simulacin de Sistemas. 3 Grado en Ingeniero en Electrnica y Automtica Industrial Luis Felipe Acebes. Departamento de Ingeniera de Sistemas y Automtica

    Figura 14

    Estaremos en una situacin de conflicto cuando dos piezas soliciten el recurso robot. Para resolver este conflicto puede priorizarse la peticin en el bloque PROCESS (priority), de modo que el robot atender al flujo de piezas de mayor prioridad (Figura 15 y Figura 16). Simule el comportamiento del sistema durante 480 minutos de modo que lleguen piezas del tipo 1 y del tipo 2, de una en una, y con un tiempo entre llegadas regido por una distribucin exponencial de media 5 minutos. La primera pieza de tipo 1 llegar en el instante 0 y la primera pieza del tipo 2 en el instante 2.5. Observe que deber crear dos tipos de entidades denominadas Pieza1 y Pieza2 diferentes.

    Figura 15

    Figura 16

    Aada al diagrama de simulacin un grfico de tendencia en el que se muestren las Piezas1 y Piezas2 esperando por robot. Observe esas grficas cambiando la prioridad de cada una de los flujos de piezas. Observe esas grficas aumentando el nmero de robots. Aada tambin indicadores numricos en los que se muestren las piezas de un tipo u otro que llegan al sistema, y las que estn esperando por robot (use la expresin NQ(nombre de la cola de espera), number in queue). Al final de la ejecucin de cada simulacin observe las estadsticas generadas por ARENA y trate de entenderlas e interpretarlas. Especialmente las que hacen referencia a las entidades (entities), colas (queues) y recursos (resources).