1.15k likes | 1.5k Views
Inteligencia Artificial e Ingenieria del Conocimiento. 2 de 110. Datos de la Asignatura Temar
E N D
1. Inteligencia Artificial e Ingenieria del Conocimiento 1 de 110 Datos de la AsignaturaTemarío 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.
2. Inteligencia Artificial e Ingenieria del Conocimiento 2 de 110 Datos de la AsignaturaTemarío 2º Cuatrimestre
Sistemas basados en el conocimiento (Cap. 8-12)
Mediante lógica de predicados.
Mediante Sistemas de producción.
Tratamiento de la incertidumbre (Cap. 13-15)
Redes Bayesianas.
Razonamiento aproximado (lógica difusa).
3. Universidad de Castilla-La ManchaInteligencia Artificial e Ingeniería del Conocimiento Tema3: Métodos de búsqueda de soluciones (Búsqueda informada y exploración)
4. Inteligencia Artificial e Ingenieria del Conocimiento 4 de 110 Búsqueda informada Estrategias de búsqueda informada (heurísticas).
Funciones heurísticas
Algoritmos de búsqueda local y problemas de optimización.
Búsqueda local en espacios continuos.
Agentes de búsqueda online y ambientes desconocidos.
Resumen.
5. Inteligencia Artificial e Ingenieria del Conocimiento 5 de 110 Búsqueda informada
6. Inteligencia Artificial e Ingenieria del Conocimiento 6 de 110 Búsqueda informada (heurística) Búsqueda informada: La que utiliza el conocimiento específico del problema más allá de la definición del problema en sí mismo.
7. Inteligencia Artificial e Ingenieria del Conocimiento 7 de 110 Búsqueda informada (heurística) Usar información “heurística” para adivinar cuál nodo expandir
la heurística aparece bajo la forma de una función de evaluación basada en la información específica para el dominio o contexto relacionada con el problema
el problema de búsqueda se puede considerar como la maximización o minimización de una función, como es del todo general.
La función de evaluación nos proporciona una manera de evaluar un nodo “localmente” basado en una estimación del costo de llegar desde el nodo al nodo meta.
Problemas con la Heurística
la heurística suele ser poco certera - problema abierto
valor de la actividad a un meta-nivel - problema abierto
puede no encontrar la mejor respuesta - superado por algoritmo A*
8. Inteligencia Artificial e Ingenieria del Conocimiento 8 de 110 Búsqueda informada
? Búsqueda voraz primero el mejor.
Búsqueda A*: minimizar el costo estimado total de la solución.
Búsqueda heurística con memoria acotada.
Aprender a buscar mejor.
9. Inteligencia Artificial e Ingenieria del Conocimiento 9 de 110 Búsqueda informada (heurística)BPM
10. Inteligencia Artificial e Ingenieria del Conocimiento 10 de 110 Búsqueda informada (heurística)BPM Ordenar los nodos de tal forma que el nodo de mejor evaluación sea el primero en ser expandido.
la función de evaluación no es omnisciente - provee una medida estimada de la deseabilidad de usar cierta ruta hacia el estado meta.
la medida debe incorporar cierto estimación de costo de la ruta desde un estado hacia el estado meta más cercano a él.
11. Inteligencia Artificial e Ingenieria del Conocimiento 11 de 110 Búsqueda informada (heurística)BPM Idea básica ? expandir el nodo que maximiza o minimiza la función de evaluación f(n)
Estrategia Avara: f(n) = h(n), donde h(n) estima el costo de llegar desde el nodo n hacia la meta.
¿Qué sucede si a cada paso tratamos de acercarnos al nodo meta?
12. Inteligencia Artificial e Ingenieria del Conocimiento 12 de 110 Búsqueda informada (heurística)BPM Objetivo de la familia de búsquedas llamada Búsqueda Primero el Mejor ? encontrar velozmente la meta:
Expandimos el nodo más cercano al nodo meta.
Para merecer optimalidad, queremos encontrar rápidamente la meta más cercana al origen.
El objetivo es distinto al de la búsqueda de coste uniforme (la única búsqueda ciega interesada en costos) que no está dirigida a la meta sino hacia emplear el coste de ruta ya recorrida “g”, para decidir qué nodo expandir ? en coste uniforme la lista se ordena para obtener la solución más barata en base a datos experimentados.
13. Inteligencia Artificial e Ingenieria del Conocimiento 13 de 110 Búsqueda informada (heurística)Búsqueda Avara La función de evaluación muestra la siguiente heurística:
? h(n) = costo estimado entre n y la meta
por ejemplo
hDLR(n) = distancia en línea recta desde n hasta destino.
? La búsqueda avara expande el nodo que pareciera estar más cerca de la meta.
14. Inteligencia Artificial e Ingenieria del Conocimiento 14 de 110 Búsqueda informada (heurística) Búsqueda Avara Una de las búsquedas Primero lo Mejor más sencillas - MIN costo estimado para llegar a la meta (2º sumando de f = g + h ? f = h)
ese costo se puede estimar pero no determinar con exactitud, la buena heurística ayuda.
la función heurística h es una función que calcula los costes estimados.
h(n) = coste estimado de la ruta más barata desde el estado en n hasta el estado meta.
15. Inteligencia Artificial e Ingenieria del Conocimiento 15 de 110 Búsqueda informada (heurística)Búsqueda Avara El nodo con valor h mínimo es el que se va a expandir: cola con privilegios
h puede ser cualquier función, siempre que valga cero en la meta, pero la calidad cambia mucho
las funciones heurísticas son problema-intensivas (son problema-específicas)
en problemas de búsqueda de ruta una buena h es hDLR, donde DLR es distancia en línea recta
una ruta de A a B suele ir en la dirección correcta.
16. Inteligencia Artificial e Ingenieria del Conocimiento 16 de 110 Búsqueda informada (heurística)Búsqueda Avara Adoptar la primera selección con una visión inmediata, sin preocuparse si ha de ser la mejor con una perspectiva a largas vistas.
La búsqueda halla soluciones en forma rápida, que no siempre son las óptimas.
Susceptible a pasos en falso (Iasi ? Fagaras) que va hacia Neamt, ruta muerta sin salida
Hay que cuidarse de los estados repetidos
oscilaciones entre Neamt y Iasi
17. Inteligencia Artificial e Ingenieria del Conocimiento 17 de 110 Búsqueda informada (heurística)Búsqueda Avara Parecida a BPP, prefiriendo seguir una ruta singular hacia la meta, aunque retrocede (backtracking o reversiva) al chocar con una ruta muerta.
sufre del mismo defecto ? ni es óptima, ni es completa (con una ruta posiblemente infinita).
su complejidad temporal en el peor de los casos es O(b^m), siendo m la profundidad máxima del espacio de búsqueda
complejidad espacial igual a la temporal (guarda todos los nodos en memoria)
una buena h reduce fuertemente la complejidad
18. Inteligencia Artificial e Ingenieria del Conocimiento 18 de 110 Búsqueda informada (heurística)AVARA – Minimizar el costo estimado Función de evaluación heurística:
h(n) = costo estimado de la ruta entre el nodo n al nodo meta
h(n) = 0, si n es el nodo meta
tabla de distancias lineales a Bucarest =>
19. Inteligencia Artificial e Ingenieria del Conocimiento 19 de 110 Búsqueda informada (heurística)AVARA – Minimizar el costo estimado En el mapa ya visto anotamos Arad==>Bucarest = 366 km
h(n) = distancia en línea recta
-> Zerind 374
-> Sibiu 253 <==
-> Timisoara 329
20. Inteligencia Artificial e Ingenieria del Conocimiento 20 de 110 Búsqueda informada (heurística)AVARA – Minimizar el costo estimado Arad - 366
Oradea - 380
? Fagaras .. 178
Rimnicu Vicea - 193
21. Inteligencia Artificial e Ingenieria del Conocimiento 21 de 110 Búsqueda informada (heurística)AVARA – Minimizar el costo estimado Sibiiu 253
Bucarest 0 <====
22. Inteligencia Artificial e Ingenieria del Conocimiento 22 de 110 Búsqueda informada (heurística)AVARA – Minimizar el costo estimado
23. Inteligencia Artificial e Ingenieria del Conocimiento 23 de 110 Búsqueda informada (heurística)Propiedades de la Búsqueda Avara Completa?
No - puede colgarse en algún bucle
p.ej., Iasi ? Neamt ? Iasi ? Neamt ? …
Pasa a ser completa en espacio finito si se sujeta a una verificación de estado repetido
Complejidad Temporal:
En el peor caso: O(bm)
pero una buena heurística provoca mejoras dramáticas
Complejidad Espacial:
En el peor caso: O(bm)
mantiene todos los nodos en memoria
Optima?
No
24. Inteligencia Artificial e Ingenieria del Conocimiento 24 de 110 Búsqueda informada (heurística) La búsqueda avara minimiza el costo estimado hasta la meta h(n)
poda fuertemente el costo de búsqueda
ni óptima ni completa
la búsqueda de costo uniforme minimiza el costo hasta ese momento, g(n)
óptima y completa
podría ser muy ineficiente
f(n) = g(n) + h(n) = costo estimado de la solución más barata pasando por (n)
25. Inteligencia Artificial e Ingenieria del Conocimiento 25 de 110 Búsqueda informada (heurística) Observaciones:
Supongamos que tenemos un nodo n a una profundidad d en el árbol de búsqueda y que adivinamos que ese nodo se halla a una distancia h(n) de la meta más cercana a él.
La meta estaría entonces a la profundidad d + h(n) en el espacio de problema.
En lugar de elegir para la expansión el nodo de mínimo h(n) (distancia esperada hacia la meta), elegimos el nodo de
? MIN d + h(n)
La profundidad se mide con la función de costo de la ruta g(n)
Queda MIN g(n) + h(n)
26. Inteligencia Artificial e Ingenieria del Conocimiento 26 de 110 Búsqueda informada
Búsqueda voraz primero el mejor.
? Búsqueda A*: minimizar el costo estimado total de la solución.
Búsqueda heurística con memoria acotada.
Aprender a buscar mejor.
27. Inteligencia Artificial e Ingenieria del Conocimiento 27 de 110 Búsqueda informada (heurística) Idea ? no expandir trayectos que ya se sabemos que son caros
Función de evaluación:
f(n) = g(n) + h(n)
g(n) = costo hasta llegar a n
h(n) = costo estimado hasta la meta desde n
f(n) = costo total de ruta pasando por n hasta la meta
A* usa una heurística admisible - no hay sobreestimación de distancia
Teorema - A* es óptimo.
28. Inteligencia Artificial e Ingenieria del Conocimiento 28 de 110 Búsqueda informada (heurística) Optimalidad de A*
Definir f* - el costo de la solución óptima para la ruta
A* expande todos los nodos con f(n)<f*
A* podría expandir algunos de los nodos a la derecha del “contorno de la meta”, para los cuales f(n) = f*, antes de seleccionar el estado meta.
La primera solución encontrada debe ser la óptima, dado que los nodos de todos los contornos subsiguientes tendrán un costo f más alto y con ello un costo g más alto (todos los estados meta tienen h(n) = 0)
29. Inteligencia Artificial e Ingenieria del Conocimiento 29 de 110 Búsqueda informada (heurística) Forma útil de ver toda la Optimalidad de A*
Lema ? A* expande nodos en el orden de valores crecientes de f
Esto implica decir que así como Primero en Amplitud va agregando niveles o capas, A* va agregando contornos “iso-f”, siempre crecientes, todos incluyendo el nodo de inicio y a medida que se acercan a la meta, empiezan a incluir justo la meta y la superan. El contorno “iso-f” llamado i tiene todos los nodos con f=fi.
30. Inteligencia Artificial e Ingenieria del Conocimiento 30 de 110 Búsqueda informada (heurística) Ver figuras con círculos concéntricos deformados, ya no con CONTORNOS equirradiales
?
31. Inteligencia Artificial e Ingenieria del Conocimiento 31 de 110 Búsqueda informada (heurística) “Contornos” concéntricos.
32. Inteligencia Artificial e Ingenieria del Conocimiento 32 de 110 Búsqueda informada (heurística) *
------------------------
------------------------
* n
* G1 *G2
33. Inteligencia Artificial e Ingenieria del Conocimiento 33 de 110 Búsqueda informada (heurística)A* Una heurística admisible nunca sobreestima el costo de llegar a la meta
un estimado de costo optimista en la solución de un problema es menor -más barato- que el real.
Si h es admisible, f(n) nunca sobreestima el costo real de la mejor solución pasando por n
La búsqueda A* - con f(n) y con h admisible
completa y óptima
hDLR es admisible
34. Inteligencia Artificial e Ingenieria del Conocimiento 34 de 110 Búsqueda informada (heurística) Conducta de la búsqueda A* Realizar entonces una corrección menor que restituya la monotonicidad de una heurística no-monotónica
el costo f nunca decrece durante cualquiera de las rutas partiendo del inicio, suponiendo que h sea admisible
diverge desde el nodo inicial, sumando nodos en zonas anulares concéntricas de costos f, o sea los contornos de iso- f .
35. Inteligencia Artificial e Ingenieria del Conocimiento 35 de 110 Búsqueda informada (heurística) Conducta de la búsqueda A* Con una búsqueda de costo uniforme (esto es, A* usando h = 0), las zonas cubiertas entre dos contornos son anillos circulares alrededor del estado de inicio.
Con más heurística (h>0) incorporada, las zonas anulares o contornos se estirarán hacia el estado meta y poco a poco irán delimitando más la ruta óptima, enmarcandola más ajustadamente.
Esto recuerda los cambios de nivel de la BPA
36. Inteligencia Artificial e Ingenieria del Conocimiento 36 de 110 Búsqueda informada (heurística) Completitud de A* A* expande nodos en el orden de un creciente f, con lo cual eventualmente expandirá hasta llegar al estado meta.
salvo que haya una cantidad infinita de nodos con f(n)< f*
un nodo con un factor de ramificación infinito
una ruta con costo de ruta finito pero con un número infinito de nodos a lo largo de ella.
La búsqueda A* es OPTIMAMENTE EFICIENTE para cualquier función heurística al contrastarse con otros algoritmos óptimos que compiten con ella.
No hay otro algoritmo que expanda menos nodos que A*
Cualquier algoritmo, que no expanda todos los nodos en los contornos existentes entre el contorno del inicio y el de la meta, corre el riesgo de no encontrar la solución óptima.
37. Inteligencia Artificial e Ingenieria del Conocimiento 37 de 110 Búsqueda informada (heurística) Completitud de A* Complejidad temporal - O(b^d)
Complejidad espacial - O(b^d)
el espacio de búsqueda de A* crece exponencialmente a no ser que sea
h(n)-h*(n) =< O(log h*(n))
prácticamente, el error es a lo menos proporcional al costo de la ruta
el crecimiento exponencial satura a cualquier computadora
38. Inteligencia Artificial e Ingenieria del Conocimiento 38 de 110 Búsqueda informada (heurística) Completitud de A* el uso de una heurística buena provee ventajas enormes.
usualmente A* se queda sin espacio antes de quedarse sin tiempo, puesto que mantiene a todos los nodos en memoria.
39. Inteligencia Artificial e Ingenieria del Conocimiento 39 de 110 Búsqueda informada (heurística)A*
40. Inteligencia Artificial e Ingenieria del Conocimiento 40 de 110 Búsqueda informada (heurística) Resumen de la búsqueda A* A* usa una heurística admisible.
h(n) £ h*(n), donde h*(n) es el costo verdadero desde n
para rutas sobre terreno, la distancia en línea recta nunca sobreestimará la distancia real de una de ellas.
A* es óptima si h es admisible
Idea ? No expandir estados que ya se sabe que son caros
Mejorar la búsqueda de costo uniforme y la búsqueda avara haciendo: f(n) = g(n) + h(n)
g(n) = costo de inicio a n
h(n) = costo estimado desde n hasta meta
f(n) = costo total estimado de la ruta desde inicio a meta pasando por n
41. Inteligencia Artificial e Ingenieria del Conocimiento 41 de 110 Búsqueda informada (heurística) A*
42. Inteligencia Artificial e Ingenieria del Conocimiento 42 de 110 Búsqueda informada (heurística) A*
43. Inteligencia Artificial e Ingenieria del Conocimiento 43 de 110 Búsqueda informada (heurística) Casos limites de A* Si h=0 y g=d ? BPA
Si h=1/d y g=0 ? BPP
Si h=0 y g=0 ? Búsqueda aleatoria
Si h=h y g=0 ? Búsqueda avara
Si h=0 y g=g ? Búsq. de costo uniforme
Si h(n)>h*(n) ? se habría perdido la ruta óptima
Si h(n)<h*(n) ? ruta bien ¿tramo redundante?
44. Inteligencia Artificial e Ingenieria del Conocimiento 44 de 110 Búsqueda informada
Búsqueda voraz primero el mejor.
Búsqueda A*: minimizar el costo estimado total de la solución.
? Búsqueda heurística con memoria acotada.
Aprender a buscar mejor.
45. Inteligencia Artificial e Ingenieria del Conocimiento 45 de 110 Búsqueda informada (heurística) B. Heurística con memoria acotada Problema del algoritmo A* => Altos requerimientos de memoria.
Algoritmo A*PI: Los requerimientos de memoria se pueden solucionar aplicando el algoritmo de PI (Profundidad Iterativa) al A*:
Función de corte: f-coste (g+h)
En cada iteración el valor del corte es f-coste más pequeño de cualquier nodo que excedió el coste de la iteración anterior.
Algoritmos con memoria acotada:
BRPM: Búsqueda recursiva primero el mejor.
A*M: Algoritmo A* con memoria acotada.
A*MS: Algoritmo A* con memoria simplificada.
46. Inteligencia Artificial e Ingenieria del Conocimiento 46 de 110 Búsqueda informada (heurística) Búsqueda recursiva primero el mejor (BRPM) Intenta imitar la búsqueda de primero el mejor estándar sobre un espacio lineal.
Su estructura es simular a la búsqueda primero en profundidad recursiva, pero no sigue indefinidamente hacia abajo en el camino actual, sino que mantiene la pista del f-valor del mejor camino alternativo disponible desde cualquier antepasado del nodo actual. Si el nodo actual excede el limite, la recursividad vuelve atrás al camino alternativo.
El BRPM sustituye los f-valores por el mejor f-valor del su hijo.
47. Inteligencia Artificial e Ingenieria del Conocimiento 47 de 110 Búsqueda informada (heurística) Búsqueda recursiva primero el mejor (BRPM)
48. Inteligencia Artificial e Ingenieria del Conocimiento 48 de 110 Búsqueda informada (heurística) Búsqueda recursiva primero el mejor (BRPM)
49. Inteligencia Artificial e Ingenieria del Conocimiento 49 de 110 Búsqueda informada (heurística) Búsqueda recursiva primero el mejor (BRPM)
50. Inteligencia Artificial e Ingenieria del Conocimiento 50 de 110 Búsqueda informada (heurística) Búsqueda recursiva primero el mejor (BRPM) Ventajas:
Es más eficiente en memoria que el A*PI.
Inconvenientes:
Regeneración excesiva de nodos.
No utiliza la memoria sobrante para mejorar el tiempo de la solución.
Otras características:
Es optimo si la h(n) es admisible.
Complejidad en espacio es O(bd).
Complejidad en tiempo: de difícil obtención.
51. Inteligencia Artificial e Ingenieria del Conocimiento 51 de 110 Búsqueda informada (heurística) Algoritmo A* con memoria simplificada (A*MS) Reutilizan la memoria sobrante.
El A*MS avanza como el A*:
Expande la mejor hoja hasta que la memoria esta llena.
Ahora no se puede añadir un nuevo nodo hasta eliminar uno viejo.
Retiramos el peor nodo hoja (f-valor más alto).
Regeneración excesiva de nodos.
Devuelve hacia atrás (a su padre) el valor del nodo olvidado.
El A*MS vuelve a generar el subárbol solo cuando todos los otros caminos parecen peores que el camino olvidado.
En caso de que f-valor sea igual el A*MS expande la mejor hoja más nueva, o elimina la peor hoja más vieja.
52. Inteligencia Artificial e Ingenieria del Conocimiento 52 de 110 Búsqueda informada
Búsqueda voraz primero el mejor.
Búsqueda A*: minimizar el costo estimado total de la solución.
Búsqueda heurística con memoria acotada.
? Aprender a buscar mejor.
53. Inteligencia Artificial e Ingenieria del Conocimiento 53 de 110 Búsqueda informada (heurística) Aprender a buscar mejor ¿Podría un agente aprender a buscar mejor? Si mediante el espacio de estados multinivel.
Cada estado en un espacio de estados metanivel captura el estado interno (computacional) de un programa que busca en un espacio de estado a nivel de objeto.
Un algoritmo de aprendizaje metanivel puede aprender de los errores para evitar explorar subárboles no prometedores.
El objetivo del aprendizaje es reducir al mínimo el coste total de resolver el problema (coste computacional + coste del camino).
54. Inteligencia Artificial e Ingenieria del Conocimiento 54 de 110 Búsqueda informada
55. Inteligencia Artificial e Ingenieria del Conocimiento 55 de 110 Búsqueda informada (heurística) Buscar una heurística para el problema del 8-puzzle.
56. Inteligencia Artificial e Ingenieria del Conocimiento 56 de 110 Búsqueda informada
? El efecto de la precisión heurística en el rendimiento.
Inventar funciones heurísticas admisibles.
Aprendizaje de heurísticas desde la experiencia.
57. Inteligencia Artificial e Ingenieria del Conocimiento 57 de 110 Búsqueda informada (heurística) Medir la calidad de la heurística => b*factor de ramificación eficaz.
h2 es siempre mejor que h1 cuando para cualquier nodo n, h2(n) >= h1(n) => h2 domina a h1.
58. Inteligencia Artificial e Ingenieria del Conocimiento 58 de 110 Búsqueda informada
El efecto de la precisión heurística en el rendimiento.
? Inventar funciones heurísticas admisibles.
Aprendizaje de heurísticas desde la experiencia.
59. Inteligencia Artificial e Ingenieria del Conocimiento 59 de 110 Búsqueda informada (heurística) ¿Describimos formalmente el problema del 8-puzzle: Una ficha puede moverse del cuadro A al cuadro B si:
A es horizontalmente o verticalmente adyacente a B
y B es la vacía.
Generamos 3 problemas relajados quitando una o ambas condiciones:
Una ficha puede moverse del cuadro A al cuadro B si A es adyacente a B.
H2 (distancia Manhattan) => Sería el apropiado si movemos cada ficha en dirección a su destino..
Una ficha puede moverse del cuadro A al cuadro B si B es el vacío.
Una ficha puede moverse del cuadro A al cuadro B.
H1 (fichas mal colocadas) => Sería el apropiado si las fichas pueden moverse hacia el destino en un paso.
60. Inteligencia Artificial e Ingenieria del Conocimiento 60 de 110 Búsqueda informada (heurística) Se pueden obtener heurísticas admisibles del coste de la solución de un sub-problema de un problema dado.
Modelo de bases de datos: almacenar los costes exactos de las soluciones para cada posible subproblema.
Modelo de bases de datos disjuntas.
61. Inteligencia Artificial e Ingenieria del Conocimiento 61 de 110 Búsqueda informada
El efecto de la precisión heurística en el rendimiento.
Inventar funciones heurísticas admisibles.
? Aprendizaje de heurísticas desde la experiencia.
62. Inteligencia Artificial e Ingenieria del Conocimiento 62 de 110 Búsqueda informada (heurística) Una función h(n) estima el coste de una solución que comienza desde el estado en el nodo n.
¿Cómo podría un agente construir tan función?
- Problemas relajados.
- Aprender de la experiencia.
En el caso del 8-puzzle cada ejemplo se compone de un estado del camino solución y el coste real de la solución desde ese punto.
Algoritmo de aprendizaje inductivo: construir una función h(n) que pueda predecir los costos solución para otros estados que aparezcan durante la búsqueda.
Técnicas: Redes neuronales, árboles de decisión, ...
Requieren de características de un estado que sean relevante para su evaluación además de la descripción del estado.
63. Inteligencia Artificial e Ingenieria del Conocimiento 63 de 110 Búsqueda informada
64. Inteligencia Artificial e Ingenieria del Conocimiento 64 de 110 Búsqueda informada (heurística) Algoritmos de búsqueda:
Exploran espacios de búsqueda de forma sistemática.
Mantienen uno o varios caminos en memoria y registra las alternativas que se han explorado y las que no.
El objetivo y el camino hasta el mismo constituye una solución al problema.
¿Que hacemos cuando el camino al objetivo es irrelevante?
Algoritmos de búsqueda local:
Funcionan con un solo estado actual (frente a los múltiples caminos).
Generalmente se mueve sólo a los vecinos del estado.
No se guardan los caminos seguidos para la búsqueda.
Ventajas:
Usan muy poca memoria.
Encuentran soluciones razonables en espacio de estados grandes o infinitos.
65. Inteligencia Artificial e Ingenieria del Conocimiento 65 de 110 Búsqueda informada (heurística) Problemas de optimización puros:
Objetivo: encontrar el mejor estado según una función objetivo.
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.
66. Inteligencia Artificial e Ingenieria del Conocimiento 66 de 110 Búsqueda informada (heurística)
67. Inteligencia Artificial e Ingenieria del Conocimiento 67 de 110 Búsqueda informada
? Búsqueda de ascensión de colinas.
Búsqueda de temple simulado.
Búsqueda por haz local.
Algoritmos genéticos.
68. Inteligencia Artificial e Ingenieria del Conocimiento 68 de 110 Búsqueda informada (heurística) Algoritmo de búsqueda de ascensión de colinas:
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)
69. Inteligencia Artificial e Ingenieria del Conocimiento 69 de 110 Búsqueda informada (heurística) 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.
70. Inteligencia Artificial e Ingenieria del Conocimiento 70 de 110 Búsqueda informada (heurística)Método de Escalada 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)
71. Inteligencia Artificial e Ingenieria del Conocimiento 71 de 110 Búsqueda informada (heurística) 8-reinas con búsqueda por escalada:
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.
72. Inteligencia Artificial e Ingenieria del Conocimiento 72 de 110 Búsqueda informada (heurística) Ventajas e Inconvenientes
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
73. Inteligencia Artificial e Ingenieria del Conocimiento 73 de 110 Búsqueda informada (heurística) Variantes del método de escalada
Escalada estocástica
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
74. Inteligencia Artificial e Ingenieria del Conocimiento 74 de 110 Búsqueda informada (heurística)Método de Escalada 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).
75. Inteligencia Artificial e Ingenieria del Conocimiento 75 de 110 Búsqueda informada (heurística)Búsqueda Ascenso de Colinas Búsqueda Tabú (TS)
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."
76. Inteligencia Artificial e Ingenieria del Conocimiento 76 de 110 Búsqueda informada
Búsqueda de ascensión de colinas.
? Búsqueda de temple simulado.
Búsqueda por haz local.
Algoritmos genéticos.
77. Inteligencia Artificial e Ingenieria del Conocimiento 77 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado 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
78. Inteligencia Artificial e Ingenieria del Conocimiento 78 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado
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.
Utilizada en problemas de distribución VLSI y de optimización a gran escala.
79. Inteligencia Artificial e Ingenieria del Conocimiento 79 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado
80. Inteligencia Artificial e Ingenieria del Conocimiento 80 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado Algoritmo de Metrópolis
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)
81. Inteligencia Artificial e Ingenieria del Conocimiento 81 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado 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
82. Inteligencia Artificial e Ingenieria del Conocimiento 82 de 110 Búsqueda informada (heurística)Búsqueda Temple Simulado (Método)
83. Inteligencia Artificial e Ingenieria del Conocimiento 83 de 110 Búsqueda informada
Búsqueda de ascensión de colinas.
Búsqueda de temple simulado.
? Búsqueda por haz local.
Algoritmos genéticos.
84. Inteligencia Artificial e Ingenieria del Conocimiento 84 de 110 Búsqueda informada (heurística)Búsqueda por haz local B. por haz local (Beam Search)
Se guarda la pista de k estados
Comienza con estados generados aleatoriamente. Si alguno es objetivo, se detiene la búsqueda
En cada paso se generan todos los sucesores de los k estados.
Si alguno es objetivo, se detiene la búsqueda
Si no, se seleccionan los k mejores sucesores de la lista completa y se repite el proceso
Es diferente a lanzar en paralelo k escaladas con reinicio aleatorio:
En la búsqueda por haz local la información útil se pasa entre los k hilos paralelos de búsqueda, si uno genera mejores sucesores, los k hilos de búsqueda seguirán por ese camino.
• Puede carecer de diversidad en los k estados
85. Inteligencia Artificial e Ingenieria del Conocimiento 85 de 110 Búsqueda informada (heurística)Búsqueda por haz local B. por haz estocástica
La búsqueda por haz local puede concentrarse rápidamente en pequeñas regiones del espacio de estados (explotación)
A veces es necesario explorar otras zonas aparentemente peores.
Trata de combinar la explotación de las zonas mejores con la exploración de las zonas aparentemente peores.
En vez de elegir los k mejores sucesores, se eligen k sucesores con una probabilidad que es función creciente de su valoración
los mejores tienen mayor probabilidad de ser elegidos, aunque no siempre lo serán
Guarda relación con la selección natural
86. Inteligencia Artificial e Ingenieria del Conocimiento 86 de 110 Búsqueda informada (heurística)Búsqueda por haz local Aspectos generales
La calidad de la solución depende de la definición del vecindario y también la forma del espacio de búsqueda
Pocos óptimos locales
Muchos óptimos locales, muy juntos (útiles los mecanismos de “escape”)
Muchos óptimos locales esparcidos por el espacio de búsqueda.
87. Inteligencia Artificial e Ingenieria del Conocimiento 87 de 110 Búsqueda informada
Búsqueda de ascensión de colinas.
Búsqueda de temple simulado.
Búsqueda por haz local.
? Algoritmos genéticos.
88. Inteligencia Artificial e Ingenieria del Conocimiento 88 de 110 Búsqueda informada (heurística)Algoritmos Genéticos
Algoritmo genético (AG): Es una variante de la búsqueda de haz estocástica en la que los estados sucesores se generar combinando dos estados padres, en lugar de modificar un solo estado.
Analogía: frente a la búsqueda de haz estocástica (reproducción asexual), los AG simulan el método de la reproducción sexual.
Los AGs comienzan con un conjunto de k estados generados aleatoriamente (población).
Los estados o individuos está representado como una cadena sobre un alfabeto finito (normalmente cadenas de 0s y 1s).
Función de idoneidad: Función de evaluación para tasar cada estado.
89. Inteligencia Artificial e Ingenieria del Conocimiento 89 de 110 Búsqueda informada (heurística)Algoritmos Genéticos Conceptos de los AGs:
Punto de cruce: se selecciona aleatoriamente.
Mutación: en los AGs se aplica una probabilidad independiente de mutación aleatoria.
Esquema: Es una subcadena en la cual algunas de las posiciones se pueden dejar inespecíficas
Instancias del esquema: Son las cadenas que emparejan con el esquema.
Algoritmo AG:
a) h(n) = nº de pares de reinas que no se atacan. H(n) = 8*7/2 = 28
b) Población inicial.
c) Función idoneidad: Kn/Sum(K1..Kn)
d) Selección.
e) Cruce.
f) Mutación.
90. Inteligencia Artificial e Ingenieria del Conocimiento 90 de 110 Búsqueda informada (heurística)Algoritmos Genéticos
91. Inteligencia Artificial e Ingenieria del Conocimiento 91 de 110 Búsqueda informada (heurística)Algoritmos Genéticos H(n): nº de pares de reinas que no se atacan = 8*7/2 = 28
92. Inteligencia Artificial e Ingenieria del Conocimiento 92 de 110 Búsqueda informada (heurística)Algoritmos Genéticos Algoritmo genético (AG):
Ej 8-reinas:
93. Inteligencia Artificial e Ingenieria del Conocimiento 93 de 110 Búsqueda informada
94. Inteligencia Artificial e Ingenieria del Conocimiento 94 de 110 Búsqueda informada (heurística)Búsqueda por haz local Búsqueda en espacios continuos
La función sucesor devuelve infinitos estados
• Ejemplo: colocar tres aeropuertos en Rumania minimizando su distancia a las ciudades
• estados: están definidos por las coordenadas de los 3 aeropuertos: (x1,y1) (x2,y2) (x3,y3)
función objetivo: f(x1,y1,x2,y2,x3,y3)=distancia de todas las ciudades a su aeropuerto más cercano
• Muchos métodos usan el gradiente que nos da la magnitud y la dirección de la inclinación más pronunciada:
95. Inteligencia Artificial e Ingenieria del Conocimiento 95 de 110 Búsqueda informada (heurística)Búsqueda por haz local Búsqueda en espacios continuos
Normalmente, no podemos encontrar un extremo resolviendo de forma directa
Pero podemos calcular el gradiente localmente
y hacer un hill-climbing actualizando el estado actual
donde a es una pequeña cte
La determinación de a es fundamental: si es pequeña necesitaremos muchos pasos para alcanzar un extremo, y si es grande podremos pasarnos del extremo
96. Inteligencia Artificial e Ingenieria del Conocimiento 96 de 110 Búsqueda informada
97. Inteligencia Artificial e Ingenieria del Conocimiento 97 de 110 Búsqueda informada (heurística)Búsqueda on-line
Búsqueda off-line:
Calcula una solución completa antes de poner un pie en el mundo real.
Después ejecutan la solución sin recurrir a las percepciones.
Búsqueda on-line: Intercala el calcula y la acción.
Toma una acción
Observa el entorno
Calcula la siguiente acción.
Usos de la búsqueda on-line:
Problemas de exploración, donde el agente desconoce los estados y acciones.
98. Inteligencia Artificial e Ingenieria del Conocimiento 98 de 110 Búsqueda informada
? Problemas de búsqueda en línea (online).
Agentes de búsqueda en línea (online).
Búsqueda local en línea (online).
Aprendizaje en la búsqueda en línea (online).
99. Inteligencia Artificial e Ingenieria del Conocimiento 99 de 110 Búsqueda informada (heurística)Búsqueda on-line Asumimos que el agente sabe:
Acción (s): devuelve una lista de acciones permitidas en el estado s.
Funciones de coste individual c(s,a,s')
Test-objetivo.
Asumimos:
El agente no puede tener acceso a los sucesores de un estado, excepto si intenta todas las acciones en ese estado.
El agente puede reconocer siempre un estado que ha visitado anteriormente.
Las acciones son deterministas.
El agente podría tener acceso a una función heurística admisible h(s) que estime la distancia del estado actual a un estado objetivo.
100. Inteligencia Artificial e Ingenieria del Conocimiento 100 de 110 Búsqueda informada (heurística)Búsqueda on-line Objetivo del agente:
Alcanzar un estado objetivo minimizando el coste.
Conceptos:
Costo: coste total del camino por el que el agente viaja.
Proporción competitiva: obtener el coste más pequeño que sea posible.
Argumento de adversario.
Asumimos que el espacio de estados es seguramente explorable: algún estado objetivo es alcanzable desde cualquier estado alcanzable.
101. Inteligencia Artificial e Ingenieria del Conocimiento 101 de 110 Búsqueda informada (heurística)Búsqueda on-line (Ej. Laberinto)
102. Inteligencia Artificial e Ingenieria del Conocimiento 102 de 110 Búsqueda informada
Problemas de búsqueda en línea (online).
? Agentes de búsqueda en línea (online).
Búsqueda local en línea (online).
Aprendizaje en la búsqueda en línea (online).
103. Inteligencia Artificial e Ingenieria del Conocimiento 103 de 110 Búsqueda informada (heurística)Agentes de búsqueda on-line Intercalación planificación-acción:
Después de cada acción, un agente online recibe una percepción (al decirle el estado que ha alcanzado). Esta información aumenta su mapa de entorno.
El mapa actual se utiliza para decidir donde ir.
La búsqueda on-line son necesarias para problemas de exploración.
Los estados deben expandirse teniendo en cuenta la posición física que ocupamos => búsqueda en profundidad.
104. Inteligencia Artificial e Ingenieria del Conocimiento 104 de 110 Búsqueda informada (heurística) Agentes de búsqueda on-line
105. Inteligencia Artificial e Ingenieria del Conocimiento 105 de 110 Búsqueda informada
Problemas de búsqueda en línea (online).
Agentes de búsqueda en línea (online).
? Búsqueda local en línea (online).
Aprendizaje en la búsqueda en línea (online).
106. Inteligencia Artificial e Ingenieria del Conocimiento 106 de 110 Búsqueda informada Búsqueda local on-line Propiedad de localidad en la expansión de los nodos:
Búsqueda primero en profundidad.
Búsqueda de ascensión de colinas.
Usaremos caminos aleatorios para probar el entorno.
Aumentar la “ascensión de colinas” con memoria y no con aleatoriedad resulta más eficiente.
H(s): Almacenar una mejor estimación actual del coste para alcanzar el objetivo desde cada estado que se ha alcanzado.
107. Inteligencia Artificial e Ingenieria del Conocimiento 107 de 110 Búsqueda informada Búsqueda local on-line AA*TR: Algoritmo A* en tiempo real.
Construye un mapa del entorno usando la tabla resultado.
Actualiza el coste estimado para el estado que acaba de dejar y entonces escoge el movimiento "aparentemente mejor" según sus costos estimados actuales.
Las acciones que todavía no se han intentando en un estado s siempre se supone que dirigen inmediatamente al objetivo con el coste menor posible, h(s).
Este optimismo bajo la incertidumbre anima al agente a explorar nuevos y posibles caminos.
Un Agente AA*TR garantiza encontrar un objetivo en un entorno seguramente explorable y finito. Pero no es completo para espacios de estados infinitos.
108. Inteligencia Artificial e Ingenieria del Conocimiento 108 de 110 Búsqueda informada Búsqueda local on-line
109. Inteligencia Artificial e Ingenieria del Conocimiento 109 de 110 Búsqueda informada
Problemas de búsqueda en línea (online).
Agentes de búsqueda en línea (online).
Búsqueda local en línea (online).
? Aprendizaje en la búsqueda en línea (online).
110. Inteligencia Artificial e Ingenieria del Conocimiento 110 de 110 Búsqueda informada Búsqueda local on-line Aprendizaje de los agentes:
Los agentes aprenden un "mapa" del entorno (el resultado de cada acción en cada estado), registrando cada una de sus experiencias.
Los agentes adquieren estimaciones más exactas del valor de cada estado utilizando las reglas de actualización local.
111. Inteligencia Artificial e Ingenieria del Conocimiento 111 de 110 Búsqueda informada
112. Inteligencia Artificial e Ingenieria del Conocimiento 112 de 110 Búsqueda informada (heurística)Resumen Heurísticas: hemos analizado la aplicación de heurísticas para reducir los de costes de la búsqueda.
Optimalidad: tiene un precio excesivo en términos del coste de búsqueda, aún con heurísticas buenas.
Búsqueda primero el mejor:
Es una búsqueda-grafo.
Los nodos no expandidos de coste mínimo se escogen para la expansión.
Utilizan una h(n) que estima el coste de una solución desde n.
Búsqueda primero el mejor avara:
Expande nodos con h(n) mínima.
No es óptima.
Suele tener costes razonables.
113. Inteligencia Artificial e Ingenieria del Conocimiento 113 de 110 Búsqueda informada (heurística)Resumen Búsqueda A*:
Expande nodos con mínimo f(n) = g(n) + h(n)
Es completa y optima si:
h(n) es admisible con Búsqueda-Árbol
h(n) es consistente con Búsqueda-Grafo.
Alto coste.
El rendimiento de los algoritmos de búsqueda heurística depende de la calidad de la función heurística.
Las heurísticas buenas pueden construirse a veces relajando la definición del problema, mediante:
Costes de solución precalculados para sub-problemas
Aprendiendo de la experiencia de clases de problemas.
114. Inteligencia Artificial e Ingenieria del Conocimiento 114 de 110 Búsqueda informada (heurística)Resumen BRPM y A*MS son algoritmos de búsqueda:
robustos
óptimos
utilizan cantidades limitadas de memoria
con suficiente tiempo resuelven problemas que el A* no puede resolver.
Métodos de búsqueda local:
Operan en formulaciones completas de estados.
Mantienen sólo un número pequeño de nodos en memoria.
Los algoritmos estocásticos (temple simulado) devuelven soluciones óptimas cuando se da un apropiado programa de enfriamiento.
Se pueden utilizar para resolver problemas en espacios continuos.
115. Inteligencia Artificial e Ingenieria del Conocimiento 115 de 110 Búsqueda informada (heurística)Resumen Algoritmo genético:
Es una búsqueda de ascensión de colinas estocástica en la que se mantiene una población grande estados.
Los estados nuevos se generan por mutación y cruce, combinando pares de estados de la población.
Problemas de exploración:
El agente no tiene la menor idea acerca de los estados y acciones de su entorno.
En entornos explorables, los agente de búsqueda en línea pueden construirse un mapa y encontrar un objetivo si existe.
Las estimaciones de las heurística, que se actualizan por la experiencia, proporcionan un método efectivo para escapar de mínimos locales.
116. Universidad de Castilla-La Mancha
Luis Jiménez Linares
Luis.jimenez@uclm.es
Luis Enrique Sánchez Crespo
LuisEnrique.sanchez@uclm.es