Download Búsqueda informada y heurística

Document related concepts

Hiperheurística wikipedia , lookup

Heurística admisible wikipedia , lookup

Algoritmo de búsqueda A* wikipedia , lookup

Algoritmo de recocido simulado wikipedia , lookup

Inteligencia artificial wikipedia , lookup

Transcript
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
[email protected]
Luis Enrique Sánchez Crespo
[email protected]