DISEÑO E IMPLEMENTACIÓN DE UNA METAHEURÍSTICA BASADA EN AUTÓMATAS FINITOS DETERMINISTAS PARA LA OPTIMIZACIÓN
MULTIOBJETIVO DE PROBLEMAS COMBINATORIOS
ELIAS DAVID NIÑO RUIZ
UNIVERSIDAD DEL NORTE DIVISIÓN DE INGENIERÍAS
MAESTRÍA EN INGENIERIA INDUSTRIAL BARRANQUILLA
2010
DISEÑO E IMPLEMENTACIÓN DE UNA METAHEURÍSTICA BASADA EN AUTÓMATAS FINITOS DETERMINISTAS PARA LA OPTIMIZACIÓN
MULTIOBJETIVO DE PROBLEMAS COMBINATORIOS
ELIAS DAVID NIÑO RUIZ TESIS DE GRADO
Presentado como requisito de grado para optar al título de Magister en Ingeniería de Industrial
Director
M.Sc Ing. Carlos Julio Ardila Hernandez
UNIVERSIDAD DEL NORTE DIVISIÓN DE INGENIERÍAS
MAESTRÍA EN INGENIERIA INDUSTRIAL BARRANQUILLA
2010
Nota de aceptación _______________________________
_______________________________
_______________________________
Carlos Julio Ardila Hernandez, MSc Director del proyecto
_______________________________
Ph.D Carmenza Luna Coordinador Programa Maestría en
Ingeniería Industrial
_______________________________
Corrector
_______________________________
Jurado
_______________________________
Jurado Lunes 22 de Febrero de 2010
“Para la gloria de Dios”
AGRADECIMIENTOS
Agradezco en primera medida a Dios por ser la principal fuente de mi conocimiento y existencia.
A mis padres Elías Francisco Niño Yunez y Arely del Carmen Ruiz Cena y mi hermana Carmen Judith Niño Ruiz por su constante apoyo en mi vida y por su inagotable motivación en mi crecimiento profesional y personal.
Por último, agradezco a mi profesor y amigo Carlos Julio Ardila Hernández por su constante apoyo en mi desarrollo profesional.
RESUMEN
La presente tesis propone una estrategia para la Optimización Multi – Objetivo de Problemas Combinatorios.
Inicialmente, se propone un Autómata Finito Determinista Multi – Objetivo (AFDM) basado en la teoría de los Autómatas Finitos Deterministas (AFD). Los AFDM permiten el modelado y descripción del espacio de soluciones factibles de un problema combinatorio multi – objetivo.
Posteriormente, se diseña e implementa una metaheurística de complejidad ( ) para la optimización de problemas combinatorios. Esta metaheurística se nombra Metaheurística de Intercambio Determinista sobre Autómatas (MIDA). MIDA basa su estrategia en la teoría de los AFDM.
En la etapa de pruebas, MIDA es contrastada con Metaheurísticas de gran impacto a nivel mundial tales como Algoritmos basados en Colonias de Hormigas, Técnicas Evolutivas y estrategias de Búsqueda Local, todas ellas referenciadas de publicaciones en Journals Internacionales ISI (Indexadas por la ISI Web of Knowledge).
Finalmente, los productos asociados a la presente investigación son:
1. Publicación de Articulo en Revista ISI: “A GENETIC ALGORITHM FOR MULTIOBJECTIVE HARD SCHEDULING OPTIMIZATION“ International Journal of Computers, Communications & Control (IJCCC), Vol. 5, Issue 5, 2010, ISSN 1841-9836, with coverage in Science Citation Index Expanded and indexation in ISI Web of Science, via http://isiknowledge.com, not as "proceedings paper" but as "article".
2. Articulo enviado a evento con publicación ISI (En espera por aprobación): “A NEW METAHEURISTIC BASED ON DETERMINISTIC FINITE AUTOMATA FOR THE MULTI – OBJECTIVE OPTIMIZATION OF COMBINATORIAL PROBLEMS“.19th EACSL Annual Conference on Computer Science Logic. Venue - Czech Republic.
3. Ponencia Internacional en Oradea - Rumania: International Conference on Computers, Communications and Control Băile Felix, Oradea, România, May 12- 16, 2010
4. Ponencia Internacional en Argentina - Buenos Aires: ALIO-INFORMS Joint International Meeting June 6 – 9 2010.
TABLA DE CONTENIDO
PAG
1. INTRODUCCION 9
1.1. PLANTEAMIENTO DEL PROBLEMA 9
1.2. OBJETIVOS 10
1.2.1. Objetivo General 10
1.2.2. Objetivos Específicos 10
1.3. CONTRIBUCIONES 11
1.4. ANTECEDENTES 12
2. MARCO TEORICO 19
2.1. OPTIMIZACION 19
2.1.1. OPTIMIZACION MONO-OBJETIVO 20
2.1.2. OPTIMIZACION MULTI-OBJETIVO 21
2.1.2.1. FRENTE DE PARETO (FP) 22
2.1.2.1.1. METRICAS 25
2.1.2.1.1.1. Generación de Vectores no Dominados (GVND) 25
2.1.2.1.1.2. Distancia Generacional (DG) 25
2.1.2.1.1.3. Distancia Generacional Inversa (DGI) 26
2.1.2.1.1.4. Espaciamiento ( ) 26
2.1.2.2. TECNICAS CLASICAS 27
2.1.2.2.1. Suma con Pesos 27
2.1.2.2.1. – Restricción 28
2.2. OPTIMIZACION COMBINATORIA 29
2.2.1. TECNICAS HEURISTICAS 32
2.2.2. TECNICAS METAHEURISTICAS 33
2.2.2.1. ALGORITMOS GENETICOS 33
2.2.2.2. RECOCIDO SIMULADO 34
2.2.2.3. COLONIA DE HORMIGAS (ACO) 35
2.2.2.4. BÚSQUEDA TABÚ (TS) 39
2.2.2.5. GRASP 40
2.3. AUTOMATAS 41
2.3.1. AUTOMATA FINITO DETERMINISTA 41
2.3.1.1. FUNCION DE TRANSICION EXTENDIDA 42
2.3.1.2. REPRESENTACION DE AUTÓMATAS FINITOS DETERMINISTAS
MEDIANTE DIAGRAMAS DE TRANSICIÓN 44
2.3.1. AUTOMATA FINITO DETERMINISTA DE INTERCAMBIO 45
3. METAHEURISTICA PROPUESTA 51
3.1 AUTOMATA FINITO DETERMINISTA MULTIOBJETIVO 51
3.1.1. Conjunto de Estados 51
3.1.2. Alfabeto Finito de Entrada 52
3.1.3. Función de transición 56
3.1.4. Conjunto de Estados Iniciales. 58
3.1.5. ( ) Conjunto de Funciones Objetivos. 58
3.2 METAHEURISTICA DE INTERCAMBIO DETERMINISTA SOBRE
AUTOMATAS (MIDA) 60
3.2.1 ANALISIS DE LA COMPLEJIDAD DE MIDA 68
4. EXPERIMENTACION Y ANALISIS DE RESULTADOS 73
4.1. Especificación del AFDM para la prueba. 74
4.2. Comparación de los resultados de MIDA con las metaheurísticas UMOSA,
CMOSA, SMOSA y EMOSA. 76
4.3. Comparación de los resultados de MIDA con técnicas de Colonia de Hormigas y
Técnicas Evolutivas. 83
5. CONCLUSIONES Y TRABAJOS FUTUROS 90
6. REFERENCIAS BIBLIOGRAFICAS 92
LISTA DE FIGURAS
PAG Figura 1. Búsqueda aleatoria de soluciones por parte de SMOSA 16 Figura 2. Búsqueda ajustada de soluciones por parte de UMOSA 16 Figura 3. Búsqueda adaptativa de soluciones por parte de CMOSA 17 Figura 4. Búsqueda aleatoria de soluciones por parte de SMOSA 17 Figura 5. Conjuntos soluciones para un problema mono-objetivo 21
Figura 6. Conjunto de soluciones mono-objetivo 23
Figura 7. Conjunto de soluciones multi-objetivo 23
Figura 8. FP Bi-Objetivo 24
Figura 9. Clasificación de los problemas combinatorios 31 Figura 10. Representación de un autómata finito determinista mediante el uso de
diagramas de transición 45
Figura 11. Estructura de un estado de un AFD – I 46
Figura 12. Representación del AFDI para el vector de entrada ̅ ( ). 50
Figura 13. Estructura de un estado 52
Figura 14. Representación del espacio de soluciones factibles para el problema del
ejemplo 1 53
Figura 15. AFDM construido a partir del estado inicial
del ejemplo 1 57
Figura 16. Conjunto de soluciones factibles para el problema del ejemplo 1 60 Figura 17. Iniciando la exploración de a partir de 62 Figura 18. Comportamiento de MIDA de izquierda superior a derecha inferior 64
Figura 19. Framework de la Metaheuristica MIDA 65
Figura 20. Framework del método ( ) 67 Figura 21. Graficas de comportamiento del Algoritmo MIDA para algunos valores
de n 72
Figura 22. Contraste visual del FP obtenido por MIDA en la instancia KROAB50, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y
EMOSA
77 Figura 23. Contraste visual del FP obtenido por MIDA en la instancia KROCD50,
contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA.
77 Figura 24. Contraste visual del FP obtenido por MIDA en la instancia
KROAB100, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA.
78 Figura 25. Contraste visual del FP obtenido por MIDA en la instancia
KROAC100, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA
78 Figura 26. Contraste visual del FP obtenido por MIDA en la instancia 79
KROCD100, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA.
Figura 27. Contraste visual del FP obtenido por MIDA en la instancia
KROABC100, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA.
79 Figura 28. Contraste visual del FP obtenido por MIDA en la instancia
KROBCD100, contra los FPs obtenidos por los algoritmos CMOSA, SMOSA, UMOSA y EMOSA.
80 Figura 29. Contraste visual del FP obtenido por MIDA en la instancia KROAB50,
contra los FPs obtenidos por los algoritmos BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2, USBC y el FPI .
84 Figura 30. Contraste visual del FP obtenido por MIDA en la instancia
KROAB100, contra los FPs obtenidos por los algoritmos BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2, USBC y el FPI .
85 Figura 31. Contraste visual del FP obtenido por MIDA en la instancia
KROBC100, contra los FPs obtenidos por los algoritmos BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2, USBC y el FPI .
86
LISTA DE TABLAS
PAG
Tabla 1. Taxonomía para los MOACOS 15
Tabla 2. Función de transición 45
Tabla 3. Función para el AFD I con vector de entrada ̅ ( ) 48 Tabla 4. Evaluación de los vectores en la función objetivo 49
Tabla 5. Función para del AFDM del ejemplo 1 57
Tabla 6. Función ( ) aplicada a los estados , , del AFDM del ejemplo 1 59 Tabla 7. Modo convencional de ver las variables definidas por MIDA 68 Tabla 8. Instancias de la TSPLIB utilizadas en las pruebas de MIDA 74 Tabla 9. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROAB50 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
80 Tabla 10. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROCD50 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
80 Tabla 11. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROAB100 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
81 Tabla 12. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROAC100 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
81 Tabla 13. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROCD100 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
81 Tabla 14. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA para la instancia KROABC100 utilizando las métricas GVND, ESPACIAMIENTO,GD e IGD
81 Tabla 15. Comparación de los resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA utilizando métricas para la instancia KROBCD100 82 Tabla 16. Promedio de resultados obtenidos por MIDA, EMOSA, CMOSA, SMOSA y UMOSA utilizando métricas para la instancias de TSPLIB agrupados por cantidad de ciudades y objetivos.
82 Tabla 17. Comparación de los resultados obtenidos por MIDA, BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2 y USBC utilizando métricas para la instancia KROAB50
87 Tabla 18. Comparación de los resultados obtenidos por MIDA, BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2 y USBC utilizando métricas para la instancia KROAB100
87 Tabla 19. Comparación de los resultados obtenidos por MIDA, BCA, BCM, CA, 88
MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2 y USBC utilizando métricas para la instancia KROBC100
Tabla 20. Promedios de los resultados obtenidos por MIDA, BCA, BCM, CA, MACS, MOAQ, MONA, NSGA – II, PACO, SPEA2 y USBC utilizando métricas. 88 Tabla 21. Tiempo promedio consumido por MIDA para la solución de las
instancias tratadas 89
9
1. INTRODUCCION
1.1. PLANTEAMIENTO DEL PROBLEMA
En la ingeniería así como en muchos problemas de la vida cotidiana es común encontrar problemas de naturaleza combinatoria que exijan la optimización de uno ó varios recursos, entendiéndose por optimización la maximización o minimización de alguna(s) función(es) o recurso(s).
Problemas como la distribución de recursos en espacios físicos1, distribución de consultas en servidores de bases de datos2, calidad en la distribución de imágenes en filmes de cine3, elaboración de microchips4, construcción de concentradores eléctricos5, rendimiento de vehículos eléctricos6, selección de la mejor ruta para el recorrido de varias ciudades7,
1 Xin Sui; Ho-Fung Leung, "An Adaptive Bidding Strategy in Multi-round Combinatorial Auctions for Resource Allocation," Tools with Artificial Intelligence, 2008. ICTAI '08. 20th IEEE International Conference on , vol.2,
no., pp.423-430, 3-5 Nov. 2008
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4669804&isnumber=4669739
2 Groselj, B.; Malluhi, Q.M., "Combinatorial optimization of distributed queries," Knowledge and Data Engineering, IEEE Transactions on , vol.7, no.6, pp.915-927, Dec 1995 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=476497&isnumber=10156
3 Haber, J.A.; Gerein, N.J.; Hatchard, T.D.; Versavel, M.Y., "Combinatorial discovery of new thin film photovoltaics," Photovoltaic Specialists Conference, 2005. Conference Record of the Thirty-first IEEE , vol.,
no., pp. 155-158, 3-7 Jan. 2005
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1488094&isnumber=31426
4 Kikutani, Y.; Horiuchi, T.; Hisamoto, H.; Uchiyama, K.; Tokeshi, M.; Kitamori, T., "Integrating combinatorial synthesis on a single glass microchip," Microprocesses and Nanotechnology Conference, 2001 International ,
vol., no., pp.18-, 2001
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=984045&isnumber=21212
5 wang, F.K.; Richards, G.W., "Using combinatorial designs to construct partial concentrators,"
Communications, IEEE Transactions on , vol.39, no.7, pp.1141-1146, Jul 1991 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=87219&isnumber=2839
6 Jinrui, N.; Zhifu, W.; Qinglian, R., "Simulation and Analysis of Performance of a Pure Electric Vehicle with a Super-capacitor," Vehicle Power and Propulsion Conference, 2006. VPPC '06. IEEE , vol., no., pp.1-6, 6-8 Sept.
10
implican una alta gama de soluciones que a medida que crece el número de elementos a seleccionar se hacen imposible de contar.
El problema radica en que a mayor número de elementos a organizar, el espacio de las soluciones factibles a estos problemas crece de manera desmesurada, dificultando la obtención de la mejor solución (óptimo global) al problema asociado en un tiempo polinómico. Existen en la actualidad heurísticas asociadas a solucionar dichos problemas, los inconvenientes de estas es que no siempre garantizan la obtención del óptimo global, por lo general, obtienen una solución local y exigen un alto nivel computacional.
1.2. OBJETIVOS
1.2.1. Objetivo General
Diseñar e implementar una metaheurística basada en Autómatas Finitos Deterministas Multi – Objetivo que permita la optimización multi-objetivo de problemas combinatorios.
1.2.2. Objetivos Específicos
2006
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4211259&isnumber=4211250
7 Lim, A.; Fan Wang, "Multi-depot vehicle routing problem: a one-stage approach," Automation Science and Engineering, IEEE Transactions on , vol.2, no.4, pp. 397-402, Oct. 2005
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1514459&isnumber=32436
11
Definir un Autómata Finito Determinista Multi-objetivo (AFDM) que permita representar el espacio de soluciones factibles de un problema combinatorio multi- objetivo.
Definir e implementar una Metaheuristica de Intercambio Determinista sobre Autómatas (MIDA) basada en la teoría de los AFDM para la solución de problemas combinatorios en esquemas multi-objetivo.
Contrastar los resultados obtenidos por medio de la Metaheurística aplicada al problema clásico del agente viajero simétrico muli – objetivo con otras técnicas de solución de impacto mundial a problemas combinatorios.
1.3. CONTRIBUCIONES
A continuación se listan las contribuciones hechas por el presente trabajo de investigación:
1. Se diseño un Autómata que permite el modelado del espacio de soluciones factibles de un problema combinatorio multi – objetivo. Debido a esto, se puede definir y describir el espacio de soluciones factibles de un problema combinatorio multi – objetivo evitando así verificar la factibilidad de las soluciones encontradas.
Adicionalmente, el espacio de soluciones factibles se encuentra implícito en memoria minimizando el esfuerzo computacional al momento de llevar a cabo el proceso de optimización del problema.
12
2. Se diseño e implemento una Metaheurística de complejidad polinomial basada en la teoría de los Autómatas Finitos Deterministas que permite optimizar problemas combinatorios en esquemas multi – objetivo.
3. Se mejoraron soluciones propuestas por otras técnicas de impacto mundial a instancias de problemas combinatorios multi – objetivo.
1.4. ANTECEDENTES
Hablar de antecedentes en esta investigación implica explorar dos campos fundamentales:
La representación del espacio de soluciones factibles de problemas combinatorios mediante estructura de datos y las metaheurísticas para la optimización de problemas combinatorios multi – objetivo.
La representación del espacio de soluciones factibles de un problema combinatorio no ha sido de mucho interés en el ámbito investigativo. Chaiyaratana(1997)8 propuso representar el espacio de soluciones factibles de problemas combinatorios utilizando vectores. Cada vector representa una codificación (cromosoma). Recientemente Niño y Ardila (2009)9 proponen un Autómata Finito Determinista de Intercambio (AFD – I) para la representación del espacio de soluciones factibles de un problema combinatorio.
Consecuentemente, se facilitó la optimización en segundos de problemas combinatorios
8 Chaiyaratana, N.; Zalzala, A.M.S.; , "Recent developments in evolutionary and genetic algorithms: theory and applications," Genetic Algorithms in Engineering Systems: Innovations and Applications, 1997. GALESIA 97. Second International Conference On (Conf. Publ. No. 446) , vol., no., pp.270-277, 2-4 Sep 1997 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=681037&isnumber=14959
9Niño, E.;Ardila, J. , Algoritmo Basado en Automatas Finitos Deterministas para la obtención de óptimos globales en problemas de naturaleza combinatoria. Revista de Ingeniería y Desarrollo. No 25. pp 100 – 114.
ISSN 0122 - 3461
10 Dorigo, M.; Maniezzo, V.; Colorni, A.; , "Ant system: optimization by a colony of cooperating
13
cuyas cotas superiores se encuentran en el orden exponencial. Sin embargo, esta estructura presenta la limitante de poder modelar solo espacios de soluciones factibles de problemas combinatorios en mono – objetivo. Además de estas contribuciones, no ha habido aportes a este tema en el área de optimización combinatoria. Esto es debido a que, los esfuerzos se centran más en la inteligencia y métricas aplicadas a las técnicas metaheurísticas que en la definición y descripción del espacio de soluciones factibles a explorar.
En la actualidad, existen una gran cantidad de técnicas metaheurísticas cuyos propósitos se centran en aproximar las soluciones a los óptimos del problema. Dorigo (1996) 10propuso en su tesis doctoral un algoritmo basado en Colonia de Hormigas (ACO). Su técnica fue inspirada en el comportamiento de las hormigas naturales. A partir de entonces, se han implementado una serie de algoritmos basados en este sistema ampliándolo a problemas multi – objetivo (MOACO – “Multi – objective Optimization Ant Colony Optimization).
Mariano y Morales (1999)11 proponen un Algoritmo Multi – objetivo (MOAQ – “Multi – objective Ant – Q”) para solucionar el problema de redes de distribución de agua. La idea básica de MOAQ es asignar una familia de agentes a cada uno de los objetivos del problema, y ver cómo se comportan el resto de funciones objetivos cada vez que un agente optimiza una función. Iredi (1998)12 introduce una técnica general para solucionar el problema multi – objetivo del ruteo de vehículos, la técnica es llamada Hormiga – Bicriterio (BCA). BCA utiliza una matriz de feromona por cada objetivo del problema, así si el problema tienen n objetivos, existirán n matrices de feromona. Iredi determina una heurística propia que forza a las hormigas a visitar diferentes regiones del Frente de Pareto.
10 Dorigo, M.; Maniezzo, V.; Colorni, A.; , "Ant system: optimization by a colony of cooperating agents," Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on , vol.26, no.1, pp.29-41,
Feb 1996
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=484436&isnumber=10246
11 C.E. Mariano, E. Morales, A multiple objective Ant-Q algorithm for the design of water distribution irrigation networks, Technical Report HC-9904, Instituto Mexicano de TecnologÍa del Agua, Mexico, June, 1999.
12 A.E. Hans, Multicriteria optimization for highly accurate systems, in: W. Stadler (Ed.), Multicriteria Optimization in Engineering and Sciences, Mathematical Concepts and Methods in Science and Engineering, vol. 19, Plenum Press, 1988, pp. 309–352.
14
Doerner (2004)13 propone una técnica llamada Optimización de Pareto con Colonia de Hormigas (PACO – “Pareto – Ant Colony Optimization”). En esta técnica se utilizan varias matrices de feromona (una para cada objetivo), adicionalmente, un vector de pesos se encarga de mezclar proporciones de la matrices de feromona para determinar la próxima ciudad a visitar por parte de cada hormiga a partir de una ciudad origen. Ponderar las soluciones ayuda a explorar nuevas regiones en el Frente de Pareto. Gambardella (1999)14 propone un algoritmo para solucionar el problema de ruteo de vehículos llamado (MACS- VRPTW – “Multiple ant colony system for vehicle routing problem with time Windows”).
MACS propone n colonia de hormigas para n funciones objetivo. Cada colonia se encarga de optimizar una función objetivo del problema. Cardoso (2003)15 propone un algoritmo para la optimización de redes de computación (MONA – “Multi – Objective Network ACO”). Para Cardoso, cada hormiga es un mensaje a trasmitir por la red, el mensaje es enrutado teniendo en cuenta las múltiples matrices de feromona de acuerdo al número de objetivos del problema. Doerner (2003)16 propuso un esuqema competitivo de Colonias de Hormigas llamado Competencia de Hormigas (CA – “COMPETants”). Este problema inicialmente fue aplicado en problemas con dos objetivos, por cada objetivo existe una colonia de hormigas, la colonia que obtenga las mejores soluciones en una iteración, se tendrá mayor cantidad de hormigas siguiente iteración. Dado el apogeo de las técnicas evolutivas, Ideri17 propone un ACO basado en BCA y técnicas evolutivas llamado BicriterionMC (BCM). Es una generalización del BCA aplicado a problemas multi – objetivo utilizando cruzamiento de soluciones para evitar óptimos locales. La tabla 1 ilustra la taxonomía de los algoritmos previamente mencionados.
13 K. Doerner, W.J. Gutjahr, R.F. Hartl, C. Strauss, C.Stummer, Pareto ant colony optimization: A metaheuristic approach to multiobjective portfolio selection, Annals of Operations Research 131 (1–4) (2004) 79–99.
14 L. Gambardella, E. Taillard, G. Agazzi, MACS-VRPTW: A multiple ant colony system for vehicle routing problems with time windows, in: D. Corne, M. Dorigo, F. Glover (Eds.), New Ideas in Optimization, McGraw- Hill, 1999, pp. 73–76.
15 P. Cardoso, M. Jesu´ s, A. Ma´rquez, MONACO-multi-objective network optimisation based on an ACO, in:
Proc. X Encuentros de Geometrı´a Computacional, Seville, Spain, June 16–17, 2003.
16 K. Doerner, R.F. Hartl, M. Teimann, Are COMPETants more competent for problem solving?—The case of full truckload transportation, Central European Journal of Operations Research 11 (2) (2003) 115–141.
17S. Iredi, D. Merkle, M. Middendorf, Bi-criterion optimization with multi colony ant algorithms, in: Proc. First International Conference on Evolutionary Multi-criterion Optimization (EMO’01), Lecture Notes in Computer Science 1993, 2001, pp. 359–372.
15
Tabla 1. Taxonomía para los MOACOS. Clasificación de los problemas basados en colonias de hormigas para la optimización multi – objetivo de problemas combinatorios.
Una sola matriz heurística Múltiple matrices heurística
Una sola matriz de feromona. MOACOM MOAQ - MACS
Múltiples matrices de feromona. PACO MONA
BicriterionAnt (BA) UnsortBicriterion (USBC)
CompentAnts (CA) MACS – VRPTW
Técnicas modernas como SPEA218 y NSGA – II permiten la optimización de problemas combinatorios mediante el manejo de frentes elitistas con el objetico de converger rápidamente a soluciones óptimas. Sin embargo, una rápida convergencia puede culminar con la obtención de óptimos locales.
Por otra parte, técnicas clásicas como las estrategias de búsqueda local con utilizadas para la optimización multi – objetivo actual. Una de las mas poderosas técnicas es la de Recocido Simulado Multi – Objetivo (MOSA – “Multi – objective simulated annealing”).
Los MOSA son técnicas fiables porque evitan en la medida de lo posible óptimos locales.
Serafini (2008)19 diseño una aproximación a MOSA. Serafinis MOSA (SMOSA) es una estrategia que optimiza problemas combinatorios asignando un peso a cada una de las funciones en cada iteración. La figura 1 ilustra la dirección aleatoria de búsqueda de SMOSA. Ulungu (1999)20 propone la optimización de un problema combinatorio multi – objetivo mediante la optimización de cada objetivo por medio de una corrida de un SA.
Para mantener la diversidad de las soluciones no dominadas, UMOSA trabaja con un vector
18 Tse Guan Tan; Hui Keng Lau; Teo, J.; , "Cooperative coevolution for pareto multiobjective optimization: An empirical study using SPEA2," TENCON 2007 - 2007 IEEE Region 10 Conference , vol., no., pp.1-4, Oct. 30
2007-Nov. 2 2007
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4429134&isnumber=4428770
19 Bandyopadhyay, S.; Saha, S.; Maulik, U.; Deb, K., "A Simulated Annealing-Based Multiobjective Optimization Algorithm: AMOSA," Evolutionary Computation, IEEE Transactions on , vol.12, no.3, pp.269-
283, June 2008
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4358775&isnumber=4531586
16
de pesos asignado de manera balanceada a cada uno de los objetivos. La búsqueda de óptimos de UMOSA puede apreciarse en la figura 2.
Figura 1. Búsqueda aleatoria de soluciones por parte de SMOSA.
Czyzak (1998) 21 propone un algoritmo de recocido simulado llamado CMOSA. CMOSA es una técnica de SA que trabaja con direcciones adaptativas de acuerdo a los valores de las funciones objetivos. El comportamiento de CMOSA puede apreciarse en la figura 3
Figura 2. Búsqueda ajustada de soluciones por parte de UMOSA.
20 E. Ulungu, J. Teghem, P. Fortemps, and D. Tuyttens, “MOSA method: A tool for solving multiobjective combinatorial optimization problems,” Journal of Multi-Criteria Decision Analysis, vol. 8, no. 4, pp. 221–236, 1999.
21 P. Czyzak and A. Jaszkiewicz, “Pareto simulated annealing - a metaheuristic technique for multiobjective combinatorial optimization,” Journal of Multi-Criteria Decision Analysis, vol. 7, no. 1, pp. 34–37, Dec 1998.
17
Figura 3. Búsqueda adaptativa de soluciones por parte de CMOSA.
Recientemente Li y Landa – Silva (2008) diseñaron una estrategia basada eb Algoritmos Evolutivos y MOSA. Un Algoritmo de Recocido Simulado Evolutivo llamado EMOSA.
EMOSA aprovecha las ventajas de ajuste de UMOSA y las cualidades adaptativas de CMOSA. La dirección de búsqueda de EMOSA puede apreciarse en la figura 4.
Figura 4. Búsqueda aleatoria de soluciones por parte de SMOSA.
Aún cuando existen muchas técnicas asociadas a la solución de problemas combinatorios multi – objetivo, predominan las falencias en los tiempos de respuestas, como por ejemplo los algoritmos MOSA. Adicionalmente, la sensibilidad de las variables de salida con respecto a los parámetros del algoritmo, son un factor determinante en la consecución de
18
las soluciones óptimas. Muchas veces establecer los valores a los parámetros de un algoritmo (como por ejemplo ACO) exige un análisis fuerte del problema.
19
2. MARCO TEORICO
Un aspecto diario de la ingeniería es el de enfrentarse a problemas cada vez más complejos que implican ser resueltos o expresados como problemas de optimización. Algunos de estos problemas son solucionados con técnicas tradicionales de la programación lineal y otros son de naturaleza no lineal. Dentro de todo este conjunto de problemas, existe un grupo el cual para altos volúmenes de información su solución es difícil de encontrar en tiempo polinomial. Estos tipos de problemas se denominan No Polinomiales (NP). Aún más interesante es el factor de optimizar a la vez más de un objetivo, como suele suceder en la realidad. Existen diversas técnicas que permiten la optimización de problemas de ingenieria, entre las cuales sobresalen las técnicas metaheurísticas. Las técnicas metaheurísticas brindan apoyo a la solución de problemas diarios de la ingeniería aunque las soluciones encontradas mediante el uso de estas son sensibles a los parámetros de entrada. El presente capitulo tiene como objetivo mostrar las definiciones relevantes en la construcción y definición de la teoría de Autómatas Finitos Deterministas Multiobjetivo y la construcción de la Metaheurística MIDA.
2.1. OPTIMIZACION
En el campo de la ingeniería, solucionar los problemas no es suficiente; la solución encontrada debe ser la mejor posible. En otras palabras, se debe encontrar la solución óptima del problema22. Se entiende por solución óptima aquella que cumple con las restricciones propuestas por el problema y adicionalmente representa la mejor solución de todas las posibles soluciones factibles. Las soluciones factibles son todas aquellas
22 DONOSO, Yezid. FABREGAT, Ramón. (2007). Multi-Objective Optimization in Computer Networks Using Metaheuristics (pp. 1 - 3). New York – United States: Aurbach Publications.
20
soluciones que cumplen con las restricciones impuestas por el problema.
Consecuentemente, la factibilidad excluye a todas las soluciones que no cumplen con las restricciones propuestas por el problema, a este conjunto de soluciones se les conoce como soluciones no factibles.
2.1.1. OPTIMIZACION MONO-OBJETIVO
Los problemas de optimización son comúnmente representados en un esquema mono- objetivo. En otras palabras, el proceso consiste en optimizar una sola función objetivo teniendo en cuenta una serie de restricciones que están basadas en restricciones del mundo real23. Un problema de optimización mono-objetivo es expresado de la siguiente manera:
[ ] ( ) (1)
Sujeto a:
( ) (2)
( ) (3)
En este caso, la función a optimizar (maximizar ó minimizar) es ( ), donde el vector es el conjunto de variables independientes. Las funciones ( ) y ( ) son las restricciones del modelo.
23 Ibid 1.
21
Para este problema existen tres conjuntos soluciones: el conjunto universal, el cual está compuesto por todos los posibles valores de sean factibles ó no. El conjunto de soluciones factibles, el cual está compuesto por todos los valores de que cumplen con las restricciones ( ) y ( ). Por último, el conjunto de soluciones optimas, el cual está compuesto por todos los valores de que, en adición de ser factibles, alcanza el valor óptimo (mínimo ó máximo) de la función ( ), sea en un intervalo específico [ ] ó en un contexto global ( ). Los tres conjuntos mencionados se pueden apreciar en la figura 5.
Figura 5. Conjuntos soluciones para un problema mono-objetivo. Los tres posibles conjuntos soluciones en un problema mono-objetivo, lo ideal es alcanzar el conjunto de soluciones óptimas.
2.1.2. OPTIMIZACION MULTI-OBJETIVO
Si es cierto que los esquemas mono-objetivo ayudan a la solución de problemas, en la vida real cuando se desea solucionar un problema muchas veces interesa optimizar más de una
Conjunto Universal Soluciones factibles
Soluciones optimas Soluciones no factibles
22
función24. Debido a que existen varias funciones a optimizar, hablamos de un problema de optimización multi-objetivo. Un problema de optimización multi-objetivo es expresado de la siguiente manera:
[ ] ( ) { ( ) ( ) ( )} (4)
Sujeto a:
( ) (5)
( ) (6)
En este caso, las funciones a optimizar (cada una puede ser maximizada ó minimizada) son el conjunto de funciones ( ), donde es el conjunto de variables independientes. Las funciones ( ) y ( ) son las restricciones del modelo. Debido a que existe más de una función a optimizar, es posible que la mejora de una perjudique al resto de funciones.
2.1.2.1. FRENTE DE PARETO (FP)
La optimización de un problema multi-objetivo es completamente diferente a la de un problema mono-objetivo. En un problema mono-objetivo se busca la mejor solución de todas y bajo este esquema solo existe un punto de comparación por el cual se decide si una solución es mejor que otra25, por ejemplo, supongamos el conjunto de soluciones de la figura 6, cada solución puede ser contrastada con el resto de soluciones mediante un único
24 Ibid 2.
25 GEN, Mitsuo. CHENG, Runwei. (2000). Genetic Algorithms & Engineering Optimization (pp. 97 - 106). New York – United States: Wiley-Interscience Publications.
23
valor. En el caso de que las soluciones correspondieran a un problema de minimización, la mejor solución sería por ser el menor del conjunto. Contrario a esto, si el problema fuese de maximización, la mejor solución sería por ser el mayor del conjunto. En un problema multi-objetivo no existe un único punto de referencia por el cual se pueda decir que una solución es mejor que otra, por ejemplo, supongamos las soluciones de la figura 7 para un problema con dos objetivos. Si todos los objetivos se minimizarán, no se puede determinar entre las dos primeras soluciones cual es mejor ya que y , sin embargo, las dos primeras soluciones son mejores que la tercera, ya que para este caso en particular ambas funciones son menores. En este caso se dice que la función 3 es dominada por la solución 1 y la solución 2.
Figura 6. Conjunto de soluciones mono-objetivo. Tres soluciones para un problema particular mono- objetivo. Si se tratase de un problema de maximización la mejor solución sería . En el caso contrario, si el problema fuese de minimización, la mejor solución sería .
Figura 7. Conjunto de soluciones multi-objetivo. Tres soluciones para un problema particular con dos objetivos.
𝑓
𝑓 5
𝑓
𝑓 𝑓 4
𝑓 𝑓 5
𝑓 6 𝑓 6
24
Formalmente, se dice que una solución domina a una solución si y solo si:
( )( )( ) (7)
Formalmente, se dice que una solución no domina a una solución si y solo si:
( )( )( ) (8)
El conjunto solución de un problema multi-objetivo se conoce con el nombre de soluciones no dominadas26, en el caso particular de dos y tres objetivos, las soluciones no dominadas forman una gráfica conocida con el nombre de Frente de Pareto (FP)27, un ejemplo de FP puede ser apreciado en la figura 8.
Figura 8. FP Bi-Objetivo. Conjunto de soluciones no dominadas para un problema en particular con dos objetivos.
26 DONOSO, Yezid. FABREGAT, Ramón. (2007). Multi-Objective Optimization in Computer Networks Using Metaheuristics (pp. 1 - 3). New York – United States: Aurbach Publications.
27 GEN, Mitsuo. CHENG, Runwei. (2000). Genetic Algorithms & Engineering Optimization (pp. 97 - 106). New York – United States: Wiley-Interscience Publications.
25 2.1.2.1.1. METRICAS
Las métricas permiten medir la calidad de las soluciones no dominadas encontradas de manera singular ó en contraste con otro conjunto solución. Obviamente esto dependerá del tipo de métrica que se utilice. A continuación se mencionan algunas relevantes:
2.1.2.1.1.1. Generación de Vectores no Dominados (GVND)28
La métrica GVND, índica el número de elementos no dominados generados por el algoritmo, es decir nos muestra cuántos elementos hay en el FP, esto es:
| | (9)
2.1.2.1.1.2. Distancia Generacional (DG)29
La métrica DG, nos índica qué tan lejos está el FP Aproximado ( ) del FP Real ( ), esto es:
√∑| |
| |
(10)
28 TOVAR, Luis; CORONELL, Margarita; DONOSO Yezid. “Optimización multiobjetivo en redes ópticas con transmisión Multicast, utilizando algoritmos evolutivos y lógica difusa”. Ingeniería & Desarrollo. Número 21.
Enero-Junio 2007.
29 Ibid 7.
26
Donde es la mínima distancia Euclidiana entre el i-ésimo elemento del FP aproximado con los elementos del FP real.
2.1.2.1.1.3. Distancia Generacional Inversa (DGI)30
La métrica DG, nos índica qué tan lejos está el FP de un FP de Referencia , esto es:
( )
| |∑
| |
(11)
Donde es la mínima distancia Euclidiana entre el i-ésimo elemento del FP con los elementos del FP de Referencia .
2.1.2.1.1.4. Espaciamiento ( ).31
La métrica , nos índica qué tan bien están distribuidas las soluciones sobre el FP.
Matemáticamente se define como:
30 E. Zitzler, L. Thiele, M. Laumanns, C. M. Fonseca, and V. G. da Fonseca, “Performance assessment of multiobjective optimizers: an analysis and review.” IEEE Transactions on Evolutionary Computation, vol. 7, no. 2, pp. 117–132, 2003.
31 TOVAR, Luis; CORONELL, Margarita; DONOSO Yezid. “Optimización multiobjetivo en redes ópticas con transmisión Multicast, utilizando algoritmos evolutivos y lógica difusa”. Ingeniería & Desarrollo. Número 21.
Enero-Junio 2007.
27
√(∑| |( ̅ )
| | ) (12)
Donde (∑ | ( ) ( )|) con y | | y ̅ es el promedio de todos los .
Para esta métrica un valor de 0 significa que todos lo elementos de están equidistantemente espaciados. Por lo tanto, entre menor sea el valor de , mejor es la distribución de los elementos del .
2.1.2.2. TECNICAS CLASICAS
Las técnicas clásicas de optimización multi-objetivo funcionan aproximando las soluciones del problema planteado mediante la optimización de un problema mono-objetivo32. A continuación se mencionan dos de las más conocidas:
2.1.2.2.1. Suma con Pesos
Este método consiste en crear un modelo mono-objetivo mediante la ponderación de pesos en las n funciones objetivos del problema. A través de la suma con pesos, la expresión 4 puede ser redefinida como:
32 DONOSO, Yezid. FABREGAT, Ramón. (2007). Multi-Objective Optimization in Computer Networks Using Metaheuristics (pp. 19 - 32). New York – United States: Aurbach Publications.
28
[ ] ( ) ∑
(13)
Sujeto a:
( ) (14)
( ) (15)
∑
(16)
Como puede apreciarse en 9, ( ) es una combinación lineal de ( ) debido a la restricción 12.
2.1.2.2.1. – Restricción
Esta técnica consiste en crear un modelo mono-objetivo optimizando solo una función de 4 y convirtiendo el resto de funciones en restricciones del problema. A través de – Restricción la expresión 4 se convierte en:
[ ] ( ) (17)
Sujeto a:
( ) (18)
29
( ) (19)
( ) (20)
En este caso la función ( ) es la única a ser optimizada. El resto de funciones objetivos se convierten en restricciones del problema. Para cada ( ) existe un valor que la acota. Cuando es alterado algún se obtienen nuevas soluciones para 13.
2.2. OPTIMIZACION COMBINATORIA
La optimización combinatoria es un campo de las matemáticas aplicadas, que combina técnicas de combinatoria, programación lineal y la teoría de algoritmos para resolver problemas sobre estructuras discretas.33
En esta área se estudian técnicas que permitan resolver problemas cuya naturaleza son NP, y no es posible encontrar una solución de manera exhaustiva.
Los problemas de decisión hacen parte de esta rama de la optimización. Uno de los problemas más representativos en este género es el Problema del Agente Viajero (Traveling Salesman Problem). Este problema consiste en que partiendo de una ciudad de un conjunto de ciudades, se vuelva al origen pasando exactamente una vez por cada una de las ciudades con el menor costo posible. El modelo matemático que representa el problema es el siguiente:
33 Hincapie, Ricardo; RIOS, Carlos y GALLEGO, Ramón. “Técnicas Heurísticas aplicadas al problema del cartero viajante (TSP)”. SCIENCIA ET TECHNICA. Número 24. Marzo 2004.
30
[ | ] ( ) ∑
( )
(21)
Sujeto a:
∑
{ ( ) } (22)
∑
{ ( ) } (23)
∑ | | | |
{( ) ( )} (24)
El Problema del Agente Viajero ó TSP (por sus siglas en inglés) ha sido sin duda uno de los problemas más estudiados a nivel mundial por su alto campo de acción: administración de depósitos34, optimización de vías férreas35, optimización en redes de computación36,
34 Oberlin, P.; Rathinam, S.; Darbha, S., "A transformation for a Multiple Depot, Multiple Traveling Salesman Problem," American Control Conference, 2009. ACC '09. , vol., no., pp.2636-2641, 10-12 June 2009
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=5160665&isnumber=5159764
35 Pop, P.C.; Pintea, C.-M.; Pop Sitar, C.; Dumitrescu, D., "A Bio-Inspired Approach for a Dynamic Railway Problem," Symbolic and Numeric Algorithms for Scientific Computing, 2007. SYNASC. International Symposium on , vol., no., pp.449-452, 26-29 Sept. 2007
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4438136&isnumber=4438061
36 Jiu-Sheng Chen; Xiao-Yu Zhang; Jing-Jie Chen, "An elastic net method for solving the traveling salesman problem," Wavelet Analysis and Pattern Recognition, 2007. ICWAPR '07. International Conference on , vol.2, no., pp.608-612, 2-4 Nov. 2007
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4420741&isnumber=4420716
31
benchmarking37, simulación de campos eléctricos38, fabricación de vidrio39, entre otros.
Debido al gran impacto que tiene el TSP en diferentes campos de la ciencia, es objeto de estudio en la presente tesis.
Los problemas combinatorios pueden ser clasificados en dos grandes grupos considerando la existencia ó no de algoritmos polinomiales para resolver cada tipo de problema. El primero es el problema tipo polinomial (P) para el cual existen algoritmos con esfuerzos computacionales de tipo polinomial para encontrar la solución óptima; y el segundo es el tipo No-Polinomial (NP) para el cual no se conocen algoritmos con esfuerzos computacionales de tipo polinomial para encontrar la solución óptima40, en la figura 9 puede apreciarse esta definición.
Figura 9. Clasificación de los problemas combinatorios. Los problemas combinatorios pueden ser de tipo P ó NP dependiendo de la existencia de un algoritmo que en tiempo computacional brinde la solución optima.
37 Lishan Kang; Aimin Zhou; McKay, B.; Yan Li; Zhuo Kang, "Benchmarking algorithms for dynamic travelling salesman problems," Evolutionary Computation, 2004. CEC2004. Congress on , vol.2, no., pp. 1286-1292 Vol.2, 19-23 June 2004
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1331045&isnumber=29392
38 Chun-Bo Feng; Min Jiang; Jinsong Feng, "Solving traveling salesman problem by simulated electric field method," Intelligent Processing Systems, 1997. ICIPS '97. 1997 IEEE International Conference on , vol.2, no., pp.1332-1336 vol.2, 28-31 Oct 1997
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=669214&isnumber=14755
39 Richard, P.; Falcon Chang, M.; Monmarche, N.; Proust, C., "Visiting the traveling salesman problem with Petri nets and application in the glass industry," Emerging Technologies and Factory Automation, 1996. EFTA '96. Proceedings., 1996 IEEE Conference on , vol.1, no., pp.238-242 vol.1, 18-21 Nov 1996
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=573298&isnumber=12362
40 HINCAPIE, Ricardo; RIOS, Carlos; GALLEGO, Ramón,Ph.D. Técnicas Heuristicas aplicadas al problema del cartero viajante (TSP). SCIENCIA ET TECHNICA. Número 24. MARZO 2004.
PROBLEMAS COMBINATORIOS
TIPO NP - (TIPO NO POLINOMIAL) TIPO P - (TIPO
POLINOMAL)
32 2.2.1. TECNICAS HEURISTICAS
Las técnicas heurísticas son algoritmos que encuentran soluciones de buena calidad para problemas combinatorios complejos; es decir, para problemas tipo NP. Los algoritmos heurísticos son más fáciles de implementar y encuentran buenas soluciones con esfuerzos computacionales relativamente pequeños; sin embargo, renuncian (desde el punto de vista teórico) a encontrar la solución óptima global de un problema. En problemas de gran tamaño rara vez un algoritmo heurístico encuentra la solución óptima global. Sin embargo, las técnicas heurísticas han sido utilizadas para la solución de problemas combinatorios, por ejemplo: planeación de actividades41, servicios de ruteo42, planeación de sistemas43, optimización en la utilización de espacios44, entre otros.
2.2.2. TECNICAS METAHEURISTICAS
41 Wen-Xiang Gu; Jin-Li Li; Ming-Hao Yin; Jun-Shu Wang; Jin-Yan Wang, "A novel causal graph based heuristic for solving planning problem," Machine Learning and Cybernetics, 2008 International Conference on , vol.4, no., pp.2223-2228, 12-15 July 2008
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4620775&isnumber=4620699
42 Xin Yuan; Xingming Liu, "Heuristic algorithms for multi-constrained quality of service routing," INFOCOM 2001. Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings.
IEEE , vol.2, no., pp.844-853 vol.2, 2001
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=916275&isnumber=19794
43 Yang Li; Wei-Xiang Gu; Ming-Hao Yin; Yuan Wasng, "Planning system based on heuristic," Machine Learning and Cybernetics, 2005. Proceedings of 2005 International Conference on , vol.3, no., pp.1385-1390 Vol. 3, 18-21 Aug. 2005
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1527160&isnumber=32625
44 Ha, C.; Kuo, W., "Multi-path heuristic for redundancy allocation: the tree heuristic," Reliability, IEEE Transactions on , vol.55, no.1, pp. 37-43, March 2006
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1603891&isnumber=33703
33
El termino metaheurística fue acuñado en el mismo artículo que la metaheurtística Búsqueda Tabú (Glover, 1986)45. Una metaheurística es una estrategia maestra que permite aproximar las soluciones a las soluciones óptimas de un problema combinatorio.
2.2.2.1. ALGORITMOS GENETICOS46
Son herramientas matemáticas que imitan a la naturaleza e intentan resolver problemas complejos empleando el concepto de la evolución. El algoritmo ejecuta una búsqueda simultánea en diferentes regiones del espacio factible, realiza una intensificación sobre algunas de ellas y explora otros subespacios a través de un intercambio de información entre configuraciones. Emplea tres mecanismos básicos que son: La selección, el crossover y la mutación:
1. Selección: Es el operador genético que permite elegir las configuraciones de la población actual que deben participar de la generación de las configuraciones de la nueva población (nueva generación). Este operador termina después de decidir el número de descendientes que debe tener cada configuración de la población actual.
2. Crossover o “Recombinación”: Es el mecanismo que permite pasar información genética de un par de cromosomas originales a sus descendientes, o sea, saltar de un espacio de búsqueda a otro, generando de esta forma diversidad genética.
3. Mutación: Permite realizar la intensificación en un espacio en particular caminando a través de vecinos. Significa intercambiar el valor de un gene de un cromosoma en una población. En forma aleatoria, se elige un cromosoma como candidato, se genera un
45 GLOVER, Fred. LAGUNA, Manuel. (2007). “TABU SEARCH” (pp. 17 - 17). Boston – London: Kluwer Academic Publishers.
46 Ibid 19
34
número aleatorio y si es menor que la tasa de mutación (ρ<ρm), entonces se realiza la mutación. La tasa de mutación se elige del rango [0.001,0.05].
2.2.2.2. RECOCIDO SIMULADO47
Algoritmo de Metrópolis: La metodología de SA fue definida al inicio de los años 80, como una nueva herramienta para ser empleada en la solución de problemas combinatoriales de gran complejidad. Surgió del campo de la termodinámica como consecuencia de la comparación de los problemas formulados en este campo con los del campo de la investigación de operaciones, es una metodología simple y de gran potencialidad para ser aplicada a una gran variedad de problemas. La idea original que da lugar a esta metaheurística es el “algoritmo de Metrópolis”, el cual a su vez está basado en el “método de Monte-Carlo”, con el cual se estudian las propiedades de equilibrio en el análisis del comportamiento microscópico de los cuerpos.
El algoritmo de Metrópolis genera una secuencia de estados de un sólido, o sea, dado un sólido en un estado con energía , se genera el estado siguiente j mediante la aplicación de un mecanismo que transforma al estado siguiente a través de un pequeño disturbio. La energía del próximo estado es Ej; si la diferencia de energía ( ) es menor o igual a cero, el estado es aceptado. Si ocurre lo contrario, el estado se acepta con cierta probabilidad de acuerdo a la ecuación 25.
{
} (25)
Donde T es la temperatura, es una constante física conocida como constante de Boltzman. La regla aceptación descrita anteriormente es llamada Criterio de Metrópolis y el algoritmo como Algoritmo de Metrópolis. Si la disminución de la temperatura es hecha de
47 Ibid 20
35
manera paulatina, el sólido podrá alcanzar un estado de equilibro en cada nivel de temperatura. En el algoritmo de Metrópolis esto se consigue después de generar un gran número de transiciones en un nivel dado de temperatura.
Algoritmo de Simulated Annealing: Este algoritmo aplica una acción combinada del mecanismo de generación de alternativas y del criterio de aceptación. denota el valor del parámetro de control (temperatura) y el número de alternativas generadas en la k-ésima iteración del algoritmo. Inicialmente cuando T es grande, se aceptan grandes deterioros de la función objetivo; cuando T decrece, solamente se aceptan pequeños deterioros y finalmente cuando T tiende a cero, ningún deterioro es aceptado. Esta característica hace que el algoritmo SA sea diferente en relación con los algoritmos de óptimos locales. A partir del estado con costo ( ) se genera el estado con costo ( ) . El criterio de aceptación determina si este nuevo estado es aceptado; para esto se calcula la siguiente probabilidad:
{ } {
( ) ( ) { ( ) ( )
} ( ) ( )} (26)
La estrategia seguida en SA es partir de una temperatura alta, permitiendo aceptar soluciones de pobre calidad; posteriormente, se disminuye la temperatura y a la vez la posibilidad de aceptar las soluciones peores. Se empieza con una temperatura inicial y una velocidad de enfriamiento; la temperatura se calcula a partir de y la velocidad de enfriamiento después de haber hecho ( ) iteraciones en la temperatura .
2.2.2.3. COLONIA DE HORMIGAS (ACO) 48
48 Ibid 21
36
La optimización por ACO, es otra forma de imitar a la naturaleza en la forma que resuelve sus problemas, de la misma manera que lo intentan los métodos como los AG y el SA entre otros.
En este método las actividades de búsqueda son distribuidas entre “hormigas”, esto es, agentes con capacidades simples, que son similares al comportamiento de las hormigas verdaderas.
Uno de los problemas estudiados por los entomólogos es el de entender cómo unos insectos casi ciegos como las hormigas pueden establecer las rutas más cortas entre el nido y una fuente de comida y viceversa. Se encontró que el medio usado para intercambiar información entre los agentes sobre las rutas, consiste en rastros de feromonas. Una hormiga que se desplaza de un punto A a un punto B deja un rastro de feromonas (en distintas cantidades) en el suelo, marcando así el camino seguido.
Mientras que una hormiga solitaria vaga en forma aleatoria, una hormiga que encuentre un rastro puede decidir, con alta probabilidad, el seguirlo, aumentando el nivel de feromonas con la suya y volviéndola más fuerte. El comportamiento colectivo que se produce es una especie de comportamiento autocatalítico, donde mientras más hormiga siga el rastro, más atractivo se vuelve el camino para ser seguido.
En el problema del cartero viajante, una hormiga artificial es un agente que se mueve de una ciudad a otra, el agente escoge la ciudad a la cual se va a desplazar de acuerdo a una función probabilística que depende de la cantidad de feromonas dejada en ese trayecto y de una función heurística, la cual se define como una función de la distancia.
37
Inicialmente, m hormigas artificiales son localizadas en ciudades aleatorias, en cada unidad de tiempo ellas se mueven de una ciudad a otra actualizando el rastro de feromonas en los caminos usados, esto se considera como actualización local de rastro.
Cuando todas las hormigas han completado su tour, la hormiga que realizó el camino más corto, realiza una nueva actualización de feromonas, pero solo en los caminos que usó, esto es considerado como actualización global de rastro, esta actualización depende del inverso de la distancia recorrida por la hormiga.
Una hormiga k en la ciudad r, escoge irse para la ciudad s, entre las ciudades que no ha visitado de acuerdo con la siguiente fórmula probabilística:
{
{[ ( )] [ ( )] }
} (27)
τ(r,u) es la cantidad de rastro de feromona en el segmento de viaje (r,u), η(r,u) es una función heurística que es escogida para este caso como el inverso de la distancia entre r y u, a y b son parámetros que pesan la importancia de el rastro de feromona y de la función heurística, q es un valor escogido en forma aleatoria entre 0 y 1. S es escogida mediante una fórmula probabilística que favorece las ciudades cuya distancia sea más corta y tengan un alto nivel de rastro de feromona, ecuación (2).
38 ( ) {
[ ( )] [ ( )]
[ ( )] [ ( )]
} (28)
( ) es la probabilidad de que la hormiga k se mueva de la ciudad r a la ciudad s.
El rastro de feromona se actualiza tanto localmente como globalmente. La actualización global se hace para recompensar los caminos tomados por el mejor tour. Una vez que las hormigas artificiales han terminado sus tours, la mejor hormiga deposita una cantidad de feromona en los caminos visitados, la cantidad de feromona depositada e inversamente proporcional a la longitud del tour, mientras más corto el tour mayor la cantidad de feromona depositada, ecuación 29.
( ) ( )
( ) (29)
r es un factor entre 0 y 1 que representa la tasa de evaporación de la feromona para evitar que la feromona se acumule infinitamente y l es otro parámetro.
La actualización global es similar a un proceso de aprendizaje reforzado, donde las mejores soluciones tienen prioridad. La actualización local pretende evitar que un camino muy fuerte sea escogido por todas las hormigas, cada vez que una hormiga escoge un camino la cantidad de feromona en el camino es actualizada con la ecuación 30.
39
( ) ( ) (30)
es un parámetro.
2.2.2.4. BÚSQUEDA TABÚ (TS)49
Es un procedimiento metaheurístico utilizado para manejar un algoritmo heurístico de búsqueda local y así evitar que el proceso se detenga en un óptimo local. Por lo tanto, TS realiza una exploración a través del espacio de configuraciones delimitando adecuadamente los óptimos locales.
Para evitar que el proceso regrese a los óptimos locales y entre en un ciclo repetitivo, la búsqueda tabú clasifica los movimientos más recientes como “movimientos tabú”; estos prohíben que una configuración sea visitada nuevamente. Este método tiene dos tipos de memoria: Memorias de corto plazo y largo plazo. La de corto plazo contiene los eventos ocurridos recientemente y en la de largo plazo, se almacenan los datos de frecuencia de determinados eventos. La información de la memoria de largo plazo es fundamental para definir las estrategias de diversificación, las cuales permiten explorar otras regiones no visitadas anteriormente.
Cuando un movimiento ha sido clasificado como tabú y después de ser analizado produce una función objetivo mejor que un valor de referencia escogido (que puede ser una incúmbete u otra buena solución previamente encontrada), entonces se aplica la
49 Ibid 22