11 DE AGOSTO AL 5 DE SEPTIEMBRE DE 2014. SIMULACIÓN Ing. Alberto M. López Asesor en Mejora de...

Post on 25-Jan-2016

221 views 1 download

Transcript of 11 DE AGOSTO AL 5 DE SEPTIEMBRE DE 2014. SIMULACIÓN Ing. Alberto M. López Asesor en Mejora de...

11 DE AGOSTO AL 5 DE SEPTIEMBRE DE 2014

11 DE AGOSTO AL 5 DE SEPTIEMBRE DE 2014

SIMULACIÓN

Ing. Alberto M. LópezAsesor en Mejora de Productividad IndustrialINTI Mar del Plata

AGENDA DE TRABAJO

OBJETIVOS

• Brindar una introducción a la simulación

• Construir modelos de simulación simples

Teoría Práctica

Introducción

Conceptos básicos de simulación

Desarrollo de un modelo de simulación

Ejercicio 1: Ajuste de distribucionesEjercicio 2: Introducción a Simio. Modelo de una heladería

Simulación y optimización Ejercicio 3: Utilización de OptQuest para Simio

Teoría de Colas o Sistemas de espera Ejercicio 4: Sistemas de espera y simulación

INTRODUCCIÓN

La complejidad de los sistemas es una regla y no

una excepción

Tipos de modelos:

•Físicos•Analíticos•De Simulación

SISTEMA MODELO

PARÁMETROS

Características o

atributos del sistema

PARÁMETROS

Características o

atributos del modelo

SALIDASALIDA

CORRESPONDENCIA

ENTRADA

INFERENCIA

ENTRADACORRESPONDEN

CIA

¿QUÉ ES LA SIMULACIÓN?

Imitar la operación de un proceso o sistema real

Generación de una historia artificial de un sistema

¿Para qué se usa?

Inferir, describir y analizar el comportamiento de un sistema

Diseñar nuevos sistemas

VENTAJAS DE LA SIMULACIÓN

Modelar sistemas complejos, reales y con elementos estocásticos

Estimar la performance de un sistema existente considerando un conjunto de condiciones de operación proyectadas

Comparar diseños alternativos de un sistema para determinar cuál se ajusta mejor a los requerimientos

Mantener un mejor control sobre las condiciones experimentales

Estudiar un sistema con horizonte de tiempo largo en tiempos reducidos

Permite probar diferentes maneras de operar el sistema sin necesidad de experimentar en el sistema real y, lo mejor de todo, sin riesgo alguno.

Ámbitos de aplicación

Apoyo a la toma de decisiones

Decisiones Estratégicas:Construcción de un Centro de Distribución.Ampliación de una flota de camiones.Instalación de una línea de producción.Aumento de la capacidad de un Puerto.

Decisiones Tácticas:Políticas de inventario en un Centro de Distribución.Asignación de rutas para una flota de camiones.Programación de producción en una línea.Política de almacenamiento de containers

Decisiones Operativas:Despacho diario de camiones de reparto de productos.Ruta óptima de entrega de pedidos.Calendarización de recursos humanos.Ubicación óptima de recursos

RIESGO

Proceso de negocio

Apoyo a la toma de decisiones

Proceso de negocio

Complejidad

Falta de

informació

n

Incertidumbre

Aleatoriedad $

Decisiones poco acertadas

Incertidumbre:Ocurrencia de fallasEventos inesperadosMercado y demanda

inciertas

Aleatoriedad:Tiempos de procesos

variableDemanda variableVariabilidad en

general

Falta de información:Información histórica no

utilizadaPronósticos deficientesFalta de estudio e

investigación

Complejidad:Muchas variablesMuchas decisionesCorrelación e

interdependencia entre variables del procesos

Apoyo a la toma de decisiones

Proceso de negocio

SIMULACIÓN

Complejidad

Falta de

información

Incertidumbre

Aleatoriedad

Incertidumbre:Modelación de todo tipo de

eventos inciertosPredicción adecuada de la

demandaDisminución del riesgo

Modelación de la aleatoriedad:Modelos incorporan la

aleatoriedad existenteSe toma en cuenta la

variabilidadAnálisis sofisticado

Uso de información:Uso de información histórica de

la empresaRecolección y toma de datosAjuste y análisis de datos

Modelo de simulación:Incorpora complejidad de la

realidadModelo hecho a la medida del

procesoGran capacidad para

incorporar variables y procesos Decisiones

acertadas

Ahorros Indirectos de Dinero:Asignación adecuada de recursos aumenta la

productividadDisminución del tiempo de espera del cliente,

aumento de su satisfacciónDetección de actividades que no agregan valor

¿Cuándo conviene usar un modelo de simulación?

Inestabilidad y variabilidad del sistema

Existencia de diversos objetivos de análisis

Flujo dinámico del proceso

Funciones y restricciones no lineales

Carencia de datos certeros

Estudios de diferentes escenarios

Complejidad

Necesidad de visualización

Etapas del desarrollo de un modelo de simulaciónFormular el problema y planificar el estudio

Recolectar los datos y definir el modelo conceptual

¿Válido?

Desarrollar el programa computacional y verificar

Hacer corridas piloto

¿Quién es el cliente final?¿Quiénes tomarán las decisiones?¿Cuáles son los Problemas? ¿Cuáles son los Objetivos? ¿Cuáles son las características? ¿Cuáles son los recursos? ¿Qué se quiere responder con

Simulación?

¿Cómo se valida?

¿Cómo se valida?

NO

NOSÍ

Diseñar experimentos Hacer corridas de producción

Analizar los resultadosDocumentar, presentar los resultados, implementar

¿Válido? Propuesta de ProyectoComponentes del Modelo Límites y Alcances Input y Output Tiempo de desarrollo

Proceso de desarrollo del modelo

Sistema

Modelo computacional

Modelo conceptual

Validación operacional

Validación del modelo

conceptual

Verificación del modelo computacional

Validación de datos

Experimentación Análsis y modelado

Programación computacional

Modelo de simulación. Conceptos y terminología

Entidades: objetos o individuos cuyas actividades modelamos. En un modelo puede haber diferentes clases.

Procesos: actividades en las que intervienen las entidades.

Recursos: elementos que actúan como restricciones en las actividades de las entidades. Son usados y liberados por otros objetos.

Atributos: son las propiedades o características de las entidades. Permiten describir cuantitativamente al sistema.

Modelo de simulación. Conceptos y terminología

Variables de estado: describen el estado del sistema en un instante dado.

Estado (de una entidad, un proceso o un recurso): situación en la que se encuentra en un momento determinado (ocupado, en cola, desocupado, bloqueado, fuera de turno, fallado, entre otros).

Evento: situación o hecho que hace cambiar el estado del sistema. Pueden ser seguros (ocurrirá indefectiblemente) o condicionales (sujeto al cumplimiento de condiciones).

Rutinas (código): dadas las variables de estado y los eventos es necesario definir la forma como los eventos modifican las variables de estado.

Modelo conceptual

Describir sistema a modelar

• Diagrama de flujo

• Supuestos

• Alcance

• Horizonte de la simulación

Modelo computacional

Programar los mecanismos que ejecuten los eventos en el orden correcto.

• Procesos a modelar

• Variables de input

• Variables de output

• Medidas de desempeño

Software específico de simulación

Variables de input

Los elementos aleatorios son modelados mediante variables aleatorias con sus distribuciones de probabilidades.

Ejemplos:-tiempos de procesos -demanda de los clientes.

Distribuciones de probabilidad (ejemplos)

Distribuciones de probabilidad (ejemplos)

Ejercicio 1Ajuste de distribuciones de probabilidad

Objetivo:•A partir de un conjunto de datos, generar variables aleatorias de entrada para utilizar en los modelos de simulación.

Ejercicio 1: Ajuste de distribuciones de probabilidad

Paso 1: Procesar los datos

Paso 2: Generar archivos de texto

Tiempo entre fallas Tiempo de reparación

Paso 3: Ajustar las distribuciones

Ejercicio 1: Ajuste de distribuciones de probabilidad

Random.Lognormal(2.11, 0.911) 1.+Random.Lognormal(1.96, 0.731)

Variables de outputLos resultados se miden a través de variables de salida o de output.

Los tipos de resultados que se obtienen de un modelo de simulación pueden ser:

•Conteos: durante un período determinado. Ejemplo: Cantidad producida en un mes•Recolección de valores: interesa el promedio, desviación estándar, máximo, mínimo o en general la distribución (histograma). Ejemplo: Tiempo de permanencia en el sistema•Variables en función del tiempo: en general interesa el promedio ponderado por el tiempo. También puede interesar el máximo o el mínimo. Ejemplos: Cantidad de productos en la fila de espera, Porcentaje de utilización de un recurso

Medidas de desempeñoPara evaluar el sistema y tomar una decisión.

Introducción al software SIMIO

SImulation Modeling framework based on Intelligent Objetcs = SIMIO

•Modelación en base a objetos inteligentes.

•Objetos inteligentes en SIMIO:– Objetos predefinidos incluidos en simio: librería estándar– Objetos creados por un usuario:

• Reutilización de un objeto predefinido• Composición de varios objetos predefinidos

•Un proyecto SIMIO es un conjunto de objetos.

SIMIO - Objetos

• Cada objeto en SIMIO tiene sus propios:– Procesos: lógica adicional para una modelación avanzada.– Elementos: componentes adicionales que entregan inteligencia al objeto.– Propiedades: parámetros fijos del objeto.– Estados: variables o atributos del objeto que cambian durante la

simulación.– Eventos: listado de “sucesos” que gatillan la ejecución de procesos u otros.

• Cada objeto en SIMIO es:– Definido: definición de comportamiento, propiedades, estados,

símbolo gráfico de un objeto.– Instanciado: ocurrencia de un objeto ya definido. símbolo(s)

gráfico(s), valor de las propiedades antes definidas.– Realizado (runspace): representaciones en la simulación de un

objeto instanciado. Cada realización de una instancia es única.

SIMIO – Tipos de objetosObjeto

inteligente

NodosLinksFijosAgentes

Entidades

Transportes

• Nodos: representan uniones, intersecciones, estaciones, etc.

• Links: representan vías, caminos, rutas, líneas, cables, etc.• Fijos: objetos que tienen una ubicación fija en el modelo• Agentes: objetos que se pueden crear y destruir durante la

simulación y que pueden moverse en un espacio continuo o discreto dentro del modelo:• Entidades: objetos que pueden tener un

comportamiento a través de un flujo de trabajo. Pueden moverse entre objetos.

• Transportes: Tipo de entidad que tiene la capacidad de mover y transportar otros objetos.

SIMIO – Entorno de trabajo

File

Cintas de opciones

Solapas del Model (objeto seleccionado)

Panel Librería

Panel Navigation

Panel PropiedadesFacility

SIMIO – Librería estándar de objetos

SIMIO – Objeto Source

Propiedades:•Entity Type•Arrival Mode•Time Offset•Interarrival Tme•Entities per Arrival•Maximum Arrivals•Maximum Time•Stop Event Name

SIMIO – Objeto Server

Propiedades:•Capacity Type•Initial Capacity•Ranking Rule•Dynamic Selection Rule•Transfer-in Time•Processing Time•Input Buffer•Output Buffer

Ejercicio 2Introducción a Simio. Modelo simple de una heladería

Objetivos:•Familiarizarse con el entorno de trabajo del software Simio•Construir un modelo de simulación simple a partir de la descripción de un sistema•Incorporar elementos de animación a un modelo de simulación•Analizar los resultados de un modelo de simulación

Ejercicio 2: Introducción a Simio. Modelo simple de una heladería

Sistema a modelar

Llegada de clientes

Atención del cliente

Pago del helado

Salida de clientes

Exponencial (0.5) minutos

2 empleados Triangular (0.4, 0.9, 1.5)

minutos

1 cajero Triangular (0.3, 0.4, 0.6)

minutos

Ejercicio 2: Introducción a Simio. Modelo simple de una heladería

Construcción del modelo Incorporación de animación

Ejercicio 2: Introducción a Simio. Modelo simple de una heladeríaAnálisis de resultados

12

13

15

14

17

16

18

Simulación y optimización

Consiste en encontrar el valor de una o más variables que

maximizan o minimizan una determinada función.

Existen restricciones que limitan los posibles valores que pueden tomar las variables.

¿Qué es optimización o programación matemática?

Ejemplo de optimización

REDDY MIKKS COMPANY

Reddy Mikks Company posee una pequeña fábrica de pinturas para interiores y exteriores de casas para su distribución mayorista. Se utilizan dos materiales básicos, A y B, para producir las pinturas. La disponibilidad máxima de A es de 6 toneladas diarias; la de B es de 8 toneladas por día. La necesidad diaria de la materia prima por tonelada de pintura para interiores y exteriores se resumen en la siguiente tabla:

Toneladas de materia prima por tonelada de pintura

  Exterior InteriorDisponibilidad de máxima

(toneladas)

Materia prima A 1 2 6

Materia prima B 2 1 8

Un estudio de mercado ha establecido que la demanda diaria de pintura para interiores no puede ser mayor que la pintura para exteriores en más de una tonelada. Asimismo, el estudio señala que la demanda máxima de pintura para interiores está limitada a dos toneladas diarias.

El precio por tonelada es $3,000 para la pintura de exteriores y $2,000 para la pintura de interiores.

¿Cuánta pintura para exteriores e interiores debe producir la compañía todos los días para

maximizar el ingreso bruto?

Ejemplo de optimización

Ejemplo de optimización

Construcción del modelo matemático

La construcción de un modelo matemático se puede iniciar respondiendo las tres siguiente preguntas:

1.¿Qué busca determinar el modelo? Dicho de otra manera, ¿cuáles son las variables (incógnitas) del problema?

2.¿Qué restricciones deben imponerse a las variables a fin de satisfacer las limitaciones del sistema representado por el modelo?

3.¿Cuál es el objetivo (meta) que necesita alcanzarse para determinar la solución optima (mejor) de entre todos los valores factibles de las variables?

Ejemplo de optimización

Variables de decisión

Función objetivo

Ejemplo de optimización

RestriccionesEl problema impone restricciones sobre el uso de materias primas y sobre la demanda.

Ejemplo de optimización

El modelo matemático completo para el problema se puede resumir como:

Ejemplo de optimización

Solución gráfica

Cada punto contenido o situado en la frontera del espacio de soluciones ABCDEF satisface todas la restricciones y por consiguiente, representa un punto factible.

Simulación y optimización

Se deben definir los siguientes elementos:

•Controls: son variables o recursos del modelo, que son manipulados para cambiar el desempeño.

•Responses: son las variables de output del modelo, que se usarán para medir el desempeño del modelo de simulación.

•Constraints: relaciones analíticas entre Controls y/o Responses, que representan las restricciones del sistema y ayudan a acotar el espacio factible de soluciones.

•Objetive: expresión a maximizar o minimizar, que incluye una o más Responses y/o Controls.

Paquete OptQuest (viene incluido en muchos software de simulación)

Permite construir un modelo de optimización basado en la dinámica de un modelo de simulación

Ejercicio 3Simulación y optimización. Utilización de

OptQuest en Simio

Objetivo:•Plantear y resolver un modelo de optimización basado en un modelo de simulación.

Ejercicio 3. Simulación y optimización. Utilización de OptQuest en Simio

¿Cuál es la solución óptima?μ1 = 27 órdenes/horaμ2 = 16 órdenes/hora

Costo = $ 9900

Si elevar el cumplimiento del tiempo de entrega de las órdenes a un 95% implica un beneficio adicional de $3500, ¿es conveniente aumentar la capacidad de los puestos?

μ1 = 31 órdenes/horaμ2 = 21 órdenes/hora

Costo = $ 12550Beneficio adicional $ 3500Costo adicional $ 2650Neto $ 850

Teoría de colas

Es una formulación matemática empleada para optimizar sistemas en los que interactúan dos procesos normalmente aleatorios: un proceso de “llegada” y un proceso de “servicio”, en los que existen fenómenos de “acumulación de clientes en espera del servicio”, y donde

existen reglas definidas (prioridades) para la “prestación del servicio”.

¿Ejemplos?

Costos asociados a un sistema de colas

Los costos asociados a la espera de los clientes Los costos asociados a la expansión de la capacidad de servicio Los costes totales del sistema de servicio

Capacidad

Costo

Espera

Capacidad

Total

Costo óptimo

Modelo M/M/1

• Proceso de llegadas de Poisson (tiempo entre llegadas con distribución exponencial)• Tiempos de servicio con distribución exponencial• Un único servidor

Ejercicio 4Sistemas de espera y Simulación

Objetivos:•Resolver un problema de sistemas de espera.•Construir un modelo de simulación sencillo.•Comparar los resultados utilizando un modelo analítico (teoría de colas) y simulación.

Ejercicio 4. Sistemas de espera y Simulación

Resolución por Teoría de Colas

Indicador Modelo M/M/1

a. Porcentaje de utilización de la máquina [%] 75

b. Número promedio de partes en la fila de espera [u] 2,25

c. Número promedio de partes en el sistema [u] 3

d. Tiempo promedio de espera en la fila [horas] 0,15

e. Tiempo promedio de espera en el sistema [horas] 0,2

Llegadas Atención Salidas

Ejercicio 4. Sistemas de espera y Simulación

Comparación Teoría de Colas y Simulación

Indicador Modelo M/M/1

Modelo de simulación

a. Porcentaje de utilización de la máquina [%] 75 75,55

b. Número promedio de partes en la fila de espera [u] 2,25 2,64

c. Número promedio de partes en el sistema [u] 3 3,39

d. Tiempo promedio de espera en la fila [horas] 0,15 0,17

e. Tiempo promedio de espera en el sistema [horas] 0,2 0,22

Ejercicio 4. Sistemas de espera y Simulación

Comparación Teoría de Colas y Simulación

• Los resultados por simulación no concuerdan con los resultados de colas.

• Posibles razones por las que los resultados no concuerdan con lo esperado:

1. El modelo en Simio tiene errores en la programación;

2. Nuestra expectativa es incorrecta, es decir nuestra hipótesis de que los resultados por simulación deben concordar con la teoría de colas es falsa; y/o

3. Error de muestreo, es decir los resultados por simulación concuerdan en un sentido probabilístico, pero, o bien no hemos corrido el modelo por un tiempo suficiente, o bien estamos interpretando mal los resultados.

Ejercicio 4. Sistemas de espera y Simulación

Aumento de la cantidad de réplicas

Indicador

Modelo M/M/1

Modelo de simulación(1 réplica)

Modelo de simulación

(50 réplicas)

Modelo de simulación

(100 réplicas)

Modelo de simulación

(200 réplicas)

Promedio Promedio Promedio Mitad IC Promedio Mitad IC Promedio Mitad IC

a. Porcentaje de utilización de la máquina [%] 75 75,55 74,11 0,83 74,51 0,63 74,64 0,40

b. Número promedio de partes en la fila de espera [u] 2,25 2,64 2,11 0,15 2,22 0,13 2,21 0,08

c. Número promedio de partes en el sistema [u] 3 3,39 2,85 0,15 2,96 0,13 2,96 0,08

d. Tiempo promedio de espera en la fila [horas] 0,15 0,17 0,14 0,01 0,15 0,01 0,15 0,01

e. Tiempo promedio de espera en el sistema [horas] 0,2 0,22 0,19 0,01 0,20 0,01 0,20 0,01

Ejercicio 4. Sistemas de espera y Simulación

Estado transitorio y estado estable

• Periodo inicial transitorio: tiempo entre el inicio de la corrida y el tiempo en que el modelo “alcanza” el estado estable.

• Modelo en estado estable: el interés radica en el desempeño de largo plazo del modelo.– Desearíamos ignorar el periodo inicial transitorio. Opciones:

• Usar período de calentamiento • Empezar modelo “cerca” del estado estable• Tiempo de corrida grande para “limpiar” el sesgo inicial causado por la

inclusión del período de calentamiento

• Modelo transitorio: deseamos incluir el periodo inicial transitorio en nuestro análisis.

Ejercicio 4. Sistemas de espera y Simulación

Desestimar el período transitorio

IndicadorModelo M/M/1

Modelo de simulación

(50 réplicas)

Modelo de simulación

(100 réplicas)

Modelo de simulación

(200 réplicas)Promedio Promedio Mitad IC Promedio Mitad IC Promedio Mitad IC

a. Porcentaje de utilización de la máquina [%] 75 75,09 0,71 74,98 0,54 75,03 0,37

b. Número promedio de partes en la fila de espera [u] 2,25 2,23 0,14 2,27 0,11 2,25 0,08

c. Número promedio de partes en el sistema [u] 3 2,98 0,15 3,02 0,12 3,00 0,08

d. Tiempo promedio de espera en la fila [horas] 0,15 0,15 0,01 0,15 0,01 0,15 0,005

e. Tiempo promedio de espera en el sistema [horas] 0,2 0,20 0,01 0,20 0,01 0,20 0,005

Ejercicio 4. Sistemas de espera y Simulación

Comparación Final

Indicador Modelo M/M/1 Modelo de simulación

a. Porcentaje de utilización de la máquina [%] 75 75,03 ± 0,37

b. Número promedio de partes en la fila de espera [u] 2,25 2,25 ± 0,08

c. Número promedio de partes en el sistema [u] 3 3 ± 0,08

d. Tiempo promedio de espera en la fila [horas] 0,15 0,15 ± 0,005

e. Tiempo promedio de espera en el sistema [horas] 0,2 0,2 ± 0,005

Bibliografía complementaria

• Banks, J. (1998). Handbook of Simulation. New York: John Wiley and sons.

• Joines, J. A., & Roberts, S. D. (2012). Simulation modeling with SIMIO: a workbook (2nd ed.): Simio LLC.

• Kelton, W. D., Smith, J. S., & Sturrock, D. T. (2013). Simio and simulation: Modeling, analysis, applications. Third edition. Learning Solutions.

• Law, A. M. & Kelton, W. D. (2000). Simulation modeling and analysis: McGraw Hill Boston, MA.

• Law, A. M. (2008). How to build valid and credible simulation models. Paper presented at the Proceedings of the 40th Conference on Winter Simulation.

• Law, A. M., & McComas, M. G. (2002). Simulation-based optimization. Paper presented at the Proceedings of the 34th conference on Winter simulation.

• OptTek Systems, Inc.'s (2011). The OptQuest Engine Java and .NET Developer's Guide. Version 6.6. Disponible en: http://www.opttek.com/documentation/ v66engine/OptQuest %20Engine% 20Documentation/Default.htm

• Taha, Hamdy A. (2004). Investigación de operaciones. México: Alfaomega

11 DE AGOSTO AL 5 DE SEPTIEMBRE DE 2014

Instituto Nacional de Tecnología Industrial

Av. General Paz 5445

B1650WAB San Martín

Buenos Aires, Argentina

Ing. Alberto M. López

amlopez@inti.gob.ar

Muchas gracias por su atención!!!