Simulación Discreta
Simulación Discreta
SIMULACIÓN DISCRETA
PRIMERA EDICIÓN
Copyright © 2010
PREFACIO .............................................................................................................. 5
1 INTRODUCCIÓN ............................................................................................... 7
1.1 El paradigma de ProModel- Conceptos básicos ..................................... 7
1.2 Construyendo los elementos básicos de un modelo de simulación .... 8
1.2.1 Para construir estaciones: ...................................................................... 8
1.2.2 Para construir entidades: ........................................................................ 9
1.2.3 Para crear el Procesamiento: ................................................................. 9
1.2.4 Para crear llegadas: ................................................................................ 9
1.3 Ejecutando la simulación ......................................................................... 10
1.4 Enunciado resumen de las prácticas de simulación ............................. 10
2 PRÁCTICAS .................................................................................................... 13
2.1 PRÁCTICA # 1 ....................................................................................... 13
2.2 PRÁCTICA # 2 ....................................................................................... 22
2.3 PRÁCTICA # 3 ....................................................................................... 29
2.5 PRÁCTICA # 5 ....................................................................................... 54
2.6 PRÁCTICA # 6 ....................................................................................... 63
2.7 PRÁCTICA # 7 ....................................................................................... 72
2.8 PRÁCTICA # 8 ....................................................................................... 78
2.9 PRÁCTICAS # 9 y # 10 ................................................................... 90
2.9.1 PRIMERA ETAPA: ............................................................................... 90
2.9.2 SEGUNDA ETAPA: ............................................................................. 93
2.9.3 TERCERA ETAPA: .............................................................................. 98
2.9.4 CUARTA ETAPA: .............................................................................. 100
2.9.5 QUINTA ETAPA:................................................................................ 106
2.11 PRÁCTICA # 11 ................................................................................ 107
2.12 PRÁCTICA # 12 ................................................................................ 111
2.13 PRÁCTICA # 13 ................................................................................ 114
2.14 PRÁCTICA # 14 ................................................................................ 117
2.15 PRÁCTICA # 15 ................................................................................ 135
2.16 PRÁCTICA # 16 ................................................................................ 149
PREFACIO
_______________________________________________________________________________________
LOS AUTORES
Introducción- Conceptos básicos del paradigma de modelado de PROMODEL
1 INTRODUCCIÓN
Práctica 6.
En ésta práctica se introduce el concepto de atributos que caracterizan o contie-
nen información sobre una entidad o estación. A diferencia de los modelos pre-
sentados en las prácticas anteriores con llegadas de entidades al sistema de for-
ma determinística en ésta práctica se introduce la forma de modelar las llegadas
de acuerdo con una distribución probabilística experimental dada por el usuario y
se amplían las estructuras de comandos para presentar la lógica de proceso.
Resumen: Atributos, variables, creación de una distribución probabilística dada
por el usuario, lógica de proceso (IF/ ELSE / BEGIN / END / ROUTE ).
Práctica 7.
Esta práctica introduce el uso de distribuciones probabilísticas teóricas y la forma
de hacerle seguimiento a los tiempos de ciclo de cada una de las entidades que
se están procesando en un sistema mediante el uso de las funciones CLOCK() y
LOG.
Resumen: Función de probabilidad normal, Funciones CLOCK() y LOG, atributos.
Práctica 8.
Esta práctica introduce la forma de simular tiempos en los cuales la operación de
una máquina (estación) debe ser detenida, por ejemplo, para el mantenimiento
preventivo de ella. También es presentada la forma de modelar los turnos de tra-
bajo de una empresa y el despliegue de textos y expresiones numéricas en puntos
específicos durante la ejecución de un modelo (comando DISPLAY)
Resumen: Tiempos de parada (Down Times), definición de turnos (Shifts), asig-
nación de turnos, comando DISPLAY.
Práctica 9 y Práctica 10
Esta práctica modela las oficinas de una institución de educación superior informal
en la época de matrículas. La práctica permite utilizar conjuntamente todos los
conceptos de modelado introducidos en las prácticas anteriores, además de intro-
ducir conceptos nuevos como: importar gráficos (importar los planos del edificio
elaborados con Autocad), tiempos de parada por reloj (downtimes/Clock); ciclos
de llegada (arrival cycle) y los comandos BACKUP y USE.
Introducción- Conceptos básicos del paradigma de modelado de PROMODEL
Práctica 11
Esta práctica introduce aspectos estadísticos relacionados con el experimento de
simulación. En particular se ilustra la forma de estimar la cantidad de tiempo ne-
cesaria para el calentamiento de un sistema (tiempo para llegar al estado estable).
Se utiliza adicionalmente al ProModel el software SimRunner, que implementa la
técnica de promedios móviles y los gráficos de Welch.
Práctica 12
Esta práctica continúa tratando con otros importantes aspectos estadísticos rela-
cionados con el experimento de simulación. En particular compara dos técnicas
para estimar un parámetro: a) correr varias replicaciones del modelo vs. b) usar
intervalos de loteo. Además discute los problemas de auto correlación relaciona-
dos con el tamaño del intervalo de lote (batch interval length). Se hace uso de Ex-
cel y del software Stat::Fit de ProModel™ para probar la normalidad e indepen-
dencia de las observaciones obtenidas de cada intervalo de loteo.
Práctica 13
En esta práctica se pretende familiarizar al estudiante con el uso del software
“Stat::Fit” para facilitar el análisis de los datos de entrada, ajuste de un conjunto
de datos a una distribución de probabilidad estándar conocida y en general proce-
samiento de los datos de salidas de los modelos de simulación.
Práctica 14
Esta práctica corresponde a un Modelo de manufactura tipo “push”. Permite que el
estudiante se sintonice en la práctica con los conceptos de inventarios críticos,
cuellos de botella y “throughput”.
Práctica 15
Esta práctica modela un sistema de manufactura tipo “push” que servirá de refe-
rencia para obtener sus características de operación. Esas mismas características
de operación (con fines de comparación) serán luego obtenidas en un sistema de
manufactura similar pero con manejo de inventario tipo “pull”, el cual será introdu-
cido en la siguiente práctica #16.
Práctica 16
Este es básicamente el mismo sistema anterior pero manejando el inventario con
un modelo tipo “pull”. Lo anterior permite comparar las características de opera-
ción entre un sistema “push” (como el de la práctica #15) y un sistema “pull”.
Laboratorio de Simulación Nº 1
2 PRÁCTICAS
MODULO 1: Prácticas #1, #2 y #3.
Las prácticas #1, #2 y #3 forman parte de un mismo módulo que introduce los elementos
básicos del paradigma de modelaje con Promodel: Estaciones, Entidades, Llegadas y Pro-
cesamiento. Además, en ellas se ilustra la forma de particionar entidades para luego com-
binarlas. Se introducen también ayudas gráficas y variables para monitorear el estado del
sistema. Los conceptos de Inspección y enrutamiento probabilístico. Creación de estacio-
nes (multiestaciones) lo que permite estudiar el efecto que sobre las características de un
sistema de manufactura tiene la creación de estaciones paralelas (clones).
2.1 PRÁCTICA # 1
Considere la siguiente situación para una telera de madera en una pequeña fábri-
ca de muebles de madera:
En este modelo, unas teleras de madera en bruto (materia prima) entran al siste-
ma en la estación Entrada y luego van a la cortadora, donde se recortan en las
dimensiones apropiadas saliendo como piezas, de ahí las piezas pasan al taladro,
donde se realizan algunas perforaciones particulares, después al torno, donde se
realiza una operación de torneado, y luego a la pulidora, donde se realiza una
operación de pulimento a la pieza. De la pulidora va a la estación Salida, lugar
desde el cual abandona al sistema ya como producto_terminado.
Laboratorio de Simulación Nº 1
Esta caja de diálogo permite darle un nombre al modelo a ser creado y especificar
información necesaria para el modelo como son las unidades de tiempo y distan-
cia. Debe especificarse también la librería de gráficos a ser utilizada para crear las
estaciones y las entidades. En este caso utilice la biblioteca gráfica [Link]
(buscar por Graphic Library File, por ejemplo: c: /ProMod4/glib/[Link]
Coloque un título apropiado para el modelo por ejemplo Modelo de Manu-
factura simple.
MÓDULO DE ESTACIONES:
Entrar por el menú Build-Locations (ver seccion 1.1 El paradigma de ProModel
Para construir estaciones). Cree los siguientes registros de estaciones:
MÓDULO DE ENTIDADES:
ENTIDADES
Telera
pieza
producto_terminado
Tiempos de Proceso
ProModel utiliza el comando WAIT para los tiempos de procesamiento. Esto hace
que la entidad tenga que “esperar” en la estación mientras es procesada. Tam-
bién, que ocupe la capacidad disponible en la estación durante una cantidad es-
pecificada de tiempo.
En las primeras prácticas veremos casos simples en los cuales los tiempos
de procesamiento son constantes. En las últimas prácticas se introducirá la alea-
toriedad en el tiempo de procesamiento en las estaciones (o sea, se tendrán en
cuenta las distribuciones estadísticas para los tiempos de procesamiento).
Laboratorio de Simulación Nº 1
LÓGICA
ENTIDAD ESTACIÓN OPERA- SALIDA DESTINO DE
CIÓN MOVI-
MIENTO
Telera Entrada 0 Telera Cortadora .1
Telera Cortadora 5 pieza Taladro .1
pieza Taladro 4 pieza Torno .1
pieza Torno 3 pieza Pulidora .1
pieza Pulidora 8 pieza Salida .1
pieza Salida 0 Produc- EXIT 0
to_terminad
o
Nota: Solo se está mostrando el primer registro de cada una de las ventanas. Si
se dá click en el segundo registro de la ventana de la izquierda (telera en la corta-
dora), aparecerá en el primer registro de la ventana de la derecha el destino de
esa telera después de haber sido procesada en la estación Cortadora.
MÓDULO DE LLEGADAS
Botón para la Luz de Status (es el botón con el círculo): Cambia el color de acuer-
do al status (o estado) de la estación (los status de una estación son: ocupada,
ociosa, bloqueada).
Botón para el Lugar de la Entidad (es el botón que tiene una X dentro del círculo):
Define el lugar físico en el que aparecerá la entidad en la estación en la corrida de
simulación.
Laboratorio de Simulación Nº 1
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
1
Este contador en la Salida siempre estará en cero durante la simulación ya que la estación Salida siempre
estará vacía, dado que su tiempo de procesamiento es cero (WAIT O).
Laboratorio de Simulación Nº 1
ANÁLISIS DE LA SIMULACIÓN
Una vez tenga el modelo corriendo realice las siguientes actividades:
1. Correr una simulación por 10 horas.
2. Revisar las estadísticas de salida.
3. Responder a las siguientes preguntas:
¿Que cambia cuando se corre la simulación no 10 sino 20 hr, 30 hrs ?
¿Qué sucede cuando en el modulo de llegadas se cambia el 1 de “Qty
each” por 5,?. Explique el significado de éste cambio.
¿Que sucede si la capacidad de la entrada pasa de 1 a 5 y la cantidad de
entrada (Qty Each) se deja en 5 y se corre nuevamente 10 hr la simulación?
4. Graficar el comportamiento durante el tiempo de las estaciones (usar
la opción de gráficos “History Plot”-
5. Familiarizarse con la opción “View Text” del menú “File”.
--------------------------------------------------------------------------------
General Report
Output from C:\Jose Soto\CursoSimulacion_pregrado_Enero_2007\[Práctica #1]
Date: Jan/25/2007 Time: [Link] AM
--------------------------------------------------------------------------------
Scenario : Normal Run
Replication : 1 of 1
Simulation Time : 10 hr
--------------------------------------------------------------------------------
LOCATIONS
Average
Location Scheduled Total Minutes Average Maximum Current
Name Hours Capacity Entries Per Entry Contents Contents Contents % Util
--------- --------- -------- ------- --------- -------- -------- -------- ------
Entrada 10 1 41 0.0 0 1 0 0.0
Cortadora 10 1 40 5.00 0.33 1 0 33.33
Taladro 10 1 40 4.00 0.26 1 0 26.67
Torno 10 1 40 3.00 0.2 1 0 20.00
Pulidora 10 1 40 7.86 0.52 1 1 52.43
Salida 10 1 39 0.0 0 1 0 0.0
FAILED ARRIVALS
ENTITY ACTIVITY
% %
Entity In Move Wait For % %
Name Logic Res, etc. In Operation Blocked
------------------ ------- --------- ------------ -------
Telera - - - -
Pieza - - - -
Producto terminado 2.44 0.0 97.56 0.0
Laboratorio de Simulación Nº 2
2.2 PRÁCTICA # 2
Corte y Destarimado
Se define así a cualquier tipo de operación en donde una parte se convierte en
dos o más partes. Esto puede ser por operaciones de corte, destarimado (despa-
letizado), desempacado, etc. ProModel se ocupa de esta situación cambiando la
cantidad de salida en el cuadro de diálogo de las reglas de enrutamiento (campo
«Rule» cuando se está en el módulo de procesamiento). Si por ejemplo, en el
campo «Quantity» que aparece después de haber activado «Rule» se escribiera 4
indicaría a ProModel que por cada entidad que entra a la estación salen 4 para la
siguiente estación.
Laboratorio de Simulación Nº 2
Loteo
Es lo contrario del corte. En este caso, lo que se quiere es juntar varias piezas en
lotes, tarimas, grupos, etc. Para ésto, ProModel utiliza varios comandos, en esta
práctica utilizaremos el comando COMBINE.
El comando COMBINE espera hasta que estén disponibles el número especifica-
do de piezas en la estación y entonces se combinan en una sola unidad que es
enrutada a la siguiente estación. Es posible cambiar el nombre de la entidad que
sale en la estación donde se tiene lugar el cambio.
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 2
LOCATIONS
Average
Location Scheduled Total Minutes Average Maximum Current
Name Hours Capacity Entries Per Entry Contents Contents Contents %Util
--------- --------- -------- ------- --------- -------- -------- -------- ------
Entrada 10 1 28 16.01 0.74 1 1 74.75
Cortadora 10 1 27 22.12 0.99 1 1 99.55
Taladro 10 1 133 4.17 0.92 1 1 92.60
Torno 10 1 132 3.28 0.72 1 1 72.27
Pulidora 10 10 131 26.66 5.82 10 1 58.22
Laboratorio de Simulación Nº 2
Salida 10 5 13 79.98 1.73 5 3 34.66
% |
Location Scheduled % Partially %| %
Name Hours Empty Occupied Full | Down
-------- --------- ----- --------- ----- …………… | ----
Pulidora 10 2.28 80.38 17.33 | 0.0
Salida 10 24.73 75.27 0.0 | 0.0
Location Scheduled % % % % % %
Name Hours Operation Setup Idle Waiting Blocked Down
--------- --------- --------- ----- ----- ------- ------- ----
Entrada 10 0.0 0.0 25.25 0.0 74.75 0.0
Cortadora 10 22.50 0.0 0.45 0.0 77.05 0.0
Taladro 10 88.27 0.0 7.40 0.0 4.33 0.0
Torno 10 65.77 0.0 27.73 0.0 6.50 0.0
FAILED ARRIVALS
Entity Location Total
Name Name Failed
------ -------- ------
Telera Entrada 13
Salidas Totales
Laboratorio de Simulación Nº 2
% %
Entity In Move Wait For % %
Name Logic Res, etc. In Operation Blocked
------------------ ------- --------- ------------ -------
Telera - - - -
Pieza 0.71 33.29 21.18 44.82
Producto terminad - - - -
Lote 0.10 91.74 8.15 0
2.3 PRÁCTICA # 3
CONCEPTUALIZACIÓN
Añadir Estaciones
Bloques de Rutas
Gráficas de fondo
Variables
Las Variables en ProModel son apoyos definidos por el usuario para representar
valores importantes de parámetros claves para la decisión que se va a tomar.
Laboratorio de Simulación Nº 3
32
_______________________________________________________________________________
Para incluir una variable en el modelo, dar click en el menú Build/Variables (glo-
bal). El nombre que se le de en el campo ID es el nombre con el cual la variable
será identificado en el modelo. El tipo de la variable (Type) puede ser entero o
real.
Las variables son útiles cuando sus valores se pueden manipular. Esto se realiza
con los comandos de ProModel, INC y DEC.
INC hará que el valor de la variable se aumente en un valor definido o bien “1” si
no se especifica dicho valor. DEC causa que el valor de la variable se disminuya
en el valor específico definido o bien “1” si no se especifica dicho valor
Las variables y estos comandos son válidos en cualquier campo lógico.
Estas variables se introducirán en ésta práctica estando en el módulo de Proceso
(Build/Processing), tanto en el campo de Operación (Operation) como en el cam-
po de Movimiento (Move Logic). Allí también se pueden utilizar operadores numé-
ricos (+, -, *, /) para manipular a las variables.
Para las entidades, ésto se logra a través de Build / Entities, y activando el registro
de la entidad de interés.
Laboratorio de Simulación Nº 3
33
_______________________________________________________________________________
Dar click para seleccionar dichos espacios, y escoger cualquier ícono deseado.
Podemos diseñar gráficos diferentes para la misma entidad. Se puede cambiar el
color, la rotación, la dirección y el tamaño de la entidad.
Para utilizar las gráficas alternas durante la ejecución de un modelo hay que eje-
cutar el comando GRAPHIC. Este comando colocado en cualquier campo lógico
(Build/Processing) permite seleccionar el gráfico que aparecerá (Por ejemplo,
GRAPHIC 2 cambia al segundo gráfico).
Laboratorio de Simulación Nº 3
34
_______________________________________________________________________________
Enunciado de la Práctica
Suponga que el análisis de la práctica #2 nos hubiese llevado a concluir que uno
de los responsables en la operación del sistema es la pulidora. Supongamos que
queremos aumentar la efectividad del sistema añadiendo otra pulidora.
Módulo de Entidades:
Agregar la entidad Rechazos
Módulo de Procesamiento:
Nota: No olvidar colocar los WAIT para los tiempos de proceso y los MOVE FOR.
Ver como debe quedar el registro anterior observando el pantallazo que se pre-
sento atrás en la sección sobre Conceptualización- Inspección y enrutamien-
tos probabilísticas
Texto de fondo antes de las variables:
Colocar en la ventana de diseño (layout) el siguiente texto:
Nombre Tipo
Piezas_Proceso Entero
Piezas_Terminadas Entero
Piezas_Rechazadas Entero
Finalmente, queremos cambiar la gráfica de las entidades cuando salgan del Ta-
ladro y posteriormente cuando abandonen el Torno. Ésto requerirá entrar por la
Build / Entities lo que activa la ventana de gráficos (Entity Graphics). Para generar
gráficos adicionales de una determinada entidad, (por ejemplo de pieza) debe en
la ventana del registro de entidades (Entities) seleccionar la entidad pieza y luego
en la ventana de gráficos (Entity Graphics) desmarcar el botón “New” y presionar
el botón “Edit”, con lo cual se activan espacios para crear nuevos gráficos para la
entidad piezas ( ver la sección anterior “Cambio de las gráficas de las entida-
des” ).
Posteriormente, en la lógica de proceso de las estaciones respectivas se
deberá utilizar el comando GRAPHIC para cambiar el gráfico de la entidad cuando
se termine su tiempo de procesamiento.
Asi, en el campo “Operation” de la estación Taladro, después del WAIT 4
debe ir GRAPHIC 2 (lo que hará que se utilize el segundo gráfico creado para la
entidad piezas). Ai mismo en el campo de operación del Torno debe ir GRAPHIC
3. Vea el siguiente pantallazo:
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 3
39
_______________________________________________________________________________
Laboratorio de Simulación Nº 3
40
_______________________________________________________________________________
General Report
Output from C:\Documents and Settings\Jose Soto\Mis documen-
tos\CursoSimulacionMaestria_Sept_2009\Simulacion_Discreta\Talleres_Sim_Discreta\Practicas_Re
gulares\JOSE_PRAC_03_con_RTI.MOD [Práctica #3]
Date: Aug/19/2009 Time: [Link] PM
--------------------------------------------------------------------------------
Scenario : Normal Run
Replication : 1 of 1
Simulation Time : 10 hr
--------------------------------------------------------------------------------
LOCATIONS
Average
Location Scheduled Total Minutes Average Maximum Current
Name Hours Capacity Entries Per Entry Contents Contents Contents % Util
---------- --------- -------- ------- --------- -------- -------- -------- ------
entrada 10 1 29 13.34482 0.645 1 1 64.50
cortadora 10 1 28 21.32857 0.99533 1 1 99.53
taladro 10 1 139 3.98561 0.92333 1 1 92.33
torno 10 1 138 2.00000 0.46 1 0 46.00
pulidora.1 10 10 98 32.32653 5.28 10 8 52.80
pulidora.2 10 10 7 250.65714 2.92433 7 7 29.24
pulidora 20 20 105 46.88190 4.10217 17 15 41.02
salida 10 5 9 129.76666 1.9465 5 4 38.93
inspección 10 1 137 1.00000 0.22833 1 0 22.83
% |
Location Scheduled % Partially %| %
Name Hours Empty Occupied Full | Down
---------- --------- ----- --------- ----- | ----
pulidora.1 10 3.92 84.08 12.00 | 0.0
pulidora.2 10 20.68 79.32 0.0 | 0.0
pulidora 20 12.30 81.70 6.00 | 0.0
salida 10 19.98 80.02 0.0 | 0.0
Laboratorio de Simulación Nº 3
41
_______________________________________________________________________________
Location Scheduled % % % % % %
Name Hours Operation Setup Idle Waiting Blocked Down
---------- --------- --------- ----- ----- ------- ------- ----
entrada 10 0.0 0.0 35.50 0.0 64.50 0.0
cortadora 10 23.33 0.0 0.47 0.0 76.20 0.0
taladro 10 92.33 0.0 7.67 0.0 0.0 0.0
torno 10 46.00 0.0 54.00 0.0 0.0 0.0
inspección 10 22.83 0.0 77.17 0.0 0.0 0.0
FAILED ARRIVALS
ENTITY ACTIVITY
% %
Entity In Move Wait For % %
Name Logic Res, etc. In Operation Blocked
------------------ ------- --------- ------------ -------
telera - - - -
lote 0.08 93.92 6.01 0.0
producto terminado - - - -
piezas 0.84 42.91 20.16 36.09
rechazos 1.20 0.0 36.07 62.72
VARIABLES
Average
Variable Total Minutes Minimum Maximum Current Average
Name Changes Per Change Value Value Value Value
----------------- ------- ---------- ------- ------- ------- -------
Laboratorio de Simulación Nº 3
42
_______________________________________________________________________________
Correr cada una de las tres alternativas, analizar los resultados de cada corrida y
finalmente debe responder al siguiente interrogante:
¿Cual de las alternativas mejora el desempeño del sistema planteado en la práctica #2, expli-
que su respuesta y justifique basado en los resultados de salida (valores numéricos del repor-
te de salida) de cada corrida
Laboratorio de Simulación Nº 4
43
_______________________________________________________________________________________
2.4 PRÁCTICA # 4
CONCEPTUALIZACIÓN:
Banda Transportadora:
Las partes solamente pueden ser cargadas en la banda una a la vez. El número
de partes que se permiten en la banda está limitado por su capacidad, así como
por las dimensiones de la entidad que se transporta en la banda y por la longitud
de la banda. La entidad se mueve en la banda dependiendo de la longitud de la
banda y de la velocidad de movimiento de la banda.
tc
∑ C
% de Utilización = ∀entidades c
T
Colas (Filas):
Las filas son utilizadas como almacenes (área de espera antes de las estaciones
de trabajo).Gráficamente, la cola solamente desplegará las entidades que se pue-
dan mostrar dependiendo del tamaño del gráfico de la entidad y de la cola. O sea,
las unidades en cola que se ven no necesariamente corresponden al tamaño de
la cola (número de entidades en la cola) en el modelo.
la cola (el valor predeterminado es infinito); pero no del tamaño de las entidades
como sucede en las bandas de transporte.
Como en el caso de las bandas el comando MOVE nos permite controlar cuando
será ejecutada la lógica de la fila. Un comando MOVE hace que la entidad se
mueva al final de la cola donde cualquier lógica de operación adicional ya definida
será procesada. La lógica del comando MOVE se ejecuta al comienzo de la cola
(o de la banda). La lógica posterior al comando MOVE se ejecuta cuando la enti-
dad llega al final de la cola (o de la banda).
Notas:
El comando MOVE FOR no se utiliza en bandas de transporte solo en las
filas
Tanto para las bandas como para las colas la longitud está determinada
por la escala del gráfico y cuando ella es modificada gráficamente la longi-
tud es automáticamente recalculada basada en el nuevo gráfico, a menos
que se desmarque previamente la opción “Recalculate path lengths when
adjusted”. Esta opción puede accesarse a través del menú Tools / Options.
El proceso JOIN se utiliza para ensamblar dos entidades. Después del ensamble
las entidades estarán permanentemente unidas (ésta es la diferencia con COM-
BINE pues las entidades anteriores pierden su identidad).
El comando JOIN tiene dos partes y trabaja así: Una parte del JOIN es el coman-
do JOIN, con el cual una entidad “invita” a otras a unirse. La regla correspondiente
actúa como un retardador, deteniendo la entidad hasta que la otra entidad ejecute
el JOIN. Esta parte del JOIN se activa con la regla, IF JOIN REQUEST RULE. La
otra parte se activa en el campo de Operation de la otra entidad que se va a en-
samblar. Para cada comando JOIN deberá haber una regla correspondiente IF
JOIN REQUEST RULE; JOIN siempre resulta en un cambio de una entidad por
otra diferente. Ver como ejemplo cuadro siguiente.
Laboratorio de Simulación Nº 4
46
_______________________________________________________________________________________
El comando LOAD trabaja en forma similar a JOIN, excepto que las partes carga-
das pueden ser más tarde descargadas o desensambladas. Similarmente a JOIN,
LOAD tiene dos partes: el comando LOAD y la regla IF LOAD REQUEST.
Enunciado de la Práctica
En este modelo, las Fotocopiadoras y las Cajas Vacías se unen en la Mesa de
Trabajo formando una Caja Llena. Las Cajas Llenas van a la Zona de Carga a
través de la Cola de Embarque. De ahí, las Cajas Llenas son cargadas en una
Tarima (que llegó a través de la Banda de Tarimas) y viajan hasta la estación Em-
barque a través de la Banda de Embarque. En el Embarque las Cajas Llenas se
descargan de la Tarima y salen del sistema. Las Tarimas se regresan a la Banda
de Tarimas para ser reutilizadas dentro del sistema. Ver distribución en el panta-
llazo siguiente:
Laboratorio de Simulación Nº 4
47
_______________________________________________________________________________________
A continuación está la información que debe usarse para crear las Estaciones
(Locations), las Entidades (Entities), los Procesos (Processing) y las Llegadas
(Arrival
MÓDULO DE ESTACIONES
Estaciones Capacidad Especificaciones
Nota_1: Para construir una banda de transporte solo se puede usar el icono
en forma de escalera que se encuentra en la ventana de gráficos. Este mismo
icono se utiliza para construir las colas.
Nota_2: Para colocar las especificaciones de la banda (longitud y velocidad ) es-
tando en el módulo de estaciones hacer doble click en la banda, luego entrar por
opciones de la banda (conveyor options) y digitar la longitud y velocidad de ella.
Nota_3: No olvidar activar para las bandas la regla de salida de las bandas. Es-
tando en el modulo de estaciones y en el registro de la banda de transporte hacer
click en el campo “Rules” y activar lar regla FIFO.
Nota_4: señalar que la colocación de las entidades sobre la banda de transporte
será a lo largo de la entidad para estando en el módulo de estaciones hacer doble
click en la banda, luego entrar por opciones de la banda (conveyor options) y se-
ñalar la orientación de la entidad (lengthwise).
MÓDULO DE ENTIDADES
MÓDULO DE PROCESAMIENTO
Nota_1: Estos procesos no se digitan, deben crearse como ya fue explicado en la
introducción al módulo de prácticas, ver página 2 sección 1.2.3 Para crear el
Procesamiento.
Nota_2: los comando MOVE, JOIN, LOAD, UNLOAD, WAIT no deben digitarse,
debe usarse el ayudante constructor. A éste último se accede haciendo click en el
campo “Operation”, y luego haciendo click en el ícono del martillo. Y para los co-
mando que aparecen en el campo de Reglas para la estación destino dar click en
el campo “Rules” y activar según sea el caso: I Join Request o If Load Request
según sea el caso
Laboratorio de Simulación Nº 4
49
_______________________________________________________________________________________
MÓDULO DE LLEGADAS
Entidad Estación Cantidad Primera vez Ocurrencias Frecuencia
Fotocop Cola_Fotoc 5 0 infinito 20
Caja_vacía Cola_Cajas 5 0 infinito 20
Tarima_vacía Banda_Tarim 1 0 3 2
Nota_1: La cantidad 5 y la frecuencia de 20, significa que las entidades están lle-
gando en paquetes de 5 unidades cada 20 minutos.
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 4
50
_______________________________________________________________________________________
Actividades a realizar
4. Interpretación de resultados
--------------------------------------------------------------------------------
General Report
Output from C:\Documents and Settings\Jose Soto\Mis documen-
tos\CursoSimulacion_pregrado_Enero_2007\Practicas\practicas_de_laboratorio_2004\JOSE_PRAC_04.MOD
[Práctica #4]
Date: Jan/25/2007 Time: [Link] AM
--------------------------------------------------------------------------------
Scenario : Normal Run
Replication : 1 of 1
Simulation Time : 10 hr
--------------------------------------------------------------------------------
LOCATIONS
Average
Location Scheduled Total Minutes Average Maximum Current
Name Hours Capacity Entries Per Entry Contents Contents Contents % Util
---------------------- --------- -------- ------- --------- -------- -------- -------- ------
Cola de fotocopiadoras 10 5 155 16.77 4.33 5 5 86.67
Mesa de trabajo 10 1 150 3.99 0.99 1 1 99.98
Cola de cajas 10 5 155 16.77 4.33 5 5 86.67
Cola de emabarque 10 5 149 0.13 0.03 1 0 0.66
Zona de carga 10 1 150 3.99 0.99 1 1 99.75
Banda de embarque 10 999999 149 0.87 0.21 1 0 2.72
embarque 10 1 149 1.99 0.49 1 1 49.64
salida 10 5 149 0.0 0 1 0 0.0
Banda de tarimas 10 999999 151 5.02 1.26 2 1 15.80
% |
Location Scheduled % Partially % | %
Name Hours Empty Occupied Full | Down
---------------------- --------- ------ --------- ---- ---------------------------- | ----
Cola de fotocopiadoras 10 0.93 50.01 49.06 | 0.0
Cola de cajas 10 0.93 50.01 49.06 | 0.0
Cola de emabarque 10 96.70 3.30 0.0 | 0.0
Banda de embarque 10 78.27 21.73 0.0 | 0.0
Laboratorio de Simulación Nº 4
52
_______________________________________________________________________________________
Location Scheduled % % % % % %
Name Hours Operation Setup Idle Waiting Blocked Down
--------------- --------- --------- ----- ----- ------- ------- ----
Mesa de trabajo 10 99.98 0.0 0.02 0.0 0.0 0.0
Zona de carga 10 24.83 0.0 0.25 74.92 0.0 0.0
embarque 10 49.64 0.0 50.36 0.0 0.0 0.0
FAILED ARRIVALS
ENTITY ACTIVITY
% %
Entity In Move Wait For % %
Name Logic Res, etc. In Operation Blocked
Laboratorio de Simulación Nº 4
53
_______________________________________________________________________________________
2.5 PRÁCTICA # 5
CONCEPTUALIZACIÓN:
Red de rutas:
Cuando las entidades y los recursos se mueven entre las estaciones siguen un
camino llamado red de rutas. Varias entidades y recursos pueden compartir una
red de rutas común. El movimiento a lo largo de la red de rutas puede definirse en
términos de la velocidad y de la distancia, o simplemente en términos del tiempo.
La creación de una ruta se inicia seleccionando Build / Path Networks, (antes dar
click en el campo paths de la ventana Path Networks ) y después haciendo click
con el botón izquierdo del ratón en la parte de la ventana de diseño en donde se
debe iniciar el segmento. Clicks izquierdos subsecuentes señalarán los quiebres
en la ruta y un click derecho marcará el fin de la ruta.
Recursos:
Un recurso es una persona, una pieza de un equipo, o algún otro aparato usado
para una o varias de las siguientes funciones: transporte de entidades, asistencia
en la ejecución de operaciones sobre las entidades en las estaciones, ejecución
de mantenimiento en las estaciones, o casos similares.
Para identificar un recurso hay que definir dos elementos: el recurso propiamente
dicho y la red de rutas del recurso.
Generalmente los recursos tienen un «home» ( una «casa» ) donde están (a don-
de van) cuando no se utilizan. Este home será uno de los nodos de la ruta.
Comando USE:
Este comando capturará el recurso por la cantidad especificada de tiempo y pos-
teriormente lo liberará en forma automática. Se utiliza en el campo «Operation».
Nota: Al utilizar MOVE WITH o GET no olvide liberar el recurso más adelante.
Se utilizan en el campo «Move Logic».
Laboratorio de Simulación Nº 5
56
_______________________________________________________________________________________
Crear Rutas.
Crear 2 redes de rutas llamadas Red_1 y Red_2. (por Build / Path Networks, ver
Conceptualización Red de rutas)
Crear interfases.
Las interfases se utilizan para decirle a ProModel en dónde interactúa un recurso
con una estación.
Para crear una interfase entre un nodo y una estación se debe hacer click en el
campo de interfaces que se presenta en el pantallazo anterior con lo cual se abre
la caja de registro de interfaces. Luego click izquierdo sobre el nodo que se va a
interfazar (se apreciará una línea punteada, como en el gráfico anterior ) y poste-
riormente un click izquierdo en la estación correspondiente al nodo interfazado.
Laboratorio de Simulación Nº 5
58
_______________________________________________________________________________________
Crear recursos
Crear dos operarios (por Build / Resources, ver antes Conceptualización recur-
sos), así:
Nuevos comandos
Poner GET, FREE y MOVE WITH / THEN FREE en las estaciones apropiadas en
tal forma que las siguientes actividades sean llevadas a cabo:
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 5
59
_______________________________________________________________________________________
Laboratorio de Simulación Nº 5
60
_______________________________________________________________________________________
General Report
Output from C:\Documents and Settings\Jose Soto\Mis documen-
tos\CursoSimulacionMaestria_Sept_2009\Simulacion_Discreta\Talleres_Sim_Discreta\Practicas_Re
gulares\JOSE_PRAC_05.MOD [Práctica #5]
Date: Aug/19/2009 Time: [Link] PM
--------------------------------------------------------------------------------
Scenario : Normal Run
Replication : 1 of 1
Simulation Time : 10 hr
--------------------------------------------------------------------------------
LOCATIONS
Average
Location Scheduled Total Minutes Average Maximum Current
Name Hours Capacity Entries Per Entry Contents Contents Contents % Util
---------------------- --------- -------- ------- --------- -------- -------- -------- ------
Cola de fotocopiadoras 10 5 119 23.15566 4.59254 5 5 91.85
Mesa de trabajo 10 1 114 5.26199 0.99977 1 1 99.98
Cola de cajas 10 5 119 23.07275 4.5761 5 5 91.52
Cola de emabarque 10 5 113 0.14100 0.02655 1 0 0.53
Zona de carga 10 1 114 3.78396 0.71895 1 1 71.90
Laboratorio de Simulación Nº 5
61
_______________________________________________________________________________________
% |
Location Scheduled % Partially %| %
Name Hours Empty Occupied Full | Down
---------------------- --------- ------ - -------- ----- | ----
Cola de fotocopiadoras 10 0.58 31.01 68.42 | 0.0
Cola de cajas 10 0.79 31.37 67.84 | 0.0
Cola de emabarque 10 97.34 2.66 0.0 | 0.0
Banda de embarque 10 1.61 98.39 0.0 | 0.0
salida 10 100.00 0.0 0.0 | 0.0
Banda de tarimas 10 83.38 16.62 0.0 | 0.0
Location Scheduled % % % % % %
Name Hours Operation Setup Idle Waiting Blocked Down
--------------- --------- --------- ----- ----- ------- ------- ----
Mesa de trabajo 10 75.83 0.0 0.02 24.15 0.0 0.0
Zona de carga 10 18.83 0.0 28.10 53.07 0.0 0.0
embarque 10 37.33 0.0 1.02 61.65 0.0 0.0
RESOURCES
%
Resource Scheduled % Travel Travel % Travel % %
Name Hours In Use To Use To Park Idle Down
-------- --------- ------ ------ ------- ---- ----
Martha 10 94.67 5.31 0.0 0.02 0.0
Carlos 10 83.00 16.75 0.04 0.20 0.0
FAILED ARRIVALS
Laboratorio de Simulación Nº 5
62
_______________________________________________________________________________________
ENTITY ACTIVITY
% %
Entity In Move Wait For % %
Name Logic Res, etc. In Operation Blocked
------------- ------- --------- ------------ -------
fotocopiadora 0.0 77.41 0.56 22.03
caja vacia - - - -
caja llena 0.0 55.10 18.11 26.79
tarima vacia - - - -
tarima llena - - - -
Interpretación de resultados:
¿ Qué tan efectivos son los recursos ? (Examinar los recursos en el reporte gene-
ral y en las gráficas de estado para el uso y los estados posibles de un recurso)
2.6 PRÁCTICA # 6
CONCEPTUALIZACIÓN:
Atributos:
Son entes similares a las variables, pero están ligados a entidades y estaciones
específicas, y usualmente contienen información de esa entidad o estación. Los
atributos pueden ser números enteros o reales, y se definen siguiendo el orden
Build / Attributes.
En lugar de modelar esta situación con tres entidades diferentes (tres clientes
diferentes), se puede utilizar una sola entidad (un mismo cliente) a la cual se le
«pega» un atributo que represente el tipo de servicio solicitado. Utilizaremos
entonces el atributo «Tipo» al cual se le asignan los valores 1, 2, o 3, que apa-
recerán en el modelo de acuerdo a una distribución probabilística definida por
el usuario (usted), y que llamaremos, por ejemplo, Distrib.
A manera de ejemplo (No es para que Ud. lo modele). En el campo
«Operation» de la estación en la cual se encuentra el cliente deberían aparecer
las siguientes instrucciones:
Tipo=Distrib()
If Tipo=1 Then
Route 1
Else If Tipo=2 Then
Route 2
Else Route 3
Laboratorio de Simulación Nº 6
64
_______________________________________________________________________________________
Blk Output ... Destination ... Rules ... Move Logic ...
1 Cliente Cajero FIRST 1 Move for 15 sec
2 Cliente Información FIRST 1 Move for 10 sec
3 Cliente Gerente FIRST 1 Move for 15 sec
Enunciado de la Práctica Nº 6
Unas Partes (entidades) que llegan a la Cola de Entrada (recuerde como se
modelan las estaciones/Locations del tipo Cola) se mueven o a la Fresadora o
al Torno. Ésto se modelará con un atributo que llamaremos Clase, con la
siguiente convención: Si el atributo Clase es igual a 1 la Parte se enrutará a la
Laboratorio de Simulación Nº 6
65
_______________________________________________________________________________________
PORCENTAJE VALOR
65 1
35 2
Observe que la tabla anterior no es acumulativa, y que los valores que tomará
el atributo son discretos. (El funcionamiento interno en el computador es así:
Cada vez que se active esta distribución se genera aleatoriamente por un pro-
ceso de muestreo llamado MonteCarlo un valor para el atributo de 1 con pro-
babilidad .65 o de 2 con probabilidad .35. Este atributo se le «pega» como una
etiqueta a la Pieza (entidad llamada Parte) en el momento de su llegada, y así,
al final de la Cola de Entrada las Piezas (Parte) se repartirán hacia la Fresado-
ra o hacia el Torno de acuerdo al enunciado.
2. MÓDULO DE ESTACIONES:
Cree las siguientes estaciones:
Estaciones Capacidad
Cola_Entrada infinita
Fresadora 1
Torno 1
Cola_Inspeccion infinita
Inspeccion 1
Salida 1
Laboratorio de Simulación Nº 6
67
_______________________________________________________________________________________
Nota: Coloque como dimensiones de cada una de las colas las siguientes:
Longitud (length): 20 metros
3. ATRIBUTOS:
Cree el siguiente atributo, como se explicó en la conceptualización.
ID Type Classification
Clase Entero Ent
4. MÓDULO DE ENTIDADES
Cree la siguiente entidad:
Entidad
Parte
5. MÓDULO DE LLEGADAS:
Entrar por Build/Arrivals y consignar la información sobre las llegadas asi:
Enti- Estación Cantidad Primera Ocurrencias Frecuencia Logic
dad vez
Parte Co- 1 0 Inf 3 Cla-
la_entrada se=Distribu
c
La frecuencia 3 está indicando que una parte llega cada 3 minutos a la cola de
entrada En el campo “Logic” (en el momento de la llegada de la Parte a la
estación Cola_entrada) se le asigna a cada Parte en el atributo clase (un 1
o un 2) de acuerdo con la distribución (Distribuc) dada por el usuario en el pa-
so 1-Creación de una Distribución Probabilística (65% de las veces un 1 y 35%
de las veces un 2).
6. MÓDULO DE VARIABLES:
Cree las siguientes variables de tipo entero. Entrar al modulo de definición de
variables por Build/Variables(global).
ID Type
Contador_separacion Integer
Contador_rechazos Integer
Laboratorio de Simulación Nº 6
68
_______________________________________________________________________________________
Nota_1:
La variable "Contador_separacion" se manejará para controlar la exigencia del
enunciado en el sentido de que las Piezas numeradas con múltiplos de cinco
deben ir a la estación Inspección, y las otras deben ir a la estación Salida.
Nota_2:
La variable "Contador_rechazos" debe ser utilizada para mostrar las partes que
se rechazan en la Inspección y que deben ser reprocesadas (Ud. debe colocar
las instrucciones donde correspondan en el módulo de procesos).
7. MÓDULO DE PROCESAMIENTO
Nota: No olvidar colocar los corchetes que las instrucciones anteriores requie-
ren
No olvidar colocar los contadores de manera apropiada :Contador_rechazos
en el enrutamiento a la Cola_Entrada y Contador_separación en la Co-
la_Inspección.
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 6
70
_______________________________________________________________________________________
Laboratorio de Simulación Nº 6
71
_______________________________________________________________________________________
2.7 PRÁCTICA # 7
En la práctica No. 6 los tiempos de servicio son determinístiocos, mientras que en ésta práctica, para el mismo siste-
ma, se utilizan tiempos aleatorios que siguen distribuciones normales, lo que permite evaluar el efecto de este cam-
bio. Además, esta práctica introduce la forma de hacerle seguimiento a los tiempos de ciclo de cada una de las enti-
dades que se están procesando en un sistema mediante el uso de las funciones CLOCK() y LOG.
CONCEPTUALIZACIÓN:
Distribuciones Estadísticas:
Se utilizan para simular los tiempos de operación y los tiempos de movi-
miento con mayor realidad, creando la aleatoriedad requerida por el mundo real.
La escogencia de una distribución es una tarea difícil, que implica conoci-
miento del sistema ha ser modelado y conocimiento de la teoría matemática de la
estadística,(Percepción gráfica de las distribuciones estándares mas conocidas;
Pruebas de bondad de Ajuste; Estimación de parámetros), sin contar con el traba-
jo logístico de recolección de información.
LOG, es una función que resta del tiempo corriente de la simulación el valor
guardado en otra <expresión> y almacena el resultado de ésta resta en un ar-
chivo de texto llamado <texto>.LAP.
La sintaxis es como sigue:
LOG<texto>, <expresión>
Nota especial:
Entrando por Simulation / Options aparecen varias opciones, de las cua-
les merece destacar por ahora:
Enunciado de la Práctica Nº 7
1. MÓDULO DE ATRIBUTOS:
2. MÓDULO DE PROCESOS:
Los tiempos de operación ya no serán valores constantes sino variables aleato-
rias que siguen una distribución de probabilidad teórica (por ejemplo en el caso
de ésta práctica tiempos de operación normalmente distribuidas):
tiempo_entrada = CLOCK(MIN)
Nota: Esto se hace haciendo click en el ícono del martillo, dando luego click
en el campo Build Expressions, luego señalando atributos (Attributes) en la
ventana de elemento lógicos (logic Elements), seleccionar el atributo tiem-
po_entrada que aparece a la derecha de la ventana del constructor lógico, dar
un espacio en blanco, luego hacer click en el signo =, después en la ventana
de los elementos lógicos señalar la opción de todas las funciones (All Func-
tions) y buscar la función CLOCK, colocarle como unidad de tiempo MIN y fi-
nalmente Return y Paste.
De esa manera registramos la hora del reloj cuando la entidad pasa por esta
lógica, o sea, cuando la entidad entra al sistema. No olvidar en ese mismo
campo de operación (como en la práctica #6) también incluir la lógica de enru-
tamiento (con los corchetes necesarios) de acuerdo con el atributo ( IF clase =
1 then Route 1 else Route 2).
Recordar que las entidades ya llegan etiquetadas ya que el atributo les fue co-
locado en el campo de lógica (Logic) del modulo de llegadas, en el cual debe
aparecer: Clase = Distribuc() (ver en la práctica Nº 6 anterior, el numeral 5.
MODULO DE LLEGADAS).
Los tiempos individuales pueden ser graficados utilizando las gráficas de series
de tiempos (History Plot). Estando en el Reporte General de Estadísticas dar
click en el octavo botón que activa los graficos de tiempo “Choose Statistics
for Plot”
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 7 76
_______________________________________________________________________________________
Laboratorio de Simulación Nº 7 77
_______________________________________________________________________________________
Laboratorio de Simulación Nº 8
78
_______________________________________________________________________________________
2.8 PRÁCTICA # 8
Esta práctica introduce la forma de simular tiempos en los cuales la operación de una máquina (estación)
debe ser detenida por ejemplo para el mantenimiento preventivo de ella. También es presentada la forma de
modelar los turnos de trabajo de una empresa y el despliegue de textos y expresiones numéricas en puntos
específicos durante la ejecución de un modelo (comando DISPLAY)
CONCEPTUALIZACIÓN:
Se utilizan para simular tiempos durante los cuales la operación de las máquinas
debe ser detenida por alguna razón predeterminada (por ejemplo, el mantenimien-
to preventivo de la maquinaria se puede programar en intervalos regulares de
acuerdo a horario preestablecido).
• Clock = Pausa por Reloj, cuando la parada se inicia según horario preesta-
blecido (Ej: a las 9:15 a.m. hay descanso general en la fábrica)
• Entry = Pausa por Número de operaciones realizadas (Ej: cada 200 huecos
se debe cambiar la broca de un taladro)
• Usage = Pausa por Utilización efectiva (Ej: siempre que un camión recorra
4.000 Km. se debe hacer un cambio de aceite, o cada que transcurran 2
horas de trabajo se debe hacer un mantenimiento preventivo)
B. Turnos (Shifts):
Laboratorio de Simulación Nº 8
79
_______________________________________________________________________________________
ProModel permite dar más realismo a un modelo reflejando los turnos de trabajo
de las empresas. Permite crear horarios de entrada/salida para cualquier recurso
o estación. La especificación de los turnos requiere de tres pasos generales: Defi-
nición, Asignación y Ejecución.
En este editor hay dos colores, el azul para tiempo de trabajo (en la gráfica ante-
rior corresponde a las zonas mas oscuras), el rojo para tiempo de descanso. Los
espacios en blanco se consideran como tiempo no disponible.
C. Comando DISPLAY
Este comando permite hacer una pausa en la simulación y desplegar textos y ex-
presiones numéricas en puntos específicos durante la ejecución de un modelo.
Este comando es válido en cualquier lógica. El mensaje que se quiere presentar
debe ir entre comillas. Para que la simulación se reanude es necesario dar click
en «Aceptar», en el cuadro que aparece en la pausa.
ENUNCIADO DE LA PRÁCTICA Nº 8
a) Correrlo y observar las estadísticas de la fresadora y del torno, para que ésta
salidas le sirvan como referencia, cuando se corra el mismo modelo, adicionándo-
les tiempos de parada a éstas mismas estaciones.
b) Ahora si, agrege a las estaciones los tiempos de parada. Entrar los siguientes
tiempos de parada tipo “ Usage “, para lo cual entrar por: Build / Locations y click
en la columna DT’s hace que aparezca la caja de diálogo para entrar la informa-
ción sobre downtimes por uso. Con éste mantenimiento preventivo correr nueva-
mente, observar y comparar las estadísticas de la fresadora y del torno.
tada durante ésta parada y que será descrita mas adelante en la segunda parte
de ésta práctica.
2
Preemtitivos: Es el acto de reemplazar una actividad (downtime, entidad ) que esté usando una estación con
otra actividad de una prioridad preemtitiva mas alta. Para las estaciones ProModel coloca la actividad que esta
siendo reemplazada (una entidad o un downtime) en una lista particular para esa estación hasta que pueda re
continuar la actividad en esa estación particular
Laboratorio de Simulación Nº 8
82
_______________________________________________________________________________________
Para prepararnos para trabajar con turnos de trabajo, realizar lo que sigue:
2. Crear la red de rutas para los recursos dinámicos (Ver diagrama mas abajo
de la red con 4 nodos).
Area_descanso N1
Cola_Inspección
Fresadora N2
N3
(Red1) Torno
N4
Nota: una vez creado este turno debe grabarse en alguna parte como: [Link],
ya que al momento de asignarse a algún recurso (ver paso siguiente) debe darse
la dirección de éste archivo.
Build /Shifts/ Assign permite entrar a la ventana de asignación de turnos (Shift As-
signments.
Locations: Las estaciones fresadora y torno. (Observe los botones que permiten
seleccionar algunos items de una lista ya establecida).
Shift files: Seleccionar el archivo [Link] (debió haberse gravado en alguna par-
te cuando se creo en el paso anterior).
Laboratorio de Simulación Nº 8
86
_______________________________________________________________________________________
Para ejecutar este modelo que contiene turnos, por Simulation / Options hacer que
este modelo corra únicamente por un día de 8 a.m. a 5:00 p.m.
Para referencia del lector y facilitar la comprobación de que el modelo haya sido
bien programado a continuación se presenta el código correspondiente a este
modelo. Quien lo haya modelado en ProModel podrá verificarlo accediendo al
código generado a traves de “File -> View Text” que se encuentra en la parte su-
perior de la pantalla principal.
Laboratorio de Simulación Nº 8
88
_______________________________________________________________________________________
Laboratorio de Simulación Nº 8
89
_______________________________________________________________________________________
Laboratorios de Simulación Nº 9 y N° 10
90
_______________________________________________________________________________________
2.9 PRÁCTICAS # 9 y # 10
SALIDA ENTRADA
SALA DE OFICINA
ESPERA PRIMIPAROS
RECEPCION
OFICINA
LINEA DE ANTIGUOS
RECEPCION
RECTORIA
OFICINA
REPITENTES
Antes de entrar al Módulo de Estaciones, vamos a importar los planos del edificio
de esta institución de educación. Con otra aplicación (por ejemplo Autocad ó
“Paint”) se han elaborado dos archivos (llamados Oficina1 y Oficina2).
Usted observará abajo en la ventana del “Layout” parte del diseño que necesita-
mos. Importe ahora el archivo Oficina2. Siempre que se importe un gráfico que-
dará colocado en la esquina superior izquierda de la ventana de “Layout” , por tan-
to utilice el ratón para arrastrar el gráfico importado al lugar de la Oficina de Primí-
paros. Repita para la Oficina de Antiguos y la Oficina de Repitentes.
Ahora que tenemos un fondo para nuestra simulación, podemos entrar al Módulo
de Estaciones (“Locations”). En la tabla que aparece a continuación está la infor-
mación necesaria para este módulo. Usted deberá escoger el botón “Región” para
las estaciones de Entrada y Salida. Recuerde que el botón “Región” no coloca
físicamente ningún ícono en el Layout, pero ya tiene incorporado el “Lugar de la
Entidad”. Edite la Línea de Recepción en tal forma que sea una línea, invisible
durante la simulación, longitud de 10 metros, con capacidad de 5. La Sala de Es-
Laboratorios de Simulación Nº 9 y N° 10
92
_______________________________________________________________________________________
pera tendrá 7 sillas repartidas apropiadamente, deberá ser creada con un ícono
que represente a una silla (repetida 7 veces, pero recuerde desactivar botón
NEW) y deberá asignársele un contador que muestre la cantidad de estudiantes
que en su momento estén esperando a ser atendidos. En cada silla coloque un
lugar para la entidad. Para la Recepción, Oficina de primíparos, Oficina de anti-
guos, Oficina de repitentes y Rectoria utilice el ícono de un escritorio que tiene
encima un computador ( ó algun otro icono que parezca apropiado). Coloque
nombres a las estaciones (en color rojo) y lugares para las entidades. Note la ca-
pacidad infinita para las estaciones Entrada y Salida
Para el Módulo de Entidades sólo considerare al estudiante. Deberá quedar así (el
ícono del estudiante debe ser proporcional al tamaño de las sillas):
Para esta segunda etapa vamos a agregar una red que llamaremos “Aaa”. A con-
tinuación se muestra un esbozo de ella.
SALIDA ENTRADA
N13 N1
SALA DE N2 OFICINA
ESPERA N11 PRIMIPAROS
N3
N18 RECEPCION
N12 N4 OFICINA
LINEA DE ANTIGUOS
N16 RECEPCION N10 N9
N6 N5
N14
RECTORIA
N7
OFICINA
N15 REPITENTES
N8
N17
Dar doble click al botón “Graphic”, y escoger color rojo y no visible en la simula-
ción. En el campo “Name” entrar la palabra Aaa.
Dar un click en el botón “Type”. Las dos opciones, Non-Passing y Passing, signifi-
can, respectivamente, que las entidades o recursos que circulen por la red deben
hacer cola (o no hacer cola) detrás de otras entidades o recursos. En este caso,
escoger Passing.
Dar un click en el botón T/S. Corresponde a las opciones ‘Time’ y ‘Speed & Dis-
tance’ como base para el movimiento a lo largo de la red. En este caso, escoger
Speed & Distance.
Dar click en el botón “Paths” para activar la ventana en la cual quedarán las rutas
de la red. Quedarán registradas en esta ventana a medida que se vaya creando la
red en el Layout. Al final, deberá quedar así (Nota: sus valores de Distancias pue-
den ser un poco diferentes. Trate de ubicar los Nodos como aparece en el dibujo
anterior. Bi=Bidireccional):
Laboratorios de Simulación Nº 9 y N° 10
96
_______________________________________________________________________________________
PATHS
FROM TO BI DISTANCE
N1 N2 Bi 1.30
N2 N3 Bi 13.30
N2 N4 Bi 12.70
N4 N5 Bi 11.80
N4 N6 Bi 5.00
N6 N7 Bi 10.50
N7 N8 Bi 12.30
N6 N9 Bi 3.90
N9 N10 Bi 5.50
N10 N11 Bi 21.70
N11 N12 Bi 10.90
N12 N10 Bi 16.00
N9 N13 Bi 17.70
N10 N14 Bi 7.30
N14 N12 Bi 10.60
N14 N15 Bi 8.10
N14 N16 Bi 15.00
N16 N17 Bi 26.80
N16 N18 Bi 14.70
Dar click en el botón Interfaces para activar la ventana en la cual quedarán las
interfaces de la red. Quedarán registradas en la correspondiente ventana a medi-
da que se vayan creando sobre el “layout”. Al final, deberá quedar como se mues-
tra en la siguiente tabla de interfaces.
INTERFACES
NODE LOCATION NODE LOCATION
N1 Entrada N8 Ofic_Repit
N13 Salida N10 Linea_Recep
N3 Ofic_Primip N12 Recepcion
N5 Ofic_Antig N11 Sala_Espera
Nota: Tal vez sea más fácil si da click en el botón “Node” y selecciona el nodo co-
rrespondiente, luego click en el botón “Location” y seleccione la estación corres-
pondiente.
Ahora, revise el Módulo de Procesos para que tenga lo siguiente (analice e inter-
prete la lógica correspondiente):
El comando USE captura un recurso. Una vez que ha sido capturado, la entidad lo
utiliza por la cantidad especificada de tiempo, y cuando este tiempo termina, el
recurso es liberado. En este ejemplo es equivalente a las siguientes tres instruc-
ciones: GET Secre, WAIT N(2,.3) y FREE Secre (Nota: USE Secre FOR N(2,.3)
debe ir en un solo renglón).
No todos los estudiantes que llegan a las tres oficinas (primíparos, antiguos y repi-
tentes) son atendidos plenamente, sino que algunos tienen algunas situaciones
especiales que deben ser resueltas por el Rector, pero ésto sólo se viene a cono-
cer en la oficina respectiva.
Se sabe que el 5% de los primíparos, el 10% de los antiguos y el 15% de los repi-
tentes están en esta situación especial. Como la visita a Rectoría viene después
de la charla en la oficina, utilizaremos un atributo que llamaremos “Especial”, el
cual tendrá dos valores: Uno, cuando el estudiante entra al sistema, donde se su-
pone que no tendrá que ir a rectoría, y Dos, cuando el estudiante es despachado
desde la oficina respectiva a hacer nuevamente cola en la Línea de Recepción,
desde donde pasará a Recepción, y de allí irá, acompañado de la secretaria, a la
Rectoría. En la Rectoría con la secretaria también revisará sus papeles, y después
de ser atendido por el Rector (tiempo uniforme entre 5 y 25 minutos) irá directa-
mente a la Salida.
Laboratorios de Simulación Nº 9 y N° 10
99
_______________________________________________________________________________________
Además, se quiere tener una bitácora (o sea un registro) de los tiempos que re-
quieren los estudiantes dentro del sistema. Para ello utilizaremos otro atributo, que
llamaremos “Ciclo”.
Por tanto:
En el Módulo de Redes de Rutas agregar una interface entre el nodo N15 y la es-
tación Rectoría. Las interfaces deberán, despues de esta adición, quedar así:
INTERFACES
NODE LOCATION
N1 Entrada
N13 Salida
N3 Ofic_Primip
N5 Ofic_Antig
N8 Ofic_Repit
N10 Linea_Recep
N12 Recepcion
N11 Sala_Espera
N15 Rectoria
El Módulo de Atributos deberá quedar así:
ID TYPE CLASSIFICATION
Especial Integer Entity
Ciclo Real Entity
En esta etapa vamos a adicionar algunos conceptos relacionados con los Tiem-
pos de Parada (Downtimes). Un Tiempo de Parada detiene la operación de una
estación o de un recurso. Los Tiempos de Parada pueden representar interrupcio-
nes programadas, tales como turnos de trabajo, descansos o mantenimiento pre-
ventivo programado. También pueden utilizarse para representar interrupciones
aleatorias o no programadas, tales como las fallas en la maquinaria.
Llenar la ventana de Tiempos de Parada para la Rectoría tal como aparece a con-
tinuación:
FREQUENCY FIRST TIME PRIORITY SCHEDULED LOGIC DISABLE
24 hr 6 hr 99 Yes WAIT 30 No
El campo “Scheduled” sugiere por defecto el valor No, pero en nuestro caso va-
mos a entrar “Yes”, ya que el Tiempo de Parada de la Rectoría va a ser conside-
rado como una parada programada. Esto se reflejará en las estadísticas de salida,
ya que las paradas programadas serán deducidas del total de horas programadas
reportadas en las estadísticas de salida, y no serán consideradas en los cálculos
de porcentajes, etc.
Después de definir y asignar Turnos de Trabajo hay que programarlos dando click
en Simulation/Options. En el cuadro de diálogo que aparece (donde se habían pro-
gramado las 9 horas de simulación) dar click en la casilla “Define Run Length by
date” (Definir la longitud de la corrida por fechas). En este momento aparecen tres
botones (Warm Up, Begin y End). Entrar los datos sobre las fechas de tal forma
que Warm Up y Begin tengan la misma fecha y que cubran un día de trabajo des-
de las 8 a.m. hasta las 5 p.m. (De esta manera se le está diciendo al sistema que
que no se tiene previsto tiempo de calentamiento).
12 .30
15 .10
PERCENTAJE VALUE
0 0
10 5
30 8
60 10
90 12
100 15
Ahora, Ud. debe entrar al Módulo de Procesos y realizar los cambios necesarios
para que luzca como aparece a continuación. Además, a la luz de los nuevos con-
ceptos presentados, Ud. debe reflexionar sobre el significado de los cambios rea-
lizados (algunos no comentados aquí).
Nota: El WAIT T_Rector que aparece en el penúltimo registro debe adaptarse por
la exigencia hecha en la etapa anterior sobre la distribución de probabilidad que
modela los tiempos de atención del rector.
Para terminar esta cuarta etapa, vamos a realizar otro cambio mas referente a las
llegadas de los estudiantes al sistema:
Nota: Al dar click en el botón “Qty Each” aparecerá un cuadro de diálogo donde
deberá dar click en el Ciclo de Llegadas “Lleg_Estud”. Luego coloque el 1 a la iz-
quierda.
2.11 PRÁCTICA # 11
Estaciones
Name Cap Units Stats Rules Cost
---------- --- ----- ----------- ---------- ------------
Almacenamiento1 inf 1 None Oldest, ,
Máquina1 1 None Oldest, ,
Almacenamiento2 inf 1 None Oldest, ,
Máquina2 1 None Oldest, ,
Almacenamiento3 inf 1 None Oldest, ,
Máquina3 1 None Oldest, ,
Almacenamiento4 inf 1 None Oldest, ,
Máquina4 1 None Oldest, ,
Entities *
********************************************************************************
Name Speed (fpm) Stats Cost
---------- ------------ ----------- ------------
Trabajo 150 Basic
*******************************************************************************
* Processing *
********************************************************************************
Process Routing
Entity Location Operation Blk Output Destination Rule Move Logic
-------- ---------- ------------------ ---- -------- ----------- ------- ------------
Trabajo Almacenamiento1 Inc WIP 1 Trabajo Máquina1 FIRST 1
Trabajo Máquina1 Wait E(1) min 1 Trabajo Almacenamiento2 FIRST 1
Trabajo Almacenamiento2 1 Trabajo Máquina2 FIRST 1
Trabajo Máquina2 Wait (0.1 + W(5,1)) min
1 Trabajo Almacenamiento3 FIRST 1
Trabajo Almacenamiento3 1 Trabajo Máquina3 FIRST 1
Trabajo Máquina3 Wait (0.25 + W(5,1)) min
1 Trabajo Almacenamiento4 FIRST 1
Trabajo Almacenamiento4 1 Trabajo Máquina4 FIRST 1
Trabajo Máquina4 Wait (0.25 + W(5,1)) min
Dec WIP 1 Trabajo EXIT FIRST 1
********************************************************************************
* Arrivals *
********************************************************************************
Entity Location Qty Each First Time Occurrences Frequency Logic
-------- -------- ---------- ---------- ----------- ---------- ------------
Trabajo Almacenamiento1 1 0 inf 1.175 min
********************************************************************************
* Variables (global) *
********************************************************************************
ID Type Initial value Stats
---------- ------------ ------------- -----------
WIP Integer 0 Time Series
********************************************************************************
* Macros *
********************************************************************************
ID Text
--------------- ------------
Artificial 1
Actividades a realizar
1. Correr el modelo 250 horas
2. Ver el grafico de tiempo (History Plot) para la variable “WIP value History” y
estime visualmente cuando estaría terminando la fase transiente del siste-
ma.
3. Especifique las horas de calentamiento de acuerdo con su apreciación an-
terior y corra de nuevo el modelo. Observe que las salidas de la simulación
durante el período de calentamiento han sido descartadas.
4. El anterior método visual debe ser evitado. El proceso puede ser substan-
cialmente mejorado realizando múltiples replicaciones del mismo mode-
lo y luego combinando las salidas de la serie de tiempo de cada replicación
en un grafico con el promedio de las series de tiempo. El promediar las se-
ries de tiempo de las replicaciones individuales ayuda a filtrar las fluctua-
ciones (valores altos de una replicación son compensados por valores pe-
queños de otra replicación) y estimar mejor la verdadera pero desconocida
serie de tiempo. Entonces vamos a calcular series de tiempo con pro-
medios móviles para cinco replicaciones, y utilizar el modulo de opti-
mización (SimRunner) para calcular el período de calentamiento para
lo cual debe:
a) Crear en el modelo un macro con cualquier nombre (por ejemplo: ar-
tificial) y declárelo como RTI (run time interface).
b) Abra el modulo SimRunner y en la ventana “Create new pro-
ject/Select Model” ubique su modelo a analizar. Click en “next”. (Mo-
dulo: “Select Model/Project”).
c) En la ventana de medidas de desempeño (Performance Measures)
seleccione la categoría de “variable” y a la variable
“WIP_Average_Value”, como objetivo de maximización del SimRun-
ner.(Modulo: “Define Objectives”). Click en “next” y entrara en el mo-
dulo: “Define Inputs).
d) Seleccione el macro creado (artificial) que aparece en la ventana
“Macros Available for Input”, como factor de entrada. (modulo: “Defi-
ne Inputs). Click en “next” y entrara en el submodulo: “Define Expe-
riment” del modulo: “Analize Model” ).
e) Llene los valores del experimento así: Longitud de la simulación: 250
hr; Tamaño del intervalo: 1hr; Número de replicaciones: 5; Nivel de
confianza: 90; Error relativo en la estimación de la función objeti-
vo:[Link] error, e , tiene que ver con el error máximo permitido para
estimar el promedio de la variable WIP y que como recordará deter-
minará conjuntamente con el nivel de confianza, Z, el numero de co-
rridas necesarias, n , (número de replicaciones) del modelo para ga-
2
Z (α )S
rantizarlo, así, n = 2 . Es decir estamos buscando encontrar el
e
PRÁCTICAS de Simulación Nº 11
110
_______________________________________________________________________________________
2.12 PRÁCTICA # 12
Actividades a realizar
Laboratorio de Simulación Nº 12
112
_______________________________________________________________________________________
A. Primero vamos a estimar a WIP con una muestra de tamaño 10 (10 repli-
caciones)
1. Correr el modelo (deshabilitar la animación) con 10 replicaciones durante
100 y horas con un período de calentamiento de 100 horas.
2. Establecer un intervalo de confianza del 90% y observar que el nivel de in-
ventario-WIP- estimado está ente 17.64 y 21.089 trabajos.
B. Ahora, vamos a estimar a WIP con una sola corrida (una (1) replicación)
dividiéndola en intervalos de loteos (batch intervals).
1. Correr el modelo (deshabilitar la animación) con solo una larga replica-
ción de 1000 hrs., por ejemplo, y con intervalos de loteo igual a 100 horas
(no olvidar colocar la unidad de tiempo-hr-en el cuadro de “interval length” y
dejar el mismo período de calentamiento de 100 horas).
2. Establecer un intervalo de confianza del 90% y observar que el nivel de in-
ventario está entre 18.88 y 23.19 trabajos (unidad de longitud en feet y pre-
cision de reloj en minutos). Si deseáramos un intervalo de confianza de
menor tamaño podríamos aumentar el tamaño de la muestra extendiendo
la longitud de la corrida, por ejemplo a 1500 hrs., y tendríamos 15 observa-
ciones. (ensaye para ver si el tamaño del intervalo disminuye)-(19.13 :
22.54).
C. Longitud requerida del intervalo de loteo (batch interval length).
Un punto importante del método de loteo por intervalos es garantizar que los
valores obtenidos en cada intervalo de loteo (el valor promedio en cada lote-
batch-) corresponda a observaciones “aproximadamente” independientes. La
palabra “aproximadamente” se ha enfatizado porque sabemos que las obser-
vaciones dentro de una misma corrida a menudo están auto correlacionadas
(no son independientes, por ejemplo puede darse una mayor probabilidad de
que un artículo sea defectuoso si el anterior lo fue; o el tiempo de corte de una
operación manual puede crecer cada vez debido al desgaste del cuchillo). De
hecho a menudo están positivamente correlacionadas, lo que sesga la desvia-
ción estándar de la media del intervalo de loteo hacia un valor bajo y esto ses-
gará también la estimación de nuestro intervalo de confianza.
Así, que debemos “chequear” la auto correlación (lag-1) de las observaciones
antes de interpretar los resultados. Si se generan al menos 100 observaciones
se puede estimar la auto correlación entre observaciones adyacentes (lag-1
autocorrelación). Las observaciones se consideran casi independientes si la
estimación de la autocorrelación-lag-1, para al menos 100 observaciones cae
entre -0.20 y +0.20 (recuerde que los valores de autocorrelacion caen entre +-
1.).
Si la estimación de la autocorrelación lag-1 no cae entre -0.20 y +0.20, enton-
ces la longitud original del intervalo de loteo debe ser incrementada en un 50%
a100% y volver a correr la simulación. Recolectar las estadísticas y estimar de
nuevo el factor de autocorrelación lag-1. Como debemos tener al menos 100
observaciones (y solo tenemos 10 observaciones, resultado de 1000hrs., de
corrida con lotes (batches) de 100 horas, entonces aumentemos la longitud de
Laboratorio de Simulación Nº 12
113
_______________________________________________________________________________________
corrida del modelo a 10 000 horas lo que nos permitirá obtener 100 observa-
ciones.
1. Correr el modelo (deshabilitar la animación) con solo una larga re-
plicación de 10 000 hrs., y con intervalos de loteo igual a 100 horas
(no olvidar colocar la unidad de tiempo-hr-en el cuadro de “interval
length” y dejar el mismo período de calentamiento de 100 horas).
2. Salve el reporte de salida de ProModel como formato de Microsoft Excel
y luego transfiéralo a una tabla del Stat::Fit.
3. Realice una prueba de autocorrelacion para la variable WIP y verifique
que el factor de autocorrelación está entre 0.192 y – 0.132
4. Realice una prueba de normalidad para garantizar que la estimación del
intervalo es la correcta.
Average: 20.91
Std dev: 3.16
Intervalo: (20.37 21.45)
Confianza: 90%
Laboratorio de Simulación Nº 13
114
_______________________________________________________________________________________
2.13 PRÁCTICA # 13
STAT:FIT
2. Guardelo con (File/Save As) y el nombre del archivo del proyecto, y todo el
documento (Stat:FitDocument) quedará asociado con este nombre de archi-
vo y con la extensión .SFP (de Stat Fit Project). Este ultimo archivo contiene:
• La Tabla de datos
• Todos los calculos
• Todas las gráficas
• Y todos los view points
•
Si solo se desea guardar los datos de entrada (la Tabla de Datos) en un ar-
chivo de texto debe guardarse como (File / Save Input).
Laboratorio de Simulación Nº 13
115
_______________________________________________________________________________________
3. Crear la Tabla de Datos (todos los datos deben entrarse como datos simples,
no acumulados). Si son datos continuos debe especificarse el número de in-
tervalos de clases. El número de intervalos es usado para mostrar los datos
continuos en un histograma y comparar los datos de entrada con los datos
ajustados (fitted data), a través de una prueba Chi Cuadrado. Hay tres for-
mas de escoger el número de intervalos:
Auto: Número de intervalos K = (2N ) 2 :
1
•
• Automática
• Manual
las limita según algunos criterios como, el lower bound, o por ejemplo,
Skewness de datos negativos elimina varias distribuciones candidatas.
2. Calcula los estimadores de Máxima Verosimilitud para los parámetros
de cada una de las distribuciones seleccionadas.
3. Prueba el ajuste de cada una de las distribuciones (Prueba de Bondad
de Ajuste), usa el Test de Kolmogorov Smirnov, el Chi cuadrado y el
Test de Anderson Darling.
4. Muestra los resultados en un Ranking.
Si se desean observar los detalles de cada una de las pruebas debe hacerse click
en el boton [TEST], que queda sobre la speed bar.
2.14 PRÁCTICA # 14
(Esta práctica es una adaptación mejorada de la que aparece en el libro “Simulación con ProModel-
Casos de producción y logística”. Luis Ernesto Blanco Rivero, Ivan Dario Fajardo Piedrahita. Edito-
rial Escuela Colombiana de Ingeniería, Mayo 2001, pags. 41 a 53).
Esta práctica corresponde a un Modelo tipo “push”. Permite que el estudiante se sintonice en la
práctica con los conceptos de inventarios críticos, cuellos de botella y “throughput”.
Throughput (TH): Tasa promedio a la cual la empresa produce unidades vendibles por
unidad de tiempo (algunos traducen Throughput como facturación).
Cycle Time (CT): Tiempo que gasta un producto desde que ingresa en el sistema, hasta
que sale.
TC = Tiempo de ciclo.
3
Eliyahu Goldratt y Jeff Cox, La meta, un proceso de mejora continua, 2 ed., Monterrey, México, Ediciones Castillo.
Laboratorio de Simulación Nº 14 118
_______________________________________________________________________________________
Cuello de botella: Operación más lenta del proceso, o la que produce el menor
Throughput en un determinado tiempo. Es la operación que marca el ritmo de la
producción.
Gastos de operación: Es el dinero que la empresa invierte para convertir los in-
ventarios en Throughput.
Poco a poco, Juan Carlos comenzó a comprender que las actividades principales
de organización de la producción debían encaminarse a incrementar el Through-
put.
Tasa del cuello de botella (rb): Es la tasa o rata (el número de partes o trabajos
por unidad de tiempo) de producción de la estación de trabajo u operación que
tiene la mínima capacidad del proceso. Si ri es la tasa de producción de la opera-
ción i, entonces:
WIP crítico de la línea (Wo): Es el nivel de inventario con el que la línea produce
el máximo Throughput. A partir de dicho nivel (mayor al nivel critico), el inventario
únicamente produce congestión y costos de almacenamiento.
Wo = (rb).To
La ley del mejor desempeño establece que para un nivel dado de inventario w, el
mayor Throughput se obtiene cuando el nivel de inventario es igual al nivel crítico
Wo; a partir de ahí lo máximo que se obtiene es rb, o sea la tasa del cuello de
botella.
4
Wallace J. Hoppe y Mark L. Spearman, Factory Physics, foundations of manufacturing manage-
ment, cap. 7, Boston, Irwin McGraw Hill, Inc., 1996
5
Es el mínimo de todas las tasas de producción cuando se tienen en cuenta todas las operaciones
Laboratorio de Simulación Nº 14 120
_______________________________________________________________________________________
Esta ley se puede interpretar como que el mejor tiempo de ciclo es el que corres-
ponde al nivel crítico de inventario Wo.
Para señalar el sitio dentro del área en donde se ubicarán los materiales, se uso
el icono de un cuadrado rojo con una “X” blanca en el centro, asegurándose de
desmarcar primero el chulo de “New” de la ventana y haciendo click en el cua-
Laboratorio de Simulación Nº 14 121
_______________________________________________________________________________________
drado rojo y luego en el sitio en donde se quiera ubicar. De manera similar se po-
nen los nombres de las estaciones, haciendo click primero en la tecla Aa y luego
en el sitio en donde se va a ubicar el letrero (es conveniente volver a colocar el
chulo una vez localizados el puesto y el letrero).
Tabla 14.2
Speed
Name (mpm) Statistics Notes
Time Se-
Piñón 50 ries
Time Se-
Pieza 50 ries
Tabla 14.5
Interfaces de los nodos Nodos de la red y tiempo de tránsi-
to
con las estaciones
entre los nodos
Node Location
Nl Recepción1
N2 Limpieza
N3 Recepción2
N4 Torno
N5 Recepción3
N6 Fresa
N7 Paletizadora
N8 Recepción4
N9 Inspección
Al hacer click en Specifications aparecerá una ventana con dicho nombre. Allí se
define Path Network con su nombre, esto es, Desplazamiento, tambien se define
Home como el nodo 1 (N1, que está asociado con Recepción1 mediante una in-
terface) y se marca Closest Resource. Esta información le dice al modelo que los
operarios se mueven de acuerdo con las trayectorias de la red Desplazamientos
—que se ha definido previamente—, que el sitio de trabajo de los operarios es el
nodo 1, o sea, la recepción1, a donde se dirigirán cuando no estén ocupados, y
que se debe utilizar el operario que esté más cercano a la instalación en donde se
requiera. Las demás se ajustan automáticamente.
Al hacer click en Points aparecerá una ventana, en donde se le definen las coor-
denadas al nodo 1 como (-16, 24). Esto le permitirá al sistema ubicar cartesiana-
mente todas las instalaciones del modelo.
Los contadores de las variables se van colocando en el layout (ver figura 14.2).
Laboratorio de Simulación Nº 14 125
_______________________________________________________________________________________
Figura 14.2
El lugar en el layout donde se ubican las variables puede encabezarse con el le-
trero Indicadores. Los nombres de las variables y el de Indicadores se hacen con
Build-Background Graphics-Front of the Grid.
Se definió también una subrutina (subroutine) llamada id, mediante el menú Build-
Subroutines, de la siguiente manera:
6
Recuerde que el tiempo de transito entre las estaciones Recepcion1 y limpieza (nodos N1 y N2) está dado en
la tabla 14.5, el cual es de 0.16 min.
Laboratorio de Simulación Nº 14 127
_______________________________________________________________________________________
Destina
Out- tion
Entity Location Operation put Rule Move Logic
Ct_piñon=
CLOCK() - att_piñon
Ct_general=Ct_piñon
Id()
REAL x DEC Wip_piñon
Piñon Paletizadora Piñon EXIT First 1 DEC Wip_general
REAL x
Id()
Att_pieza=CLOCK()
INC Wip_pieza
INC Wip_general MOVE WITH Operario
Pieza Recepción1 WAIT x Pieza Limpieza First 1 THEN FREE
REAL x
Id()
Tp1=2
x = n(Tp1, .5)
Rb1=1/x MOVE WITH Operario
Pieza Limpieza WAIT x Pieza Recepción2 First 1 THEN FREE
REAL x
Id()
Pieza Recepción2 Pieza Fresa First 1 MOVE WITH Operario THEN FREE
En este grupo las instrucciones son similares a las anteriores. Las dos últimas ins-
trucciones son:
Out-
Entity Location Operation put Destination Rule Move Logic
REAL x
Id()
Tp4=6
x = n(Tp4,.2)
Rb4=1/x
Pieza Inspección WAIT x Pieza Paletizadora First 1 MOVE WITH Operario THEN FREE
Ct_pieza=
CLOCK() –Att_pieza
Ct_general=
REAL x 7
Pieza Paletizadora Ct_pieza
Id()
DEC Wip_pieza
Pieza EXIT First 1 DEC Wip_general
7
Observe que la variable Ct_general, que es global, y que en este momento guarda el tiempo de ciclo de la
pieza (Ct_pieza), tambien está siendo utilizada para guardar el tiempo de ciclo del piñon (Ct_piñon) por lo
que está siendo sobre-escrita.
Laboratorio de Simulación Nº 14 130
_______________________________________________________________________________________
ANALISIS DE RESULTADOS.
El modelo se corrió durante 8 horas con la entidad pieza y piñon entrando al sis-
tema como se describió en el modulo de llegadas (“Arrivals”), ver tabla 14.3.
8
Observe que esto es una simplificación ya que la variable global Rb2 está siendo utilizada por las piezas y
por los piñones en el torno. Además debe entenderse que la cifra de 0.15 mostrado por la variable corresponde
al valor de la variable Rb2 al momento de terminarse la simulación y no distingue si lo que pasó por el torno
era una pieza o un piñon.
Laboratorio de Simulación Nº 14 131
_______________________________________________________________________________________
La gráfica tiempo de ciclo (ver figura 14.5) muesta que cada vez se demora mas
una pieza ó un piñon en pasar por todo el proceso.
La siguente gráfica (ver figura 14.6) muestra los inventarios promedios en proce-
so a lo largo del tiempo de la simulación ( Inv_piñon_promedio =
Wip_piñon/Ct_piñon; Inv_pieza_promedio = Wip_pieza/Ct_pieza) relaciona las
dos variables mostradas en las figuras 14.4 y 14.5 anteriores y muestra que la
Laboratorio de Simulación Nº 14 132
_______________________________________________________________________________________
tasa de crecimiento del inventario promedio con respecto al tiempo tiende a esta-
bilizarse después de aproximadamente 6 horas (ver la figura 14.5 siguiente) en
0.20 piñones/min y en 0.13 piezas/min.
Lo anterior quiere decir que a medida que pasa el tiempo el inventario promedio
de piñones y piezas tiende a crecer sin límite, como se evidencia en la figura 14.4.
Figura 14.6
La gráfica de la figura 14.7, “Piezas vendibles por hora”, muestra cuantas piezas
completamente terminadas salen del sistema en cada una de las horas de la si-
mulación. Así, por ejemplo en la primera horas salieron 2 piezas, en la segunda
hora 4 piezas y durante las tres siguientes horas (de la hora 2 a la hora 5) salieron
cada hora 3 piezas, para un total de 9 piezas en ese período de 3 horas y un total
de 25 piezas en las 8 hr de simulación.
Figura 14.7
Laboratorio de Simulación Nº 14 133
_______________________________________________________________________________________
Figura 14.8
Taller_1:
Analize como cambian estas estadísticas cuando:
1. Se corre el modelo 16 horas.
2. Se entra solo el piñon al sistema. Esto se hace en el menú “arrivals—
colocando “yes” en el campo “disable” de la entidad que no se quiere que
entre al sistema.
3. Se entra solo la pieza al sistema
Laboratorio de Simulación Nº 15 135
_______________________________________________________________________________________
2.15 PRÁCTICA # 15
Esta práctica corresponde a un Modelo tipo “push” como el de la práctica 14 anterior, pero permi-
tirá que el estudiante compare un sistema con inventario tipo push con un sistema tipo pull como
el que será presentado en la práctica No. 16
Esta práctica es una adaptación a la que aparece en el libro “Simulación con ProModel- Casos de
producción y logística”. Luis Ernesto Blanco Rivero, Ivan Dario Fajardo Piedrahita. Editorial Escuela
Colombiana de Ingeniería, Mayo 2001, pags. 93 a 102).
Juan Carlos recordó inmediatamente que los inventarios se han usado, tradicio-
nalmente, como colchones de ajuste contra la falta de materiales, cambios brus-
cos en la demanda, paradas de las máquinas y faltas de coordinación en la pla-
neación de la producción; sin embargo, muchas veces el exceso de inventarios
también puede causar mayores problemas que los originales de escasez, al con-
gestionar el sistema y ocasionar “trancones” en el flujo de los materiales.
Más tarde, Juan Carlos revisó su biblioteca y encontró la historia del ingeniero ja-
ponés Taiichi Ohno, quien trabajó para Toyota, en donde tenía la tarea de coordi-
nar la producción y la entrega de materiales y partes, con la producción y entrega
de subensambles, con los requerimientos de productos finales. El problema era
complejo por la gran cantidad de componentes y por el elevado número de opera-
ciones que tiene un proceso de producción de automóviles. En un viaje a Estados
Unidos, al observar el funcionamiento de los grandes supermercados, Ohno advir-
tió que el secreto de éstos estaba en conservar pequeñas cantidades de inventa-
rio (la de los exhibidores), de las que se surten los clientes, y pedir a los proveedo-
res a medida que se agotaban las existencias, de tal modo que el inventario siem-
pre estaba a la vista y se encontraba limitado.
Ohno fue el primero en utilizar la palabra pull (halar) para indicar que es el cliente
quien “hala” el sistema de inventarios. “Si el cliente no demanda, el inventario
no aumenta”. El sistema pull que desarrolló Ohno se basó en dos grandes ideas:
1. El Just In Time (JIT) y 2. La Automatización con Operarios Incluidos (Autono-
mation).
Se capacita además a los operarios para que puedan manejar varias máquinas
simultáneamente, se establecen equipos de trabajo y círculos de mejoramiento
para estudiar y resolver los problemas relacionados con la calidad, y se hace una
inmensa inversión en tecnología: se diseñan sistemas de aprestamiento (set up)
muy rápidos y a prueba de errores (fool proof) en las máquinas, se ubican las
máquinas muy cerca unas de otras, formando como una especie de U (celdas de
manufactura), para minimizar el número de operarios y el número de desplaza-
mientos de éstos, y se establecen sistemas de información visuales para poder
parar la producción en caso de problemas, dentro de lo que Ohno llama Autono-
mation.
Revisando sus apuntes de clase, Juan Carlos encontró que el creador del sistema
Material Requirements Planning (MRP), prototipo de los sistemas push (empujar),
fue Joseph Orlicky, quien como programador de IBM aprovechó las ventajas del
manejo computarizado de bases de datos para diseñar una nueva forma de calcu-
lar los inventarios, para productos con demanda dependiente, incluyendo además
el tiempo como una nueva variable en el sistema.
El MRP es, entonces, un muy buen sistema de información, porque calcula la lista
de materiales necesarios para cada orden y el tiempo en el cual se debe terminar
ésta. Posteriormente se desarrollaron sistemas MRP mucho más complejos, como
el Mapics, el Vipics y otros conocidos. Estos son los sistemas MRP II (Materials
and Resources Planning), que incluyen módulos para el cálculo de capacidades,
costos y rutas de producción alternativas, hasta llegar a los más modernos, que
incluyen módulos de distribución y servicio al cliente como el ERP.
Juan Carlos hojeó otro de los libros de Eliyahu Goldratt, denominado La carre-
ra 9, porque allí, le parecía recordar, se explicaba otro de los sistemas pull, deno-
minado DBR (Drum Buffer Rope), que se puede traducir como tambor, inventario
o colchón de seguridad, cuerda. En este prototipo de los sistemas logísticos de
fabricación sincronizada fundamentalmente se trata de reducir la dispersión cau-
sada por las diferentes capacidades de las operaciones y por los niveles de inven-
tario, en un proceso de producción.
Las ideas centrales de este sistema consisten en buscar, primero que todo, las
operaciones cuellos de botella, que son las más lentas y las “que marcan el paso”
de la producción, para procurar que siempre trabajen al ritmo planeado, que se-
meja un tambor (drum), y asegurar que a estas operaciones no les falten materias
primas.
9
Eliyahu Goldratt y Robert Fox. La carrera, Mexico. Ed. Castillo, 1995, 273 p..
Laboratorio de Simulación Nº 15 137
_______________________________________________________________________________________
Juan Carlos imaginó que el “tamborilero” no podía ser otra persona que “el pro-
gramador de la producción”, quien debe organizar las órdenes de pedido de
acuerdo con su fecha de entrega o en las secuencias previamente establecidas,
preparar los materiales, organizar a los operarios, llenar los inventarios de seguri-
dad y finalmente empezar a “tocar su tambor”.
En su reciente lectura del libro Factory physics 102, había visto otro sistema pull,
conocido con la denominación de sistema Conwip (Constant Work In Process),
creado por Hopp y Spearman, recogiendo lo más positivo de los sistemas JIT,
DBR y MRP. La idea central de este sistema consiste en establecer un límite al in-
ventario en proceso o WIP, no permitiendo entrada a ningún material o parte, has-
ta que haya salido un producto terminado, esto es, se haya incrementado el
Throughput. Lo primero que se debe hacer en este caso es definir “un nivel de
inventario constante” y como se explicó en la práctica 14, un valor candidato será
el nivel de inventario crítico, Wo.
tiempo que emplea un producto desde que ingresa en el sistema hasta que sale,
cuantificable en la unidad de tiempo con la que se esté trabajando, para la compa-
ración entre los dos sistemas.
Locations (Estaciones).
Entities (Entidades).
En el modelo se incluyeron cuatro entidades de flujo de valor agregado: Pieza,
Pieza_2, Pieza_3, Pieza_4.
La entidad Pieza (que juega el rol de materia prima) llega a la primera estación del
proceso, que es Recepción (que en éste modelo juega el rol de estación de en-
Laboratorio de Simulación Nº 15 139
_______________________________________________________________________________________
Arrivals (Llegadas).
De acuerdo a lo mencionado en el párrafo anterior las llegadas se definieron así:
Resources (Recursos).
Attributes (Atributos).
Se utilizará un atributo para almacenar la hora en que llega cada entidad (Pieza)
al sistema (recepción), con la siguiente información:
Variables Globales.
Además se incluyeron seis variables, con los datos que se relacionan a continua-
ción:
Subroutines (Subrutinas).
Se utilizó la Subrutina Call_inventario_promedio para calcular el inventario pro-
medio de las piezas por unidad de tiempo.
Laboratorio de Simulación Nº 15 142
_______________________________________________________________________________________
Processing (Procesamiento).
Como el proceso o processing es extenso, se comentarán las instrucciones en
grupos de cuatro:
En estas cuatro instrucciones no hay nada nuevo, distinto de observar que al pa-
sar una entidad de una operación a otra, se decrementa el wip de la anterior y se
incrementa el wip de la siguiente, y que la entidad se va transformando: Pieza2 en
Pieza3, etcétera.
Destina-
Entity Location Operation Output tion Rule Move Logic
WAIT 15
MOVE WITH
DEC wip3
Zo- Operario OR
Pie- INC wip4
Troqueladora Pieza_4 naPt_cuatr First 1 Operator
za_4 Call_inventario_prome
o THEN
dio()
FREE
ct = CLOCK() – Att 11
DEC wip4
MOVE WITH
Operario OR
Pie- Call_inventario_prom Producto_
ZonaPt_cuatro Pieza_4 First 1 Operator
za_4 edio() terminado
THEN
FREE
11
Dado que se ha terminado la fase productiva se calcula el correspondiente tiempo de ciclo
Laboratorio de Simulación Nº 15 144
_______________________________________________________________________________________
RESULTADOS
El siguiente es el resultado de la simulación:
ANALISIS DE RESULTADOS.
El modelo se corrió durante 100 horas con la entidad pieza entrando al sistema
como se describió en el modulo de llegadas (“Arrivals”).
La gráfica tiempo de ciclo (ver figura 15.2) para cada una de salidas muestra que
cada vez se demora más una pieza en pasar por todo el proceso.
La gráfica de la tasa instantánea del inventario (ver figura 15.4) relaciona las dos
anteriores (figuras 15.2 y 15.3) y muestra que la tasa instantánea del inventario
Laboratorio de Simulación Nº 15 146
_______________________________________________________________________________________
La gráfica (ver figura 15.5) piezas vendibles por hora (llamadas Throughput)
muestra cuantas piezas completamente terminadas salen del sistema en cada
una de las 100 horas de la simulación. Así, por ejemplo en la primera hora sale 1
pieza, entre la 1 hora y la hora 10 salen 3 piezas cada hora para un total en ese
lapso de tiempo de 27 piezas. El acumulado de las piezas vendibles producidas
durante las 100 hrs de simulación llega a 292 piezas.
2.16 PRÁCTICA # 16
Sistema “Pull”
Este es básicamente el mismo sistema anterior pero manejando el inventario con un modelo
tipo “pull”. La anterior comparación permite simular las diferencias entre un sistema push y un
sistema pull.
Esta práctica es una adaptación a la que aparece en el libro “Simulación con ProModel- Casos
de producción y logística”. Luis Ernesto Blanco Rivero, Ivan Dario Fajardo Piedrahita. Editorial
Escuela Colombiana de Ingeniería, Mayo 2001, pags. 102 a 107.
Locations (Estaciones).
En modulo de “locations” debe adicionarse a las estaciones creadas en la
práctica anterior (15) las siguientes:
Se incluyeron los cuatro sitios relacionados en la tabla anterior para colocar las
órdenes (“kanbans”) de envío de materiales a sus respectivos centros de pro-
cesamiento. En el sistema JIT, como se mencionó anteriormente, la demanda
es “halada” por el cliente.
Figura 16.3. Layout para el modelo tipo pull descrito en la práctica 16.
Entities (Entidades).
A las 4 entidades (pieza, pieza_2, pieza_3 y pieza_4) creadas en la práctica
anterior (15) deben adicionarse (en este modelo) las entidades (Pedi-
do_cliente) que hace referencia a la solicitud del cliente, Orden_kanban que
hará referencia a la información (kanban) que hala el proceso en un sistema
pull y finalmente la entidad Pedido_cliente_satisfecho, que denota la entrega
del pedido al cliente.
Figura 16.4
Arrivals (Llegadas).
En la práctica anterior se hizo llegar la entidad Pieza (la que juega el rol de ma-
teria prima) a la estación Recepción (que es la estación de entrada de materia
prima al proceso).
En esta práctica (sistema pull) el proceso de llegadas de las materias primas
será halado por los pedidos que realice el cliente. Por lo tanto solo debe hacer-
se llegar la entidad (Pedido_cliente) a la estación Recep-
cion_kanban_cliente con el fin de halar el proceso desde el momento que el
cliente hace un pedido (lo cual es la lógica propia del sistema).
Figura 16.5
Interfaces de los Nodos con sus respectivas Nodos de la red con el tiempo
Estaciones de tránsito entre nodos
Subroutines (Subrutinas).
Se utilizó la misma Subroutine Call_inventario_promedio creada en la prácti-
ca anterior (15) con el objetivo de calcular el inventario promedio de las piezas
por unidad de tiempo, la cual se incluye de nuevo abajo para facilitar la refe-
rencia.
Laboratorio de Simulación Nº 16 155
____________________________________________________________________________________
Variables Globales.
Se incluyó una nueva variable (ct_orden), con el fin de evaluar el tiempo que se
demora una orden de pedido desde que llega al sistema (Pedido_cliente), has-
ta el momento que el cliente recibe su pedido y se lo lleva (Pedi-
do_cliente_satisfecho). El modulo de variables queda de la manera como se
muestra en la figura 16.8.
Attributes (Atributos).
En la práctica anterior se utilizó el atributo “Att” para almacenar la hora en que
llega cada entidad (Pieza) a la estación Recepción, adicionalmente en esta
práctica se creará otro atributo “Att_orden” para almacenar la hora en que
llega un pedido (Pedido_cliente) a la estación Orden_pedido_cliente, de tal
forma que el modulo de atributos queda como en la figura 16.9.
PROCESSING (Procesamiento).
En seguida se presentan los detalles del modelamiento. En el procesamiento
tenemos:
Move
Entity Location Operation Output Destination Rule Logic
MOVE
WITH
INC wip
Operario
Att=CLOCK()
Pieza Recepción Pieza ZonaMat_dos First 1 OR
Call_inventario_prome
Operator
dio()
THEN
FREE
MOVE
WITH
Call_inventario_prome
Operario
Zona- dio()
Pieza Pieza_2 Pulidora First 1 OR
Mat_dos JOIN 1 Or-
12 Operator
den_kanban
THEN
FREE
MOVE
WITH
Recep-
Orde- Operario
Or- cion_kanb Call_inventario_prome JOIN
n_kanban ZonaMat_dos OR
den_kanban an_pulidor dio() 1
Operator
a
THEN
FREE
MOVE
INC wip2 WITH
WAlT 1O Operario
Pieza_2 Pulidora Call_inventario_prome Pieza_2 ZonaPT_dos First 1 OR
dio() Operator
THEN
FREE
12
Recuerde el significado de este JOIN, la Pieza que se encuentra en Zona_Mat_dos solo podrá continuar
con el proceso de trasladarse a la estacion “Pulidora” una vez se haya unido a la Orden_kanban.
Laboratorio de Simulación Nº 16 157
____________________________________________________________________________________
Destina- Move
Entity Location Operation Output tion Rule Logic
MOVE
WITH
Call_ Operario
Zona-
Pieza_2 ZonaPT_dos inventa- Pieza_2 First 1 OR
Mat_tres
rio_promedio() Operator
THEN
FREE
MOVE
WITH
JOIN 1 Or-
Operario
den_kanban Rectifica-
Pieza_2 ZonaMat_tres Pieza_3 First 1 OR
Call_inventario_pr dora
Operator
omedio()
THEN
FREE
MOVE
WITH
Orde- Recep- Orde- Operario
Call_inventario_pr Zona- JOIN
n_kanban cion_kanban_rectificad n_kanban OR
omedio() Mat_tres 1
ora Operator
THEN
FREE
MOVE
DEC wip2 WITH
INC wip3 Zo- Operario
Pieza_3 Rectificadora WAlT 20 Pieza_3 naPT_tre First 1 OR
Call_inventario_pr s Operator
omedio() THEN
FREE
MOVE
WITH
JOIN 1 Or-
Operario
den_kanban Troquela-
Pieza_3 ZonaMat_cuatro Pieza_4 First 1 OR
Call_inventario_pr dora
Operator
omedio()
THEN
FREE
MOVE
WITH
Orde- Recep- Orde- Operario
Call_inventario_pr Zona- JOIN
n_kanban cion_kanban_troquela n_kanban OR
omedio() Mat_cuatro 1
dora Operator
THEN
FREE
DEC wip3 MOVE
INC wip4 WITH
WAlT 15 Zo- Operario
Pieza_4 Troqueladora Call_inventario_pr Pieza_4 naPt_cuatr First 1 OR
omedio() o Operator
ct=CLOCK()- THEN
Att FREE
Destina-
Entity Location Operation Ouput tion Rule Move Logic
DEC wip
Call_inventar MOVE WITH
Producto
Pieza_4 ZonaPt_cuatro io Pieza_4 JOIN 1 Operario OR
terminado
_promedio() Operator THEN
FREE
INT cant
cant=CONTENTS
(zonaMat_dos)
IF (wip2<=3)
THEN
BEGIN
ORDER 10 Or-
den_kanban
TO
Recep-
cion_kanban_pulidora
IF (cant<=5)
THEN
ORDER N(10,1)
Pieza TO
reception
END
IF (wip3<=0)
Att_orden= THEN
Orde-
Pedi- Recep- CLOCK() BEGIN
n_kanba Producto
do_client ción_kanban_clil Call_inventar First 1 ORDER 5 Or-
n terminado
e ente io den_kanban
_promedio() TO
Recep-
cion_kanban_rectifica
dora
END
IF (wip4<=1)
THEN
BEGIN
ORDER 5 Or-
den_kanban
TO
Recep-
cion_kanban_troquela
dora
END
MOVE WITH
Operario OR
Operator THEN
FREE
Call_inventar
io
DEC wip4
Orde- _promedio() Pedi-
DEC wip
n_kanba Producto JOIN 1 do_client
EXIT First 1 DEC Materia_Prima
n terminado Pieza 4 e_satisfe
CT_orden = cho INC Or-
CLOCK()- den_Satisfecha
Att_orden
Laboratorio de Simulación Nº 16 160
____________________________________________________________________________________
RESULTADOS
El siguiente es el resultado de la simulación despues de 100 hrs y precargan-
do por solo una vez el sistema con una (1) pieza tipo “pieza_2” en Zona-
Mat_tres y una pieza tipo “pieza_3” en ZonaMat_cuatro. La precarga del siste-
ma se realiza teniendo en las estaciones mencionadas, al momento cero de la
simulación, una pieza_2 y una pieza_3 (vea la figura 16.5 en la cual se definie-
ron las llegadas). Además se hace llegar cada 15 minutos un Pedido_cliente a
la estación Recepcion_kanban_cliente.
13
Este es el colchon con el que se esta manejando la materia prima
14
Así que se mantiene al menos un producto terminado listo en inventario para ser entregado.
Laboratorio de Simulación Nº 16 161
____________________________________________________________________________________
ANALISIS DE RESULTADOS.
En las 100 hrs de simulación se realizaron 401 pedidos (ver figura 16.11. repor-
te general), uno cada 15 minutos, comenzando con uno que ya existía en el
tiempo cero. Note que se entregaron 300 pedidos (ver figura 16.10 y 16.11).
Ahora corra la simulación por solo 10 horas (la anterior se corrió 100 hr) y ob-
serve que el tiempo de entrega al cliente se reduce a solo160.41 minutos fren-
te a un tiempo de ciclo del proceso 130.39 (recuerde que cuando se corrió 100
horas fue de 280.15 min). Trate de estimar en la figura 16.13 anterior que el
tiempo de entrega al cliente es de aproximadamente 160 minutos observándo-
lo a las 10 horas de tiempo de simulacion. Explique que es lo que está su-
cediendo.
La gráfica de la tasa promedio del inventario (ver figura 16.15) relaciona las
dos anteriores (figuras 16.12 y 16.14) y muestra que la tasa instantánea del
inventario con respecto al tiempo tiende a estabilizarse después de aproxima-
damente 14 horas en 0.047 piezas/min (ver detalle ampliado en la figura
16.16).
Figura 16.16. Detalle del inventario en proceos dividido por el tiempo de ciclo.
Lo anterior quiere decir que a medida que pasa el tiempo el inventario prome-
dio de las piezas tiende a oscilar alrededor de 8.44 piezas.