Professional Documents
Culture Documents
RISKOptimizer
Optimizacin con simulacin para el Microsoft Excel
Versin 5.7 septiembre, 2010
Palisade Corporation 798 Cascadilla St. Ithaca, NY USA 14850 +1-607-277-8000 +1-607-277-8001 (fax) http://www.palisade.com (website) sales@palisade.com (e-mail)
Reconocimiento de marcas
Microsoft, Excel y Windows son marcas registradas de Microsoft Corporation IBM es una marca registrada de International Business Machines, Inc. Palisade, RISKOptimizer, TopRank, BestFit y RISKview son marcas registradas de Palisade Corporation. RISK es una marca registrada de Parker Brothers, Divisin de Tonka Corporation y es utilizada bajo licencia.
Tabla de contenidos
Tabla de contenidos Captulo 1: Introduccin iii 1
Qu es el RISKOptimizer?......................................................................................17 Optimizacin tradicional versus la optimizacin por simulacin........................25 Captulo 3: RISKOptimizer: Paso a paso 33
Introduccin...............................................................................................................63 Distribucin presupuestaria ....................................................................................65 Planeamiento de capacidad .....................................................................................67 Programador de clases ............................................................................................69 Haciendo coberturas con futuros............................................................................73 Programacin de produccin en un taller..............................................................75 Balanceo de una cartera de inversiones ................................................................77 Mezcla de carteras ....................................................................................................81 Riesgo de cartera ......................................................................................................83 Problema del vendedor ambulante .........................................................................85 Administracin de rendimientos .............................................................................87 Captulo 5: Gua de referencia del RISKOptimizer 89
Comando de definicin de modelo .........................................................................91 Comando de configuracin de optimizacin pestaa General .......................120
Tabla de contenidos iii
Comando de configuracin de optimizacin pestaa Tiempo de ejecucin 124 Comando de configuracin de optimizacin pestaa Visualizar ................... 131 Comando de configuracin de optimizacin pestaa Macros ....................... 133 Comando de inicio de optimizacin ..................................................................... 135 Comando de utilitarios........................................................................................... 137 El Observador del RISKOptimizer......................................................................... 141 Captulo 6: Optimizacin Captulo 7: Algoritmos genticos 155 167
Introduccin ............................................................................................................ 169 Historia..................................................................................................................... 169 Un ejemplo biolgico ............................................................................................. 173 Un ejemplo digital................................................................................................... 175 Captulo 8: Simulacin y anlisis de riesgos 179
Introduccin ............................................................................................................ 181 Qu es el riesgo?.................................................................................................. 181 Creacin de un modelo en el RISKOptimizer ...................................................... 187 Anlisis de un modelo mediante simulacin....................................................... 189 Captulo 9: Extras del RISKOptimizer 191
Aadiendo restricciones........................................................................................ 193 Mejorando la velocidad .......................................................................................... 203 Cmo se implemente la optimizacin del RISKOptimizer? ............................. 205 Apndice A: Automatizando el RISKOptimizer Apndice B: Resolucin de problemas / Preguntas y respuestas 209 211
Resolucin de problemas / Preguntas y respuestas .......................................... 211 Apndice C: Recursos adicionales 215
iv
Captulo 1: Introduccin
Introduccin ........................................................................................3 Por qu RISKOptimizer? ......................................................................3 Problemas de optimizacin tradicional..................................4 Optimizacin de resultados inciertos .....................................4 Modelando la incertidumbre....................................................5 Optimizacin usando simulacin............................................5 Resultados de simulacin .........................................................6 Aplicaciones personalizadas usando RISKOptimizer ........6 Aplicaciones de Optimizacin por simulacin usando el RISKOptimizer.........................................................7 Antes de empezar .....................................................................................7 Lo que incluye el paquete.......................................................................7 Acerca de esta versin .............................................................................7 Trabajando con su ambiente operativo................................................8 Si necesita ayuda ......................................................................................8 Antes de llamar ...........................................................................8 Contactando a Palisade..............................................................9 Versiones estudiantiles ...........................................................10 Requerimientos de sistema para RISKOptimizer............................10 Instrucciones de instalacin ...........................................................11 Instrucciones generales de instalacin...............................................11 Eliminando el RISKOptimizer de su computadora ...........11 El DecisionTools Suite ..........................................................................12 Configurando los conos de RISKOptimizer o los atajos...............12 Mensaje de advertencia de seguridad de macros en el Inicio........13 Otra informacin de RISKOptimizer.................................................14 Archivo lame de RISKOptimizer ........................................14 Tutorial del RISKOptimizer...................................................14 Aprendiendo el RISKOptimizer .........................................................14
Captulo 1: Introduccin
Introduccin
El RISKOptimizer combina la simulacin y la optimizacin para permitir la optimizacin de modelos que contienen ciertos valores inciertos. El RISKOptimizer, por medio de la aplicacin de poderosas tcnicas de optimizacin de algoritmos genticos y de la simulacin Monte Carlo puede encontrar soluciones ptimas a problemas que no son solucionables para los optimizadores convencionales lineales y no lineales. El RISKOptimizer combina la tecnologa de simulacin de @RISK, el complemento de anlisis de riesgos de Palisade, con Evolver, el solucionador de algoritmos genticos de Palisade. Los usuarios familiarizados con el @RISK y tanto el Evolver o bien el Solver incorporado en el Excel podran ser capaces de usar el RISKOptimizer con poca dificultad. La Gua de usuario del RISKOptimizer, que es la que usted est leyendo en este momento, ofrece una Introduccin al RISKOptimizer y de los principios que le subyacen, luego discurre para mostrar algunas aplicaciones ejemplo de las singulares tecnologas de algoritmos genticos y simulacin del RISKOptimizer. Este manual completo tambin puede ser utilizado como una gua de referencia totalmente indexada, con una descripcin e ilustracin de cada funcionalidad del RISKOptimizer.
Por qu RISKOptimizer?
El RISKOptimizer abre un totalmente nuevo espectro de problemas de optimizacin. Con el RISKOptimizer, se pueden encontrar soluciones ptimas cuando los problemas contienen variables fuera de su control cuyos valores son desconocidos. Los optimizadores actuales tales como el Solver (un optimizador lineal y no lineal incluido en el Excel) y el Evolver (un optimizador basado en algoritmos genticos de Palisade Corporation) no pueden encontrar soluciones ptimas cuando los rangos de los valores posibles se introducen para factores inciertos en un modelo.
Captulo 1: Introduccin
Los problemas de optimizacin tradicional basados en Excel que utilizan tanto el Solver como el Evolver se componen de: Una celda de salida u objetivo que usted desea minimizar o maximizar. Un conjunto de celdas de entrada o ajustables cuyos valores usted controla. Un conjunto de restricciones que deben ser satisfechas, usualmente especificadas utilizando expresiones tales como COSTOS<100 o A11>=0
Durante una optimizacin en Solver o Evolver, las celdas ajustables se cambian a lo largo de los rangos permisibles que usted especifica. Para cada posible conjunto de valores de celdas ajustables el modelo se recalcula, y se genera un nuevo valor para la celda objetivo. Cuando la optimizacin se completa, se encuentra una solucin ptima (o bien una combinacin de valores de celdas ajustables). Esta solucin es la combinacin de valores de celdas que generan el mejor valor (es decir, el mnimo o mximo) para el valor de la celda objetivo mientras se satisfacen las restricciones que usted ha introducido. Optimizacin de modelos inciertos Sin embargo, cuando un modelo contiene elementos inciertos, tanto el Solver como el Evolver no pueden generar soluciones ptimas. En el pasado, muchos modelos de optimizacin simplemente ignoraban la incertidumbre, consiguiendo con esto que los modelos fueran optimizable pero irreales. Si se intentaba encontrar valores ptimos por medio del uso de simulacin, se empleaba un mtodo de fuerza bruta para buscar valores de celdas ajustables posibles por medio de una forma iterativa. Esto involucraba la ejecucin de una simulacin inicial, el cambio de uno o ms valores, la re-ejecucin de la simulacin, y la repeticin de este proceso hasta que se encontrara que se asemejase a una solucin ptima. Este es un proceso extenso y usualmente no est claro cmo cambiar el valor desde una simulacin a la otra.
Introduccin
Con el RISKOptimizer, la incertidumbre presente en el modelo puede ser incluida y se pueden generar soluciones ptimas que consideren la incertidumbre. El RISKOptimizer usa simulacin (del @RISK) para lidiar con la incertidumbre presente en el modelo y usa algoritmos genticos (del Evolver) para generar posibles valores para las celdas ajustables. El resultado de esta optimizacin simulada es la combinacin de valores para las celdas ajustables que minimizas o maximizas un estadstico para los resultados de simulacin de la celda objetivo. Usted podra, por ejemplo, desear encontrar una combinacin de valores de celdas ajustables que maximice la media de la distribucin de probabilidad de la celda objetivo o que minimice la desviacin estndar. Modelando la incertidumbre Para modelar la incertidumbre, el RISKOptimizer le permite a usted describir los posibles valores para cualquier elemento de una hoja de clculo usando cualquiera de las funciones de distribucin de probabilidad disponibles en el @RISK. Un valor de 10, por ejemplo en una celda de una hoja de clculo, podra ser remplazada con la funcin @RISK =RiskNormal(10,2). Esto especificara que los posibles valores para la celda estn descritos por una distribucin de probabilidad con una media de 10 y una desviacin estndar de 2. Al igual que en @RISK las distribuciones de probabilidad pueden ser correlacionadas usando funciones @RISK tales como RiskCorrmat y DepC. A la hora de optimizar, el RISKOptimizer ejecuta una simulacin completa para cada posible solucin de prueba que es generada por un optimizador basado en AGs (algoritmos genticos). En cada iteracin de una simulacin de prueba de una solucin, las funciones de distribucin de probabilidad en la hoja de clculo se muestrean y se genera un nuevo valor la celda objetivo. Al final de la simulacin, el resultado para la solucin de prueba es el estadstico para la distribucin de la celda objetivo que usted desea minimizar o maximizar. Este valor se devuelve entonces al optimizador y es utilizado por los algoritmos genticos para generar nuevas y mejores soluciones de prueba. Para cada nueva solucin de prueba, se ejecuta otra simulacin y se genera un valor para el estadstico del objetivo. Al igual que en optimizadores tradicionales, se pueden introducir restricciones que requieren ser satisfechas en el RISKOptimizer. Las restricciones pueden ser verificadas durante cada iteracin de la simulacin (una restriccin a nivel de iteracin) o al final de cada simulacin (una restriccin a nivel de simulacin). Las restricciones de iteracin son restricciones del estilo tpico como las tradicionales de Solver o Evolver, tales como A11>1000. Las
Captulo 1: Introduccin 5
restricciones de simulacin son restricciones que hacen referencia a un estadstico de la distribucin de los resultados de simulacin para cualquier celda en el modelo que usted especifica. Una restriccin de simulacin tpica podra ser la media de A11>1000 o la media de los resultados de simulacin de la distribucin para la celda A11 debe ser mayor que 1000. Igual que en Evolver, las restricciones pueden ser duras o blandas, y la violacin de una restriccin dura causar que se rechace la solucin de prueba. A medida que grandes cantidades de simulaciones se ejecutan por medio del RISKOptimizer, se utilizan un par de tcnicas importantes para minimizar el tiempo de ejecucin y generar soluciones ptimas tan pronto como sea posible. Primero que todo, el RISKOptimizer usa el monitoreo de convergencia para determinar cuando un nmero suficiente de iteraciones ha sido ejecutado (pero no tantas). Esto asegura que el estadstico resultante de la distribucin de probabilidad de la celda objetivo est estable, y de cualesquiera estadsticos de las distribuciones de salida referenciadas en las restricciones estn estables. En segundo lugar, el RISKOptimizer usa los operadores genticos de Evolver para generar soluciones de prueba que se muevan hacia una solucin ptima tan rpidamente como esto sea posible. Resultados de simulacin El RISKOptimizer viene con un conjunto de funciones estadsticas de simulacin que pueden ser utilizados para retornar resultados de simulacin directamente a su hoja de clculo. La funcin RiskMean(referencia de celda), por ejemplo, retorna la media de la distribucin simulada para la celda introducida directamente en una celda o frmula la hoja de clculo. Adicionalmente, cualquier modelo construido en RISKOptimizer pueden ser simulado directamente en @RISK, el complemento de Palisade Corporation para anlisis de riesgos y simulacin en Excel, cuando usted desee obtener grficos detallados y estadsticos de la mejor solucin encontrada por el RISKOptimizer. Debido a que la simulacin de RISKOptimizer est basada en el @RISK, no se requieren cambios a un modelo de RISKOptimizer para simularlo en el @RISK! El RISKOptimizer viene con un lenguaje de macros completo para construir aplicaciones personalizadas que utilicen las capacidades del RISKOptimizer. Las funciones personalizadas de RISKOptimizer pueden ser utilizadas en el Visual Basic for Applications (VBA) para definir los resultados de optimizaciones. Para mayor informacin en este interfaz de programacin, vase el documento de ayuda del RISKOptimizer Developer Kit, el cual est disponible por medio del men de ayuda del RISKOptimizer.
Introduccin
La disponibilidad de optimizacin para modelos con incertidumbre permite la solucin de muchos problemas previamente no optimizables. Como regla general, cualquier modelo que posea elementos inciertos puede ser optimizado por medio de una combinacin de simulacin y optimizacin, incluyendo: Seleccin de producciones ptimas y niveles de capacidad para nuevos productos con condiciones inciertas de mercado. Identificacin de niveles ptimos de inventario con demandas inciertas Distribucin de portafolios para minimizacin del riesgo Identificacin de mezclas ptimas de producto en una planta de manufactura en donde los mercados de producto se distribuyen geogrficamente y los niveles de demanda son inciertos Determinacin de niveles ptimos para compras de opciones a la hora de bsqueda de coberturas Administracin de rendimientos en donde un mismo producto es vendido en distintos precios ante restricciones diferentes Calendarizacin con tiempos de actividades inciertas
Antes de empezar
Antes de instalar e iniciar a trabajar con el RISKOptimizer, asegrese que su paquete de RISKOptimizer contenga todos los tems requeridos y verifique que su computadora satisfaga los requerimientos mnimos para un uso apropiado.
Si necesita ayuda
Se provee soporte tcnico gratuito para todos los usuarios registrados de RISKOptimizer con un plan actualizado de mantenimiento, o bien, ste est disponible con un cargo por incidente. Para asegurarse que usted es un usuario registrado de RISKOptimizer, por favor regstrese en lnea en: http://www.palisade.com/support/register.asp. Si usted nos contacta por telfono, por favor tenga su nmero serial y su gua de usuario listos. Podemos ofrecer mejor soporte tcnico si usted se encuentra al frente de su computador y listo para trabajar. Antes de llamar Antes de contactar soporte tcnico, por favor revise la siguiente lista de verificacin: Ha verificado la ayuda en lnea? Ha verificado esta gua de usuario y revisado el tutorial multimedia en lnea? Ha ledo el archivo README.WRI? Este contiene informacin actualizada del RISKOptimizer que podra no estar incorporada en el manual. Puede duplicar el problema consistentemente? Puede duplicar el modelo en una computadora diferente o con un modelo distinto? Le ha echado un vistazo a nuestro sitio en la red? Este puede ser encontrado en http://www.palisade.com. Nuestro sitio web tambin contiene las ltimas FAQ (preguntas frecuentemente realizadas por su traduccin del ingls) (una base de datos explorable de preguntas y respuestas de soporte tcnico) y parches de RISKOptimizer en nuestra seccin de Soporte Tcnico. Recomendamos que visite nuestro sitio web regularmente para toda la informacin ms reciente sobre el RISKOptimizer y otro software de Palisade.
Introduccin
Contactando a Palisade
Palisade Corporation agradece sus preguntas, comentarios o sugerencias respecto del RISKOptimizer. Contacte a nuestro personal de soporte tcnico usando cualesquiera de los siguientes mtodos: Envenos un correo electrnico asupport@palisade.com. Llmenos por telfono al +1-607-277-8000 en Estados Unidos cualquier da entre lunes y viernes de 9:00 AM a5:00 PM, horario de la Costa Este. Siga las instrucciones para acceder a soporte tcnico. Envenos un fax al +1-607-277-8001. Escrbanos una carta a: Palisade Corporation 798 Cascadilla St. Ithaca, NY 14850 EE.UU.
Si desea contactar a Palisade Europa: Envenos un correo electrnico a support@palisade-europe.com. Llmenos por telfono al +44 1895425050(UK). Envenos un fax al +44 1895 425051(UK). Escrbanos una carta a: Palisade Europe 31 The Green West DraytonMiddlesexUB7 7PN Reino Unido Envenos un correo electrnico a support@palisade.com.au. Llmenos por telfono al +61 2 9252 5922 (AU). Envenos un fax al +61 2 9252 2820 (AU). Escrbanos una carta a: Palisade Asia-Pacific Pty Limited Suite 404, Level 4 20 Loftus Street Sydney NSW 2000 Australia
Independientemente de cmo nos contacte, por favor, incluya el nombre del producto, versin y nmero de serie. La versin exacta puede ser encontrada al seleccionar el comando de Ayuda Acerca de en el men de RISKOptimizer en Excel.
Captulo 1: Introduccin 9
Versiones estudiantiles
El soporte telefnico no est disponible con la versin estudiantil del RISKOptimizer. Si usted requiere de ayuda, recomendamos las siguientes alternativas: Consulte con su profesor o asistente acadmico. Vaya a http://www.palisade.compara respuestas a preguntas frecuentemente hechas. Contacte a nuestro departamento de soporte tcnico va correo electrnico o fax.
10
Introduccin
Instrucciones de instalacin
El RISKOptimizer es un programa de complemento del Excel de Microsoft. Al agregar comandos adicionales a la barra de mens del Excel, el RISKOptimizer mejora la funcionalidad del programa de hoja de clculo.
Captulo 1: Introduccin
11
El DecisionTools Suite
El RISKOptimizer puede ser usado con el DecisionTools Suite, un conjunto de productos para anlisis de riesgos y decisiones de Palisade Corporation. El procedimiento de instalacin por defecto de RISKOptimizer posiciona al RISKOptimizer en un subdirectorio del directorio principal de Archivos de Programa \ Palisade. Esto es bastante similar a cmo Excel se instala frecuentemente en un subdirectorio del directorio de Microsoft Office. Un subdirectorio del directorio Archivos de Programa \ Palisade ser el directorio de RISKOptimizer (denominado por defecto RISKOptimizer 5). Este directorio contiene el archivo de complemento de RISKOptimizer (RISKOPT.) adems de modelos ejemplo y otros archivos necesarios para que se ejecute el RISKOptimizer. Otro subdirectorio de Archivos de Programa \ Palisade es el directorio de SISTEMA el cual contiene los archivos requeridos por cada programa en el DecisionTools Suite, incluyendo los archivos comunes de ayuda y las bibliotecas de programas.
12
Instrucciones de instalacin
Captulo 1: Introduccin
13
Aprendiendo el RISKOptimizer
La forma ms rpida para familiarizarse con el RISKOptimizer es al utilizar el tutorial en lnea del RISKOptimizer, en donde los expertos le guan a travs de modelos ejemplo en formato de pelcula. Este tutorial es una presentacin multi media de las particularidades principales del RISKOptimizer. El tutorial puede ser ejecutado al seleccionar el men de ayuda del RISKOptimizer en el comando de Tutorial de Cmo Empezar.
14
Instrucciones de instalacin
Captulo 2: Contexto
Qu es el RISKOptimizer? .............................................................17 Como trabaja el RISKOptimizer?......................................................18 Algoritmos genticos ...............................................................18 Distribuciones de probabilidad y Simulacin....................18 Qu es la optimizacin? ......................................................................19 Porqu construir modelos en Excel? .................................................20 Modelando incertidumbre en modelos Excel ...................................21 Usando simulacin para contabilizar la incertidumbre..................22 Porqu utilizar el RISKOptimizer?...................................................22 Ms precisos, ms significativos............................................23 Ms flexible ...............................................................................23 Ms fcil de usar .......................................................................24 Optimizacin tradicional versus la optimizacin por simulacin......................................................................................25 Proceso de optimizacin tradicional de hoja de clculo .................25 Proceso de optimizacin por simulacin ...........................................26 Cada paso de una optimizacin con el RISKOptimizer .................27 Introduciendo distribuciones de probabilidad...................27 Identificando la celda objetivo y el estadstico...................28 Introduciendo las celdas ajustables ......................................29 Introduciendo restricciones ....................................................29 Definiendo las opciones de optimizacin y de simulacin..................................................................................30 Ejecutando la optimizacin ....................................................31
Captulo 2: Contexto
15
16
Qu es el RISKOptimizer?
El paquete de software RISKOptimizer le provee a los usuarios una forma fcil de encontrar soluciones ptimas a modelos que incluyan incertidumbre. Puesto de manera sencilla, el RISKOptimizer encuentra las mejores variables de entrada que produzcan una variable de salida de simulacin deseada. Usted puede utilizar el RISKOptimizer para encontrar la mezcla apropiada, el orden o el agrupamiento de variables que produzca el mximo valor esperado de utilidades, el menor riesgo (es decir, la mnima varianza) para las utilidades o bien, el mximo valor esperado para los bienes con la menor cantidad de materiales. El RISKOptimizer es un complemento al programa de hoja de clculo Excel de Microsoft; los usuarios definen un modelo de su problema en Excel y luego invocan al RISKOptimizer para resolverlo.
Usted primeramente debe definir su modelo en Excel, y luego describrselo al complemento de RISKOptimizer.
Excel provee todas las frmulas, funciones, grficos y capacidades de macros que la mayora de los usuarios requieren para crear modelos realistas de sus problemas. El RISKOptimizer provee el interfaz para describir la incertidumbre en su modelo y lo que usted est buscando, y provee los motores para encontrarlo. Conjuntamente, stos pueden encontrar la solucin ptima a virtualmente cualquier modelo que pueda ser modelado.
Captulo 2: Contexto
17
18
Qu es el RISKOptimizer?
Qu es la optimizacin?
La optimizacin es el proceso de tratar de encontrar la mejor solucin a un problema que puede tener muchas soluciones posibles. La mayora de los problemas involucra muchas variables que interactan basadas en determinadas frmulas y restricciones. Por ejemplo, una empresa podra tener tres plantas de manufactura, cada una fabricando diferentes cantidades de distintos bienes. Dado el costo de cada planta para producir cada bien, los costos de cada planta para embarcar a cada uno de los puntos de ventas y las limitaciones de cada planta, cul es la forma ptima para satisfacer adecuadamente la demanda de las tiendas de ventas al detalle mientras que simultneamente se minimizas los costos de transporte? Este es el tipo de problemas que las herramientas de optimizacin estn diseadas para contestar.
La optimizacin lidia usualmente con la bsqueda de combinaciones que generen lo mximo de un conjunto dado de recursos.
En el ejemplo anterior, cada solucin propuesta consistira de una lista completa de cules bienes producidos por cuales plantas de manufactura se envan en cada camin a cul tienda al detalle. Otros ejemplos de problemas de optimizacin incluyen el encontrar cmo producir la mxima utilidad, el mnimo costo, la mayor cantidad de vidas salvadas, la menor cantidad de ruido en un circuito, la ruta ms corta entre un conjunto de ciudades o la mezcla ms efectiva de compras de publicidad en medios. Un subconjunto importante de problemas de optimizacin involucra problemas de calendarizacin o programacin, en donde las metas podran incluir la maximizacin de la eficiencia durante una jornada de trabajo o la minimizacin de los conflictos de calendario de reuniones de grupos en diferentes horarios. Para aprender ms de optimizacin, vase el Captulo 6 Optimizacin.
Captulo 2: Contexto 19
Cuando un problema involucra incertidumbre, los optimizadores tradicionales fallarn ya que no poseen capacidades para lidiar con la incertidumbre presente en un modelo. En el ejemplo anterior, qu pasa si la demanda de las tiendas al detalle es incierta, esto es, usted no sabe exactamente qu cantidades de productos sern demandados por cada tienda? Con un optimizador tradicional, usted slo podra asumir una cantidad para la demanda de cada tienda. Esto le permitira al modelo ser optimizado; sin embargo, los niveles asumidos de demanda haran que ste fuera una representacin poco precisa de lo que en la realidad podra ocurrir. Con el RISKOptimizer, usted no tiene que asumir un nivel para la demanda. Usted describe los valores posibles de la demanda usando las distribuciones de probabilidad y luego usa las capacidades de simulacin construidas en el RISKOptimizer para incluir todos los valores posibles de la demanda en sus resultados de optimizacin. Cuando el RISKOptimizer se utiliza, la mejor solucin generada por el optimizador no es un valor nico mnimo o mximo para el objetivo o la celda objetivo en el modelo que usted est tratando de optimizar, sino ms bien el mximo o mnimo estadstico simulado para el objetivo. Esta distribucin posee una variedad de estadsticos, tales como la media, la desviacin estndar, el mnimo, etc. En el ejemplo anterior, usted podra querer encontrar la combinacin de variables de entrada que maximizan la media de la distribucin de las utilidades o que minimiza su desviacin estndar. Para aprender ms acerca de simulacin, vase el Captulo 8 Simulacin.
20
Qu es el RISKOptimizer?
En los ltimos aos, el hardware computacional y los programas de software tales como el Microsoft Excel, han avanzado tan dramticamente que virtualmente cualquier persona con una computadora personal puede crear modelos realistas de sistemas complejos. Las funciones propias del Excel, las capacidades de las macros y el claro e intuitivo interfaz le permite a usuarios inicial es modelar y analizar problemas sofisticados. Para aprender ms acerca de la construccin de modelos, vase el Captulo 9 Extras del RISKOptimizer.
Captulo 2: Contexto
21
22
Qu es el RISKOptimizer?
Ms precisos, ms significativos
El RISKOptimizer le permite a usted utilizar el rango completo de frmulas Excel y de las distribuciones de probabilidad para construir modelos ms realistas de cualquier sistema. Cuando usted usa el RISKOptimizer, usted no tiene porqu comprometer la precisin de sus modelos debido a que el algoritmo que usted est utilizando no puede considerar las complejidades del mundo real. Los optimizadores tradicionales de juguete (herramientas estadsticas y de programacin lineal) obligan a los usuarios a realizar una serie de supuestos acerca de la forma en que las variables en su problema interactan, obligando por tanto a los usuarios a construir modelos sobre-simplificados y poco realistas de su problema. Los obligan a asumir valores para las variables inciertas ya que el optimizador no puede tomar en consideracin en rango de posibles valores para los componentes de incertidumbre del modelo. Para cuando los usuarios hay simplificado lo suficiente el sistema para que el optimizador pueda ser usado, la solucin resultante es, con frecuencia, demasiado abstracta como para que sea prctica. Cualesquiera problemas que involucren grandes cantidades de variables, funciones no lineales, tablas de bsqueda, sentencias si-entonces, bsquedas en bases de datos o elementos estocsticos (aleatorios) no pueden ser resueltos por estos mtodos, independientemente de qu tan simple usted trate de disear su modelo. Existen muchos algoritmos de solucin que hacen un buen trabajo a la hora de resolver problemas pequeos de tipo lineal y no lineal, incluyendo los mtodos de ascenso de colinas, solucionadores de juguete y otros mtodos matemticos. An cuando puedan ser ofrecidos como complementos (add-ins) para una hoja de clculo, estas herramientas de optimizacin todo-propsito slo pueden llevar a cabo optimizaciones numricas. Para problemas ms grandes o ms complejos, usted podra ser capaz de escribir algoritmos hechos a la medida para obtener buenos resultados, pero esto requerira mucha investigacin y desarrollo. An as, el programa resultante requerira de modificaciones cada vez que su modelo cambiara.
Ms flexible
Captulo 2: Contexto
23
No solamente que el RISKOptimizer puede gestionar problemas numricos, es el nico programa comercial del mundo que puede resolver la mayora de problemas combinatorios. Estos son problemas en donde las variables pueden ser combinadas de otra forma (permutadas) o combinadas entre ellas. Por ejemplo, la escogencia del orden de bateo para un equipo de bisbol es un problema combinatorio; es una cuestin de permutar las posiciones de los jugadores en la alineacin. El mismo RISKOptimizer puede resolver este tipo de problemas y muchos otros ms que ningn otro software podra resolver. La singular tecnologa del RISKOptimizer de algoritmos genticos y simulacin le permite virtualmente optimizar cualquier tipo de modelo; de cualquier tamao y de cualquier complejidad. Ms fcil de usar A pesar de su obvio poder y ventajas de flexibilidad, el RISKOptimizer permanece siendo fcil de usar debido a que la comprensin de las complejas tcnicas de los algoritmos genticos que utiliza es completamente innecesaria. Al RISKOptimizer no le incumbe para nada los dimes y diretes de su problema; solamente requiere de un modelo en una hoja de clculo que pueda evaluar qu tan buenos son los distintos escenarios. Solamente seleccione las celdas de clculo que contienen las variables y dgale al RISKOptimizer qu es lo que ests buscando. El RISKOptimizer esconde inteligentemente la dificultad tecnolgica, automatizando el proceso del tipo qu pasa si a la hora de analizar un problema. An cuando han existido muchos programas comerciales desarrollados para programacin matemtica y para construccin de modelos, las hojas de clculo son, por mucho, ms populares, con literalmente millones de ellas vendindose todos los meses. Con su intuitivo formato de filas y columnas, las hojas de clculo son ms fciles de definir y de mantener que otros paquetes dedicados. Tambin son ms compatibles con otros programas tales como los procesadores de palabras y las bases de datos, y ofrecen ms frmulas pre-construidas, opciones de formato, graficacin y capacidades de macros que cualquier otro paquete independiente. Dado que el RISKOptimizer es un complemento para el Excel de Microsoft, los usuarios obtienen acceso al rango completo de funciones y de herramientas de desarrollo para construir modelos ms realistas de su sistema.
24
Qu es el RISKOptimizer?
Captulo 2: Contexto
25
Este proceso en 5) se repite una y otra vez, a medida que el optimizador se mueve hacia la identificacin de una solucin ptima esto es, el conjunto de valores para las celdas ajustables que minimiza o maximiza el valor de la celda objetivo.
26
5) Se ejecuta una optimizacin en donde la hoja de clculo se simula un nmero de veces sucesivas, para donde en cada simulacin se usan diferentes valores posibles para las celdas ajustables. Durante este proceso: a) Cada simulacin genera una nueva distribucin de posibles valores para la celda objetivo. Se calcula estadstico de la distribucin que usted desea minimizar o maximizar. b) El optimizador usa este nuevo estadstico de la celda objetivo para seleccionar el prximo conjunto de valores para las celdas ajustables que probar. c) Se lleva a cabo otra simulacin, proveyendo otro nuevo estadstico que el optimizador puede usar para identificar un nuevo conjunto de valores para las celdas ajustables.
Este proceso en 5) se repite una y otra vez, a medida que el optimizador se mueve hacia la identificacin de una solucin ptima esto es, el conjunto de valores para las celdas ajustables que minimiza o maximiza el valor de la celda objetivo.
Al igual que con las funciones de Excel, las funciones de distribucin contienen dos elementos, un nombre de funcin y valores de argumentos que se encuentran encerrados por parntesis. Una funcin de distribucin tpica sera: RiskNormal(100,10) Al igual que con las funciones de Excel, las funciones de distribucin pueden poseer argumentos que son referencias a celdas o expresiones. Por ejemplo: RiskTriang(B1,B2*1.5,B3) En este caso el valor de la celda sera especificado por una distribucin triangular con un valor mnimo tomado desde la celda B1, un valor ms probables calculado al obtener el valor de la celda B2 y multiplicndolo por 1.5 y un valor mximo tomado desde la celda B3. Las funciones de distribucin pueden ser tambin usadas en frmulas de celdas, igual como se hace con funciones de Excel. Por ejemplo, una frmula de celda podra leerse: B2: 100+RiskUniform(10,20)+(1.5*RiskNormal(A1,A2)) Para mayor informacin respecto de cmo insertar distribuciones de probabilidad, vase la Referencia: Funciones de distribucin en el Manual del @RISK o en la Ayuda. Identificando la celda objetivo y el estadstico Tanto en el RISKOptimizer como en una optimizacin tradicional de hoja de clculo, se debe de identificar una celda objetivo. Esta es la celda cuyo valor usted est tratando de minimizar o maximizar, o la celda cuyo valor usted est tratando de acercar lo ms cercanamente posible a un valor pre-establecido. Tpicamente, este es el resultado de su modelo utilidades, el total general de su modelo, etc. pero esencialmente podra ser cualquier celda en su hoja de clculo. Se requiere que la celda contenga en ella una frmula que retorne distintos valores a medida que cambian los valores de las celdas ajustables. En el RISKOptimizer, no se est maximizando o minimizando el valor propiamente de la celda objetivo; usted est minimizando o maximizando el estadstico asociado con los resultados de simulacin para la celda objetivo. Durante una optimizacin, el RISKOptimizer ejecutar simulaciones sucesivas, cada una con un conjunto diferente de celdas con valores ajustables. Cada simulacin genera una distribucin de posibles resultados para la celda objetivo. Usted est buscando por un conjunto de valores de las celdas
28 Optimizacin tradicional versus la optimizacin por simulacin
ajustables que, por ejemplo, minimice la media de la distribucin de la celda objetivo o bien que minimice su desviacin estndar. En el RISKOptimizer usted posee ms opciones en cuanto a qu minimizar o maximizar (media, desviacin estndar, mnimo, etc.) ya que para cada solucin probada por el optimizador la simulacin asociada no genera solamente una respuesta nica. La simulacin genera una distribucin completa de posibles resultados para la celda objetivo, con un valor mnimo, un mximo, una media, una desviacin estndar y as sucesivamente. Una optimizacin tradicional genera slo una cosa un nuevo valor para la celda objetivo para cada solucin probada por el optimizador y este valor es la nica seleccin posible para minimizar o maximizar. Introduciendo las celdas ajustables Las celdas ajustables se introducen de una forma similar tanto en una optimizacin tradicional de hoja de clculo optimizacin como en el RISKOptimizer. Para cada celda que puede ser cambiada durante una optimizacin, se introduce un mnimo valor posible y un mximo valor posible. Debido a que el optimizador usado por el RISKOptimizer est basado en el Evolver, la introduccin de celdas ajustables en el RISKOptimizer posee las mismas opciones como en el Evolver. Esto incluye una tasa de mutacin, mtodos de solucin y operadores genticos. Para mayor informacin sobre la introduccin de celdas ajustables, vase la seccin Rangos de celdas ajustables en el Captulo 5: Referencia del RISKOptimizer. Introduciendo restricciones En el RISKOptimizer, as como en la optimizacin tradicional de hojas de clculo, se pueden introducir las restricciones duras que deben ser satisfechas. Si no son satisfechas, se descarta la solucin. En el RISKOptimizer, se ejecuta una simulacin completa para cada solucin de prueba. Cada simulacin est compuesta de un nmero de iteraciones o de reclculos individuales de la hoja de clculo usando nuevas muestras de las distribuciones de probabilidad en el modelo. Una restriccin dura puede ser probada: Para cada iteracin de cada simulacin (una restriccin de iteracin). Si una iteracin genera valores que violan una restriccin dura, la simulacin se detiene (y se rechaza la solucin de prueba) y se inicia la prxima simulacin de prueba con su asociada simulacin. Al final de cada simulacin (una restriccin de simulacin). Este tipo de restriccin se especifica en trminos de un estadstico de simulacin para una celda de la hoja de clculo; por ejemplo la Media deA11>1000. En este caso, se evala la restriccin al final
29
Captulo 2: Contexto
de la simulacin. Una restriccin de simulacin, en contraposicin con una restriccin de iteracin, nunca causar que se detenga la simulacin antes de que sta se complete. Una segunda forma de restricciones "restricciones blandas" tambin pueden ser usadas en el RISKOptimizer. Las penalizaciones resultantes de las restricciones blandas se calculan al final de la simulacin. Se suma (o se resta) cualquier penalizacin calculada al estadstico objetivo que est siendo minimizado o maximizado. Para mayor informacin sobre la introduccin de restricciones, vase la seccin Restricciones en el Captulo 5: Referencia del RISKOptimizer. Definiendo las opciones de optimizacin y de simulacin En el RISKOptimizer, al igual que en la optimizacin tradicional sobre hojas de clculo, estn disponibles una variedad de opciones para controlar por cunto tiempo se ejecutar la optimizacin. Sin embargo, el RISKOptimizer aade nuevas opciones para controlar cunto tiempo se ejecutar una solucin de prueba. El RISKOptimizer buscar mejores soluciones y ejecutar simulaciones hasta que se satisfagan las opciones de detencin de la optimizacin. Usted podra hacer que el RISKOptimizer ejecute un nmero especificado de minutos, ejecutarse hasta que se haya generado un nmero especfico de soluciones de prueba o ejecutarse hasta que el mejor estadstico de simulacin para la celda objetivo no haya cambiado durante un nmero determinado de pruebas. Usted tambin puede especificar durante cunto tiempo se ejecutar una solucin de prueba de simulacin. Usted podra seleccionar que cada corrida de simulacin se ejecute un nmero especificado de iteraciones o, de forma alternativa, permitir que el RISKOptimizer determine cuando detener la simulacin. Cuando usted seleccione que sea el RISKOptimizer el que decida cuando detener cada simulacin, ste detendr la simulacin cuando las distribuciones generadas para tanto 1) la celda objetivo de la optimizacin y 2) las celdas referenciadas en la las restricciones de simulacin se hayan estabilizado y los estadsticos de inters hayan convergido.
30
Ejecutando la optimizacin
Cuando el RISKOptimizer ejecuta una optimizacin la hoja de clculo es simulada un nmero sucesivo de veces, con cada simulacin usando valores posibles diferentes para las celdas ajustables. Durante este proceso: 1) El optimizador genera un conjunto de valores para las celdas ajustables. 2) La hoja de clculo es simulada con el conjunto de las celdas ajustables ajustado a los valores generados por el optimizador. En cada iteracin de la simulacin todas las funciones de distribucin en la hoja de clculo se muestrean y la hoja de clculo es re calculada, generando un nuevo valor para la celda objetivo. Si no se satisface alguna de las restricciones de iteracin despus del reclculo de la iteracin, la simulacin se detiene y el optimizador genera un nuevo conjunto de prueba para ser simulado. 3) Al final de cada simulacin se genera una nueva distribucin de los valores posibles para la celda objetivo. El estadstico que usted desea minimizar o maximizar es calculado desde esta distribucin. Si alguna de las restricciones de simulacin no se satisface, la solucin de prueba y los resultados de simulacin son descartados y el optimizador genera una nueva solucin de prueba para ser simulada. 4) El optimizador usa el nuevo estadstico para la celda objetivo calculado en la simulacin para seleccionar el prximo conjunto de valores para las celdas ajustables que probar. 5) Se ejecuta otra simulacin, proveyendo as un nuevo estadstico que el optimizador usa para identificar un nuevo conjunto de valores para las celdas ajustables. Este proceso se repite a s mismo una y otra vez, a medida que el optimizador se mueve hacia la identificacin de una solucin ptima esto es, el conjunto de valores para las celdas ajustables que minimizan o maximizar el estadstico para la celda objetivo.
Captulo 2: Contexto
31
32
33
34
Introduccin
En este captulo, le llevaremos a lo largo de toda la optimizacin con RISKOptimizer paso a paso. Si usted no tiene el RISKOptimizer instalado en su disco duro, por favor refirase a la seccin de instalacin del Captulo 1: Introduccin e instale el RISKOptimizer antes de que inicie este tutorial. Iniciaremos abriendo un modelo de hoja de clculo pre-construido, y luego definiremos el problema para el RISKOptimizer usando distribuciones de probabilidad y las cajas de dilogo del RISKOptimizer. Finalmente, visualizaremos el progreso del RISKOptimizer a medida que busca las soluciones, y exploraremos algunas de las tantas opciones en el Controlador del RISKOptimizer. Para informacin adicional acerca de cualquier tpico especfico, vase el ndice en la parte posterior de este manual, o refirase al Captulo 5: Referencia del RISKOptimizer. NOTA: Las pantallas mostradas a continuacin son del Excel 2007. Si usted est utilizando otras versiones del Excel, sus ventanas podran aparecer ligeramente distintas de las mostradas en los cuadros. El proceso de resolucin del problema se inicia con un modelo que represente de manera precisa un problema. Su modelo debe ser capaz de evaluar un determinado conjunto de valores de entrada (celdas ajustables) y producir un ndice numrico de qu tan bien tales variables de entrada resuelven su problema (la funcin de evaluacin o de aptitud). Su modelo tambin requiere la inclusin de distribuciones de probabilidad que describan el rango de posibles valores para un determinado nmero de elementos inciertos. A medida que el RISKOptimizer busca soluciones, la simulacin de la funcin de aptitud provee de retroalimentacin, dicindole al RISKOptimizer que reproduzca incrementalmente las mejores posibilidades. Cuando usted crea un modelo de su problema, debe de poner especial atencin a la funcin de aptitud, ya que el RISKOptimizer estar haciendo todo lo que se encuentre a su alcance para maximizar (o minimizar) los resultados de simulacin para esta celda.
35
36
Para revisar las funcionalidades del RISKOptimizer, usted examinar un modelo ejemplo que fue instalado cuando se instal el RISKOptimizer. Para hacer esto: 1) Abra el archivo de libro de trabajo LNEA AEREA.XLS desde su directorio de RISKOPTIMIZER5\EJEMPLOS.
37
Esta hoja ejemplo contiene un modelo de administracin de rendimientos que identifica el nmero ptimo de asientos a tarifa completa y a tarifa de descuento que deben venderse para un vuelo en particular. Tambin identifica el nmero ptimo de reservaciones a aceptar en exceso al nmero de asientos disponibles el clsico problema de sobreventa. Solamente que hay un truco con este problema de optimizacin convencional algunos de los estimados de este modelo son inciertos o estocsticos. Esto incluye al nmero de pasajeros que en realidad s se presentarn para abordar el vuelo, el nmero de reservaciones que sern demandadas en cada categora de tarifa y el costo de dejar en tierra a un pasajero (esto es, a veces un voucher de viaje de $100 ser suficiente, mientras que otras veces se requerir de un boleto ida y vuelta). Tradicionalmente, se usan estimaciones de punto nico para estos tems, permitiendo que se ejecute una optimizacin normal Pero qu pasa si sus estimadores no son correctos? Usted podra terminar tomando muy pocas reservaciones, enviando el avin con asientos vacos o sobrevendindolo demasiado. Usted podra vender demasiados asientos a tarifa de descuento disminuyendo sus utilidades. Usted tambin podra reservar muchos asientos a tarifa completa, resultando en aviones medio vacos. El RISKOptimizer resolver este problema de optimizacin mientras se permite que usted tome en consideracin la incertidumbre inherente de su modelo. Con el ejemplo de la aerolnea, primero usted describir la incertidumbre presente en su modelo usando distribuciones de probabilidad. Luego utilizar las ventanas de dilogo del RISKOptimizer para configurar su problema de optimizacin. Luego, el RISKOptimizer se ejecutar para identificar el nmero ptimo de reservaciones a tarifa fija y a descuento que maximizan la utilidad mientras se mantiene el riesgo a niveles aceptables.
misma forma que son introducidas las funciones de Excel convencionales. Por ejemplo, la funcin: RiskTriang(10,20,30) especifica una distribucin triangular con un valor mnimo posible de 10, un valor ms esperado de 20 y un mximo de 30.
En el modelo de la aerolnea existen cinco factores inciertos, cada uno de ellos descrito por distribuciones de probabilidad. La primera de estas es: Demanda por reservaciones a tarifa completa (en celda C8), descrita por la distribucin de probabilidad RiskTriang(3,7,15). Esta funcin especifica que el nmero de reservaciones a tarifa completa que ser demanda podra ser tan baja como de tres, tan alta como de 15 y con un valor ms esperado de 7.
Para introducir esta distribucin de probabilidad: 1) Seleccione la celda C8. 2) Introduzca la frmula =REDONDEAR(RiskTriang(3,7,15),0). La funcin REDONDEAR del Excel toma simplemente la muestra retornada por la funcin RiskTriang y la redondea a su ms prximo entero. (No se puede tener una demanda de 3.65 reservaciones!)
Las otras distribuciones en el modelo, listadas a continuacin, ya han sido introducidas en Aerolneas.XLS. Usted puede moverse a la celda en donde cada una est localizada y revisarlas si desea. % de ausencias reservaciones a tarifa completa (en celda C7). Esta est descrita por RiskNormal(.2,.03), implicando que en promedio el 20% de las reservaciones a tarifa completa realizadas
39
no se presentan al vuelo. El porcentaje real de ausencias variar alrededor del 20% tal y como la describe una distribucin normal con una media de 0.2 y una desviacin estndar de.03. % de ausencias reservaciones a tarifa de descuento(en celda C11). Esta est descrita por RiskNormal(.1,.01), implicando que en promedio el 10% de las reservaciones a tarifa a descuento realizadas no se presentan al vuelo. El porcentaje real de ausencias variar alrededor del 10% tal y como la describe una distribucin normal con una media de 0.2 y una desviacin estndar de.03.Se presentan al vuelo una mayor cantidad de personas con reservacin a tarifa a descuento en comparacin con los de tarifa completa ya que existe un $75 de cargo por cambiar los tiquetes a descuento versus nada por cambiar boletos de tarifa completa totalmente reembolsables. Demanda por reservaciones a tarifa de descuento (en celda C12), descritas por la distribucin de probabilidad RiskTrigen(12,20,40,10,90). Esta funcin especifica que el nmero de reservaciones a descuento demandadas est descrito por una distribucin de probabilidad triangular cuyo dcimo percentil es 12, el valor ms probable es 20 y el nonagsimo percentil es 40. Costo de dejar en tierra a pasajeros (en celda C23), descrito por la distribucin de probabilidad RiskDiscrete({100,150,200,250},{0.1,0.4,0.4,0.1}). Esto especifica que el costo por pasajero dejado en tierra podra ser de $100, $150, $200 $250, ya que algunas veces los pasajeros se ofrecern como voluntarios para quedarse en tierra en un vuelo sobrevendido por un voucher de viaje de $100, mientras que otras veces se requerir de una mayor compensacin.
Para mayor informacin sobre sta y otras distribuciones de probabilidad, vase Referencia: Funciones de distribucin en el manual de @RISK o en la Ayuda. Con las distribuciones de probabilidad describiendo la incertidumbre introducida en su modelo, ahora usted puede definir la optimizacin utilizando cajas de dilogo del RISKOptimizer.
40
La caja de dilogo de Modelo de RISKOptimizer est diseada de forma tal que los usuarios puedan describir su problema de una forma simple y directa. En nuestro ejemplo del tutorial, estamos tratando de encontrar el nmero de reservaciones para asientos a tarifa completa y a tarifa a descuento que deben ser aceptados para poder maximizar la utilidad total general.
41
42
La mayora de las veces usted podra querer restringir los posibles valores para un rango de celdas ajustables a un rango mnimomximo. En el RISKOptimizer esto se conoce como una restriccin de rango. Usted puede introducir rpidamente este rango mn-max cuando usted selecciona el conjunto de celdas a ser ajustado. Para el ejemplo de Aerolneas, el mnimo valor posible para las reservaciones aceptadas en este rango es 19 y el mximo es de 30. Para introducir esta restriccin de rango: 1) Introduzca un 19 en la celda de Mnimo y de un 30 en la celda de Mximo. 2) En la celda de valores, seleccione Entero de la lista de tipo dropdown.
43
Ahora, introduzca una segunda celda a ser ajustada: 1) Haga clic sobre Aadir para introducir una segunda celda ajustable. 2) Seleccione la celda C15. 3) Introduzca un 0 como el Mnimo y un 1 como el Mximo.
Esto especifica la ltima celda ajustable, C15, que representa el porcentaje de total de reservaciones que ser asignada a asientos de tarifa completa. Si hubiese variables adicionales en este problema, continuaramos aadiendo conjuntos de celdas ajustables. En el RISKOptimizer, usted puede crear un nmero ilimitado de grupos de celdas ajustables. Para aadir ms celdas, haga clic en el botn de Aadir una vez ms. Ms adelante, usted podra verificar las celdas ajustables o cambiar alguna de sus configuraciones. Para hacer esto, simplemente edite el rango mn-mx en la tabla. Usted tambin podra seleccionar un conjunto de celdas y eliminarlas al hacer clic en el botn de Eliminar.
44
Cuando se definen las celdas ajustables, usted puede especificar un mtodo de solucin a ser utilizado. Se pueden manejar distintos tipos de celdas ajustables por los distintos mtodos de solucin. Los mtodos de solucin se especifican para un Grupo de celdas ajustables y se cambian al hacer clic sobre el botn de Grupo y al desplegar la caja de dilogo de Configuracin de grupo de celdas ajustables. Con frecuencia, se usar el Mtodo de solucin: de receta en donde el valor de cada celda puede ser cambiado independientemente de las otras. Ya que ste es seleccionado como el mtodo por defecto, usted no tiene que cambiarlo.
Los mtodos de solucin de receta y de orden son los ms populares y pueden ser utilizados para resolver complejos problemas combinatorios. Especficamente, el Mtodo de solucin: de receta trata a cada variable como el ingrediente de una receta, tratando de encontrar la mejor mezcla al cambiar cada valor de variable de forma independiente. De forma contrastante, el Mtodo de solucin: de orden permuta valores entre variables, mezclando los valores originales para encontrar el mejor orden.
45
Restricciones
El RISKOptimizer le permite introducir restricciones que son condiciones que deben ser satisfechas para que cierta solucin sea vlida. En este modelo de ejemplo existen dos restricciones adicionales que deben ser satisfechas para que un posible conjunto de valores sea vlido respecto del mximo nmero de reservaciones aceptada y el % de boletos a tarifa completa. Estas son adicionales a las restricciones de rango que ya introdujimos para las celdas ajustables. Estas son: La utilidad debe ser siempre > 0. La desviacin estndar de los resultados de simulacin para la utilidad deben ser < 400.
Cada vez que el RISKOptimizer genera una solucin posible para su modelo, se ejecutar una simulacin para tal solucin. Cada simulacin involucrar cientos o miles de iteraciones o de reclculos de la hoja de clculo. En cada iteracin, se muestrea un valor desde cada distribucin de probabilidad en el modelo, el modelo es re calculado usando estos nuevos valores muestreados y un nuevo valor se genera para la celda objetivo. Al final de la simulacin de soluciones de prueba, se genera una distribucin de probabilidad para la celda objetivo usando los mismos valores calculado para cada iteracin. Restricciones de iteracin y de simulacin El RISKOptimizer puede verificar de dos formas sus restricciones: Despus de cada iteracin de una simulacin (una restriccin de iteracin) Al final de cada simulacin (una restriccin de simulacin")
En el modelo de Aerolneas, las Utilidades deben siempre ser > 0 es una restriccin de iteracin, mientras que la desviacin estndar de los resultados de simulacin de las utilidades deben ser <400 es una restriccin de simulacin. En otras palabras, despus de cada iteracin de una simulacin, el RISKOptimizer verificar para asegurarse que las Utilidades sean mayores que 0; si no es as, la solucin de prueba ser descartada. Si una simulacin se completa exitosamente (esto es, Utilidades > 0 para todas las iteraciones), se verificar la desviacin estndar de la distribucin de probabilidad de las utilidades para asegurarse que sea menor a 400; si no es as, la solucin de prueba ser descartada.
46
Las restricciones se despliegan en el botn de la seccin de Restricciones en la caja de dilogo de Modelo del RISKOptimizer. Se pueden especificar dos tipos de restricciones con el RISKOptimizer: Duras. Estas son condiciones que deben ser satisfechas para que una solucin sea vlida (un restriccin de iteracin dura podra ser que C10<=A4; en este caso, si la solucin genera un valor para C10 que es mayor que el valor de la celda A4, la solucin ser descartada). Blandas. Estas son condiciones que desearamos que pudieran ser satisfechas en la medida de lo posible, pero para las cuales estaramos dispuestos a ceder a cambio de un mejoramiento significativo en el ajuste o en el resultado de la celda objetivo. (esto es, una restriccin blanda podra ser C10<100. En este caso, C10 podra ser mayor que 100, pero cuando esto sucede el valor calculado para la celda objetivo se disminuira de acuerdo a una funcin de penalizacin que usted haya introducido.)
Para aadir una restriccin: 1) Haga clic sobre el botn Aadir en la seccin de Restricciones en la caja de dilogo del Modelo de RISKOptimizer. Esto desplegar la caja de dilogo de Configuracin de Restricciones, en donde usted introduce las restricciones para su modelo.
47
Se pueden usar dos formatos Simples y de frmula para la introduccin de restricciones. Un formato de Rango Simple de Valores permite que se introduzcan restricciones usando relaciones simples <, <=, >, >= o =. Una restriccin tpica de Rango Simple de Valores podra ser 0<Valor de A1<10, en donde A1 es introducido en la caja de Rango de celda, 0 se introduce en la caja de Mn y 10 se introduce en la caja de Mx. El operador deseado se selecciona de las cajas de listas tipo drop-down. Con una restriccin de formato de Rango Simple de Valores, usted puede introducir solamente un valor mnimo, un valor mximo o ambos. Por el otro lado, una restriccin de frmula, le permite introducir cualquier frmula vlida de Excel como una restriccin, tal como A19<(1.2*E7)+E8. Para cada posible solucin el RISKOptimizer verificar si la frmula introducida evala un VERDADERO o un FALSO para ver si la restriccin ha sido satisfecha. Si usted desea usar una frmula booleana en una celda de la hoja de clculo como restriccin, simplemente haga referencia a esa celda en el campo de Frmula de la caja de dilogo de la Configuracin de Restricciones. Para introducir las restricciones para el modelo de aerolneas usted deber especificar dos nuevas restricciones. Primero, introduzca la restriccin de formato duro de Rango Simple de Valores para Utilidades > 0: 1) Introduzca "Utilidad> 0"en la caja de descripcin. 2) En la caja de Rango a restringir, introduzca C27. 3) Seleccione el operador > a la derecha del Rango a Restringir. 4) Limpie del valor 0 por defecto en la caja de Mximo. 5) A la izquierda del Rango a Restringir, limpie el operador al seleccionar un espacio en blanco de la lista de tipo dropdown. 6) Haga clic sobre Cada iteracin de cada simulacin, y luego digite Aceptar. Esto especifica que usted siempre deber asegurarse que la Utilidad es mayor que 0, independientemente del nmero de reservaciones que se admitan.
48
7) Haga clic sobre Aceptar para introducir esta restriccin. Ahora, introduzca la restriccin de simulacin: 1) Haga clic sobre Aadir para desplegar de nuevo la caja de dilogo de Configuracin de Restricciones. 2) Teclee Desv Est de Utilidad < 400 en la caja de descripcin. 3) En la caja de Rango a Restringir, introduzca C27. 4) Seleccione el operador < a la derecha del Rango de Celda. 5) Introduzca 400 en la caja de Mx. 6) A la izquierda del Rango a Restringir, limpie el operador al seleccionar el espacio en blanco de la lista de tipo dropdown. 7) Haga clic sobre la lista de tipo dropdown de Estadstico a Restringir y seleccione "Desviacin estndar". 8) Haga clic sobre Aceptar.
49
Su dilogo de Modelo con la seccin completada de restricciones debera verse como ac:
50
51
En la caja de dilogo de Configuracin de la Optimizacin usted puede seleccionar cualquier combinacin de estas condiciones de detencin de optimizacin, o ninguna. Si usted selecciona ms de una condicin de detencin, el RISKOptimizer se detendr cuando cualesquiera de las condiciones seleccionadas haya sido satisfecha. Si usted no selecciona ninguna condicin de detencin, el RISKOptimizer se ejecutar para siempre, hasta que usted digite manualmente el botn de detencin en la barra de herramientas del RISKOptimizer.
Simulaciones Esta opcin define el nmero de simulaciones que usted desea que el RISKOptimizer ejecute. El RISKOptimizer ejecuta una simulacin para un conjunto completo de variables o una solucin posible del problema. Tiempo El RISKOptimizer se detendr despus de que una cantidad especificada de tiempo haya transcurrido. El nmero puede ser una fraccin.(4.25). Progreso Esta condicin de detencin es la ms popular porque rastrea el mejoramiento y permite que el RISKOptimizer se ejecute hasta que la tasa en mejoramiento haya decrecido. Por ejemplo, el RISKOptimizer podra detenerse si 100 simulaciones han pasado y an no hemos encontrado algn cambio en el mejor escenario encontrado hasta ese momento. Frmulaes verdadera El RISKOptimizer se detendr si la frmula introducida del Excel evala un VERDADERO en una simulacin.
1) Defina los Minutos = 5 para permitir que el RISKOptimizer se ejecute durante cinco minutos.
52
El RISKOptimizer ejecuta una simulacin completa de su modelo para cada prueba de solucin que genere. Usted puede especificar cunto ejecutar cada una de estas simulaciones utilizando las Condiciones de Detencin de Simulacin. Usted puede ejecutar cada simulacin para un determinado nmero fijo de iteraciones, o alternativamente, permitir que el RISKOptimizer determine cundo detener cada simulacin.
Iteraciones Detencinen convergenciareal Estaopcinleinstruyeal RISKOptimizerque detengacadasimulacin cuandoladistribucin generadatantopara1) celdaobjetivodela optimizaciny2)las celdasreferenciadasen lasrestriccionesde simulacinestnestables ylosestadsticosde intershayanconvergido. Lacantidaddevariacin permitidaenun estadsticocuandoest marcadocomo convergidosedefineen laopcindeTolerancia. Detencinenconvergencia proyectada Estaopcinleinstruyeal RISKOptimizerquedetenga cadasimulacincuando puedaproyectar internamentequelas distribucionesgeneradas tantopara1)lacelda objetivodelaoptimizacin y2)lasceldasreferenciadas enlasrestriccionesde simulacinestnestables.El RISKOptimizerproyectala convergenciabasadaenlos resultadosdesimulaciones previasquesehayan ejecutadodurantela optimizacin.
Estaopcinlepermite ejecutarcadasimulacin duranteundeterminado nmerofijodeiteraciones. Enestecaso,el RISKOptimizerejecutarel nmeroespecificadode iteracionesparacada simulacinquesellevea caboparacadasolucinde pruebageneradaporel RISKOptimizer(amenos quesedetenga prematuramentecuandono sesatisfagaunarestriccin deiteracin).
1) Defina las Iteraciones = 500 para hacer que el RISKOptimizer ejecute una rpida simulacin para cada solucin de prueba.
53
El RISKOptimizer puede desplegar una descripcin persistente de cada simulacin ejecutada durante una optimizacin, incluyendo el valor del estadstico objetivo calculado, los estadsticos bsicos de la distribucin simulada de los valores de la celda objetivo, los valores de la celda ajustable usados y si las restricciones han sido satisfechas o no. Para visualizar esta bitcora durante una optimizacin: 1) Haga clic sobre la pestaa de Visualizar y seleccione Mantener bitcora de todas las simulaciones en la caja de dilogo de Configuracin de optimizacin.
54
Ejecutando la optimizacin
Ahora, todo lo que queda es optimizar el modelo para determinar el nmero mximo de reservaciones para cada categora de tarifas que maximizan su utilidad. Para hacer esto: 1) Haga clic sobre Aceptar para salir de la caja de dilogo de Configuracin de optimizacin. 2) Haga clic sobre el cono de Iniciar Optimizacin. A medida que el RISKOptimizer inicia a trabajar sobre su problema, usted ver el mejor valor actual para sus celdas ajustables # total de reservaciones aceptadas y % de reservaciones de tarifa completa en su hoja de clculo. La mejor media para las Utilidades se muestra en azul con una flecha apuntando hacia la celda objetivo.
Durante la ejecucin, la ventana de Progreso despliega: 1) la mejor solucin encontrada hasta ese momento, 2) el valor original para el estadstico seleccionado de simulacin para la celda objetivo cuando la optimizacin de RISKOptimizer se inici, 3) el nmero de simulaciones de su modelo que han sido ejecutadas y el nmero de tales simulaciones que fueron validas, esto es, en donde todas las restricciones fueron satisfechas y 4) el tiempo transcurrido durante la optimizacin. En cualquier momento durante la ejecucin usted puede hacer clic sobre el cono de Opciones de Despliegue de Actualizacin de Excel para observar una actualizacin en vivo en la ventana de cada simulacin.
55
El RISKOptimizer tambin puede desplegar una bitcora dinmica de las simulaciones llevadas a cabo para cada solucin de prueba. Esta se despliega en el Observador del RISKOptimizer mientras se ejecute el RISKOptimizer. El Observador del RISKOptimizer le permite a usted explorar y modificar muchos aspectos de su problema a medida que se ejecuta. Para visualizar una bitcora dinmica de las simulaciones llevadas a cabo: 1) Haga clic sobre el cono de Observador (lente) en la ventana de Progreso para desplegar el Observador del RISKOptimizer. 2) Haga clic sobre la pestaa de Bitcora.
En este reporte, se muestran los resultados de la corrida de la simulacin para cada solucin de prueba. La columna de Resultado muestra para cada simulacin el valor del estadstico de la celda objetivo que usted est intentando de maximizar o minimizar en este caso, la media de la Utilidad en $C$27. Las columnas para Media del resultado, Desv Est del resultado, mn del resultado y mx del resultado describen la distribucin de probabilidad para la celda objetivo Utilidad que fue calculada para cada simulacin. Las columnas para $C$14 y $C$15 identifican los valores usados para sus celdas ajustables. Las columnas para Desv Est < 400 y Utilidad > 0 para mostrar que sus restricciones fueron satisfechas en cada simulacin.
56
Deteniendo la optimizacin
Despus de cinco minutos, el RISKOptimizer detendr la optimizacin. Usted tambin puede detener la optimizacin al: 1) Hacer clic sobre el cono de Detener en las ventanas del Observador del RISKOptimizer o en la de Progreso. Cuando el proceso del RISKOptimizer se detiene, el RISKOptimizer despliega una pestaa de Opciones de Detencin que ofrece las siguientes opciones:
Estas mismas opciones aparecern automticamente cuando cualesquiera de las condiciones de detencin que fueron definidas en la caja de dilogo de la Configuracin de la Optimizacin del RISKOptimizer se satisfagan.
57
Reporte resumen
El RISKOptimizer puede crear un reporte resumen de optimizacin que contiene informacin tale como la fecha y hora de la corrida, las configuraciones de optimizacin utilizados, el valor calculado para la celda objetivo y el valor para cada una de las celdas ajustables.
58
Para colocarla nueva y optimizada mezcla de niveles de produccin para las Aerolneas de las diecisis tareas en su hoja de clculo: 1) Haga clic en el botn de Detener. 2) Asegrese que la opcin de Actualizar valores de celda ajustable mostrados en el libro de trabajo est puesto en Mejor. Usted ser devuelto a la hoja de clculo de AEROLINEAS.XLS, con todos los nuevos valores de variables que crearon la mejor solucin. Recurdese que la mejor solucin es la media de los resultados de simulacin para la Utilidad y ste no es el mismo valor mostrado para un simple reclculo de las Utilidades que use los mejores valores de la variable. La mejor media se muestra en la caja azul con la flecha que apunta hacia la Utilidad.
NOTA IMPORTANTE: An cuando en nuestro ejemplo usted puede observar que el RISKOptimizer encontr una solucin que gener una utilidad total de 2236.03, su resultado podra ser un poco mayor o menor que este. El RISKOptimizer pudo tambin haber encontrado una combinacin diferentes para el Mximo de Reservaciones Aceptadas y para el Porcentaje Vendido a Tarifa Completa que hubiese producido la misma nota total. Estas diferencias se deben a una distincin importante entre el RISKOptimizer y todos los algoritmos de resolucin de problemas: es la naturaleza aleatoria del motor de algoritmos genticos del RISKOptimizer lo que permite resolver una amplia variedad de problemas y de encontrar mejores soluciones.
Captulo 3: RISKOptimizer: Paso a paso 59
Cuando usted no guarda una hoja de clculo despus de que el RISKOptimizer se ha ejecutado sobre ella (an cuando usted restaure a los valores originales de su hoja despus de haber ejecutado el RISKOptimizer ), todas las configuraciones en las cajas de dilogo del RISKOptimizer sern guardadas junto con la hoja de clculo. La prxima vez que la hoja sea abierta, todas las configuraciones ms recientes del RISKOptimizer se cargarn automticamente. Todas las otras hojas de clculo de ejemplos contienen las configuraciones de RISKOptimizer previamente cargadas y listas para ser optimizadas. NOTA: Si usted desea echar una mirada al modelo de Aerolneas con todas las configuraciones de optimizacin previamente completadas, brase el archivo RENDAEREOS.XLS.
60
Introduccin ......................................................................................63 Distribucin presupuestaria ............................................................65 Planeamiento de capacidad.............................................................67 Programador de clases ....................................................................69 Haciendo coberturas con futuros ...................................................73 Programacin de produccin en un taller .....................................75 Balanceo de una cartera de inversiones........................................77 Mezcla de carteras............................................................................81 Riesgo de cartera..............................................................................83 Problema del vendedor ambulante.................................................85 Administracin de rendimientos.....................................................87
61
62
Introduccin
Este captulo explica cmo el RISKOptimizer puede ser usado en una variedad de aplicaciones. Estas aplicaciones de ejemplo podran no incluir todas las caractersticas que usted deseara tener en sus propios modelos, y son ms efectivos como generadores de ideas y plantillas. Todos los ejemplos ilustran cmo el RISKOptimizer busca soluciones al basarse en las relaciones ya existentes en su hoja de clculo, de tal forma que es importante que su modelo de hoja de clculo refleje precisamente el problema que usted est tratando de resolver. Todas las hojas de clculo ejemplo de Excel pueden ser encontradas en su directorio de RISKOptimizer 5en el subdirectorio denominado EJEMPLOS". Cada ejemplo viene con todas las configuraciones de RISKOptimizer previamente seleccionadas, incluyendo la celda objetivo, las celdas ajustables, los mtodos de solucin y las restricciones. Lo motivamos a que examine estos dilogos de configuracin antes de proceder a optimizar. Al estudiar las frmulas y experimentar con distintas configuraciones del RISKOptimizer, usted puede obtener una mejor comprensin de cmo se utiliza el RISKOptimizer. Tambin, los modelos le permiten reemplazar los datos muestrales con sus propios datos de usuario. Si usted decide modificar o adaptar estas hojas de ejemplo, sera recomendable que las guarde con un nuevo nombre para preservar los ejemplos originales para referencia posterior.
63
64
Distribucin presupuestaria
Un ejecutivo principal desea encontrar la forma ms efectiva para distribuir los fondos entre varios departamentos de la compaa para maximizar las utilidades. A continuacin hay un modelo de un negocio y sus utilidades proyectadas para el prximo ao. El modelo estima las utilidades del ao entrante al examinar el presupuesto anual y al hacer supuestos sobre, por ejemplo, cmo la publicidad afecta las ventas. Las estimaciones inciertas incluyen distribuciones de probabilidad que reflejan los rangos de posibles valores. Este es un modelo simple, pero ilustra cmo usted puede configurar cualquier modelo y utilizar el RISKOptimizer para alimentarlo de variables de entrada para encontrar la mejor variable de salida.
Archivo ejemplo: Objetivo: Presup.xls Distribuir el presupuesto anual entre cinco departamentos para maximizar las utilidades del ao entrante. presupuesto Distribuir cualquier recurso escaso (tal como mano de obra, dinero, energa, tiempo) a entidades que puedan utilizarlos en diferentes maneras o con diferentes eficiencias.
65
El archivo presup.xls modela los efectos del presupuesto de una compaa sobre sus ventas futuras y su utilidad. Las celdas C4:C8 (las variables) contienen las cantidades a ser gastadas en cada uno de los cinco departamentos. Estos valores totalizan la cantidad en la celda C10, el presupuesto total anual para la compaa. Este presupuesto es definido por la compaa y es invariable. Las celdas F6:F10 computan es estimado de la demanda para el producto de la compaa el ao entrante, basado en los presupuestos de publicidad y de mercadeo. El monto de ventas reales es el mnimo de la demanda calculada y la oferta. La oferta es dependiente del monto asignado a los departamentos de produccin y operaciones. Los estimados inciertos en el modelo se incluyen como distribuciones de probabilidad usados en los clculos para la estimacin de ventas en las celdas F6 a F10.
Cmo resolverlo
Maximice la utilidad en la celda I16 utilizando el mtodo de solucin de presupuesto (budget) para ajustar los valores en las celdas C4:C8. Defina los rangos independientes para cada una de las celdas ajustables para el presupuesto de cada departamento, para evitar que RISKOptimizer intente valores negativos, o nmeros que no corresponderan a soluciones correctas (por ejemplo, todo en publicidad y nada en produccin) para el presupuesto departamental. El mtodo de solucin de presupuesto (budget) trabaja como el mtodo de solucin de receta (recipe), en el hecho de que est tratando de encontrar la mezcla adecuada a las variables escogidas. Cuando usted utiliza el mtodo de presupuesto, sin embargo, usted agrega la restriccin de que todas las variables deben sumar al mismo nmero que haba antes de que RISKOptimizer iniciara la optimizacin.
66
Distribucin presupuestaria
Planeamiento de capacidad
Este modelo utiliza al RISKOptimizer para seleccionar el nivel de capacidad para una nueva planta para poder maximizar las utilidades. En el modelo, Zooco est pensando mercadear un nuevo frmaco utilizado para hacer ms sanos a los hipoptamos. Un modelo de simulacin estndar es utilizado para generar la distribucin del VAN para la produccin del nuevo frmaco. Sin embargo, es necesario decidir sobre cul capacidad de planta construir. Cul nivel de capacidad maximiza el VAN ajustado al riesgo?
Archivo ejemplo: Objetivo: capacidad.xls Maximizar la media de la distribucin simulada para el VPN al cambiar la capacidad de planta. receta Anlisis de negocios que combinan los modelos de simulacin tradicional con variables de decisin controladas por el usuario.
67
Al principio del ao actual, existen 1,000,000 de hipoptamos que podran utilizar el producto como se muestra en la celda B11. Cada hipoptamo utilizar el frmaco (o el frmaco de la competencia) como mximo una vez al ao. Se estima que el nmero de hipoptamos crecer a una tasa promedio de 5% por ao, y estamos 95% seguros que el nmero de hipoptamos crecer cada ao entre 3% y 7% (modelado utilizando distribuciones de probabilidad en las celdas B11 a F11). No estamos seguros de cul ser la tasa de utilizacin del frmaco durante el ao 1, pero nuestra estimacin ms pesimista es un 20% de uso, la ms probable es un 40% y el ms optimista en un 70% (modelado utilizando distribucin de probabilidad en la celda B12). En aos posteriores, creemos que la fraccin de hipoptamos usando nuestro frmaco (o el de la competencia) se mantendr igual, pero en el ao despus de que un competidor entra, perdemos el 20% de nuestra participacin por cada competidor que entre. Cuesta $3.50 construir una unidad de capacidad anual y $0.30 por ao operar una unidad de capacidad (sea que utilicemos o no la capacidad de produccin del frmaco). Cualquier nivel de capacidad entre 100,000 y 500,000 unidades puede ser construido. Utilice el mtodo de solucin de receta (recipe) para la celda G5. Maximice la media simulada en B21.
Cmo resolverlo
68
Planeamiento de capacidad
Programador de clases
Una universidad debe asignar 25 diferentes clases a 6 bloques predefinidos de tiempo. Debido a que el programa debe ser desarrollado antes de la matrcula de los estudiantes, el nmero real de estudiantes por clase es incierto. Cada clase utiliza exactamente un bloque de tiempo. Normalmente, esto nos permitira tratar el problema con el mtodo de solucin de agrupamiento. Sin embargo, existen un nmero de restricciones que deben ser satisfechas a medida que las clases son programadas. Por ejemplo, biologa y qumica no deben ocurrir en el mismo tiempo de forma tal que los estudiantes de pre-medicina puedan tomar ambas clases en el mismo semestre. Para satisfacer tales restricciones, utilizamos alternativamente el mtodo de solucin de calendarizacin. El mtodo de solucin de calendarizacin es como el mtodo de agrupamiento, slo que con la restriccin de que ciertas tareas deben (o no deben) ocurrir antes (o despus o durante) otras tareas.
Archivo ejemplo: Objetivo: clases.xls Asignar 25 clases a 6 periodos de tiempo para minimizar la media de la distribucin simulada del nmero de estudiantes que quedan excluidos de los cursos. Satisfacer un nmero de restricciones respecto de qu clases debe suceder en qu momento. calendarizacin Cualquier problema de programacin en donde todas las tareas sean de la misma duracin y puedan ser asignadas a cualquier nmero de bloques de tiempo discretos. Tambin, cualquier problema de agrupamiento en donde existan restricciones respecto de ciertos tems que deben ser asignados a determinados grupos.
69
El archivo de clases.xls contiene un modelo de un problema tpico de calendarizacin en donde se deben satisfacer muchas restricciones. El rango de posibles valores para cada clase est dado por las distribuciones de probabilidad introducidas en el rango D8:D32 denominado Tamao real. Las celdas C8:C32 asignan las 25 clases a los 6 bloques de tiempo. Slo existen cinco aulas disponibles, de forma tal que la asignacin de ms de cinco cursos a un bloque de tiempo implicara que al menos una de los cursos no podra efectuarse. Las celdas L20:N28 contienen las restricciones; a la izquierda de las restricciones se encuentran descripciones de las restricciones en castellano. Usted puede usar tanto el cdigo de nmero o la descripcin en castellano de la restriccin. La lista de los cdigos de restriccin para problemas de calendarizacin puede ser encontrada con mayor detalle en la seccin de Mtodos de solucin del Captulo 5: Referencia del RISK. Cada calendario posible es evaluado al calcular tanto a) el nmero de cursos que no pueden satisfacerse y b) el nmero de estudiantes que no pueden matricularse en sus cursos debido a que las aulas estn llenas. Esta ltima restriccin impide al RISKOptimizer de calendarizar todos los cursos grandes en el mismo tiempo. Si slo uno o dos cursos se llevan a cabo durante un bloque de tiempo, las aulas ms grandes pueden ser utilizadas para ellos.
70
Programador de clases
Las celdas J11:M11 usan la funcin de Excel DCONTAR para contar cuntas clases son asignadas a cada bloque de tiempo. La seccin justo debajo de las celdas J12:M12 calcula cuntos cursos no obtuvieron asignacin de aula para ese bloque de tiempo. Todos los cursos que no obtengan aula se totalizan en la celda L13. Si el nmero de asientos requeridos por un curso en particular excede el nmero de asientos disponibles, las celdas J15:M15 calculan cunto y el nmero total de estudiantes sin cupo se calcula en la celda L16. En la celda G9, el nmero total de estudiantes sin cupo se aada al tamao de curso promedio y se multiplica por el nmero de cursos que no obtuvieron aula. De esta forma, tenemos una sola celda que combina todas las penalizaciones de forma tal que un nmero bajo en esta celda siempre indicar una mejor calendarizacin. Cmo resolverlo Minimice la media de la distribucin simulada de las penalizaciones en la celda G9 al cambiar las celdas C8:C32. Use el mtodo de solucin de calendario. Cuando se selecciona este tipo de mtodo de solucin, usted ver un nmero de opciones relacionadas que aparecen en la seccin inferior de opciones en la caja de dilogo. Defina el nmero de bloques de tiempo a 6 y defina las celdas de restriccin en L20:N28.
71
72
73
El modelo intenta asegurarse que el costo de comprar 500,000 galones de aceite de combustin en el futuro sea tan predecible como sea posible utilizando contratos a futuro para protegerse en contra de las oscilaciones en los precios. Los factores inciertos en el modelo son el precio futuro spot del aceite (celda B13) y el precio futuro de los Futuros de Aceite (celda B15). Lo primero que necesitamos hacer es escoger una celda ajustable. Para este modelo, deseamos ajustar la celda B12 el # de contratos a futuro a ser adquiridos (posicin larga) para minimizar la desviacin estndar del costo total en la celda B23. El nmero mnimo de contratos que pueden ser adquiridos es 0 y el mximo es 600,000.
Cmo resolverlo
74
75
La longitud incierta de cada tareas est descrita por las distribuciones de probabilidad en las celdas E11 a E35. La celda D5 computa la duracin total, o cunto tiempo transcurre entre el inicio de la primera tarea programada y el final de la ltima tarea programada. Este tiempo total es lo que deseamos minimizar. Las celdas G11:G35 mantienen las variables (las tareas) que deben ser programadas para encontrar el mejor orden de asignacin. Las ecuaciones en la hoja calculan qu tan pronto cada tarea puede ejecutarse en la mquina que requiera. Seleccione un conjunto de celdas ajustables G11:G35 y seleccione el mtodo de solucin de orden (order). Minimice la media de los resultados de simulacin para la celda D5.
Cmo resolverlo
76
77
El archivo cartequil.xls modela una asignacin por agrupamiento tpica. La columna A contiene nmeros de identificacin de activos financieros especficos, y la columna B identifica la clase de cada activo financiero (la hoja de trabajo ACTIVOS provee informacin sobre cada clase de activo). Las columnas C, D y E dan el valor en dlares actual de cada activo financiero y la media y la desviacin estndar del rendimiento para el prximo ao del activo financiero (de la forma cmo est determinado por la clase de activo). La columna F calcula el valor del activo financiero de aqu a un ao utilizando la tasa de rendimiento muestreada de la distribucin de probabilidad que utiliza la media y la desviacin estndar mostradas. La columna G asigna cada activo financiero a una de las cinco carteras. A la hora de ajustar los parmetros de un problema de tipo de agrupamiento o de empacamiento por compartimentos y al utilizar el mtodo de solucin por agrupamiento (grouping), usted debe asegurarse que antes de iniciar el RISKOptimizer cada grupo (1-5) est representado en el escenario actual al menos una vez. Las celdas F6:F10 calculan el valor total de cada uno de las cinco carteras. Esto se hace con un criterio de base de datos fuera de pantalla (en la columna I) y con frmulas DSUMA() en las celdas F6:F10. De esta forma, la celda F6, por ejemplo, calcula la DSUMA de todos los valores en la columna B que han sido asignados al grupo 5 (en la columna C).
78
La celda F12 computa la desviacin estndar entre los valores de la cartera total utilizando la funcin DESVEST(). Esta provee una medida de qu tan cercanos se encuentran las carteras en valor total entre s mismas. El grfico muestra el valor total de cada cartera, con una lnea de referencia marcada en el nmero meta en donde cada cartera estara si todas estuviesen parejas. Cmo resolverlo Minimice la media de los resultados de simulacin para la celda F12 al ajustar las celdas en C5:C104. Utilice el mtodo de agrupamiento (grouping) y asegrese que los valores 1, 2, 3, 4 y 5 aparezcan cada uno una vez en la columna C. El mtodo de solucin por agrupamiento (grouping) le indica al RISKOptimizer que distribuya las variables en x grupos, donde x es el nmero de valores distintos en las celdas ajustables al inicio de una optimizacin.
79
80
Mezcla de carteras
Una joven pareja posee activos en muchos diferentes tipos de inversiones, cada uno con su propio rendimiento, potencial de crecimiento y riesgo. Su objetivo es encontrar la combinacin de inversiones que maximice el rendimiento total y simultneamente mantener el riesgo a un nivel aceptable.
Archivo ejemplo: Objetivo:
MezclaCartera.xls Encontrar la mezcla ptima de inversiones que maximice la utilidad, dadas sus necesidades actuales de riesgo versus rendimiento. presupuesto
Mtodo de solucin:
81
Este es el clsico modelo financiero que intenta equilibrar el riesgo de prdida versus el rendimiento sobre la inversin. Cada activo listado en la columna A posee inciertos porcentajes de crecimiento de capitalizacin y rendimiento fijo. El rendimiento total suma el crecimiento por capitalizacin y el inters. El objetivo es maximizar el rendimiento total y simultneamente mantener la desviacin estndar del rendimiento sobre la cartera en menos del 9%. El rendimiento total en la celda D33refleja la suma del crecimiento por capitalizacin total y el inters total. Maximizamos la media de la distribucin simulada para esta celda. Se introduce una restriccin dura de simulacin que especifica que la desviacin estndar de la celda D33debe ser menor a 0.09.
Cmo resolverlo
82
Mezcla de carteras
Riesgo de cartera
Un inversionista desea determinar la manera ms segura para estructurar una cartera de distintas inversiones. Los datos histricos han demostrado que los rendimientos sobre las inversiones estn correlacionados. El objetivo es dividir la cartera total entre tres inversiones disponibles para poder obtener el rendimiento deseado del 12% y al mismo tiempo minimizar el riesgo, o la desviacin estndar, del rendimiento de la cartera.
Archivo ejemplo: Objetivo:
matrizcorr.xls Minimizar la desviacin estndar del rendimiento de la cartera y simultneamente obtener el rendimiento deseado. presupuesto cualquier modelo de minimizacin.
83
Cada una de las tres inversiones disponibles posee un rendimiento incierto que es modelado utilizando las distribuciones de probabilidad en las celdas E3 a E5. Para correlacionar los rendimientos de las tres inversiones se utiliza la funcin RiskCorrmat con la matriz de correlacin localizada en J9:L11. RISKOptimizer ajustar los porcentajes de la cartera distribuida a cada inversin. El mtodo de solucin de presupuesto (budget) se utiliza para asegurar que el porcentaje total distribuido siempre sume 100%. El objetivo es minimizar la desviacin estndar del rendimiento total de la cartera, y simultneamente cumplir la restriccin de que el rendimiento total sea mayor o igual a 12%.
Cmo resolverlo
Minimice la desviacin estndar de los resultados de la simulacin para la celda G6. Introduzca una restriccin dura de simulacin de que la media de los resultados de simulacin para la celda G6 debe ser mayor o igual a 0.12.
84
Riesgo de cartera
vendedor.xls Encuentre la ruta con el tiempo de viaje ms corto entre n ciudades para visitar una vez cada ciudad. orden Planeamiento del taladrado de los agujeros de una tarjeta de circuitos integrados de la manera ms rpida posible.
85
El archivo vendedor.xls calcula el tiempo de viaje de una ruta a varias ciudades al buscar desde una tabla los tiempos de viaje entre ciudades. Los tiempos de viaje entre cualesquiera dos ciudades se describe por una distribucin de probabilidad (existen 200 distribuciones de probabilidad en la tabla). La columna A contiene nmeros identificadores para ciudades especficas. La columna B contiene los nombres que tales nmeros representan (con una funcin de bsqueda). El orden en que las ciudades (y sus nmeros) aparecen desde arriba hacia abajo representan el orden en que las ciudades sern visitadas. Por ejemplo, si usted introdujese un 9 en la celda A3, entonces Ottawa sera la primera ciudad en visitar. Si A4 contuviere un 6 (Halifax), entonces Halifax sera la segunda ciudad visitada. Los tiempos de viaje entre las ciudades estn representados por las distribuciones de probabilidad en la tabla que se inicia en C25. Estas distribuciones hacen referencia a la tabla que se inicia en C48 que contiene las distancias de manejo reales entre las ciudades. Las distancias en la tabla son simtricas (la distancia de A a B es la misma de B a A). Sin embargo, los modelos ms realistas podran no incluir distancias simtricas para representar una mayor dificultad de travesa en cierto sentido (debido a puestos de peaje, disponibilidad de transporte, vientos de popa, pendiente, etc.). Una funcin debe ser ahora utilizada para calcular la longitud de la ruta entre estas ciudades. La longitud total de la ruta ser almacenada en la celda G2, la celda que deseamos optimizar. Para hacer esto, utilizamos la funcin RouteLength. Esta es una funcin personalizada en VBA en vendedor.xls.
Cmo resolverlo
Minimice el valor en la celda G2 al ajustar las celdas en A3:A22. Utilice el mtodo de orden (order) y asegrese que los valores desde 1 a 20 existan en las celdas ajustables (A3:A22) antes de empezar a optimizar. El mtodo de orden (order) le indica al RISKOptimizer que redistribuya las variables escogidas, intentando diferentes permutaciones de las variables existentes.
86
Administracin de rendimientos
Este es un modelo de administracin de rendimientos que identifica el nmero ptimo de asientos a tarifa completa y a tarifa de descuento que deben venderse en un vuelo en particular. Tambin identifica el nmero ptimo de reservaciones que deben aceptarse en exceso del nmero de campos disponibles el clsico problema de sobreventa de vuelos.
Archivo ejemplo: Objetivo:
RendAreo.xls Identificar el nmero mximo de reservaciones a aceptar en las diferentes categoras de tarifa para maximizar la utilidad. receta Cualquier problema de administracin de rendimientos en donde una variedad de diferentes precios se ofrecen por el mismo producto.
87
El archivo rendaereo.xls es un modelo muy simple que ilustra el uso del RISKOptimizer para administracin de rendimientos. Se asignan distribuciones de probabilidad a una variedad de factores inciertos en el modelo, incluyendo la demanda para reservaciones de tarifa completa (en celda C8), el % de ausentes respecto del total de reservaciones a tarifa completa (en celda C11), la demanda por reservaciones a tarifa descontada (en celda C12), y el costo de sobreventa (en celda C23). La utilidad bruta del vuelo se calcula al calcular el ingreso total de las reservaciones en cada categora de tarifas menos el costo de dejar pasajeros en tierra producto de un vuelo sobrevendido. En este modelo, las variables a ser ajustadas estn localizadas en las celdas C14 y C15. Estas celdas contienen los valores para el mximo nmero de reservaciones aceptadas y el porcentaje de tales reservaciones que sern asignadas a asientos de tarifa completa. Una restriccin de iteracin es que la utilidad deber siempre ser > 0, mientras que una restriccin de simulacin es que la desviacin estndar de los resultados de la simulacin para la utilidad debe ser < 400. El objetivo es maximizar la media de la distribucin simulada de la utilidad y simultneamente minimizar el riesgo de la forma que fue especificado en las restricciones introducidas.
Cmo resolverlo
88
Administracin de rendimientos
89
Comando de utilitarios .................................................................. 137 Comando Configuraciones de aplicacin ....................................... 137 Comando Solver de restricciones ..................................................... 138 El Observador del RISKOptimizer ................................................ 141 El Observador del RISKOptimizer pestaa Progreso ............... 142 El Observador del RISKOptimizer pestaa Resumen .............. 144 El Observador del RISKOptimizer pestaa Bitcora ................ 146 El Observador del RISKOptimizer pestaa Poblacin ............. 148 El Observador del RISKOptimizer pestaa Diversidad........... 149 El Observador del RISKOptimizer pestaa Opciones de detencin............................................................................................... 150
90
La caja de dilogo de Modelo del RISKOptimizer se usa para especificarle o describirle un problema de optimizacin al RISKOptimizer. Esta caja de dilogo se inicia vaca con cada nuevo libro de trabajo de Excel, pero guarda su informacin con cada libro de trabajo. Esto significa que cuando la hoja se abre de nuevo, sta ser llenada de la misma manera. Cada componente de la caja de dilogo se describe en esta seccin.
91
Las opciones en la caja de dilogo de Modelo incluyen: Meta de Optimizacin. La opcin de Meta de optimizacin determina qu tipo de respuesta es la que el RISKOptimizer buscar. Si se selecciona Mnimo, el RISKOptimizer buscar por valores de variables que produzcan los valores ms bajos posibles para el estadstico seleccionado de los resultados de simulacin para la celda objetivo(tan pequeos como de -1e300). Si se selecciona Mximo, el RISKOptimizer buscar por valores de variables que produzcan los valores ms altos posibles para el estadstico (tan altos como de -1e300). Si se selecciona Valor Objetivo, el RISKOptimizer buscar por valores variables que produzcan un valor para el estadstico seleccionado tan cercano como sea posible al valor que usted especifique. Cuando el RISKOptimizer encuentra una solucin que produzca este resultado, se detendr automticamente. Por ejemplo, si usted le especifica al RISKOptimizer para que encuentre la media de la distribucin de los resultados de simulacin que sean lo ms cercanos posibles a 14, el RISKOptimizer podra encontrar escenarios que resulten en una media tal como 13.7 o 14.5. Ntese que 13.7 es ms cercano a 14 de lo que es 14.5; al RISKOptimizer no le importa si el valor del estadstico es mayor o menor que el valor que usted especifica, solamente se fija en qu tan cercano es tal valor. Celda. La celda o celda objetivo contiene la salida de su modelo. Se generar una distribucin de los posibles valores para esta celda objetivo(va simulacin) para cada solucin de prueba que el RISKOptimizer genere (esto es, cada combinacin de posibles valores de celdas ajustables). La celda objetivo deber contener una frmula que dependa (ya sea directamente o por medio de una serie de clculos) sobre las celdas ajustables. Esta frmula puede ser hecha con frmulas Excel convencionales tales como SUMA() o bien con funciones de macros definidas por el usuario con VBA. Al utilizar funciones de macros de VBA usted puede hacer que el RISKOptimizer evale modelos que son muy complejos.
92
A medida que el RISKOptimizer busca por una solucin utiliza el estadstico para los resultados de simulacin de la celda objetivo como una calificacin o funcin de aptitud para evaluar qu tan bien es cada escenario posible, y para determinar cules valores de variables debern continuar cruzndose y cules debern morir. En la evolucin biolgica, la muerte es la funcin de aptitud que determina cuales genes continan perpetundose a lo largo de la poblacin. Cuando usted construye su modelo, su celda objetivo deber reflejar la aptitud o bondad de determinado escenario, de forma tal que a medida que el RISKOptimizer calcula las posibilidades, puede de una manera precisa medir su progreso. Estadstico. La entrada del estadstico es donde usted especifica el estadstico de para su celda objetivo que usted desee minimizar, maximizar o definir para un valor especfico. El estadstico real que usted desee minimizar, maximizar o definir para un valor especfico se selecciona de una lista de tipo drop-down.
Para seleccionar el estadstico para la celda objetivo que usted desee minimizar, maximizar o definir para un valor especfico, simplemente seleccione el estadstico deseado de la lista desplegada de tipo dropdown. Si usted desea seleccionar un percentil u objetivo para la distribucin de la celda objetivo, simplemente: 1. Seleccione Percentil(X para un dado P) o bien Objetivo (P para un dado X).
93
2.
Para Percentil(X para un dado P), introduzca el valor de P deseado entre 0 y100 en el campo de %.El valor que ser minimizado o maximizado ser el valor asociado con el percentil introducido; esto es, Percentil(99%) causar que el RISKOptimizer identifique la combinacin de valores de celdas ajustables que minimiza o maximiza el percentil 99 de la distribucin de los resultados de simulacin para la celda objetivo. Para Objetivo (P para un dado X), introduzca el valor X deseado. El valor que ser minimizad o maximizado ser la probabilidad acumulada asociada con el valor introducido; esto es, Target(1000) provocar que el RISKOptimizer identifique la combinacin de valores de celdas ajustables que minimiza o maximiza la probabilidad acumulada del valor 1000 (como ste sea calculado usando la distribucin de los resultados de simulacin para la celda objetivo).
3.
Los usuarios pueden recolectar estadsticos dentro de sus modelos usando funciones estadsticas de @RISK/RISKOptimizer como RiskMean. Para optimizar el valor de una celda, el estadstico a optimizar no tiene que especificarse, ya que la propia celda contiene esa informacin. En este caso, seleccione la opcin Valor en la lista desplegable Estadstico, indicando a RISKOptimizer que optimice el valor de una celda determinada al final de una simulacin. Por ejemplo, si un usuario desea optimizar la media de la celda C5, puede escribir =RiskMean(C5) en la celda C6, especificar C6 como la celda a optimizar en la caja de dilogo Modelo, y seleccionar Valor en la lista desplegable Estadstico. Esto es equivalente a especificar C5 como celda a optimizar, y luego seleccionar Media en la lista desplegable Estadstico.
94
Debido a que las celdas ajustables contienen las variables del problema, usted debe definir al menos un grupo de celdas ajustables para usar el RISKOptimizer. La mayora de los problemas sern descritos por slo un grupo de celdas ajustables, pero algunos problemas ms complejos podran requerir de diferentes bloques de variables para ser resueltos por distintos mtodos de solucin de forma simultnea. Esta singular arquitectura permite que problemas muy complejos sean construidos fcilmente a partir de muchos grupos de celdas ajustables. Las siguientes opciones estn disponibles para introducir los rangos de celdas ajustables: Aadir. Usted puede aadir nuevas celdas ajustables al hacer clic en el botn de Aadir a la par de la caja de lista de celdas ajustables. Seleccione la celda o rango de celdas a ser aadidos, y aparecer una nueva fila en la tabla de Rangos de celdas ajustables. En la tabla, usted puede introducir un valor Mnimo y Mximo para las celdas en el rango, adems del tipo de valores a evaluar valores enteros a lo largo del rango o cualquier tipo de valor.
95
Mnimo y Mximo. Despus de que haya especificado la localizacin de las celdas ajustables, las entradas de Mnimo y Mximo definen el rango de valores aceptables para cada celda ajustable. Por defecto, cada celda ajustable asume un valor real (punto flotante de precisin doble) entre infinito hasta + infinito.
Las configuraciones de rango son restricciones que son cumplidas estrictamente. El RISKOptimizer no permitir que ninguna variable asuma un valor fuera de los rangos definidos. Se le recomienda que usted defina rangos ms especficos para sus variables cuando esto sea posible para mejorar el desempe del RISKOptimizer. Por ejemplo, usted podra saber que el nmero no puede ser negativo o de que el RISKOptimizer slo debera evaluar valores entre 50 y 70 para determinada variable. Rango. La referencia a la(s) celda(s) a ser ajustadas se introduce en el campo de Rango. Esta referencia puede ser introducida al seleccionar la regin en la hoja de clculo con el mouse, introduciendo un nombre de rango o digitando una referencia vlida de Excel tal como Hoja1!A1:B8. El campo de Rango est disponible para todos los mtodos de solucin. Sin embargo, para los mtodos de receta y de presupuesto, se pueden aadir opciones de Mnimo, Mximo y Valores para permitirla introduccin de un rango para las celdas ajustables.
NOTA: Al asignar rangos ajustados a sus variables, usted puede limitar la amplitud de la bsqueda y mejorar la velocidad de la convergencia del RISKOptimizer hacia una solucin. Pero sea cuidadoso de no sobre limitar los rangos de sus variables muy ajustadamente; pues esto podra prevenir al RISKOptimizer que encontrara soluciones ptimas. Valores. La entrada de Valores le permite especificar que el RISKOptimizer trate a todas las variables en el rango especificado como enteros (p.ej.,22), en vez de nmeros reales (p.ej., 22.395). Esta opcin slo est disponible cuando se utilizan los mtodos de receta y de presupuesto. La opcin por defecto es tratar a las variables como nmeros reales.
96
Asegrese se encender la configuracin de Enteros si su modelo usa variables para bsqueda de tems de tablas (BUSCARH(), BUSCARV(), INDICE(), DESREF(), etc.) Observe que la configuracin de Enteros afecta a todas las variables en el rango seleccionado. Si usted desea tratar algunas de sus variables como reales y algunas como enteras, usted puede crear dos grupos de celdas ajustables en vez de uno, y tratar un bloque como enteras y otro bloque como reales. Simplemente aada un grupo de receta de celdas ajustables y djela opcin de Valores en Cualquiera. A continuacin, Aada otro rango de celda, esta vez seleccionando la configuracin de Enteros y seleccionando solamente las celdas ajustables enteras.
97
98
Las opciones en la pestaa General de la caja de dilogo de configuracin de los grupos de celdas ajustables incluyen: Descripcin. Describe el grupo de rangos de celdas ajustables en las cajas de dilogo y los reportes. Mtodo de solucin. Selecciona el mtodo de solucin a ser usado para cada uno de los rangos de celdas ajustables en el grupo.
Cuando usted selecciona un rango de celdas a ser ajustadas por el RISKOptimizer, usted tambin est especificando un mtodo de solucin que usted desea aplicar cuando se ajustan tales celdas ajustables. Cada mtodo de solucin es, en esencia, un algoritmo gentico completamente diferente, con su propia seleccin optimizada, y sus rutinas de cruce y de mutacin. Cada mtodo de solucin procesa los valores de sus variables de forma distinta. El mtodo de solucin de receta, por ejemplo, trata cada variable seleccionada como un ingrediente en una receta; el valor de cada variable puede ser cambiado independientemente del valor de las otras. En contraste, el mtodo de solucin de orden permuta valores entre las celdas ajustables, reordenando los valores que originalmente estaban all.
99
Existen seis mtodos de solucin que vienen con el RISKOptimizer. Tres de estos mtodos de solucin(receta, orden y agrupamiento) usan algoritmos enteramente distintos. Los otros tres son descendientes de los primeros tres, aadiendo restricciones adicionales. La prxima sesin describe la funcin de cada mtodo de solucin. Para obtener un mejor entendimiento de cmo se utiliza cada mtodo de solucin, se le invita a que explore los archivos de ejemplos incluidos con el software. (Vase Captulo 4: Aplicaciones de ejemplo). Mtodo de solucin de receta El mtodo de solucin de receta (recipe) es el tipo de mtodo de solucin ms simple y popular. Use este mtodo de receta cuando el conjunto de variables que estn siendo ajustadas pueden variar independientemente una de las otras. Piense de cada variable como la cantidad de un ingrediente en un pastel; cuando se utiliza el mtodo de solucin de receta, usted le est diciendo al RISKOptimizer que genere nmeros para aquellas variables en un esfuerzo para encontrar la mejor mezcla. Las nicas restricciones que usted coloca sobre las variables de receta es el ajuste del rango (los valores ms alto y ms bajo) en medio de las cuales tales valores debern encontrarse. Ajuste estos valores en los campos Min y Max de la caja de dilogo de Celdas Ajustables (Adjustable Cells) (por ejemplo, 1 a 100), y tambin indicar si RISKOptimizer debera o no tratar enteros (1, 2, 7) o nmeros reales. (1.4230024, 63.72442). A continuacin hay ejemplos de un conjunto de valores de variables como se veran en una hoja de clculo antes de que se invoque el RISKOptimizer, y de cmo se veran los dos nuevos escenarios despus de utilizar el mtodo de solucin de receta. Conjunto original de Un conjunto posible valores de variables de valores de receta
23.472 145 9 65,664 15.344 101 32.44 14,021
100
El mtodo de solucin de orden (order) es el segn mtodo ms popular, despus del de receta (recipe). Un orden es una permutacin de una lista de tems, en donde usted est tratando de encontrar la mejor manera de estructurar un conjunto de valores dados. A diferencia de los mtodos de receta (recipe) y de presupuesto (budget), que le preguntan al RISKOptimizer que genere valores para las variables escogidas, este mtodo de solucin le pregunta al RISKOptimizer que utilice los valores existentes en su modelo. Un orden podra representar el orden en el cual deben ejecutarse una serie de tareas. Por ejemplo, usted podra encontrar el orden en el cual llevar a cabo cinco tareas, numeradas 1, 2, 3, 4 y 5. El mtodo de solucin de orden reordenara estos valores, de tal forma que un escenario podra ser 3, 5, 2, 4, 1. Dado que el RISKOptimizer est tan slo tratando valores de variables de su hoja inicial, no existe un rango Mnimo Mximo introducido para las celdas ajustables cuando se utiliza el mtodo de solucin de orden (order). Abajo hay ejemplos de cmo se vera un conjunto de valores de variables en una hoja antes de que el RISKOptimizer sea invocado, y cmo se veran dos nuevos escenarios despus de haber utilizado el mtodo de solucin de orden. (order). Conjunto original de Un conjunto posible valores de variables de valores de receta
23.472 145 9 65,664 145 23.472 65,664 9
101
El mtodo de solucin por agrupamiento (grouping) debera ser utilizado cuando su problema involucre mltiples variables a ser agrupadas conjuntamente en grupos. El nmero de grupos diferentes que el RISKOptimizer crea ser igual al nmero de valores singulares presentes en las celdas ajustables al inicio de la optimizacin. De esta forma, cuando usted construye un modelo de su sistema, asegrese que cada grupo est representado al menos una vez. Por ejemplo, suponga que un rango de 50 celdas conteniendo slo valores de 2, 3.5 y 17. Cuando usted selecciona las 50 celdas y ajusta los valores utilizando el mtodo de solucin por agrupamiento (grouping), RISKOptimizer asignar cada una de las 50 celdas a uno de los tres grupos, 2, 3.5 o17. Todos los grupos estn representados por al menos una celda ajustable; de la misma manera que se echan cada una de las 50 variables en uno de varios compartimentos, y asegurndose de que existe al menos una variable en cada compartimiento. Otro ejemplo sera la asignacin de 1s y 0s, y -1s a un sistema de mercado que indique comprar, vender o mantener posiciones. De la misma manera que el mtodo de solucin de orden (order), RISKOptimizer est ordenando valores existentes, as que no existe un rango mnimo-mximo o una opcin de nmeros enteros a definir. NOTA: Cuando utilice el mtodo de solucin por agrupamiento (grouping), no deje ninguna celda en blanco, a menos que usted desee que 0.0 sea considerado como uno de los grupos. Usted podr darse cuenta que el mtodo de solucin por agrupamiento (grouping) podra ser aproximado a la utilizacin del mtodo de receta (recipe) con la opcin de nmeros enteros encendida (on) y los rangos ajustados desde 1 hasta 3 (o cualquier nmero de grupos que existan). Sus rutinas de seleccin, mutacin y cruce son diferentes; un agrupamiento est mucho ms interesado con los valores de todas las variables, porque puede alternar un conjunto de variables desde un grupo con un conjunto de variables desde otro grupo.
102
Abajo hay ejemplos de cmo se vera un conjunto de valores de variables en una hoja antes de que el RISKOptimizer sea invocado, y cmo se veran dos nuevos escenarios despus de haber utilizado el mtodo de solucin por agrupamiento. (grouping). Conjunto original de valores de variables
6 7 8 8
Un presupuesto (budget) es similar a una receta (recipe) excepto de que todos los valores de las variables debern totalizar un nmero determinado. Ese nmero es el total de los valores de las variables en el momento en que se inicia la optimizacin. Por ejemplo, usted podra encontrar la mejor manes de distribuir un presupuesto anual entre un nmero de departamentos, y utilizar la suma como el presupuesto total a ser ptimamente distribuido. Abajo hay ejemplos de cmo se vera un conjunto de valores de variables en una hoja antes de que el RISKOptimizer sea invocado, y cmo se veran dos nuevos escenarios despus de haber utilizado el mtodo de solucin por presupuesto. (budget). Conjunto original de valores de presupuesto
200 3.5 10 10
Many values are being tried, but the sum of all values remains 223.5.
103
El mtodo de solucin por proyecto (project) es similar al mtodo de solucin de orden (order) excepto que ciertos tems(tareas) deben preceder a otros. El mtodo de solucin por proyecto (project) puede ser utilizado en administracin de proyectos para reasignar el orden en que las tareas son llevadas a cabo, pero el orden siempre cumplir con las restricciones de precedencia. Un problema modelado utilizando el mtodo de solucin por proyecto (project) ser mucho ms fcil de trabajar y entender si las celdas ajustables conteniendo el orden de las tareas se encuentran en una sola columna, en vez de estar en una fila. Esto es porque el mtodo de solucin espera que las celdas con las tareas precedentes estn estructuradas verticalmente en vez de que estn horizontalmente, y ser ms fcil examinar su hoja de trabajo si las celdas ajustables tambin se encuentran de forma vertical. Despus de que usted ha especificado la localizacin de las celdas ajustables, usted debe especificar la localizacin de las celdas con las tareas precedentes en la seccin de Utilizar Opciones (Use Options) de la caja de dilogo. Esta es una tabla de celdas que describe qu tareas debern ser precedidas por cules otras tareas. El mtodo de solucin utiliza esta tabla para reacomodar el orden de las variables en un escenario hasta que se cumplan las restricciones de precedencia. Debera existir una fila en el rango de las tareas precedentes para cada tarea en las celdas ajustables. Empezando en la primera columna del rango de las tareas precedentes, el nmero identificador de cada tarea de la cual tal tarea en fila depende, deber ser listada en columnas separadas.
Ejemplo de cmo configurar los precedentes para un mtodo de solucin por proyecto.
El rango de tareas de precedencia debera ser especificado como uno de n filas por m columnas, donde n es el nmero de tareas en el proyecto (celdas ajustables), y m es el mximo nmero de tareas precedentes que alguna de las tareas posea.
104
Abajo hay ejemplos de cmo se vera un conjunto de valores de variables en una hoja antes de que el RISKOptimizer sea invocado, y cmo se veran dos nuevos escenarios despus de haber utilizado el mtodo de solucin por proyecto (project), con la restriccin de que 2 debern siempre venir despus de 1, y 4 deber siempre venir despus de 2. Conjunto original de valores de variables
1 2 3 4
Una calendarizacin (schedule) es similar a un agrupamiento (grouping); es una asignacin de tareas a tiempos. Se asume que cada tarea dura la misma cantidad de tiempo, tal y como las clases en la escuela son de la misma duracin. Sin embargo, a diferencia del agrupamiento (grouping), la caja de dilogo de Celdas Ajustables (Adjustable Cells) para el mtodo de solucin por calendarizacin (schedule) le permite a usted especificar directamente el nmero de bloques de tiempo (o grupos) a ser utilizados. Ntese que cuando usted selecciona el mtodo de solucin por calendarizacin (schedule), aparecen algunas opciones relacionadas en la porcin inferior de la caja de dilogo.
105
En la seccin de Parmetros de Optimizacin usted notar que usted puede tambin tener un rango de celdas de restriccin adjunto. Este rango puede ser de cualquier longitud, pero deber ser de exactamente tres columnas de ancho. Se reconocen ocho tipos de restricciones: 1. 2. 3. 4. 5. 6. 7. 8. 1)(con) (with) Las tareas en la primera y tercera columnas debern suceder en el mismo bloque de tiempo. 2)(no con) (not with) Las tareas en la primera y tercera columnas no debern suceder en el mismo bloque de tiempo. 3)(antes) (before) La tarea en la primera columna deber suceder antes que la tarea en la tercera columna. 4)(en) (at) La tarea en la primera columna deber ocurrir en el bloque de tiempo de la tercera columna. 5)(no despus) (not after) La tarea en la primera columna deber ocurrir al mismo tiempo o antes que la tarea en la tercera columna. 6)(no antes) (not before) La tarea en la primera columna deber ocurrir al mismo tiempo o despus de la tarea en la tercera columna. 7)(no en) (not at) La tarea en la primera columna no deber ocurrir en el bloque de tiempo de la tercera columna. 8)(despus) (after) La tarea en la primera columna deber ocurrir despus de la tarea en la tercera columna.
106
Se puede introducir el cdigo numrico (del 1 al 8) o la descripcin (despus, no en, etc.) como restriccin. (Nota: Todas las versiones traducidas de RiskOptimizer reconocen la descripcin de la restriccin tanto si se introduce en ingls como si se introduce el trmino traducido). Todas las restricciones especificadas en su problema se cumplirn. Para crear restricciones, busque un espacio en blanco en la hoja de clculo y cree una tabla en la que las columnas izquierda y derecha representen tareas, y la columna del centro represente el tipo de restricciones. Un nmero del 1 al 8 representa el tipo de restricciones indicadas arriba. Las celdas de la gama de restriccin debe tener los datos de restriccin incluidos antes de iniciar la optimizacin. Esta tarea
5 12 2 7 6 9
Restriccin
4 2 3 1 2 3
Esta tarea
2 8 1 5 4 1
Abajo hay ejemplos de cmo se vera un conjunto de valores de variables en una hoja antes de que el RISKOptimizer sea invocado, y cmo se veran dos nuevos escenarios despus de haber utilizado el mtodo de solucin por calendarizacin. (schedule). Conjunto original de valores de variables
1 2 3 1 2 3
NOTA: Cuando usted selecciona el mtodo de seleccin por calendarizacin (schedule), los nmeros enteros empezando desde el 1 son siempre utilizados, independientemente de los valores originales en las celdas ajustables.
Captulo 5: Gua de referencia del RISKOptimizer 107
Uno de los problemas ms difciles con la bsqueda de soluciones ptimas, cuando su problema tiene aparentemente posibilidades ilimitadas, es la determinacin de en donde enfocar sus esfuerzos. En otras palabras, cunto tiempo computacional debe ser enfocado en la bsqueda de nuevas reas del espacio de solucin, y cunto tiempo debera ser dedicado a la calibracin de las soluciones en nuestra poblacin que ya ha sido probada como una muy buena solucin. Una gran porcin del xito del algoritmo gentico ha sido atribuida a su habilidad para preservar inherentemente este balance. La estructura del algoritmo gentico permite que las buenas soluciones se reproduzcan, pero tambin mantiene organismos menos aptos alrededor para mantener la diversidad con la esperanza que probablemente un gen latente podra ser importante en la solucin final. El cruce y la mutacin son dos parmetros que afectan el rango de la bsqueda y el RISKOptimizer le permite a los usuarios cambiar tales parmetros antes y durante el proceso evolutivo. De esta forma, un usuario con experiencia puede ayudarle a algoritmo gentico al decidir dnde debera enfocar su energa. Para la mayora de los propsitos, las tasas de cruce y de mutacin (0.5 y 0.1 respectivamente) no requieren de ajuste. En el evento que usted desee calibrar el algoritmo a su problema, llevar a cabo un estudio comparativo o simplemente experimentar, ac se presenta una breve introduccin de estos parmetros: Cruce. La tasa de cruce, que puede ser cualquier valor entre 0.01 y 1.0, refleja la posibilidad de que los escenarios futuros contengan una mezcla de informacin de la generacin previa de los organismos padre. Esta tasa puede ser cambiada por usuarios experimentados para afinar el desempeo de RISKOptimizer para problemas complejos. En otras palabras, una tasa de 0.5 significa que un organismo descendiente contendr aproximadamente 50% de sus valores variables de un padre y los valores remanentes del otro padre. Una tasa del 0.9 significa que aproximadamente un organismo descendiente contendr 90% de sus valores variables de un padre y el 10% vendr del segundo padre. Una tasa de cruce de 1 significa que no suceder ningn cruce, as que slo sern evaluados los clones de los padres. La tasa por defecto utilizada por el RISKOptimizer es de 0.5. Una vez que el RISKOptimizer haya iniciado la resolucin del problema, usted puede cambiar la tasa de cruce usando el
108
Observador del RISKOptimizer (vase la seccin en este captulo del Observador del RISKOptimizer.) Tasa de mutacin. La tasa de mutacin puede ser definida entre 0.0 y 1.0, y refleja la posibilidad de que los futuros escenarios contengan algunos valores aleatorios. Una tasa de mutacin ms alta simplemente significa que ms mutaciones o valores de genes aleatorios sern introducidos en la poblacin con cada nueva solucin. Debido a que la mutacin ocurre despus del cruce, al ajustar la tasa de mutacin a 1 (100% valores aleatorios) efectivamente prevendr que el cruce tenga efecto alguno, y RISKOptimizer generar escenarios totalmente aleatorios. Si todos los datos de la solucin ptima se encontrasen en algn lugar dentro de la poblacin, entonces el operador de cruce por s solo sera suficiente para eventualmente encontrar la solucin. Se ha demostrado que la mutacin es una poderosa fuerza en el mundo biolgico por muchas de las mismas razones por la cual es requerida en un algoritmo gentico: es vital para mantener una poblacin diversa de los organismos individuales, por tanto previniendo que la poblacin se torne muy rgida e incapaz de adaptarse a un ambiente dinmico. Igual que en un algoritmo gentico, usualmente la mutacin gentica en los animales lo que eventualmente conducir al desarrollo de nuevas funciones crticas. Para la mayora de los propsitos, la configuracin por defecto de la tasa de mutacin no requiere de ajuste, pero puede an as, ser cambiada por usuarios expertos para calibrar el desempeo del RISKOptimizer en problemas complejos. Podra ser que el usuario desee incrementar la tasa de mutacin si la poblacin del RISKOptimizer es relativamente homognea, y no se han encontrado nuevas soluciones en los ltimos cientos de simulaciones. Los cambios tpicos en esta configuracin van desde 0.06 hasta 0.2. Una vez que el RISKOptimizer ha iniciado la resolucin de un problema, usted puede modificar la tasa de mutacin dinmicamente usando el Observador del RISKOptimizer.(vase la seccin en este captulo del Observador del RISKOptimizer.) Al seleccionar Auto de la lista de tipo drop-down en el campo de tasa de mutacin, se seleccione la tasa de ajuste automtica de mutacin. La tasa automtica de mutacin le permite al RISKOptimizer aumentar la tasa de mutacin de forma automtica cuando un organismo se avejenta significativamente; esto es, que ha permanecido en el mismo lugar
Captulo 5: Gua de referencia del RISKOptimizer 109
sobre un periodo extenso de generaciones. Para muchos modelos, especialmente cuando la tasa de mutacin no se conoce, la seleccin de la opcin Automtica puede generar mejores resultados ms rpidamente.
110
Para mayor informacin sobre estas opciones, vase el Mtodo de solucin por calendarizacin en la seccin de Mtodos de solucin de este captulo.
Tareas precedentes
Para mayor informacin sobre estas opciones, vase el Mtodo de solucin de proyecto en la seccin de Mtodos de solucin de este captulo. El RISKOptimizer incluye operadores genticos seleccionables al ser utilizado con el mtodo de solucin de receta. Al hacer clic en la pestaa de Operadores de la caja de dilogo de configuracin de grupos de celdas ajustables, le permite selecciones un operador gentico especfico (tal como cruce heurstico o mutacin en frontera)para ser usado a la hora de generar posibles valores para un conjunto de celdas ajustables. Adicionalmente, usted puede hacer que el RISKOptimizer pruebe automticamente todos los operadores disponibles y que identifique el que se desempee mejor para su problema.
Operadores
111
Los algoritmos genticos usan los operadores genticos para crear nuevos miembros de la poblacin a partir de los miembros existentes. Dos de los tipos de operadores genticos que el RISKOptimizer emplea son el de mutacin y el de cruce. El operador de mutacin determina si los cambios aleatorios en los genes (variables) ocurrirn y cmo ocurrirn. El operador de cruce determina como se permutan los pares de miembros en la poblacin los genes para producir descendientes que podran ser mejores respuestas que cualesquiera de sus padres. RISKOptimizer incluye los siguientes operadores genticos especializados: Operadores lineales (Linear operators) Diseados para resolver problemas donde la solucin ptima se encuentra en la frontera del espacio de bsqueda definida por las restricciones. Esta pareja de operadores de mutacin y de cruce est bien adaptada para resolver problemas de optimizacin lineal. Mutacin en frontera (Boundary Mutation) Diseado para rpidamente optimizar variables que afectan el resultado de una forma monotnica y que puedan ser ajustados hacia los extremos de sus rangos sin violar las restricciones. Mutacin de Cauchy (Cauchy Mutation) Diseada para producir pequeos cambios en las variables en la mayora de las veces, pero que ocasionalmente puedan generar grandes cambios. Mutacin No-uniforme: (Non-uniform Mutation) Produce cada vez ms pequeas mutaciones a medida que se calculan ms pruebas. Esto le permite al RISKOptimizer afinar las respuestas. Cruce aritmtico: (Arithmetic Crossover) Crea nuevos descendientes al combinar aritmticamente a los dos padres (en contraposicin al proceso de intercambio de genes). Cruce heurstico: (Heuristic Crossover) Utiliza los valores producidos por los padres para determinar cmo se producen los descendientes. Busca en la direccin ms prometedora y provee de un afinamiento local bien detallado.
112
Dependiendo del tipo de problema de optimizacin, distintas combinaciones de operadores de mutacin y de cruce podran producir mejores resultados que otros. En la pestaa de Operadores de la caja de dilogo de configuracin de grupos de celdas ajustables, cuando se usa el mtodo de solucin de receta, cualquier cantidad de operadores puede ser seleccionada. Cuando se realizan mltiples selecciones, el RISKOptimizer probar combinaciones vlidas de los operadores seleccionados para identificar aquellos que se desempean mejor para su modelo. Despus de una corrida, la plantilla resumen de optimizacin jerarquiza por su desempeo durante la corrida a cada uno de los operadores seleccionados. Para corridas subsecuentes del mismo modelo, al seleccionar solo los operadores en la parte superior de la lista podra conducir a ms rpidos y mejores desempeos durante la optimizacin. NOTA: Al crear mltiples grupos de celdas ajustables, verifique para asegurarse que ninguna celda de la hoja de clculo se incluya en varios grupos distintos de celdas ajustables. Cada grupo de celdas ajustables debera contener celdas ajustables nicas ya que los valores en el primer grupo de celdas ajustables seran ignorados y sobrescritos por los valores del segundo grupo de celdas ajustables. Si usted piensa que un problema debe ser representado por ms de un mtodo de solucin, considere cmo atomizar las variables entre dos o ms grupos.
113
Restricciones
El RISKOptimizer le permite introducir restricciones son condiciones que deben ser satisfechas para que una solucin sea vlida. Las restricciones que usted haya introducido se muestran en la tabla de restricciones en la caja de dilogo de definicin de modelo.
Aadiendo restricciones
Al hacer clic sobre el botn Aadir a la par de la tabla de restricciones se despliega la caja de dilogo de Configuracin de restricciones en donde se introducen las restricciones. Al utilizar esta caja de dilogo, se puede introducir el tipo de restriccin deseada as como tambin su descripcin, tipo, definicin y tiempo de evaluacin.
114
Tipos de restricciones
Se pueden especificar dos tipos de restricciones en el RISKOptimizer: Duras, o condiciones que deben ser satisfechas para que una solucin sea vlida (esto es, una restriccin dura podra ser C10><=A4; en este caso, si la solucin genera un valor para C10 que es mayor que el valor de la celda en A4, la solucin ser descartada). Blandas, o condiciones que nos gustara que pudieran ser satisfechas tanto como fuere posible, pero sobre las cuales estaramos dispuestos a ceder a cambio de grandes mejoramientos en la aptitud o en el resultado de la celda objetivo (esto es, una restriccin blanda podra ser C10<100; sin embargo, C10 podra exceder 100, pero si esto sucediera, el valor calculado para la celda objetivo se disminuira basado en la funcin de penalizacin que usted ha introducido).
Momento de evaluacin
Las restricciones duras podran ser evaluadas en 1) cada iteracin de la corrida de simulacin para la solucin de prueba (una restriccin de iteracin), o bien, 2) al final de la corrida de la simulacin para la solucin de prueba (una restriccin de simulacin). Una restriccin de iteracin es una restriccin que es evaluada en cada iteracin de la corrida de simulacin para una solucin de prueba determinada. Si una iteracin resulta en valores que violan la restriccin dura, se detiene la simulacin (y se rechaza la solucin de prueba) y la prxima solucin de prueba y su asociada simulacin inicia. Una restriccin de simulacin se especifica en trminos de un estadstico de simulacin para una celda de una hoja de clculo; por ejemplo, la media de A11>1000. En este caso, la restriccin es evaluada al final de la simulacin. Una restriccin de simulacin, en contra posicin con una restriccin de iteracin, nunca causar que se detenga la simulacin antes de que sta se complete.
115
Restricciones de simulacin
Una restriccin de simulacin se especifica en trminos del estadstico de simulacin para la celda de una hoja de clculo; por ejemplo, la media de A11>1000. El estadstico a utilizar en la restriccin se selecciona de la lista tipo drop-down disponible:
Cuando se utiliza una restriccin de simulacin, una distribucin de los posibles valores para el Rango a restringir se genera durante cada prueba de la simulacin de la solucin. Al final de cada simulacin, se verifica la restriccin para ver si sta ha sido satisfecha. Si la restriccin de simulacin es una restriccin dura y la restriccin es satisfecha, se descarta la solucin de prueba. Si la restriccin es una restriccin blanda y no se satisface la restriccin, el estadstico de la celda objetivo que est siendo minimizado o maximizado se penaliza de acuerdo a la funcin de penalizacin (vase la prxima seccin de Restricciones blandas). Restricciones simples y de frmula Se pueden utilizar dos formatos para la introduccin de restricciones Simples y de frmula--.El tipo de informacin que usted puede introducir para una restriccin depende del formato que usted seleccione. Formato simple. El formato simple permite introducir restricciones usando relaciones simples <,<=, >, >= o= en donde una celda es comparada versus un nmero introducido. Una tpica representacin simple sera: 0<Valor de A1<10 en donde se introduce A1 en la caja de Rango de celda, se introduce 0 en la caja de Mn y se introduce 10 en la caja de Mx. Se selecciona el operador deseado de las cajas de lista de tipo drop-down. Con una restriccin de formato de rango simple de valores, usted puede tan solo introducir un valor Mn, slo un valor Mx o ambos. Los valores Mn y Mx introducidos deben ser numricos en la restriccin de formato simple de rango de valores.
116 Comando de definicin de modelo
Formato de frmula El formato de frmula le permite introducir cualquier frmula vlida de Excel como una restriccin, tal como A19<(1.2*E7)+E8. RISKOptimizer verificar si la frmula introducida evala en un FALSO o en un VERDADERO, para verificar que la restriccin haya sido satisfecha.
Restricciones blandas
Las restricciones blandas son condiciones que nos gustara que pudieran ser satisfechas tanto como fuere posible, pero sobre las cuales estaramos dispuestos a ceder a cambio de grandes mejoramientos en la aptitud o en el resultado de la celda objetivo. Cuando una restriccin blanda no se satisface causa un cambio en el resultado de la celda objetivo haciendo que ste se aleje de su valor ptimo. La cantidad de cambio causado por una restriccin blanda no satisfecha se calcula utilizando una funcin de penalizacin que se introduce cuando usted especifica la restriccin blanda.
117
La siguiente es ms informacin acerca de las funciones de penalizacin: Introduciendo una funcin de penalizacin. El RISKOptimizer posee una funcin de penalizacin por defecto la cual se despliega la primera vez que usted introduce una restriccin blanda. Sin embargo, cualquier frmula vlida de Excel puede ser introducida para calcular la cantidad de penalizacin a aplicar cuando no se satisface la restriccin blanda. Una funcin de penalizacin introducida debe incluir la palabra clave desviacin, la cual representa la cantidad absoluta en la cual la restriccin se ha excedido por sobre su lmite. Al final de cada simulacin para una solucin de prueba, el RISKOptimizer verifica si la restriccin blanda ha sido satisfecha; de lo contrario, posiciona la cantidad de desviacin en la frmula de penalizacin introducida y luego calcula la cantidad de penalizacin a aplicar al estadstico de la celda objetivo. La funcin de cantidad de penalizacin se suma o se resta del estadstico calculado para la celda objetivo para hacerla menos ptima. Por ejemplo, si se selecciona Mximo en el campo de Objetivo de optimizacin en la caja de dilogo de modelo de RISKOptimizer, la penalizacin es restada del estadstico calculado para la celda objetivo. Visualizando los efectos de una funcin de penalizacin introducida. El RISKOptimizer incluye una plantilla de Excel PENALIZACIN.XLS que puede ser utilizada para evaluar los efectos de distintas funciones de penalizaciones sobre las restricciones blandas y sobre los resultados de la celda objetivo.
118
El archivo de PENALIZACIN.XLS le permite a usted seleccionar una restriccin blanda de su modelo cuyos efectos usted desea analizar. Usted puede entonces cambiar la funcin de penalizacin para ver cmo la funcin mapear un valor especfico de la restriccin blanda no satisfecha a un valor objetivo de penalizacin en particular. Por ejemplo, si su restriccin blanda es A10<100, usted podra usar el archivo de PENALIZACIN.XLS para ver cual sera el valor objetivo si un valor de 105 fuese calculado para la celda A10. Visualizando las penalizaciones aplicadas. Cuando una penalizacin es aplicada a la celda objetivo debido a una restriccin blanda no satisfecha, la cantidad de penalizacin aplicada puede ser visualizada en el Observador del RISKOptimizer. Adicionalmente, los valores de penalizacin se muestran en las hojas de la Bitcora de Optimizacin, creadas opcionalmente despus de la optimizacin.
NOTA: Si usted coloca una solucin en su hoja de clculo utilizando las opciones de Actualizar Valores de Celda Ajustable en la caja de dilogo de Detener, el resultado de la celda objetivo calculado mostrado en la hoja de clculo no incluir ninguna penalizacin aplicada debido a restricciones blandas insatisfechas. Verifique la hoja resumen de optimizacin del RISKOptimizer para ver el resultado de la celda objetivo penalizada y la cantidad impuesta de penalizacin debido a la restriccin blanda insatisfecha. Implementando restricciones blandas en frmulas de la hoja de clculo. Las funciones de penalizacin pueden ser implementadas directamente en las frmulas de su hoja de clculo. Si las restricciones blandas se implementan directamente en la hoja de clculo stas no deben ser introducidas en el campo de la caja de dilogo del RISKOptimizer. Para mayor informacin sobre la implementacin de funciones de penalizacin en su hoja de clculo, vase la seccin Restricciones blandas en el Captulo 9: Extras del RISKOptimizer.
119
Las opciones de Parmetros de optimizacin en la pestaa general incluyen: Tamao de poblacin. El tamao de la poblacin le dice al RISKOptimizer cuntos organismos (o conjuntos completos de variables) deberan ser almacenados en memoria en un determinado momento. An cuando existe todava mucho debate e investigacin respecto del tamao de poblacin ptimo para usar en diferentes problemas, recomendamos generalmente utilizar entre 30-100 organismos en su poblacin, dependiendo del tamao de su problema (mayores poblaciones para problemas ms grandes). La visin generalizada es que una poblacin mayor toma ms tiempo en encontrar una solucin, pero tiene una mayor posibilidad de encontrar una solucin global debido a su banco gentico ms diverso.
Comando de configuracin de optimizacin pestaa General
120
Semilla de generador de nmero aleatorio. La opcin de la semilla de generador de nmero aleatorio le permite a usted definir el valor de semilla inicial para el generador de nmero aleatorio usado en el RISKOptimizer. Cuando se utiliza la misma semilla, una optimizacin generar exactamente las mismas respuestas para el mismo modelo siempre y cuando el mismo no haya sido modificado y se seleccione la opcin Use la misma semilla de generador de nmeros aleatorios en cada simulacin. La opcin Use la misma semilla de generador de nmeros aleatorios en cada simulacin debe ser marcada para asegurarse que la aleatoriedad innecesaria de una simulacin a otra no sea introducida en los resultados de la optimizacin. El valor semilla deber ser un entero en el rango de 1 hasta 2147483647.
Las opciones de muestreo en la pestaa General incluyen: Tipo de muestreo. Las opciones de Tipo de Muestreo de Simulacin definen el tipo de muestreo usado durante cada corrida de simulacin durante una optimizacin. Los tipos de muestreo varan en cmo se obtienen las muestras a lo largo del rango de la distribucin. El muestreo Latino Hipercbico recrear de forma precisa las distribuciones de probabilidad especificadas por las funciones de distribucin en una menor cantidad de iteraciones cuando se compara con el muestreo Monte Carlo. Recomendamos el uso del muestreo Latino Hipercbico, la configuracin de tipo de muestreo por defecto, a menos que su situacin de creacin de modelo especficamente invoque a un muestreo de Monte Carlo. Use la misma semilla de generador de nmeros aleatorios en cada simulacin. Esta opcin especifica que el RISKOptimizer usar una secuencia repetible de nmeros aleatorios cada vez que se ejecuta cada simulacin, asegurndose que las distribuciones retornen las mismas muestras durante cada simulacin de prueba en la optimizacin. Las opciones de Cuando las simulaciones no estn ejecutando, las distribuciones muestran lo que se vea desplegado cada vez que se digita la tecla <F9> y se ejecuta un reclculo convencional de Excel. Estas opciones incluyen: Valores aleatorios (Monte Carlo). En este modo, las funciones de distribucin retornan una muestra Monte Carlo durante un reclculo convencional. Este ajuste permite que sus valores de la hoja de clculo aparezcan de la forma cmo se veran durante la ejecucin de una simulacin con nuevas muestras obtenidas de las funciones de distribucin para cada reclculo.
121
Valores estticos. En este modo, las funciones de distribucin retornan valores estticos introducidos en una funcin de propiedad RiskStatic durante un reclculo convencional. Si un valor esttico no se define para una funcin de distribucin, sta retornar: Valor esperado, o el valor que se espera de una distribucin o valor medio. Para distribuciones discretas, el ajuste Valor esperado corregido utilizar el valor discreto en la distribucin ms cercano al valor esperado verdadero del valor permutado. Valor Esperado Verdadero genera los mismos valores a ser permutados como lo hara la opcin Valor Esperado Corregido, excepto en el caso de tipos de distribuciones discretas, tales como la DISCRETE, POISSON y distribuciones similares. Para estas distribuciones el valor esperado verdadero ser utilizado como el valor a permutar an cuando el valor esperado podra no ocurrir para la distribucin introducida, por ejemplo, si este no es uno de los puntos discretos en la distribucin. Moda, o el valor modelo de la distribucin. Percentil, o el valor introducido del percentil para cada distribucin.
122
123
124
125
Las opciones de ejecucin de optimizacin en la pestaa de Tiempo de ejecucin incluyen: Simulaciones Al seleccionar esta opcin, se detiene el RISKOptimizer cuando el nmero determinado de simulacin haya sido ejecutado. Se ejecuta una simulacin para cada solucin de prueba generada por el RISKOptimizer. La configuracin de Simulaciones es particularmente til a la hora de comparar la eficiencia del RISKOptimizer cuando se intentan distintos mtodos de modelos. Al cambiar la forma en que usted modela un problema, o al seleccionar un mtodo de solucin diferente, usted podra incrementar la eficiencia del RISKOptimizer. Al hacer que un modelo se ejecute un determinado nmero de simulacin indicar qu tan eficientemente est convergiendo el RISKOptimizer sobre una solucin, independientemente de cualesquiera diferencias en el nmero de variables seleccionadas, la velocidad del hardware del computador utilizado, o el tiempo de despliegue de pantalla. La hoja de clculo resumen de optimizacin del RISKOptimizer tambin es til para comparar los resultados entre distintas ejecuciones. Para mayor informacin sobre las hojas de clculo de Resumen de Optimizacin, vase el Observador del RISKOptimizer seccin de Opciones de Detencin en este captulo. Tiempo Al seleccionar esta opcin, se detiene al RISKOptimizer de que simule escenarios despus de que hay transcurrido un determinado nmero de horas, minutos o segundos. Esta entrada puede ser cualquier nmero real positivo ((600, 5.2, etc.). Progreso Al seleccionar esta opcin, se detiene al RISKOptimizer de que simule escenarios cuando el mejoramiento en la celda objetivo es menor que una cantidad especificada (criterio de cambio). Usted puede especificar, en forma de un entero, el nmero de simulaciones sobre las cuales verificar el mejoramiento. Un valor porcentual tal como 1% puede ser introducido como el mximo valor de cambio en el campo de Cambio mximo.
126
Suponga que estamos tratando de maximizar la media de la celda objetivo, y despus de 500 simulaciones, la mejor respuesta encontrada hasta ese momento es de 354.8. Si la opcin de Progreso es la nica condicin de detencin seleccionada, el RISKOptimizer pausar en la simulacin #600 y slo continuar si es capaz de encontrar una respuesta de al menos354.9 durante esas ltimas 100 simulaciones. En otras palabras, las respuestas del RISKOptimizer no han mejorado en al menos 0.1 durante las ltimas 100 simulaciones, as que asume que existira muy poca posibilidad de mejoramiento adicional y detiene la bsqueda. Para problemas ms complejos, usted podra querer incrementar el nmero de simulaciones que el RISKOptimizer ejecuta (500) antes de decidir si todava existe suficiente mejoramiento para continuar. Esta es la condicin de detencin ms popular ya que le otorga al usuario un medio efectivo para detener el RISKOptimizer despus que la tasa de mejoramiento ha empezado a disminuir, y el RISKOptimizer no pareciera estar encontrando mejores soluciones. Si usted est visualizando los grficos de los mejores resultados en la pestaa de Progreso del Observador del RISKOptimizer, ver que los grficos se aplanan por un rato antes de que esta condicin se satisfaga y el RISKOptimizer se detenga. El progreso es realmente slo una forma automtica de hacer lo que usted podra hacer con el grfico dejarlo ejecutarse hasta que se nivele el mejoramiento. Frmula es verdadera. Esta condicin de detencin causa que se detenga la optimizacin cuando la frmula Excel introducida (o referenciada) evala un valor VERDADERO durante la optimizacin. Detener en error. Esta condicin de detencin causa que se detenga la optimizacin cuando ocurre un valor calculado de Error en la celda objetivo.
NOTA: Usted tambin puede seleccionar no tener condicin de detencin alguna, y el RISKOptimizer se ejecutar perpetuamente hasta que usted teclee el botn de detencin en la ventana del Observador del RISKOptimizer.
127
Las opciones de ejecucin de simulacin especifican cmo el RISKOptimizer determinar cuando detener cada simulacin que ejecuta. Usted puede ejecutar cada simulacin con un determinado nmero de iteraciones. En este caso, el RISKOptimizer ejecutar un nmero de iteraciones especificado o de forma alternativa, dejar que el RISKOptimizer determine cuando detener cada simulacin. Las opciones de ejecucin de simulacin en la pestaa de Tiempo de ejecucin incluyen: Iteraciones Esta opcin le permite ejecutar cada simulacin con un determinado nmero de iteraciones. En este caso, el RISKOptimizer se ejecutar con el nmero especificado de iteraciones con cada simulacin que se ejecuta para cada solucin de prueba generada por el RISKOptimizer (a menos que se detenga prematuramente cuando una restriccin de iteracin no se satisfaga). Convergencia Se puede utilizar la convergencia como una condicin de detencin de simulacin usando la convergencia real o proyectada. La convergencia real le indica al RISKOptimizer que detenga cada simulacin cuando las distribuciones generadas tanto para 1) la celda objetivo de la optimizacin como para 2) las celdas referenciadas en las restricciones de simulacin estn estables y los estadsticos de inters convergen. La cantidad de variacin permitida en el estadstico cuando est marcado como convergido se define en la opcin de Tolerancia. Convergencia proyectada Esta opcin le indica al RISKOptimizer que detenga cada simulacin cuando puede proyectar internamente que las distribuciones generadas tanto para la celda objetivo de la optimizacin como para 2) las celdas referenciadas en las restricciones de simulacin estn estables. El RISKOptimizer proyecta la convergencia basado en los resultados de simulaciones previas que han sido ejecutadas durante la optimizacin.
Se recomienda permitir que el RISKOptimizer controle cuando detenerse para asegurarse suficientes iteraciones a ser ejecutadas (pero no demasiadas!) de forma tal que los estadsticos de la salida devueltos al optimizador sean estables. Sin embargo, usted podra querer limitar las iteraciones ejecutadas al especificar un nmero determinado de iteraciones para acelerar las optimizaciones. Esto podra ser hecho cuando los modelos son muy grandes o en donde cada reclculo del Excel del modelo se demora mucho tiempo.
128 Comando de configuracin de optimizacin pestaa Tiempo de ejecucin
La opcin de tolerancia acepta valores entre 1 y 100 (o auto). Esto define la cantidad de cambio permitido cuando se haya determinado que el estadstico de inters haya convergido. Un nivel bajo requiere que exista muy poco cambio en el estadstico para que ste puede ser establecido como convergido; en comparacin, niveles muy altos cercanos a 100 permiten una muchsima mayor variacin sobre los estadsticos convergidos. La disyuntiva de una configuracin de baja tolerancia versus una alta es la cantidad de tiempo requerido para ejecutar una optimizacin. Se requerirn muchas iteraciones adicionales por simulacin para obtener convergencia con una configuracin de baja tolerancia, usualmente sin ningn mejoramiento notable en los resultados generales de la optimizacin. Al seleccionar Auto se le especifica al RISKOptimizer que ste determinar la tolerancia de convergencia para usted.
129
130
Las opciones en la pestaa de visualizar incluyen: Minimizar el Excel al inicio. Esta opcin seleccionar minimizar el Excel cuando se inicia la optimizacin. Mostrar reclculos de Excel. Esto especifica que se actualice el Excel ya sea con cada mejor nueva solucin o bien al final de cada simulacin. Ntese que en ciertas situaciones la pantalla ser actualizada independientemente de esta configuracin, por ejemplo cuando la optimizacin ha sido puesta en pausa. Mantener bitcora de todas las simulaciones. Esta opcin especifica que el RISKOptimizer mantenga una bitcora en ejecucin de cada nueva simulacin llevada a cabo. Esta bitcora puede ser visualizada en la ventana del Observador del RISKOptimizer.
131
132
Se pueden ejecutar macros en los siguientes momentos durante una optimizacin: Al inicio de la optimizacin la macro se ejecuta despus de que el botn de Ejecutar haya sido digitado; antes de que se genere la primera solucin de prueba. Antes de que inicie cada simulacin la macro se ejecuta antes de que se ejecute cada simulacin (una simulacin para cada solucin de prueba generada por el optimizador). Antes del reclculo de cada iteracin la macro se ejecuta despus del muestreo pero antes del reclculo de cada iteracin de cada simulacin que es ejecutada. La macro se ejecuta despus de que las muestras hayan sido obtenidas de las funciones de distribucin de probabilidad para la iteracin pero antes del reclculo subsecuente del modelo.
133
Despus del reclculo de cada iteracin la macro se ejecuta despus de que se haya ejecutado cada iteracin de cada simulacin. La macro se ejecuta despus de obtener las muestras de las funciones de distribucin de probabilidad para la iteracin y el reclculo del modelo usando tales muestras; pero antes se de que se recolecte el valor para la celda objetivo. Despus de que cada simulacin finaliza la macro se ejecuta despus de la ejecucin de cada simulacin, pero antes de que se almacene el estadstico que est siendo optimizado para la distribucin de la celda objetivo. Despus de almacenar variable de salida la macro se ejecuta despus de la ejecucin de cada simulacin y despus de que se almacene el estadstico que est siendo optimizado para la distribucin de la celda objetivo. Al final de la optimizacinla macro se ejecuta cuando se completa la optimizacin.
Esta funcionalidad permite clculos que slo pueden ser llevados a cabo por medio del uso de una macro a ser realizada durante una optimizacin. Algunos ejemplos de tales clculos llevados a cabo por macros son los clculos iterativos de bucle y clculos que requieren nuevos datos de fuentes externas. El nombre de macro define la macro a ser ejecutada.
134
La ventana de progreso despliega: Iteracin o el nmero de iteraciones ejecutadas en la simulacin actual. Simulacin o el nmero total de simulaciones que han sido ejecutadas y el # vlidas indica el nmero de tales simulaciones para las cuales todas las restricciones han sido satisfechas. Tiempo de ejecucin o el tiempo transcurrido en la ejecucin Original o el valor original para el estadstico de la celda objetivo de la forma que fue calculado desde la simulacin inicial ejecutada usando los valores existentes en la hoja de clculo para las celdas ajustables. Mejor o el mejor valor actual para la celda objetivo que est siendo minimizada o maximizada.
Durante una optimizacin, la barra de estado en Excel tambin despliega el progreso actual del anlisis.
135
Las opciones en la Barra de herramientas de la ventana de progreso del RISKOptimizer incluyen: Opciones de despliegue de actualizacin de Excel. Seleccione la actualizacin del despliegue de Excel para cada simulacin, o para cada mejor nueva solucin o nunca. Ntese que en ciertas situaciones la pantalla ser actualizada independientemente de esta configuracin, por ejemplo cuando la optimizacin ha sido puesta en pausa. Desplegar el Observador del RISKOptimizer. Despliega toda la ventana del Observador del RISKOptimizer. Ejecutar. Al hacer clic sobre el botn de Ejecutar provoca que el RISKOptimizer empiece a buscar una solucin basado en la descripcin actual de la caja de dilogo de modelo de RISKOptimizer. Si usted pausa el RISKOptimizer estar todava en capacidad de hacer clic sobre el cono de Ejecutar para continuar la bsqueda de mejores soluciones. Pausa. Si usted deseara pausar el proceso de RISKOptimizer, simplemente haga clic sobre el cono de Pausa y temporalmente congelar el proceso del RISKOptimizer. Mientras est pausado, usted podra querer abrir y explorar el Observador del RISKOptimizer y cambiar parmetros, ver a toda la poblacin, visualizar un reporte de estado o copiar un grfico. Detener. Detiene la optimizacin.
136
Comando de utilitarios
Comando Configuraciones de aplicacin
Despliega la caja de dilogo de Configuraciones de aplicacin en donde se pueden definir los valores del programa por defecto
Una amplia variedad de configuraciones del RISKOptimizer pueden ser definidas por sus valores por defecto los cuales sern usados cada vez que se ejecute el RISKOptimizer. Estos incluyen Valores por defecto de detencin, Valores por defecto de tasas de cruce y mutacin y otros.
137
138
Comando de utilitarios
Un botn de la Ventana de Progreso permite al usuario cambiar al Observador del RISKOptimizer. En el modo de Solver de restricciones, los detalles del progreso de la optimizacin estn disponibles como en las optimizaciones que se hacen en modo normal, en las pestaas Progreso, Resumen, Bitcora, Poblacin y Diversidad. En el modo de Solver de restricciones, el Observador contiene una pestaa adicional titulada Solver de restricciones. Esta pestaa muestra el estado de cada restriccin fija (Satisfecha o No satisfecha) de las soluciones Mejor, Original y ltima.
Una optimizacin del Solver de restricciones se detiene automticamente cuando se encuentra una solucin que cumple todas las restricciones fijas; tambin se puede parar haciendo clic en un botn de la ventana de progreso o en el Observador del RISKOptimizer. Despus de una ejecucin del Solver de restricciones, en la pestaa Opciones de detencin del Observador del RISKOptimizer puede seleccionar mantener la solucin Mejor, Original o ltima, como en las optimizaciones que se hacen en modo regular. Recuerde que no hay necesidad de configurar el Solver de restricciones antes de una ejecucin. Se usan las configuraciones especificadas en el modelo, slo cambiando el objetivo de optimizacin: el nuevo objetivo es encontrar una solucin que cumpla todas las restricciones fijas.
139
En la pestaa Opciones de detencin hay una opcin adicional recomendada de Definir valor semilla usado en esta optimizacin. Esta opcin se proporciona porque si la semilla de generador de nmero aleatorio no es fija, entonces las restricciones que se cumplieron durante una ejecucin del Solver de restricciones pueden no cumplirse durante una ejecucin en modo regular, incluso aunque los valores de celda ajustables sean los mismos (ya que los resultados de la simulacin dependen de la semilla). La opcin est desactivada si la semilla estaba fija en la caja de dilogo Configuraciones de Optimizacin antes de ejecutar el Solver de restricciones.
140
Comando de utilitarios
141
Los grficos de progreso muestran el conteo de la simulacin en el eje X y los valores de la celda objetivo en el eje Y. Los grficos de progreso pueden ser re escalados al hacer clic en los lmites del eje y al arrastrar el eje a un nuevo valor de escala. Alternativamente, al hacer clic derecho sobre el grfico de progreso despliega la caja de dilogo de Opciones de grfico en donde se permite una personalizacin an mayor de los grficos.
142
La Caja de dilogo de opciones de grfico despliega configuraciones que controlan el ttulo, las leyendas, el escalamiento y las fuentes usadas sobre el grfico desplegado.
143
La Configuracin de Grupos de Celdas Ajustables le permite cambiar las tasas de cruce y de mutacin del algoritmo gentico a medida que el problema se encuentra en progreso. Cualesquiera cambios hechos ac se superpondrn a las configuraciones originales de estos parmetros y se ejecutarn inmediatamente, afectando la poblacin (o grupo de celdas ajustables) que fue seleccionado en el campo de Grupo mostrado.
144
Recomendamos casi siempre usar la tasa de cruce por defecto en 0.5. Para la mutacin, en muchos modelos usted podra incrementarla tan alto hasta como de 0.4 si usted desea encontrar la mejor solucin y est dispuesto a esperar ms tiempo por ella. Al definir el valor de mutacin en 1 (su mximo) resultar en una adivinanza totalmente aleatoria, en la medida en que el RISKOptimizer lleva a cabo una mutacin despus de haber ejecutado un cruce. Esto significa que despus de que los dos padres seleccionados son cruzados para crear una solucin descendiente, el 100% de los genes de tal solucin mutarn con nmeros aleatorios, tornando efectivamente en inservible el proceso de cruce (vase tasa de cruce, lo que hace y tasa de mutacin, lo que hace en el ndice para mayor informacin).
145
Las opciones de Mostrar seleccionan mostrar una bitcora de Todas las simulaciones o bien slo aquellas simulaciones en donde un Paso de progreso (esto es, en donde el resultado de la optimizacin mejor). La bitcora incluye: 1. 2. 3. Tiempo transcurrido, o el tiempo de inicio de la simulacin Iters, o el nmero de iteraciones ejecutadas Resultado, o el valor del estadstico de la celda objetivo que usted est tratando de maximizar o minimizar, incluyendo las penalizaciones para las restricciones blandas
146
4.
Media del resultado, DesvEst del resultado, Mn del resultado, mx del resultado, o los estadstico para la distribucin de probabilidad para la celda objetivo que fue calculada Columnas de entradas, o los valores usados para sus celdas ajustables Columnas de restricciones mostrando si las restricciones fueron satisfechas
5. 6.
147
148
149
150
Esta caja de dilogo tambin aparecer si alguna de las condiciones de detencin especificadas por el usuario han sido satisfechas (el nmero de pruebas ejecutadas han sido evaluadas, minutos transcurridos requeridos, etc.). La alerta de detencin ofrece tres alternativas para la actualizacin de los valores de las celdas ajustables en su hoja de clculo: Mejor, Original y Ultimo. Mejor. Esto acepta los resultados del RISKOptimizer y finaliza la bsqueda del RISKOptimizer para mejores soluciones. Cuando usted selecciona esta opcin, los valores del mejor escenario que el RISKOptimizer ha encontrado en su bsqueda se posicionan en las celdas ajustables de su hoja de clculo. Original. Esto restaura las celdas ajustables a sus valores originales antes de que se ejecutara el RISKOptimizer, y finaliza la bsqueda del RISKOptimizer por mejores soluciones. Ultimo. Esto causa que el RISKOptimizer coloque los ltimos valores calculados de la optimizacin en la hoja de clculo. La opcin de ltimos valores calculados es particularmente til para revisar modelos y encontrar errores.
151
Las opciones de Reportes a Generar pueden generar hojas de clculo resumen de optimizacin que pueden ser usadas para reportar sobre los resultados de la ejecucin y para comparar los resultados entre ejecuciones. Las opciones de reporte incluyen: Resumen de optimizacin. Este reporte resumen contiene informacin tal como fecha y tiempo de ejecucin, las configuraciones de optimizacin utilizadas, los valores calculados para la celda objetivo y el valor para cada una de las celdas ajustables.
152
Bitcora de todas las simulaciones. Este reporte genera una bitcora de todos los resultados de las simulaciones de prueba llevadas a cabo.
Bitcora de pasos de progreso. Este reporte genera una bitcora de todas aquellas simulaciones de prueba llevadas a cabo que mejoraron el resultado para la celda objetivo.
153
154
Captulo 6: Optimizacin
Introduccin ..........................................................................................156 Mtodos de optimizacin ...................................................................156 Acerca de algoritmos de ascenso de colinas ....................................158 El Solver de Excel .................................................................................162 Tipos de problemas .............................................................................163 Problemas lineales..................................................................163 Problemas no lineales............................................................163 Problemas basados en tablas................................................165 Problemas Combinatorios.....................................................166
Captulo 6: Optimizacin
155
Introduccin
El RISKOptimizer combina optimizacin y simulacin para permitirle optimizar problemas que contengan elementos inciertos. Los siguientes tres captulos de este manual proveen informacin de contexto sobre las tcnicas analticas usadas en el RISKOptimizer, incluyendo1) optimizacin, 2) algoritmos genticosy3) simulacin.
Mtodos de optimizacin
Los problemas de optimizacin tradicional basados en Excel que utilizan tanto el Solver como el Evolver se componen de: Una celda de salida u objetivo que usted desea minimizar o maximizar. Un conjunto de celdas de entrada o ajustables cuyos valores usted controla. Un conjunto de restricciones que deben ser satisfechas, usualmente especificadas utilizando expresiones tales como COSTOS<100 o A11>=0
Durante una optimizacin en Solver o Evolver, las celdas ajustables se cambian a lo largo de los rangos permisibles que usted especifica. Para cada posible conjunto de valores de celdas ajustables el modelo se recalcula, y se genera un nuevo valor para la celda objetivo. Cuando la optimizacin se completa, se encuentra una solucin ptima (o bien una combinacin de valores de celdas ajustables). Esta solucin es la combinacin de valores de celdas que generan el mejor valor (es decir, el mnimo o mximo) para el valor de la celda objetivo mientras se satisfacen las restricciones que usted ha introducido. Algunos problemas de optimizacin son muchsimo ms difciles de resolver que otros. Para problemas difciles, tal y como un modelo de Excel para encontrar la ruta mnima posible entre 1000 ciudades, no es posible examinar cada posible solucin. Tal enfoque requerira aos de clculos en las computadoras ms rpidas. Para resolver tales problemas, es necesario buscar por medio de un subconjunto de todas las soluciones posibles. Al examinar tales soluciones, se puede obtener una idea de cmo encontrar mejores soluciones. Esto se lleva a cabo por medio de un algoritmo. Simplemente, un algoritmo es una descripcin paso a paso de cmo enfocar un problema. Todos los programas computacionales, por ejemplo, se construyen combinando numerosos algoritmos.
156
Iniciemos explorando cmo la mayora de los algoritmos de resolucin de problemas inician representando un problema. La mayora de los problemas pueden ser divididos en tres componentes bsicos: entradas, una funcin de cierto tipo y una salida resultante.
En busca de: Dado: Para obtener el mejor:
Entradas Variables
Funcin Modelo
Salidas Objetivo
Asumamos que nuestro problema de optimizacin involucrados variables, X e Y. A la hora de colocarlas en una ecuacin, estas dos variables producen un resultado = Z. Nuestro problema es encontrar el valor para X e Y que produzca el mayor valor de Z. Podramos pensar en Z como una nota, que indica qu tan bueno en particular, se ve el aparejamiento de X con Y.
En busca de: Dado: Para obtener el mejor:
En este ejemplo
XyY
Ecuacin
Un diagrama de cada conjunto de Xs e Ys, y las resultantes Zs produciran un grfico de superficie de tres dimensiones tal y como el que se muestra a continuacin:
Captulo 6: Optimizacin
157
Cada interseccin de una X y una Y producen un valor de altura Z. Las cspides y los valles de este paisaje representan respectivamente soluciones buenas y malas. La bsqueda por el punto ms alto o mximo de esta funcin al examinar cada solucin tomara demasiado tiempo, an con un computador poderosos y el programa ms rpido. Recuerde que estamos otorgndole a Excel solamente la funcin en si misma, no un grfico de la funcin, y de que igual de fcil podramos estar lidiando con un problema de 200 dimensiones as como con este problema de dos dimensiones. Por tanto, necesitamos un mtodo que nos permita realizar menos clculos y que an as encuentre la productividad mxima.
El ascenso de colinas trata solamente una solucin o escenario por vez. Utilizaremos un punto negro () para representar una solucin posible (un conjunto de valores X, Y y Z). Si posicionamos el punto en un punto de inicio aleatorio, esperamos que nuestro mtodo de ascenso de colinas lleve el punto a la cspide del grfico.
158
Del diagrama ac arriba podemos ver claramente que deseamos que el punto vaya hacia arriba de la colina hacia la derecha. Sin embargo, slo sabemos eso ya que hemos podido ver la totalidad del paisaje. A medida que el algoritmo se ejecuta, ste observa el paisaje alrededor de l inmediatamente, pero no todo el paisaje; observa los rboles pero no el bosque.1 En la mayora de problemas de la vida real, el paisaje no es tan suave, y requerira aos para calcular, de forma tal que slo calculamos el escenario actual y los escenarios en sus inmediaciones. Imagnese que el punto es una persona con los ojos tapados en medio de colinas suaves. Si la persona emplease el algoritmo de ascenso de colinas, este hombre pondra un pie en cada direccin y slo se movera cuando sintiese una topografa ms alta. Esta persona podra mover su pie exitosamente hacia arriba y eventualmente descansara en la cspide en donde todo el terreno a su alrededor fuese ms bajo que el terreno sobre el que se encontrase. Esto parece simple. Sin embargo, entramos en un problema muy serio si la persona inicia en otro lugar y asciende la colina equivocada! (vase el diagrama a continuacin).
An con una funcin suave, el ascenso de colinas puede fallar si usted inicia con una posicin ligeramente diferente (derecha).
1 En nuestro diagrama, la funcin se muestra como un paisaje suave. En los casos poco frecuentes en donde lidiamos con funciones simples y suaves (diferenciables), es posible usar clculo para encontrar los mnimos y los mximos. Si n embargo, la mayora de los problemas de la vida real no pueden ser descritos con funciones suaves.
Captulo 6: Optimizacin
159
El ascenso de colinas slo encuentra la cspide ms prxima, llamado el mximo local. As que, si su problema posee un paisaje muy spero y lleno de colinas, como lo que sucede con la mayora de los problemas realistas, el ascenso de colinas no tiene una alta posibilidad de encontrar la cspide ms alta, o inclusive alguna de las ms altas. El ascenso de colinas tiene otro problema; cmo en realidad encontramos el terreno circundante respecto de nuestra posicin actual? Si el paisaje est descrito por una funcin suave, podra ser posible utilizar diferenciacin (una tcnica de clculo) para encontrar en qu direccin se encuentra la pendiente ms pronunciada. Si el terreno es discontinuo o no diferenciable (como es ms posible en muchos problemas del mundo real) debemos calcular el aptitud de los escenarios circundantes. Por ejemplo, asuma que un banco contrata a un oficial de seguridad desde las 9:00am hasta las 5:00pm para cuidar del banco, pero el banco debe otorgarle dos descansos de media hora. Debemos encontrar los tiempos ptimos de descanso, dadas ciertas reglas generales de razones de desempeo/fatiga y considerando los diferentes niveles de actividad de los clientes a lo largo del da. Podramos iniciar probando ciertas combinaciones de descansos de trabajo y evaluarlas. Si actualmente usamos un calendario en donde los descansos estn programados para las 11:00am y para las 3:00pm, podramos calcular la productividad de los escenarios circundantes: Direccin
Solucin actual Escenario oeste Escenario este Escenario norte Escenario sur
160
Si tuvisemos tres celdas ajustables (descansos) en vez de dos, deberamos buscar en ocho distintas direcciones. De hecho, si slo tuvisemos cincuenta variables (muy realista para un problema de tamao mediano) deberamos calcular una productividad para 250, solamente para un oficial de seguridad!! Se pueden hacer modificaciones al ascenso de colinas para mejorar su habilidad de encontrar mximos globales (las cspides ms altas en el paisaje total). El ascenso de colinas es ms til para tratar problemas unimodales (una sola cspide), y por eso es que ciertos programas de anlisis utilizan tal tcnica. Sin embargo, es muy limitado para problemas complejos o grandes.
Captulo 6: Optimizacin
161
El Solver de Excel
El Excel incluye un utilitario de optimizacin denominado Solver. El Solver puede resolver dos tipos de problemas: problemas lineales y problemas no lineales simples. Resuelve problemas lineales utilizando una rutina de programacin lineal. Esta clsica tcnica matemtica es comnmente referida como el mtodo Simplex y siempre encontrar respuestas perfectas para pequeos problemas puramente lineales. Como muchos otros resolvedores pequeos, el Solver de Microsoft tambin resuelve problemas no lineales, utilizando una rutina de ascenso de colinas (especficamente la rutina GRG2). Una rutina de ascenso de colinas inicia con los valores actuales de las variables y las ajusta lentamente hasta que la salida del modelo no se mejore ms. Esto implica que problemas con ms de una solucin posible podran ser imposibles para que el Solver resolviera correctamente, ya que el Solver finaliza en una solucin local y no puede saltar hacia la solucin global. (vase la figura a continuacin).
Adicionalmente, el Solver requiere que la funcin representada por su modelo sea continua. Esto significa que la salida debera cambiar suavemente a medida que se ajustan las variables de entrada. Si su modelo utiliza tablas de bsqueda, obtiene informacin ruidos en tiempo real de otro programa, contiene elementos aleatorios o involucra reglas si-entonces, su modelo ser muy cambiante y discontinuo. El Solver no podra ser capaz de resolver tal problema. El Solver tambin impone un lmite en el nmero de variables y en el nmero de restricciones en su problema (200) a partir del cual usted debera buscar por una tcnica ms poderosa.
162
Tipos de problemas
Algunos tipos distintos de problemas tpicamente se optimizan. Problemas lineales En los problemas lineales, todas las variables de salida son funciones lineales simples en funcin de las variables de entrada, tal como y=mx + b. Cuando los problemas slo usan operaciones aritmticas simples tales como la suma, la resta y funciones de Excel como TENDENCIA() y PRONOSTICO() esto indica que slo existen relaciones lineales entre las variables. Los problemas lineales son fciles de resolver desde el advenimiento de las computadoras y de la invencin del mtodo Simplex por parte de George Dantzig. Un simple problema lineal puede ser resuelto ms rpidamente y de forma precisa con un utilitario de programacin lineal. El utilitario Solver incluido en el Excel se convierte en una herramienta de programacin lineal cuando usted define la opcin de Asumir modelo lineal. De esta forma, el Solver utiliza una rutina de programacin lineal para encontrar rpidamente la solucin perfecta. Si su problema puede ser expresado en trminos puramente lineales, usted debera entonces utilizar programacin lineal. Desafortunadamente, la mayora de los problemas del mundo real no pueden ser descritos linealmente. Problemas no lineales
2Si el costo para manufacturar y enviar 5,000 artculos fuese de $5,000, costara acaso $1 para manufacturar y enviar 1 artculo? Probablemente no. La lnea de ensamblaje en la fbrica igual consumira energa, la papelera igual tendra que completarse y procesarse a lo largo de varios departamentos, los materiales igual tendran que adquirirse a granel, los camiones igual requeriran la misma cantidad de combustible para entregar los artculos, y el conductor del camin igual se le tendra que pagar un salario completo independientemente del tamao de la carga de su vehculo. La mayora de los problemas del mundo real no involucran variables con relaciones lineales simples. Estos problemas involucran multiplicacin, divisin, exponenciacin y funciones propias del Excel como RAIZ() y CRECIMIENTO(). En el momento en que las variables involucren una relacin desproporcional de una contra las otras, el problema se transforma en no lineal.
Para mayor especificacin, vase el Utilitario del Solver de Microsoft en la Gua de Usuario de Excel.
Captulo 6: Optimizacin 163
Un ejemplo perfecto de un problema no lineal es la administracin de un proceso de manufactura en una planta qumica. Imagnese que deseamos mezclar algunos reactivos qumicos y obtener un producto qumico como resultado. La velocidad de esta reaccin podra variar no linealmente con la cantidad de reactivos disponibles; a partir de determinado punto, el catalizador se satura y el reactivo en exceso se vuelve un obstculo. El siguiente diagrama muestra tal relacin:
Si simplemente requerimos encontrar el nivel mnimo de reactivos que nos proporcione la tasa mxima de reaccin, slo requerimos iniciaren cualquier punto del grfico y ascender a lo largo de la curva hasta que lleguemos a la cspide. Este mtodo de encontrar una respuesta se denomina ascenso de colinas. El ascenso de colinas siempre encontrar la mejor solucin si a) la funcin siendo explorada es suave y b) los valores de la variable inicial lo posicionan en un lado de la colina ms alta. Si alguna de las dos condiciones no se satisface, el ascenso de colinas podra terminar en una solucin local, en vez de encontrar la solucin global. Los problemas altamente no-lineales, los que se ven con ms frecuencia en la prctica, poseen muchas soluciones posibles a lo largo de un paisaje complicado. Si un problema posee muchas variables, y/o las frmulas involucradas contienen mucho ruido o son muy curveadas, la mejor respuesta probablemente no ser encontrada con el ascenso de colinas, an despus de intentar cientos de veces desde distintos puntos de partida. Ms probablemente, se encontrar una solucin sub-ptima y extremadamente local (vase figura abajo) .
164
El ascenso de colinas encuentra el mximo local pero no el mximo global. Datos ruidosos: El ascenso de colinas no es efectivo, an con mltiples pruebas.
El RISKOptimizer y el Evolver(la fuente del optimizador basado en algoritmos genticos usado en el RISKOptimizer )no utilizan el ascenso de colinas. En vez de eso, usan una tcnica estocstica de bsqueda direccionada denominada algoritmo gentico. Esto le permite al RISKOptimizer brincar en un espacio de solucin de un problema, examinando muchas combinaciones de valores de entrada sin que se quede pegado en ptimos locales. Adicionalmente, el RISKOptimizer permite que los buenos escenarios se comuniquen con los otros para obtener informacin valiosa acerca de cmo se ve el paisaje de la solucin global, y luego utiliza esta informacin para lograr mejores adivinanzas sobre cules escenarios tienen ms probabilidad de ser exitosos.
El RISKOptimizer genera muchos escenarios posibles y luego refina su bsqueda basado en la retroalimentacin que recibe.
Muchos problemas requieren el uso de tablas de bsqueda y de bases de datos. Por ejemplo, a la hora de escoger las diferentes cantidades de materiales a comprar, usted podra requerir buscar los precios cobrados para distintas cantidades. Las tablas y las bases de datos convierten a los problemas en discontinuos (no suaves). Esto lo torna difcil para rutinas de ascenso de colinas como el Solver para poder encontrar soluciones ptimas. Sin embargo, el RISKOptimizer no requiere de continuidad en las funciones que evala y puede encontrar buenas soluciones para problemas basados en tablas, inclusive en problemas que usan muchas tablas grandes y entrelazadas.
Captulo 6: Optimizacin
165
Si su problema involucra la bsqueda de valores desde una base de datos o de una tabla de datos en Excel, en donde el ndice del tem de la tabla es una variable o una funcin de una variable, usted necesita utilizar el Evolver o el RISKOptimizer. Si usted slo puede buscar un nico tem contante de una tabla (el mismo registro es obtenido de la tabla independientemente de los valores de las variables de entrada), entonces en realidad, usted est solamente lidiando con una constante y probablemente usted podra utilizar el Solver de una forma efectiva. Problemas Combinatorios Existe un gran grupo de problemas que es muy diferente de los problemas numricos examinados hasta este momento. Son problemas en donde las variables de salida involucran el cambio de orden de una serie existente de variables de entrada o un agrupamiento de subconjuntos de las variables de entrada. Se llama problemas combinatorios. Estos problemas son usualmente muy difciles de resolver ya que usualmente requieren de tiempo de forma exponencial; esto es, la cantidad de tiempo requerido para resolver un problema con 4 variables sera de4 x 3 x 2 x 1,y al doblar el nmero de variables a 8 el tiempo de resolucin sera de 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1, o bien un factor de 1,680. El nmero de variables se duplica, pero el nmero de posibles soluciones que debe ser verificada se incrementa en 1,680 veces. Por ejemplo, la escogencia de la secuencia de jugadores a batear en un partido de bisbol es un problema combinatorio. Para 9 jugadores, usted puede escoger uno de cada uno de los 9 como su primer bateador. Luego usted puede escoger uno de los 8 remanentes como el segundo bateador, despus uno de los 7 remanentes para el tercero y as sucesivamente. Existen 9x8x7x6x5x4x3x2x1 (9 factorial)formas para escoger una alineacin de 9 jugadores. Esto es de 362,880 diferentes alineaciones. Ahora bien, si usted duplica el nmero de jugadores, existen entonces 18 formas factoriales de alineaciones, o bien 6,402,373,705,000,000 posibles alineaciones! El algoritmo gentico del RISKOptimizer y del Evolver busca inteligentemente a lo largo de posibles permutaciones. Esto es muchsimo ms prctico que buscar todas las posibilidades, y es mucho ms eficiente que examinar simplemente permutaciones al azar; ya que los sub-rdenes de buenos escenarios pueden ser retenidos para crear an mejores escenarios.
166
167
168
Introduccin
El RISKOptimizer usa los algoritmos genticos para buscar respuestas ptimas para los modelos de simulacin. Los algoritmos genticos utilizados son adaptados del Evolver, un complemento de optimizacin para el Excel de Palisade Corporation. Este captulo provee informacin de contexto sobre los algoritmos genticos para aclarar cmo son utilizados para modelos de simulacin optimizada.
Historia
Los primeros algoritmos genticos fueron desarrollados a principios de los 1970s por John Holland en la Universidad de Michigan. Holland estaba impresionado con la facilidad con que los sistemas biolgicos podan ejecutar tareas que eludan an a las ms poderosas sper computadoras; los animales pueden perfectamente reconocer un objeto, entender y traducir sonidos, y en general, navegar en medio de un ambiente dinmico de forma casi instantnea. Por dcadas, los cientficos han prometido replicar estas capacidades en mquinas, pero estamos empezando a reconocer qu tan difcil es esta tarea. La mayora de los cientficos concuerda que cualquier sistema biolgico complejo que exhibe estas cualidades ha evolucionado para convertirse en tal. Teora de la evolucin La evolucin, afirma la teora, ha producido sistemas con capacidades impresionantes a travs de una serie de fundamentos relativamente simples y que se auto-reproducen que siguen, a su vez, unas pocas reglas simples: 1. La evolucin sucede a nivel del cromosoma. El organismo por si mismo, no evoluciona, sino que, slo sirve como un receptculo en donde los genes son acarreados y traspasados. Son los cromosomas que estn cambiando dinmicamente con cada reconfiguracin de genes. La naturaleza tiende a hacer ms copias de los cromosomas, los cuales producen un organismo ms adaptado. Si un organismo sobrevive lo suficiente, y est sano, sus genes tienen ms probabilidad de ser pasados a la nueva generacin de organismos a travs de la reproduccin. A este principio e le conoce generalmente como el de la supervivencia del ms apto. Recuerde que el trmino ms apto es un trmino relativo; un organismo slo requiere ser apto en comparacin con otros en su poblacin actual para ser exitoso.
169
2.
3.
La diversidad debe ser mantenida en la poblacin. De manera aparente, las mutaciones ocurren frecuentemente en la naturaleza para asegurar la variacin de los organismos. Estas mutaciones genticas resultan generalmente en una funcionalidad til, o inclusive vital, para la supervivencia de una especia. Con un espectro an ms ancho de combinaciones posibles, una poblacin tambin es menos susceptible a las debilidades comunes que podran destruirlos a todos (virus, etc.), u otros problemas asociados con la reproduccin.
Una vez que hemos descompuesto a la evolucin en sus bloques fundamentales, se vuelve fcil aplicar estas tcnicas al mundo computacional, y verdaderamente empezar a movernos hacia mquinas ms fluidas y con un comportamiento ms natural. Holland empez a aplicar estas propiedades de la evolucin a hileras simples de nmeros que representaran cromosomas. Primero, l codific su problema en hileras binarias (filas de 1s y 0s) para representar a los cromosomas, y luego hizo que la computadora generar muchas de estas hileras bit para formar una poblacin total de ellas. Se programa una funcin de aptitud que pudiese evaluar y jerarquizar cada hilera bit, y aquellas hileras que se observaran ms aptas cruzaran datos con otras por medio de una rutina de cruce para crear hileras bit de descendientes. Inclusive, Holland sujet sus cromosomas digitales a un operador de mutacin, que inyectaba aleatoriedad a los cromosomas descendientes resultantes para retener la diversidad dentro de la poblacin. Esta funcin de aptitud reemplaz el rol de la muerte en el mundo biolgico; determinando cules hileras eran lo suficientemente buenas como para continuarse reproduciendo y cules no seran almacenadas ms en memoria.
170
Historia
El programa mantena un nmero dado de estos cromosomas en memoria, y esta poblacin total de hileras continuamente evolucionaba hasta que se maximizara la funcin de aptitud. El resultado luego era decodificado de vuelta a sus valores originales para revelar la solucin. John Holland se mantiene como un pionero activo en este campo, y se encuentra ahora unido a cientos de cientficos y escolsticos que han dedicado la mayora de su tiempo hacia esta prometedora alternativa a la programacin lineal u a las tcnicas tradicionales matemticas y estadsticas. El algoritmo gentico original de Holland era bien simple y, al mismo tiempo, sobresalientemente robusto, encontrando soluciones ptimas para una amplia variedad de problemas. Muchos programas personalizados de hoy en da resuelven problemas del mundo real muy grandes y complejos usando versiones ligeramente modificadas de este algoritmo gentico original. Adaptaciones modernas de los algoritmos genticos A medida que se acrecentaba el inters en los crculos acadmicos, y que el poder computacional en serio empez a movilizarse hacia las computadores genricas de escritorio, los estndares de Microsoft Windows y de Excel hicieron los complejos problemas de disear y mantener modelos muy sencillo. El uso de nmeros reales en vez de representacin de hileras de bits elimin la difcil tarea de codificar y decodificar cromosomas. La popularidad del algoritmo gentico est creciendo ahora de manera exponencial, con seminarios, libros, artculos en revistas, y consultores con buenos conocimientos apareciendo por todo lado. La Conferencia Internacional de Algoritmos Genticos ya se est enfocando en aplicaciones prcticas, una seal de madurez que todava elude a otras tecnologas de la inteligencia artificial. Muchas compaas Fortune 500 emplean algoritmos genticos regularmente para resolver problemas del mundo real, desde empresas de corredura burstil hasta plantas de energa, compaas telefnicas, cadenas de restaurantes, fabricantes de automviles y redes de televisin. De hecho, existe una alta probabilidad de que usted haya utilizado indirectamente un algoritmo gentico con anterioridad!
171
172
Historia
Un ejemplo biolgico
Veamos un ejemplo simple de evolucin en el mundo biolgico (en pequea escala). Por evolucin ac queremos decir cualquier cambio en la distribucin o frecuencia de los genes en una poblacin. Por supuesto, lo interesante acerca de la evolucin es que tiende a conducir a las poblaciones que se encuentran constantemente en adaptacin a sus ambientes. Imagnese que estamos viendo una poblacin de ratones. Estos ratones exhiben dos tamaos, pequeo y grande, y exhiben dos colores, claros y oscuros. Nuestra poblacin consiste de los siguientes ocho ratones:
Un da, llegan los gatos al vecindario y se empiezan a comer a los ratones. Resulta que los ratones ms oscuros y pequeos son ms difciles de encontrar por parte de los gatos. De esta forma, distintos ratones poseen diferentes posibilidades de evitar a los gatos por un tiempo suficientemente largo como para poder reproducirse. Asumiendo que los ratones viejos mueren justo despus de reproducirse, la prxima generacin de ratones se ve como sigue:
Ntese que los ratones grandes, los ratones claros y particularmente los ratones grandes y claros estn teniendo un particular problema para sobrevivir lo suficientemente como para reproducirse. Esto contina en la prxima generacin.
173
Ahora que la poblacin consiste ms que todo de ratones pequeos y oscuros, ya que estos ratones estn mejor adaptados a la supervivencia en este ambiente que otros tipos de ratones. Similarmente, a medida que los gatos se tornan ms hambrientos con menos ratones que comer, probablemente aquellos gatos que prefieran un poco de legumbres estarn mejor adaptados y pasarn sus genes amantes de legumbres a la prxima generacin de gatos. Este es el concepto central de supervivencia del ms apto. Ms precisamente, podra definirse como supervivencia hasta la reproduccin. En trminos evolutivos, el ser el ms saludable soltern de la poblacin no tiene ningn valor, ya que se debe reproducir para por medio de sus genes, influir sobre las futuras generaciones.
174
Un ejemplo biolgico
Un ejemplo digital
Imagine un problema con dos variables, X y Y, que producen un resultado Z. Si calculsemos y graficsemos la Z resultantes para cada valor posible X y Y, veramos emerger un paisaje de solucin (discutido tambin en el Captulo 6: Optimizacin). Ya que estamos tratando de encontrar un Z mximo, los picos de la funcin son soluciones buenas, y los valles son malas.
Primeramente, crese una poblacin entera de soluciones posibles. Algunas sern mejores (ms altas) que otras. Luego, las jerarquizamos a todas y mantenemos las soluciones que rindan los mejores resultados.
Al utilizar algoritmos genticos para maximizar nuestra funcin, empezamos creando algunas soluciones posibles o escenarios aleatorios (los puntos negros), en vez de solamente un punto de partida. Luego calculamos la salida de la funcin para cada escenario y graficamos cada escenario como un punto. Luego, jerarquizamos todos los escenarios por altitud, desde el mejor hasta el peor. Mantenemos los escenarios de la mitad para arriba, y desechamos los otros. Cada uno de los tres escenarios remanentes se duplica a si mismo, haciendo que el nmero de escenarios sea una vez ms de seis. Ahora viene la parte interesante: cada uno de los seis escenarios est hecho de dos valores ajustables (graficados como una coordenada con un X y un Y). Los escenarios se emparejan con otro de manera aleatoria. Ahora, cada escenario intercambia cada uno de sus dos valores ajustables con el correspondiente valor de su pareja. Por ejemplo:
175
Despus
2.6, 5.0 3.4, 3.2
Esta operacin se denomina de cruce (crossover). Cuando nuestros seis escenarios se emparejan aleatoriamente y ejecutan un cruce, podramos obtener un nuevo conjunto de escenarios como ste:
En el ejemplo de arriba, asumimos que los tres escenarios originales, a, b y c, se emparejaron con sus duplicados, A, B, C para formar las parejas aB, bC, bA. Estas parejas luego intercambiaron valores para la primera celda ajustable, que es equivalente en nuestro diagrama a intercambiar coordenadas x y y entre las parejas de puntos. La poblacin de escenarios ya ha vivido por una generacin, con su ciclo de muerte y nacimiento. Ntese que algunos de los nuevos escenarios resultan en un resultado ms bajo (menor altitud) que cualquiera que vimos en la generacin original. Sin embargo, un escenario se ha movido bien alto a la colina ms alta, indicando progreso. Si permitimos que la poblacin evolucione una generacin ms, podramos ver una escena como la siguiente:
176
Un ejemplo digital
Usted puede ver cmo el desempeo normal de la poblacin de escenarios se incrementa despus de la ltima generacin. En este ejemplo, no queda mucho campo disponible para el mejoramiento. Esto es porque slo existen dos genes por organismo, slo seis organismos, y no hay forma alguna para crear nuevos genes. Esto significa que existe una pila de genes limitada. La pila de genes es la suma de todos los genes de todos los organismos en la poblacin. Los algoritmos genticos pueden ser hechos mucho ms poderosos al replicar ms de la fortaleza inherente de la evolucin en el mundo biolgico; incrementando el nmero de genes por organismo, incrementando el nmero de organismos en una poblacin, y permitiendo mutaciones ocasionales y aleatorias. Adicionalmente, podemos escoger los escenarios que vivirn y se reproducirn ms a como ocurre naturalmente: con un elemento aleatorio que posea un leve sesgo hacia aquellos que se desempeen mejor, en vez de simplemente escoger a los mejores organismos a que se reproduzcan (an el ms grande y fuerte de los leones puede ser aniquilado por un trueno!) Todas estas tcnicas estimulan el refinamiento gentico, y ayudan a mantener la diversidad en la pila de genes, manteniendo todo tipo de genes disponibles en caso de que sean tiles en combinaciones diferentes. El RISKOptimizer implementa automticamente todas estas tcnicas.
177
178
Un ejemplo digital
179
180
Introduccin
El RISKOptimizer usa simulacin para controlar la incertidumbre presente en los modelos de Excel que optimiza. Tanto los mtodos para 1) modelar la incertidumbre presente en una hoja de clculoy2)la ejecucin de una simulacin en el modelo son tomados del @RISK, un complemento de simulacin y anlisis de riesgos para Excel de Palisade Corporation. Este captulo provee informacin de contexto sobre riesgos y simulacin para aclarar cmo se definen los modelos de simulacin en el RISKOptimizer.
Qu es el riesgo?
Todo el mundo sabe que el riesgo afecta al jugador que se dispone a tirar los dados, al prospectador que perfora un suelo en busca de petrleo o al equilibrista que da sus primeros pasos en la cuerda floja. Pero aparte de estos ejemplos, el concepto de riesgo aparece con el reconocimiento de la incertidumbre del futuro: nuestra incapacidad para saber lo que suceder en el futuro como consecuencia de una accin presente. El riesgo se refiere a acciones que pueden tener ms de un resultado. En este sentido, toda accin es arriesgada, desde el acto de cruzar una calle hasta la construccin de una presa. Pero generalmente este trmino se reserva para describir situaciones en las que el rango de posibles resultados de una accin es significativo. Acciones comunes, como cruzar una calle, no son arriesgadas, mientras que la construccin de una presa se enfrenta a una cantidad significativa de riesgo. En algn punto intermedio de estos extremos, las acciones pasan de no tener riesgo a ser arriesgadas. Esta distincin, aunque imprecisa, es importante. Si usted decide que una situacin es arriesgada, el riesgo pasa a ser un factor a la hora de decidir la accin que se debe realizar. Es en ese momento cuando se presenta el concepto de anlisis de riesgo.
181
183
Riesgo en inversiones para exploraciones petrolferas y de minerales Se encontrar el material deseado? Si se encuentra un depsito, se obtendrn los resultados econmicos esperados?Los costos de explotacin del depsito se ajustarn a lo previsto?La viabilidad econmica del proyecto se ver drsticamente afectada por algn evento poltico como un embargo, una reforma fiscal o una nueva regulacin ambiental? Riesgos de planificacin de poltica de empresa Si la poltica de empresa se somete a aprobacin legislativa, ser aprobada?El nivel de cumplimiento de cualquier regulacin sobre polticas ser total o parcial?Los costos de implementacin se ajustarn a lo previsto?El nivel de utilidades ser el previsto?
184
Qu es el riesgo?
Es posible que la informacin disponible referente a una situacin concreta est incompleta, la situacin no se pueda repetir (tan fcilmente como en el caso de la moneda) o tal vez sea demasiado complicada como para darle una respuesta inequvoca. Este tipo de cuantificacin de riesgo es subjetiva, lo cual significa que alguien puede no estar de acuerdo con su evaluacin de la situacin. Los juicios subjetivos de riesgo tienden a cambiar cuando se recibe ms informacin sobre una situacin determinada. Si usted ha evaluado una situacin de riesgo subjetivamente, siempre debe preguntarse si hay informacin adicional que pueda ayudarle a evaluar mejor la situacin. Si hay informacin disponible, cunto esfuerzo o cunto dinero puede costar obtenerla? Qu tipo de informacin le convencera para cambiar la decisin que ya ha tomado? Qu impacto tendran estos cambios en los resultados finales del modelo que usted est analizando?
186
Qu es el riesgo?
Variables
Las variables son los elementos bsicos de las hojas de clculo de Excel que han sido identificados como de importancia para el anlisis. Si est modelando una situacin econmica las variables pueden ser elementos como ventas, costos, ingresos o utilidades; mientras que si lo que modela es una situacin geolgica las variables sern cosas como profundidad del depsito, espesor de la veta de carbn o porosidad del material. Cada situacin tiene sus propias variables que usted deber identificar. En una hoja de clculo tpica, una variable es definida en una columna o en una fila de la hoja. Por ejemplo: Variables ciertas o inciertas Tal vez conozca los valores que las variables alcanzarn en el periodo de tiempo establecido en el modelo. Por lo tanto esas variables son ciertas o, en trminos estadsticos, determinadas. Por otro lado, no conoce los valores que alcanzarn ciertas variables. Estas variables se denominan inciertas o estocsticas. Si las variables son inciertas deber describir la naturaleza de la incertidumbre. Esta labor se lleva a cabo con las distribuciones de probabilidad, que establecen el rango que los valores de una variable pueden alcanzar (del mximo al mnimo), y la probabilidad de que cada valor del rango realmente se produzca.
187
En el RISKOptimizer, las variables inciertas y los valores de las celdas se introducen como funciones de distribucin de probabilidad. Por ejemplo: RiskNormal(100,10) RiskUniform(20,30) RiskExpon(A1+A2) RiskTriang(A3/2.01,A4,A5) Estas funciones de distribucin se pueden colocar en las celdas de la hoja de clculo y en las frmulas como se hace con cualquier otras funcin de Excel. Independientes o dependientes Adems de inciertas o inciertas, las variables de un modelo de anlisis de riesgo pueden ser independientes o dependientes. Una variable independiente no se ve afectada en absoluto por ninguna otra variable del modelo. Por ejemplo, si estamos evaluando un modelo econmico para analizar la viabilidad econmica de una cosecha, se puede introducir una variable incierta denominada Cantidad de lluvia. Las dems variables de este modelo (como el precio del producto o el costo del fertilizante) no afectarn la cantidad de lluvia que caer sobre la cosecha. Por lo tanto, la Cantidad de lluvia es una variable independiente. Por el contrario, una variable dependiente se determina parcial o totalmente dependiendo de una o ms variables del modelo. Por ejemplo, una variable denominada Producto de la cosecha en el modelo anterior, normalmente depender de la variable independiente Cantidad de lluvia. Si no cae suficiente lluvia o llueve en exceso, el producto de la cosecha ser bajo. Si la cantidad de lluvia es ms o menos normal, el producto de la cosecha fluctuar entre el nivel por debajo de la media y el nivel muy por encima de la media. Tal vez existan otras variables que afectan el producto de la cosecha, como puede ser la temperatura, la cantidad de producto perdida por los insectos, etc. Cuando identifique los valores inciertos en las hojas de clculo de Excel, deber decidir si las variables estn relacionadas. Estas variables estaran relacionadas entre ellas. La funcin Corrmat de @RISK se utiliza para identificar variables relacionadas. Es muy importante reconocer correctamente las relaciones entre las variables; de lo contrario un modelo puede dar resultados sin sentido. Por ejemplo, si ignora la relacin entre la variable Cantidad de lluvia y la variable Producto de la cosecha, @RISK podra seleccionar un valor bajo para la Cantidad de lluvia y al mismo tiempo uno alto para el Producto de la cosecha, algo que la naturaleza no permitira.
188 Creacin de un modelo en el RISKOptimizer
Simulacin
El RISKOptimizer utiliza la simulacin, tambin llamada simulacin Monte Carlo, para llevar a cabo el anlisis de riesgo. Simulacin en este sentido define un mtodo de clculo en el que la distribucin de posibles resultados se genera mediante el clculo repetido que la computadora hace de la hoja de clculo, cada vez utilizando una serie diferente de valores en las celdas y en las frmulas, escogidos aleatoriamente para crear la distribucin de probabilidad. La computadora prueba todas las combinaciones vlidas de valores de las variables de entrada para simular todos los posibles resultados. Es como si llevara a cabo cientos de miles de anlisis de escenarios de suposicin Y si... al mismo tiempo en una hoja de clculo. Qu quiere decir probar todas las combinaciones vlidas de valores de las variables de entrada? Imaginemos un modelo que slo tiene dos variables de entrada. Si no hay incertidumbre en estas dos variables, usted puede identificar un valor posible para cada variable. Estos dos valores singulares son combinados por las frmulas de las hojas de clculo para generar el resultado correspondiente, que tambin ser un valor cierto y determinado. Por ejemplo, si las variables de entrada ciertas son: Ingresos = 100 Costos = 90 entonces el resultado Utilidades= 10 ser calculado por Excel siguiendo la frmula Ingresos = 100 90 Slo hay una posible combinacin de los valores de las variables de entrada, porque slo hay un valor posible para cada variable.
189
Ahora, consideremos un ejemplo en el que ambas variables de entrada son inciertas. Por ejemplo: Ingresos = 100 120 Costos = 90 80 En este ejemplo cada variable de entrada tiene dos valores posibles. En una simulacin, @RISK considerar todas las combinaciones posibles de los valores de estas variables para calcular los posibles valores del resultado, en esta caso Utilidades. Por lo tanto habr cuatro combinaciones posibles: Utilidades= Ingresos Costos 10 = 100 90 20 = 100 80 30 = 120 90 40 = 120 80 El resultado de Utilidades tambin es una variable incierta porque se ha calculado a partir de variables inciertas.
En el RISKOptimizer, la simulacin usa dos operaciones distintivas: Seleccin de una serie de valores para las funciones de distribucin de probabilidad de las celdas y de las frmulas de la hoja de clculo Reclculo de la hoja de clculo de Excel utilizando los nuevos valores La seleccin de los valores de las distribuciones de probabilidad se denomina recolectada de muestras, tomas de muestras o muestreo, y cada nuevo clculo de la hoja se denomina iteracin.
190
191
192
Aadiendo restricciones
Los problemas en la realidad poseen comnmente un nmero de restricciones que deben ser satisfechas a medida que se buscan las respuestas ptimas. Por ejemplo, en el tutorial, que busca el diseo de transformador con el menor costo, una de las restricciones es que el transformador deber mantenerse fro, irradiando no ms de 0.16 vatios/cm2. Se dice que un escenario que cumpla con todas las restricciones en un modelo, es una solucin viable o vlida. A veces es difcil encontrar soluciones viables para un modelo, y con ms razn una solucin viable ptima. Esto podra ser porque el problema es muy complejo, y slo posee unas cuantas soluciones viables, o porque el problema se ha sobre especificado (existen muchas restricciones, o algunas restricciones entran en conflicto con otras), y no existen soluciones viables. Existen tres tipos bsicos de restricciones: restricciones de rango, o rangos mn-mx colocados sobre las celdas ajustables, restricciones duras, que deben ser siempre cumplidas, y restricciones blandas que nos gustara que se cumpliesen tanto como fuere posible, pero sobre las cuales estamos dispuestos a transar para obtener un gran mejoramiento en la aptitud.
193
Restricciones de rango
Las restricciones duras ms simples son aquellas que son colocadas sobre las variables mismas. Al ajustar un rango determinado en cada variable, podemos limitar el nmero total posible de soluciones en donde RISKOptimizer buscar, resultando en una bsqueda ms eficiente. Introduzca valores mnimo y mximo en la caja de dilogo de Celdas Ajustables para decirle al RISKOptimizer el rango de valores que son aceptables para cada variable.
RISKOptimizer slo intentar valores entre 0 y 100,000 para las celdas especificadas.
Un segundo tipo de restricciones duras colocadas sobre las variables est construido dentro de los mtodos de solucin de RISKOptimizer (receta, orden, agrupamiento, etc.). Por ejemplo, cuando ajustamos las variables utilizando el mtodo de solucin de presupuesto (budget), que significa que RISKOptimizer tendr la restriccin dura para intentar slo conjuntos de valores que sumen la misma cantidad. Como el parmetro ajustable de Rangos (Ranges), esta restriccin dura tambin reduce el nmero de escenarios posibles que debe ser buscado. La opcin de Entero (Integer) en la caja de dilogo de Celdas Ajustables (Adjustable Cells) es tambin una restriccin dura, que le indica al RISKOptimizer que intente slo valores enteros, (1,2,3 etc.) en vez de nmeros reales (1.34, 2.034, etc.) cuando ajuste los valores de las variables.
194 Aadiendo restricciones
NOTA: De la misma manera que la evolucin en la naturaleza, el poder de resolucin de problemas de un algoritmo gentico yace primordialmente en su habilidad para explorar libremente muchas combinaciones de soluciones posibles, y de naturalmente inclinarse hacia las mejores. Si restringimos al RISKOptimizer para que siquiera busque soluciones que no llenan nuestras demandas, el proceso de optimizacin del algoritmo gentico puede ser inhabilitado. Siempre es ms fcil para RISKOptimizer encontrar soluciones que cumplan las restricciones duras si el escenario inicial en la hoja de trabajo cumple en s las restricciones. Eso le permite al RISKOptimizer conocer un punto de partida en el espacio de soluciones vlidas. Si usted no conoce un escenario que cumpla las restricciones, ejecute el RISKOptimizer con cualquier escenario inicial y l har su mejor esfuerzo para encontrar escenarios que cumplan las restricciones.
195
Restricciones blandas
El forzar a un programa a que slo encuentre soluciones que cumplan todas las restricciones puede resultar en que no se encuentren soluciones viables. Frecuentemente, es ms til obtener una solucin viable aproximada, en donde, probablemente unas cuantas soluciones queden muy cerca de poder cumplir con las restricciones. Una alternativa al uso de las restricciones duras que deben ser cumplidas consiste en reconfigurar el problema con restricciones blandas; restricciones que RISKOptimizer tender a cumplir. Estas restricciones blandas son generalmente ms realistas, y le permiten a RISKOptimizer intentar muchas ms opciones. En el caso de un problema altamente restringido (en donde no existen muchas soluciones posibles que podran cumplir todos los requerimientos), el algoritmo gentico de RISKOptimizer tendr ms posibilidad de encontrar la mejor solucin si se le permite obtener retroalimentacin en algunas de las soluciones que se encuentren cercanas a la satisfaccin de las restricciones.
196
Aadiendo restricciones
Cuando las restricciones son metas de diseo, tales como produzca el doble de tenedores respecto de cuchillos, generalmente no es tan importante cumplir tales metas exactamente: especialmente si la obtencin de un programa de produccin perfectamente balanceado ha de requerir de un proceso de optimizacin de todo un da. En este caso, una buena solucin al problema, que casi cumple la restriccin (produccin es 40% tenedores, 23% cuchillos, 37% cucharas), es usualmente mejor que el esperar todo el da para al final enterarse de que no hay solucin posible, porque todas las restricciones no pudieron cumplirse. Funciones de penalizacin Las restricciones blandas tambin pueden ser fcilmente implementadas en Excel por medio del uso de funciones de penalizacin. En vez de decirle al RISKOptimizer que no puede utilizar ciertos valores de forma absoluta a la hora de buscar soluciones, permitimos aquellos valores invlidos que sean explorados, pero penalizaremos aquellas soluciones correspondientemente. Por ejemplo, su problema podra involucrar encontrar la forma ms eficiente para distribuir bienes con la restriccin de que slo utilice tres camiones. Un modelo ms preciso incluira una funcin de penalizacin que le permitiera usar ms camiones, pero aada un tremendo costo a la lnea de utilidades. Se pueden especificar funciones de penalizacin en la caja de dilogo de Configuraciones de restriccin o introducirlas directamente en su modelo al aadir frmulas que representen las funciones de penalizacin.
197
El RISKOptimizer posee una funcin de penalizacin por defecto la cual se despliega la primera vez que usted introduce una restriccin blanda. Sin embargo, cualquier frmula vlida de Excel puede ser introducida para calcular la cantidad de penalizacin a aplicar cuando no se satisface la restriccin blanda. Una funcin de penalizacin introducida debe incluir la palabra clave Deviation, la cual representa la cantidad absoluta en la cual la restriccin se ha excedido por sobre su lmite. Al final de cada simulacin para una solucin de prueba, el RISKOptimizer verifica si la restriccin blanda ha sido satisfecha; de lo contrario, posiciona la cantidad de desviacin en la frmula de penalizacin introducida y luego calcula la cantidad de penalizacin a aplicar al estadstico de la celda objetivo que est siendo minimizada o maximizada. La funcin de cantidad de penalizacin se suma o se resta del estadstico calculado para la celda objetivo para hacerla menos ptima. Por ejemplo, si se selecciona Mximo en el campo de Objetivo de optimizacin en la caja de dilogo de modelo de RISKOptimizer, la penalizacin es restada del estadstico calculado para la celda objetivo. Visualizando los efectos de una funcin de penalizacin introducida. El RISKOptimizer incluye una plantilla de Excel PENALIZACIN.XLS que puede ser utilizada para evaluar los efectos de distintas funciones de penalizaciones sobre las restricciones blandas y sobre los resultados de la celda objetivo.
El archivo de PENALIZACIN.XLS le permite a usted seleccionar una restriccin blanda de su modelo cuyos efectos usted desea analizar. Usted puede entonces cambiar la funcin de penalizacin para ver cmo la funcin mapear un valor especfico de la restriccin
198 Aadiendo restricciones
blanda no satisfecha a un valor objetivo de penalizacin en particular. Por ejemplo, si su restriccin blanda es A10<100, usted podra usar el archivo de PENALIZACIN.XLS para ver cual sera el valor objetivo si un valor de 105 fuese calculado para la celda A10. Visualizando las penalizaciones Cuando una penalizacin es aplicada a la celda objetivo debido a una restriccin blanda no satisfecha, la cantidad de penalizacin aplicada puede ser visualizada en el Observador del RISKOptimizer. Adicionalmente, los valores de penalizacin se muestran en las hojas de la Bitcora de Optimizacin, creadas opcionalmente despus de la optimizacin. Las funciones de penalizacin tambin pueden ser introducidas directamente en su libro de trabajo. Una funcin de penalizacin booleana asignar una penalizacin especificada a cualquier escenario que no cumple una restriccin en particular. Por ejemplo, si usted quisiera que su valor en la celda B1 (oferta) sea al menos tan grande como el valor en la celda A1 (demanda), usted podra crear esta funcin de penalizacin en otra celda: =SI(A1>B1, -1000, 0). Si el resultado de esta celda fuere adicionado al estadstico de la celda objetivo, entonces cada vez que RISKOptimizer probara una solucin que violase esta restriccin (es decir, que la oferta no alcanzase a la demanda), la estadstica para la celda objetivo a ser maximizada mostrara un valor menor en 1,000 que el resultado real. Cualquier solucin que violase esta restriccin producira un valor bajo para esta estadstica para la celda objetivo, y eventualmente RISKOptimizer aniquilara estos organismos. Usted tambin puede utilizar una funcin escalonada de penalizacin, que penalice ms precisamente la solucin relativa a que tan mal esta viola la restriccin. Esto es usualmente ms prctico en el mundo real, pues una solucin en donde la oferta no satisficiese a la demanda sera mejor que una solucin en donde la oferta ni siquiera se le acercase a la demanda. Una simple funcin de penalizacin escalonada computa las diferencias absolutas entre el valor meta de la restriccin y su valor real. Por ejemplo, en el mismo problema en donde A1 (demanda) no deba exceder a B1 (oferta), podramos asignar la siguiente funcin de penalizacin: =SI(A1>B1, (A1-B1)^2, 0). Este tipo de funcin de penalizacin mide qu tan cercanamente se cumple una restriccin, y exagera la diferencia al elevarla al cuadrado. Ahora nuestra penalizacin se transforma basada en que tan mas una solucin viola la restriccin.
199
Por ejemplo, suponga que usted ha creado un modelo de manufactura en donde una de las restricciones es que la cantidad de madera utilizada debe ser igual a la cantidad de plstico usado. Esta restriccin es satisfecha cuando CantidadMadera = CantidadPlstico. Deseamos encontrar soluciones que incluyan la misma cantidad de ambos materiales, de forma tal que creamos una funcin de penalizacin que desincentiva las soluciones que se alejan de nuestra meta. La frmula =ABS(CantidadMadera CantidadPlstico) calcula la diferencia absoluta (no negativa) entre la cantidad de madera y la cantidad de plstico utilizados. Al utilizar la funcin ABS(), arribamos al mismo valor de penalizacin si CantidadMadera es 20 mayor que CantidadPlstico, o bien si Cantidad Plstico es 20 menor que CantidadMadera. Ahora, cuando optimizamos el modelo, nuestra meta es minimizar la media de los resultados de simulacin para esta diferencia absoluta. Suponga que ms bien imponemos la siguiente restriccin: La cantidad de madera debe ser del doble que la cantidad de plstico. La funcin de penalizacin sera entonces: =(CantidadMadera CantidadPlstico*2) Una posible solucin diferente es que la cantidad de madera fuera no menor que el doble de la cantidad del plstico. Mientras el ejemplo previo produjo una penalizacin si hubiese habido mucha madera, en este caso slo nos importa si no hay suficiente madera; si CantidadMadera es diez veces la CantidadPlstico, no requerimos que se aplique una penalizacin. La funcin apropiada sera entonces: =SI(CantidadMadera<CantidadPlstico*2, (CantidadPlstico*2-CantidadMadera),0) Si CantidadMadera es al menos el doble que CantidadPlstico, la funcin de penalizacin retorna un 0.De lo contrario, nos otorga una medida de qu tanto menos que el doble es la CantidadPlstico con respecto al valor de CantidadMadera.
Despus de que usted ha creado funciones de penalizacin para describir las restricciones blandas en su modelo, usted puede combinarlas con su frmula normal de celda objetivo para obtener una frmula restringida de celda objetivo. En el ejemplo ilustrado anteriormente, si la celda C8 calcula el costo total de un proyecto y las celdas E3:E6 contienen cinco funciones de penalizacin, entonces usted puede crear una frmula en la celda C10 tal como=SUMA(C8, E3:E6).
200
Aadiendo restricciones
Crese una celda que aada las restricciones a su total, y minimice la media de los resultados de simulacin para esta celda.
Esto aade las penalizaciones en la columna E al costo en C8 para obtener una funcin de costo restringido o penalizado en la celda C10. Ntese que si esto fuera un problema de maximizacin, usted restara, en vez de sumar, las penalizaciones a la celda objetivo original. Ahora cuando usted use el RISKOptimizer, simplemente selecciona la celda restringida, C10, como su celda objetivo para ser aquella cuyo estadstico de simulacin ha de ser optimizado. Cuando el RISKOptimizer intenta optimizar un estadstico restringido para una celda objetivo, las funciones de penalizacin tendern a forzar la bsqueda hacia escenarios que satisfagan las restricciones. Eventualmente, el RISKOptimizer finalizar con soluciones que son buenas respuestas y que satisfagan o cercanamente satisfagan todas las restricciones (las funciones de penalizacin tendrn valores cercanos a0).
201
202
Aadiendo restricciones
Mejorando la velocidad
Cuando usted usa el RISKOptimizer para resolver un problema, usted est utilizando tanto la biblioteca de RISKOptimizer de rutinas compiladas para controlar el proceso como la funcin de evaluacin de la hoja de clculo de Excel para examinar diferentes escenarios. Un gran porcentaje del tiempo usado por el RISKOptimizer es en realidad utilizad por el Excel a medida que recalcula su hoja de clculo. Existe una serie de cosas que pueden ser hechas para mejorar la velocidad de optimizacin del RISKOptimizer y el proceso de reclculo del Excel. La velocidad del RISKOptimizer est directamente relacionada con la velocidad del procesador de su computadora. Una Pentium/200 ser aproximadamente el doble de rpida que una Pentium/100. Esto significa que el RISKOptimizer ser capaz de evaluar hasta el doble de pruebas con la misma cantidad de tiempo. Experimente con distintas condiciones de detencin de simulacin. Las pruebas iniciales de un modelo deberan ser hechas con un nmero fijo bajo de iteraciones por simulacin. Una vez que est seguro que su modelo y restricciones estn desempendose como usted desea, haga que el RISKOptimizer determine cuntas iteraciones ejecutar para cada simulacin al seleccionar Detener en convergencia real o bien Detener en convergencia proyectada. La configuracin de Detener en convergencia proyectada produce resultados ms rpidos de optimizacin que la de Detener en convergencia real. Incremente la configuracin de Tolerancia de convergencia si usted est utilizando la condicin de detencin de simulacin de Detener en convergencia real o la de Detener en convergencia proyectada. Esto impedir que el RISKOptimizer ejecute iteraciones innecesarias sin cambiar significativamente los estadsticos de simulacin. Sin embargo, al configurar en un valor muy alto la Tolerancia de Convergencia resultar en resultados de simulacin inestables.
203
Trate de evitar los dibujos en su ventana. El dibujo de grficos y la visualizacin de nmeros en la pantalla toma tiempo, algunas veces ms que la mitad del tiempo dedicado a la optimizacin! Si usted tiene diagramas o grficos en su hoja, stos disminuirn significativamente la velocidad del tiempo de reclculo. Usted le puede decir a Excel que no dedique tiempo a dibujar mientras el RISKOptimizer est resolviendo un problema al apagar la opcin de Actualizar despliegue en la caja de dilogo de Modelo del RISKOptimizer, o al minimizar la hoja de Excel. Usted podr observar qu tan ms rpidamente trabajar su problema al observar la barra de estado. Una vez que el RISKOptimizer ha convergido ms o menos en una solucin, y no ha habido mejoramiento sobre la mejor solucin en un rato (por ejemplo, en las ltimas 1000 pruebas), podra ser una buena idea incrementar la tasa de mutacin para permitir que el RISKOptimizer ample su bsqueda de soluciones, en vez de continuar refinando soluciones en la poblacin actual utilizando primariamente la tasa de cruce. Usted puede aumentar la tasa de mutacin en el Observador del RISKOptimizer usando el comando de Configuracin de poblacin. Defina ms ajustadamente los rangos para los cuales deben quedar contenidos las celdas ajustables; esto crear un rea ms pequea en la que el RISKOptimizer deber buscar soluciones, y por tanto debera mejorar la velocidad del proceso. Asegrese que sus rangos permiten suficiente libertad para que el RISKOptimizer explore todas las soluciones realistas.
204
Mejorando la velocidad
205
El mtodo de solucin bsico de receta lleva a cabo el cruce usando una rutina uniforme de cruce. Esto significa que en vez de seccionar la lista de variables en un escenario determinado en determinado momento y lidiando con cada uno de los dos bloques (llamado cruce por puntos nicos o puntos dobles), se forman dos grupos al seleccionar tems aleatoriamente para que se encuentren en un grupo o en el otro. Los cruces tradicionales de punto-x podran sesgar la bsqueda con la irrelevante posicin de las variables, mientras que un mtodo de cruce uniforme se considera mejor para preservar los esquemas y puede generar cualquier esquema de los dos padres.
El mtodo de solucin de orden lleva a cabo un algoritmo similar al operador de cruce de orden descrito en el libro de L. Davis Handbook of Genetic Algorithms.*Este selecciona los tems aleatoriamente de un padre, encuentra su lugar en el otro padre y copia los tems restantes al segundo padre en el mismo orden en que aparecen en el primer padre. Esto preserva algo de los sub-ordenamientos en los padres originales mientras que crea algunos nuevos sub-rdenes. Mutacin Igual que el cruce, los mtodos de mutacin estn hechos a la medida para cada uno de los diferentes mtodos de solucin. El mtodo de solucin bsico de receta lleva a cabo la mutacin al ver a cada variable de forma individual. Se genera un nmero aleatorio entre 0 y 1 y ste es generado para cada una de las variables en el organismo, y si una variable obtiene un nmero que es menor o igual a la tasa de mutacin (por ejemplo, 0.06) entonces se muta la variable. La cantidad y naturaleza de la mutacin se determina automticamente por un algoritmo propietario. La mutacin de una variable involucra su reemplazo con un valor generado aleatoriamente (dentro de su rango vlido mn-mx).
206
Para preservar todos los valores originales, el mtodo de solucin de orden lleva a cabo la mutacin al permutar las posiciones de algunas variables en el organismo. El nmero de permutas llevado a cabo se incrementa o disminuye proporcionalmente al incremento o disminucin de la configuracin de la tasa de mutacin (desde 0 a 1). Reemplazo Ya que el RISKOptimizer usa un mtodo de reemplazo basado en rdenes de jerarqua en vez de un mtodo de reemplazo generacional, aquellos organismos de ms pobre desempeo son siempre reemplazados con el nuevo organismo que es creado por la seleccin, el cruce o la mutacin independientemente de su nota de aptitud. Las restricciones duras se implementan por medio de la tecnologa de rastreo revertido propia de Palisade. Si un nuevo descendiente viola alguna restriccin impuesta externamente, el RISKOptimizer hace un rastreo revertido hacia alguno de los padres del hijo, cambiando el hijo hasta que ste se encuentre dentro del espacio vlido de solucin.
Restricciones
207
208
209
210
211
P: An cuando estoy llenando las cajas de dilogo de la misma manera, y a pesar de que ejecuto el RISKOptimizer la misma cantidad de tiempo, porqu es que el RISKOptimizer a veces encuentra soluciones distintas? P: Igual que en el caso de la seleccin natural en el mundo biolgico, el algoritmo gentico de RISKOptimizer no necesariamente siempre seguir la misma ruta a la hora de buscar soluciones (a menos que usted utilice una semilla fija de generador de nmeros aleatorios). Irnicamente es precisamente esta impredictibilidad lo que le permite al RISKOptimizer resolver ms tipos de problemas y frecuentemente encontrar mejores soluciones que las tcnicas tradicionales. El motor de algoritmos genticos del RISKOptimizer no est simplemente ejecutando una serie de comandos pre programados o insertando valores por medio de frmulas matemticas, sino que ms bien est experimentando eficientemente con muchos escenarios hipotticos aleatorios y luego refinando su bsqueda por medio de operadores de supervivencia del ms apto que tambin contienen elementos aleatorios. P: Porqu es que la mejor solucin encontrada no est cambiando? R: Usted pudo haber especificado la celda objetivo errnea en la caja de dilogo de Modelo del RISKOptimizer. El RISKOptimizer est buscando en esta celda en blanco y el valor no cambia ya que no hay ninguna frmula ah. Para arreglar esto, despliegue la caja de dilogo de Modelo del RISKOptimizer y seleccione una celda objetivo apropiada; esto es, una que refleje precisamente qu tan buena o mala es cada solucin posible. Una celda objetivo apropiada posee una frmula que depende, directa o indirectamente, de las variables que el RISKOptimizer est ajustando(celdas ajustables). P: Algunas de las celdas en mi modelo de hoja de clculo contienen smbolos####. R: Si la celda es muy pequea para desplegar todo su contenido, desplegar algunos signos de ####. Incremente el tamao de la celda.
212
P: El RISKOptimizer est trabajando bien, pero existe algn mtodo sencillo para obtener mejores resultados? R: Considere relajar las restricciones en el problema, incluyendo los rangos de las variables. Cambie algunas de sus restricciones duras por restricciones blandas va funciones de penalizacin (vase Aadiendo Restricciones en el Captulo 8: Extras del RISKOptimizer ). Muchas restricciones existentes sobre lo que el RISKOptimizer est intentando podran estar previniendo que el RISKOptimizer explore un rea de posibilidades que podra generar mejores resultados. Recuerde que entre ms tiempo deje usted al RISKOptimizer que explore las posibilidades, mayor ser la posibilidad de encontrar la solucin ptima. Para ms ideas de cmo calibrar el RISKOptimizer, vase el Captulo 8: Extras del RISKOptimizer. Entre ms escenarios pueda ejecutar el RISKOptimizer, mejor. Acelere el proceso del RISKOptimizer al apagar la opcin de Cada reclculo en la actualizacin del despliegue.
213
214
Libros
Bolles, R.C., & Beecher, M.D. (Eds.). (1988). Evolution and Learning.(Evolucin y aprendizaje)Erlbaum. Beer, R.D. (1990). Intelligence as Adaptive Behavior: An Experiment in Computational Neuroethology. (Inteligencia como conducta adaptativa: Un experimento en neuroteologa computacional)Academic Press. Davis, Lawrence (1987). Genetic Algorithms and Simulated Annealing. (Algoritmos genticos y enfriamientos simulados) Palo Alto, CA: Morgan Amufan. * Davis, Lawrence (1991). Handbook of Genetic Algorithms. (Manual de Algoritmos genticos.)New York: Van Nostrand Reinhold. Darwin, Charles (1985). On The Origin of Species. (Sobre el origen de las especies) London: Penguin Classics. (originally 1859) * Dawkins, Richard. (1976). The Selfish Gene. (El gen egosta) Press. Eldredge, N. (1989). Macroevolutionary Dynamics: Species, Niches, and Adaptive Peaks. (Dinmica macroevolutiva: Especies, nichos y picos adaptativos) McGraw-Hill. Fogel, L., Owens, J., and Walsh, J. (1966). Artificial Intelligence through Simulated Evolution. (Inteligencia artificial por medio de evolucin simulada) New York: John Wiley and Sons. Goldberg, David (1989). Genetic Algorithms in Search, Optimization, and Machine Learning. (Algoritmos genticos en bsqueda, optimizacin y aprendizaje de mquinas) Reading, MA: Addison-Wesley Publishing.
215
, J.H. (1975). Adaptation in Natural and Artificial Systems. (Adaptacin en sistemas naturales y artificiales) Ann Arbor, MI: University of Michigan Press. Koza, John (1992). Genetic Programming. (Programacin gentica) Cambridge,: MIT Press. * Langton, C.L. (1989). Artificial Life. (Vida artificial) MIT Press. [ALife I] Levy, Steven (1992). Artificial Life. (Vida artificial): Pantheon. Meyer, J.-A., & S.W. Wilson (Eds.). (1991). Proceedings of the First International Conference on Simulacin of Adaptive Behavior: From Animals to Animats. (Resmenes de la Primera Conferencia Internacional sobre Simulacin de Conductas Adaptativas: Desde animales hasta animados) MIT Press/Bradford Books. * Proceedings of the Sixth International Conference (ICGA) on Genetic Algorithms. (Resmenes de la Sexta Conferencia Internacional sobre Algoritmos Genticos) (1995). San Mateo, CA: Morgan Kaufman Publishing. (Also available; the first five ICGA proceedings). Proceedings of the Workshop on Artificial Life (1990). (Resmenes sobre el taller de Vida Artificial) Christopher G. Langton, Senior Editor.: Addison-Wesley Publishing. Rawlins, Gregory (1991). Foundations of Genetic Algorithms. (Fundamentos de Algoritmos Genticos): Morgan Kaufman Publishing. Richards, R.J. (1987). and the Emergence of Evolutionary Theories of Mind and Behavior. (Darwin y la emergencia de teoras evolutivas sobre mente y conducta)U. Press. Williams, G.C. (1966). Adaptation and Natural Selection. (Adaptacin y seleccin natural) Princeton U. Press.
216
Artculos
* Antonoff, Michael (October, 1991). Software by Natural Selection. (Software para seleccin natural) Popular Science, p. 70-74. Arifovic, Jasmina (January, 1994). Genetic algorithms. Learning and the Cobweb Model. (Algoritmos genticos: Aprendizaje y el modelo de tela de araa) In Journal of Economic Dynamics & Controlv18 p.3 * Begley, S (May 8, 1995). Software au Naturel (Software al natural) In Newsweekp. 70 Celko, Joe (April, 1993). Genetic algorithms and Database Indexing. (Algoritmos genticos e indexacin de bases de datos) In Dr. Dobbs Journalp.30 Ditlea, Steve (November, 1994). Imitation of Life. (Imitacin de vida) In Upside Magazinep.48 Gordon, Michael (June, 1991). User -based Document Clustering by Redescribing Subject Descriptions with a Genetic Algorithm.(Agrupamiento de documentos basado en usuarios por medio de una redescripcin de descripciones de sujetos basado en algoritmos genticos)In Journal of the American Society for Information Sciencev42 p.311 Hedberg, Sara (September, 1994). Emerging Genetic Algorithms. (Algoritmos genticos emergentes). In AI Expert, p. 25-29. Hinton, G.E., & Nowlan, S.J. (1987). How Learning Can Guide Evolution. (Cmo el aprendizaje puede guiar la evolucin)In Complex Systems1: p.495-502. * Kennedy, Scott (June, 1995). Genetic algorithms: Digital Darwinism. (Algoritmos genticos: Darwinismo digital) In Hitchhickers Guide to Artificial IntelligenceMiller Freeman Publishers Kennedy, Scott (December, 1993). Five Ways to a Better GA. (Cinco formas para un mejor algoritmo gentico)In AI Expert, p. 35-38 Lane, A (June, 1995). The GA Edge in Analyzing Data. (El borde de los algoritmos genticos) In AI Expertp.11 Lee, Y.C. (Ed.). (1988). Evolution, learning, and cognition.(Evolucin, aprendizaje y cognitividad) In World Scientific. Levitin, G and Rubinovitz, J (August, 1993). Genetic algorithmfor Linear and Cyclic Assignment Problem. (Algoritmo gentico para un problema de asignacin lineal y cclico)In Computers & Operations Researchv20 p.575 Marler, P., & H.S. Terrace. (Eds.). (1984). The Biology of Learning. (La biologa del aprendizaje) Springer-Verlag.
217
Mendelsohn, L. (December, 1994) Evolver Review (Revisin del Evolver) In Technical Analysis of Stocks and Commodities. p.33 Maynard Smith, J. (1987). When Learning Guides Evolution. (Cuando el aprendizaje gua a la evolucin) In Nature329: p.761-762. Murray, Dan (June, 1994). Tuning Neural Networks with Genetic Algorithms. (Calibrando redes neuronales con Algoritmos genticos).In AI Expertp.27 Wayner, Peter (January, 1991). Genetic algorithms: Programming Takes a Valuable Tip from Nature. (Algoritmos genticos: La programacin obtiene una valiosa ayuda de la naturaleza)In Byte Magazinev16 p.361
218
Introduccin a la Simulacin
Si usted est recin conociendo de simulacin o si simplemente desea tener ms informacin de contexto sobre la tcnica, los siguientes libros y artculos podran serle tiles:
* Baird, Bruce F. Managerial Decisions Under Uncertainty: (Decisiones gerenciales bajo incertidumbre) John Wiley & Sons, Inc. 1989. * Clemen, Robert T. Making Hard Decisions:(Tomando decisiones difciles) Duxbury Press, 1990. Hertz, D.B. "Risk Analysis in Capital Investment": (Anlisis de riegos en Inversiones de Capital) HBR Classic, Harvard Business Review, September/October 1979, pp. 169-182. Hertz, D.B. and Thomas, H. Risk Analysis and Its Applications: (Anlisis de riesgos y sus aplicaciones) John Wiley and Sons, 1983. Megill, R.E. (Editor). Evaluating and Managing Risk: (Evaluando y administrando riesgos) PennWell Books, 1984. Megill, R.E. An Introduction to Risk Analysis,(Una introduccin al anlisis de riesgos) 2nd Ed.: PennWell Books, Tulsa, OK, 1985. Morgan, M. Granger and Henrion, Max, con un captulo por Mitchell Small, Uncertainty: (Incertidumbre) Cambridge University Press, 1990. Newendorp, P.D. Decision Analysis for Petroleum Exploration: (Anlisis de decisiones para exploraciones petroleras) Petroleum Publishing Company, 1975. Raiffa, H. Decision Analysis: (Anlisis de decisiones) Addison-Wesley, 1968.
219
221
222
Glosario
Para informacin adicional sobre cualquier trmino, refirase al ndice del RISKOptimizer en el siguiente captulo. Algoritmo Un mtodo matemticamente basado para resolver paso a paso cierto tipo de problema. Todos los programas de computadora estn construidos al combinar muchos algoritmos. Un procedimiento para mejorar los resultados de cierta operacin mediante la prueba repetitiva de algunas soluciones posibles y la reproduccin y mezcla de componentes de las mejores soluciones. El proceso est inspirado y es crudamente muy similar al proceso de la evolucin en el mundo biolgico en donde los ms aptos sobreviven para reproducirse. Un procedimiento de optimizacin que inicia con un escenario en particular y mueve repetidamente el escenario en pequeos pasos en la direccin que ms lo mejora. Los algoritmos de ascenso de colinas son rpidos y simples, pero tienen dos desventajas. Primero, podra requerirse de mucho trabajo para encontrar la direccin de mayor mejoramiento. Segundo, el algoritmo usualmente sube a la colina ms prxima o mximo local. Esto le impide al algoritmo encontrar el mximo global en un problema complejo. La barra de estado aparece en la parte inferior de la ventana de Excel, y despliega la actividad actual del RISKOptimizer. La ventana o la pantalla de la computadora que le solicita al usuario que ste provea de informacin. El RISKOptimizer contiene dos cajas de dilogo principales; la caja de dilogo de Modelo del RISKOptimizer y lacaja de dilogo de Celdas Ajustables. La unidad bsica de entrada de datos. Dependiendo del tipo de campo, un campo puede contener texto, imgenes o nmeros. La mayora de los campos en las cajas de dilogo del RISKOptimizer le preguntan al usuario para que introduzca la localizacin de celdas de la hoja de clculo, u opciones respecto de cmo deber comportarse el RISKOptimizer. La celda es la unidad bsica de una hoja de clculo en donde se almacenan datos. Existen hasta 256 columnas y 16,000 filas (en
Algoritmo gentico
Campo
Celda
Glosario
223
Excel 2003), para un total de ms de 4 millones de celdas en cada hoja de clculo en Excel. Celda ajustable Una celda en una hoja de clculo cuyo valor puede ser ajustado por el RISKOptimizer para tratar de optimizar el valor de la celda objetivo. Una celda ajustable es un valor variable y debe siempre contener un simple nmero, en vez de una ecuacin. La celda de la hoja de clculo cuyo valor se desea minimizar o maximizar. Esta celda se define en la caja de dilogo de Modelo del RISKOptimizer (Seleccione el comando de Definicin de Modelo del RISKOptimizer o el cono de Modelo). En un contexto genticamente basado, el cruce es el intercambio equivalente de material gentico entre cromtidos homlogos durante la meiosis. En el RISKOptimizer, el trmino cruce se utiliza para expresar el equivalente computacional de un cruce gentico, en donde el intercambio entre variables genera una nueva combinacin de escenarios. Curtosis es una medida de la forma de una distribucin. La Curtosis indica lo plana o lo picudo que es una distribucin. Cuanto ms alto sea el valor de la Curtosis, ms picuda ser una distribucin. Vase Indice de sesgo La desviacin estndar es una medida que indica la dispersin de valores de una distribucin. Es igual a la raz cuadrada de la varianza. Vase Varianza El trmino determinstico referido a una variable indica que no hay incertidumbre asociada con ella. Una distribucin acumulativa o funcin de distribucin acumulativa es el conjunto de puntos cada uno de los cuales es igual a la integral de una distribucin de probabilidad, comenzando en un valor mnimo y terminando en el valor asociado de la variable aleatoria. Vase Distribucin de frecuencia acumulativa o Distribucin de probabilidad Distribucin de probabilidad en la que se puede dar cualquier valor entre un mnimo y un mximo (tiene probabilidad finita). Vase Distribucin independiente Distribucin de frecuencia es el trmino que define las distribuciones de probabilidad de salida y las distribuciones de histograma de entrada (HISTOGRM) del @RISK. La distribucin de frecuencia se construye con datos, mediante la ordenacin de valores en clases, y representando la frecuencia de ocurrencia de cualquier clase con la altura de la barra. La frecuencia de ocurrencia se corresponde con la probabilidad.
Celda objetivo
Cruce
Curtosis
224
Distribucin de frecuencia acumulativa es el trmino que define las distribuciones acumulativas de salida y de entrada de @RISK. La distribucin acumulativa se construye acumulando la frecuencia (aadiendo progresivamente la altura de las barras del grfico) en el rango de una distribucin de frecuencia. Una distribucin acumulativa puede tener una curva inclinada hacia arriba en la que se describe la probabilidad de un valor menor o igual al valor de cualquier variable. La distribucin acumulativa tambin puede tener una curva inclinada hacia abajo en la que se describe la probabilidad de un valor mayor o igual al valor de cualquier variable. Vase Distribucin acumulativa Una distribucin de probabilidad o funcin de densidad de probabilidad es el trmino estadstico apropiado para denominar una distribucin de frecuencia construida a partir de un grupo de valores inicialmente grande cuyo tamao de clase es infinitesimalmente pequeo. Vase Distribucin de frecuencia Una distribucin de probabilidad en la que slo se pueden dar un nmero finito de valores independientes entre un mnimo y un mximo. Vase Distribucin continua Un conjunto de valores para las variables en un modelo de hoja de clculo. Cada escenario representa en la mayora de los casos una solucin posible. El trmino estocstica aplicado a una variable es sinnimo de incertidumbre o riesgo. Vase Riesgo o Determinada (variable) En biologa, esto es un rasgo observable de un individuo que surge de interacciones entre los genes, y entre los genes y su medioambiente. En el estudio de los algoritmos genticos, el fenotipo es usado para describir las variables individuales o genes que hacen una solucin completa o cromosoma. Vase genotipo Esta es una frmula que puede calcular qu tan buena o qu tan mala es una solucin propuesta respecto de un problema en particular. El trmino es usualmente utilizadoen el campo del algoritmo gentico como una analoga de la aptitud en trminos de seleccin biolgica. El diseo de una funcin de aptitud precisa es crtico a la hora de que el algoritmo gentico resuelva un problema. Un resultado de simulacin para esta funcin de aptitud se convierte en la meta o el valor objetivo a ser optimizado.
225
Distribucin de probabilidad
Distribucin discreta
Escenario
Estocstico
Fenotipos
Funcin de aptitud
Glosario
Funcin de penalizacin
Una ecuacin de hoja de clculo que el RISKOptimizer puede utilizar para penalizar escenarios que fallan en satisfacer ciertos criterios. Las funciones de penalizacin son usadas para ayudar a minimizar los efectos de escenarios o para adquirir metas mltiples. A diferencia de una restriccin dura, una funcin de penalizacin no permite que se exploren soluciones invlidas; simplemente hace que tales soluciones se vean mal de forma tal que la poblacin evolucionar hacia rutas distintas lejos de tales soluciones. Las penalizaciones booleanas slo pueden estar encendidas o apagadas; penalizando todas las soluciones invlidas en la misma cantidad. Las penalizaciones escalonadas son ms fluidas, asignando una penalizacin en proporcin a qu tan mal se viola una restriccin. En Excel, una funcin es una frmula predefinida que asume un valor, lleva a cabo una operacin y retorna un valor. Excel contiene cientos de frmulas pre-definidas (como SUMA) que ahorran tiempo, espacio y son ms rpidas. Por ejemplo, en vez de digitar A1+ A2+ A3+ A4+ A5+ A6, usted podra escribir SUMA(A1:A6) y obtener el mismo resultado. En el campo de los algoritmos genticos, cada completamente nueva poblacin de soluciones descendientes constituye una nueva generacin. Algunas rutinas de algoritmos genticos cruzan todos los miembros de una poblacin de una sola vez, creando una nueva generacin de organismos descendientes que reemplaza la poblacin previa. El RISKOptimizer evala y reemplaza un organismo a la vez (ordenado jerrquicamente) y por ende, no usa el trmino generacin en su documentacin. Esta tcnica de estado estacionario trabaja tan bien como la de reemplazo generacional. El generador de nmero aleatorio es un algoritmo que determina la seleccin de nmeros aleatorios, normalmente en un rango entre 0 y 1. Estos nmeros aleatorios son equivalentes a tomar una muestra de una distribucin uniforme con un mnimo de 0 y un mximo de 1. Estos nmeros aleatorios son la base de otras operaciones que los convierten en muestras tomadas de tipos de distribuciones especficas. Vase Muestra aleatoria En biologa, esta es la constitucin gentica de un individuo. El trmino usualmente se refiere a la suma total de los genes del individuo. En el estudio de los algoritmos genticos, el genotipo es usado para describir el cromosoma artificial que est siendo evaluado como una posible solucin al problema.
Funciones
Generacin
Genotipo
226
Cada conjunto de variables, adems de la forma en que stas sern tratadas, constituye un grupo de celdas ajustables. El RISKOptimizer listar todos los grupos de celdas ajustables en la seccin de variables de la caja de dilogo de l Modelo de RISKOptimizer. Esta arquitectura permite la construccin de problemas complejos y descritos como varios grupos de celdas ajustables. Una iteracin es un reclculo del modelo durante una simulacin. Una simulacin consta de mltiples reclculos o iteraciones. En cada iteracin se recolectan muestras de todas las variables inciertas una sola vez, siguiendo las respectivas distribuciones de probabilidad, y el modelo se calcula de nuevo utilizando estos nuevos valores. Tambin se denomina prueba o intento (de una simulacin) El Latino Hibercbico es un mtodo relativamente nuevo de recoleccin de muestras por estratificacin que se utiliza en la creacin de modelos para simulacin. Las tcnicas de toma de muestras estratificadas, al contrario de las tcnicas del tipo Monte Carlo, tienden a alcanzar la convergencia de una distribucin con una menor cantidad demuestras. Vase Monte Carlo El mximo valor posible para una funcin en particular. Algunas funciones o modelos complejos podran tener muchos mximos locales pero slo un mximo global. El mximo valor posible para una funcin en particular dentro de un rango dado de valores. Existe un mximo local en un conjunto de valores para las variables en una funcin si al cambiar ligeramente cualesquiera de los valores de ellas o de todas las variables se produce un resultado un poco menor en la funcin. (Comprese contra el mximo global). La media de un grupo de valores es la suma de todos los valores del grupo dividida entre el nmero total de valores. Sinnimo de valor esperado El RISKOptimizer incluye seis de estos mtodos, cada uno de ellos diseado como un algoritmo hecho a la medida para resolver un tipo especfico de problema. Para cada conjunto de variables seleccionadas en un problema, el usuario deber asignar un mtodo de solucin a ser usado en tales variables. Los seis mtodos de solucin son: agrupamiento, orden, receta, presupuesto, proyecto y calendarizacin. Para los propsitos de este manual, un modelo es una representacin numrica en Excel de una situacin del mundo real.
227
Iteracin
Latino Hipercbico
Mximo global
Mximo local
Media
Mtodo de solucin
Modelo
Glosario
Momentos superiores
Los momentos superiores son los estadsticos de una distribucin de probabilidad. El trmino por lo general hace referencia al ndice de sesgo o asimetra y a la curtosis, los momentos tercero y cuarto respectivamente. Los momentos primero y segundo son la media y la desviacin estndar respectivamente. Vase Curtosis, Media y Desviacin estndar Monte Carlo hace referencia a una tcnica tradicional de toma de muestras para variables aleatorias en los procesos de creacin de modelos por medio de simulacin. Las muestras son seleccionadas de forma completamente aleatoria para todo el rango de la distribucin, y por lo tanto se requiere una gran cantidad de muestras para alcanzar la convergencia en distribuciones altamente desviadas o de extremos sesgados ( o colas anchas). Vase Latino Hibercbico Una muestra aleatoria es un valor que se ha seleccionado de una distribucin de probabilidad que describe una variable aleatoria. Esta muestra se recolecta aleatoriamente segn un algoritmo de recoleccin de muestras. La distribucin de frecuencia que se construye con un gran nmero de muestras aleatorias generadas por dicho algoritmo se aproximar a la distribucin de probabilidad para la que se dise el algoritmo. En el mundo biolgico, la mutacin gentica es la fuente de variacin requerida para la seleccin natural efectiva. De igual manera, un algoritmo gentico usa tcnicas de mutacin para mantener la diversidad en una poblacin de posibles escenarios. El proceso de encontrar valores para las variables de forma tal que la variable de salida de una funcin pueda ser maximizada (hecha tan grande como fuese posible) o minimizada (hecha tan pequea como fuese posible). La optimizacin por medio de la resolucin de ecuaciones es fcil para funciones que cambian suavemente con unas pocas variables, pero extremadamente difcil para muchos problemas del mundo real. Los problemas complicados usualmente requieren de un mecanismo de bsqueda. El RISKOptimizer usa un mecanismo de bsqueda de optimizacin basado en un algoritmo gentico. Un bloque de memoria en una poblacin que almacena un conjunto de valores de variables (escenario). Un percentil es un incremento de los valores de un grupo de datos. Los percentiles dividen los datos en 100 partes iguales, cada una de las cuales contiene el uno por ciento de los valores totales. El percentil 60, por ejemplo, es el valor del grupo de datos que tiene el 60% de los valores por debajo y el 40 % por encima.
Monte Carlo
Muestra aleatoria
Mutacin
Optimizacin
Organismo Percentil
228
Poblacin
El conjunto completo de escenarios que el RISKOptimizer mantiene en memoria desde donde los nuevos escenarios son generados. El RISKOptimizer mantiene una poblacin de soluciones posibles para cada grupo de celdas ajustables en un sistema. Probabilidad es una medida de las posibilidades de que ocurra un valor o suceso. Se puede medir como frecuencia, a partir de los datos de una simulacin, calculando el nmero de repeticiones de un valor o suceso dividido entre el nmero total de sucesos. Este clculo genera un valor entre 0 y 1 que luego se puede convertir en un porcentaje multiplicndolo por 100. Vase Distribucin de frecuencia o Distribucin de probabilidad El proceso del RISKOptimizer para generar un valor para cada variable en el problema, y luego para re calcular el escenario para la evaluacin. En el RISKOptimizer: El usuario define el rango o los valores ms alto y ms bajo que el RISKOptimizer puede intentar para ajustar con respecto a cierta variable. An cuando esto no es necesario para resolver un problema, la definicin de estos rangos limita las posibilidades y por tanto achica la bsqueda del RISKOptimizer. En Excel: Un bloque de celdas contiguas en una hoja de clculo que est definida por la celda superior izquierda y la celda inferior derecha (por ejemplo, A5:C9 describe un rango de 15 celdas).
Probabilidad
Pruebas
Rangos
Restricciones
Las restricciones son condiciones que podran ser satisfechas (restricciones blandas) o deberan obligatoriamente ser satisfechas(restricciones duras) para que un escenario se considere vlido. Cuando las restricciones no tienen necesariamente que ser satisfechas, pueden ser transformadas en blandas en vez de duras. Esto se hace al especificar una funcin de penalizacin en el RISKOptimizer o al aadir una funcin de penalizacin a la funcin de aptitud de la celda objetivo. Usualmente es mejor que, en la medida de lo posible, las restricciones sean blandas. Esto se debe a que: 1. El RISKOptimizer usualmente puede resolver problemas con restricciones blandas ms rpidamente, y 2. Un modelo con restricciones blandas usualmente encontrar una gran solucin que casi satisface las restricciones blandas, que podra
Restricciones blandas
Glosario
229
ser ms valioso que una no tan buena solucin que s satisface restricciones duras.
230
Restricciones duras
Una restriccin que siempre debe cumplirse. Por ejemplo, los rangos para las variables en un problema de receta son restricciones duras; una variable configurada para oscilar entre 10 y 20 nunca podr tener un valor menor a 10 o mayor a 20. Vase tambin restricciones blandas. El sesgo o ndice de sesgo (o bien, ndice de asimetra) es una medida de la forma de una distribucin. El ndice de sesgo indica el grado de asimetra de una distribucin. Las distribuciones sesgadas tienen ms valores a un lado del punto alto, o valor ms probable, que al otro. Adems, uno de las colas o extremos es ms largo que la otra. Un ndice de sesgo de 0 indica una distribucin simtrica, mientras que un ndice de sesgo negativo indica que la distribucin est sesgada hacia la izquierda. Un ndice de sesgo positivo significa un sesgo hacia la derecha. Vase Curtosis La simulacin es una tcnica por la que un modelo, como puede ser una hoja de clculo de Excel, se calcula repetidas veces con diferentes valores de entrada con la intencin de obtener una representacin completa de todos los escenarios posibles que pudieran darse en una situacin incierta. Cualquier sistema en particular contiene muchas variables de entrada que producen una variable de salida. En el RISKOptimizer, una solucin se referir con mayor frecuencia a una de las posibles combinaciones de variables ms que a la mejor combinacin. vernculo. Programas simples de software que encuentran las variables de entrada que producen una variable de salida deseada usando una combinacin de tcnicas de programacin lineal o algoritmos bsicos de ascenso de colinas. Los solucionadores pequeos usualmente adivinan, y luego refinan su respuesta para arribar a una solucin local en vez de una solucin global. La idea de que los organismos mejor adaptados a su medio ambiente tienen ms probabilidad de vivir lo suficiente como para reproducirse y desplegar sus genes a lo largo de la siguiente generacin poblacional. El valor ms probable o moda es el valor que se produce con ms frecuencia en un grupo de valores. En los histogramas y en las distribuciones de resultados, es el valor central de la clase o barra con mayor probabilidad.
Sesgo
Simulacin
Solucin
Solucionador pequeo
Valor ms probable
Glosario
231
Variable dependiente
Una variable dependiente es la que depende de algn modo de los valores de otras variables del modelo. El valor de una variable dependiente incierta se puede calcular con una ecuacin que est en funcin de otras variables inciertas del modelo. La variable dependiente se puede obtener de una distribucin basada en el nmero aleatorio correlacionado con el nmero aleatorio utilizado para extraer una muestra de variable independiente. Vase Variable independiente Una variable independiente es la que no depende en modo alguno de los valores de otras variables del modelo. El valor de una variable independiente incierta se determina con una toma de muestra de la distribucin de probabilidad correspondiente. Esta muestra se extrae sin considerar ninguna otra muestra aleatoria tomada para cualquier otra variable del modelo. Vase Variable dependiente
Variable independiente
232
ndice
A agrupamiento mtodos de solucin ............................................................................... 102 algoritmo definicin................................................................................................ 156 Aadiendo restricciones ............................................................................. 114 Aprendiendo el RISKOptimizer ................................................................... 14 Archivo lame .............................................................................................. 14 archivos ejemplo administracin de rendimientos ................................................................ 87 balanceo de una cartera de inversiones..................................................... 77 distribucin presupuestaria ....................................................................... 65 haciendo coberturas con futuros ............................................................... 73 mezcla de carteras..................................................................................... 81 planeamiento de capacidad ....................................................................... 67 problema del vendedor ambulante............................................................ 85 programacin de produccin en un taller.................................................. 75 programador de clases .............................................................................. 69 riesgo de cartera........................................................................................ 83 ascenso de colinas Uso del Solver ........................................................................................ 162 ascenso de colinas....................................................................................... 158 ascenso de colinas ejemplo ................................................................................................... 164 ascenso de colinas descrito ................................................................................................... 164 B barra de estado............................................................................ 135, 141, 223 bases de datos ............................................................................................. 166 bitcora de datos de simulacin.................................................................... 54 bitcora dinmica.......................................................................................... 56
ndice
233
C calendarizacin mtodos de solucin ............................................................................... 105 celda objetivo............................................................................ 28, 42, 92, 224 celdas ajustables...................................................................................... 42, 95 combinatorios problemas................................................................................................ 166 Condiciones de detencin de optimizacin ............................................... 51 Condiciones de detencin de simulacin ...................................................... 53 Configuraciones de aplicacin comando.................................................................................................. 137 convergencia condicin de detencin ........................................................................... 128 convergencia proyectada condicin de detencin ........................................................................... 128 D distribuciones de probabilidad ...................................................................... 27 Distribuciones de probabilidad ..................................................................... 18 E Eliminando el RISKOptimizer...................................................................... 11 enteros........................................................................................................... 96 especificaciones tcnicas ............................................................................ 205 Excel Solver...................................................................................................... 162 F funcin de aptitud ................................................................................... 35, 93 funciones de penalizacin........................................................................... 197 ejemplos.................................................................................................. 200 uso........................................................................................................... 200 G generaciones por qu no se usan................................................................................... 205 glosario ....................................................................................................... 223 grficos de progreso.................................................................................. 142
234
L lineales problemas ............................................................................................... 163 M Meta de optimizacin ................................................................................... 92 mtodo de reemplazo.................................................................................. 207 mtodo Simplex.......................................................................................... 163 mtodos de solucin ................................................................................... 194 administracin de rendimientos ................................................................ 87 agrupamiento .......................................................................................... 102 balanceo de una cartera de inversiones..................................................... 77 calendarizacin ....................................................................................... 105 distribucin presupuestaria ....................................................................... 65 haciendo coberturas con futuros ............................................................... 73 mezcla de carteras..................................................................................... 81 orden ....................................................................................................... 101 planeamiento de capacidad ....................................................................... 67 presupuesto ............................................................................................. 103 problema del vendedor ambulante............................................................ 85 programacin de produccin en un taller.................................................. 75 programador de clases .............................................................................. 69 proyecto .................................................................................................. 104 receta ...................................................................................................... 100 riesgo de cartera........................................................................................ 83 Modelando la incertidumbre........................................................................... 5 Modelo caja de dilogo .................................................................................... 41, 91 modelos continuos ...................................................................................... 162 N no lineales problemas ............................................................................................... 164 O objetivo ......................................................................................................... 93 Objetivo de optimizacin.............................................................................. 42 Observador pestaa Bitcora...................................................................................... 146 pestaa Diversidad.................................................................................. 149 pestaa Opciones de detencin............................................................... 150
ndice 235
pestaa Poblacin ................................................................................... 148 pestaa Progreso ..................................................................................... 142 pestaa Resumen .................................................................................... 144 Observador del RISKOptimizer............................................................ 56, 141 opciones de ejecucin de optimizacin....................................................... 126 opciones de ejecucin de simulacin.......................................................... 128 Operadores.......................................................................................... 111, 112 operadores genticos................................................................................... 112 optimizacin mtodos................................................................................................... 156 Optimizacin Qu es?.................................................................................................... 19 optimizacin por simulacin......................................................................... 26 optimizacin tradicional ............................................................................... 25 orden mtodos de solucin ............................................................................... 101 P paisaje de soluciones................................................................................... 158 Palisade Corporation....................................................................................... 9 percentil ......................................................................................... 26, 93, 228 pila de genes ............................................................................................... 177 presupuesto mtodos de solucin ............................................................................... 103 problemas basados en tablas ....................................................................... 166 problemas combinatorios............................................................................ 166 problemas de metas mltiples..................................................................... 202 problemas lineales ...................................................................................... 163 problemas no lineales ................................................................................. 164 Progreso ventana.................................................................................................... 135 proyecto mtodos de solucin ............................................................................... 104 R rastreo revertido .......................................................................................... 207 receta mtodos de solucin ............................................................................... 100 restriccin de iteracin............................................. 29, 31, 53, 115, 128, 196 restriccin de simulacin...................................29, 31, 53, 115, 116, 128, 196 restricciones ................................................................................................ 201 implementacin....................................................................................... 207 restricciones blandas............................................................. 47, 115, 117, 196 restricciones duras ........................................................................ 47, 115, 195
236
RISKOptimizer Qu es?.................................................................................................... 17 Observador ............................................................................................. 141 Tutorial ..................................................................................................... 14 rutina de seleccin ...................................................................................... 205 rutinas GRG................................................................................................ 162 S solucin global vs. solucin local .................................................................................... 162 solucin local vs. solucin global .................................................................................. 162 Solver de Excel........................................................................................... 162 Solver de restricciones, comando ............................................................... 138 T tasa de cruce ....................................................................................... 144, 176 descripcin.............................................................................................. 108 implementacin ...................................................................................... 205 tasa de mutacin ......................................................................................... 144 descripcin.............................................................................................. 109 implementacin ...................................................................................... 206 tiempo condicin de detencin ........................................................................... 126 tiempo de ejecucin .................................................................................... 126 Tutorial ......................................................................................................... 14 U Use la misma semilla de generador de nmeros aleatorios en cada simulacin ................................................................................................................ 121 V Valores.......................................................................................................... 96 velocidad mejorar.................................................................................................... 203
ndice
237