OPTIMIZACIÓN Y SIMULACIÓN PARA LA EMPRESA Tema 5 Simulación
ORGANIZACIÓN DEL TEMA Sesiones: Introducción Ejemplos prácticos Procedimiento y evaluación de resultados
INTRODUCCIÓN Simulación: Procedimiento para estudiar el comportamiento de un sistema A partir de la observación de un modelo que aproxime dicho sistema Por tanto, simulación imitación Empieza en 1949 con la formalización del método de Monte Carlo (por Von Neumann y Ulam) Herramienta de soporte de procesos de toma de decisiones Para evaluar alternativas y ayudar a seleccionar entre ellas Similar a Optimización Objetivos de la Simulación: observar, predecir, modificar u optimizar un sistema
INTRODUCCIÓN Cuándo se utiliza la Simulación Cuando no se dispone de métodos analíticos de solución (o de caracterizaciones de las soluciones), o son muy complejos Pero es posible implementar un procedimiento que proporcione aproximaciones a la solución Cuando se quiere experimentar con el comportamiento de un sistema antes de haberlo construido Cuando se quieren controlar las condiciones de operación del sistema, pero no es posible experimentar con el sistema real Las técnicas de simulación permiten estudiar sistemas de manera sencilla y en situaciones muy variadas Estos estudios pueden llevarse a cabo con poco coste y riesgo reducido
EJEMPLO 1: COMPRA DE LICENCIAS DE SOFTWARE Descripción: Una compañía fabrica ordenadores. Desea estimar el número de licencias a adquirir del sistema operativo a instalar en dichos ordenadores durante el año próximo Como estas licencias pueden no ser válidas para el próximo año, su número se debe ajustar todo lo posible a las ventas reales durante el año Pero en el momento de adquirirlas, este número es desconocido La demanda durante el año es una variable aleatoria con una cierta distribución
EJEMPLO 1: COMPRA DE LICENCIAS DE SOFTWARE Datos: Una licencia cuesta 75 euros Cuando se vende instalada en un ordenador, supone unos ingresos estimados en120 euros Una vez que cambie la versión del sistema operativo (el año próximo), la compañía puede devolver las licencias no utilizadas, y recibir un pago de 60 euros por licencia La compañía ha estimado que el número de ordenadores que puede vender en el año próximo es aproximadamente de 1000 ± 200 unidades Supondremos que esta demanda sigue una distribución N(1000,100)
EJEMPLO 1: COMPRA DE LICENCIAS DE SOFTWARE Descripción: Decisión a estudiar: cuántas licencias se deben comprar? Por ejemplo, si se compran 1000 licencias, Si la demanda real es de 1100 ordenadores, el beneficio sería de 45000 euros Pero si las ventas finales fuesen de 915 unidades, el beneficio sería de 39900 euros Alternativamente, si el número de licencias compradas fuese de 1050, Si la demanda es igual a 1100 unidades, el beneficio será 47250 euros Pero si las ventas fuesen 915 unidades, el beneficio sería 39150 euros
EJEMPLO 1: COMPRA DE LICENCIAS DE SOFTWARE Existen muchos posibles resultados, en función de la incertidumbre Merece la pena emplear una técnica de simulación Que considere los diferentes resultados (para cada decisión) Si llevamos a cabo un número muy elevado de replicaciones (posibles valores de la demanda), observaremos que la mejor opción sería comprar unas 1067 licencias Pero esta estimación está sujeta a un error porque no consideramos todos los casos posibles Importante: en general, nuestro error se reduce a una tasa proporcional a la raíz cuadrada del número de casos estudiados Por ejemplo si queremos que el error se reduzca en 10 veces, necesitamos considerar un número de casos 100 veces mayor Esto puede suponer una limitación práctica importante
SIMULACIÓN ESTOCÁSTICA Procedimiento de simulación Objetivo: aproximar el comportamiento de un sistema dinámico estocástico Observando su evolución en momentos concretos del tiempo Etapas del procedimiento de simulación: Identificar las variables de salida Son aquellos valores que queremos estudiar y aproximar mediante el procedimiento de simulación Identificar las variables de entrada Valorous aleatorios que determinan los de las variables de salida Siguen distribuciones que se suponen conocidas
SIMULACIÓN ESTOCÁSTICA Pasos del proceso de simulación Identificar expresiones para las relaciones entre los valores de las variables de entrada y salida Es suficiente con poder escribir un código de ordenador (o una colección de fórmulas de Excel) que calcule estas relaciones Generar un gran número de valores (una muestra) para las variables de entrada Aplicar las relaciones anteriores para obtener una muestra de valores para las variables de salida Analizar la muestra para obtener estimaciones de los estadísticos de interés para las variables de salida
SIMULACIÓN ESTOCÁSTICA Generación de valores para las variables de entrada: Es una de las tareas básicas en simulación de sucesos discretos Las números aleatorios generados definen los casos a estudiar en la simulación Procedimiento general para obtener estos números: Generar números aleatorios con distribución uniforme Aplicar una transformación para obtener números con la distribución deseada Por ejemplo, para obtener números aleatorios uniformes En Excel: ALEATORIO() En Matlab: rand En Java o JavaScript: Math.random()
SIMULACIÓN ESTOCÁSTICA Generación de números aleatorios en Excel: Distribución Parámetros Fórmula Excel Uniforme [a,b] =a+(b-a)*aleatorio() Normal μ,σ =DISTR.NORM.INV(ALEATORIO();μ;σ) Exponencial λ =-(1/λ)*LN(ALEATORIO()) Bernoulli p =SI(ALEATORIO()<p;1;0) Binomial n,p =BINOM.CRIT(n;p;ALEATORIO())
RESULTADOS DE SIMULACIÓN Obtención de estimaciones para las variables de salida Promedios: Estimación de la media utilizando la función de Excel =PROMEDIO(H:H) Suponiendo que los valores de salida de la simulación están en la columna H Probabilidades: Estimación basada en una cuenta de los valores que satisfacen la condición de interés Por ejemplo, si la condición es que la variable de salida tome un valor mayor que 100, Se puede añadir una columna a la hoja con la fórmula de Excel =SI(Hx > 100;1;0) El resultado deseado se obtiene como el promedio de la columna con los valores de la nueva fórmula
RESULTADOS DE SIMULACIÓN Obtención de estimaciones para las variables de salida Cuantiles: Una medida de valores que puede servir para representar posibles resultados muy favorables o poco favorables En muchos casos, se miden resultados con poca probabilidad de ocurrir (cuantiles inferiores) Para calcularlos, Se ordenan los valores de la muestra Se encuentra el valor en la lista ordenada que ocupe la posición deseada Por ejemplo, en el 95% a partir del inicio
RESULTADOS DE SIMULACIÓN Obtención de estimaciones para las variables de salida Cuantiles: Esto se puede hacer en Excel (sin tener que ordenar los datos) utilizando la función =K.ESIMO.MAYOR(H:H;0,05*CONTAR(H:H)) Este procedimiento se puede utilizar para estimar el VaR α (X) (Valor en Riesgo) para una variable aleatoria X, estimando el percentil 100α% de la distribución de X
RESULTADOS DE SIMULACIÓN Estimaciones de errores: Para obtener una estimación del error en las estimaciones, dada la muestra Un procedimiento: calcular la semilongitud de un intervalo de confianza para la cantidad de interés Si la cantidad de interés es un promedio, dado un nivel de confianza del 1 - α, la fórmula de la semilongitud es Y en Excel: error absoluto = z /2 error relativo = z /2 s p n s x p n =DISTR.NORM.ESTAND.INV(1- α/2)*desvest(h:h)/raiz(contar(h:h))
RESULTADOS DE SIMULACIÓN Tamaños de muestra: Dada una estimación del error, se puede desear reducir dicha estimación a niveles aceptables Aumentando el tamaño de la muestra El tamaño muestral necesario para tener un error (absoluto o relativo) Δ', dado un tamaño de muestra n y su error estimado Δ, se puede obtener como Y en Excel, =CONTAR(H:H)*(Δ/Δ')2