880 likes | 1.04k Views
Fundamentos de Inteligencia Artificial. Búsqueda Eduardo Morales/L. Enrique Sucar Sesión 03. Solución de Problemas. Asociado a la inteligencia. Identificación y definición del problema Identificación del criterio de evaluación Generación de alternativas.
E N D
Fundamentos de Inteligencia Artificial Búsqueda Eduardo Morales/L. Enrique Sucar Sesión 03
Solución de Problemas Asociado a la inteligencia • Identificación y definición del problema • Identificación del criterio de evaluación • Generación de alternativas Solución de muchos problemas en IA: básicamente búsqueda y evaluación
Representación del espacio de estados • define un espacio de estados • (explícito / implícito) • especifica los estados iniciales • especifica los estados finales (metas) • especifica las reglas que definen las acciones • disponibles para moverse de un estado a otro
Representación de espacio de estados En este contexto: El proceso de solución de problemas = encontrar una secuencia de operaciones que transformen al estado inicial en uno final Se reuiere una estrategia de búsqueda
Q Q Q B Ejemplo: problema de las 8 reinas Reinas (Q) Tablero de Ajedrez C A A=8 B=9 C=10
Para el problema de las 8 reinas podemos tener diferentes opciones: • solución incremental: acercarse a la meta haciendo decisiones locales • sistemática: no repetir y no excluir
Medios (espacio de estados): • transformar (hasta encontrar la meta) • vs. • construir (poco a poco) Posible heurística: poner una reina por renglón en un lugar que deje el mayor número de lugares sin atacar
Otras ideas • Estimar qué tan cerca se está de la solución (v.g., 8-puzzle) • Usar información extra (v.g., estimar distancias en base a coordenadas) • Usar subestimaciones (e.g., TSP vs. árbol de expansión mínimo) • Contruir una estrategia (e.g., detectar moneda falsa) • Grafos AND/OR • Identificar meta crítica (e.g., Torres de Hanoi)
Cómo encontramos una buena heurística? Factores a considerar: • calidad de la solución (a veces puede no importar) • diferencia en complejidad entre una solución solución óptima • en general, se busca encontrar la solución más barata
Qué necesitamos: Estructura simbólica que represente subconjuntos de soluciones potenciales (agenda) Operaciones/reglas que modifiquen símbolos de la agenda y produzcan conjuntos de soluciones potenciales más refinadas Estrategia de búsqueda que decida qué operación aplicar a la agenda
Terminología: nodo, árbol, hoja, nodo-raíz, nodo-terminal, branching factor (factor de arborescencia), ramas, padres, hijos, árbol uniforme, ...
nodos expandidos (closed): • todos los sucesores • nodos explorados pero no expandidos : • sólo algunos sucesores • nodos generados pero no explorados • (open) • nodos no generados Paso computacional primordial: expansión de nodos
Nodo raíz Ramas Padre Hijos Profundidad Nodos terminales/hojas
Nodo expandido (closed) Nodos generados No explorados (open) Nodo explorado No expandido Nodo no generado
Propiedades La estrategia de control es sistemática si: 1. no deja un sólo camino sin explorar (completo) 2. no explora un mismo camino más de una vez (eficiencia)
Propiedades de algoritmos de búsqueda (heurísticas): 1. Completo: si encuentra una solución cuando ésta existe 2. Admisible: si garantiza regresar una solución óptima cuando ésta existe
Propiedades de algoritmos de búsqueda (heurísticas): 3. Dominante: un algoritmo A1 se dice que domina a A2 si todo nodo expandido por A1 es también expandido por A2 (“más eficiente que”) 4. Óptimo: un algoritmo es óptimo sobre una clase de algoritmos si domina a todos los miembros de la clase
Procedimientos de Búsqueda Algún camino: • Sin información: • depth-first (en profundo) • breadth-first (a lo ancho) • Con información: • hill climbing • beam search • best first
El mejor camino: • British museum • branch and bound • A* • Juegos • minimax • alpha-beta • SSS* • SCOUT
GRAFO 4 4 C A B 3 5 5 I M 4 3 D E F 2 4
ÁRBOL DE BÚSQUEDA I A D B D A E F C E E B B 11 D B F C E A C M F 14 17 15 15 13 C M M F 19 19 17 M 25
Depth first - backtracking (LIFO) Crea una agenda de un elemento (el nodo raíz) hasta que la agenda este vacía o se alcance la meta siel primer elemento es la meta entoncesacaba si no elimina el primer elemento y añade sus sucesores al frentede la agenda
DEPTH-FIRST SEARCH (I) I (A D) A D (B D D) D A B E (C E D D) F E E B B C 11 (E D D) E A D F B F C C M 14 17 15 15 13 M M F C (D F D D) 19 19 17 M (F D D) 25 (M D D)
Problemas: árboles con caminos de profundidad muy grande Variaciones: • depth-bound (casi todos): limitar la búsqueda hasta cierto límite de profundidad • interative-deepening: explorar a profundidad progresivamente • con algo de información: ordena los nodos expandidos
Breadth first Crea una agenda de un elemento (el nodo raíz) hasta que la agenda este vacía o se alcance la meta si el primer elemento es la meta entonces acaba si no elimina el primer elemento y añade sus sucesores al final de la agenda Problemas: árboles con arborescencia muy grande Variantes: búsqueda de costo uniforme
ÁRBOL DE BÚSQUEDA I A D B D A E F C E E B B 11 D B F C E A C M F 14 17 15 15 13 C M M F 19 19 17 M 25
(I) 0 4 (D F B F C E A C M) (A D) 1 (F B F C E A C M) (D B D) 2 (B D A E) (B F C E A C M M) (D A E C E) (F C E A C M M C) (A E C E E) (E C E E B) (C E A C M M C M) 3 BREADTH-FIRST SEARCH (C E E B B F) (E A C M M C M) (E E B B F) (A C M M C M F) (E B B F D F) (B B F D F B F) (C M M C M F) (B F D F B F C E) 5 (M M C M F) ( F D F B F C E A C)
Profund. Nodos Tiempo Memoria 0 100 bytes 1 1 miliseg. 2 111 .1 seg. 11 kilobytes 11 seg. 4 11,111 1 megabyte 111 megabytes 6 18 min. 10 14 8 6 12 10 10 10 10 10 8 11 gigabytes 31 hr. 10 128 días 1 terabyte 12 111 terabytes 35 años 11,111 terabytes 14 3500 años Requerimientos de tiempo y memoria para breadth-first. Factor de arborecencia = 10; 1,000 nodos/sec; 100 bytes/nodo
Complejidad Comparación en nodos buscados: Si n = profundidad del árbol b = braching factor d = profundidad de un nodo meta
n b • depth-first: • mejor caso: d nodos buscados • peor caso: - n n n+1- d d n+1 - i i b b - = b b b-1 i= 0 i= 0
d+1 d - - d 1 b 1 i - d - 1 i d 1 b b = b b = - - b 1 b 1 i= 0 i= 0 d b breadth-first: • mejor caso: • peor caso:
d l m d d d d b b b b b b b b b b Xm Xd X l Criterio Iterative Bidireccional Breadth Costo Depth Depth first uniforme first limited deepening d/2 Tiempo b d/2 Espacio b si no no si si si Optimo si(si l ≥d) si si si si no Completo Comparación de estrategias. b = factor de arborecencia; d = profundidad solución; m = máxima profundidad árbol; l = límite de profundidad.
Algoritmos con Información Hill-Climbing Crea una agenda de un elemento (el nodo raíz) hasta que la agenda este vacía o se alcance la meta si el primer elemento es la meta entoncesacaba si no elimina el primer elemento y añade sus sucesores a la agenda ordena todos los elementos de la agenda selecciona el mejor y elimina el resto
BÚSQUEDA HILL-CLIMBING Hill climbing Heurística: ve a la ciudad más cercana I (I) (A D) (D B) (E C) A D D A B E F E E B B C 11 E A D F B F C C M 14 17 15 15 13 M M F C 19 19 17 M 25
Best-first Crea una agenda de un elemento (el nodo raíz) hasta que la agenda este vacía o se alcance la meta si el primer elemento es la meta entonces acaba si no elimina el primer elemento y añade sus sucesores a la agenda ordena todos los elementos de la agenda
BEST FIRST Heurística:Distancia acumulada más corta 1 I A 3 D 4 2 I A D 4 B 7 D 8
3 I A D A E B D 7 8 9 6
I 4 A D E A E B D 9 7 8 B F 11 10
I 5 A D E A E B D B 8 9 B F C E 11 10 11 12
I 6 A D E A E B D B D 9 B F C E E 11 10 11 12 10
I 7 A D B D A E C E E E F B B 11 12 13 11 10 F B 15 14
I 8 A D B D A E C E E E F B B 11 12 13 11 F B F M 15 14 13
Beam search Crea una agenda de un elemento (el nodo raíz) hasta que la agenda este vacía o se alcance la meta siel primer elemento es la meta entonces acaba si no elimina el primer elemento y añade sus sucesores a la agenda ordena todos los elementos de la agenda y selecciona los Nmejores (los demás eliminalos)
EJEMPLO DE BÚSQUEDA BEAM SEARCH
Beam search Beam=2 1 I A D 3 4 I 2 A D 4 B D 7 8 X
3 I A D A E B 6 9 7 X
I 4 A D E E B 7 10 B F 11 X
I 5 A D E E B B F 10 C E 11 12 X
I 6 A D E E B B F C M