Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y...

31
Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Año 2005

Transcript of Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y...

Page 1: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

SimulaciónDr. Ignacio Ponzoni

Clase II: Introducción a la SimulaciónEtapas de una Simulación y Simulación de

Monte Carlo

Departamento de Ciencias e Ingeniería de la Computación

Universidad Nacional del Sur

Año 2005

Page 2: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 2 Prof. Dr. Ignacio Ponzoni

Simulación Computacional

Es el proceso de diseñar un modelo computacional de un sistema y llevar a cabo experimentos con él, a fin de evaluar el impacto de introducir cambios tanto en la estructura interna del sistema como en las condiciones vinculadas al entorno del mismo.

Modelo Computacionalde Simulación

Entradas(Políticas)

Salidas(Respuestas)

Decisión y Diseño de Experimentación

Page 3: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 3 Prof. Dr. Ignacio Ponzoni

¿Cuál es el objetivo de una Simulación?

Responder preguntas específicas sobre el comportamiento y características de funcionamiento del sistema que esta siendo modelado y simulado.

Por ejemplo: si estoy simulando una planta ensambladora de automóviles, algunas metas o “preguntas” de interés pueden ser:

– ¿Cuál es la capacidad máxima de producción anual de la planta?

– ¿Cuál es la cantidad de obreros necesarios por turno para contar con un nivel óptimo de producción?

– ¿Cuántos recursos materiales serán necesarios para mantener en funcionamiento la planta en forma continua?

– ¿Con que frecuencia será necesario reemplazar equipos?

– ¿Cuál es el nivel de producción óptimo en función de la demanda?

Page 4: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 4 Prof. Dr. Ignacio Ponzoni

¿Cuándo la simulación es una herramienta

apropiada? No existe una formulación matemática del sistema bajo estudio, o bien,

existe dicha formulación, pero no hay modelos analíticos para la resolución de la misma.

Existen el modelo y los métodos, pero los procedimientos son tan arduos que resulta más sencillo y económico hacer una simulación.

Se desea experimentar con un modelo antes de construir el sistema. Es imposible experimentar sobre el sistema real. La experimentación es posible, pero razones éticas lo impiden. El sistema real evoluciona muy lentamente, luego una simulación

puede cambiar la escala de tiempo acelerando la obtención de datos sobre el sistema.

En sistemas dinámicos en tiempo real, donde los modelos analíticos requieren una cantidad de cómputo que hacen imposible su aplicación.

Page 5: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 5 Prof. Dr. Ignacio Ponzoni

¿Cuándo la simulación NO debe ser

empleada? Si el problema puede se resuelto utilizando sentido común. Si se cuenta con un método analítico preciso y confiable para

resolver el problema. Si es fácil experimentar directamente sobre el sistema. Si los costos de efectuar la simulación superan las ganancias de

conocer sus resultados. Si no se dispone de los recursos suficientes para llevar adelante

la simulación. Si no se dispone del tiempo suficiente para llevar adelante la

simulación. Si el comportamiento del sistema es TAN complejo que no

resulta factible construir un modelo de simulación.

Page 6: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 6 Prof. Dr. Ignacio Ponzoni

Ventajas de la Simulación

El impacto de implementar nuevas políticas, efectuar cambios dentro de una organización, introducir nuevas reglas de decisión, etc, pueden ser analizados sin afectar al sistema real.

Nuevos sistemas de hardware, sistemas de transporte, etc, pueden ser testeados sin necesidad de construir dichos sistemas.

La escala de tiempo puede ser modificada respecto del sistema real a fin de permitir un mejor estudio de su comportamiento.

Permite estudiar la factibilidad de situaciones críticas, imposibles de experimentar sobre el sistema real.

Page 7: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 7 Prof. Dr. Ignacio Ponzoni

Ciclo de Vida de un Modelo Computacional para Simulación

Formulación del Problema

Fijar Objetivos

Recolección de DatosConstruir Modelo Conceptual

Corridas y análisis

Traducción del Modelo

¿Verificado?

¿Validado?

Diseño de experimentos

¿Más corridas?

Reportes

NoNo Si

No

No

Si

SiSi

Page 8: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 8 Prof. Dr. Ignacio Ponzoni

Modelos Simulación Clasificación

Los modelos de simulación pueden agruparse en:

Estocásticos o Determinísticos

Estáticos o Dinámicos

Discretos o Continuos

Page 9: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 9 Prof. Dr. Ignacio Ponzoni

Estocásticos y Determinísticos

En algunos modelos, existen variables cuyos valores presentan cierto nivel de incertidumbre. Este tipo de variables, conocidas también como variables no controlables, se modelan mediante el uso variables aleatorias.

Un modelo de simulación se dice ESTOCÁSTICO o NO DETERMINÍSTICO si posee variables aleatorias.

Un modelo de simulación que no posee variables aleatorias se denomina DETERMINÍSTICO.

Page 10: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 10 Prof. Dr. Ignacio Ponzoni

Modelos SimulaciónCasos de Estudio

Modelos de Simulación Estática: • Método de Monte Carlo

Modelos de Simulación Dinámica: • Sistemas de Colas• Sistemas de Inventario• Sistemas Continuos

Page 11: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 11 Prof. Dr. Ignacio Ponzoni

Casos de EstudioPautas Generales

Introduciremos los distintos tipos de modelos de simulación a través de pequeños ejemplos académicos.

Para cada problema efectuaremos las siguientes etapas: Especificar claramente el problema.

Determinar el objetivo del estudio de simulación.

Construir un modelo conceptual del sistema a simular.

Traducir el modelo a una representación computacional.

Diseñar los experimentos a realizar.

Ejecutar la simulación y analizar los resultados.

Page 12: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 12 Prof. Dr. Ignacio Ponzoni

Simulación de Monte Carlo

El método de Simulación de Monte Carlo es básicamente un experimento cuyo propósito es estimar la distribución de una variable de salida del modelo que depende de variables de entrada aleatorias.

Su rango de aplicación es amplio, aunque siempre dentro del campo de los modelos estáticos.

Se emplea básicamente para evaluar el impacto de cambios de políticas, estrategias o metodologías de trabajo dentro de sistemas, y está fuertemente vinculado a análisis de riesgo y estudio de sensibilidad de variables.

Page 13: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 13 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesEspecificación del Problema

Dave´s Candies es una pequeña empresa familiar dedicada a la venta de chocolates y helados.

Tradicionalmente, para el Día de San Valentín el negocio pone a la venta un producto especial denominado Chocolate del Día de San Valentine, el cual es comprado a un mayorista a $7.50 y vendido al público a $12.

Todas las cajas que no se logran vender antes del 14 de febrero se ofrecen a un 50% de descuento, con lo cual se venden fácilmente.

Históricamente el negocio vende entre 40 y 90 cajas cada año, sin una tendencia definida al incremento o decremento de ventas en particular.

Page 14: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 14 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesObjetivo de la Simulación

El problema a resolver consiste en determinar cuantas cajas comprar al mayorista de forma tal de maximizar las ganancias.

Por un lado, si la demanda supera la cantidad de cajas a la venta, se estarían perdiendo posibles ganancias por haber comprado una cantidad insuficiente de chocolates al mayorista.

Por otra parte, si la cantidad de cajas a la venta es excesiva respecto de la demanda, el negocio puede sufrir pérdidas por tener que vender el excedente por debajo del costo.

Page 15: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 15 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesConstrucción del Modelo

ConceptualVariables, Parámetros y Relaciones

Los datos de entrada para nuestro modelo son:• Q: cantidad de cajas compradas al mayorista (variable de decisión).• Factores de costo y valor de venta (constantes).• D: demanda (variable probabilística, no controlable).

La información de salida de la simulación es:• Ganancia: la ganancia neta.

Esta relación puede modelarse mediante la siguiente expresión:

12 7,50 6( )

12 7,5

D Q Q D si D QGanancia

Q Q si D Q

Page 16: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 16 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesConstrucción del Modelo

Conceptual Pasos de la Simulación de Monte Carlo

Dado un valor de la variable de decisión Q.

Repetimos N veces los siguientes pasos:

1. Obtener un valor aleatorio para D (entre 40 y 90).

2. Usando los valores de Q y D se obtiene la Ganancia.

3. Registrar la Ganancia obtenida.

Cada iteración del algoritmo se denomina réplica del experimento de simulación, o simplemente, réplica.

Luego de ejecutadas todas las réplicas, se calcula el promedio de las N ganancias obtenidas, y ese valor será la ganancia estimada por el experimento de simulación para la cantidad Q fijada al principio.

Page 17: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 17 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Diseño de la Tabla de Simulación

Los modelos de simulación de Monte Carlo pueden implementarse facilmente organizando la información a través de tablas de simulación.

En estas tablas, las columnas representan distintas variables del modelo, mientras que las filas están asociadas a distintas réplicas de un mismo experimento de simulación.

Esta representación del modelo de simulación puede implementarse facilmente usando planillas de cálculo.

Page 18: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 18 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Obtención del valor de Demanda

La demanda debe modelarse a través de una distribución probabilística apropiada a la realidad del problema.

Asumamos por simplicidad que la demanda se distribuye en forma uniforme entre los siguientes valores: 40,50,60,70,80,90.

Luego, cada valor tiene una probabilidad de 1/6.

Utilizando la función ALEATORIO de Excel podemos generar un número aleatorio que sigue una distribución uniforme continua con rango entre 0 y 1.

Page 19: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 19 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Obtención del valor de Demanda

Dado que nuestra distribución es uniforme discreta, para poder usar los números generados por ALEATORIO, debemos definir una tabla de distribución de probabilidades acumuladas.

Page 20: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 20 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Obtención del valor de Demanda

Se emplea la función BUSCARV (VLOOKUP) la cual tiene 3 parámetros: Valor de Referencia (número aleatorio) Matriz de Búsqueda (tabla de distribución de prob.) Indice de la columna de resultado (demanda)

La función recorre la primera columna de la Matriz de Búsqueda hasta encontrar una celda cuyo valor resulte mayor al Valor de referencia.

Luego, retrocede una fila y avanza dentro de esa misma fila hacia la columna correspondiente al Indice de la columna resultado y retorna el valor que se encuentra en dicha celda.

Page 21: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 21 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Obtención del valor de Demanda

Page 22: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 22 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesArmado del Modelo

Computacional Cálculo de la Ganancia

Page 23: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 23 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesDiseño de Experimentos

Una vez construido el modelo computacional se deben diseñar los experimentos que vamos a realizar.

Para efectuar esta tarea debemos tener en cuenta cuales son los objetivos del estudio de simulación.

En general, los objetivos de la simulación están estrechamente vinculados a determinar cual es el valor “óptimo”que podemos asignar a cada variable de decisión.

Este conjunto de variables son controlables y sus valores configuran el modelo.

Si logramos decidir cuál es el mejor valor para cada una de ellas, estaremos encontrando indirectamente la configuración “óptima” para el funcionamiento del sistema que estamos simulando.

Page 24: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 24 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesDiseño de Experimentos

En este problema, el objetivo consiste en determinar cuantas cajas comprar al mayorista de forma tal de maximizar las ganancias.

En otras palabras, el problema se reduce a hallar el valor de Q que maximiza la ganancia.

De la especificación inicial del problema, sabemos que históricamente se venden entre 40 y 90 cajas de chocolate de cada año.

Luego, podemos experimentar con los siguientes valores para la variable de decisión Q: 40, 50, 60, 70, 80 y 90.

Page 25: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 25 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesDiseño de Experimentos

Otro aspecto a decidir al momento de diseñar los experimentos es la cantidad de réplicas a ejecutar.

En general, este número depende de:

las características y complejidad del modelo,

el método usado para la generación de números aleatorios, y

el tiempo de ejecución que requiere computar cada réplica.

Más allá las particularidades de cada caso, se recomienda siempre experimentar con una cantidad significativamente grande de réplicas a fin de obtener resultados confiables desde un punto de vista estadístico.

Page 26: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 26 Prof. Dr. Ignacio Ponzoni

Caso de Estudio: Dave´s CandiesEjecución y Análisis de Resultados

Nº Experimento Demanda Ganancia1 80 $ 2702 60 $ 2703 50 $ 2104 70 $ 2705 40 $ 1506 60 $ 2707 80 $ 2708 90 $ 2709 50 $ 210

10 60 $ 270

Ganancia Promedio = $ 246

Consideremos a modo de ejemplo que se decide realizar 10 réplicas del experimento correspondiente a Q = 60.

Page 27: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 27 Prof. Dr. Ignacio Ponzoni

¿Qué información brinda este experimento?

Nos permite obtener una estimación de la ganancia promedio que podemos obtener comprando 60 cajas.

Nos ayuda a establecer el riesgo de decidir comprar 60 cajas en función de la frecuencia de distribución de ganancias.

Caso de Estudio: Dave´s Candies Ejecución y Análisis de

Resultados

Page 28: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 28 Prof. Dr. Ignacio Ponzoni

Frecuencia de Distribución de Ganancias para la Simulación con Q = 60 y 10 réplicas.

Nº Experimento Demanda Ganancia1 80 $ 2702 60 $ 2703 50 $ 2104 70 $ 2705 40 $ 1506 60 $ 2707 80 $ 2708 90 $ 2709 50 $ 210

10 60 $ 270

Ganancia | Frecuencia $ 150 | 10 % $ 210 | 20 % $ 270 | 70 %

Caso de Estudio: Dave´s Candies Ejecución y Análisis de

Resultados

Page 29: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 29 Prof. Dr. Ignacio Ponzoni

Repitiendo la simulación para Q=60 con 100 réplicas se obtuvo la siguiente distribución de valores:

Ganancia | Frecuencia $ 150 | 20 % $ 210 | 22 % $ 270 | 58 %

Ganancia Promedio = $ 232.80

Caso de Estudio: Dave´s Candies Ejecución y Análisis de

Resultados

Comparando la gran diferencia existente entre estos valores y los obtenidos para 10 réplicas se aprecia la importancia de efectuar una cantidad importante de repeticiones del experimento.

Page 30: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 30 Prof. Dr. Ignacio Ponzoni

Resultados obtenidos para los distintos experimentos.

Dave's Candies Simulation Results

$-

$50,00$100,00

$150,00

$200,00$250,00

$300,00

$350,00$400,00

$450,00

40 50 60 70 80 90

Order quantity

Do

llars

Avg. profit Std. dev. Minimum Maximum

Caso de Estudio: Dave´s Candies Ejecución y Análisis de

Resultados

Page 31: Simulación Dr. Ignacio Ponzoni Clase II: Introducción a la Simulación Etapas de una Simulación y Simulación de Monte Carlo Departamento de Ciencias e Ingeniería.

Simulación 31 Prof. Dr. Ignacio Ponzoni

Recomendaciones

Lectura recomendada para los temas vistos en clase:

• Capítulo 1 del libro “Discrete-Event System Simulation” de Banks, Carson, Nelson y Nicol.

• Capítulo 2 del libro “Introduction to Simulation and Risk Analysis” de Evans y Olson.

Ejercitación propuesta:

Trabajo Práctico 2: Introducción a la Simulación.