1. Traducción de Material Capacitación Simio LLC. Se traduce solamente
las explicaciones, manteniendo los comandos y nombre de las
variables en inglés. www.evirtual.cl
2.
Introducción Objetos Fijos
Standard Library
◦
◦
◦
◦
◦
Source and Sink
Server
Combiner and Separator
Resource
Workstation
Workshop – Registrarse en Agony Airport
3.
Fixed: Una unbicación fija.
Link: Ruta entre dos nodos.
Node: Intersección entre links.
Agent: Movimiento sin restricciones a través
del espacio libre
◦ Entity (Agent): Se mueve a través de links, entra en
los objetos.
◦ Transporter (Entity): Traslada agentes, entities, u
ptros transporters
4.
Tipo de objeto básico, normalmente usado
para construir objetos y modelos.
Permanece en una ubicación estática durante
la simulación.
Puede usar recursos capabilities
Muchas de nuestras bibliotecas están
construidas en Fixed.
5.
Entidades pueden viajaren en
networks, en espacios libres, o visitar
objetos fijos.
La entidad que visita se ubica en una
station dentro del objeto.
Entidades entran/salen de los objetos
por nodos asociados.
Una station tiene una capacidad que
limita la transferencia hacia las
station.
Entidades esperan en la EntryQueue
para ser transferidas de a una a la vez
en la station. Una vez que comiza la
transferencia en las estaciones, ellas
residen en la cola Contents.
Network
Input
Server
InputBuffer
Processing
EntryQueue
Contents
Free Space
Object
Station
A
OutputBuff
er
Output
Station
B
Network
6.
Cualquier objeo se puede declaar como
un recurso
Los objetos recursos tienen una
capacidad que puede ser capturada por
múltiples objetos (entidades).
Solicitudes de Captura (Seize) se colocan
en una cola de asignación del objeto.
Una solicitud de captura puede ser
aceptada/rechazada por el objeto
recurso.
Un seize puede estar acompañado por
un requerimiento de visita – estos son
manejados por los objetos recursos.
El Server, Combiner, and Separator
proveen para un recurso secundario para
procesamiento, como también para
capturas independientes en las
liberaciones – On Entering, Before
Processing, After Processing.
Resource
Object
C
A
AllocationQueue
B
A and C
are
waiting to
seize.
B has
seized and
is waiting
for a visit.
VisitRequestQueue
Seizing
Object A
Seizing
Object C
Seizing
Object B
7. Source
OutputBuffer
Outpu
t
Networ
k
Entidades dinámicas entran por la source; esperan en el
OutputBuffer station para transferir a la red en el nodo
Output.
Properties incluyen Entity Type (instance), Arrival
Mode, Maximum Arrivals, y Entities per Arrival.
Arrival Mode incluye Interarrival Time, Time Varying Arrival
Rate, On Event, and Arrival Table.
Entity symbols se pueden relativizar al colocar la instancia
entidad, agregar símbolos adicionales, y establecer
Randomize Symbol en True.
9. Server
Network
Input
InputBuffer
Processing
OutputBuffe
r
Outpu
t
Network
Entidades que llegan capturan/liberan (seize/release) el Server.
La Cola del Server Allocation Queue está ranqueada; selección está
basada en el primero de la cola o por un Dynamic Selection Rule.
El Server tiene una Fixed capacity o sigue un Work Schedule.
Fallas incluyen Calendar Time Based, Processing Count Based, y
Event Count Based.
Recursos secundarios durante el procesamiento son individualmente
seized/released.
11. El edificio de embarque en el aeropuerto de
Agony tiene una área de registro y necesita
conocer cuántos agentes debe tener
funcionando.
Arrive
Ticket Counter
Depart
12.
Un máximo de 800 pasajeros por día llegan
a un promedio de 1.2 minutos entre ellos
(exponencial) y requieren de - - 3 minutos
(uniforme) para caminar hasta el registro.
Registro requiere 1 a 10 minutos (uniforme)
de tiempo de servicio.
Compare el sistema usando 5, 6 y 7 agentes
para atender.
13.
Representar Registro como un Server.
Right Click derecho en la Initial Capacity y
crear una nueva propiedad referenciada.
Crear un experimento con respuestas
para el tiempo en el sistema y la
utilización de los agentes.
Define escenarios con 5, 6 y 7 agentes de
venta.
Posibles mejoras:
◦ Use lista de símbolos para los pasajeros para
agregar variedad en la animación.
14.
Un grupo de entidades se
pueden agrupar y ser
transportadas por una
entidad superior (parent).
Las entidades agrupadas
pueden desagruparse
individualmente del grupo.
Entidades Parent también
pueden agruparse.
Members are
grouped into
a batch.
BatchQueue
Parent Entity
carries
members in
the Batch
queue.
18.
Entrega un objeto genérico para usarse en
restringir el flujo de la entidad.
No permite el paso por un objeto, pero puede
ser capturado y liberado .
Incorpora confiabilidad (reliability) (fallas)
Puede recopilar estadísticas de datos claves
del proceso.
19.
Static Ranking & Selection
◦ HVF or LVF of State or Expression
◦ Ex: Priority, DueDate, Severity
Dynamic Ranking & Selection
◦ Evaluated each time resource looks for work
◦ Ex: Critical Ratio, Sequence-dependent setup
The Evaluating Seize Request add-on process
◦ Resource may choose to remain idle
21.
Setup Time Type puede ser
Specific, Change Dependent, o
Sequence Dependent.
Tiempos dependientes son
dinámicamente calculados
basados en un Operation
Attribute (normalmente una lista
de valores).
Change Dependent tiene dos
valores que corresponden a
Same y Different valores del
Operation Attribute.
Sequence Dependent tiene una
matriz de valores para todos los
pares de cambios.
Changing from
Small to
Medium incurs a
setup time of
6.2.
From/
To
Small
Medium
Small
0.0
15.3
Large
21.3
Medium
6.2
Large
11.7
0.0
4.8
14.6
0.0
Changeover Matrix
22.
Material puede ser requerido al
inicio de cada ´batch de
producción, y ser producido al
final de cada batch de
producción.
Típicamente el Material
Consumed está especificado
como el Bill of Material, y el
Material Produced está
especificado como el Material.
El Produced Material Transfer
Time especifica el tiempo que
demora antes de dejar el
material producido disponible
para el consumo.
The bill defines
the component
parts required
to produce the
material.
Bike
Seat
Frame
Wheels
Handlebar
23.
Recurso Secundario puede ser
requerido por una fase Specific,
All, o All But Specific .
Un recurso secundario puede ser
un recurso específico o
seleccionado desde una lista
usando un Selection Goal y
Selection Condition.
Un recurso secundario puede ser
un objeto Recurso fijo, un Vehicle
object, o un Worker. Un Worker
es una entidad con lógica modela
para respondeer los
requerimientos de una visita.
Only used
during
Processing
Used for all
phases.
Used for all
but
Teardown
24.
Standard Library Fixed Objects
◦ Source, Server, Sink, Combiner, Separator, Resource
, Workstation.
A “main model” is a Fixed Object.
Notas del editor
Objects are built as one of 6 basic types that come with a core behavior that can be further enhanced by user-defined processes.Entities behave like agents – but add additional capability to move on networks of links.Transporters behave like entities – but add additional capability to pickup, carry, and drop-off other agents (or entities or transporters).The user can build many classes from these 6 core types.
Many Standard Library objects make use of the concept of a station. A station is used to model a constrained location within an object. Entities can transfer from station to station within an object. --Only one entity can transfer into a station at a time, and this transfer can require time to execute. A station can also have a fixed capacity that will limit the number of entities that are in process at the station. --Whenever a station is at its capacity the station will block any attempts by other entities to transfer into that station.<DO SLIDE BUILD TO SWITCH PICTURES>As an illustration the Server object employs three stations named InputBuffer, Processing, and OutputBuffer. --An entity first enters the Server at the InputBuffer station, then moves to the Processing station, and then finally moves to the OutputBuffer station. Each station in Simio has two internal queues named the EntryQueue and Contents. --EntryQueue holds entities that are waiting to transfer into the station, and --Contents queue holds entities that are currently in process at the station. Server1.Processing.Contents denotes the queue of entities in the Processing station at Server1Server1.Processing.EntryQueue denotes the queue of entities waiting to transfer into the Processing station. Vehicle object employs a station named RideStation to hold the entities that are currently riding on the Vehicle.
Many Standard Library objects also declare themselves as a resource. --A resource has a changeable capacity that can be seized and released by other objects. --The object also as a queue named AllocationQueue that holds a prioritized list of other objects that are waiting to seize it. --When capacity becomes available it can be allocated ----Statically based on this prioritized list, or ----Dynamically based on user-customizable rules (makes for very flexible resource allocation)--As we will see later, objects can implement logic to either accept or reject a seize attempt by another object. --When an object is seized a visit request can also be made to have the seized object travel to a specific location. ----In this case the request is placed in the VisitRequestQueue for the object and the object can then decide when and if to visit the requesting object. ----Seizing and moving a resource object requires cooperation between the seizing object (e.g. a workstation) and the object being seized/moved (e.g. an operator). The fixed objects, nodes, and the vehicle in the Standard Library are declared as resources. You can also add entities and transporters to your project and declare them as resources. The Standard Library also contains a fixed object named Resource that is specifically provided for use as a stationary (non-moving) resource object for seizing and releasing. You can also create a pre-defined entity model called an Operator that has pre-defined logic for managing visit request and is very useful for creating moving workers.
The Source has the main Source object plus the associated output node (type TransferNode) named Output. You independently select and edit both the main Source object and the associated output node. The Source object has an OutputBuffer station that holds entities waiting to exit through the associated output node. Once an entity transfers to the network through the output node it departs the OutputBuffer station. The Entity Type specifies the type of Entities created by the Source. The Maximum Arrivals limits the number of arrivals that are generated by the Source, with the specified number of Entities Per Arrival. The Arrival Mode property governs the pattern of arrivals. --Interarrival Time (Default) switches in properties for specifying ----Time Offset for the first arrival ----Interarrival Time for subsequent arrivals --Time Varying Arrival Rate is used to model a non-homogenous Poisson arrival process---- Uses a Rate Table that is defined in the Data window. ---- Rate Table is a set of equal size intervals that specify the mean arrival rate during that interval. You can specify the number of intervals as well as the interval size. --Arrival Table generates a specific set of arrivals based on discrete arrival times specified in a table that is defined in the Data window.----Useful for validation and scheduling applications --On Event mode creates a new entity every time an event fires
The Sink object is the counterpart to the Source object – it destroys arriving entities and removes them from the system. The Sink is comprised of the main Sink object plus the associated input node (type BasicNode) named Input. Only one entity at a time can be processed by the Sink. The Sink has InputBuffer station that holds the entity being processed for the specified TransferIn Time. Entities are transferred from the network thru the Input node and into the InputBuffer station. Comes with an attached queue for animating the entity in the InputBuffer station. Automatically records the average time in system for entities that are destroyed.
As noted earlier the main Server is modeled with three stations: InputBuffer, Processing, and OutputBuffer. <Explain blocking on both input and output>Both the InputBuffer and the OutputBuffer stations can have their capacities set to zero.--If OutputBuffer capacity is 0 entity completing Processing will wait in Processing to move through output node into the network. --If InputBuffer capacity is 0 entities entering from the network through input node proceed directly to Processing. ----If Processing station is at capacity it will block entities attempting to enterInputBuffer is ranked based on the Ranking Rule property, that can be specified as First In First Out, Last In First Out, Smallest Value First, or Largest Value First (e.g. you could rank the queue based on processing time, priority, or due date). If a Dynamic Selection Rule is specified, then all entities in the queue are considered based on the specified dynamic rule.--More flexible and powerful (but slower) because it re-evaluates the expression for each entity at the time each decision is made--An expression for tardiness (due date - current time) would use the current time when making this decision, not que arrival time.--Three campaign rules make selections in an increasing or decreasing order based on a specified expression. ----E.g. a painting operation moving from light to dark colors, and then starting over with the lightest color.TransferIn Time specifies time required for an entity to transfer into the Server object. --Only one entity may transfer at a time, and processing of the entity may not start until this transfer is completed. Processing Time property specifies the time required to process the entity at the Processing station.Can model a single capacity, multiple capacity, or capacity based on a schedule.The failures supported include Calendar Time Based, Processing Count Based, and Event Count Based. Has animated queues for the InputBuffer, Processing, and OutputBuffer.
Wev’e used these already, but lets explore some additional features:Source propertiesServer propertiesBuffers and blockingSink propertiesStatistics?
Batching assumes that a “parent entity” (e.g. a box or a pallet) exists to carry the batch of “member entities” (e.g. a bottle, part or box)Batching may be hierarchical – parents may be members of other batches Refer to SimBitRegeneratingCombiner for an example of automatic pallet creation.
A good way to think about the Combiner is that it’s a special purpose Server with two input nodes and special processing logic for batching. <Explain similarities and difference to Server>Additional properties for the Combiner include the Batch Quantity and Matching Rule. A batch is formed by selecting the number of members specified by the Batch Quantity from the member queue, and attaching them as a batch to a single parent entity selected from the parent queue. Matching Rule options include Any Entity, Match Members, and Match Members and Parent. --Any Entity : entities are selected in the order that they are ranked in the queue. --Match Members: a batch can only be formed if the member entities all have the same value for the Member Match Expression. --Match Membersand Parent : a batch can only be formed if the member entities all have the same value for the Member Match Expression, and there is a waiting parent entity with the same value for the Parent Match Expression. The batched members are carried by the parent entity in a queue named BatchQueue which can be animated on the parent entity.
Used to model a process that separates batched members from a parent entity, or makes copies of an entity.Essentially the Separator is a mirror image of the Combiner. <Compare to Server and Combiner>Arriving parent entities transfer from the network thru the Input node to the InputBuffer station. The entities are then split apart or copied in the Processing station--parent entities wait in the ParentOutputBuffer station to depart into the network through the ParentOutput node--member entities wait in the MemberOutputBuffer station to depart to the network thru the MemberOutput node. Separation Mode--Split Batch : Split Quantity entities are removed from the parent entity’s BatchQueue----Split Quantity defaults to the number of members in the BatchQueue. --Make Copies : Copy Quantity members are created by cloning the parent entity.
Combine parent plus 2 members – process – then separate parent from members.Discuss other uses for combiner/separator.
Discuss resource properties here (if not already covered)Capacity TypeCapacity (talk about use with station)Ranking Rule/Ranking Expression (defer Dynamic to smart resources topic)Discuss Seize & Release steps, particularly owner typesDiscuss use with Server by adding a Seize to Processing and a Release to Processed Add-on triggers.
Dynamic Ranking Rule/Selection Expression (e.g. Critical Ratio is time remaining to due date/work remaining)(Seq-dependent setup could choose based on what was produced last (minimal setup))Reject seize request by setting token.ReturnValue = -1 (or any number less or equal to zero)Caution – Dynamic executes slower, use with discretion.
Similar to a Server with capacity one, except that it models the Processing station in far more detail. Processing station is represented by an operation that is divided into three distinct activities: SetupActivity, ProcessingActivity, andTeardownActivity.The entities passing through the Workstation represent a production lot, where the number of items in the lot is specified by the Operation Quantity. There is a single setup activity required before starting production for the lot, and a single teardown activity performed once the production lot is completed. During processing the production lot may be divided into smaller production batches that are sequentially processed.By default the entire production lot is processed as a single batch, however you can also specify a smaller batch size using the Processing Batch Size property.
The time required for the SetupActivity is determined based on the Setup Time Type, which can be specified as Specific, Change Dependent, or Sequence Dependent. --Operation Attribute is an expression evaluated for the entity that typically involves one or characteristics (e.g. color, size, etc.) that are selected from a list. ----For Change Dependent setup we have two possible setup times – one if the Operation Attribute expression remains the same (e.g. same color as last operation), and one if this value changes. ----For Sequence Dependent setup the time is given by a Changeovers matrix that is defined in the Data window.
--Each batch that is processed can both ----consume materials at the start of processing, and ----produce materials at the end of processing. --Materials have an Initial Quantity and a Bill of Material that defines a list materials and quantities required to produce each unit of the material (e.g. a material named Bike might have a bill that includes 2 Wheels, a Frame, a Fork, etc.). --The material that is consumed or produced can be specified as either a single Material (e.g. Bike), or as the Bill of Materials (e.g. the bill for Bike).
Secondary Resources lets you define additional resources required during one or more activities.--For example you might require an operator during setup and teardown, and a tool during the entire operation. --Specify a specific resource or select a resource from a list using a selection goal and condition. --In the case of a moveable resource (e.g. a Vehicle) you can request that the resource visit a specific node before the activity can begin. --For simple fixed resources you can place instances of the Resource definition into your model and employ these as secondary resources.