38
 Autor: Carlos Andrés Sierra Betancur Página 1 de 38 BLOQUES BÁSICOS DE EXTEND Unidad: Lección 2 – Bloques básicos de Extend Autor: Carlos Andrés Sierra Betancur Curso: Simulación virtual Última Actualización: Julio de 2005

Bloques Básicos Extend 1

Embed Size (px)

Citation preview

Page 1: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 1/38

 

Autor: Carlos Andrés Sierra Betancur

Página 1 de 38

BLOQUES BÁSICOS DE EXTEND 

Unidad: Lección 2 – Bloques básicos de Extend

Autor: Carlos Andrés Sierra Betancur

Curso: Simulación virtual

Última Actualización: Julio de 2005

Page 2: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 2/38

 

Autor: Carlos Andrés Sierra Betancur

Página 2 de 38

Tabla de contenidos

BLOQUES BÁSICOS DE EXTEND ................................................................................................................................ 1 

TABLA DE CONTENIDOS ............................................................................................................................................ 2 

1  OBJETIVOS.......................................................................................................................................................... 3 

2  POR QUÉ EXTEND? ...........................................................................................................................................4 

3  INTRODUCCIÓN ..................................................................................................................................................5 

4  BLOQUES BÁSICOS DE EXTEND.......................................................................................................................7 

4.1  DISCRETE EVENT: EXECUTIVE..........................................................................................................................7 4.2  DISCRETE EVENT: ACTIVITIES: ACTIVITY, DELAY ..............................................................................................8 

4.2.1  Pestaña Activity...................................................................................................................................9 

4.2.2  Pestaña Results..................................................................................................................................10 4.3  DISCRETE EVENT: ACTIVITIES: ACTIVITY, MULTIPLE ....................................................................................... 11 4.3.1  Pestaña Activity.................................................................................................................................12 4.3.2  Pestaña Results..................................................................................................................................13 

4.4  DISCRETE EVENT: GENERATORS: GENERATOR ................................................................................................15 4.4.1  Pestaña Items.....................................................................................................................................17  

4.5  DISCRETE EVENT: GENERATORS: PROGRAM.................................................................................................... 19 4.5.1  Pestaña Program................................................................................................................................ 19 

4.6  DISCRETE EVENT: Q UEUES: Q UEUE, FIFO ..................................................................................................... 22 4.6.1  Pestaña Queue ...................................................................................................................................22 4.6.2  Pestaña Results..................................................................................................................................24 

4.7  DISCRETE EVENT: Q UEUES: Q UEUE, LIFO ..................................................................................................... 26 4.8  DISCRETE EVENT: ROUTING: EXIT ................................................................................................................. 26 

4.9  DISCRETE EVENT: ROUTING: EXIT (4) ...........................................................................................................27 4.10  DISCRETE EVENT: ROUTING: SELECT DE OUTPUT ..........................................................................................28 4.10.1  Pestaña Select Output ................................................................................................................. 28 4.10.2  Pestaña Results .............................................................................................................................34 

4.11  DISCRETE EVENT: ROUTING: COMBINE...........................................................................................................35 

5  EJEMPLO ........................................................................................................................................................... 36 

Page 3: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 3/38

 

Autor: Carlos Andrés Sierra Betancur

Página 3 de 38

1  Objetivos

Al finalizar el estudio de la presente lección usted deberá estar en capacidad deelaborar modelos sencillos de simulación discreta en Extend.

Además, deberá estar familiarizado con los elementos básicos de la interfaz de usuariode Extend que le permiten crear los modelos, configurar los parámetros de lasimulación, introducir animación a los modelos y visualizar los resultados y estadísticasgeneradas en los bloques de interés en la simulación.

También deberá conocer el funcionamiento básico y algunas características avanzadasde los siguientes bloques de Extend: Executive, Activity Delay, Activity Multiple,Generator, Program, Queue FIFO, Queue LIFO, Exit, Exit(4), Select DE Output,Combine

Page 4: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 4/38

 

Autor: Carlos Andrés Sierra Betancur

Página 4 de 38

2  Por Qué Extend?

Extend es uno de los dos programas de simulación que estaremos usando y estudiando

durante el curso. Las razones para haberlo seleccionado entre la gran cantidad deprogramas de simulación que existen en la actualidad en el mercado son:

  Facilidad de uso: los modelos se crean adicionando los bloques necesariosdando clic en un menú que contiene los bloques disponibles, interconectándoloscon tan sólo arrastrar el mouse desde el bloque se origen hasta el bloque dedestino, e introduciendo la información necesaria en cuadros de diálogo muyintuitivos y bien documentados.

  Versatilidad: dado que permite realizar simulación continua, discreta e híbrida;optimizaciones, análisis de sensibilidad, trabajo con bases de datos y grandes

volúmenes de información, etc.  Adaptabilidad y personalización: gracias a la inclusión de un lenguaje de

simulación que permite desarrollar bloques adicionales cuando sea necesario.

  Bajo costo: en relación con las otras alternativas del mercado, Extend resultauna opción relativamente económica para las empresas que se quieranembarcar en un proyecto de simulación.

El otro programa que estaremos usando, y del cual nos encargaremos más adelante, esIthink.

Page 5: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 5/38

 

Autor: Carlos Andrés Sierra Betancur

Página 5 de 38

3  Introducción

La presente lección tiene como objetivo introducir el uso de los bloques de

construcción más básicos, los cuales se encuentran en la librería de Eventos Discretos.

Extend es un programa que presenta los bloques de construcción organizados engrupos denominados librerías. Las librerías que ocuparán la mayoría de nuestrotiempo durante el curso son:

  Eventos discretos (discrete event): contiene todos los bloques básicos paraconstruir modelos de simulación discreta.

  Genérica (generic): contiene bloques útiles para manejo de información,realización de operaciones matemáticas y para construir modelos de simulacióncontinua.

  Manufactura (mfg): contiene bloques especializados, útiles en simulacionesdiscretas de sistemas de manufactura.

  Negocios (bpr): sus bloques se usan en aplicaciones especializadas de procesosde negocios en modelos de simulación discretos.

  SDI (SDI tools): los bloques que contiene esta librería son de especial interés, yaque permiten crear y manejar bases de datos al interior de los modelos,brindando la posibilidad de tener toda la información y los datos del modelo enun repositorio central de información.

  Flujos (flow): esta librería permite modelar sistemas en los cuales los objetosfluyen a través de los procesos, asemejando un flujo.

  Gráficas (plotter): esta librería permite introducir una gran variedad de gráficasa los modelos de simulación, proporcionando una valiosa herramienta para elanálisis de los resultados arrojados por los modelos.

Cada librería reúne bloques similares en cuanto al área de aplicación de estos.Adicionalmente, cada librería esta compuesta por sublibrerías, las cuales contienenlos bloques propiamente dichos. Una sublibrería es un agrupamiento de bloques quesirven para el mismo propósito: manejar atributos, enrutar objetos, simularactividades, encolamiento de objetos, etc.

Para introducir un bloque en un modelo simplemente tiene que ir a la librería que locontiene, abrir la sublibrería indicada y dar clic sobre el nombre del bloque.

Page 6: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 6/38

 

Autor: Carlos Andrés Sierra Betancur

Página 6 de 38

El video “Tutorial Básico de Extend.swf” le mostrará cómo utilizar los elementosbásicos de Extend por medio de la creación de un modelo sencillo de simulación. Esaconsejable que vea el video antes de continuar estudiando el contenido de estalección y practique un poco con la interfaz del software y las opciones básicas

presentadas allí, con el fin de que se familiarice con el entorno de Extend y sea capazde sacar un mayor provecho a los conceptos que aquí se tratarán más adelante.

Los bloques que estudiaremos durante esta lección son los siguientes:

Librería Sublibrería Bloque

No Aplica Executive

Activity, Delay

Actividades: Activities Activity , Multiple

GeneratorGeneradores: Generators

Program

Queue, FIFOColas: Queues

Queue, LIFO

Exit

Exit(4)

Select DE Output

Eventos discretos:Discrete Events

Enrutamiento: Routing

Combine

Page 7: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 7/38

 

Autor: Carlos Andrés Sierra Betancur

Página 7 de 38

4  Bloques básicos de Extend

4.1  Discrete Event: Executive

count

event

 

Es un bloque indispensable en todos los modelos de simulación discreta, pues es elbloque que controla la simulación. Su función es manejar el reloj de la simulación ycontrolar la ocurrencia de los eventos, es decir, es el que se encarga de llevar la listade eventos, del avance del reloj y de controlar la duración de la simulación, entreotras tareas.

En su cuadro de diálogo, en la pestaña Simulation, se puede definir si la simulaciónterminará después de cierto tiempo transcurrido o después de un número de eventosdado. Esto es importante porque en algunas ocasiones podría ser de interés, porejemplo, simular el sistema para mil llegadas de clientes, mientras que en otrasocasiones podría ser más deseable simular el sistema para 6 meses de funcionamiento:

Page 8: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 8/38

 

Autor: Carlos Andrés Sierra Betancur

Página 8 de 38

El bloque Executive siempre se debe poner en la esquina superior izquierda de todoslos modelos de simulación que lo utilicen, es decir, en todos los modelos de simulacióndiscreta. Por defecto, Extend siempre lo inserta en dicha ubicación.

Los modelos de simulación continua no requieren del manejo de eventos, por lo que elbloque Executive no se debe incluir en un modelo de ese tipo de simulación. Esto esalgo que NUNCA se debe hacer, puesto que siempre que dicho bloque se incluye en unmodelo, éste automáticamente pasa a ser un modelo de simulación discreta.

4.2  Discrete Event: Activities: Activity, Delay

D

T U

Está ocupada la activ idad?

Ocupada --> el valor que sale por T es 1

Desoc upada --> el v alor que sale por T es 0

Porcentaje de utilización de la

activ idad en lo que va c orrido de la

simulación

Conector que permite modificar

dinámicamente (durante la simulaciñon) la

demora de los objetos en la act iv idad

entrada de objetos  salida de objetos

 

El bloque Activity, Delay es un bloque sencillo que permite simular el gasto de tiempode un objeto en el sistema (sólo puede haber en él un objeto a la vez). Ejemplos degasto de tiempo son la atención de un cliente por parte de un cajero, un chefelaborando un plato, el lavado de un carro, una persona que entra a un supermercado,etc. Nótese que en todos estos ejemplos sólo hay un servidor en el sistema, es decir,sólo puede haber un objeto siendo atendido en un bloque Activity, Delay.

En su cuadro de diálogo encontramos varias pestañas. Las que nos interesan en estemomento son Activity y Results. La pestaña referente a los costos (Costs) seráabordada en la lección de manejo de atributos, pues es necesario conocer dichoconcepto para poder utilizar los elementos allí disponibles. Las otras dos pestañas son

Animate y Comments, que están presentes en todos los cuadros de diálogo de losbloques de Extend, y que son explicados con más detalle en el video “Tutorial Básicode Extend.swf”.

Page 9: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 9/38

 

Autor: Carlos Andrés Sierra Betancur

Página 9 de 38

4.2.1  Pest aña Acti vit y 

En la pestaña Activity generalmente nos interesarán dos opciones:

DelayEs donde introducimos el tiempo que “gastarán” los objetos en la actividad. Elconector de entrada de información “D”, que se encuentra en la parte inferior delbloque, permite modificar el tiempo establecido en el cuadro de diálogo durante eltranscurso de la simulación, de forma tal que se podrían simular sistemas en los cualesel tiempo varía de objeto a objeto, de acuerdo a alguna condición. Ejemplos de estopodrían ser el uso de tiempos variables de atención en una sala de urgencias en la cualel médico tarde una cantidad de tiempo proporcional a la gravedad del paciente. Másadelante cuando usemos atributos o generación de datos aleatorios profundizaremosun poco más en el uso de este conector.

Hours*Permite definir las unidades de tiempo que se usarán para la demora en la actividad.Esta opción sólo estará disponible si las unidades de tiempo generales del modelo hansido definidas, es decir, si en el cuadro de diálogo de Simulation Setup se haseleccionado un valor diferente a Generic para las unidades.

También habrá notado que las unidades seleccionadas como unidades globales de lasimulación aparecen dos veces en el cuadro desplegable: con un asterisco al ladoderecho, y sin asterisco. Si se usa el valor con asterisco (“*”), las unidades de tiempousadas en el bloque cambiarán cada que se cambien las unidades globales, es decir,dicha opción permite que las unidades de medición de tiempo de un bloque siempresean las mismas que las seleccionadas para la simulación (unidades globales):cualquier cambio en las unidades globales se verá reflejado en las unidades del bloqueen que se seleccionen las unidades con el “*”.

Esta característica resulta útil cuando se quiere “jugar” con las unidades de tiempodel modelo, y a la vez se quiere tener la certeza de que estas siempre serán tambiénusadas en los bloques de interés (los bloques en donde las unidades seleccionadas seanlas del “*”). Se lo repito???

Page 10: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 10/38

 

Autor: Carlos Andrés Sierra Betancur

Página 10 de 38

4.2.2   Pest aña Result s 

La pestaña de resultados contiene las estadísticas de interés para la actividad:

Arrivals

Es el número de objetos que llegaron a la actividad, aunque no necesariamente es elmismo número de objetos que fueron atendidos, porque al finalizar la simulación bienpodría estar un objeto “gastando” tiempo en la actividad, y por no haber concluido elservicio, no se cuenta como salida (departures).

Departures

Es el número de objetos que pasaron por la actividad.

Total Cost

Es el costo de funcionamiento de la actividad. Por el momento no me detendré a

explicar el manejo de los costos en Extend, pero más adelante tendremos la lecciónde manejo de atributos en el cual trataremos éste tema.

Page 11: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 11/38

 

Autor: Carlos Andrés Sierra Betancur

Página 11 de 38

Utilization

Es la utilización de la actividad, o en otras palabras, el porcentaje del tiempo total dela simulación que la actividad permaneció ocupada. Esto podría representar elporcentaje de utilización de un cajero de un banco, o de un operario en una planta deproducción.

El porcentaje de utilización es la estadística más importante de éste bloque, porquenos permite saber si la actividad tiene capacidad ociosa (bajos porcentajes deutilización), o si por el contrario se constituye como una restricción del sistema(utilización cercana al 100%).

4.3  Discrete Event: Activities: Activity, Multiple

El bloque Activity, Multiple es bastante similar al Activity, Delay, pero a diferencia deéste, el Activity, Multiple permite que varios objetos “gasten” tiempo de formasimultánea en la actividad. De la misma forma, es posible que cada uno de losobjetos permanezca en la actividad una cantidad de tiempo diferente. Ejemplos deluso de éste bloque son: muchas personas realizando sus compras en un supermercadode forma simultánea; un estadio de fútbol al que asisten 25.000 personas, pero

Page 12: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 12/38

 

Autor: Carlos Andrés Sierra Betancur

Página 12 de 38

algunas se quedan más tiempo que otras; un restaurante que atiende clientes quellegan durante todo el día y cuya permanencia es de diferente duración, etc.

Dentro del cuadro de diálogo de este bloque encontraremos las mismas pestañas deinterés que en el bloque Activity, Delay, aunque algunas de sus opciones cambian.Estas pestañas son Activity y Results.

4.3.1  Pest aña Acti vit y 

Aquí encontramos cuatro opciones de interés:

Page 13: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 13/38

 

Autor: Carlos Andrés Sierra Betancur

Página 13 de 38

Delay 

Las unidades de tiempo tienen el mismo uso y el mismo significado que para el bloqueActivity, Delay.

Maximum number in activityEs el máximo número de objetos que pueden estar siendo atendidos (gastando tiempo)en un momento dado en la actividad. Este valor, al igual que la demora, puede sermodificado durante la simulación. el conector asociado a ésta opción es el que tienela letra “C” en color verde en la parte inferior del bloque, y es a través de él que sepueden entrar los nuevos valores para la capacidad. Veremos más de este temacuando trabajemos con atributos e información.

Stop simulation if activity overflows 

Lo que hace esta opción es detener la simulación cuando el número máximo de

elementos que puede haber en la actividad es alcanzado. Es una opción útil paraidentificar situaciones en las cuales la actividad podría llegar a niveles que no sepueden permitir en el sistema real, o que por lo menos son indeseables.

4.3.2   Pest aña Result s 

Las opciones encontradas aquí son muy similares a las encontradas en la pestañaResults del bloque Activity, Delay:

Page 14: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 14/38

 

Autor: Carlos Andrés Sierra Betancur

Página 14 de 38

Arrivals, Departures, Total cost 

Se refieren a los mismos conceptos a los que se referían en el Activity, Delay.

Utilization

La utilización en éste bloque es el porcentaje de tiempo que la actividad permanecióocupada, pero hay que tener en cuenta algo que podría no ser tan obvio, y es que eltiempo total disponible de esta actividad está dado por la multiplicación de lacapacidad de la actividad y la duración de la simulación; mientras que el tiempo quepermaneció ocupada la actividad estará dado por la suma de las demoras de todos losobjetos que pasaron por ella y gastaron tiempo. Así, la utilización estará dada por lasuma de las demoras dividida por el tiempo total disponible. Si no entendió muy bienla diferencia, no se preocupe, más adelante le aclararé esto con un ejemplo.

Avg. length

Es la cantidad promedio de objetos que permanecieron en la actividad durante lasimulación. Es una estadística de gran utilidad para determinar la capacidad mínimaque debe tener una actividad.

Avg. wait

Es la demora promedio de los objetos que pasaron a través de la actividad durante eltranscurso de la simulación. Si el conector “D” no es usado, este valor tendría que serigual a la demora especificada en Delay (en la pestaña Activity). Pero si el conectores usado para modificar dicho valor, esta estadística nos permitirá saber cual fue elpromedio de los valores ingresados a través de él, es decir, la demora promedio de losobjetos que estuvieron en la actividad.

Estas últimas tres estadísticas, en conjunto, permiten conocer la cantidad óptima de“servidores” que deben haber atendiendo la actividad.

Page 15: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 15/38

 

Autor: Carlos Andrés Sierra Betancur

Página 15 de 38

4.4  Discrete Event: Generators: Generator

3V 1 2

salida de objetos

Conector que permite modif icar el v alor

de los objetos que son generados

Conector asociado con el primer parámetro de la distribución de

probabilidad. A trav és de él se puede modif icar, durante el transcurso de la

simulación, el v alor especificado en el cuadro de dialogo. En el caso de una

distribución triangular sería el v alor mínimo. En el caso de una normal sería

la media. Y en el caso de una exponencial sería la media.

Conector asociado con el segundo parámetro de la distribución de

probabilidad (en caso de que exista). A t ravés de él se puede modificar,

durante el transcurso de la simulación, el v alor especificado en el cuadro de

dialogo. En el caso de una distribución triangular sería el valor máxim o. En

el caso de una distribución normal sería la desv iación estándar. Y en el

caso de una exponencial, no aplicaría.

Conector asociado con el tercer parámetro de la distribución de probabilidad

(en caso de que exista). A trav és de él se puede modif icar, durante el

transcurso de la simulación, el v alor especificado en el cuadro de dialogo.

En el caso de una distribución triangular sería el v alor más probable. En el

caso de las distribuciones normales y exponenciales no aplicaría.

Este bloque permite la generación de llegadas de objetos al sistema a través del usode distribuciones de probabilidad que permiten describir la forma en que ingresan losobjetos al sistema, es decir, el tiempo entre llegadas de los objetos.

Nota:

Siempre tenga en cuenta que en el bloque Generator se tienen que usardistribuciones de probabilidad que representen tiempos entre llegadas. Nuncase deben usar distribuciones de probabilidad que representen el número deobjetos que llegan por unidad de tiempo. Aunque esto pueda parecerle como“la misma cosa”, no lo es. Fijo cae en un examen una cascarita de ese estilo.No es por corcharlos, es porque el software funciona así, y por la misma razónhay que tener especial cuidado con éste concepto. De no hacerlo, losresultados obtenidos en la simulación serán errados.

Para generar estas distribuciones de probabilidad se pueden seguir los siguientesmétodos:

  Usar una distribución que teóricamente se amolde al comportamiento delsistema. Para esto se puede recurrir a la opinión de un experto en el tema que

conozca muy bien el comportamiento teórico de los eventos observados, y delos tiempos entre ocurrencias de éstos. Una pequeña guía de los usos máscomunes de cada distribución de probabilidad puede ser encontrada en elcuadro de diálogo del bloque Generator, en la pestaña Items, bajo la etiqueta

Page 16: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 16/38

 

Autor: Carlos Andrés Sierra Betancur

Página 16 de 38

Typical use. Estos usos son tomados de la experiencia de los creadores deExtend en la creación de modelos de simulación y de estudios teóricos en eltema. No obstante, hay que tener especial cuidado con el uso que se dé a estainformación, pues muchas veces puede llevar a la creación de modelos cuyo

comportamiento no es ajustado a la realidad.  Usar datos históricos o información recolectada en el “campo de acción”. Esta

información es usada posteriormente en la obtención de la distribución deprobabilidad que mejor se ajuste y represente el conjunto de datos obtenidos.Para lograr esto se pueden usar programas especiales que realizan la mayorparte del trabajo de forma automática. Uno de estos programas es statfit,incluido en la versión suite de Extend. En éste programa se digita el conjuntode datos recolectados, y el programa ofrece una opción que automáticamenterealiza las pruebas necesarias para obtener la distribución que mejor se ajusta.Lo que el programa entrega es el tipo de distribución que se debe usar y losparámetros relevantes. Un ejemplo de esto sería una distribución weibull consus valores respectivos de los parámetros escala y forma. Estos son los datosque se usan en el bloque Generator para generar los objetos en el modelo.

  En caso de que no se pueda obtener una buena distribución de probabilidad querepresente el conjunto de datos, el camino a seguir es la creación de una tablaempírica, que es la distribución de probabilidad discreta de los datos. Dichatabla se introduciría en el bloque Generator usando la opción Empirical Table (tabla empírica) del cuadro desplegable de distribuciones de probabilidad. Alhacer esto, se muestra una tabla que contiene dos columnas: la primeracolumna es para introducir los valores que se quieren generar, mientras que lasegunda columna es para introducir las probabilidades de ocurrencia de dichos

valores. Con estos datos el bloque generará objetos de forma que el tiempoentre sus “llegadas” al sistema se amolden a los datos consignados en la tablaempírica.

De estos tres métodos, el más recomendado es la obtención de una distribución deprobabilidad a partir de datos reales (observaciones de “campo” o históricos), puesaquí no hay que hacer suposiciones, y con máximo tres parámetros se puede resumirun conjunto extenso de datos. En caso de que no sea posible obtener una distribuciónque se ajuste de forma adecuada a los datos y los represente apropiadamente, sedeberá preferir el uso de la distribución de probabilidad discreta (tabla empírica). Ycomo última instancia se deben usar los datos obtenidos de expertos en el tema o

supuestos basados en datos teóricos.

Page 17: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 17/38

 

Autor: Carlos Andrés Sierra Betancur

Página 17 de 38

Las opciones de configuración del bloque Generator se encuentran en la pestañaÍtems. La pestaña Costs es de gran interés, pero no hablaremos de ella hasta másadelante en el curso.

4.4.1 

Pest aña It ems 

Las opciones principales de esta pestaña aparecen resaltadas en rojo. El resto deopciones son de interés, pero no de uso común, por lo cual se deja el estudio para queusted lo realice por cuenta suya. Las dudas que puedan surgir se responderán a travésdel aula virtual, los foros o el correo electrónico.

Distribution

Este cuadro desplegable permite seleccionar la distribución de probabilidad que seusará para la generación de los objetos en el sistema. Se pueden seleccionar lasdistribuciones de probabilidad más comunes y las más usadas en el ámbito estadístico:beta, binomial, constante, erlang, exponencial, gamma, geométrica, hiperexponencial, uniforme entera, log normal, normal, pearson tipo V, pearson tipo VI,poisson, real uniforme, triangular y weibull. Adicionalmente presenta la opción decrear tablas empíricas para introducir distribuciones de probabilidad discretas.

Page 18: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 18/38

 

Autor: Carlos Andrés Sierra Betancur

Página 18 de 38

Typical use

Presenta los usos más comunes que se le da a la distribución de probabilidadseleccionada.

Time unitsMuestra las unidades de medición de los datos representados por la distribución deprobabilidad seleccionada o por la tabla empírica. Recuerde que si las unidades detiempo globales de la simulación no han sido definidas (en el menú Run/SimulationSetup…), el cuadro de diálogo que permite seleccionar las unidades de tiempo noaparece. Esto aplica para todos los bloques que usen unidades de tiempo para suscuadros de diálogo.

Parámetros

Dependiendo del tipo de distribución de probabilidad seleccionado, los parámetros

que se mostrarán podrán ser uno, dos o tres. Cada uno tendrá su respectivo nombre ypodrá ser ingresado en el cuadro de diálogo respectivo. En el caso de las tablasempíricas aparecerá la tabla de dos columnas descrita anteriormente en esta mismasección. Recuerde que estos parámetros pueden ser modificados de forma dinámicadurante la simulación por medio de los conectores que aparecen en la parte inferiordel bloque etiquetados con “1”, “2” y “3”.

Value of item(V)

Esta opción permite especificar el valor de los objetos que son generados por elbloque. De este tema hablaremos más adelante cuando trabajemos con atributos,pero por el momento tenga en cuenta que es posible que un objeto que se genera enel bloque en realidad puede representar también un lote de objetos que entran alsistema de forma simultánea, caso en el cual el tamaño del lote sería asignado pormedio de la especificación del valor del mismo. Un valor de 1 indica que lleganelementos individuales al sistema, mientras que un valor mayor a 1 representa lallegada de conjunto de objetos al sistema en el mismo instante de tiempo. Unejemplo de la vida real para esto sería la llegada de un pedido de partes de repuesto aun taller.

El valor que se especifica en el cuadro de diálogo se puede modificar durante lasimulación por medio del uso del conector de entrada de datos “V”, que se encuentraen la parte inferior del bloque.

Page 19: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 19/38

 

Autor: Carlos Andrés Sierra Betancur

Página 19 de 38

4.5  Discrete Event: Generators: Program

start

V

 salida de objetos

Conector que permite saber el valorde los objetos que son generados

Conector univ ersal que permite reiniciar

el programa cuando por el ingresa un

objeto o un valor may or de 0.5

(v erdadero)  

Al igual que el bloque Generator, este bloque permite la generación de “llegadas” deobjetos al sistema. La diferencia radica en que aquí se debe conocer con anticipaciónel tiempo de llegada de los objetos. Esto se da, por ejemplo, cuando se sabe conanterioridad la hora a la cual llegará el pedido de un proveedor, o cuando a unconsultorio médico los pacientes siempre llegan con cita, y estas son asignadas conanterioridad.

Su cuadro de diálogo presenta tres pestañas: Program, Animate y Comments. Es denuestro interés estudiar la pestaña Program únicamente, ya que las otras dos soncomunes a todos los bloques y ya han sido explicadas previamente.

4.5.1  Pest aña Program 

Page 20: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 20/38

 

Autor: Carlos Andrés Sierra Betancur

Página 20 de 38

Time units

Permite seleccionar las unidades de medición de los tiempos en que se programa laocurrencia de los eventos. Recuerde que si las unidades de tiempo globales de lasimulación no han sido definidas (en el menú Run/Simulation Setup…), el cuadro dediálogo que permite seleccionar las unidades de tiempo no aparece.

Repeat the program every

Si esta opción está habilitada, el programa se repetirá cada determinado número deunidades de tiempo (equivalentes al valor introducido en el cuadro de texto). Lasunidades de tiempo usadas se pueden seleccionar del cuadro de diálogo que apareceal lado. Recuerde que si las unidades de tiempo globales no han sido definidas, éstaopción no estará disponible.

En la gráfica podemos ver que el programa mostrado se repetirá cada 24 horas.

ProgramaEsta opción corresponde al programa propiamente dicho, el cual se puede ingresarusando la tabla de cuatro columnas que aparece en la parte central del cuadro dediálogo. Allí se debe ingresar el tiempo de ocurrencia de cada uno de los eventos(Output Time), el valor (Value) que tendrá el objeto generado (recuerda que en elbloque Generator se podía asignar un valor a los objetos? Pues aquí el concepto es elmismo), la prioridad del objeto (lo cual es opcional) y algún atributo que se quieraasignar. Estos últimos dos elementos serán analizados más adelante (parece que todolo vamos a ver más adelante!!! pero no se preocupe, que así será).

Por ejemplo, en la gráfica podemos ver que hay un objeto que llegará al sistema a las8 de la mañana, el segundo llegará a las 10 de la mañana, el tercer objeto a las 4 dela tarde y el cuarto objeto será generado a las 6 de la tarde. Tenga en cuenta queaquí la unidad de tiempo seleccionada son las horas, así que las 16 corresponderán alas 4 de la tarde en realidad. Además, note que como el valor de los objetosgenerados es de 1, la llegada al sistema será de objetos individuales, y no de lotes.Este programa se repetirá cada 24 horas, es decir, todos los días.

También podría darse el caso en que se quiera simular un sistema que no trabaje las24 horas del día, sino que más bien lo haga de 8 de la mañana a 6 de la tarde. En estecaso podría ser deseable hacer que los días “laborales” duren 10 horas en lugar de 24.Con esto surge la necesidad de modificar el programa que vimos anteriormente para

que se amolde a las nuevas condiciones:

Page 21: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 21/38

 

Autor: Carlos Andrés Sierra Betancur

Página 21 de 38

De esta forma tenemos dos programas equivalentes, pero uno que se ejecuta en díasde 24 horas, mientras que el otro se ejecuta en días laborales de 10 horas deduración. Es así como las 8 de la mañana del programa original pasarían a ser las cerohoras del día laboral. Las 10 de la mañana sería la segunda hora, las 4 de la tardesería la hora 8 y las 6 de la tarde sería la hora 10. Y el programa ahora se repetirácada día laboral, es decir, cada 10 horas.

Este podría ser el caso de una empresa que recibe sus pedidos de materias primas de

cuatro proveedores diferentes, los cuales envían sus productos a las horas mostradasen el programa.

Para culminar la presentación del bloque Program, es de especial interés notar lapresencia del conector universal “start” que se encuentra en la parte inferior delbloque. Este conector permite reiniciar el programa en cualquier momento de lasimulación, haciendo que todos los eventos programados se vuelvan a ejecutar en elmismo orden cronológico, pero tomando como “hora cero” el momento en que seactiva dicho conector.

Activar un conector universal se refiere a dos posibles eventos: el primero es que por

dicho conector ingrese un valor verdadero (en Extend se consideran verdaderos todoslos valores mayores de 0.5). El segundo es que por el conector ingrese un objeto.Cualquiera de estas dos acciones se considera una activación del conector y hacen queel programa se inicie de nuevo, de forma inmediata.

Page 22: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 22/38

 

Autor: Carlos Andrés Sierra Betancur

Página 22 de 38

4.6  Discrete Event: Queues: Queue, FIFO

salida de objetos

Conector que muestra si la f ila está llena o no.

F = 1 --> fila llena.

F = 0 --> fila no llena.

F

L W

entrada de objetos

Muestra la longitud de la fila en

cualquier instante de la simulación

Muestra la demora del próximo

objeto que v a a salir de la fila

Las filas en sí son bloques bastante sencillos, pero a la vez, muy utilizados en todas lassimulaciones. Es difícil pensar en algún sistema de la vida real que no incorpore algúntipo de fila: colas, buffers, amortiguadores, muelles, acumuladores, etc.

La cola FIFO es una cola que permite el ingreso de objetos para luego retenerlosdurante un determinado periodo de tiempo y cuando un servidor queda desocupado,para atender a los objetos contenidos en ella, libera al primer objeto que llegó a lafila, de los que actualmente se encuentran en ella.

El cuadro de diálogo presenta dos pestañas de interés que son bastante sencillas. Laprimera (Queue) permite configurar los parámetros de la fila propiamente dichos,mientras que la segunda permite visualizar las estadísticas de interés que se puedenobtener.

4.6.1  Pest aña Queue 

Las opciones que encontramos aquí son:

Maximum queue length

Esta opción es la que contiene el número máximo de objetos que puede haber en unmomento dado en la fila durante la simulación, o lo que es equivalente, la capacidadmáxima de la fila.

Cuando no se sabe la capacidad de objetos que pueden existir en la fila, sueleasignarse un valor muy grande a esta opción. Con esto se busca realizar un análisis delos resultados de la fila que permita determinar la cantidad máxima de objetos quepodrá albergar la fila en un instante dado. En otras ocasiones la capacidad de la fila

simplemente no representa una restricción para el sistema analizado, lo cual es otrarazón para asignar valores grandes a esta propiedad.

Page 23: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 23/38

 

Autor: Carlos Andrés Sierra Betancur

Página 23 de 38

Stop simulation when the queue is full

Si esta opción se encuentra habilitada, la simulación se detendrá en caso de que la filallegue a alcanzar el límite de su capacidad. Esto se hace en sistemas en los cualesesta situación no es deseable, y para los cuales se requiere tener un control sobre lasimulación que indique cuando dicha condición se cumpla.

Cuando la opción no se encuentra activada y la fila se llena, los objetos que intenteningresar a ésta no podrán lograrlo, con lo cual se producirá un bloqueo en el flujo deobjetos a través de los bloques que se encuentren antes de la fila. Esta situación esindeseable, y cada vez que ocurra se deberán tomar medidas para prevenir surepetición.

Calculate waiting costs

Si esta opción se encuentra activada, la fila acumulará costos de oportunidad para losobjetos que permanezcan en ella por algún tiempo. Esta opción se verá con másdetalle cuando se trabaje el tema de atributos (si, otra vez me salí por la tangentecon el mismo cuentecito… lo único que puedo decir en mi defensa es “téngame fé”).

Page 24: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 24/38

 

Autor: Carlos Andrés Sierra Betancur

Página 24 de 38

4.6.2   Pest aña Result s 

En esta pestaña encontramos todas las estadísticas de importancia para el análisis deldesempeño de la fila.

Ave. Length

Es la longitud promedio que tuvo la fila durante toda la simulación. Su valor es unbuen indicador de la capacidad mínima (si es que hay restricciones al respecto) quedebería tener la fila en el sistema real.

Ave. wait

Es una de las medidas de desempeño más importantes que se pueden obtener de unafila, porque refleja la demora promedio que tuvieron los objetos en ella. Este valor esel tiempo que se espera que se demore un objeto en el sistema real “haciendo fila”.

Max. length

Es la longitud máxima que alcanzó la fila durante la simulación. Es un valor muyimportante para saber cual debería ser la capacidad de la fila en el sistema real si sebusca que esta nunca se llene.

Si el valor que aparece aquí iguala a la capacidad de la fila, definida en la pestañaQueue, se deben tomar medidas correctivas que impidan que dicha situación sepresente nuevamente.

Total cost

Despliega el costo de oportunidad acumulado para todos los objetos que estuvieron enla fila. Sí, adivinó… más de este tema en unidades posteriores.

Length

Muestra la longitud que tenía la fila al culminar la simulación. Valores muy altos deeste indicador representan sistemas en los cuales se pueden estar represando objetosgradualmente, dando un claro indicio de la falta de capacidad de atención de losservidores o de las actividades que siguen a la fila. Esto es un signo claro de un cuellode botella en el sistema.

Por otro lado, valores cercanos a cero suelen representar sistemas fluidos, en los

cuales los objetos se mueven libremente a través de los procesos y las actividades, sinque se generen cuellos de botella.

Page 25: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 25/38

 

Autor: Carlos Andrés Sierra Betancur

Página 25 de 38

Arrivals

Es una medida de la cantidad de objetos que entraron a la fila

Departures

Es una medida de la cantidad de objetos que salieron de la fila. Resulta obvio que estevalor siempre será igual o inferior al valor de llegadas (arrivals).

Utilization

Permite conocer el porcentaje de utilización de la capacidad total de la fila durante lasimulación. Valores muy cercanos a cero indican una fila que escasamente fue usadadurante la simulación, debido a su gran capacidad o a los pocos objetos que llegaron aella. Valores muy cercanos a uno indican una fila congestionada, que posiblementepudo llegar a estar totalmente llena en ocasiones, y que puede estar antecediendoprocesos o actividades que restringen el funcionamiento del sistema (restricciones de

capacidad o cuellos de botella).

Page 26: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 26/38

 

Autor: Carlos Andrés Sierra Betancur

Página 26 de 38

4.7  Discrete Event: Queues: Queue, LIFO

La cola LIFO es una cola que permite el ingreso de objetos para luego liberarloscuando un servidor queda desocupado. Los objetos que llegan de últimos a la fila sonlos primeros en salir de la fila.

Su funcionamiento, sus cuadros de diálogo y las opciones y pestañas de importanciason exactamente iguales a las vistas para la cola FIFO.

4.8  Discrete Event: Routing: Exit

entrada de objetos

Conector que permite conocerla

cantidad de objetos que han salido del

sistema a trav és de este bloque.

Exit#

332  El bloque Exit es un bloque muy sencillo que sirve para que los objetos presentes en elsistema puedan abandonarlo. Debido a esto, sólo tiene un conector de entrada deobjetos y otro de salida de información, por medio del cual se puede consultar elnúmero de objetos que han salido a través del bloque.

En su cuadro de diálogo encontraremos un elemento con el nombre Exited, que no esmás que la cuenta de objetos que han salido del sistema por esta salida. Este valor esel mismo que entrega el conector “#”.

Page 27: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 27/38

 

Autor: Carlos Andrés Sierra Betancur

Página 27 de 38

4.9  Discrete Event: Routing: Exit (4)

entrada 1 de objetos

Conector que permite conocer la

cantidad total de objetos que han salido

del sistema a trav és de este bloque.

#

Exit(4)entrada 2 de objetos

entrada 3 de objetos

entrada 4 de objetos

Conector que permite conocerla cantidad

de objetos que han salido del sistema a

trav és de este bloque, por las salidas 1,

2, 3 y 4.

 

Este bloque funciona de la misma forma que el bloque Exit, y sirve para lo mismo:para permitir la salida de objetos del sistema. No obstante, en algunas ocasiones se

puede requerir que haya dos o más salidas diferenciadas para los objetos, por lo cualse usa este bloque en lugar de tener que introducir varios bloques Exit sencillos.

Hay cuatro entradas de objetos al bloque, cada una de las cuales permite la salida deobjetos del sistema. Y de cada una de ellas se lleva el registro discriminado delnúmero de salidas que se han producido a través de él. Además, el cuadro de diálogodel bloque también despliega el número total de objetos que han salido del sistemausando cualquiera de sus conectores. Esta misma información es la que se puedeobtener de los conectores de información de la derecha del bloque (cantidad deobjetos que han salido por cada conector) y por el conector de la parte superior delbloque marcado con el símbolo “#” (el cual muestra la suma total de salidas delbloque).

Page 28: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 28/38

 

Autor: Carlos Andrés Sierra Betancur

Página 28 de 38

4.10 Discrete Event: Routing: Select DE Output

b?

a

select

salen objetos ruta 1

salen objetos ruta 2

llegan objetos

Conector universal que acepta v alores

u objetos usados en la toma de las

decisiones de enrutamiento  

El bloque Select DE Output es el bloque más complejo que trataremos aquí. Elconcepto es bastante sencillo: toma objetos provenientes de una fuente (de una ruta)

y los envía por una de dos rutas salientes del bloque, dependiendo de una decisión quese toma al interior del bloque. La complejidad no radica en su funcionamiento, sinomás bien es el número de opciones que hay disponibles para tomar la decisión yenrutar los objetos.

Este es otro de los bloques que cuenta con un conector universal (“select”) paramodificar su funcionamiento. En este caso, el conector “select” será el encargado deproveer los parámetros necesarios para la toma de las decisiones que se basan en suuso. A medida que veamos las opciones del cuadro de diálogo iremos viendo sufuncionamiento.

4.10.1  Pest aña Select Output 

En esta pestaña encontramos todas las opciones necesarias para configurar elenrutamiento de los objetos. El bloque puede tomar las decisiones de dos formas

Page 29: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 29/38

 

Autor: Carlos Andrés Sierra Betancur

Página 29 de 38

básicas: por medio del uso del conector “select” (de los valores u objetos que ingresanpor él), o sin usar dicho conector.

Do not use select connector

Cuando esta opción se activa, el bloque funciona sin tener en cuenta elcomportamiento del conector select. Aquí, las opciones que se tienen para enrutarlos objetos son las siguientes:

  Toggle the outputs: esta opción hace que de cada n objetos, uno siga por laruta inferior, mientras que el resto se irán por la ruta superior. En otraspalabras, esta opción intercala la selección de la salida de acuerdo al valordado. En la imagen podemos ver cómo el valor introducido es 5, así que decada 5 objetos que ingresen al bloque, uno será enviado por la salida de abajo,mientras que el resto se irán por la salida de arriba.

Page 30: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 30/38

 

Autor: Carlos Andrés Sierra Betancur

Página 30 de 38

  Route items by probability: aquí los objetos se enviarán por la salida superiorde acuerdo a un valor de probabilidad (p) dado. El valor de probabilidad es elparámetro que se configura para esta opción. Entonces el p% de los objetos seirán por la ruta superior, mientras que el (1-p)% restante seleccionará la rutainferior. En la imagen se puede observar que el 20% de los objetos terminaránseleccionando la ruta superior, mientras que el 80% restante se irá por la rutainferior.

Page 31: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 31/38

 

Autor: Carlos Andrés Sierra Betancur

Página 31 de 38

Esto es cuando la opción de NO usar el conector select está activada. Pero si laopción se encuentra desactivada, el bloque tendrá en cuenta los objetos o valores queingresen por el conector, con lo cual existirán tres posibles formas de hacer funcionarel bloque:

Page 32: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 32/38

 

Autor: Carlos Andrés Sierra Betancur

Página 32 de 38

  Toggles the outputs when activated: esta opción es similar a la opción “togglethe outputs” presente cuando la opción de no usar el conector está activada,pero la diferencia radica en que aquí la salida se cambia cuando por el conectorselect entra un objeto o un valor positivo (se acuerda de cuales son los valores

positivos en Extend?). Más adelante veremos a qué nos referimos con entradade valores, pero por el momento tenga en cuenta que si por el conector entraun valor mayor que 0.5, la salida seleccionada cambiará instantáneamente. Lomismo sucedería si llegara un objeto.

Por ejemplo, suponga que inicialmente los objetos están saliendo del bloqueSelect DE Output por la salida superior. En ese momento entra un valor de 3por el conector select. La salida inferior pasa en ese instante a ser la salidaactiva, y todos los objetos que sigan pasando por el bloque seleccionarán dichasalida. Si vuelve a entrar un valor positivo por el conector, la salida activacambiará nuevamente a la superior, y todos los objetos la seguiránseleccionando.

  Chooses an output based on “select” value: esta es una de las opciones másusadas en el enrutamiento de objetos. Su funcionamiento se basa en lacombinación de los valores que entran por el conector y el valor que se entreen el cuadro de texto. Éste último permite especificar el valor que tiene queentrar por el conector select para que los objetos sean enviados por la rutasuperior. En otras palabras, si se escribe 1 en el cuadro de texto top output is chosen by “ select ”  y por el conector entra un valor de 1, los objetos se iránpor la ruta superior.

En la imagen vemos que el cuadro de texto tiene el valor 3, así que siempre que

por el conector select ingrese dicho valor, los elementos se enviarán por lasalida superior. El programa de forma automática asigna el valor 4 a los objetosque tomarán la ruta inferior. Así, si el conector select recibe un valor de 4, elobjeto que pase a continuación se irá por la ruta inferior.

Si el valor que entra por el conector es diferente de tres o cuatro seráconsiderado como un valor inválido. Hay tres cursos de acción posibles para losvalores inválidos: el primero es que los objetos sean enrutados a la salidasuperior; el segundo es que estos objetos sean enviados por la ruta inferior; porúltimo, los objetos pueden ser rechazados, no permitiendo su ingreso al bloque.

Generalmente la forma de hacer que el bloque trabaje es asignando la salida

superior al valor que se espera de forma fija, luego el bloque asigna el valormás uno a la salida de abajo, y como opción de configuración se selecciona quelos objetos sigan por la ruta de abajo cuando ingrese un valor inválido por el

Page 33: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 33/38

 

Autor: Carlos Andrés Sierra Betancur

Página 33 de 38

conector select. De esta forma sólo los objetos con el valor “deseado” seguiránpor la ruta superior. Ahora bien, no es la única forma de usarlo… simplemente,la más común.

Como lo mencioné anteriormente, esta es posiblemente la opción más usadapara enrutar los objetos a través de este bloque. Más adelante (sí, volvió aadivinar!!!) cuando trabajemos con valores y atributos podremos dar mayorclaridad en todos estos conceptos. Guarde estas notas en un lugar seguro hastaque este momento tan esperado llegue. Hasta entonces, dejaremos la discusiónde esta opción en “remojo”.

  Select connector specifies probability: esta opción raramente se usa, así quese la dejo como consulta. Seguramente estará incluida dentro del taller de launidad temática. (Y váyase acostumbrando, porque a medida que avancemos ledejaré más tareas y consultas para que investigue por cuenta suya… ahí esdonde entra a jugar la parte de la educación virtual).

  Decision is made before item enters select block: Esta opción, como sunombre lo indica, permite especificar si el objeto debe entrar al bloque y luegose debe tomar la decisión, o si por el contrario, primero se toma la decisión y

luego el objeto pasa a través del bloque para ser enrutado. Es muy usadacuando se quiere consultar el valor que entra por el conector después de que elobjeto ha ingresado. También permite que el objeto “espere” en el bloquemientras la ruta seleccionada es liberada para que el objeto pueda transitar:

Page 34: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 34/38

 

Autor: Carlos Andrés Sierra Betancur

Página 34 de 38

por ejemplo cuando el servidor queda libre, o la máquina termina de procesarla pieza actual.

4.10.2   Pest aña Result s 

Esta pestaña nos muestra los medidores de desempeño más importantes del bloqueSelect DE Output.

Top output

Muestra la cantidad de objetos que fueron enrutados por la salida superior.

Bottom output

Muestra la cantidad de objetos que fueron enrutados por la salida inferior.

Total

Muestra el número total de objetos que pasaron a través del bloque

Blocked

Permite conocer la cantidad de objetos que tuvieron que esperar en el bloque porquela ruta de salida no se encuentra libre para su tránsito. Este valor sólo podrá sermayor que cero cuando la opción Decision is made before item enters select block

Page 35: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 35/38

 

Autor: Carlos Andrés Sierra Betancur

Página 35 de 38

esté habilitada, pues es la única forma en que un objeto puede entrar al bloque aesperar a que su ruta sea liberada.

NotaUna fila puede actuar como una especie de bloque Select DE Outputrudimentario: al conector de salida de una fila se pueden conectar varias salidas(varias líneas de conexión que vayan hacia otros bloques) y la fila enviará losobjetos que contiene a la primera salida que los solicite, es decir, la primeraruta saliente que desocupe algún proceso o que tenga “servidores” disponiblespara “procesar” los objetos que hay en la fila.

F

L W

 

D

T U

Servidor 1

D

T U

Servidor 2

 

D

T U

Servidor 3

llegan objetossiguen objetos ruta 1

siguen objetos ruta 2

siguen objetos ruta 3

 

4.11 Discrete Event: Routing: Combine

entrada 1 de objetos

salida unifi cada de objetos

a

bentrada 2 de objetos  

La función de este bloque es la de tomar los objetos provenientes de dos fuentesdiferentes y unirlos en una sola ruta saliente. Un ejemplo de utilización es cuando lospacientes están siendo atendidos por uno de dos doctores disponibles y, al terminar suconsulta, pasan a donde una sola secretaria que se encarga de cobrar el valor de laconsulta.

Dentro del cuadro de diálogo del bloque no encontramos nada, pues éste es

simplemente un bloque de enrutamiento que permite unir flujos.

Page 36: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 36/38

 

Autor: Carlos Andrés Sierra Betancur

Página 36 de 38

5  Ejemplo

Como le había prometido antes, en este ejemplo quiero mostrarle cómo cambia elvalor de utilización de una actividad múltiple (Activity, Multiple) cuando se modificasu valor de capacidad.

Considere un sistema con dos actividades: la primera con capacidad para 100 objetos yla segunda con capacidad para 5 objetos. Las llegadas son exponenciales con media 1unidad de tiempo, y los tiempos de servicio son fijos de 1 unidad de tiempo porobjeto, para las dos actividades. Lo único que queremos ver es la utilización de lasactividades. Note que el ejercicio ha sido diseñado para que cada actividad reciba el

mismo número de objetos durante la simulación, para lo cual el bloque Select DEOutput usa la opción toggle the outputs. Además, la capacidad es más que suficiente,incluso cuando la actividad sólo tiene capacidad para cinco objetos, lo que garantizaque ambas puedan terminar de procesar todos los objetos que lleguen a ellas durantela simulación, o en otras palabras, las filas que anteceden a las actividades nuncatendrán objetos esperando en ellas.

count

 

event

3V 1 2

LLegan clientes

 

CD L W

F U

Capacidad = 5

 

CD L W

F U

Capacidad = 100

 

b?

a

select

 

2

1

toggle output

F

L W

F

L W

F

L W

 

a

b

Exit#

984

salidas

 

Después de correr la simulación para 1000 unidades de tiempo se obtienen los

siguientes resultados para las actividades:  Si la capacidad la establecemos en 100:

Page 37: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 37/38

 

Autor: Carlos Andrés Sierra Betancur

Página 37 de 38

  Si la capacidad fuera 5

El número de objetos que entraron y salieron en cada actividad fue de 492. Para laprimera actividad se tenía una capacidad de:

100 objetos x 1000 unidades de tiempo = 100000 unidades de tiempo

Como ambas actividades estuvieron en trabajando durante:

Page 38: Bloques Básicos Extend 1

5/9/2018 Bloques Básicos Extend 1 - slidepdf.com

http://slidepdf.com/reader/full/bloques-basicos-extend-1 38/38

 

Autor: Carlos Andrés Sierra Betancur

Página 38 de 38

492 objetos x 1 unidad de tiempo = 492 unidades de tiempo

La utilización de la primera actividad fue de:

492 / 100000 = 0.00492

Pero para la segunda actividad se tenía una capacidad de:

5 objetos x 1000 unidades de tiempo = 5000 unidades de tiempo

Así que su utilización fue de:

492 / 5000 = 0.0948

Que es veinte veces la utilización que se obtuvo para la primera actividad.

Resulta claro entonces que la utilización de una actividad se ve afectada por sucapacidad, tanto como la duración y frecuencia de los servicios que esta realice.