capítulo 06 uso de tablas de datos
DESCRIPTION
TRANSCRIPT
![Page 1: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/1.jpg)
Aprender Simio
Capítulo 6Manejo de Tablas de Datos
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
![Page 2: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/2.jpg)
Temario Rate Tables, Function Tables
◦ Workshop – Outpatient Registration Data Tables
◦ Workshop – Data Import Sequence Tables, Arrival Tables
◦ Workshop - Sequences Work Schedules, Lists, Changeovers
◦ Workshop – Job Shop
![Page 3: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/3.jpg)
Data Window Crear yeditar datos que van a ser usados en
el modelo. Componente de Data incluye:
◦ Function tables◦ Rate tables◦ Data tables◦ Sequence tables◦ Schedules◦ Changeovers◦ Lists (in Definitions window)
![Page 4: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/4.jpg)
Modelamiento de llegadas Si las llegadas son independientes y
aleatorias, ellas siguen un proceso Poisson.◦ La cantidad de llegadas en un tiempo fijo es
Poisson.◦ El tiempo entre llegadas es exponencial.
En algunos casos la tasa de llegada puede variar en el tiempo – Simio soporta llegadas lineales sucesivas(step-wise) usando una Rate Table.
![Page 5: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/5.jpg)
Rate Table Una tabla que contiene tasas especificadas
por el usuario a través de intervalos fijos de tiempo (e.g. cada hora).
La cantidad de intervalos y tamaño de cada intervalo puede ser establecido por el usuario.
Es usado por el elemento Source object/Timer para generar entidades/eventos con una tasa variable en el tiempo.
Distribuciones exponenciales No estacionarias. (Arrival Tables discussed later)
![Page 6: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/6.jpg)
SimBit: Rate Table SourceWithRateTable
◦ Cambia tasas de llegada en el tiempo
![Page 7: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/7.jpg)
Function Table
Dado x, calcula f(x) Sintaxis: Function.TableName[X_Expression] Translation:
◦ Lookup◦ Interpolación entre valores◦ Level extension de extremos.
![Page 8: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/8.jpg)
Modelado de Curvas de Aprendizaje En algunos casos una operación puede ser
más eficiente en el tiempo. La Function Table puede ser usada para
definir el tiempo de una tarea (o un parámetrode una distribución) que cambia en el tiempo o basada en la contabilización de operaciones completadas.
Function tables se pueden usar para cualquier f(x), no solamente basada en el tiempo.
![Page 9: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/9.jpg)
Learning Curve Example
Source Server
Sink
10/Function.LearningCurve[TimeNow]
![Page 10: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/10.jpg)
Workshop – Outpatient Registration Pacientes llegan a las instalaciones de salida
según los siguientes turnos: (tasa promedio/hora):
Tiempo de registro (minutos) varía continuamente durante el día de la siguiente manera:
7-9 9-11 11-1 1-3 3-5
20 25 15 10 5
Before 8 am 9 am Noon 4 and after
1.5 3 5 2.5
![Page 11: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/11.jpg)
Workshop Tips - Outpatient Use RateTable
◦ 5, periodos de 2 horas Inicie la simulación a las 7:00
◦ TimeNow is 0 at 7:00 Use Function Table llamada RegistrationTime
◦ Use TimeNow como variable X Server Processing Time
◦ Function.RegistrationTime[TimeNow]
![Page 12: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/12.jpg)
Data del Modelo
ExternalData
SimioModel
Data is imported and held in memory for
direct and fast access by the model.
Los modelos normalmente tienen una gran cantidad de datos que describen los diferentes objetos y entidades que se mueven a tavés del sistema.
No es rápido ni conveniente accesar repetidamente a los datos externos durante la simulación. Por eso Simio maneja los datos en memoria para un rápido acceso.
Simio puede representar datos en tablas simples o en conjunto de datos completos con múltiples relaciones.
El esquema de las tablas está definida por el usuario.
![Page 13: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/13.jpg)
Tables Las Tables tienen columnas y filas. Las
columnas son especificadas como tipos de propiedades fundamentales. Las Filas pueden ser referenciadas por números o por la fila activa que está asignada a un objeto
Una tabla de secuencia es una tabla con una columna Sequence, agragada para especificar la ruta de una entidad.
Un valor de una tabla puede ser referenciado por la fila y la columna usando la sintaxis:
TableName[RowNumber].ColumnName
Un objeto puede tener una referencia activa hacia una fila de una tabla. An object may have an activeEn este caso un valor de la tabla se referencia como:
TableName.ColumnName
A column is defined by a
strongly typed property.
A row may be referenced by an object or
entity.
![Page 14: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/14.jpg)
Standard PropertiesProperty Type DescripciónReal Un valor constante real: e.g. 132.7Integer Un valor constante entero: e.g. 34 or -27Boolean Una caja de Verdadero/Falso.Expression Una expresión válida de Simio que considera una o más variables: e.g. (X + Y) / 2.3
Date Time Un valor de fecha con un selector de calendario: e.g. 1/1/2010 12:00:00 AMString Una cadena de caracteres válida: e.g. FredEvent Un evento que está definido en el contexto del modelo:
e.g. ModelEntity.TransferredList Un valor seleccionado desde una lista que está referenciada por la propiedad: e.g.
RedEnumeration Un valor de una enumeración que está referenciada por la propiedad:
e.g. FirstInFirstOutRate Table Una tabla de tasas que está definida por el modelo: e.g. ArrivalPatternTable Una tabla de datos que está definida por este modelo: e.g. ProductTableSequence Table Una tabla de secuencias que está definida para este modelo: e.g. RoutingTable
State Un estado que está definido para este modelo: e.g. ReworkCountSchedule Un programa (horario) que está definido para este modelo: e.g. OverTimeShift
Selection Rule Una regla de selección dinámica: e.g. Smallest Value First
![Page 15: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/15.jpg)
Element and Object References Una propiedad puede ser una referencia a
un elemento o a un objeto. Un element reference puede ser usado
para especificar material, estadísticas, u otros tipos de elementos por sus nombres.
Un object reference se puede usar para especificar un objeto específico o una lista de objetos.
![Page 16: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/16.jpg)
SimBit: Tables
SelectEntityTypeFromTableCrear una entidad cuyo tipo de
entidad está especificado en una tabla.
Seleccionar el tipo basado en un mix de productos definidos por una tabla.
Usar un campo de una tabla para el tiempo de procesamiento.
![Page 17: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/17.jpg)
Example: Multiple Entities
Customer Type
Mix (Percentage)
Processing Time
Standard 60 Random.Triangular(3,4,5)Simple 15 Random.Triangular(1,2,3)Complex 25 Random.Triangular(7,9,12)
Source Server Sink
Processing time depends
upon customer
type.
Customer mix
defined in table.
![Page 18: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/18.jpg)
Relational Tables Relational Tables son tablas que tienen
definidos relaciones entre ellas en lugar de existir independientemente.
Las relaciones están formadas al usar las características deTable Key y Foreign Key.
Las tablas relacionales incluyen un Master-Detail view, lo que permite que las relaciones entre las tablas puedan ser vistas.
![Page 19: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/19.jpg)
Keys and Foreign Keys Usted puede especificar una columna
como una key. Los registros en una columna key deben ser únnicos.
Una tabla puede agregar referencias como columnas foreign key. Una referencia foreign key está especificada al usar la sintaxis: TableName.KeyColumnName
Una referencia foreign key establece una relación 1-1, 1-N, o N-1 entre las tablas.
Una fila de referencia activa, automáticamente se propaga a través de las relaciones por lo que permite un acceso directo a las columnas de referencias.
Las relaciones de las tablas pueden ser anidadas a un nivel cualquiera.
DueDate
Color Size
3/24 Red Large
3/27 Red Small
3/28 Blue Large
Size Cut Time
PolishTime
Small
Medium
Large
Products
Orders
This foreign key reference
defines an N-1 relation.
Size is a key column with
unique values.
![Page 20: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/20.jpg)
Relational Tables Example SimBit – UsingRelationalTables
![Page 21: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/21.jpg)
Data Table Import/Export Soporta todos los tipos de campos como
cadenas (strings). Cualquier error se ve después de la
importación Comenzar con Export para tener el formato
apropiado. Importar reemplaza el contenido de las
tablas
![Page 22: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/22.jpg)
Workshop - Data Import
Start with SimBit (SelectEntityTypeFromTable)
Export data to CSV file Add new EntityType in model Edit CSV file to change product mix and
processing time. Import CSV file and run model.
![Page 23: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/23.jpg)
Sequences Entidades y vehículos necesitan
frecuentemente seguir una ruta en particular:◦ Registration – Triage – Exam – Treatment◦ Downtown – Midtown – Uptown (repeat)
Path puede varias por entity/vehicle◦ Patient severity◦ Vehicle zone, or local/express
![Page 24: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/24.jpg)
Sequence Table Una tabla de datos con una columna de
destinaciones para especificar el destino del ruteo.
Es usada cuando se rutea desde un nodo “By Sequence”.
La sequence table a seguir puede definirse en una instancia entidad, o definirse/resetearse (set/reset) al usar la SetTable step.
La destinación se puede especificar como Node, ObjectName, o Node@ObjectName.
![Page 25: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/25.jpg)
SimBit: Sequences EntityFollowsSequence
◦ Single entity type EntityFollowsSequenceMultiple
◦ Multiple entity types each following own sequence◦ Don’t need to use sequence for every move
EntityFollowsSequenceWithTable◦ Entity’s job table refers to its sequence data
![Page 26: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/26.jpg)
Ejemplo: Separate Sequence Tables
Source
Server1
Sink
Server3
Server2
20% Part A 30% Part B 50% Part CStation Process TimeServer1 Uniform(.5,.9)Server2 Triangular(.5,1.1,1.2)Sink
Station Process TimeServer3 Triangular(.5,.8,1.2)Server2 1.5Server1 1Sink
Station Process TimeServer2 Triangular(.5,1.2,1.6)Sink
![Page 27: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/27.jpg)
Ejemplo: Single Sequence Table
Sequence
Sequence Type
Process Time
Server1 A Random.Uniform(.5, .9)Server2 A Random.Triangular(.5, 1.1, 1.2)Sink1 A 0.0Server3 B Random.Triangular(.5, .8, 1.2)Server2 B 1.5Server1 B 1Sink1 B 0.0
Part Type
Product Mix
Sequence Type
PartA 20 APartB 30 BPartC 50 C
Key column.
A foreign key reference to the
Job Table creating a N-1 relation.
Job TableRoutings
See SimBit – EntityFollowsSequenceWithTable2
![Page 28: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/28.jpg)
Arrival Table Una tabla que contiene llegadas específicas. Usadas por el objeto Source (no Timer
element) para generar entidades con tiempos de llegada específicos conocidas.
Pueden representar entidades individuales o batches.
Especialmente útilies para la validación de de modelo y aplicaciones con calendarizaciones.
![Page 29: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/29.jpg)
Workshop - Sequences
Create a transportation network with 2 Sources and 2 Sinks and a Vehicle that moves between them sequentially (e.g. 1-2-3-4 …)
![Page 30: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/30.jpg)
Workshop Tips - Sequences
![Page 31: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/31.jpg)
Work Schedules (Programación Trabajo) Define un programa de trabajo que puede
ser referenciado por un objeto (e.g. Server or Worker) para controlar su disponibilidad o capacidad en el tiempo.
Comprende de un ciclo repetitivo fijo, con excepciones superimpuestas.
El largo del ciclo repetitivo puede definirse por el usuario.
La capacidad del programa por defecto es cero.
![Page 32: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/32.jpg)
SimBit: Schedule ServerFollowsOddSchedule
◦ 45 minutes on, 15 minutes off ServerFollowsDailySchedule
◦ 8 hour daily shift with 30 minute break WorkerUsesWorkSchedule
◦ 3 daily breaks scheduled
![Page 33: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/33.jpg)
List Usada para crear un conjunto de strings,
objects, nodes, o transporters. Object, node, y transporter lists se usan por
las etapas cuando se hace una selección desde una lista de ítemes.
String lists se usan para definir List Properties con valores definidos por la lista (e.g. Color con valores Red, Green, Blue), y para definir el estado “desde – a” (from-to) en una matriz de transiciones.
Se referencia al usar la sintaxis List.Listname.Value
![Page 34: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/34.jpg)
SimBit: Lists SelectingResourcefromList
SelectEntityColorFromStringList
Within Seize step
Definitions window,
Lists panel
![Page 35: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/35.jpg)
Changeovers (transiciones) Usada para modelar los tiempos de las
actividades dependientes de las secuencias (e.g. setup).
El valor está basado en el valor del estado de transición anterior – siguiente ( previous – next) (e.g. size).
From/To Small Medium Large
Small 0 11.4 14.5
Medium 2 0 16.3
Large 45 27.3 0
Previous
Next
![Page 36: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/36.jpg)
SimBit: Changeovers WorkstationWithSequenceDependentSetup
◦ Use Colors list and Color state◦ Changeover matrix◦ Workstation with changeover option
![Page 37: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/37.jpg)
Workshop: Simple Job Shop Arrivals via a rate table. Three part types – routings/data. Servers follow a schedule.
![Page 38: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/38.jpg)
Workshop: Simple Job Shop Crear cuatro centros de trabajo con tres
tipos de partes. Use una sequence table para definir las
etapas del trabajo y los tiempos de procesamiento.
Use una job table para crear los tipos de partes aleatoriamente y los tiempos de proceso.
Controlar los tiempos de llegada usando una rate table
![Page 39: Capítulo 06 uso de tablas de datos](https://reader033.vdocuments.net/reader033/viewer/2022061212/54952a42b47959424d8b4caa/html5/thumbnails/39.jpg)
Workshop: Simple Job Shop Todos los servers are scheduled ON desde 8:00am–
12:00pm & 1:00pm-5:00pm. Batches de 20 partes llegan al inicion de cada hora
desde las 6 am al medio día (inclusive), y 3 pm Partes 1, 2, and 3 son generadas en proporción del
20%, 30%, y 50% respectivamente. Cada tipo de parte tiene diferentes secuencias:
◦ Parte1: Source -> Server1 -> Server2 -> Server3 -> Server4 -> Sink
◦ Parte2: Source -> Server2 -> Server3 -> Server4 -> Sink◦ Parte3: Source -> Server3 -> Server4 -> Sink
Server 1-4 tiempos de procesamiento son 4, 3, 2, & 1 minuto respectivamente.