SIMULACION II

II013, PLAN 2004

CARÁTULA DE LA MATERIA
Datos Generales
Nombre de la Materia ......................................................................... Simulación II Sigla / Clave .......................................................................................... II013 / 21087 Tipo ....................................................................................................... Teórica, 4 HSS Créditos .................................................................................................................... 8 Prerrequisitos ................................................................... Simulación I (II012; 21086) Coordinación ............................................................................ Ingeniería Industrial

Objetivos Generales
Al finalizar el curso, el alumno será capaz de: · · · · Analizar un sistema de producción y/o servicios. Generar un modelo matemático que represente adecuadamente dicho sistema utilizando herramientas computacionales. Resolver el modelo utilizando medios probabilísticos y sustentarlos estadísticamente. Interpretar los resultados del modelo para una adecuada toma de decisiones.

Temas Principales
· · · · Introducción a Simulación. Elementos principales para simular. Elaboración del modelo y experimentación. Ejemplos y solución de aplicaciones.

Bibliografía General
· · · · · · Kelton, Sadowski, Sturrock. “Simulation With Arena”, 4rd. ed., USA, McGraw-Hill, 2007. Levine, Berenson, Stephan. “Statistics for Managers” Using Microsoft Excel, 2nd. Ed., USA, Prentice Hall, 1999. Winston Wayne. “Simulation Modeling using @RISK”, USA, Duxbury, 2001. Rios David, Rios Sixto, Martin Jacinto. “Simulación: Métodos y aplicaciones”, México, ed. Alfaomega, 2000. Coss-Bu Raul. “Simulación”, México, ed. Limusa, 1997. Azarang, García Duna. “ Simulación y análisis de Modelos estocásticos”,México, ed. McGraw-Hill, 1996.

ELABORADO POR: JUAN BALAS COJAB

Página 1 de 41

SIMULACION II

II013, PLAN 2004

INFORMACIÓN GENERAL
Importancia del Curso
La simulación de procesos y sistemas complejos ha cobrado fuerza como herramienta para la toma de decisiones en la Ingeniería Industrial ya que con el avance tecnológico, se ha convertido en un método económico. Así mismo, permite generar distintos escenarios en una realidad que cambia de manera impredecible.

Habilidades a Desarrollar
Identificar distintas distribuciones de probabilidad que representen el sistema. Plantear un modelo a partir de la realidad. Evaluar distintas variables en un sistema y su afectación. Conocer distintas herramientas de tecnología para generar simulaciones. Aprender el uso de Arena como programa de simulación. Aprender el uso de otros programas de simulación de alto nivel.

Procesos Valorativos y Actitudes a Promover
La capacidad para identificar las variables, el proceso y los resultados de un sistema a modelar. La habilidad de sintetizar con un programa de PC el modelo a estudiar. El sentido de ética y responsabilidad profesional en el análisis y presentación de resultados para la toma de decisiones.

Método de Evaluación
CONCEPTO EXAMEN # 1 EXAMEN # 2 EJERCICIO EN CLASE PARTICIPACION PROYECTO FINAL: Trabajo escrito Presentación TOTAL 15% 15% 100% Desde 9.40 hasta 10.0 es 10 VALOR 20% 20% 20% 10% REDONDEO DE LA CALIFICACION FINAL Desde 0.00 hasta 5.99 es Desde 6.00 hasta 6.69 es Desde 6.70 hasta 7.59 es Desde 7.60 hasta 8.49 es Desde 8.50 hasta 9.39 es 5 6 7 8 9

ELABORADO POR: JUAN BALAS COJAB

Página 2 de 41

SIMULACION II

II013, PLAN 2004

Temario Desarrollado
· Introducción a Simulación. · Que es. · Aplicaciones. · Ventajas y desventajas. · Antecedentes. · Que es un modelo y sus tipos. · Pasos generales en simulación. Elementos principales para simular. · Números aleatorios y pruebas de bondad. · Ajustes a funciones de probabilidad. · Distribuciones de probabilidad. · Factores a considerar en el desarrollo de la simulación. Elaboración del modelo y experimentación. · Proceso de análisis del modelo y sus componentes. · Opciones de programas para modelar el sistema. · Codificación del modelo en un programa específico. · Bases para el uso de Arena. · Obtención de resultados y validación. · Experimentación y optimización. Ejemplos y solución de aplicaciones.

·

·

·

Notas Sobre la Clase
La clase inicia 6:00 PM. y termina a las 8:00 PM. Las fechas establecidas en el calendario no son modificables. Cualquier entrega posterior a la fecha establecida puede ser entregada pero no tendrá una calificación aprobatoria. La presentación es tomada en cuenta así como la ortografía, la redacción y todo lo que acompaña un trabajo escrito. Todas las tareas y trabajos (incluyendo el final) deberán de entregarse sin engargolar ni engrapar, pueden usar clips y pinzas con o sin fólder. También en todos los trabajos y tareas las portadas deberán de estar dentro de la primer página de contenido del trabajo ( en el proyecto final, esto es opcional ) y si apoyo el uso de hojas de segundo uso ( menos en el proyecto final y siempre y cuando esté rayado el contenido anterior ). Tomo lista de manera aleatoria y puede ser al inicio, intermedio o al final de la clase.

ELABORADO POR: JUAN BALAS COJAB

Página 3 de 41

SIMULACION II

II013, PLAN 2004

Leer los temas que se van a revisar en clase es importante para llevar aprovechar al máximo el tiempo de clase. Cuando no leen puedo hacer exámenes sorpresa. Es responsabilidad de ustedes verificar las tareas que deben entregar, ya que se encuentran marcadas en el calendario. Es responsabilidad de ustedes el localizar y contactar una empresa que les permita hacer sus tareas, trabajos y proyecto final de la misma. Dicha empresa deberá de permitirles sacar fotografías así como información de la empresa y de los procesos estudiados. Lo anterior, con fines educativos exclusivamente. Dos asuntos importantes: Cualquier mail que manden que tenga VIRUS, es automático CERO y quedarán prohibidos en mi lista direcciones para recibir correos. Requiero que me manden su telefono por mail ( por si cualquier cosa ).

Calendario de Clase
# 1 2 3 4 FECHA L 7 Ene M 9 Ene L 14 Ene M 16 Ene TEMA Introducción: Que es – Modelos Introducción: Pasos – Métodos NO HAY CLASE NO HAY CLASE Elementos: Números Aleatorios – Pruebas – Distribuciones – Tamaño de Muestra – Variabilidad y elaboración: Proceso – Opciones Elaboración: Codificación – Resultados Validación – Experimentación Programa Arena Programa Arena NO HAY CLASE Programa Arena Programa Arena Entrega de anteproyectos Finales Envío de Teléfono por mail ACTIVIDAD

5

L 21 Ene

6 7 8 9 10 11

M 23 Ene L 28 Ene M 30 Ene L 4 Feb M 6 Feb L 11 Feb

ELABORADO POR: JUAN BALAS COJAB

Página 4 de 41

SIMULACION II 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 M 13 Feb L 18 Feb M 20 Feb L 25 Feb M 27 Feb L 3 Mar M 5 Mar L 10 Mar M 12 Mar L 17 Mar M 19 Mar L 24 Mar M 26 Mar L 31 Mar M 2 Abr L 7 Abr M 9 Abr L 14 Abr M 16 Abr L 21 Abr M 23 Abr L 28 Abr Solución de Aplicaciones Básicas Solución de Aplicaciones Básicas Solución de Aplicaciones Básicas Dudas para Examen 1 Examen 1

II013, PLAN 2004

Solución de Aplicaciones Intermedias Solución Examen 1 Solución de Aplicaciones Intermedias Solución de Aplicaciones Intermedias NO HAY CLASE NO HAY CLASE NO HAY CLASE Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Solución de Aplicaciones Avanzadas Dudas para Examen 2 Examen 2

Revisión parcial de proyectos finales Revisión parcial de proyectos finales Revisión parcial de proyectos finales Revisión parcial de proyectos finales

Entrega de Proyectos Finales

ELABORADO POR: JUAN BALAS COJAB

Página 5 de 41

SIMULACION II 34 35 36 37 38 M 30 Abr L 5 May M 7 May L 12 May M 14 May Solución Examen 2

II013, PLAN 2004

Presentación de Proyectos Finales 1 Presentación de Proyectos Finales 2 Presentación de Proyectos Finales 3 Entrega de Calificaciones Finales

Descripción de Actividades Fuera de Clase
· Envío de mail y teléfono Deberán enviarme desde Blackboard su nombre completo y teléfono celular. Mi dirección es: juan.balas@correo.uia.mx · Ejercicio en clase A pesar de que el ejercicio se presentará en clase, de manera individual y según el orden que se determine el primer día de clase, presentarán un ejercicio ya elaborado de simulación utilizando Arena como plataforma de simulación. El ejercicio deberá contener: · · · · · Planteamiento del problema Análisis y definición del modelo (Variables, proceso, tamaño de muestra, replicas, etc.) Codificación en Arena y simulación Resultados, análisis y conclusiones

·

Deberán entregarme dos archivos: Un archivo de Word donde se presenta el problema, la metodología y los resultados (incluir grafico de análisis) y el archivo de Arena donde se encuentra la simulación. El archivo de Word, deberán entregarlo en medio impreso adicionalmente al archivo entregado. Entrega de anteproyectos finales

Los proyectos finales son en equipos que de definirán el primer día de clase. Para la entrega del anteproyecto será necesario traer a clase los siguientes documentos: · Tres opciones distintas de procesos que se deseen simular. Deben ser casos interesantes, no necesariamente complejos pero si muy bien planteados. Planteamiento de simulación: objetivo a solucionar, posibles experimentaciones. Diagrama de flujo básico del proceso así como de las variables principales.

· ·

ELABORADO POR: JUAN BALAS COJAB

Página 6 de 41

SIMULACION II ·

II013, PLAN 2004

Saber claramente el tipo de información que se tiene o se puede obtener.

Como resultado de la revisión se seleccionará un solo proyecto y se entregarán los comentarios necesarios para desarrollar el proyecto final. · Entrega de proyectos finales Los proyectos finales se entregarán del mismo modo que el ejercicio de clase. Dos archivos un documento de Word y uno donde se presente la simulación. El documento de Word también deberán entregarlo impreso. El primer día de clase se determinará que día se presentará cada proyecto (se tienen contemplados 3 días para todo el grupo). La presentación deberá ser breve, 30 minutos aproximadamente donde se presente cual fue el problema a resolver, el planteamiento, el proceso lógico de programación, correr la simulación en clase y presentar los resultados. Hacer cuando menos dos experimentos que demuestren soluciones optimas al problema. · Participación en clase Para obtener la participación en clase será necesario estudiar el ejercicio que se va a presentar en clase y proponer resolverlo ante la clase. No se considerará participación si el problema no es resuelto correctamente.

ELABORADO POR: JUAN BALAS COJAB

Página 7 de 41

SIMULACION II MATERIAL DEL CURSO

II013, PLAN 2004

Introducción a Simulación.
· Que es. En muchas ocasiones, la búsqueda de información valida para la toma de decisiones es difícil. En algunos casos, el desarrollar un método analítico se torna complicado o incluso imposible ante la incertidumbre propia de sistema que se busca modelar. El término simulación se refiere al conjunto de métodos y aplicaciones que buscan imitar el comportamiento de un sistema o proceso de la realidad, con el fin de experimentar sin tener que afectar el sistema real y encontrar mejoras antes de que estas sean implementadas. Normalmente al proceso a simular se le llama modelo ya que procura representar a la realidad considerando simplificarla para que sea factible su estudio y análisis pero sin llegar a que dicho modelo no represente fielmente la realidad. Actualmente, y con los avances en tecnología (Software y Hardware) la mayor parte de la simulación se realiza con ayuda de computadoras y programas que van desde lo mas genéricos hasta específicos a una industria. El campo de aplicación de la simulación es muy amplio y considera a cualquier industria como área de oportunidad para su aprovechamiento. La simulación es una gran herramienta de trabajo en la toma de decisiones que se complementa, en muchos casos, con una animación del modelo. Esta animación, permite a la alta dirección “ver” con más facilidad, las oportunidades o riesgos que corre en la toma de decisiones. · Aplicaciones. La simulación se usa actualmente en la mayor parte de las industrias tanto de manufactura como de servicios; incluyendo las áreas financieras y de entretenimiento. Entre algunos ejemplos están: · · · · · · · · · · Entrenamiento a pilotos y operarios de maquinaria compleja. Simulación de estrategias (guerra). Programas de producción. Sistemas de manejo de inventario. Simulación de colas de atención. Balanceo de líneas de manufactura. Simulación de proyectos de inversión. Simulación de estados financieros. Diseño de plantas y optimización de recorridos. Optimización del manejo de materiales.

ELABORADO POR: JUAN BALAS COJAB

Página 8 de 41

SIMULACION II

II013, PLAN 2004

· Diseño y desarrollo de productos (aeroespacial, automotriz). · Análisis en juegos de Azar. · Análisis de Riesgo en aseguradoras. · Estrategias de publicidad y mercadotecnia. · Entre muchas otras aplicaciones. · Ventajas y desventajas. · Ventajas: Generalmente es más barato que modificar el sistema real. (Cuando es posible modificarlo) Una vez construido el modelo, es mucho más rápido hacer suposiciones y modificaciones generando así posibles escenarios. Se puede elaborar incluso antes de haber creado el sistema, ahorrando costos, fallas y errores. Los métodos analíticos suelen simplificar demasiado el modelo con el afan de obtener una solución y en simulación es posible analizar modelos mas complejos y con mayor detalle. Considera los riesgos de la variabilidad de los procesos. Existen algunos casos, donde solo la simulación logrará obtener un resultado. · Desventajas: La elaboración de los modelos requiere de mucho tiempo para desarrollar y validar. Ha sido difícil obtener la aceptación de las empresas de esta herramienta ya que no presenta un dato único sino una probabilidad de que un evento ocurra. Es necesario elaborar corridas de simulación extensas para reducir la variabilidad de los resultados y aun así puede no encontrar la solución óptima. · Antecedentes. Las herramientas de simulación tienen su origen en los fundamentos del poder inquisitivo del ser humano. Desde que las personas se cuestionan si un método o forma de hacer algo es el mejor, se inicia lo que se llama simulación. En sus principios consistía en experimentar con el sistema para encontrar si la “idea” resultaba positiva. Lo anterior con el alto costo de cambiar el sistema actual y los costos de oportunidad que con ello se tienen. Posteriormente, se inició con la fabricación de modelos a escala, ya sean maquetas, o simples “historias” que representaban la realidad fuera del marco de referencia llamado tiempo. Con la llegada de las computadoras hacia 1950 – 1960, las grandes corporaciones iniciaron el ejercicio de modelar sus sistemas por computadoras con la ventaja de no tener que hacerlo en la vida real pero con un alto costo.

ELABORADO POR: JUAN BALAS COJAB

Página 9 de 41

SIMULACION II

II013, PLAN 2004

La Tecnología avanzó (1970 – 1980) y con ello, la simulación comenzó a ser un tema hablado a lo largo de toda empresa. Las industrias comenzaron a buscar por medio de la simulación posibles mejoras en sus sistemas incluso antes de crearlos. Para ellos se apoyaron en las universidades y académicos que dieron fuerte impulso a la herramienta. En la época reciente (1990 – Actual) el despegue de la computadora personal ha permitido el desarrollo de una gran cantidad de programas de simulación que han hecho a ésta herramienta un método de optimización disponible para la mayoría de las empresas. La oportunidad de animar el proceso y verificarlo con gráficos realistas permite definir muchas mejoras así como identificar fallas incluso antes de que ocurran. Incluso al día de hoy, la simulación a cruzado la frontera de las empresas y la academia hacia áreas como el entretenimiento. La integración de distintas tecnologías permitirá en un futuro hacer de la simulación una herramienta de uso sencillo, económico y popular. El manejo total de una empresa podrá ser llevado al día conectando los dispositivos de trabajo al simulador y actualizando diario el modelo para convertirlo en una empresa virtual. Ya existen en la actualidad programas de realidad virtual que permiten a un operario “simular” la actividad que en el futuro va a realizar, determinar los puntos críticos de seguridad, mejorar la ergonomía y funcionalidad de la herramienta a utilizar; incluso es posible calcular los escenarios de producción, desgaste de maquinaria y manejo de mantenimientos inteligentes. · Que es un modelo y sus tipos. Existen muchas clasificaciones de modelos, peor dentro de las principales se encuentran: · · Modelos Icónicos: son representaciones a escala del sistema real. Modelos físicos como maquetas. Modelos Análogos: son modelos que se crean en un sistema similar que permita realizar la experimentación sin afectar el sistema principal. (Líneas de producto alternas). Modelos Simbólicos: En ellos, se utilizan símbolos que representan cada entidad de la realidad. En este campo, es donde se ha desarrollado la Simulación y donde podemos destacar la siguiente clasificación: · · Determinísticos: no hay variables, por lo que su solución es exacta. Probabilísticos: hay variables aleatorias que producen resultados con variaciones. Los modelos de probabilidad se usan para representar las variables. Dinámicos: las variables cambian en el tiempo y los resultados se ven afectados por el dato predecesor.

·

·

ELABORADO POR: JUAN BALAS COJAB

Página 10 de 41

SIMULACION II · ·

II013, PLAN 2004

Estáticos: el tiempo no es una variable. Se enfocan en los eventos que ocurren en la simulación. Continuos: las variables toman como base el tiempo como medio de sucesión, mismo que se considera la variable continua. Es por ello que el resto de las variables van tomando valores reales con el paso del “tiempo simulado”.

Discretos: las variables toman un rango de números enteros, es decir, se concentran en el producto (piezas entregadas, por ejemplo). · Pasos generales en simulación. No existe una metodología definida o única en la elaboración de una simulación, pero si podemos tener los pasos generales que una simulación de alguna manera debe considerar: · Entender el sistema: ya sea que el sistema exista en la realidad o no, se debe tener una idea clara de que es lo que sucede. Esto incluye visitar el proceso, familiarizarse con las actividades y relaciones que hay entre ellas. Es importante, en caso de tener la oportunidad de ver el sistema funcionar, hablar con las personas que cooperan para obtener detalles del mismo. Claridad en los objetivos: se debe tener una idea clara de los resultados que puede ofrecer el modelo. No debemos ofrecer ni más ni menos. Debemos tener claro que es lo que se busca al modelar el sistema y asegurarnos que lo obtenga de manera realista. Analizar y formular el modelo representativo: en esta etapa debemos definir el nivel de detalle que requiere el modelo, establecer que se puede asumir y establecerlo claramente con aquellos que utilizarán el modelo. En esta etapa se deberá definir con claridad como opera el sistema y las variables de entrada y salida que existen. Codificar el modelo: significa seleccionar el programa en el que se va a modelar el sistema e ingresarlo en la computadora. Verificar la representatividad del modelo: una vez terminado el modelo, es importante asegurarnos que representa de manera precisa la realidad. Para ello es usual generar corridas con datos extraordinarios así como comunes de tal modo que el resultado sea “obvio”. También se puede verificar comparando contra los datos reales del sistema si es que existen. Validar el modelo: el modelo se presenta a los usuarios del mismo y se demuestra su funcionalidad. Diseño de experimentos: una vez que el modelo es funcional, se diseñan experimentos modificando las variables que se desean analizar y se obtienen distintos escenarios o alternativas en los que

·

·

·

· ·

· ·

ELABORADO POR: JUAN BALAS COJAB

Página 11 de 41

SIMULACION II

II013, PLAN 2004

el sistema puede operar; se recolecta la información y se valida estadísticamente al correr una cantidad determinada de corridas independientes entre si. · Análisis de Resultados: con la información obtenida, se estudian las variables en cada escenario y los resultados en cada caso. Se busca el sentido lógico y de sentido común al cúmulo de datos generados. Animación y Presentación de Resultados: en muchos casos es mas simple animar el modelo para presentar los datos que solo presentar una informe escrito. Esto simplifica la toma de decisiones. Implantación: cuando los datos han sido presentados y las decisiones ya fueron tomadas, el siguiente paso es implantar los cambios en el sistema real. Siempre se debe tener cuidado ya que incluso en la simulación, puede haber variables no consideradas que afecten el resultado. Para ello, se debe planear con mucho cuidado el proceso de cambio y llevarlo a cabo del mejor modo posible.

·

·

Elementos principales para simular.
· Números aleatorios y pruebas de bondad. La base fundamental para cualquier simulación se encuentra en la generación de números aleatorios. En la actualidad, y con el uso de una hoja de cálculo, es muy fácil obtener números aleatorios, sin embargo, no siempre fue así. En los inicios de la simulación, fue necesario desarrollar métodos de comprobación sobre la “aleatoriedad” de dichos número que se generaban por medio de algoritmos distintos y no siempre cumplían de manera estricta con tener números realmente sin seriación o tendencia. Dentro de los principales métodos de comprobación tenemos la prueba de los promedios, la prueba de las frecuencias, prueba de la distancia, prueba de series, prueba de Kolmogorov – Smirnov, prueba del poker, pruebas de las corridas, entre otras. En cualquiera de los casos, todas las anteriores pruebas buscan comprobar que los números aleatorios (números entre 0 y 1) A)tienen exactamente la misma probabilidad de ocurrir, es decir se encuentran uniformemente distribuidos y B)Cada número es independiente del valor de su predecesor o del siguiente (Independencia entre los datos). Así es como la simulación de procesos variables en la vida diaria cobra vida. · Ajustes a funciones de probabilidad. En la vida diaria no todos los eventos ocurren de manera uniforme, es decir, no tienen una distribución uniforme o perfectamente aleatoria.

ELABORADO POR: JUAN BALAS COJAB

Página 12 de 41

SIMULACION II

II013, PLAN 2004

De hecho, son pocas las ocasiones en que se tiene esa ventaja. En la mayor parte de los casos, los eventos ocurren de manera semi aleatoria, existen mayor probabilidad de que sucedan de alguna manera que de otra. Para efectos de nuestro objetivo, modelar y simular la realidad, debemos buscar métodos que nos permitan ajustar la uniformidad de la distribución de los números aleatorios a una distribución que se asemeje en la medida de lo posible a la realidad. Para realizar este proceso, será necesario considerar dos opciones: A) conocer la información suficiente de la variable a modelar que nos permita seleccionar un modelo de distribución o B) tener una cantidad importante de datos con respecto a esa variable que nos permita analizar cual distribución se ajusta más. En ambos casos, se tiene el apoyo de programas de computadora que nos permiten concierta facilidad analizar y generar este tipo de distribuciones. Lo que no hacen los programas de computación, es entender que se requiere para modelar el sistema. · Distribuciones de probabilidad. Las distribuciones principales se pueden clasificar como discretas (solo presentan números enteros reales) y continuas (presentan cualquier numero real). A continuación se presentarán las principales distribuciones, sus variables y sus posibles usos: · Uniforme (Discreta o continua) Se utiliza cuando se tiene muy poca información de la variable (Rangos), se tiene la misma probabilidad de que cualquier número ocurra dentro del rango definido.
10 Frecuencia 8 6 4 2 0 0 1 2 3 4 5 Clase 6 7 8 9 10

Max = 8, Min = 2 (Números enteros con la misma probabilidad de aparecer)

ELABORADO POR: JUAN BALAS COJAB

Página 13 de 41

SIMULACION II

II013, PLAN 2004

9 8 7 6 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 10

Max = 8, Min = 2 (Números reales con la misma probabilidad de aparecer) En ambos casos en nivel de varianza es alto. · Triangular Se utiliza cuando no se conoce la forma exacta de la distribución, pero se tienen estimaciones de los valores mínimos, máximos y los más probables.
6 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 10 11

Min = 1, Moda = 7, Max = 10 Es una distribución fácil de usar y explicar. · Normal Se utiliza cuando nuestro proceso se comporta de manera simétrica en su variación con respecto a la media (promedio). Se utiliza en una gran cantidad de procesos. Esta distribución no se debe usar para representar datos como tiempos de proceso ya que abarca numero negativos en su variación.

ELABORADO POR: JUAN BALAS COJAB

Página 14 de 41

SIMULACION II

II013, PLAN 2004

5% 4% 4% 3% 3% 2% 2% 1% 1% 0%
16 22 28 61 82 10 19 25 64 46 52 58 13 67 31 76 40 49 55 34 70 79 43 37 73

Media = 46.5, Desviación estandar = 10 · Poisson Es una distribución discreta usada para modelar la aparición de eventos en un intervalo definido de tiempo. Si el tiempo entre eventos es exponencial, entonces se deberá usar esta distribución. También se llega a utilizar para modelar tamaños de lotes aleatorios.
14 12 10 8 6 4 2 0 0 1 2 3 4 5 6 7 8 9

Media = 2 · Exponencial Se usa para simular entre llegadas aleatorias ya sea fallos de maquinaria o entradas al teatro. Generalmente no es apropiada para modelar tiempos de retardo de proceso.

ELABORADO POR: JUAN BALAS COJAB

Página 15 de 41

SIMULACION II

II013, PLAN 2004

0.04 0.035 0.03 0.025 0.02 0.015 0.01 0.005 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Media = 2 · Personalizadas (Continua y Discreta) Cuando un evento se presenta en un modo que no se ajusta a ningún modelo probabilistico, es posible generar nuestra propia distribución que se “ajuste a los valores que representan el modelo.
3.5 3 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

ELABORADO POR: JUAN BALAS COJAB

Página 16 de 41

SIMULACION II

II013, PLAN 2004

Existen muchas distribuciones adicionales que pueden ser verificadas en los libros de probabilidad y estadística tales como: Distribución Beta, Gamma, Lognormal, Weibull, Erlang, entre otras. · Factores a considerar en el desarrollo de la simulación. · Estados de la simulación. Para la mayoría de los modelos de simulación, la idea es estudiar y experimentar bajo las condiciones “estables” del sistema, es decir, cuando el sistema ya opera de manera regular. Sin embargo, y, como ocurre en la realidad, los sistemas en su arranque presentan estados transitorios, por ejemplo: Cuando una planta arranca un producto nuevo o cuando la línea de producción fue vaciada. Algunas maneras para evitar esta situación es correr simulaciones lo suficientemente grande como para que la afectación de los datos de inicio no sean representativos. Otra manera es excluir los datos de arranque directamente. En cualquiera de los casos, es importante considerar esta variable tanto en los casos de inicio como de terminación que pueden afectar los resultados de manera importante. En el caso de la terminación podemos usar como ejemplo la afectación que tenemos en el porcentaje de utilización de una maquina cuando se cumple con la producción deseada y la simulación termina hasta tener las unidades completas en almacén. Una vez más, lo que nos interesa es que represente fielmente la realidad y el sistema que deseamos estudiar. · Tamaño de la muestra. El tamaño de la muestra en este caso se reduce a conocer el número de corridas o simulaciones independientes que se deben crear para obtener datos con el nivel de precisión deseado. Si se elaboran pocas corridas, la variación de los resultados puede ser tal que nos desvíe a tomar una decisión equivocada. No debemos olvidarnos que las simulaciones parten de datos aleatorios y por ende, los resultados también son aleatorios. Se puede realizar una evaluación analítica (calculada) con base en la varianza natural de cada variable que este presente en el modelo. Siempre y cuando el resultado sea mayor a 30. También es posible realizar las corridas y conforme se encuentre la variable resultado estable se debe detener la generación de corridas. Otro medio es comparando los resultados con los datos observados, cuando éstos existen. También es posible analizar los modelos que pueden tener lo que se llama “simulación regenerativa”. En estos modelos se encuentra que pasado determinado tiempo en la simulación, el modelo “regresa” a su estado de inicio o arranque. Por ejemplo cuando en la caja de un banco ya no hay nadie a quien atender y llega un cliente, sucede exactamente lo mismo que al inicio de operaciones del cajero.

ELABORADO POR: JUAN BALAS COJAB

Página 17 de 41

SIMULACION II

II013, PLAN 2004

7 6 5 4 3 2 1
X 10 15 20 25 60 65 80 85 40 45 50 55 90 95 5 30 35 70 75

·

Número de replicas.

La siguiente consideración a tomar es el número de replicas a realizar. Desafortunadamente, al correr la simulación y lograr un sistema estable, encontramos que el resultado final no es independiente del valor que lo precedió (se encuentran auto relacionados). Entonces, es necesario correr la simulación con el “X” numero de corridas un “R” numero de replicas o repeticiones. Esto nos ayudará a confirmar que nuestros resultados son consistentes y congruentes con una solución real. Como ejemplo sencillo podemos definir ciertos problemas que a diario se nos presentan como: ¿por qué un día cualquiera al pasar por determinada calle en la misma hora no hay trafico y el siguiente día si?, ¿o incluso el mismo día pero de la semana o mes siguiente? (sin agentes especiales como las manifestaciones). Generalmente 10 a 15 Replicas son suficientes aunque debemos siempre confirmar que el promedio de la varianza entre replicas sea mínima.

Elaboración del modelo y experimentación.
· Proceso de análisis del modelo y sus componentes. El comienzo de cualquier proceso de simulación se encuentra en esta etapa, como entender el sistema y definirlo en términos claros. Equivale a realizar el desglose de las partes del sistema y la relación que hay entre ellas. En muchos casos, elaborar un diagrama de flujo es muy útil. Inicialmente debemos describir el proceso lógico del sistema: que entradas tiene, como se procesan y cual es la salida o resultado del mismo. Ahora es posible entender que cada aspecto del sistema tiene una cantidad importante de detalles o definiciones que realizar tales como la frecuencia en la que existen entradas en dicho sistema o si todas las entradas son iguales. En el caso de la etapa de proceso necesitaremos definir cual es la capacidad de procesar, si es posible que existan “colas” o áreas de espera, si el proceso es

ELABORADO POR: JUAN BALAS COJAB

Página 18 de 41

SIMULACION II

II013, PLAN 2004

constante o si puede llegar a tener fallas o errores. También si requieren de herramientas y / o recursos como personas adicionales para lograr el objetivo. Para los resultados o salidas, debemos tener claro si todas las salidas son de primera calidad por ejemplo, el total de productos elaborados o incluso el ritmo en el que salieron. Para efectos de definición, podemos declarar que todo sistema tiene: · Entidades: son los jugadores, los productos o servicios a los que se esta simulando. Estas entidades se mueven en el sistema, entran, salen, se procesan, cambian de forma, etc. También se puede considerar a una entidad, como un evento lógico (imaginario) como el considerar que puede haber fallas en las maquinas y que aparecen de manera aleatoria afectando el sistema. Normalmente el definir las entidades es la primer etapa para definir el sistema. Atributos: cada entidad posee un conjunto de características que nos especifican el comportamiento de ellas. A estas características se les llama atributos. Por ejemplo se puede definir la prioridad de procesamiento, el tiempo máximo para proceso, la cantidad de espacio que tiene para contener entidades. Los atributos son la forma en que se comporta cada entidad de modo individual y es por ello que cada entidad (por ejemplo cada pieza o parte a procesar) requiere de un tiempo distinto de proceso a pesar de ser el mismo tipo de pieza o parte. Variables: Es una parte de información que refleja el modo de operar del sistema. Equivale a un atributo sin embargo las variables no se definen para las entidades sino que están definiendo características del propio sistema. Pueden ser tiempos de transporte entre una maquina y otra o total de personas en la cola. Estas variables pueden cambiar durante la simulación como el inicio y fin de la jornada de trabajo. Recursos: Regularmente las entidades “compiten” entre ellas para ser procesadas por los recursos que representan personal, maquinaria o espacio de almacenaje. Podemos decir que una entidad “agarra” (seizes) la capacidad unitaria de un recurso y al momento de salir, es “liberado” (release) ese recurso. Los recursos pueden tener la capacidad de procesar de manera paralela varias entidades o unidades. Colas: cuando una entidad intenta avanzar en el sistema pero se ve detenida ya que el recurso se encuentra ocupado, es posible establecer una “cola” o área de espera mientras el recurso es liberado. Acumuladores estadísticos: equivalen a una hoja de bitácora en la que se registra todo lo que ha pasado con las entidades, los recursos, las colas y el sistema entero. Son los valores resultantes de correr la simulación y deben estar definidos para que obtener la
Página 19 de 41

·

·

·

·

·

ELABORADO POR: JUAN BALAS COJAB

SIMULACION II

II013, PLAN 2004

·

información respectiva. Ejemplo de estos pueden ser: Total de partes producidas, total de partes dentro del sistema (WIP), máximo tiempo de espera en algún proceso, tiempo de operación o saturación de un recurso, etc. Eventos: Un evento es “algo que sucede” en un instante cualquiera definido en nuestro sistema. Los eventos son la forma en que nuestra simulación corre o funciona. En este caso, podemos decir que existen algunos eventos básicos como arribos o llegadas al sistema y salidas del sistema. Muchos simuladores usan lo que se le llama un calendario de eventos, mismo que registra en forma tabular los eventos futuros que cambian las variables del sistema. Al momento en que un evento ocurre, se verifica el calendario de eventos para determinar las características de cada entidad en ese momento en particular.

En toda simulación, y por más obvio que se escuche, tenemos que definir con claridad el inicio y fin de la misma. Se puede realizar en términos del total de eventos que deseamos procesar 8para el caso de simulaciones discretas) o un tiempo de inicio, tiempo de periodo estable y tiempo de terminación para simulaciones continuas. Si no se establece un punto específico de terminación y se corre la simulación, ésta puede correr de manera indefinida (hasta que uno se canse de esperar y la cancele). · Opciones de programas para modelar el sistema. En sus inicios, la simulación se llevó a cabo a mano, es decir, se realizaba la simulación basada en la sucesión de eventos y llevando el seguimiento de cada variable al momento en que el siguiente evento ocurría. Esto, además de tedioso, no es práctico. Documentos del año 1733 hablan de una simulación realizada por Leclerc a la realeza misma que le confirió titulo de noble posteriormente. Hacia las décadas de los 20 y 30as con el impulso de la manufactura se inicia el uso de tablas de números aleatorios para correr simulaciones y controles de calidad para procesos de muestreo. Con la llegada de las computadoras en los años 50as, se inicia el manejo de simulaciones por medio de programas de uso general como FORTRAN y ALGOL. A pesar de ser muy flexibles, requerían de una gran cantidad de tiempo para su desarrollo y capacidad de procesamiento para generar una simulación completa. El costo de programación y uso de tiempo de procesamiento en las computadoras solo permitía a pocas industrias el manejo de simulaciones. Con el desarrollo de las computadoras, el desarrollo de otros programas fue fundamental y nacieron programas como PASCAL y BASIC de carácter general pero también son desarrollados programas de aplicación específica que facilitan el desarrollo de simulaciones aunque no son tan flexibles, cumplen su propósito. Entre ellos podemos nombrar GPSS, Simscript, SLAM, entre muchos más.

·

ELABORADO POR: JUAN BALAS COJAB

Página 20 de 41

SIMULACION II

II013, PLAN 2004

Actualmente la mayor parte de los lenguajes de programación son gráficos y tienen módulos de animación que nos permiten visualizar la simulación para una fácil comprensión del modelo. Ejemplos de estos lenguajes son el PROMODEL, SIMFACTORY, Arena y Tecnomatix (Módulos de process simulation, plant simulation, Human simulation, entre otros). También se han desarrollado muchos subprogramas o “add-on” de programas de uso común como Excel que nos ayudan a simplificar la codificación de la simulación (no incluyen un proceso grafico, son únicamente numéricos) como @RISK (se usa con Excel). En gran medida, la selección de un programa dependerá del uso que se le quiere dar así como de los recursos disponibles. Por supuesto mientras mas general sea el programa de simulación, es más flexible, pero más complejo. Conforme se define el uso de un programa intermedio, ya se tienen librerías que facilitan la simulación. Finalmente podemos considerar simuladores con programación específica a una empresa o “hechos a la medida”. También es importante considerar que cada programa tiene su especialidad, es decir algunos se desarrollaron con enfoque de eventos, o enfoque de procesos, o de actividades, o del flujo de transacciones. En nuestro caso, utilizaremos en gran medida sistemas de carácter general, como el Arena para la mayor parte de nuestras simulaciones por ser económico y de fácil acceso para toda persona. Hacia final del curso podremos revisar brevemente el uso de algún sistema de simulación de alto nivel como el simulador de plantas de Tecnomatix. · Codificación del modelo en un programa específico. Normalmente la codificación dependerá del programa seleccionado para correr la simulación, sin embargo, siempre es de gran utilidad elaborar previo a la introducción del código en la computadora, la definición del proceso (eventos) por medio de un diagrama, el establecimiento de las entidades y sus atributos así como de las variables y los acumuladores estadísticos en una tabla o listado. Una vez definido lo anterior, es fundamental estar familiarizado con los comandos y modo de operación del programa que se piensa utilizar. En nuestro caso, buscaremos trabajar con el programa Arena. Que es un programa grafico y simple de utilizar. · Bases para el uso de Arena. Arena es un software que permite modelar sistemas de producción y de servicios para simular o representar su comportamiento y operación. Permite: · · Modelar un proceso para definir, documentar y comunicar. Simular el funcionamiento futuro de un sistema para entender sus relaciones complejas e identificar las oportunidades de mejora.

ELABORADO POR: JUAN BALAS COJAB

Página 21 de 41

SIMULACION II · ·

II013, PLAN 2004

Visualizar las operaciones con gráficas y animaciones dinámicas. Analizar el sistema bajo nuevas configuraciones y alternativas para elegir la mejor.

El software está basado en un diagrama de flujo del sistema, que debe ser sencillo de inicio y se puede ir complicando hasta abarcar todo el sistema. Los bloques básicos para un diagrama de flujo y para poder simular usando Arena son: · Bloque Create Es el punto de inicio para las entidades en un modelo de simulación. Las entidades son las personas, artículos, productos, etc, que se mueven dentro del sistema modelado. Se crean usando un horario o definiendo un tiempo entre llegadas. Es la entrada al sistema. Parámetros del Bloque Create Dato Válido Default

C reate 1

0
Parámetro

Name—identificador único. Aparece en el diagrama de flujo.

Nombre alfanumérico Create #

Entity Type—Nombre de la entidad que Nombre alfanumérico Entity 1 se generará. Type—Tipo de la tasa de llegadas. Random (Expo), Puede ser: Random (usa una Schedule, Constant, distribución exponencial con la media Expression especificada por el usuario), Schedule (usa una distribución exponencial con la media especificada en el Bloque Schedule), Constant (usa un valor constante), o Expression (despliega una lista de varias distribuciones). Value—Especifica la media de la Cualquier valor real distribución exponencial (si se usa Random) o el valor constante (si se usa Constant) del tiempo entre llegadas. Se aplica sólo cuando el tipo es Random o Constant. Schedule Name—Identifica el nombre Symbol Name del horario a utilizarse. El horario define [Schedules]
ELABORADO POR: JUAN BALAS COJAB

Random

1

Schedule 1

Página 22 de 41

SIMULACION II el patrón de llegadas, de las entidades, al sistema. Expression—Cualquier distribución o Expression valor que especifique el tiempo entre (Distributions) llegadas. Aplica sólo cuando el tipo es Expression. Units— Unidades de tiempo usadas para los tiempos entre llegadas y de creación de la primera entidad. No aplica si el tipo es Schedule. Entities per Arrival—Número de entidades que ingresan al sistema en cada llegada

II013, PLAN 2004

1

Seconds, Minutes, Hours, Days

Hours

Expression

1

Max Arrivals—Número máximo de Expression entidades que generará el bloque. Cuando se alcanza éste número, cesa la creación de nuevas entidades. First Creation—Tiempo en que se Expression generará la primera entidad de la simulación. No aplica cuando el tipo es Schedule. Ejemplos del bloque Create Ejemplo 1. – Llegadas aleatorias Prompt Name Entity Type Type Value Units Entities per Arrival Max Arrivals Entry Cuentas recibidas Documento Random 8 hours UNIF(2,8) Infinite

Infinite

0.0

ELABORADO POR: JUAN BALAS COJAB

Página 23 de 41

SIMULACION II First Creation 4

II013, PLAN 2004

El módulo Cuentas recibidas generará las entidades documentos que fluirán dentro del sistema. La generación será de acuerdo a una distribución exponencial con media de 8 horas. Los documentos llegan en lotes de tamaño entre 2 y 8, con la misma probabilidad. El primer lote llegará a las 4 horas de iniciada la simulación. Ejemplo 2. Prompt Name Entity Type Type Schedule Name Entities per Arrival Max Arrivals Entry Soporte de llamadas Llamadas de clientes Schedule Horario semanal de primavera 1 Infinite

El módulo Soporte de llamadas genera las Llamadas de clientes para que fluyan dentro de la simulación. El número de llamadas por hora varía durante el día, de manera que se establece un horario que muestra la media de la distribución exponencial, a lo largo del día, en el Horario semanal de primavera. Llega una sola llamada a la vez. · Bloque Process Éste bloque es el método principal para procesar en la simulación. Tiene opciones para ocupar y liberar a los recursos restringidos del sistema. También se puede usar como un submodelo que contenga más operaciones y procesos. Ejemplos del Bloque Process

Process 1

0
Prompt Name Type

Ejemplo 1. – Retraso simple Entry Puesto de revisión Standard

ELABORADO POR: JUAN BALAS COJAB

Página 24 de 41

SIMULACION II Action Delay Type Units Allocation Minimum Delay Triangular minutes Value Added 30

II013, PLAN 2004

Value (Most Likely) 45 Maximum 60

El Puesto de revision es un proceso automático que no requiere recursos. Tarda entre 30 y 60 minutos, siendo la moda 45. Se considera un proceso de valor agregado y el tiempo transcurrido se añadirá al atributo de la entidad: Entity.VATime. Ejemplo 2—Retraso simple utilizando un recurso Prompt Name Type Action Priority Resources Type Resource Name Quantity Delay Type Units Allocation Resource Empleado 1 Triangular Minutes Non-Value Added Entry Revisión de documentos Standard Seize Delay Release Medium(2)

ELABORADO POR: JUAN BALAS COJAB

Página 25 de 41

SIMULACION II Minimum Value Maximum 15 20 40

II013, PLAN 2004

El proceso de Revision de documentos lo realiza un solo empleado y tarda entre 15 y 40 minutos, siendo la moda de 20. Es un proceso que no da valor agregado y el tiempo transcurrido se añade al atributo de la entidad: Entity.NVATime. Ejemplo 3—Utilización de múltiples recursos Prompt Name Type Action Priority Resources Type Resource Name Quantity Delay Type Units Allocation Minimum Maximum Resource, Resource Ovonio, Rosy Li 1, 1 Uniform Minutes Non-Value Added 20 40 Entry Revision de cuentas Standard Seize Delay Release Medium(2)

En este ejemplo, llega una entidad al módulo de proceso para la Revision de cuentas, que puede consistir en la verificación del saldo y su estado financiero. Se requieren dos recursos que, conjuntamente, realizan el proceso, Ovonio y Rosy Li. Aunque tardan entre 20 y 40 minutos en realizarlo, no se considera que dé valor agregado al servicio estudiado en la simulación. Si hay otras tareas que deban

ELABORADO POR: JUAN BALAS COJAB

Página 26 de 41

SIMULACION II

II013, PLAN 2004

realizar Ovonio y Rosy Li, para ésta ambos deben estar disponibles y como , tiene prioridad 2, se realiza después de las prioridad 1 y antes de las de prioridad 3. Ejemplo 4. – Utilización de un conjunto de recursos Prompt Name Type Action Priority Resources Type Set Name Quantity Selection Rule Save Attribute Delay Type Units Allocation Expression Set Cajeros 1 Cyclical NoCajero Expression Minutes Value Added TRIA(5,10,15) * SchedValue(HoraDelDia) Entry Servicios bancarios 1 Standard Seize Delay High(1)

Este ejemplo demuestra el uso de conjuntos de recursos dentro del área de Servicios bancarios 1. Cuando llega un cliente, se requiere que algún cajero lo atienda. La elección del recurso en el conjunto se realiza en forma cíclica. Cuando se selecciona se le asigna un tiempo de atención. El índice del cajero elegido dentro del conjunto se almacena en un atributo: NoCajero. Esto puede ser útil si se requiere del mismo cajero en otro proceso, en este caso la regla de selección estará basada en el atributo. Nótese que no hay liberación del recurso, lo cual debe ocurrir en alguna otra parte del modelo, en un proceso con Action: Delay Release. El tiempo de atención incluye una distribución triangular y un módulo de horario: HoraDel Dia.
ELABORADO POR: JUAN BALAS COJAB Página 27 de 41

SIMULACION II Ejemplo 5. - Submodelo Prompt Name Type Entry Accounting Submodel

II013, PLAN 2004

Este ejemplo muestra el uso de un submodelo. Cuando esto ocurre, Type cambia de Standar a Submodel . Aparecerá una flecha en el bloque para indicar que es un submodelo. Para entra en la ventana del submodelo, hay que hacer click con el botón derecho del ratón y elegir Edit Submodel . Para salir se da click con el botón derecho y se elige Close Submodel. · Bloque Decide Éste bloque permite la toma de decisiones en el sistema, ya sea basadas en probabilidades o en condiciones. Normalmente tiene dos salidas: veradero (true) o falso (false), pero puede tener más. Ejemplos del bloque Decide

0
Decide 1

True

0

False

Ejemplo 1. – 2-way by chance Prompt Name Type Percent True Entry Clientes satisfechos 2-way by Chance 90

En este ejemplo, el bloque Clientes satisfechos se usa para modelar si un cliente está o no, conforme con un servicio previo. Aproximadamente 90% de todos ellos sí lo están y abandonan el bloque por la salida True, a la derecha. El otro 10%, los insatisfechos lo hacen por el fondo del bloque, en la salida False. Ejemplo 2. — 2-way by Condition—Variable Prompt Name Type Entry Selección de area de espera 2-way by Condition

ELABORADO POR: JUAN BALAS COJAB

Página 28 de 41

SIMULACION II If Named Is Value Variable Estado Mantenimiento == 0

II013, PLAN 2004

En este ejemplo, la variable Estado Mantenimiento, se usa para determinar como deben fluir las entidades en el modelo. Cuando una entidad entra al bloque, se calcula el valor de la variable, si es =0, toma la salida True , en caso contrario toma la salida False. Ejemplo 3—N-way by Condition—Entity Type Prompt Name Type If Named If Named Entry A Cuidados Intensivos By Condition Entity Type Paciente critico Entity Type Paciente estable

En este ejemplo, las entidades se evalúan según su tipo. Manda al Paciente critico por la primera salida, al Paciente estable por la segunda salida y a cualquiera que no sea ninguno de éstos, a la salida Else. Ejemplo 4—2-way by Condition—Expression Prompt Name Type If Expression Entry Linea de revision By Condition Expression NQ(Linea 1.Queue).LE.2

ELABORADO POR: JUAN BALAS COJAB

Página 29 de 41

SIMULACION II

II013, PLAN 2004

El bloque Linea de revision determina a donde enviar a los clientes basado en el estado de una cola. Se usa una expresión para evaluar el número de clientes en la cola de un bloque dado, en éste caso el de Proceso llamado Linea 1, si es menor o igual a 2, la entidad toma el camino True, en caso contrario toma el camino False. · Bloque Assign Éste bloque se usa para asignar nuevos valores a las variables, atributos de las entidades, figuras de las entidades u otras variables del sistema. Parámetros del Bloque Assign Parámetro Dato Válido Default Assign #

Assign 1

Name—Identificador único del Bloque. Nombre Aparece en el diagrama de flujo alfanumérico Assignments— Especifica que se harán una o más asignaciones cuando una entidad ejecuta el bloque. Type—Tipo de asignación. Other puede incluir variables del sistema, como capacidad de algún recurso o el tiempo final de la simulación. Variable Name— Nombre de la Variable a la que se le asignará un nuevo valor cuando la entidad entra al Bloque. Aplica sólo si el tipo esVariable. Attribute Name—Name of the entity attribute that will be assigned a new value when the entity enters the module. Applies only when Type is Attribute. Entity Type—New entity type that will be assigned to the entity when the entity enters the module. Applies only when Type is Entity Type.

Variable, Attribute, Variable Entity Type, Entity Picture,Other Nombre alfanumérico [Variables] Variable 1

Symbol Name [Attributes]

Attribute 1

Symbol Name [Entity Types]

Entity 1

ELABORADO POR: JUAN BALAS COJAB

Página 30 de 41

SIMULACION II Entity Picture—New entity picture that Symbol Name will be assigned to the entity when the [Entity Pictures] entity enters the module. Applies only when Type is Entity Picture. Other—Identifies the special system variable that will be assigned a new value when an entity enters the module. Applies only when Type is Other. New Value—Assignment value of the attribute, variable, or other system variable. Does not apply when Type is Entity Type or Entity Picture. Ejemplos del Bloque Assign Ejemplo 1. —Attribute Value Prompt Name Type Attribute Name New Value Entry Tiempo de Estampado Attribute Tiempo Registrado TNOW Expression

II013, PLAN 2004 Picture.Report

J

Expression

1

El ejemplo muestra como a un atributo, llamado Tiempo Registrado, se le asigna valor. Cuando una entidad ingresa al bloque, a Tiempo Registrado se le asigna el tiempo actual de la simulación, TNOW. El atributo se puede usar posteriormente en un bloque Record para calcular estadísticas del tiempo entre dos eventos. Ejemplo 2—Animation Picture Prompt Name Type Entity Picture Entry Ensamble Completo Entity Picture Picture.Boat

Le asigna a la entidad un figura, en éste caso un barco (Boat)

ELABORADO POR: JUAN BALAS COJAB

Página 31 de 41

SIMULACION II Ejemplo 3. —Other Prompt Name Type Other New Value Entry Detener la Simulacion Other TFIN TNOW

II013, PLAN 2004

Cuando una entidad entra a éste bloque, el tiempo de terminación de la simulación, TFIN, se fija en el tiempo actual, TNOW, lo cual termina con ésta réplica de la simulación. · Bloque Batch Éste bloque se usa como un mecanismo para agrupar y formar lotes, los cuales pueden ser permanentes o temporales. Los lotes se construyen con un número específico de entidades. Se forma una cola hasta que se junten el número requerido para formar el lote. Una vez formado, se crea una nueva entidad representativa.

Batch 1

0
Ejemplos del bloque Batch

Ejemplo 1. —Permanent Batch Prompt Name Type Batch Size Save Criterion Rule Attribute Name Entry Ensamble Permanent 2 Last By Attribute Entity Type

Las entidades llegan al bloque Ensamble y forman una cola llamada Ensamble.Queue. Cuando se acumulan dos del mismo tipo, se forma una sóla que deja el bloque.
ELABORADO POR: JUAN BALAS COJAB Página 32 de 41

SIMULACION II Ejemplo 2. —Temporary Batch Prompt Name Type Batch Size Save Criterion Rule Entry Aprobacion de Cuentas Temporary 10 First Any Entity

II013, PLAN 2004

Las entidades llegan al bloque y forman una cola. Cuando se acumulan 10, una sóla entidad, temporal, deja el bloque. La entidad agrupada conserva las características de las 10 originales hasta que se separan en el bloque Separate. · Bloque Separate

0
Separate 1
Original

Éste bloque se usa para crear copias de una entidad o para separar lotes temporales. Ejemplos del Bloque Separate Ejemplo 1. —Duplicado de Entidades

0
Prompt Name Type Percent Cost to Duplicates # of Duplicates

Duplicate

Entry Envio de Informacion Duplicate Original 0 3

En este ejemplo, el bloque Envio de Informacion produce 3 copias de la entidad original. Las 4, original y copias, salen del bloque. La original conserva la información de costo y tiempo. Las 3 copias iniciaran sin costo o tiempo ya que el costo a duplicar se especificó como cero. Ejemplo 2. —Separación de Entidades de un Lote

ELABORADO POR: JUAN BALAS COJAB

Página 33 de 41

SIMULACION II Prompt Name Type Entry Separacion de Lotes Split Existing Batch

II013, PLAN 2004

Member Attributes Retain Original Entity Values En este ejemplo, el bloque de Separacion de Lotes tomará a la entidad representativa del lote que entra y la dividirá en sus componentes originales, los cuales conservan los atributos que tenían antes de formarse el lote, incluyendo: Entity.Type, Entity.Picture, Entity.Station, Entity.Sequence, Entity.JobStep y Entity.HoldCostRate, además de todos los atributos definidos por el usuario. · Bloque Record Éste bloque se usa para llevar estadísticas de la simulación. Ejemplos del bloque Record Ejemplo 1—Time Interval Statistics Prompt Name Type Attribute Name Tally Name Entry Registro de Tiempo en Almacen Time Interval Tiempo Estampado Tiempo en Almacen

R ecord 1

En este ejemplo, cada vez que una entidad llega al bloque, se evalúa la diferencia entre el tiempo actual de la simulación TNOW y el valor de un atributo de la entidad llamado Tiempo Estampado. El resultado se registra en una cuenta llamada Tiempo en Almacen. Ejemplo 2. —Time Between Statistics Prompt Name Type Entry Registro Tasa Salida Clientes Time Between

ELABORADO POR: JUAN BALAS COJAB

Página 34 de 41

SIMULACION II Tally Name Tasa Salida Clientes

II013, PLAN 2004

Este bloque registra el tiempo entre llegadas de las entidades a él en una cuenta llamada Tasa Salida Clientes. Ejemplo 3. - Entity Statistics Prompt Name Type Entry Estadisticas Entidad Entity

Este bloque registra toda la información de costos y tiempo de la entidad. Puede ser útil si el tipo de entidad cambia y se desea la información antes del cambio. · Bloque Dispose

Dispose 1

0
Es el bloque final de las entidades de la simulación. · Bloque Match Éste bloque sincroniza la salida de distintas entidades en el proceso. Una vez que se reúnen el número especificado de ellas, se permite su avance al siguiente bloque. Ejemplos del Bloque Match Ejemplo 1— Uso básico Prompt Name Entry Sincronizacion Pintura

Match 1

Number to Match 3 Type Any Entities

En este ejemplo, hay que sincronizar tres entidades. Cada una espera en distinta cola: Sincronizacion Pintura. Queue1, Sincronizacion Pintura. Queue2 y Sincronizacion Pintura. Queue3. Cuando exista cuando menos una de cada una en las tres colas ocurrirá la sincronización y las tres saldrán del bloque.
ELABORADO POR: JUAN BALAS COJAB Página 35 de 41

SIMULACION II Ejemplo 2— Sincronización Basada en Atributo Prompt Name Entry Ordenes

II013, PLAN 2004

Number to Match 2 Type Attribute Name Based on Attribute "Atributo Definido por el Usuario"

En este ejemplo, se sincronizan dos entidades basadas en sus valores de un atributo definido por el usuario. El atributo contiene un valor único para cada entidad que entra al sistema. Las entidades forman dos colas: Ordenes.Queue1 y Ordenes.Queue2 mientras esperan sincronizar. Puede tratarse de un sistema en donde un cliente realiza un pedido, entonces, la entidad original, el cliente, se divide en dos, una representando al cliente y la otra al pedido. Ambas se deben sincronizar posteriormente para salir del sistema. Cada cual reside en una cola diferente. Las dos salen al mismo tiempo del bloque. · · Prompt Entity Type Initial Picture Holding Cost/Hour Bloques de Datos Bloque Entity Entry Clientes Insatisfechos Sad Faces 1.5

Initial Value Added Cost 5 Initial Non-Value Added 0.0 Cost Initial Waiting Cost Initial Transfer Cost Initial Other Cost 10 0.0 0.0

En este ejemplo, los Clientes Insatisfechos tienen como figura inicial una cara triste (Sad Faces). Su costo de permanecer en el sistema es de $1.50/hora, mientras que

ELABORADO POR: JUAN BALAS COJAB

Página 36 de 41

SIMULACION II

II013, PLAN 2004

los costo iniciales VA y de espera son $5 y $10. No hay costos iniciales NVA, Transfer y otros. · Prompt Name Type Attribute Name Shared La cola llamada Orden Terminada se forma de acuerdo al mayor valor del atributo TiempoEspera, el cual es un valor acumulado del tiempo que la entidad ha pasado esperando en colas durante la simulación. · Bloque Resource Ejemplos del Bloque Resource Ejemplo 1. – Recursos de Capacidad Fija Prompt Name Type Capacity Busy/Hour Cost Idle/Hour Cost Per Use Cost StateSet Name Failures En este ejemplo, hay 5 Máquinas que son los recursos del sistema. Tienen un cargo de uso de $5, que representa el costo de arranque por entidad. Cuando están ocupadas tienen un costo de $25/hora. Cuando están desocupadas el costo disminuye a $10/hora. Ejemplo 2. – Recursos Programados
ELABORADO POR: JUAN BALAS COJAB Página 37 de 41

Bloque Queue Entry Oreden Terminada Highest Attribute Value TiempoEspera

Entry Maquinas Fixed Capacity 5 25 10 5

SIMULACION II Prompt Name Type Schedule Busy/Hour Idle/Hour Per Use StateSet Name Failures Entry Contadores Based on Schedule Horario Diario 30 30 0

II013, PLAN 2004

Hay un número variable de Contadores en la simulación del sistema. Dependiendo de las capacidades y duraciones definidos en el Horario Diario, cambiará el número de Contadores en el tiempo. Sea que el contador esté ocupado o desocupado tendrá un costo de $30/hora. No hay cargo fijo por el uso del recurso. Ejemplo 3. — Recurso con Falla y Conjunto de Estados Prompt Name Type Capacity Busy/Hour Idle/Hour Per Use StateSet Name Failures Entry Taladro Fixed Capacity 1 10 10 5 EstadosTaladro Falla Broca

ELABORADO POR: JUAN BALAS COJAB

Página 38 de 41

SIMULACION II

II013, PLAN 2004

El Taladro es un recurso único con los estados definidos por el usuario en el conjunto EstadosTaladro. Tiene un costo de arranque de $5 y de $10/hora sea que se esté ocupando o no. Además, experimenta una falla llamada Falla Broca. · Bloque Schedule Ejemplos del Bloque Schedule Ejemplo 1. – Horario de un Recurso Prompt Name Type Time Units Value (Capacity) Duration Entry Horario Diario Capacity Hours 4, 2, 4 4, 2, 3

El Horario Diario es el horario de un recurso ya que se especifica como de tipo Capacity . El número de recursos disponibles será de cuatro durante las primeras 4 horas de la simulación, luego el número de recursos disminuye a 2 durante las siguientes 2 horas y regresa a ser de cuatro durante las últimas 4 horas. Puede ser el caso de que después de 4 horas, dos de los recursos salen a comer durante 2 horas. Ejemplo 2. – Horario de Llegadas Prompt Name Type Time Units Scale Factor Value Duration Entry Horario Semanal de Primavera Arrival Days 1 25, 40, 55, 70, 60, 20, 5 1, 1, 1, 1, 1, 1, 1

El Horario Semanal de Primavera demuestra el uso de un horario del tipo llegadas (Arrival). Cada conjunto de datos especifica lo siguiente. Value: cuántas entidades llegan por hora. Duration: durante cuánto tiempo se tiene la

ELABORADO POR: JUAN BALAS COJAB

Página 39 de 41

SIMULACION II

II013, PLAN 2004

correspondiente tasa de llegadas. Se sigue una distribución exponencial para generar el tiempo entre llegadas. En éste caso, llegan aproximadamente 600 entidades durante el primer día, 960 entidades durante el segundo , 1320 durante el tercero, 1680 el cuarto, 1440 el quinto, 460 el sexto y 120 el último día. Para incrementar un 10% la tasa de llegadas, el factor de escala se definiría como 1.1. Un factor de escala de 0.9 disminuiría la tasa un 10%. · Bloque Set Set Module—Ejemplo Ejemplo 1. – Conjunto de Recursos Prompt Name Type Resource Name Entry Operarios Resource Joe, Mary, Fred, Sue

En este ejemplo, el conjunto Operarios contiene cuatro elementos: Joe, Mary Fred y Sue. Cualquiera de ellos puede ser elemento de otro conjunto. La regla para elegirlos está definida en el bloque Process . Si ésta es Prefered Order, Joe se seleccionará antes que Mary y ella antes que Fred, y él antes que Sue, en caso de que estén disponibles. Si la regla es Cyclical, entonces se eligirán en el órden de la lista Joe-Mary-Fred-Sue-Joe-Mary-Fred-Sue, etc. Con las otras reglas no importa el órden. · Bloque Variable Ejemplo del Bloque Variable Prompt Name Rows Columns Statistics Clear Option Initial Values Unchecked System Entry Nivel Actual de Inventario

ELABORADO POR: JUAN BALAS COJAB

Página 40 de 41

SIMULACION II Initial Value 25

II013, PLAN 2004

Este ejemplo le asigna a la variable Nivel Actual de Inventario un valor inicial de 25. La variable es de valor único, ya que las opciones de Rows y Columns están vacias. Se llevarán estadísticas, con esta variable, que dependen del tiempo. . En el reporte User Defined se mostrará el valor promedio de la variable. En Category Overview se tendrán estadísticas de ella. El valor inicial se puede modificar con un Bloque Assign. Se puede usar para tomar decisiones en un bloque Decide o en cualquier expresión en cualquier otro Bloque. · Obtención de resultados y validación. Una vez que la simulación fue corrida y se hacen los cálculos finales de nuestros acumuladores estadísticos, es importante estudiar dichos resultados, es decir, uno debe hacerse las preguntas básicas como ¿tienen sentido los resultados?, ¿qué significan?, ¿representan la realidad?. En un segundo plano es interesante validar si el número de replicas realizadas es suficiente. Si nos tomamos la dedicación para verificar los resultados individuales de cada replica, podemos encontrar cuan distintas serán entre ellas y con ello, también seremos capaces de evaluar el total de las replicas con mayor entendimiento. Si nuestros resultados no satisfacen nuestro sentido común, y no “creemos” en ellos, es mejor reconsiderar la posible existencia de fallas en nuestro modelo; ya sea en la codificación o desde el planteamiento del modelo. Una simulación que no represente la realidad no tiene uso práctico y debe ser descartada. · Experimentación y optimización. Formalmente, esta etapa de simulación es la razón de existir de la simulación. Cuando ya se tiene un sistema en la realidad funcionando de manera estable, ¿cuál es el propósito de hacer un modelo para simularlo? El propósito se encuentra en la posibilidad de mover o cambiar ese sistema sin tener que hacerlo en la realidad. Generar escenarios y “jugar” con opciones que incluso pueden pensarse como extremas o ilógicas. La oportunidad de optimizar un sistema sin tener que afectarlo en la realidad hace de proceso de experimentación y optimización la razón de la creación de un modelo de simulación.

ELABORADO POR: JUAN BALAS COJAB

Página 41 de 41

Sign up to vote on this title
UsefulNot useful