Simulscion de Monte Carlo 1

May 10, 2018 | Author: Candy Garcia Valverde | Category: Monte Carlo Method, Simulation, Probability, Normal Distribution, Random Variable


Comments



Description

SIMULLACION DE MONTE CARLO¿Qué es el método de Montecarlo? El método de Montecarlo es un método de simulación que permite calcular estadísticamente el valor final de una secuencia de sucesos no deterministas (sujetos a variabilidad), como es el caso del plazo o el coste de un proyecto. Por la complejidad de esta tarea, esta simulación se realiza por computador con alguno de los programas que se detallan al final de este artículo. En la práctica este análisis consiste en ejecutar varias veces los diferentes sucesos variando aleatoriamente su valor en función de la función estadística que los define, dando como resultado un conjunto de valores finales. Este conjunto de valores permite calcular el valor medio y la variabilidad para el conjunto. Método de Montecarlo El método de Montecarlo permite resolver problemas matemáticos mediante la simulación de variables aleatorias. John Von Neumann, en los años 40 y con los primeros ordenadores, aplica la simulación para resolver problemas complejos que no podían ser resueltos de forma analítica. Montecarlo y su casino están relacionados con la simulación. La ruleta, juego estrella de los casinos, es uno de los aparatos mecánicos más sencillos que nos permiten obtener números aleatorios para simular variables aleatorias Definición La simulación Monte Carlo es una técnica matemática computarizada que permite tener en cuenta el riesgo en análisis cuantitativos y tomas de decisiones. Esta técnica es utilizada por profesionales de campos tan dispares como los de finanzas, gestión de proyectos, energía, manufacturación, ingeniería, investigación y desarrollo, seguros, petróleo y gas, transporte y medio ambiente. La simulación Monte Carlo ofrece a la persona responsable de tomar las decisiones una serie de posibles resultados, así como la probabilidad de que se produzcan según las medidas tomadas. Muestra las posibilidades extremas —los resultados de tomar la medida más arriesgada y la más conservadora— así como todas las posibles consecuencias de las decisiones intermedias. Los científicos que trabajaron con la bomba atómica utilizaron esta técnica por primera; y le dieron el nombre de Monte Carlo, la ciudad turística de Mónaco conocida por sus casinos. Desde su introducción durante la Segunda Guerra Mundial, la simulación Monte Carlo se ha utilizado para modelar diferentes sistemas físicos y conceptuales INPORTANCIA DE MONTE CARLO La importancia actual del método Montecarlo se basa en la existencia de problemas que tienen difícil solución por métodos exclusivamente analíticos o numéricos, pero que dependen de factores aleatorios o se pueden asociar a un modelo probabilística artificial (resolución de integrales de muchas variables, minimización de funciones, etc.). como puede ser la estatura de una población. Los valores intermedios cercanos a la media tienen mayor probabilidad de producirse. Las variables que se pueden describir con una distribución triangular son el historial de ventas pasadas por unidad de tiempo y los niveles de inventario. el usuario sólo tiene que definir el mínimo y el máximo. Uniform – Todos los valores tienen las mismas probabilidades de producirse. es decir. Ejemplos de variables que se distribuyen de forma uniforme son los costos de manufacturación o los ingresos por las ventas futuras de un nuevo producto. El análisis de riesgo se puede realizar cualitativa y cuantitativamente. pero tienen un potencial positivo ilimitado. más probable y máximo. Dependiendo del número de incertidumbres y de los rangos especificados. las variables pueden generar diferentes probabilidades de que se produzcan diferentes resultados. Las distribuciones de probabilidad son una forma mucho más realista de describir la incertidumbre en las variables de un análisis de riesgo. cada vez usando un grupo diferente de valores aleatorios de las funciones de probabilidad. Luego. Ejemplos de variables descritas por la distribución lognormal son los valores de las propiedades inmobiliarias y bienes raíces. como en la distribución triangular. utilizando datos empíricos o cuantificando evaluaciones cualitativas. Las distribuciones de probabilidad más comunes son: Normal – O “curva de campana”. Vamos a concentrarnos en el análisis de riesgo cuantitativo. PERT – El usuario define los valores mínimo. El análisis de riesgo cualitativo generalmente incluye la evaluación instintiva o “por corazonada” de una situación. para completar una simulación Monte Carlo puede ser necesario realizar miles o decenas de miles de recálculos. Es una distribución simétrica y describe muchos fenómenos naturales. calcula los resultados una y otra vez. Se utiliza para representar valores que no bajan por debajo del cero. El usuario simplemente define la media o valor esperado y una desviación estándar para describir la variación con respecto a la media. Sin embargo. los precios de las acciones de bolsa y las reservas de petróleo. La simulación Monte Carlo produce distribuciones de valores de los resultados posibles. Mediante el uso de distribuciones de probabilidad. los extremos no tienen . Lognormal – Los valores muestran una clara desviación. Los valores situados alrededor del más probable tienen más probabilidades de producirse. Ejemplos de variables que se pueden describir con distribuciones normales son los índices de inflación y los precios de la energía.CÓMO FUNCIONA LA SIMULACIÓN MONTE CARLO La simulación Monte Carlo realiza el análisis de riesgo con la creación de modelos de posibles resultados mediante la sustitución de un rango de valores —una distribución de probabilidad— para cualquier factor con incertidumbre inherente. Los valores situados alrededor del valor más probable tienen más probabilidades de producirse. no son simétricos como en la distribución normal. los valores situados entre el más probable y los extremos tienen más probabilidades de producirse que en la distribución triangular. El análisis de riesgo cuantitativo trata de asignar valores numéricos a los riesgos. más probable y máximo. Triangular – El usuario define los valores mínimo. y se caracteriza por afirmaciones como “Eso parece muy arriesgado” o “Probablemente obtendremos buenos resultados”. De todas formas es recomendable entender el método de cálculo que hay detrás de estos programas de simulación. La simulación Monte Carlo realiza esta operación cientos o miles de veces. y el resultado es una distribución de probabilidad de posibles resultados. ¿CÓMO REALIZAMOS EL MÉTODO DE MONTECARLO? Debido al tamaño y complejidad de los proyectos que justifican el uso de este análisis.. sino la probabilidad de que suceda. también podemos usar simulación de Monte Carlo para estimar el número esperado de consultas diarias (en este caso se ha podido obtener el valor exacto usando teoría de probabilidad. sabemos que: Por otra parte. y 10% de posibilidades de que se repita el juicio. De todas formas es recomendable entender el método de cálculo que hay detrás de estos programas de simulación. que sólo puede tomar valores enteros entre 0 y 5). Cada grupo de muestras se denomina iteración. este se realiza mediante computador. Podemos interpretar la frecuencia relativa como la probabilidad de que ocurra el suceso asociado. la probabilidad de un determinado número de consultas (así. la probabilidad de que se den 3 consultas en un día sería de 0. Veamos cómo: . ¿CÓMO REALIZAMOS EL MÉTODO DE MONTECARLO? Debido al tamaño y complejidad de los proyectos que justifican el uso de este análisis. y el resultado correspondiente de esa muestra queda registrado. en este caso.e. De esta forma. este se realiza mediante computador. siendo totalmente inviable hacerlo a mano. Un ejemplo podría ser los resultados de una demanda legal: 20% de posibilidades de obtener un veredicto positivo. Un ejemplo de uso de la distribución PERT es la descripción de la duración de una tarea en un modelo de gestión de un proyecto. la simulación Monte Carlo proporciona una visión mucho más completa de lo que puede suceder. pero ello no siempre será factible). 40% de posibilidades de llegar a un acuerdo. siendo totalmente inviable hacerlo a mano. 30% de posibilidades de obtener un veredicto negativo. Discrete – El usuario define los valores específicos que pueden ocurrir y la probabilidad de cada uno. en los pequeños no se usa. por lo que la tabla anterior nos proporciona la distribución de probabilidad asociada a una variable aleatoria discreta (la variable aleatoria es el número de consultas al EIS. Indica no sólo lo que puede suceder. p. los valores se muestrean aleatoriamente a partir de las distribuciones de probabilidad introducidas. Supongamos que queremos conocer el número esperado (o medio) de consultas por día. La respuesta a esta pregunta es fácil si recurrimos a la teoría de la probabilidad: Denotando por X a la variable aleatoria que representa el número diario de consultas al EIS.30).tanto peso. en los pequeños no se usa.  Durante una simulación Monte Carlo. 0.35) para el suceso 2 • [0. En este caso.85) para el suceso 4 • [0. En él.00) para el suceso 5 El gráfico siguiente nos muestra cada una de las probabilidades sobre el número de consultas. Esto significa que. al generar un número pseudo-aleatorio con el ordenador (proveniente de una distribución uniforme entre 0 y 1). 1. estará asociado a un suceso. si el ordenador nos proporciona el número pseudo- aleatorio 0. 0.15 .2567. obtenido de forma aleatoria y según la distribución de probabilidad anterior.35 .05 . 0. Asignamos pues la función ALEATORIO a una casilla (la G1 en el caso de la imagen): Seleccionando la celda y “arrastrando” con el ratón desde el borde inferior derecho de la misma podemos obtener un listado completo de números pseudo-aleatorios: . se aprecia claramente la relación existente entre probabilidad de cada suceso y el área que éste ocupa. 0. podremos suponer que ese día se han producido 2 consultas al EIS.15) para el suceso 1 • [0. 0.65 . estaremos llevando a cabo un experimento cuyo resultado.Cuando se conozca la distribución de probabilidad asociada a una variable aleatoria discreta.65) para el suceso 3 • [0.00 .85 . será posible usar la columna de frecuencias relativas acumuladas para obtener los llamados intervalos de números aleatorios asociados a cada suceso.05) para el suceso 0 • [0. Así por ejemplo. los intervalos obtenidos son: • [0. debido a la componente aleatoria intrínseca al modelo. podemos usar la función SI de Excel para asignar un suceso a cada uno de los números pseudo-aleatorios generados (como veremos. hemos obtenido un valor estimado que corresponde exactamente con el valor real anteriormente calculado vía la definición teórica de la media. otra forma de hacer esta asignación será usando la función BUSCARV): Repitiendo el proceso de seleccionar y “arrastrar” obtendremos algo similar a: Finalmente. Excel genera nuevos valores aleatorios y. usando la función PROMEDIO será posible calcular la media de los valores de la columna H: En este caso. siendo dichos valores diferentes unos de otros (cada simulación proporcionará sus propios resultados). Sin embargo. nuevos valores para la columna H y la casilla I1). por tanto.A continuación. normalmente obtendremos valores “cercanos” al valor real. Se puede comprobar este hecho pulsando repetidamente sobre la función F9 (cada vez que se pulsa dicha tecla. Si en lugar de usar una muestra aleatoria . 000 (o mejor aún 10. los responsables del almacén han sido capaces de determinar la siguiente distribución de probabilidades por lo que a las ventas de licencias del nuevo sistema operativo se refiere: Construimos nuestro modelo usando las fórmulas que se muestran en la figura inferior. Cuando salga al mercado la nueva versión del sistema operativo. En la casilla H2 usaremos la función ALEATORIO para generar el valor pseudo-aleatorio que determinará el suceso resultante. El resto de fórmulas son bastante claras: En la imagen anterior se muestra cómo construir el modelo con una observación (iteración).000) observaciones. Basándose en los datos históricos de los últimos meses. Por el contrario. en la celda I2 usamos la función BUSCARV para determinar el suceso correspondiente asociado al valor pseudo-aleatorio obtenido –notar que usamos también la función MIN. deberemos seleccionar el rango H2:N2 y "arrastrar" hacia abajo (tantas casillas como iteraciones deseemos realizar): . y que nos piden consejo para decidir sobre el número de licencias de un determinado sistema operativo que conviene adquirir – las licencias se suministrarán con los ordenadores que se vendan durante el próximo trimestre. obteniendo a cambio un total del 25 Euros por cada una. Casos prácticos con software Monte Carlo con variables discretas Veamos un ejemplo algo más complejo del uso de Excel para construir modelos de simulación Monte Carlo cuando las variables aleatorias sean discretas: Supongamos que trabajamos en un gran almacén informático. los valores que obtendríamos en la casilla I1 estarían todos muy cercanos al valor real. es de esperar que si hubiésemos usado 1. el almacén podrá devolver al distribuidor las licencias sobrantes.formada por 100 observaciones hubiésemos usado una formada por 10. y es lógico pensar que en pocos meses habrá un nuevo sistema operativo en el mercado de características superiores. ya que en ningún caso podremos vender más licencias que las disponibles. los valores que obtendríamos al pulsar repetidamente F9 no serían estimaciones tan buenas al valor real. A fin de generar nuevas observaciones. mientras que el precio al que la vende es de 100 Euros. Cada licencia de sistema operativo le cuesta al almacén un total de 75 Euros. respectivamente. Asimismo. es posible estimar el valor esperado de la variable aleatoria que proporciona los beneficios sin más que hallar la media de las 100 observaciones que acabamos de realizar. usaremos las funciones DESVEST e INTERVALO.CONFIANZA para hallar. Para ello es .Finalmente. la desviación estándar de la muestra obtenida y el intervalo de confianza (a un nivel del 95%) para el valor esperado: A partir del modelo anterior es posible también realizar “what-if” análisis (análisis de escenarios o preguntas del tipo “¿qué pasaría si cambiamos tal o cual input?”). Si se realizase el experimento.000 es un número ya bastante considerable para este ejemplo): A partir de los resultados. hemos optado por tomar 1. Entre ellas. Asimismo. En el caso actual.000 iteraciones para cada una de los posibles inputs asociados a la cantidad de pedido (estos posibles inputs son: 100. 150. 200. nos interesa destacar la de Generación de números aleatorios: . Generación de números aleatorios provenientes de otras distribuciones Las últimas versiones de Excel incorporan un Add-In llamado Análisis de datos. 250.suficiente con ir cambiando los valores de las celdas con fondo amarillo o rojo (inputs del modelo en este ejemplo). y 300). podemos ampliar fácilmente el número de iteraciones (observaciones muestrales) sin más que repetir los procesos de seleccionar y “arrastrar”. parece claro que la decisión óptima es hacer un pedido de 150 unidades. ya que con ello se consigue el beneficio máximo. se obtendrían unos resultados similares a los que se muestran a continuación (ya que 1. Este complemento proporciona nuevas funcionalidades estadísticas a la hoja de cálculo. y Discreta) o de variable continua (Uniforme y Normal). es posible usar un resultado muy conocido de la teoría estadística.σ) . Estándar de Ln(X) = σ emo inferior = a = a+(b-a)*ALEATORIO() emo superior = b Añadir.μ. Poisson. es posible generar fácilmente observaciones provenientes de diversas distribuciones de variable discreta (Bernoulli. Binomial. nos permiten obtener valores pseudo-aleatorios de algunas de las distribuciones continuas más usadas: ámetros Fórmula Excel ia = b = -LN(ALEATORIO())*b la = b = b*(-LN(ALEATORIO())^(1/a) ma = a ia = μ Desv.INV(ALEATORIO(). = DISTR. Independientemente del complemento Análisis de datos. haciendo uso del método de la transformada inversa o de otros métodos similares. Frecuencia relativa. que es relativamente sencillo implementar funciones VBA que.μ.NORM. finalmente.LOG.INV(ALEATORIO(). llamado método de la transformada inversa. Simulación Monte Carlo con variables continuas . implementadas en celdas de Excel. para derivar las fórmulas que permiten obtener valores pseudo- aleatorios provenientes de distribuciones como la Weibull o la Lognormal. permitan la generación de valores provenientes de casi cualquier distribución teórica. Con esta opción.σ) ndar = σ ia de Ln(X) = μ = DISTR. En la tabla siguiente se muestran algunas fórmulas que. Asimismo. a un nivel del 95%.SI para contar el número de iteraciones y el número de veces que un servidor es más rápido que el otro: Finalmente. el tiempo muestral medio (esperado) de respuesta. . DESVEST. Nuestro objetivo será estimar el tiempo esperado (tiempo medio) que deberemos esperar para recibir la respuesta de ambos servidores. la desviación estándar de la muestra (observaciones que generaremos). necesitaremos más iteraciones). por el contrario. Dada la complejidad de la consulta que queremos realizar. En las páginas siguientes. respectivamente. y la función SI para determinar qué servidor ha sido el más rápido en responder: Usaremos también las funciones CONTAR y CONTAR. para el tiempo medio (este intervalo nos permitirá saber si nuestra estimación es buena o si. las funciones PROMEDIO. veremos dos ejemplos de modelos que hacen uso de la distribución normal (la distribución estadística más importante y utilizada): Ejemplo 1: Tiempo de consultas a servidores en paralelo Supongamos que desde un ordenador cliente se realiza consultas SQL a bases de datos situadas en dos servidores distintos. se calcula que el tiempo necesario para que cada uno de los servidores responda a la misma sigue una distribución normal con los parámetros (media y desviación estándar. es posible usar las fórmulas anteriores para generar. a partir de la función ALEATORIO().Como hemos comentado. e INTERVALO. y un intervalo de confianza. valores pseudo-aleatorios provenientes de otras distribuciones continuas.CONFIANZA nos servirán para obtener. y basándonos en experiencias anteriores. en minutos) que se indican a continuación: Pediremos a Excel que genere valores pseudo-aleatorios provenientes de dichas distribuciones. usaremos la función MAX para obtener el tiempo de respuesta (que será el máximo de los tiempos de respuesta de cada servidor). 8 y 23. En base a lo anterior. Observar que el tiempo medio estimado de respuesta es de 22. bastará con seleccionar y “arrastrar” hacia abajo el rango de celdas G3:J3.son aleatorios. se observa también que el servidor 1 ha respuesto más rápido que el servidor 2 en el 67% de las iteraciones.077 iteraciones. que dicho tiempo medio estará entre 22. un 25% del valor medio (esperado) asociado. con lo que se generarán nuevas iteraciones.0 minutos.Una vez introducidas las fórmulas anteriores. Para el primer mes. En meses posteriores. En la imagen siguiente se muestra el resultado obtenido al generar 2. las desviaciones estándar valdrán. el valor esperado del flujo de entrada es de 500 Euros. mientras que el valor esperado para el flujo de salida es de 400 Euros. podemos construir un modelo como se muestra en las siguientes imágenes: . en todos los casos. Supondremos también que los flujos de caja -tanto los de entrada como los de salida.9 minutos. Ejemplo 2: Inversión inicial y flujo de caja Consideremos ahora un nuevo problema: supongamos que disponemos de un capital inicial de 250 Euros que deseamos invertir en una pequeña empresa. Finalmente. el valor esperado será el valor obtenido para en el mes anterior. y podemos asegurar. siguiendo éstos una distribución normal. con un nivel de confianza del 95%. Por su parte. hemos obtenido los siguientes resultados para 5.Seleccionando y “arrastrando” hacia abajo el rango G3:O3.859 iteraciones: .
Copyright © 2024 DOKUMEN.SITE Inc.