Source: https://www.slideshare.net/Slidemora/presentacin-de-tesis-am-mora
Timestamp: 2017-06-23 07:39:33+00:00

Document:
Super Mario (El Personaje y las Mar...
Evolving Bot AI in Unreal (Poster E...
Evolving the Cooperative Behaviour ...
Antonio Mora, PhD Researcher
Presentación en español de la Tesis de A.M. Mora.
Titulada "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobjetivo mediante el uso de Algoritmos de Optimización basados en Colonias de Hormigas"
Presentada el 5 de Mayo de 2009.
Con la venia del tribunal comenzaré la defensa de mi tesis. En primer lugar A continuación se definirá formalmente el problema a tratar en esta tesis, partiendo desde su definición general de PCO, hasta su modelización como PMCO-2C. El problema que nos ocupa en esta tesis es el llamado problema de camino óptimo (PCO). Su definición sería: … (contenido transparencia) … Incluso como parte del problema se pueden tener restricciones que limiten en cierta forma las soluciones, como el hecho de tener que pasar por determinados puntos obligatoriamente. En el PCM las distancia al destino es la suma de las distancias parciales entre cada dos puntos que se atraviesen en el camino desde el origen al destino. A continuación veremos las propiedades que tienen los PCOs. Los componentes finitos sería los puntos del problema. Los estados representan la serie de puntos atravesados en un determinado momento. La función de vecindad define el llamado vecindario de cada punto (puntos a los que se puede pasar en cada momento). El coste asociado al cambio de estado lo define la función a minimizar. La solución cumple con las restricciones o condiciones impuestas al principio. Una solución será mejor o peor en función de su coste. Este problema normalmente se resuelve en entornos modelados como grafos. De modo que se puede volver a definir como: Los arcos podrán tener una sola dirección o no ambas Conexo  cada nodo está comunicado con al menos otro (hay un camino entre cada par de nodos). Aunque es posible que no se pueda ir de un nodo a otro por restricciones Una solución es un camino dentro del grafo Cada solución tendrá asociado un coste, calculado como suma de los costes de moverse entre cada dos nodos dentro del camino solución. Los costes/pesos podrán ser vectores. TSP  circuito o ciclo que parte y llega a un mismo nodo y pasa una sola vez por cada uno de los demás. La función de coste suele ser la distancia entre cada dos nodos. VRP  dado un nodo central, encontrar el conjunto de rutas que pasan por todos los nodos y vuelven a éste, estando limitados los costes para cada ruta Camino mínimo  llegar de un nodo a otro con el menor coste posible La mejora de uno de ellos no implica una mejora en otro, e incluso puede significar un empeoramiento. Se hará por tanto una redefinición del problema... … tanto general, como del modelado como grafo. Los primeros algoritmos se diseñaron para resolver PCMs en los años 50. Bellman-Ford  Construye todos los caminos mínimos desde el nodo origen a todos los demás dentro del grafo. Puede trabajar con arcos con pesos negativos y con ciclos Dijkstra  similar al anterior, pero más eficiente. Tiene como condición que no haya pesos negativos Los algoritmos informados (los que usan heurísticas para guiar la búsqueda) aparecieron en los años 60-70 El máximo exponente de los algoritmos informados es el: A*  algoritmo que usa heurísticas para guiar la búsqueda Metaheurísticas son técnicas de propósito general utilizadas para guiar la búsqueda o construcción de soluciones, así como para la mejora de soluciones. Se aplican a problemas de difícil resolución, como problemas de optimización combinatoria. Utilizan conceptos de diversas ramas, como la biología, la física, las matemáticas,… OCH  es la que mejor se adapta a la resolución de los PCOs porque fue diseñada desde un principio para tratar con problemas que se pudiesen formular como grafos. De hecho en su primera concepción fue aplicada a la resolución del TSP. En la actualidad se adaptan otras metaheurísticas y se mejoran las ya aplicadas. Redefinición del problema (multiobjetivo, casos concretos, etc) El movimiento es la forma de acción fundamental junto con el fuego. Es la primera de las acciones de la maniobra militar. Con dicha acción, la unidad se acerca o aleja del enemigo o se mueve hasta un punto de objetivo. Se considerará una CIA como unidad, ya que es la entidad más pequeña con autonomía plena. Antes de realizar esa acción, se deben valorar dos criterios: rapidez y seguridad. El primero prima cuando hay una restricción de tiempo para llegar al destino o cuando no hay cobertura. Se buscarán los caminos más directos y menos costosos en general. El segundo tiene más prioridad cuando la misión es informar o no se conoce a ciencia cierta la situación del enemigo. Se buscará moverse por zonas ocultas. Hay que tenerlos siempre en cuenta los dos. PMCO-2C  Problema Militar de Camino Óptimo Bi-Criterio El movimiento es la forma de acción fundamental junto con el fuego. Es la primera de las acciones de la maniobra militar. Con dicha acción, la unidad se acerca o aleja del enemigo o se mueve hasta un punto de objetivo. Se considerará una CIA como unidad, ya que es la entidad más pequeña con autonomía plena. Antes de realizar esa acción, se deben valorar dos criterios: rapidez y seguridad. El primero prima cuando hay una restricción de tiempo para llegar al destino o cuando no hay cobertura. Se buscarán los caminos más directos y menos costosos en general. El segundo tiene más prioridad cuando la misión es informar o no se conoce a ciencia cierta la situación del enemigo. Se buscará moverse por zonas ocultas. Hay que tenerlos siempre en cuenta los dos. PMCO-2C  Problema Militar de Camino Óptimo Bi-Criterio Respecto a la Unidad: Salud/Energia  un número que representa el total de puntos de vida o estado de los vehículos Recursos  un número que representa los consumibles, comida, medicinas, etc No tiene armas porque la unidad únicamente se mueve, no ataca La salud también merma por cansancio, heridas, etc, son las llamadas ‘bajas de no combate’ Hemos implementado un mini-simulador para crear y editar mapas, además de la posibilidad de ejecutar los algoritmos y visualizar las soluciones obtenidas. Los colores indican el tipo de la celda: Marrón  normal/tierra, dificultad mínima para atravesarla Azul  agua. La mayor dificultad Verde  bosque, vegetación. Mayor dificultad y proporciona ocultación Negro  obstáculo. La unidad no puede atravesarlo Los tonos dentro del mismo color indican altura, de forma que a mayor altura más oscuro será el color (siguiendo el esquema de los tonos hipsométricos), aunque en ellos el agua se representa al revés (oscuro es profundo) y aquí sigue el mismo esquema que lo demás. Los subtipos se representan con cambios en el diseño de la celda: Borde negro  punto de origen (posición de la unidad) Borde amarillo  punto de destino Borde rojo  enemigo El color rojo de algunas celdas indica su letalidad debida al impacto de armas enemigas, cuanto más rojo sea, mayor daño producirá a la unidad si las atraviesa. Por tanto, en este mapa (de 30x30) se puede ver un bosque con el punto de destino, un río y un lago (con diferentes profundidades), un monte, una sima y un obstáculo. Además hay un enemigo batiendo una zona con sus armas. Existen una serie de propiedades y funciones que aportan realismo al modelado del problema, lo hacen más fiel a la realidad. En el mapa de la izquierda se puede ver una zona con mucha vegetación y en medio un lago con varios ríos. Existen dos enemigos. La unidad está situada (punto origen) en la parte noroeste y debe ir hacia el sureste (punto destino). A la derecha se puede ver la capa de información subyacente que modela dicho mapa. La línea de visión  es lo que puede ver un enemigo. Es obstruida por celdas con altura superior a aquella en la que está situado el enemigo. También por celdas de tipo bosque si son tan altas como la suya o si la unidad está dentro de ellas. La capacidad de adquisición  es la distancia máxima a la que una unidad puede ver. Limita la línea de visión y es el radio de exploración de la unidad cuando no hay enemigo conocido en el mapa. Son 9 Km en el mundo real  18 celdas. Los obstáculos naturales  los constituye la máxima diferencia de alturas que la unidad puede atravesar. Son distintos de los artificiales, los cuales los define el enemigo y se señalan con celdas negras. El coste en recursos depende del tipo de las celdas que atraviesa la unidad y sus diferencias de altura (mayor si se pasa de una más baja a otra más alta). El coste en energía es la suma de la letalidad y el coste en energía que tenga asociado la celda (bajas de no combate). Hablamos de ‘rápidez’ como bajo coste en recursos porque los recursos son la dificultad de atravesar la celda, de forma que, a más dificultad, menos velocidad (considerando velocidad constante). Además, si la unidad atraviesa menos celdas, menos coste de recursos habrá, lo cual corresponde a un camino más directo. Hablamos de ‘seguridad’ como bajo coste en salud (energía) y además el evitar moverse por zonas visibles (para los enemigos). Los criterios son independientes porque generalmente un camino rápido será inseguro (el enemigo verá a la unidad más tiempo) y viceversa, pero esto no siempre es así, pudiendo tener un camino rápido y a la vez seguro. La prioridad la define el usuario, de modo que podrá ser el camino más rápido (menor coste en recursos), el más seguro (menor coste en energía) o uno que combine ambos criterios en cierta proporción De hecho inicialmente la OCH se planteó como resolución del TSP (un PCO) A continuación se definirán los problemas de optimización multiobjetivo, formulándolos formalmente, dado que el problema que se trata en este estudio es multiobjetivo. Dónde F(x) es la función global a optimizar, la cual está compuesta de k funciones objetivo. Cada solución será un vector de variables, dónde cada una optimiza una de las funciones objetivo. Dado que se tienen varios objetivos a optimizar, A la hora de comparar la bondad de dos soluciones se introduce el concepto de dominancia, la cual se define con la fórmula… … de modo que una solución a dominará a una solución b si se intenta minimizar las funciones objetivo (y se nota así), si el valor del vector solución a para todas las funciones es menor o igual que el valor del vector solución b para todas ellas, y existe al menos una para la que el valor de a es menor que el valor de b . Si no se cumple esta condición, ambas soluciones serán consideradas ‘igual de buenas’. No hay otras soluciones que las dominen. Aquí se muestra un ejemplo para dos objetivos. Se puede ver gráficamente que las soluciones a y b son no dominadas: a es mejor que b respecto a la función objetivo f2 b es mejor que a respecto a la función objetivo f1 ambas soluciones dominan a c (son mejores en las dos funciones objetivo) En este caso, no se busca el máximo número de soluciones, sino unas cuantas, debido a las propiedades del problema y al tipo de aplicación que es (la utilizará un usuario final que asignará una prioridad a los objetivos y elegirá una única solución. Es el siguiente apartado se comentarán las propiedades de los algoritmos de optimización basada en colonias de hormigas. Pues los algoritmos propuestos (y adaptados) para la resolución del problema están englobados dentro de este tipo. En concreto se basa en su comportamiento a la hora de establecer los mejores caminos entre el nido y la fuente de comida. La forma en que llevan la comida al nido es sorprendente porque muchas especies de hormigas son ciegas . La feromona es una sustancia que todas pueden oler Aquí vemos a la hormiguita siguiendo el rastro de vuelta al nido con comida. Al llegar a la bifurcación de caminos, decide ir por el camino de abajo porque tiene una mayor concentración de feromona, para así llegar a la escuela de informática (que sería el nido supongo). Aquí vemos a la hormiguita siguiendo el rastro de vuelta al nido con comida. Al llegar a la bifurcación de caminos, decide ir por el camino de abajo porque tiene una mayor concentración de feromona, para así llegar a la escuela de informática (que sería el nido supongo). Aquí vemos a la hormiguita siguiendo el rastro de vuelta al nido con comida. Al llegar a la bifurcación de caminos, decide ir por el camino de abajo porque tiene una mayor concentración de feromona, para así llegar a la escuela de informática (que sería el nido supongo). Los mejores caminos  los más cercanos a la comida son recorridos en menos tiempo y por un mayor número de hormigas Para resolver un problema mediante OCH, éste debe ser modelado como un grafo. La información heurística se basa en el conocimiento previo que se tenga del problema. Ejemplo: elegir el arco con menor peso. Cada hormiga construye una solución completa en cada iteración. El aporte indicará a las restantes si el camino es prometedor. La evaporación irá desechando los caminos menos prometedores al no ser reforzados. P ij h  es la probabilidad asociada al nodo j para ser elegido como siguiente del i , respecto de la hormiga h N i h  es el vecindario de nodos alcanzables para el nodo i , respecto de la hormiga h . Son nodos a los que se puede llegar. alpha y beta son dos parámetros que ponderan la importancia relativa de la información memorística (feromona) y heurística respectivamente El mecanismo más utilizado es la ruleta de selección basada en probabilidades, en la que se asigna una ‘porción’ de ruleta proporcional a la probabilidad de cada nodo. Luego se hace una tirada y se selecciona el nodo elegido. Otras variantes eligen siempre al de mayor probabilidad. El primer mecanismo hace que haya un componente de exploración que haga salir de óptimos locales y que se busque en zonas menos prometedoras a priori. Las cajas rojas indican procesos que se hacen en algunos modelos, pero no en todos. Como se puede ver: El criterio de terminación suele ser un número de iteraciones concreto El aporte/evaporación local de feromona lo hacen algunos modelos (SCH) El refinamiento de las soluciones se hace mediante la aplicación de búsqueda local La elección de la mejor hormiga es opcional El aporte global lo pueden hacer todas las hormigas o únicamente la mejor. A veces la hacen todas y después también la mejor. La evaporación global suele hacerse sobre todos los arcos SH  es el modelo que se planteó inicialmente, sigue el esquema que se ha comentado. El aporte global se hace en función de la bondad de la solución. Los autores propusieron una mejora consistente en hacer un aporte extra sobre los arcos pertenecientes al camino de la mejor solución (SH elitista). SCH  en la regla proporcional pseudoaleatoria se considera como siguiente el nodo con mayor probabilidad o se usa la misma RT que en el SH en función de q0. El parámetro q0 establece el equilibrio entre explotación y exploración en la búsqueda, dado que: - Se obtiene un valor aleatorio (según una distribución normal) q. Si q &lt;= q0, entonces se elige como siguiente el nodo con la mayor probabilidad asociada En caso contrario, se elige como siguiente una según la RTE del SH, con la ruleta de selección de probabilidades La actualización local incluye una evaporación y un pequeño aporte, para incitar a las demás hormigas a seguir otras líneas de búsqueda. La actualización global refuerza los rastros de la mejor solución. SHMM  se realiza una actualización de feromona en línea como el SCH. Aplica BL generalmente. El rango de feromona está en [Tmin, Tmax], por lo que siempre habrá probabilidad de escoger cada arco, aunque sea muy pequeña. Se utilizan mecanismos de reinicialización de feromona (si las soluciones no mejoran en varios pasos). SHO  se ordenan las hormigas en base a la calidad de sus soluciones, éstas realizarán el aporte proporcionalmente a su orden (o únicamente las X primeras harán el aporte global) En este apartado se describirán los algoritmos propuestos en la tesis para la resolución del PMCO-2C. Se trata de OCHMOs diseñados para la resolución del mismo. El nombre relaciona el campo militar con las OCH. Es Multiobjetivo, como hemos comentado previamente. Los pesos serán los costes en recursos que implicaría ir de una celda a otra (considerando la diferencia de altura), y el coste de energía que tiene asociado la celda destino. q0 es el parámetro habitual de los SCH. Otros MOACOs usan más de una colonia. Una matriz de feromona y una función heurística por cada objetivo. LAMBDA se usa en la regla de transición de estados, a la hora de elegir el siguiente nodo en la construcción del camino solución. Su valor lo fija el usuario del algoritmo para fijar la importancia de los dos objetivos. La regla pseudoaleatoria proporcional depende de q0 porque: Si un número aleatorio q es q&lt;q0 se elige el mejor nodo (explotación) Sino, se elige uno con una ruleta de probabilidades (exploración) RTC Usa 2 matrices de feromona y dos funciones heurísticas (un par por objetivo) y considera lambda como ponderación, además de alpha y beta RTD Para cada nodo alcanzable, cuenta a cuantos de los demás vecinos alcanzables domina, considerando el valor de la heurística1+feromona y el valor de la heurística2+feromona, nuevamente ponderados con alpha, beta y lambda. La probabilidad será asociada a ese número. Moverse por zonas ocultas al enemigo es muy importante en los caminos seguros, para evitar posibles disparos. heurística rapidez  intenta minimizar la distancia al punto destino y el coste en recursos. En los caminos rápidos también se considera la visibilidad (ocultación), pero en poca medida. heurística seguridad  intenta ,minimizar el coste en energía y la visibilidad (por parte de los enemigos) de la unidad. En los caminos seguros también se considera la distancia al destino, pero en poca medida Actualización Local de Feromona añade poca cantidad. Actualización Global de Feromona añade cantidad dependiente del fitness. - La feromona inicial es un número pequeño - Para construir una solución se utiliza una de las reglas de transición y la actualización de feromona local - La solución se incluirá en el CP si es no dominada. Al incluirla se eliminarán las que sean dominadas por ella - Solamente las soluciones en el Conjunto de Pareto hacen la actualización global de feromona - Se repite un número de iteraciones El algoritmo obtiene un conjunto de soluciones no dominadas Es un algoritmo monoobjetivo. Se ideó para probar si el problema podía ser resuelto como una función agregativa de los criterios deseados. La función a optimizar se define en función de las dos anteriores, ponderadas con sendos pesos. La función heurística considera los componentes de las de CHAC, pero mezclados. Se haya la media de los pesos comunes para ponderar elementos comunes (distancia media el destino u ocultación). Es una RTE combinada, pero con una sola función heurística y matriz de feromonas. No usa lambda porque solo hay un objetivo, no hay que asignar prioridades. Se interpreta que cada uno de los criterios principales se subdivide en 2 objetivos: - consumo de recursos  el camino deberá discurrir por celdas que requieran el menor consumo posible de los recursos de la unidad. - distancia media al destino  las celdas del camino deberán estar cada vez más cerca del destino. Los caminos con menor media tendrán celdas más próximas al destino en general, lo que significará que serán más directos. - consumo de salud  las celdas a atravesar en el camino deberán suponer el menor consumo de salud posible para la unidad, evitando para ello las más penalizadas tanto en dicho consumo, como en letalidad por impacto de armas enemigas. - visibilidad  el camino deberá contener el mayor número de celdas ocultas al enemigo (no visibles), pues de esa forma, se garantiza la seguridad de la unidad respecto a posibles ataques. RTC combina la información de los 4 objetivos RTD compara la información de los 4 objetivos RTC: Combinan la información de los N objetivos. RTD: Compara la información de los N objetivos. A continuación se presentarán varios algoritmos que se presentan en la literatura para a resolución de otros problemas multiobjetivo, adaptados para la resolución del problema abordado en este estudio. Se trata de dos OCHMOs y la adaptación de una heurística básica como es el enfoque Greedy a un entorno multiobjetivo. A su vez, el de Barán se basa en el MACS propuesto por Gambardella et al. en 1999. Problema de enrutamiento de vehículos con ventana de tiempo. Versión MO del VRP. LAMBDA pondera cada uno de los objetivos (sus términos), pero es fijo durante toda la ejecución y para todas las hormigas. Originalmente, tomaba un valor para cada hormiga, siendo 0 para la primera y 1 para la última. Se hará un estudio de este parámetro (y su mejor configuración) en la sección de experimentos. Se calcula un valor representativo del CP en función de los valores medios de las soluciones en él. Si dicho valor empeora entre dos iteraciones, se reinicializa la feromona. Las actualizaciones de feromona son las mismas que hace CHAC, pero combinando los valores de las funciones de evaluación, ya que solo hay una matriz de feromona. Problema de programación de tareas a máquinas con costes variables. LAMBDA pondera cada uno de los objetivos (sus términos), pero es fijo durante toda la ejecución y para todas las hormigas. Originalmente, tomaba un valor para cada hormiga, siendo 0 para la primera y 1 para la última. Se hará un estudio de este parámetro (y su mejor configuración) en la sección de experimentos. No se tiene q0 porque es un SH, no un SCH. Las actualización de feromona es únicamente global: evaporación de TODOS los arcos + aporte de las soluciones en el CP son las mismas que hace CHAC, pero combinando los valores de las funciones de evaluación, ya que solo hay una matriz de feromona. El criterio de selección será similar a la RTD, pero sin tener en cuenta la feromona (no hay en GRMO). El componente estocástico es que ante varios nodos con el mismo valor (dominan al mismo número de vecinos), se elegirá de forma aleatoria el nodo siguiente. El backtracking vuelve un paso atrás si el nodo elegido conduce a un nodo sin salida (sin vecinos alcanzables). Puede volver hasta 3 pasos atrás. En este apartado se presentarán los resultados de ejecutar los algoritmos propuestos y los adaptados para la resolución de un problema concreto (un escenario). Previamente se describirá dicho escenario. Finalmente se comentarán dos estudios desarrollados sobre los algoritmos. Se muestran los resultados de un mapa de ejemplo (uno de los resueltos en la tesis). Los valores de LAMBDA obtienen los caminos más rápidos o más seguros (muy rápidos o muy seguros) y los extremos no consideran al otro objetivo. Estas son las soluciones encontradas después de 30 ejecuciones y eligiendo los mejores de todos los CPs. Se han evaluado incluso las soluciones de Mono-CHAC y CHAC-4 con Fr y Fs para poder compararlas todas. Descripción del mapa. Descripción del mapa. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. These solutions are very good for the priorized objective, but the other one is almost unconsidered, so the cost is big. These solutions are very good for the priorized objective, but the other one is almost unconsidered, so the cost is big. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. There are some patches of forest, some rivers and hills. There is one enemy on the top of a hill. Cells with white border are hidden to enemy and those with black border are visible. There are big differences between safe objective in both cases, because visible cells have a high cost in the safety objective. We can see that the fastest path is quite straight, avoiding move very close to enemy and hidding when possible. It crosses the bridges if possible, because water cells have associated a higher cost in resources. The safest path does a curve in order to hide to enemy (moving outside its adquisition capability distance). This behaviour increments the cost in resources, but it is logical. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The fast path is very fast, but also very unsafe, so the cost in security grows dramatically. The safe path is good, but is has some extra cells which increments the cost in resources. The cost in higher than hCHAC approaches because it moves throught cells with high cost in resources (like forest and water ones). The safe path is longer than those founded by the other algorithms. The algorithm only yields a single solution with a single cost, but we have evaluated this solution as a multiobjective one, so we have two costs. The algorithm only yields a single solution with a single cost, but we have evaluated this solution as a multiobjective one, so we have two costs. Las conclusiones comentadas anteriormente se pueden contrastar con los resultados de la tabla. CHAC-RTC es casi tan bueno como el extremo. CHAC-4-RTD es también muy bueno. BiAnt es muy explorativo como demuestra su alta desviación típica. GRMO es ‘directo’  bueno si la zona intermedia es segura. Se muestran los resultados de un mapa de ejemplo (uno de los resueltos en la tesis). Los valores de LAMBDA obtienen los caminos más rápidos o más seguros (muy rápidos o muy seguros) y los extremos no consideran al otro objetivo. Estas son las soluciones encontradas después de 30 ejecuciones y eligiendo los mejores de todos los CPs. Se han evaluado incluso las soluciones de Mono-CHAC y CHAC-4 con Fr y Fs para poder compararlas todas. Fija  todas las hormigas con el mismo valor para LAMBDA durante todo el algoritmo (todas buscan en la misma zona del espacio de soluciones) Variable  cada hormiga con un valor para LAMBDA l=(h-1)/(m-1), 0 para la primera y 1 para la última. La fija es mejor, sobretodo en BiAnt. Se han señalado algunos ejemplos. En cualquier caso la mejora no es significativa y habría que probar otros escenarios. Se han marcado algunos ejemplos. A continuación paso a leer las conclusiones y aportes obtenidos en la realización de este trabajo de tesis doctoral. Durante el desarrollo del trabajo, se han ido publicando los resultados parciales obtenidos, tanto en revistas internacionales, como en congresos internacionales. Consiguiendo incluso alguna cita. Presentación de Tesis A.M. Mora
Resolución del problema militar debúsqueda de camino óptimomultiobjetivo mediante el uso dealgoritmos de optimización basadosen colonias de hormigas TESIS DOCTORAL Antonio M. Mora García 05 de Mayo de 2009Directores: Juan Julián Merelo Guervós Pedro Ángel Castillo Valdivieso 2.
ÍNDICE  Definición del problema  Problemas multiobjetivo  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC  Algoritmos adaptados  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 2 3.
ÍNDICE DEFINICIÓN DEL PROBLEMA  Problemas multiobjetivo  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC  Algoritmos adaptados  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 3 4.
DEFINICIÓN DEL PROBLEMA DEFINICIÓN DEL PROBLEMA DE CAMINO ÓPTIMO “ Dado un entorno en el que se tienen definidos distintos puntos y en el que es posible trazar rutas entre ellos, y dados dos puntos cualesquiera dentro de dicho entorno, hallar la ruta entre ambos puntos que mejor se adecue a una serie de criterios predeterminados ” Dicha ruta partirá de uno de los puntos, llamado origen y llegará hasta el otro, conocido como destino y a su vez podrá discurrir por varios puntos intermedios. El más famoso es el Problema de Camino Mínimo (PCM), en el que la función a minimizar es la distancia al destino.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 4 5.
DEFINICIÓN DEL PROBLEMA PROPIEDADES DEL PROBLEMA DE CAMINO ÓPTIMO • Se tiene un conjunto de componentes finitos (puntos). • Se tiene una serie finita de estados, donde cada estado se corresponde con una secuencia de componentes (lista de puntos recorridos). • Existe una función de vecindad que permite pasar de un estado a otro. • Cada cambio de estado tiene un coste asociado. • Una solución es una secuencia de estados que verifica las restricciones/condiciones del problema. • Hay un coste asociado a cada solución.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 5 6.
DEFINICIÓN DEL PROBLEMA MODELADO DEL PROBLEMA DE CAMINO ÓPTIMO Se resuelve en entornos modelados como grafos, su definición sería: “ dado un grafo y dos nodos (origen y destino), hallar la lista de nodos (o arcos) que se deben atravesar para ir desde el nodo origen al destino considerando una serie de criterios predeterminados ” Dicho grafo deberá cumplir una serie de condiciones: • Podrá ser dirigido o no. • Será un grafo conexo. • Cada arco tendrá un peso/coste asociado. • Una solución será una secuencia de nodos comunicados mediante arcos. • Cada solución tendrá asociado un coste.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 6 7.
DEFINICIÓN DEL PROBLEMA EJEMPLOS DE PROBLEMA DE CAMINO ÓPTIMO VisualBots for Excel • TSP  hallar el circuito que parta y llegue al mismo nodo y pase por todos los demás, minimizando el coste asociado a los arcos a atravesar. • VRP  hallar el conjunto de rutas queVRP en la Wikipedia partan de un nodo y lleguen a todos los demás, considerando un límite de coste por cada ruta. Shortest path en Matlab • Camino más corto  hallar la ruta que minimice la suma de los pesos de los arcos a atravesar para llegar de un nodo origen a un nodo destino.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 7 8.
DEFINICIÓN DEL PROBLEMA PROBLEMA DE CAMINO ÓPTIMO MULTIOBJETIVO Si existen varios criterios a satisfacer en la ruta y éstos son independientes, se habla de problemas de camino óptimo multiobjetivo. Propiedades: • Cada cambio de estado tendrá varios costes asociados • Cada solución (camino) tendrá asociado un coste por cada uno de los criterios/objetivos. Respecto al modelado como grafo: • Cada arco tendrá varios pesos/costes asociados. • Cada solución tiene asociado un coste por cada objetivo.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 8 9.
DEFINICIÓN DEL PROBLEMA ALGORITMOS DE RESOLUCIÓN DE PROBLEMAS DE CAMINO ÓPTIMO Algoritmos informados Metaheurísticas: (usan heurísticas): OCH A*Años 50 Actualidad Primeros algoritmos: Aplicación de otras metaheurísticas y Bellman-Ford, Dijkstra mejora de las existentes.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 9 10.
DEFINICIÓN DEL PROBLEMA PROBLEMA MILITAR DE CAMINO ÓPTIMO MULTIOBJETIVO • Definido para resolver el problema del movimiento de una unidad militar en el campo de batalla. • Antes de realizar el movimiento hay que valorar dos criterios: rapidez y seguridad. • Son criterios contrapuestos, pero no excluyentes y siempre deben ser valorados ambos. • Se trata de un problema multiobjetivo.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 10 11.
DEFINICIÓN DEL PROBLEMA PROBLEMA MILITAR DE CAMINO ÓPTIMO MULTIOBJETIVO De modo que el problema podría definirse como: “ La búsqueda (por parte de una unidad militar) del camino óptimo desde un punto origen hasta un punto destino, dentro de un campo de batalla y considerando los criterios de rapidez y seguridad ” Este problema se llamará PMCO-2C (o PMCOMO), y será modelado dentro de un simulador para ser resuelto.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 11 12.
DEFINICIÓN DEL PROBLEMA MODELADO DEL PMCO-2C - LA UNIDAD La unidad militar del problema está compuesta por soldados y vehículos, y tiene varias propiedades:  nivel de salud/energía: salud de los soldados, estado de los vehículos  nivel de recursos: comida, medicinas, combustible  no tiene armas La unidad únicamente se mueve, de un punto origen a un punto destino, consumiendo recursos y mermando su salud, y evitando a los enemigos y las zonas peligrosas del campo de batalla.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 12 13.
DEFINICIÓN DEL PROBLEMA MODELADO DEL PMCO-2C - EL MAPAEl mapa (escenario) es una rejilla de celdas hexagonales que modela uncampo de batalla.  la unidad está situada en un punto origen  la unidad debe llegar a un punto destino  puede haber uno o más enemigos  puede haber zonas con impacto de armas • coordenadas X, Y • Tipo • Subtipo • Altura • Coste en Recursos (dificultad de atravesarla). • Coste en Salud (bajas de no combate, deterioro de los vehículos). • Letalidad (consumo de salud debida alResolución del PMCOMO mediante OCH – Antonio M. Mora García de armas). impacto 13 14.
DEFINICIÓN DEL PROBLEMA MODELADO DEL PMCO-2C - REALISMO Es posible utilizar mapas ‘reales’ como base, definiendo una capa de información subyacente.  Cada celda corresponde a una zona de 500x500 metros (tamaño real de la unidad desplegada).  Se ha considerado la línea de visión, y la capacidad de adquisición para unidad y enemigos.  Existen obstáculos naturales.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 14 15.
DEFINICIÓN DEL PROBLEMA DEFINICIÓN DEL PMCO-2C MODELADO El problema se define como: Encontrar el mejor camino para una unidad militar, que parte de un punto y debe alcanzar otro dentro de un campo de batalla, en el que puede haber enemigos vigilando y/o disparando. Dicho camino deberá minimizar el coste en salud y en recursos El criterio del mejor camino a encontrar lo podrá definir el usuario. Estos objetivos son independientes, por lo que se trata de un problema multiobjetivo.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 15 16.
DEFINICIÓN DEL PROBLEMA RESOLUCIÓN DEL PMCO-2C El problema será resuelto utilizando un algoritmo de OCH, porque: • es una metaheurística ideada para trabajar con grafos • es flexible y se adapta bien a nuevas condiciones y restricciones • es eficiente • ha demostrado dar muy buenos resultados en este tipo de problemas Dado que se trata de un problema multiobjetivo, se utilizará un OCHMO.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 16 17.
ÍNDICE  Definición del problema PROBLEMAS MULTIOBJETIVO  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC  Algoritmos adaptados  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 17 18.
PROBLEMAS MULTIOBJETIVO DEFINICIÓN • Son problemas en los que se trata de satisfacer varios criterios. • Cada uno de ellos será considerado un objetivo y tendrá asociado una función a optimizar. F(x) = ( f1(x), … , fk(x) ), para k objetivos • Una solución será un vector x = ( x1, …, xk ) • Dominancia (si se tiende a la minimización): en ese caso, se diría que la solución b es dominada por a.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 18 19.
PROBLEMAS MULTIOBJETIVO DEFINICIÓN• EL grupo de soluciones no dominadas forman el llamadoConjunto de Pareto (CP). Su representación gráfica es elFrente de Pareto.• En el ejemplo: - a y b son no dominadas - ambas dominan a c• Generalmente los algoritmospara resolución de problemasmultiobjetivo buscan encontrarel máximo número desoluciones posible del CP.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 19 20.
ÍNDICE  Definición del problema  Problemas multiobjetivo OPTIMIZACIÓN BASADA EN COLONIAS DE HORMIGAS (OCH)  Familia de algoritmos CHAC  Algoritmos adaptados  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 20 21.
OCH HORMIGAS NATURALES • Basada en el comportamiento de las hormigas naturales. [Dorigo et al. 1991] • Las hormigas son insectos sociales que viven en una colonia y cooperan por un beneficio común. • En su búsqueda de comida, van dejando un rastro de feromona que les permite volver al nido. • Cuando llegan a una bifurcación, eligen el camino a seguir considerando con mayor probabilidad el camino que mayor concentración de feromona tenga.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 21 22.
Hormigas Naturales Elección de camino en una bifurcación Rastro de FeromonaResolución del PMCOMO mediante OCH – Antonio M. Mora García 22 23.
Hormigas Naturales Elección de camino en una bifurcación ? Rastro de FeromonaResolución del PMCOMO mediante OCH – Antonio M. Mora García 23 24.
Hormigas Naturales Elección de camino en una bifurcación Rastro de FeromonaResolución del PMCOMO mediante OCH – Antonio M. Mora García 24 25.
OCH HORMIGAS NATURALES • Los mejores caminos (los más cercanos a la comida) van acumulando una mayor cantidad de feromona, pues son recorridos por un mayor número de hormigas. • Los menos prometedores van perdiendo la feromona por evaporación, por lo que cada vez los recorren menos hormigas. • Tras un tiempo, las hormigas habrán creado un camino mínimo (con rastros de feromona).Resolución del PMCOMO mediante OCH – Antonio M. Mora García 25 26.
OCH HORMIGAS ARTIFICIALES • Resuelven problemas modelados como grafos con pesos en los arcos. • Cada arco aij del grafo contiene dos tipos de información: – Información heurística (η ij)  preferencia heurística del arco, en base al conocimiento previo del problema. Las hormigas no la modifican durante la ejecución del algoritmo. – Información memorística (τ ij)  medida de la “deseabilidad” del arco, representada por la cantidad de feromona depositada en él. Es modificada durante la ejecución del algoritmo. • Cada hormiga artificial es un agente que construye una solución completa recorriendo el grafo en cada iteración. • En base a la bondad de esa solución hace un aporte de feromona a cada arco del camino construido por ella. • Además, se hace una evaporación de todos los arcos para evitar el estancamiento en óptimos locales (si perduran los malos rastros)Resolución del PMCOMO mediante OCH – Antonio M. Mora García 26 27.
OCH CONSTRUCCIÓN DE LA SOLUCIÓN • Para construir una solución, cada hormiga debe decidir en cada paso el siguiente nodo al que moverse. • Utiliza una regla de transición de estados (RTE), con la que calcula la probabilidad de pasar a cada nodo. - define la probabilidad con la que una hormiga h situada en un nodo i, pasaría al nodo j (alcanzable). - depende de la información heurística (η ij) y memorística (τ ij) de cada arco. • Una vez calculada la probabilidad, se elige el siguiente nodo en función de ésta (ruleta de probabilidades, el de mayor probabilidad, …)Resolución del PMCOMO mediante OCH – Antonio M. Mora García 27 28.
OCH ALGORITMO • El funcionamiento general de un algoritmo de OCH es: Para cada hormiga: Inicialización Elegir siguiente nodo Actualización Local de Feromona No hay más hormigas Búsqueda Local Elegir mejor solución Criterio de Criterio de FIN FIN FIN Actualización Global es VERDAD de Feromona es FALSOResolución del PMCOMO mediante OCH – Antonio M. Mora García 28 29.
OCH MODELOS PRINCIPALES • Sistema de Hormigas (SH): - la actualización de feromona se hace cuando todas las hormigas han terminado su proceso - evaporación y aporte global lo hacen todas las hormigas sobre los arcos de sus soluciones • Sistema de Colonias de Hormigas (SCH): - utiliza una regla de transición llamada regla proporcional pseudo-aleatoria, que depende de un parámetro q0 - se incluye una actualización local (evaporación y aporte) cada vez que una hormiga añade un nodo a su solución - la actualización global únicamente la realiza la mejor hormigaResolución del PMCOMO mediante OCH – Antonio M. Mora García 29 30.
ÍNDICE  Definición del problema  Problemas multiobjetivo  Optimización basada en colonias de hormigas FAMILIA DE ALGORITMOS CHAC CHAC Mono-CHAC CHAC-4 CHAC-N  Algoritmos adaptados  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 30 31.
CHAC INTRODUCCIÓN CHAC significa ‘Compañía de Hormigas ACorazadas’. Se trata de un algoritmo de Optimización basada en Colonias de Hormigas MultiObjetivo (OCHMO). Para resolver el problema, se transforma el espacio de búsqueda en un grafo (cada celda es un nodo y cada arco conecta 2 celdas vecinas). Hay 2 pesos en cada arco.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 31 32.
CHAC DESCRIPCIÓN  CHAC es un Sistema de Colonias de Hormigas (SCH) adaptado para trabajar con 2 objetivos.  Usa el parámetro q0 para controlar el equilibrio entre exploración y explotación en la búsqueda.  Se utiliza una única colonia  Se tienen 2 matrices de feromona  Se usan 2 funciones heurísticas  Un parámetro (λ ∈ (0,1)) fija la importancia relativa de cada objetivoResolución del PMCOMO mediante OCH – Antonio M. Mora García 32 33.
CHAC DESCRIPCIÓN Existen 2 reglas de transición de estados, ambas basadas en la regla proporcional pseudoaleatoria típica de los SCH:  Regla de Transición Combinada (RTC) Combina la feromona con la información heurística de los dos objetivos (multiplicándolos). Usa λ para ponderar el primer objetivo y (1-λ ) para el segundo.  Regla de Transición basada en Dominancia (RTD) Calcula la probabilidad de cada nodo alcanzable en base al número de vecinos que domina, considerando la combinación de feromona e información heurística en cada objetivo.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 33 34.
CHAC DESCRIPCIÓN  Las funciones heurísticas: - camino rápido (η r) - camino seguro (η s)  La actualización de feromona (τ r, τ s): - local  al añadir un nodo a la solución en construcción. - global  al final de cada iteración y solo para las soluciones dentro del Conjunto de Pareto (CP).  Las funciones de evaluación (una por objetivo): - camino rápido  coste en recursos y ocultación. Ff - camino seguro  coste en energía y ocultación. FsResolución del PMCOMO mediante OCH – Antonio M. Mora García 34 35.
CHAC ALGORITMO • El funcionamiento general del algoritmo CHAC es: Para cada hormiga: Inicialización Elegir siguiente nodo Actualización Local de Feromona Solución completa Evaluar Solución Incluir en el CP Eliminar Dominadas No hay más hormigas Criterio de Criterio de FIN FIN FIN Actualización Global es VERDAD de Feromona es FALSOResolución del PMCOMO mediante OCH – Antonio M. Mora García 35 36.
Mono-CHAC DESCRIPCIÓN  Transformación de CHAC para tratar un solo objetivo.  Se hace una agregación de los objetivos para tratarlos como uno solo. La función a minimizar sería: F(x) = ωr · Fr(x) + ωs · Fs(x)  Es un SCH monobjetivo (también dispone del parámetro q0).  Solo considera una función heurística, que se define como fusión de las dos de CHAC.  Solo considera una matriz de feromonas.  Existe una función de evaluación, que combina los factores de las dos funciones de CHAC.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 36 37.
Mono-CHAC DESCRIPCIÓN  Solo utiliza una regla de transición, la proporcional pseudoaleatoria clásica de los SCH estándar.  No utiliza el parámetro λ.  Se hace una actualización local de feromona cada vez que se añade un nuevo nodo a una solución.  Se hace una actualización global de feromona, pero únicamente se aplica a los arcos de la mejor solución.  La estructura del algoritmo es igual que la de CHAC, excepto por la consideración de una sola solución en lugar de un Conjunto de Pareto.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 37 38.
CHAC-4 DESCRIPCIÓN  Interpretación del problema para considerar 4 objetivos. Cada uno de los criterios se subdivide en 2 objetivos: • Rapidez  consumo de recursos y distancia media al destino • Seguridad  consumo de salud y visibilidad  Es un SCH adaptado para tratar 4 objetivos.  Considera 4 funciones heurísticas, cada una dedicada a minimizar uno de los objetivos.  Considera 4 matrices de feromonas, una por objetivo.  Existen 4 funciones de evaluación, una por objetivo.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 38 39.
CHAC-4 DESCRIPCIÓN  Considera dos reglas de transición, RTC y RTD.  Utiliza el parámetro λ (en RTC).  Se hace una actualización local de feromona cada vez que se añade un nuevo nodo a una solución.  Se hace una actualización global de feromona, pero únicamente se aplica a los arcos de las soluciones en el Conjunto de Pareto.  La estructura del algoritmo es igual que la de CHAC, trabajando nuevamente con un conjunto de soluciones no dominadas.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 39 40.
CHAC-N DESCRIPCIÓN  Generalización de los anteriores.  Aplicable a cualquier problema multiobjetivo resoluble con OCH.  Trabaja con N funciones heurísticas, N matrices de feromona y N funciones de evaluación, una por cada objetivo.  Considera dos reglas de transición, RTC y RTD.  Se hace una actualización local de feromona cada vez que se añade un nuevo nodo a una solución.  Se hace una actualización global de feromona, pero únicamente se aplica a los arcos de las soluciones en el CP.  La estructura del algoritmo es igual que la de CHAC, considerando un conjunto de soluciones no dominadas.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 40 41.
ÍNDICE  Definición del problema  Problemas multiobjetivo  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC ALGORITMOS ADAPTADOS MOACS BIANT GREEDY MO  Experimentos y Resultados  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 41 42.
MOACS DESCRIPCIÓN  SCH propuesto por Barán et al. en 2003, para la resolución del VRPTW. Propiedades:  Utiliza una sola matriz de feromonas para dos objetivos.  Considera las mismas funciones heurísticas que CHAC.  Utiliza la RTC.  Usa el parámetro λ, pero siguiendo la filosofía de CHAC (valor fijo para todas las hormigas).  Hace reinicialización de feromona si no se mejora el CP.  actualización local de feromona.  actualización global de feromona (soluciones en el CP).  La estructura del algoritmo es similar a la de CHAC, considerando un conjunto de soluciones no dominadas, pero con el mecanismo de reinicialización.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 42 43.
BIANT DESCRIPCIÓN  SH presentado por Iredi et al. en 2001, para la resolución del SMTTP. Propiedades:  Utiliza 2 matrices de feromonas.  Considera las mismas funciones heurísticas que CHAC.  Utiliza una RTE similar a la RTC, pero sin considerar q0.  Usa el parámetro λ, pero siguiendo la filosofía de CHAC (valor fijo para todas las hormigas).  Se hace una única actualización global de feromona, una vez han terminado todas las hormigas de cada iteración. Evaporación de todos los arcos + aporte de las soluciones dentro del CP.  La estructura del algoritmo es similar a la de CHAC, con soluciones no dominadas, pero considerando la RTE de un SH, no hay actualización local de feromona y la actualización global incluye evaporación y aporte.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 43 44.
GREEDY MO DESCRIPCIÓN  Enfoque greedy (voraz) clásico adaptado a un problema multiobjetivo (con 2 objetivos).  Se basa en elegir siempre los elementos más prometedores en cada paso.  Muy simple, construye la solución en 1 sola iteración  muchas veces no encuentra solución. Adaptación al problema:  Elegirá como nodo siguiente aquel que domine a más vecinos según una comparativa de funciones de coste.  Considerará como funciones de coste las funciones heurísticas de CHAC (η r y η s).  No utiliza el parámetro λ.  Tiene un componente estocástico  soluciones diferentes en diferentes iteraciones/ejecuciones.  Si se ejecuta varias iteraciones, puede obtener un conjunto de soluciones no dominadas.  Añade backtracking hasta 3 niveles  evita estancamientosResolución del PMCOMO mediante OCH – Antonio M. Mora García 44 45.
ÍNDICE  Definición del problema  Problemas multiobjetivo  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC  Algoritmos adaptados EXPERIMENTOS Y RESULTADOS  ConclusionesResolución del PMCOMO mediante OCH – Antonio M. Mora García 45 46.
EXPERIMENTOS Y RESULTADOS CONSIDERACIONES PREVIAS • Se han analizado todos los algoritmos en los mismos mapas, con la misma configuración de parámetros. • Los resultados han sido obtenidos para λ = 0,9 y λ = 0,1 (los extremos con λ = 1 y λ = 0). • Todos los algoritmos obtienen un conjunto de soluciones, excepto mono-CHAC. • Se muestran las mejores soluciones obtenidas de entre todos los CPs. • Fr es el coste en rapidez/recursos y Fs es el coste en seguridad/salud. • En última instancia las soluciones de todos los algoritmos han sido evaluadas usando esas funciones, incluso las de Mono-CHAC y CHAC-4.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 46 47.
EXPERIMENTOS Y RESULTADOS DESCRIPCIÓN DEL MAPA DE EJEMPLOEl mapa ejemplo a resolver es:Resolución del PMCOMO mediante OCH – Antonio M. Mora García 47 48.
EXPERIMENTOS Y RESULTADOS DESCRIPCIÓN DEL MAPA DE EJEMPLOEl mapa ejemplo a resolver es:Resolución del PMCOMO mediante OCH – Antonio M. Mora García 48 49.
EXPERIMENTOS Y RESULTADOS CHAC-RTC Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 68,5 Fs = 295,4 Fr = 80,5 Fs = 7,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 49 50.
EXPERIMENTOS Y RESULTADOS CHAC-RTC Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 68,5 Fs = 295,4 Fr = 80,5 Fs = 7,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 50 51.
EXPERIMENTOS Y RESULTADOS CHAC-RTD Más Rápido 1500 iteraciones - 50 hormigas Más Seguro Fr = 70,5 Fs = 295,6 Fr = 102,5 Fs = 9,5Resolución del PMCOMO mediante OCH – Antonio M. Mora García 51 52.
EXPERIMENTOS Y RESULTADOS CHAC-RTD Más Rápido 1500 iteraciones - 50 hormigas Más Seguro Fr = 70,5 Fs = 295,6 Fr = 102,5 Fs = 9,5Resolución del PMCOMO mediante OCH – Antonio M. Mora García 52 53.
EXPERIMENTOS Y RESULTADOS CHAC-4-RTC Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 70,0 Fs = 305,5 Fr = 89,0 Fs = 8,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 53 54.
EXPERIMENTOS Y RESULTADOS CHAC-4-RTC Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 70,0 Fs = 305,5 Fr = 89,0 Fs = 8,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 54 55.
EXPERIMENTOS Y RESULTADOS CHAC-4-RTD Más Rápido 1500 iteraciones - 50 hormigas Más Seguro Fr = 71,0 Fs = 305,6 Fr = 77,37 Fs = 9,4Resolución del PMCOMO mediante OCH – Antonio M. Mora García 55 56.
EXPERIMENTOS Y RESULTADOS CHAC-4-RTD Más Rápido 1500 iteraciones - 50 hormigas Más Seguro Fr = 71,0 Fs = 305,6 Fr = 77,37 Fs = 9,4Resolución del PMCOMO mediante OCH – Antonio M. Mora García 56 57.
EXPERIMENTOS Y RESULTADOS Extremo-CHAC-RTC Extremad. Rápido (λ = 1) 1500 iteraciones - 50 hormigas Extremad. Seguro (λ = 0) Fr = 68,5 Fs = 295,4 Fr = 80,5 Fs = 7,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 57 58.
EXPERIMENTOS Y RESULTADOS Extremo-CHAC-RTC Extremad. Rápido (λ = 1) 1500 iteraciones - 50 hormigas Extremad. Seguro (λ = 0) Fr = 68,5 Fs = 295,4 Fr = 80,5 Fs = 7,3Resolución del PMCOMO mediante OCH – Antonio M. Mora García 58 59.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-RTD Extremad. Rápido 1500 iteraciones - 50 hormigas Extremad. Seguro Fr = 72,0 Fs = 285,8 Fr = 93,0 Fs = 9,0Resolución del PMCOMO mediante OCH – Antonio M. Mora García 59 60.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-RTD Extremad. Rápido 1500 iteraciones - 50 hormigas Extremad. Seguro Fr = 72,0 Fs = 285,8 Fr = 93,0 Fs = 9,0Resolución del PMCOMO mediante OCH – Antonio M. Mora García 60 61.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-4-RTC Extremad. Rápido (λ = 1) 1500 iteraciones - 50 hormigas Extremad. Seguro (λ = 0) Fr = 69,5 Fs = 295,5 Fr = 91,0 Fs = 8,2Resolución del PMCOMO mediante OCH – Antonio M. Mora García 61 62.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-4-RTC Extremad. Rápido (λ = 1) 1500 iteraciones - 50 hormigas Extremad. Seguro (λ = 0) Fr = 69,5 Fs = 295,5 Fr = 91,0 Fs = 8,2Resolución del PMCOMO mediante OCH – Antonio M. Mora García 62 63.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-4-RTD Extremad. Rápido 1500 iteraciones - 50 hormigas Extremad. Seguro Fr = 71,0 Fs = 305,6 Fr = 97,0 Fs = 9,4Resolución del PMCOMO mediante OCH – Antonio M. Mora García 63 64.
EXPERIMENTOS Y RESULTADOS extremo-CHAC-4-RTD Extremad. Rápido 1500 iteraciones - 50 hormigas Extremad. Seguro Fr = 71,0 Fs = 305,6 Fr = 97,0 Fs = 9,4Resolución del PMCOMO mediante OCH – Antonio M. Mora García 64 65.
EXPERIMENTOS Y RESULTADOS MOACS Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 74,0 Fs = 286,0 Fr = 89,50 Fs = 8,2Resolución del PMCOMO mediante OCH – Antonio M. Mora García 65 66.
EXPERIMENTOS Y RESULTADOS MOACS Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 74,0 Fs = 286,0 Fr = 89,50 Fs = 8,2Resolución del PMCOMO mediante OCH – Antonio M. Mora García 66 67.
EXPERIMENTOS Y RESULTADOS BIANT Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 84,5 Fs = 297,0 Fr = 146,50 Fs = 13,9Resolución del PMCOMO mediante OCH – Antonio M. Mora García 67 68.
EXPERIMENTOS Y RESULTADOS BIANT Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 84,5 Fs = 297,0 Fr = 146,50 Fs = 13,9Resolución del PMCOMO mediante OCH – Antonio M. Mora García 68 69.
EXPERIMENTOS Y RESULTADOS GREEDY MO Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 96,0 Fs = 307,5 Fr = 104,13 Fs = 301,1Resolución del PMCOMO mediante OCH – Antonio M. Mora García 69 70.
EXPERIMENTOS Y RESULTADOS GREEDY MO Más Rápido (λ = 0,9) 1500 iteraciones - 50 hormigas Más Seguro (λ = 0,1) Fr = 96,0 Fs = 307,5 Fr = 104,13 Fs = 301,1Resolución del PMCOMO mediante OCH – Antonio M. Mora García 70 71.
EXPERIMENTOS Y RESULTADOS Mono-CHAC 1500 iteraciones - 50 hormigas Fr = 78,0 Fs = 7,5Resolución del PMCOMO mediante OCH – Antonio M. Mora García 71 72.
EXPERIMENTOS Y RESULTADOS Mono-CHAC 1500 iteraciones - 50 hormigas Fr = 78,0 Fs = 7,5Resolución del PMCOMO mediante OCH – Antonio M. Mora García 72 73.
EXPERIMENTOS Y RESULTADOSRESULTADOS NUMÉRICOS 73 74.
EXPERIMENTOS Y RESULTADOS CONCLUSIONES DE LOS RESULTADOS • CHAC obtiene los mejores resultados tras su implementación extrema. RTC mejor que RTD. • CHAC-4 consigue muy buenos resultados con RTD. • MOACS encuentra buenas soluciones, pero peores en media que las de los algoritmos propuestos • BiAnt tiene soluciones a las que les falta bastante refinamiento (alto componente explorativo). • Greedy MO obtiene soluciones directas al destino en todos los casos, por lo que serán buenas si la zona intermedia es segura. • Mono-CHAC consigue buenas soluciones ‘consenso’. Los algoritmos propuestos resuelven satisfactoriamente el problema y son mejores que los adaptados.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 74 75.
EXPERIMENTOS Y RESULTADOS ÉSTUDIO PARÁMETRO λ • Comparación de resultados obtenidos con configuración de λ fija (enfoque de CHAC) y variable (enfoque original de MOACS y BiAnt). • La configuración fija obtiene mejores resultados en general.Resolución del PMCOMO mediante OCH – Antonio M. Mora García 75 76.
EXPERIMENTOS Y RESULTADOS APLICACIÓN DE BÚSQUEDA LOCAL • Se ha implementado un método de refinamiento de soluciones que se aplica una vez generadas las soluciones de todas las hormigas. • Cada una de ellas se modifica en ciertos puntos buscando una mejora. • Se han conseguido mejoras en los algoritmos que peores resultados ofrecían (los más explorativos).Resolución del PMCOMO mediante OCH – Antonio M. Mora García 76 77.
ÍNDICE  Definición del problema  Problemas multiobjetivo  Optimización basada en colonias de hormigas  Familia de algoritmos CHAC  Algoritmos adaptados  Experimentos y Resultados CONCLUSIONESResolución del PMCOMO mediante OCH – Antonio M. Mora García 77 78.
Publicaciones EN EL MARCO DEL TRABAJO • Revistas Internacionales: “CHAC. A MOACO Algorithm for Computation of Bi-Criteria Military Unit Path in the Battlefield: Presentation and First Results”. International Journal of Intelligent Systems. Aceptado 2007, publicado 2009. • Congresos Internacionales: NICSO 2006 EVO* 2007 GECCO 2007 ECAL 2007 NICSO 2007 CEC 2008 • Congresos Nacionales: CEDI 2005 MAEB 2007Resolución del PMCOMO mediante OCH – Antonio M. Mora García 78 79.
MUCHAS GRACIASResolución del PMCOMO mediante OCH – Antonio M. Mora García 79 Recommended

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 

Resolución 
 RESOLUCIÓN 
 RESOLUCIÓN 
 resolución 
 resolución 
 resolución