Universidad de Castilla-La Mancha Inteligencia Artificial e Ingeniería del Conocimiento Tema3: Métodos de búsqueda de soluciones (Búsqueda meta-heurística) Profesores: Luis Jiménez Linares. Luis Enrique Sánchez Crespo. Datos de la Asignatura Temarío Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo 1er Cuatrimestre Introducción a la IA. (Cap. 1) Introducción a los Agentes Inteligentes (Cap. 2) Métodos de búsqueda de soluciones (Cap. 3-4) – Simple sin información. – Con información (Heurística). – Meta-heurísticos: • Temple Simulado - Utilizando el azar. • Búsqueda tabú - Metamodelos. • Búsqueda por referencias. UCLM-ESI 2 de 110 Datos de la Asignatura Temarío Luis Enrique Sánchez Crespo 2º Cuatrimestre Sistemas basados en el conocimiento (Cap. 8-12) Inteligencia Artificial e Ingenieria del Conocimiento – Mediante lógica de predicados. – Mediante Sistemas de producción. Tratamiento de la incertidumbre (Cap. 13-15) – Redes Bayesianas. – Razonamiento aproximado (lógica difusa). UCLM-ESI 3 de 110 Búsqueda informada Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Algoritmos de búsqueda local y problemas de optimización UCLM-ESI 4 de 110 Búsqueda informada (heurística) Luis Enrique Sánchez Crespo Problemas de optimización puros: – Objetivo: encontrar el mejor estado según una función objetivo. Inteligencia Artificial e Ingenieria del Conocimiento Paisaje del espacio de estados: – Posición: definida por el estado. – Elevación: definida por el valor de la función de coste heurística o función objetivo. – Mínimo global: cuando la elevación corresponde al coste, el objetivo es encontrar el valle más bajo. – Máximo global: Si la elevación corresponde a una función objetivo => el objetivo es encontrar el pico más alto. Algoritmo de búsqueda local completo => Siempre encuentra el objetivo si existe. Algoritmo óptimo => Siempre encuentra un mínimo/máximo global. UCLM-ESI 5 de 110 Búsqueda informada (heurística) Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI 6 de 110 Búsqueda informada Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Algoritmos de búsqueda local y problemas de optimización Búsqueda de ascensión de colinas. Búsqueda de temple simulado. UCLM-ESI 7 de 110 Búsqueda informada (heurística) Luis Enrique Sánchez Crespo Algoritmo de búsqueda de ascensión de colinas: Inteligencia Artificial e Ingenieria del Conocimiento – Bucle que continuamente se mueve en dirección del valor creciente (hacia arriba). – Termina cuando alcanza "un pico" donde ningún vecino tiene un valor más alto. Características: – Es un algoritmo voraz, que no mantiene un árbol de búsqueda, sino sólo la representación del estado actual y el valor de su función objetivo. – Mantiene una estructura de datos del nodo actual que necesita sólo el registro del estado y su valor de función objetivo. – No se mira más allá de los vecinos inmediatos del estado actual. – Escoge el vecino que tiene un mejor valor de la función objetivo. – Finaliza cuando alcanza un “extremo” (máximo o mínimo, depende del planteamiento) UCLM-ESI 8 de 110 Búsqueda informada (heurística) Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Obviamente no garantizan encontrar la solución óptima, la búsqueda se puede quedar atascada: – en un máximo local: Es un pico que es más alto que cada uno de sus estados vecinos, pero más abajo que el máximo global. – mínimo local – en una meseta: Área del paisaje del espacio de estados donde la función de evaluación es plana. – en una terraza – en una cresta. UCLM-ESI 9 de 110 Búsqueda informada (heurística) Método de Escalada Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Método de Mejora Iterativa Determinista 1.- Partimos de la solución actual 2.- Buscamos un vecino con mejor calidad 3.- Si existe un vecino que mejore la solución actual entonces se sustituye la solución actual por la vecina volvemos al paso 2 sino parar Devuelve un óptimo local con respecto al vecindario utilizado (poco probable que sea óptimo global) UCLM-ESI 10 de 110 Búsqueda informada (heurística) Luis Enrique Sánchez Crespo 8-reinas con búsqueda por escalada: Inteligencia Artificial e Ingenieria del Conocimiento – Cada estado tiene las 8 reinas en el tablero – La función sucesor devuelve todos los estados posibles moviendo una reina a otra posición de la misma columna (| N(H)| =8*7= 56) – La función objetivo es el numero de pares de reinas que se atacan, directa o indirectamente. UCLM-ESI 11 de 110 Búsqueda informada (heurística) Luis Enrique Sánchez Crespo Ventajas e Inconvenientes Inteligencia Artificial e Ingenieria del Conocimiento Ventajas: – Mejora del valor objetivo en un entorno Inconvenientes: – Explora una pequeña porción del espacio de búsqueda Para evitar quedarse “atrapado” en un óptimo local hay variantes del algoritmo de escalada básico: – Escalada estocástica – Escalada de primera opción – Escalada con reinicio aleatorio UCLM-ESI 12 de 110 Búsqueda informada (heurística) Luis Enrique Sánchez Crespo Variantes del método de escalada Escalada estocástica Inteligencia Artificial e Ingenieria del Conocimiento – Escoge aleatoriamente entre los sucesores con mejor valoración que el estado actual. Escalada de primera opción – generan aleatoriamente sucesores, escogiendo el primero con mejor valoración que el estado actual Escalada con reinicio aleatorio – Se repite varias veces la búsqueda, partiendo cada vez de un estado inicial distinto, generado aleatoriamente – “si no te sale a la primera, inténtalo otra vez” – Si la probabilidad de éxito de una búsqueda individual es p, entonces el número esperado de reinicios es 1/p UCLM-ESI 13 de 110 Búsqueda informada (heurística) Método de Escalada Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Método del Máximo Gradiente (Steepest Descent Strategy) 1.- Partimos de la solución actual 2.- Buscamos de todos los vecinos el de mejor calidad 3.- Si existe un vecino mejor entonces se sustituye la solución actual por la vecina volvemos al paso 2 sino parar Devuelve un óptimo local con respecto al vecindario utilizado (más costoso que el método de escalada). UCLM-ESI 14 de 110 Búsqueda informada (heurística) Búsqueda Ascenso de Colinas Luis Enrique Sánchez Crespo Búsqueda Tabú (TS) Inteligencia Artificial e Ingenieria del Conocimiento Fred Glover 1989: – Metaheurístico que usa búsqueda agresiva del óptimo del problema Memoria +Aprendizaje = Búsqueda inteligente. Es mejor una mala decisión basada en información que una buena decisión al azar, ya que, en un sistema que emplea memoria, una mala elección basada en una estrategia proporcionará claves útiles para continuar la búsqueda. Una buena elección fruto del azar no proporcionará ninguna información para posteriores acciones." UCLM-ESI 15 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Simulated Annealing Origen: Procesos heurísticos que intentan simular el comportamiento de un grupo de átomos expuestos a enfriamiento (Recocido de sólidos) – Enfriamiento rápido: estado de alta energía (inestable) – Enfriamiento lento (recocido/temple): estado ordenado (de baja energía) Temple: proceso para endurecer metales, calentándolos a un temperatura alta y luego dejándolos enfriar gradualmente UCLM-ESI 16 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo La idea es movernos de los extremos locales mediante sacudidas (simulan la temperatura) que irán decreciendo en intensidad. Se selecciona aleatoriamente un sucesor del estado actual y se pasa a él de forma condicional – Si su valoración es mejor, se pasa a ese nuevo estado – Si la valoración del sucesor no es mejor, pasamos con probabilidad e∆E/T • ∆ E es el gradiente de la valoración • T es una metáfora de la temperatura en un proceso de templado metalúrgico Si T disminuye bastante despacio, el algoritmo encontrará un óptimo global con probabilidad cerca de uno. UCLM-ESI Utilizada en problemas de distribución VLSI y de optimización a gran escala. 17 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI 18 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado Luis Enrique Sánchez Crespo Algoritmo de Metrópolis Inteligencia Artificial e Ingenieria del Conocimiento Estrategia básica: Iteración del Algoritmo de Metrópolis Algoritmo de Metrópolis: Dado un estado i con energía Ei Se genera un nuevo estado j mediante una perturbación (pequeña distorsión en i) Se calcula la energía de j, Ej Si Ej - Ei ≤ 0 entonces se acepta el estado j si no se acepta el estado j con probabilidad exp[(Ei-Ej)/KBT] (KB es la constante de Boltzman y T la temperatura) UCLM-ESI 19 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Probabilidad de aceptación: ( c∈R+ es el parámetro de control, c= KBT) Inicialmente valores grandes de c aceptan cualquier estado. Al tender c a 0, se dejan de aceptar estados Búsqueda de equilibrio térmico en cada temperatura – Varias transiciones en cada temperatura – Caracterizado por la distribución de Boltzman UCLM-ESI 20 de 110 Búsqueda informada (heurística) Búsqueda Temple Simulado (Método) Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI 21 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Búsqueda Meta-Heurística UCLM-ESI 22 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Inteligencia Artificial e Ingenieria del Conocimiento Búsqueda Tabú => Búsqueda tabú - Metamodelos. Temple Simulado - Utilizando el azar. Búsqueda por referencias. UCLM-ESI 23 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Introducción: Inteligencia Artificial e Ingenieria del Conocimiento – Los orígenes de esta técnica son de los ’70, su forma actual fue presentada por Glover en 1986, y los primeros modelos teóricos son de 1992. – No se conoce ninguna prueba clara de la convergencia pero la técnica ha mostrado una eficacia notable en muchos problemas. – Existen refinamientos de esta técnica para aplicaciones específicas. Ideas básicas: – Para mejorar la eficiencia del proceso de exploración, es necesario registrar no sólo información local (como el valor actual de la función) sino que además información relacionada al proceso de exploración. – Lleva un registro del itinerario recientemente realizado, de forma de restringir los posibles vecinos sobre los que voy a avanzar. • La estructura de vecindad es dinámica UCLM-ESI 24 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Meta-heurística: Inteligencia Artificial e Ingenieria del Conocimiento – Dado que TS incluye en sus propias reglas algunas técnicas heurísticas, decimos que es una meta-heurística. – Su papel es dirigir y orientar la búsqueda de otro procedimiento (más local) de búsqueda. Clasificación: – Es determinística (vs. aleatoria) – Es basada en un individuo (vs. poblaciones) – Es de trayectoria (vs. constructiva) • Es un método iterativo. • Hay que definir la vecindad utilizada. – Utiliza memoria. UCLM-ESI 25 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo La Búsqueda Tabú combina la búsqueda local con una heurística para evitar parar en mínimos locales y evitar entrar en ciclos. Inteligencia Artificial e Ingenieria del Conocimiento – Puede verse como una meta-heurística que se superpone a una técnica de búsqueda y que se encarga de evitar que dicha técnica caiga en óptimos locales prohibiendo o penalizando ciertos movimientos. Búsqueda Tabú = Búsqueda Local + Mecanismo Memoria a Corto plazo (MCP). – MCP: Es una forma de exploración agresiva que intenta realizar el mejor movimiento posible sujeto a las restricciones del problema. Elementos claves: – Restricciones Tabú: restringir la búsqueda al clasificar ciertos movimientos como prohibidos (tabú), para evitar caer en soluciones recientemente generadas. – Criterio de aspiración: Liberar la búsqueda por medio de una función de memoria a corto plazo (estrategia de olvido). UCLM-ESI 26 de 110 Búsqueda Meta-Heurística Algoritmos Tabú Luis Enrique Sánchez Crespo Reformulación de la búsqueda local: – Algoritmo Inteligencia Artificial e Ingenieria del Conocimiento • • • • 1. Elegir una solución inicial i en S 2. Generar un subconjunto V* de N(i) 3. Elegir el mejor j en V* (es decir tales que f(j)<=f(k) para cualquier k en V *) 4. Si f(j) >= f(i) entonces terminar. Si no, establecer i=j e ir al paso 2 – Para V* = N(i) tenemos el caso de la búsqueda local. – El problema de este algoritmo es que nos quedamos atrapados en mínimos locales. – Tenemos que agregar la posibilidad de avanzar según pasos que no mejoren la solución • Con esto, el riesgo de repetir soluciones aumenta, la solución es utilizar memoria para descartar los ya visitados. UCLM-ESI 27 de 110 Búsqueda Meta-Heurística Algoritmos Tabú Luis Enrique Sánchez Crespo Otra aproximación: Inteligencia Artificial e Ingenieria del Conocimiento – Algoritmo • • • • • 1. Elegir una solución inicial i en S. Establecer i*=i. 2. Agregar i a la lista tabú. 3. Elegir el mejor j en V* = N(i) \ ListaTabu. 4. Si f(i) < f(i*) asignar i*=i. 5. Si se cumple alguna condición de fin, terminar. Si no asignar i=j e ir al paso 2. – El caso de búsqueda local es el caso particular en que la condición de parada es f(i)>=f(i*) UCLM-ESI 28 de 110 Búsqueda Meta-Heurística Memoria a Corto Plazo Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI 29 de 110 Búsqueda Meta-Heurística Determinar el mejor movimiento Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI 30 de 110 Búsqueda Meta-Heurística Niveles de Aspiración Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo UCLM-ESI Los criterios de aspiración permiten movimientos aunque sean tabú => Aquellos movimientos que producen una mejor solución que la mejor solución actual. 31 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Condiciones de parada: Inteligencia Artificial e Ingenieria del Conocimiento – – – – Cantidad de iteraciones. Tiempo máximo de CPU. Alcanzar una solución i que sea mejor que un cierto valor fijado al inicio. No obtener una nueva mejor solución i* luego de una cierta cantidad de iteraciones. – Todos los vecinos del paso actual están incluidos en la lista tabú. Largo de la lista Tabú: – Una lista tabú de largo N, nos garantiza que no se van a crear ciclos de largo inferior a N. – La cantidad de casos a agregar a la lista puede ser muy grande. – Al modelar el problema se decide el largo de la lista Tabú. UCLM-ESI 32 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Información a guardar en la lista Tabú: – Por razones de eficiencia, sólo guardo una parte de la información que describe a las soluciones recorridas. – El problema de guardar sólo una parte de la solución, es que puede haber otras soluciones aún no visitadas que en esa parte de la información sea igual. – Lo que se hace es definir un criterio de aspiración para aceptar soluciones por más que estén en la lista tabú. – El criterio de aspiración más común es habilitar las mejores soluciones, aún cuando ellas hayan sido visitadas recientemente. UCLM-ESI 33 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Varias Listas Tabú: Inteligencia Artificial e Ingenieria del Conocimiento – Por motivos de eficiencia se pueden utilizar varias listas Tr al mismo tiempo. – Cada lista Tr guarda un componente de la solución. – Los componentes que agrego a las listas son componentes que reciben el status tabú, es decir componentes no permitidos para futuras soluciones. Algoritmo Tabu Search: s <- GenerarSolucionInicial InicializarListasTabu(TL1… TLn) While no condicion_fin do - V* <- {z de N(s) tal que z no pertenece a la lista o bien z cumple las condiciones de aspiración) - s <- mejorSolución(s, V*) - Actualizo listas tabú y condiciones de aspiración End While UCLM-ESI 34 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Eficiencia del método: – La eficiencia depende principalmente de cómo esté modelado el problema. – Importante: definir correctamente la estructura de vecindad y función objetivo. – Secundario: ajustar parámetros. – Un modelo es bueno cuando al aplicar la técnica, ésta no es muy sensible a la elección de parámetros. Modelado efectivo: – Elegir un punto inicial i tal que existe un camino desde i al óptimo i*. • Si no hay, entonces no tengo forma de llegar • Puede ser difícil lograr que se cumpla esta condición: lo que se hace es trabajar sobre un espacio de soluciones factibles extendido UCLM-ESI – Elegir una topología que no tenga muchos “valles” o “llanuras”. – Se puede modificar la función objetivo en tiempo de ejecución, de forma de remplazar los valles ya visitados por altas montañas. 35 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Implementación efectiva: – En cada paso puede ser necesario evaluar muchas condiciones y es importante realizar este cómputo en una manera eficiente. – Frecuentemente, es posible y más rápido calcular cuánto varía la función objetivo al desplazarme al vecino, que evaluar a nuevo la función objetivo Inteligencia Artificial e Ingenieria del Conocimiento • A veces se recurre a otras heurísticas para calcular la variación al desplazarme al vecino Usar la memoria de forma efectiva: – Elegir un tamaño adecuado para las listas tabú • Si son muy chicas, se producen ciclos • Si son muy grandes, se vuelven muy restrictivas – Una manera eficaz para evitar esta dificultad es utilizar una lista del tabú con tamaño variable. • Cada elemento de la lista pertenece a ella para un número de iteraciones (limitado por valores máximos y mínimos dados) – El uso de la memoria puede ayudar a intensificar la búsqueda en "buenas“ regiones o a diversificar la búsqueda hacia regiones inexploradas. UCLM-ESI 36 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Aplicaciones de Ejemplo: – Problemas de las N-Reinas. – The Graph Coloring Problem • Tengo que colorear países en un mapa utilizando una cantidad mínima de colores distintos Inteligencia Artificial e Ingenieria del Conocimiento – The Maximum Independent Set Problem • Tengo que buscar en un grafo, un subconjunto vértices de tamaño máximo, tales esos vértices no comparten aristas – The Course Scheduling Problems • Planificar horarios de clases UCLM-ESI 37 de 110 Búsqueda Meta-Heurística Las N-Reinas Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Ejemplo de instancia del problema de las 4-reinas: Estructura usada para almacenar los atributos correspondientes a los intercambios de 2 reinas: UCLM-ESI 38 de 110 Búsqueda Meta-Heurística Las N-Reinas Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Iteración 0 de la búsqueda tabú en el problema de las 7 reinas: Iteración 1 de la búsqueda tabú en el problema de las 7 reinas: UCLM-ESI 39 de 110 Búsqueda Meta-Heurística Las N-Reinas Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Iteración 2 de la búsqueda tabú en el problema de las 7 reinas: Iteración 3 de la búsqueda tabú en el problema de las 7 reinas: UCLM-ESI 40 de 110 Búsqueda Meta-Heurística Las N-Reinas Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Iteración 4 de la búsqueda tabú en el problema de las 7 reinas: Iteración 5 de la búsqueda tabú en el problema de las 7 reinas: UCLM-ESI 41 de 110 Búsqueda Meta-Heurística Las N-Reinas Luis Enrique Sánchez Crespo Con el valor (1,3) se aplica el criterio de aspiración => Se determina que este intercambio producirá una solución mejor que la actual y por tanto se ignora la prohibición. Inteligencia Artificial e Ingenieria del Conocimiento Iteración 6 de la búsqueda tabú en el problema de las 7 reinas: UCLM-ESI 42 de 110 Búsqueda Meta-Heurística Las N-Reinas Luis Enrique Sánchez Crespo Las aplicación de la búsqueda tabú al problema de las N-reinas satisface los siguientes criterios: – Simple: Se basa en estructuras de memoria. – Precisa: Los pasos son concretos. Inteligencia Artificial e Ingenieria del Conocimiento • Algunas soluciones son tabús por un tiempo especificado. • En algunos casos predeterminados se viola la restricción tabú. – Coherente: Sus principios fundamentales son coherentes con las estructuras computaciones que se requieren para su implementación. – Eficaz: Se han encontrado soluciones optimas. – Eficiente: El tiempo de ejecución es razonable. – General: El algoritmo de búsqueda tabú es general, pero su implementación en un programa es ad-hoc para el problema. – Adaptable: Se adapta a gran cantidad de problemas. – Robusta: Partiendo de una lista tabú, se pueden añadir módulos para utilizar memoria de largo plazo y otros criterios de aspiración. – Interactiva: – Múltiple: Puede producir varias soluciones optimas para analizarlas. – Autónoma: UCLM-ESI 43 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo The Graph Coloring Problem: – Grafo: Un país es un vértice, una frontera es una arista – Consiste en particionar el grafo en k conjuntos, un conjunto para cada color – Para relajar el problema, se asume que el valor k es dado al algoritmo – Solución inicial: pintar de colores arbitrarios – Vecindad: en cada paso busco una arista que una dos vértices de mismo color, y cambio el color de uno de los vértices – Función objetivo: se cuenta la cantidad de países que comparten colores, se intenta minimizar ese valor • Aquí es más fácil evaluar cómo cambia la función objetivo al desplazarme al vecino, que evaluar nuevamente – La lista tabú registra los pares (vértice, color) indicando que no puedo volver a pintar el mismo vértice del mismo color durante N pasos (N es el largo de la lista tabú) UCLM-ESI 44 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo The Maximum Independent Set Problem: – Para relajar el problema, se busca un conjunto que sea de un tamaño k dado – Solución inicial: elijo k vértices arbitrarios – Vecindad: intercambio un vértice de la solución actual con un vértice de afuera de ese conjunto – Función objetivo: cuento la cantidad de aristas que unen los vértices de la solución actual, esa cantidad tiene que llegar a cero – Tres listas tabú • Lista con las soluciones visitadas recientemente • Lista con vértices introducidos recientemente • Lista con vértices quitados recientemente UCLM-ESI k=3 45 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo The Course Scheduling Problems: – Es un problema similar al de los países de colores Inteligencia Artificial e Ingenieria del Conocimiento • Cada clase a dictar es un vértice • Cada período es un color • Una arista entre dos vértices, implica que las dos clases no se pueden dictar al mismo tiempo – En la vida real las escuelas tienen restricciones adicionales con las que es difícil trabajar (disponibilidad salones grandes, uso de proyectores u otros recursos, clases con duración distinta, lograr que los horarios sean compactos, restricciones geográficas y de precedencia) UCLM-ESI 46 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Conclusiones: – Los ejemplos anteriores muestran el rango de aplicaciones para los cuales se utiliza búsqueda Tabú. – Si bien parece necesario tener que ajustar varios parámetros, existen estudios teóricos que indican un alto grado de libertad para elegir estos parámetros. – Por el momento, esta técnica aparenta ser un enfoque complejo para grandes problemas de optimización, en vez de ser un método elegante y simple. – Un problema que se presenta al utilizar esta técnica es que a la complejidad del problema a resolver se le agrega complejidad inherente a la propia técnica. UCLM-ESI 47 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Búsqueda Tabú aplicada a VPR: – TABUROUTE es una nueva heurística para el problema de ruteo de vehículos con restricciones de capacidad y largo de ruta. – Las soluciones vecinas se obtienen quitando un vértice de su ruta actual e insertándolo en otra ruta – El problema está relajado de forma de aceptar soluciones vecinas que no cumplen las restricciones – TABUROUTE es la heurística de mejor desempeño para un cierto conjunto de problemas benchmark, y produce frecuentemente la mejor solución conocida. UCLM-ESI 48 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Vehicle Routing Problem: – Tenemos un grafo G = (V, A), donde el vértice v0 es el “depósito” desde el cual construyo las rutas, y los demás vértices son “ciudades” – En el depósito hay m vehículos idénticos – Cada arco tiene asociada una distancia no negativa – Para simplificar: “costo” = “tiempo” = “distancia” – El objetivo es construir un conjunto de costo mínimo de rutas tales que • • • • (a) Todas las rutas comienzan y terminan en el depósito (b) Cada ciudad es visitada exactamente una vez por exactamente un vehículo (c) Se cumplen ciertas restricciones auxiliares (d) Cada ciudad tiene asociada una demanda qi. La demanda total asociada a un vehículo no puede exceder la capacidad Q del vehículo. • (e) Cada ciudad requiere ser atendida en un tiempo máximo Di, y el tiempo total de cada ruta (incluyendo los servicios) no puede superar un cierto valor L UCLM-ESI 49 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Vehicle Routing Problem - Ejemplo: (1.6, 14) (1.6, 9) (8.3, 10) 3 2 (0.0, -) Inteligencia Artificial e Ingenieria del Conocimiento 4 m = 5 (cantidad de vehículos) 5 3 (2.7, 3) (2.6, 11) 4 2 (6.1, 4) 3 3 3 3 (0.4, 3) 3 (3.7, 9) Depósito 2 Constantes: Q = 11.5 (capacidad de un vehículo) L = 25 (duración máxima de una ruta) 3 5 (0.0, -) 4 (1.4, 3) (demanda, tiempo) UCLM-ESI 50 de 110 Búsqueda Meta-Heurística Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo TABUROUTE – Estructura de Sols: – Una solución es un conjunto de rutas (R1, ..., Rm) donde m [1, m], y Rr = (v0, vr1, vr2, ... v0) – Las rutas R1...Rm pueden ser factibles o no según las restricciones (esto es para relajar la estructura de vecindad) – Una solución vecina es una solución obtenida luego de quitar un vértice de su ruta actual y colocarlo en otra ruta. Esto se realiza utilizando las heurísticas GENI y US. Función objetivo: – Para las soluciones factibles S, asociamos la función objetivo (suma de los costos) F1 ( S ) c ij r ( vi ,v j )Rr – Además, para cualquier solución S asociamos un objetivo F2(S) • La función F2 es igual a F1, pero penaliza las soluciones que no sean factibles UCLM-ESI – El algoritmo se desplaza utilizando F2 como criterio 51 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo TABOROUTE - Resultados: Inteligencia Artificial e Ingenieria del Conocimiento Problema n CW 1 2 3 4 5 6 7 8 9 10 11 12 13 14 50 75 100 150 199 50 75 100 150 199 120 100 120 100 585 900 886 1204 1540 619 976 973 1426 1800 1079 831 1634 877 MJ AG DV 575 910 882 1259 1545 599 969 999 1289 1770 1100 879 1590 883 556 885 860 1085 1351 577 939 913 1210 1464 1047 834 1551 874 586 885 889 1133 1424 593 963 914 1292 1559 1058 828 1562 882 GM CMT1 FJ CMT2 OSA 532 874 851 1079 1389 560 933 888 1230 1518 1266 937 1770 949 547 883 851 1093 1418 565 969 915 1245 1508 1066 827 1612 876 524 857 833 1014 1420 560 916 885 1230 1518 825 848 534 871 851 1064 1386 560 924 885 1217 1509 1092 816 1608 878 528 838,62 829,18 1058 1378 555,43 909,68 866,75 1164,1 1417,9 1042,1 819,59 1550,2 866,37 PF OTS T 536 842 851 1081 560 929 887 1227 1049 826 1631 866 524,61 844 835 1044,35 1334,55 555,43 911 866,75 1184 1417,85 1042,11 819,59 1547 866,37 524,61 835,32 828,98 1029,64 1300,89 555,43 909,68 865,94 1164,24 1403,21 1073,05 819,56 1550,15 886,37 TR Standard 524,61 835,77 829,45 1036,16 1322,65 555,43 913,23 865,94 1177,76 1418,51 1073,47 819,56 1573,81 866,37 TR Best 524,61 835,32 826,14 1031,07 1311,35 555,43 909,68 865,94 1162,89 1404,75 1042,11 819,56 1545,93 866,37 PF, OTS, y T son otras variantes de Tabu Search UCLM-ESI 52 de 110 Búsqueda Meta-Heurística Luis Enrique Sánchez Crespo Conclusiones: Inteligencia Artificial e Ingenieria del Conocimiento – TABUROUTE tiene mejor desempeño que las demás heurísticas existentes – TABUROUTE produce frecuentemente las best known solutions – Hay que implementar dos mecanismos: • El hecho de permitir soluciones no factibles, penalizándolas en la función objetivo. • Aplicar él algoritmo GENI para ejecutar las inserciones – Es posible utilizar una solución inicial no factible – Otras conclusiones • Puede utilizarse en contextos en que la cantidad de vehículos sea variable o acotada, o con distintas características • Se pueden agregar fácilmente restricciones adicionales, como que ciertas ciudades requieren ciertos vehículos • Existen variantes con varios depósitos, y rutas primarias y secundarias UCLM-ESI 53 de 110 Búsqueda informada Inteligencia Artificial e Ingenieria del Conocimiento Luis Enrique Sánchez Crespo Resumen UCLM-ESI 54 de 110 Universidad de Castilla-La Mancha Luis Jiménez Linares Luis.jimenez@uclm.es Luis Enrique Sánchez Crespo LuisEnrique@SanchezCrespo.org