Simulación Simulación : es el proceso de diseñar y desarrollar un modelo de un sistema o proceso para conducir experimentos con el propósito de entender el comportamiento del sistema o evaluar varias estrategias con las cuales se puede operar el sistema. Modelo de simulación: conjunto de hipótesis acerca del funcionamiento del sistema expresado como relaciones matemáticas y/o lógicas entre los elementos del sistema. Proceso de simulación: ejecución del modelo a través del tiempo en un computador para generar muestras representativas del comportamiento. Simulación Montecarlo • Técnica cuantitativa para analizar un sistema, a través de un modelo, en la que las variables inciertas en el modelo se representan por distribuciones de probabilidad. • El modelo se recalcula varias veces con diferentes conjuntos de datos de las distribuciones de probabilidad de los datos de las variables inciertas para simular todos los posibles resultados. • El resultado es una distribución de los posibles resultados y de su probabilidad de ocurrencia. La idea Cuál es la probabilidad de un dardo lanzado aleatoriamente de en el área roja? (1,1) 1 (0,0) 1/2 P(Área) = 1/2 1 La idea Cuál es la probabilidad de un dardo lanzado uniformemente al azar de en el área roja? 1 (1,1) (0,0) 1/2 1 P(Área) = πr2 /4r2= π/4 Haga un modelo en Excel para estimar π con esta idea. Estimación de π Ensayo 1 2 3 4 5 994 995 996 997 998 999 1000 Circulo 1 1 1 1 1 1 1 0 1 1 1 0 784 Estimado de π 3.136 Ecuación de un círculo en (h,k): 2 2 r >= (x-h) + (y-k) 2 '=SI(0.25>=(ALEATORIO()-0.5)^2+(ALEATORIO()-0.5)^2,1,0) La idea Cuál es la probabilidad de un dardo lanzado uniformemente al azar de en el área roja? 1 (1,1) (0,0) 1/2 Con la misma idea básica se resolvieron integrales complejas en el Proyecto Manhattan en Los Álamos, en 1945/6. 1 P(Área) = # de dardos en área roja / # de dardos en el cuadrado Esquema Simulación Montecarlo Distribuciones de probabilidad f(x) 0.7 0.6 1 0.5 0.4 Sistema real o Imaginario 0.3 x 0.2 0.1 0 Variables relevantes Muestreo Aleatorio Entradas aleatorias Entradas controlables Modelo Resultados Estadísticas Análisis Pasos simulación Monte Carlo Diseñar el modelo que representa el sistema en estudio. Especificar distribuciones de probabilidad para las variables aleatorias relevantes e incluir posibles dependencias entre las variables. Muestrear valores de las variables aleatorias (Método de la transformación inversa). Calcular el resultado del modelo según los valores del muestreo (iteración) y registrar el resultado Repetir el proceso hasta tener una muestra estadísticamente representativa Obtener la distribución de frecuencias del resultado de las iteraciones Calcular estadísticas relevantes (media, desviación estándar, intervalo de confianza, etc). Analizar los resultados Simulación vs Optimización Modelo Optimización:Variable de decisión = resultados A partir de la construcción de un modelo de restricciones se llega a obtener la optimización de la función objetivo (variables de decisión) Modelo de Simulación: Variables de decisión = entradas A partir de la construcción de un modelo se evalúa la función objetivo para un conjunto particular de valores de entrada. Generadores de números aleatorios Algoritmos para generar series de números aleatorios entre 0 y 1, con igual probabilidad. Los algoritmos se inician con una “semilla” entre 0 y 1 y los subsecuentes números generados dependerán de este valor. Calidad del generador: Periodo, tiempo de cálculo. Actualmente el generador comercial de mayor éxito es el Mersenne Twister, con un periodo de 219937 – 1. Tiempo de CPU (segundos) Area de trabajo (palabras) KISS 9.24 5 127 ≈2 Generador Aleatorio() 9.64 1 31 ≈2 Periodo 7 Tiempo de CPU para generar 10 números Fuente: Matsumoto & Nishimura, Keio University, 1998 MT19937 10.18 624 19937 ≈2 -1 ¿Cómo trabaja Montecarlo? Generación de muestras aleatorias por el Método de la Transformada inversa x Variable de entrada incierta. F(x) Función de distribución acumulada. F(x) ε[0, 1]. F(x) = P(X ≤ x) G(F(x)) = x Para generar una muestra aleatoria de una distribución de probabilidad se genera un aleatorio r ε U[0, 1]. Luego se calcula G(r) = x Generación de Variables Aleatorias Continuas (Transformada inversa) Distribución Uniforme fx F(x) p a xo b F(x) 1 r F(x) a xo b Generación de Variables Aleatorias Discretas (Transformada inversa) Prob F (x) 1.0 Demanda Probabilidad 8 9 10 11 12 13 0.1 0.2 0.3 0.2 0.1 0.1 1.0 Numero Aleatorio Asignado 0.00000 - 0.09999 0.10000 - 0.29999 0.30000 - 0.59999 0.60000 - 0.79999 0.80000 - 0.89999 0.90000 - 0.99999 0.9 0.8 0.7 Aleatorio u 0.6 0.5 0.4 0.3 0.2 En general: 0.1 Entero ( xo + [ (yo – xo + 1) . Aleatorio() ]) entero [8 + (13 – 8 + 1) . Aleatorio() ] entero [8 + 6 . Aleatorio() ] 8 9 10 11 12 13 14 demanda generada Muestreo Montecarlo Muestreo “puro” aleatorio. • Usa el método de la transformada inversa tal como fue descrito. • Usado por Von Neumann & Ulam. • Útil en la simulación de un muestreo aleatorio de una población o experimentos estadísticos. • No muestreará necesariamente toda la distribución, por lo puede requerir un número grande de observaciones. Muestreo Hipercubo Latino (HLS) Muestreo estratificado sin reemplazamiento • La distribución de probabilidad es dividida en “n” intervalos de igual probabilidad. • En la primera iteración se selecciona un intervalo usando un número aleatorio. • Se genera un segundo número aleatorio para determinar dónde cae F(x) dentro del intervalo seleccionado. • Se calcula x = G(F(x)) para el valor de F(x). • El proceso se repite en las siguientes iteraciones, sin volver a seleccionar los intervalos muestreados. • El muestreo resulta uniformemente distribuido sobre el rango de F(x). Comparación de muestreos Muestreo de 300 ensayos de triangular(0,10,20) triangular 3.08 0.10 5.0% 16.77 90.0% 5.0% 0.09 0.08 0.07 triangular 0.06 Minimum 0.6230 Maximum 19.8089 Mean 10.0007 Std Dev 4.0910 Values 300 0.05 0.04 0.03 0.02 Montecarlo 20 18 16 14 12 10 8 6 4 2 0 0.01 0.00 Hipercubo Latino Convergencia a la media Uso de simulación MC en @Risk • @Risk es un add-in de excel para simulación MC. • Pasos: – Escribir el modelo en Excel. – Designar las celdas que representan las variables inciertas. – Designar las variables cuyo comportamiento se desea estudiar –variables de salida– Correr o simular el modelo cierto número de veces, – Revisar los resultados en los reportes y ventanas @Risk. Ejemplo • Freddy es un vendedor de periódicos. – Freddy paga S/. 1.50 por ejemplar recibido. – Freddy cobra S/. 2.50 por ejemplar vendido. – El reembolso de Freddy es de S/. 0.50 por ejemplar no vendido. • Freddy no está seguro de la cantidad de periódicos que le convendría pedir. • Por eso ha estado llevando un registro de sus ventas diarias y esto es lo que ha encontrado: – Cualquier día vende entre 40 y 70 ejemplares, – La frecuencia de los números entre 40 y 70 es aproximadamente la misma. • Freddy necesita saber cuál debe ser el número de ejemplares que debería pedir diariamente para maximizar su beneficio promedio por día. Simulación Vendedor de periódicos Distribución Uniforme f(x) Problema de reposición de stock con demanda incierta x Muestreo Aleatorio Variables relevantes Demanda de Periódicos Cantidad a ordenar (variable controlable) Modelo de Beneficio Beneficio Estadísticas (Riesgo del Proyecto) Evaluación con @Risk Ejemplo - Lanzamiento de Producto Una empresa esta analizando la introducción de un nuevo producto, los costos estimados de la puesta en marcha del proyecto son US$ 150,000 (incluye equipos nuevos, entrenamiento, y otros varios). Cada uno de los productos será vendido en US$ 35,000. Los costos fijos están estimados en US$15,000 por año, los costos variables están estimados en el 75% de los ingresos anuales. La depreciación del equipo es de US$ 10,000 por año para los 4 años de evaluación del proyecto. El costo de capital de la empresa es 10% y su tasa de impuesto a la renta es 34%. El aspecto más incierto es la demanda del producto, la misma que según las estimaciones de Marketing pueden ser de 8, 9, 10, 11 o 12 unidades por año con la misma probabilidad de ocurrencia. Evaluar el riesgo del proyecto en un horizonte de cuatro años usando como indicador el valor actual neto. Simulación Lanzamiento Producto Distribución Uniforme f(x) Introducción de Nuevo Producto x Variables relevantes Muestreo Aleatorio Demanda del Producto Precio de Venta Flujo de Caja VAN (variable controlable) Estimación de Probabilidad (VAN<0) (Riesgo del Proyecto) Ejemplo - Lanzamiento de Producto Simulación en Excel Nota. La demanda sigue una distribución uniforme, con media 10, y puede tomar los valores 8, 9, 10, 11 y 12. Demanda Ingresos Costo Fijo Costo variable Depreciación Utilidad antes de Impuestos Impuestos Utilidad después de Impuestos Flujo Neto de efectivo 8 280000 15,000 210000 10,000 45,000 15,300 29,700 39,700 Modelo 9 315000 15,000 236250 10,000 53,750 18275 35,475 45,475 10 350000 15,000 262500 10,000 62,500 21250 41,250 51,250 11 385000 15,000 288750 10,000 71,250 24225 47,025 57,025 12 420000 15,000 315000 10,000 80,000 27200 52,800 62,800 Ejemplo - Lanzamiento de Producto Simulación en Excel Prueba 1 2 3 4 5 6 7 8 Año 1 8 10 11 8 11 11 12 9 Entrada Aleatoria Año 2 Año 3 8 9 8 8 9 12 11 9 10 8 12 10 12 8 8 10 Año 4 8 11 11 10 12 9 8 10 (150,000) (150,000) (150,000) (150,000) (150,000) (150,000) (150,000) (150,000) 39700 51250 57025 39700 57025 57025 62800 45475 39700 39700 45475 57025 51250 62800 62800 39700 45475 39700 62800 45475 39700 51250 39700 51250 39700 57025 57025 51250 62800 45475 39700 51250 VNA (18,016) (1,657) 23,232 2,172 15,379 21,188 14,486 (2,127) Ejemplo - Lanzamiento de Producto Simulación en Excel No.Ensayos 10 100 500 Estimación del VAN Promedio Desv.Est. Max Min 8,275.7 13,998.1 25,924.7 (18,015.9) 12,034.3 11,868.5 37,076.6 (18,015.9) 11,608.5 11,189.7 41,021.0 (18,015.9) Estadísticas para el caso de 500 ensayos Alfa 0.05 Amplitud Int.Conf. 980.8 Int.de Conf. 10,627.7 12,589.3 No. Perdidas 77 Probb.perdida 15.4% Ejemplo - Lanzamiento de Producto Simulación en @Risk Uniform(8, 12) X <= 8.000 0.0% 0.3 X <= 12.000 100.0% 0.25 0.2 0.15 0.1 0.05 0 7.5 8 8.5 9 9.5 10 10.5 11 11.5 12 12.5 @Risk genera automáticamente las distribuciones de probabilidad a partir de sus parámetros. Ejemplo - Lanzamiento de Producto Simulación en @Risk Modelo de Flujo de Caja en @Risk Año 0 Demanda Ingresos Costo Fijo Costo variable Depreciación Utilidad antes de Impuestos Impuestos Utilidad después de Impuestos Flujo Neto de efectivo Valor Presente del Proyecto (150,000) 11,323.28 Año 1 10 350000 15,000 262,500 10,000 62,500 21,250 41,250 51,250 Año 2 10 350000 15,000 262,500 10,000 62,500 21,250 41,250 51,250 Año 3 10 350000 15,000 262,500 10,000 62,500 21,250 41,250 51,250 Año 4 10 350000 15,000 262,500 10,000 62,500 21,250 41,250 51,250 Ejemplo - Lanzamiento de Producto Simulación en @Risk Distribución de probabilidad del VAN Distribution for Valor Presente del Proyecto/G25 X <=0 13.4916% 4.5 X <=27338.2 95% Con 1000 ensayos, se estima una probabilidad de 13.5% de obtener un VAN negativo. M ean = 11323.09 4 Values in 10^ -5 3.5 3 2.5 2 1.5 1 0.5 0 -20 -10 0 10 20 Values in Thousands 30 40 50 Incorporación de la opinión de expertos en el modelo de riesgos Taller de Análisis de Riesgos Por: H. Gutiérrez V. Introducción Dificultades para conseguir información de las variables con incertidumbre. No hay datos recolectados sistemáticamente. Los datos son muy caros de obtener. Los datos del pasado ya no son relevantes (por avances tecnológicos, políticos o comerciales). Los datos son dispersos, requiriéndose de expertos para llenar vacíos. El área que se está modelando es nueva. Involucrar expertos. Distribuciones usadas en la modelación de la opinión de expertos Distribuciones paramétricas Distribuciones no-paramétricas Definidas por parámetros con poca relación con la forma de la distribución. Lognormal, Normal, Beta, Weibull, Pareto, Loglogística, hipergeométrica, etc. Tienen su forma y rango determinados por sus parámetros en forma obvia e intuitiva. Uniforme, Triangular, Acumulativa y Discreta. Regla: D. no-paramétricas más flexibles y confiables. Distribuciones notables Distribución triangular La más común para la modelación de la opinión de expertos. Definida a partir de sus valores mínimo (a), más probable(b) y máximo (c) Puede ser simétrica, sesgada a la derecha o a la izquierda. Atractiva por la facilidad de pensar en base a tres valores. Media ( a b c) 3 (a 2 b 2 c 2 ab ac bc ) DesvEst 18 Distribución triangular Cuándo usarla: Cuando se conoce muy poco de la variable, pero se tiene estimados de los tres parámetros (a, b, c). Cuando no usarla: En situaciones donde es difícil determinar el valor máximo (c), no es conveniente usarla. Si se asume un máximo muy grande, se puede distorsionar el análisis por que la media sería muy grande y sus desviación estándar también. Distribución TriGen Es una variación de la triangular, con cinco parámetros. TriGen(a, b, c, p, q) a: mínimo práctico b: valor más probable c: máximo práctico. p: probabilidad que el parámetro sea menor que a q: probabilidad que el parámetro sea menor que c TriGen(40, 50, 80, 5%, 95%) Distribución TriGen Es una forma útil de evitar preguntar a los expertos por los estimados mínimo y máximo absolutos de un parámetro. Preguntar por el máximo o el mínimo puede ser difícil, especialmente si no hay referencias teóricas. Esta distribución permite discutir que valores de p y q usarán los expertos para definir mínimos y máximos “prácticos”. Distribución Uniforme Generalmente es un modelador muy pobre de la opinión de un experto. Todos los valores entre el máximo y el mínimo tienen la misma probabilidad. Es raro que un experto que puede opinar sobre el mínimo y máximo no pueda opinar sobre un valor más probable. Es útil para resaltar el hecho de que se conoce muy poco de un parámetro. Usado ampliamente como base para la generación de números aleatorios para otras distribuciones. Distribución Pert Derivada de la distribución Beta y requiere los mismos tres parámetros que la distribución Triangular: un valor mínimo (a), más probable (b) y máximo (c). Su media es más sensible al valor más probable que en el caso de la Triangular. Su desviación estándar es menos sensible a los extremos que la Triangular. Comparación de Triangular y Pert Comparación de Triangular y Pert 0.0519 12 5.0% 10.8% 0.1743 90.0% 84.8% 5.0% 4.4% 10 Pert(0,0.1247,0.2) 8 Minimum Maximum Mean Std Dev 0.0000 0.2000 0.1165 0.0373 6 Triang(0,0.1247,0.2) 4 2 0 Minimum Maximum Mean Std Dev 0.0000 0.2000 0.1082 0.0412 Distribución Pert modificada • La distribución Pert puede ser modificada para producir otros perfiles de la distribución, con los mismos parámetros a, b y c, modificando la definición de la media: a *b c 2 El experto debe decidir la mejor forma de la distribución. Distribución Relativa o General Es la más flexible de las distribuciones continuas. • Permite al analista y al experto modelar la distribución que mejor refleja la opinión del experto. • La sintaxis es: General(min, max, {xi}, {pi}) • Los pi no necesariamente suman 1, se normalizan. • Ej. de Distribución General 6.7 0.07 7 15 9 54 12 57 17 25 23 14 19.5868056 0.04 Minimum Maximum Mean Std Dev 0.03 0.02 0.01 0.00 70 10 General(2,60, {4;7;9;12;17;23}, {10;15;54;57;25;14}) 60 4 0.05 50 pi 40 Xi 5.0% 0.06 30 60 20 2 90.0% 10 Max 5.0% 0 Min 44.9 2.0000 60.0000 19.5868 11.9556 Distribución Acumulativa Usada algunas veces para modelar la opinión del experto cuando el rango de una variable cubre varios órdenes de magnitud. En otros casos puede ser difícil de manipular, por su sensibilidad a los cambios en las probabilidades acumuladas. La sintaxis es: Cumul(min, max, {xi}, {pi}) Los pi son probabilidades acumuladas. Problema con la Acumulativa Pequeños cambios en la distribución acumulada de probabilidad pueden causar grandes modificaciones en la forma de la distribución. 30 25 20 pi 0.1 0.4 0.65 0.87 0.93 0.99 15 Xi 4 7 9 12 17 23 10 Max 60 5 Min 2 0 Ej. de Distribución Acumulativa Distribución Discreta Especial para modelar una variable que puede tomar, uno, dos o varios valores. También es usada para combinar opiniones divergentes de varios expertos. La sintaxis es: Discrete({xi}, {pi}) Los pi son pesos o probabilidades de cada xi Ej. de Distribución Discreta Xi 4 7 9 12 17 23 pi 10 15 54 57 25 14 12 95 90 85 80 75 70 65 60 55 50 70 65 60 55 50 45 40 35 45 Combinando opiniones disimiles de varios expertos Experto C / Curva Pert 55.68 0.07 5.0% 74.32 90.0% 5.0% 0.06 0.05 Pert(50,65,80) 0.04 0.03 Minimum Maximum Mean Std Dev 50.0000 80.0000 65.0000 5.6695 0.02 0.01 90 85 80 75 70 65 60 55 50 45 40 35 0.00 Modelación de la opinión de una variable que cubre varios órdenes de magnitud Un experto desea modelar el hecho de que 1 Kg de carne tiene un número de bacterias entre 1 y 10,000,pero hay igual probabilidad de que el número esté entre 100 y 1,000. N de un. de bact. 10Uniforme( 0,4) 12 10 8 6 4 2 0 La discrepancia se debe a la necesidad de pensar en el espacio logarítmico. -2 Algoritmos Genéticos Conceptos básicos: Cromosoma Toda la información genética se almacena en los cromosomas. Cada cromosoma está constituido por genes. Un gen es una secuencia lineal organizada de moléculas orgánicas en la molécula de ADN. Los genes codifican las propiedades de las especies, es decir, la características de un individuo. Conceptos básicos: Algoritmos Genéticos Imitación de la evolución biológica para resolver problemas de búsqueda y optimización. Se basan en el proceso genético de los organismos vivos. Los algoritmos genéticos trabajan con una población de individuos, cada uno de los cuales representa una solución factible a determinado problema. A cada individuo se le asigna un valor o puntuación relacionado con la bondad de dicha solución (“fitness”). Conceptos básicos: Algoritmos Genéticos Evolución: selección natural, supervivencia del más apto. La población tiende a mejorar de manera lenta a través del tiempo por medio de este proceso. Un segundo factor que contribuye a este proceso es una tasa de mutación aleatoria y de bajo nivel en el ADN de los cromosomas. Las soluciones factibles de un problema específico corresponden a los miembros de una especie particular, donde la aptitud de cada miembro se mide por el valor de la función objetivo. Esquema Básico de los AG Crea aleatoriamente población inicial de cromosomas Evalúa la población actual de cromosomas (Fitness) Selecciona y reproduce nuevos cromosomas (cruzamiento, mutación) Sustituye los cromosomas padres por los hijos Finaliza cuando hay convergencia en la población ó cuando se realizan K iteraciones Ejemplo de cálculo con un Algoritmo Genético para una función Maximización de una función Consideremos el problema de maximización de la siguiente función sencilla: f ( x) x 2 Para valores de x entre 0 y 31. Paso 1 Codificar la variable “x” en una cadena binaria. En este caso con 5 dígitos binarios (bits) se puede representar los números 0 (00000) al 31 (11111). Seleccionar una población (soluciones factibles) al azar, en el rango de x, entre 0 y 31. Elegiremos una población inicial de tamaño 4. El tamaño de la población puede tomar cualquier valor, pero dependerá de la complejidad de la aplicación. Pasos 2 al 6 Paso 2: Obtener la decodificación en binario de los valores de x para la población inicial generada. Por ejemplo la cadena 10011 = 19. Paso 1 Cadena No. 1 2 3 4 Suma Promedio Máximo Población Inicial (seleccionada al azar) 01100 11001 00101 10011 Paso 2 Paso 3 Valor de x 12 25 5 19 Fitness f(x) = x² 144 625 25 361 1155 288.75 625 Soluciones generadas aleatoriamente Paso 4 Prob i Probabilidad 0.1247 0.5411 0.0216 0.3126 1.0000 0.2500 0.5411 12.47% 54.11% 2.16% 31.26% 100% 25% 54.11% Paso 5 Conteo Esperado 0.4987 2.1645 0.0866 1.2502 4.0000 1.0000 2.1645 Paso 6 Conteo Real 1 2 0 1 4 1 2 Pasos 2 al 6 Paso 3: Obtener el grado de aptitud o «fitness» de cada individuo, esto es, el valor de la función objetivo. Paso 4: Calcular la «probabilidad de la selección» de cada individuo de la población para su reproducción, de acuerdo a su aptitud. Paso 5: Calcular el conteo esperado de cada individuo. Este valor ayudará a decidir si pasará al proceso de reproducción. Paso 6: Considerando las probabilidades de selección se determinará el número real de individuos de cada tipo que pasará al proceso de reproducción. Pasos 7 al 10 Paso 7: La aplicación del conteo da como resultado el lugar de apareamiento («mating pool») siguiente: Paso 7 Cadena Nº 1 2 3 4 Suma Promedio Maximo Paso 8 Camara de Punto de cruces 01100 11001 11001 10011 cruce 4 4 3 3 Hijos 01101 11000 11011 10001 Paso 9 Mutación de Hijos después cromosomas de mutación 10000 11101 00000 11000 00000 11011 00100 10100 Paso 10 Valor de x 29 24 27 20 Fitness f(x) = x 841 576 729 400 2546 636.5 841 2 Pasos 8 y 9 Paso 8: la operación de cruce se realiza para producir nuevos descendientes (hijos). El punto de cruce se calcula aleatoriamente y se usa como referncia para producir los nuevos descendientes. Los padres son: Padre 1 Padre 2 01100 11001 La descendencia se producida será: Descendiente 1 Descendiente 2 01101 11000 Paso 9: después de las operaciones de cruce, se producen nuevos descendientes. Paso 10 - Mutación La operación de mutación se realiza para modificar aleatoriamente (con cierta probabilidad) los genes de los hijos o descendientes, después de la operación de cruce. Una vez que se realiza la selección, el cruce y la mutación las nuevas cadenas creadas por el algoritmo genético son la nueva población que ahora está lista para ser evaluada de acuerdo a la función objetivo. De la tabla, se puede observar como los individuos se combinan para lograr un mejor rendimiento. El rendimiento máximo y el promedio ha mejorado en la nueva población, una generación después. Continuación … Cadena Nº 1 2 3 4 Suma Promedio Maximo Cadena Nº 1 2 3 4 Suma Promedio Maximo Hijos (nueva generación) 11101 11000 11011 10100 Valor de x 29 24 27 20 Camara de Punto de cruces 11101 11101 11000 11011 cruce 4 4 0 0 Fitness f(x) = x 841 576 729 400 2546 636.5 841 Hijos 11101 11101 11000 11011 2 Probabilidad Conteo Conteo % 33.0% 22.6% 28.6% 15.7% 100.0% esperado 1.32 0.90 1.15 0.63 4.00 real 2 1 1 0 4 Mutación de Hijos después cromosomas 00000 00000 00100 00100 de mutación 11101 11101 11100 11111 Valor de x 29 29 28 31 El máximo valor de f(x) es 961, cuando x=31. Fitness f(x) = x 841 841 784 961 3427 856.8 961 El algoritmo no se detendrá automáticamente. Se requiere un criterio de parada. Por ejemplo detenerse después de cierto número de iteraciones sin mejora de la función objetivo o transcurrido cierto tiempo. 2 Operadores Genéticos Direccionan la acción del Algoritmo Genético. Sus valores son producto de investigación empírica. Parámetros: Tamaño de la población Número de generaciones Probabilidad de cruce Probabilidad de mutación Ejemplo: valores aceptados para funciones de optimización Tamaño de la población: 50-100 Probabilidad de cruce: 0.60 Probabilidad de mutación: 0.001 Métodos especializados para solucionar problemas con Algoritmos Genéticos Referencia: Programa Evolver de Palisade Decision Tools Método: Receta (“recipe”) Es el método de solución más simple. Se usa siempre que las variables que se desean ajustar pueden variar independientemente una de las otras. Cada variable se puede tomar como la cantidad de un ingrediente que se utilizará en una “receta”. Se requiere especificar el tipo (entero, real) y rango de valores (máximo y mínimo) en el que caerán las variables. Método: Orden (“order”) El más popular después de “receta”. Un orden es una permutación de una lista de elementos, en la que se está tratando de encontrar la mejor manera de organizar un conjunto de valores. A diferencia de otros métodos, Evolver utilizará los valores existentes en el modelo. Un “orden” podría representar el orden en que se deben llevar a cabo una serie de tareas. No requiere mínimo o máximo para las variables. Método: Agrupamiento(“grouping”) Utilizado cuando el problema involucra múltiples variables a ser agrupadas en conjuntos. El número de grupos diferentes que el Evolver crea será igual al número de valores únicos presentes en las celdas ajustables al inicio de la optimización. Por lo tanto hay que asegurarse que cada grupo esté representado al menos una vez. No requiere mínimo o máximo para las variables. Método: Presupuesto(“budget”) Un presupuesto es similar a una receta (“recipe”) excepto de que todos los valores de las variables deberán totalizar un número determinado. Ese número es el total de los valores de las variables en el momento en que se inicia la optimización. Por ejemplo, con este método de solución se puede encontrar la mejor manera de distribuir un presupuesto anual entre un número de departamentos, y utilizar la suma como el presupuesto total a ser óptimamente distribuido. Método: Proyecto(“project”) El método de solución por proyecto es similar al método de solución de orden (“order”) excepto que ciertas tareas deben preceder a otras. El método de solución por proyecto puede ser utilizado en administración de proyectos para reasignar el orden en que las tareas son llevadas a cabo, pero el orden siempre cumplirá con las restricciones de precedencia. Método: Programación (“Sceduling”) Similar a un agrupamiento (“grouping”), es la asignación de tareas a tiempos. Se asume que cada tarea dura la misma cantidad de tiempo, como las clases en una universidad. Sin embargo, a diferencia del agrupamiento, la caja de diálogo de Celdas Ajustables para el método de solución por calendarización le permite a usted especificar directamente el número de bloques de tiempo (o grupos) a ser utilizados.