Inteligencia Artificial Técnicas de Búsqueda de Soluciones

Anuncio
Técnicas de Búsqueda de Soluciones
Técnicas de Búsqueda de Soluciones
Inteligencia Artificial
Técnicas de Búsqueda de Soluciones
1
Elizabeth Montero Ureta
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Departamento de Informática
Universidad Técnica Federico Santa Marı́a
Campus Santiago
1er Semestre 2009
1/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
2/18
Técnicas de Búsqueda de Soluciones
Visiones:
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Árboles de Búsqueda
¿Tiene una solución?
Definición: Estructura en forma de árbol que permite contruir
instanciaciones en un problema de búsqueda.
Encontrar una solución
Encontrar todas las soluciones
Encontrar el número de soluciones
Un árbol de búsqueda posee tantos niveles como variables tiene el
problema + 1
¿Este valor pertenece a una solución?
Un árbol tiene tantos descendientes por nivel como valores tenga el
dominio de cada variable
Encontrar todos los valores posibles para una variable
Encontrar una solución óptima
3/18
4/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Técnicas de Búsqueda de Soluciones
Estructura
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Backtracking
Backtracking Cronológico
Backtracking Guiado por el Grafo de Restricciones
Backtracking Guiado por los Conflictos
5/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
6/18
Técnicas de Búsqueda de Soluciones
Backtracking Cronológico
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Backtracking Guiado por el Grafo de Restricciones
En caso de error sobre una
variable se regresa a la variable
conectada por una restricción
más recientemente instanciada.
En cada nivel se busca un valor
posible dentro del dominio de la
variable que no genere conflictos
con los valores de las variables
ya instanciadas.
Método interesante para los
grafos de restricciones sparse.
7/18
8/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Técnicas de Búsqueda de Soluciones
Backtracking Guiado por Conflictos
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Estructura
Para cada variable guardar el conjunto de conflictos Conf (xi )
Para cada valor erróneo registrar en Conf (xi ) la variable más
prematuramente instanciada y en conflicto con el intento actual de
instanciación.
Cuando no quedan valores a intentar, el conjunto entrega las causas
del problema y el punto de regreso será la variable más reciente g en
el conjunto de conflictos.
Se actualiza el conjunto de conflictos.
9/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
10/18
Técnicas de Búsqueda de Soluciones
Forward Checking
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Real Full Look-Ahead
Forward Checking
Real Full Look-Ahead
11/18
12/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Técnicas de Búsqueda de Soluciones
Tipos de Heurı́sticas
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Heurı́sticas de elección Vertical: Elección de los Valores
Heurı́sticas de elección Vertical:
Elección de los Valores
Heurı́sticas de elección Vertical
Búsqueda de UNA solución: Elección de los menos restringidos →
Heurı́stica de Minimización de Conflictos
Heurı́sticas de elección Horizontal
Búsqueda de la solución óptima: Elección del mejor localmente
según el criterio a optimizar.
Búsqueda de todas las soluciones: Orden indiferente.
13/18
Técnicas de Búsqueda de Soluciones
14/18
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Técnicas de Búsqueda de Soluciones
Heurı́sticas de elección Horizontal: Elección de las Variables
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Ejemplo: Elección de Variables
Problema:
Variables: i, j y k
Dominios:
Heurı́sticas de elección Horizontal:
Elección de las Variables
Di = {a, b}
Dj = {a, b}
Dk = {a, b, c}
Orden Estático: Establecido antes de comenzar la búsqueda
La variable asociada a la mayor cantidad de restricciones (Variable
más conectada)
La variable unida a las restricciones más difı́ciles
Restricciones:
i =k
j =k
Orden Dinámico: Cambia con el transcurso de la búsqueda
Orden dinámico del dominio más pequeño
Filtro por forward checking o look-ahead
Considere los siguientes ordenes de instanciación:
15/18
1
i-j-k
2
k-j-i
16/18
Técnicas de Búsqueda de Soluciones
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Técnicas de Búsqueda de Soluciones
Ejemplo I
Árboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Guı́a de Búsqueda
Ejemplo II
Considere el siguiente grafo que representa el problema de coloreo de
grafos con 3 colores modificado
Construya el árbol de búsqueda que realiza BT
¿Cambia en algo la búsqueda si decide comenzar con una variable
con dominio más reducido?, ¿Por qué?
Construya la red arco-consistente equivalente. ¿Cuál es el nuevo
árbol de búsqueda?
¿Qué hace FC?, ¿Cuál es el árbol de búsqueda?
¿Qué hace RFL?, ¿Cuál es el árbol de búsqueda?
¿Qué hace GBJ?
¿Qué sucede con los cambios de orden en la instanciación?
17/18
18/18
Descargar