Inteligencia Artificial e Ingeniera del Conocimiento
Tema3: Mtodos de bsqueda de soluciones (Bsqueda informada y exploracin) Profesores: Luis Jimnez Linares. Luis Enrique Snchez Crespo. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
2 de 110 Datos de la Asignatura Temaro 1er Cuatrimestre Introduccin a la IA. (Cap. 1) Introduccin a los Agentes Inteligentes (Cap. 2) Mtodos de bsqueda de soluciones (Cap. 3-4) Simple sin informacin. Con informacin (Heurstica). Meta-heursticos: Temple Simulado - Utilizando el azar. Bsqueda tab - Metamodelos. Bsqueda por referencias.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
3 de 110 Datos de la Asignatura Temaro 2 Cuatrimestre Sistemas basados en el conocimiento (Cap. 8-12) Mediante lgica de predicados. Mediante Sistemas de produccin. Tratamiento de la incertidumbre (Cap. 13-15) Redes Bayesianas. Razonamiento aproximado (lgica difusa).
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
4 de 110 Bsqueda informada Estrategias de bsqueda informada (heursticas). Funciones heursticas Algoritmos de bsqueda local y problemas de optimizacin. Bsqueda local en espacios continuos. Agentes de bsqueda online y ambientes desconocidos. Resumen. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
5 de 110 Bsqueda informada Estrategias de bsqueda informada (heurstica) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
6 de 110 Bsqueda informada (heurstica) Bsqueda informada: La que utiliza el conocimiento especfico del problema ms all de la definicin del problema en s mismo. La informacin sobre el espacio de estados puede impedir a los algoritmos cometer un error en la oscuridad Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
7 de 110 Bsqueda informada (heurstica) Usar informacin heurstica para adivinar cul nodo expandir la heurstica aparece bajo la forma de una funcin de evaluacin basada en la informacin especfica para el dominio o contexto relacionada con el problema el problema de bsqueda se puede considerar como la maximizacin o minimizacin de una funcin, como es del todo general. La funcin de evaluacin nos proporciona una manera de evaluar un nodo localmente basado en una estimacin del costo de llegar desde el nodo al nodo meta. Problemas con la Heurstica la heurstica 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* Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
8 de 110 Bsqueda informada Estrategias de bsqueda informada (heurstica)
Bsqueda voraz primero el mejor. Bsqueda A*: minimizar el costo estimado total de la solucin. Bsqueda heurstica con memoria acotada. Aprender a buscar mejor. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
9 de 110 Bsqueda informada (heurstica) BPM Bsqueda Primero el Mejor ===> usar una funcin de evaluacin para cada nodo - estimar la deseabilidad
Funcin de evaluacin ==> Expandir el nodo ms deseable (evaluacin ms baja parece ser el mejor) entre los no expandidos.
Funcin heurstica ==> h(n) = coste estimado del camino ms barato desde el nodo n a un nodo objetivo.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
10 de 110 Bsqueda informada (heurstica) BPM Ordenar los nodos de tal forma que el nodo de mejor evaluacin sea el primero en ser expandido.
la funcin de evaluacin no es omnisciente - provee una medida estimada de la deseabilidad de usar cierta ruta hacia el estado meta.
la medida debe incorporar cierto estimacin de costo de la ruta desde un estado hacia el estado meta ms cercano a l.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
11 de 110 Bsqueda informada (heurstica) BPM Idea bsica expandir el nodo que maximiza o minimiza la funcin de evaluacin 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?
En este caso el mtodo seguir la ruta ms larga, al empezar a moverse hacia delante segn la receta Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
12 de 110 Bsqueda informada (heurstica) BPM Objetivo de la familia de bsquedas llamada Bsqueda Primero el Mejor encontrar velozmente la meta:
Expandimos el nodo ms cercano al nodo meta.
Para merecer optimalidad, queremos encontrar rpidamente la meta ms cercana al origen.
El objetivo es distinto al de la bsqueda de coste uniforme (la nica bsqueda 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 solucin ms barata en base a datos experimentados. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
13 de 110 Bsqueda informada (heurstica) Bsqueda Avara La funcin de evaluacin muestra la siguiente heurstica:
h(n) = costo estimado entre n y la meta por ejemplo hDLR(n) = distancia en lnea recta desde n hasta destino.
La bsqueda avara expande el nodo que pareciera estar ms cerca de la meta. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
14 de 110 Bsqueda informada (heurstica) Bsqueda Avara Una de las bsquedas Primero lo Mejor ms 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 heurstica ayuda.
la funcin heurstica h es una funcin que calcula los costes estimados.
h(n) = coste estimado de la ruta ms barata desde el estado en n hasta el estado meta. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
15 de 110 Bsqueda informada (heurstica) Bsqueda Avara El nodo con valor h mnimo es el que se va a expandir: cola con privilegios
h puede ser cualquier funcin, siempre que valga cero en la meta, pero la calidad cambia mucho
las funciones heursticas son problema-intensivas (son problema-especficas)
en problemas de bsqueda de ruta una buena h es hDLR, donde DLR es distancia en lnea recta
una ruta de A a B suele ir en la direccin correcta. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
16 de 110 Bsqueda informada (heurstica) Bsqueda Avara Adoptar la primera seleccin con una visin inmediata, sin preocuparse si ha de ser la mejor con una perspectiva a largas vistas.
La bsqueda halla soluciones en forma rpida, 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 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
17 de 110 Bsqueda informada (heurstica) Bsqueda 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 mxima del espacio de bsqueda
complejidad espacial igual a la temporal (guarda todos los nodos en memoria)
una buena h reduce fuertemente la complejidad Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
18 de 110 Bsqueda informada (heurstica) AVARA Minimizar el costo estimado Funcin de evaluacin heurstica: 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 =>
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
19 de 110 Bsqueda informada (heurstica) AVARA Minimizar el costo estimado En el mapa ya visto anotamos Arad==>Bucarest = 366 km h(n) = distancia en lnea recta -> Zerind 374 -> Sibiu 253 <== -> Timisoara 329
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
21 de 110 Bsqueda informada (heurstica) AVARA Minimizar el costo estimado Sibiiu 253 Bucarest 0 <====
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
22 de 110 Bsqueda informada (heurstica) AVARA Minimizar el costo estimado Arad Sibiu Timisoara Zerind Oradea Fagaras Arad Rimnicu h(n) = 366 h(n) = 253 h(n) = 329 h(n) = 374 366 178 380 193 Bucharest Sibiu 253 h(n) = 0 verdadera ruta ptima es: Arad Sibiu Rimnicu Pitesti Bucharest Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
23 de 110 Bsqueda informada (heurstica) Propiedades de la Bsqueda Avara Completa? No - puede colgarse en algn bucle p.ej., Iasi Neamt Iasi Neamt Pasa a ser completa en espacio finito si se sujeta a una verificacin de estado repetido Complejidad Temporal: En el peor caso: O(bm) pero una buena heurstica provoca mejoras dramticas Complejidad Espacial: En el peor caso: O(bm) mantiene todos los nodos en memoria Optima? No Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
24 de 110 Bsqueda informada (heurstica) Minimizar el costo de ruta total La bsqueda avara minimiza el costo estimado hasta la meta h(n) poda fuertemente el costo de bsqueda ni ptima ni completa la bsqueda de costo uniforme minimiza el costo hasta ese momento, g(n) ptima y completa podra ser muy ineficiente f(n) = g(n) + h(n) = costo estimado de la solucin ms barata pasando por (n) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
25 de 110 Bsqueda informada (heurstica) Minimizar el costo de ruta total Observaciones: Supongamos que tenemos un nodo n a una profundidad d en el rbol de bsqueda y que adivinamos que ese nodo se halla a una distancia h(n) de la meta ms cercana a l. La meta estara entonces a la profundidad d + h(n) en el espacio de problema. En lugar de elegir para la expansin el nodo de mnimo h(n) (distancia esperada hacia la meta), elegimos el nodo de MIN d + h(n) La profundidad se mide con la funcin de costo de la ruta g(n) Queda MIN g(n) + h(n) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
26 de 110 Bsqueda informada Estrategias de bsqueda informada (heurstica)
Bsqueda voraz primero el mejor. Bsqueda A*: minimizar el costo estimado total de la solucin. Bsqueda heurstica con memoria acotada. Aprender a buscar mejor. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
27 de 110 Bsqueda informada (heurstica) Idea no expandir trayectos que ya se sabemos que son caros Funcin de evaluacin: 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 heurstica admisible - no hay sobreestimacin de distancia Teorema - A* es ptimo. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
28 de 110 Bsqueda informada (heurstica) Optimalidad de A* Definir f* - el costo de la solucin ptima para la ruta A* expande todos los nodos con f(n)<f* A* podra 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 solucin encontrada debe ser la ptima, dado que los nodos de todos los contornos subsiguientes tendrn un costo f ms alto y con ello un costo g ms alto (todos los estados meta tienen h(n) = 0) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
29 de 110 Bsqueda informada (heurstica) 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.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
30 de 110 Bsqueda informada (heurstica) Ver figuras con crculos concntricos deformados, ya no con CONTORNOS equirradiales
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
31 de 110 Bsqueda informada (heurstica) Contornos concntricos. 380 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
32 de 110 Bsqueda informada (heurstica) Prueba estndar de la optimalidad de A* * ------------------------ ------------------------ * n
* G1 *G2
Sea una meta subptima G2 que est en la cola de espera
Sea n un nodo sin expandir en el camino ms corto hacia una meta ptima G1
A* nunca va a elegir G2 para su expansin Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
33 de 110 Bsqueda informada (heurstica) A* Una heurstica admisible nunca sobreestima el costo de llegar a la meta
un estimado de costo optimista en la solucin de un problema es menor -ms barato- que el real.
Si h es admisible, f(n) nunca sobreestima el costo real de la mejor solucin pasando por n
La bsqueda A* - con f(n) y con h admisible completa y ptima hDLR es admisible Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
34 de 110 Bsqueda informada (heurstica) Conducta de la bsqueda A* Realizar entonces una correccin menor que restituya la monotonicidad de una heurstica no-monotnica
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 concntricas de costos f, o sea los contornos de iso- f . Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
35 de 110 Bsqueda informada (heurstica) Conducta de la bsqueda A* Con una bsqueda de costo uniforme (esto es, A* usando h = 0), las zonas cubiertas entre dos contornos son anillos circulares alrededor del estado de inicio.
Con ms heurstica (h>0) incorporada, las zonas anulares o contornos se estirarn hacia el estado meta y poco a poco irn delimitando ms la ruta ptima, enmarcandola ms ajustadamente.
Esto recuerda los cambios de nivel de la BPA Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
36 de 110 Bsqueda informada (heurstica) 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 ramificacin infinito una ruta con costo de ruta finito pero con un nmero infinito de nodos a lo largo de ella.
La bsqueda A* es OPTIMAMENTE EFICIENTE para cualquier funcin heurstica 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 solucin ptima. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
37 de 110 Bsqueda informada (heurstica) Completitud de A* Complejidad temporal - O(b^d)
Complejidad espacial - O(b^d)
el espacio de bsqueda de A* crece exponencialmente a no ser que sea h(n)-h*(n) =< O(log h*(n))
prcticamente, el error es a lo menos proporcional al costo de la ruta
el crecimiento exponencial satura a cualquier computadora Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
38 de 110 Bsqueda informada (heurstica) Completitud de A* el uso de una heurstica buena provee ventajas enormes.
usualmente A* se queda sin espacio antes de quedarse sin tiempo, puesto que mantiene a todos los nodos en memoria. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
39 de 110 Bsqueda informada (heurstica) A* Arad Sibiu Timisoara Zerind Oradea Fagaras Arad Rimnicu f(n) = 366 h(n) = 374 f(n) = 449 Pitesti Craiova 75 h(n) = 329 f(n) = 447 118 140 h(n) = 253 f(n) = 393 140 151 99 80 f(n) = 646 f(n) = 417 f(n) = 661 f(n) = 413 Sibiu 146 97 80 f(n) = 526 f(n) = 415 f(n) = 553 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
40 de 110 Bsqueda informada (heurstica) Resumen de la bsqueda A* A* usa una heurstica admisible. h(n) h*(n), donde h*(n) es el costo verdadero desde n para rutas sobre terreno, la distancia en lnea 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 bsqueda de costo uniforme y la bsqueda 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 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
41 de 110 Bsqueda informada (heurstica) A* Sibiu Oradea Fagaras Arad Rimnicu Pitesti Craiova h(n) = 253 f(n) = 393 140 151 99 80 f(n) = 646 f(n) = 417 f(n) = 526 f(n) = 413 Sibiu 146 97 80 f(n) = 526 f(n) = 415 f(n) = 553 Craiova Rimnicu Bucharest 97 138 101 f(n) = 607 f(n) = 615 f(n) = 418 Bucharest Sibiu 99 211 f(n) = 591 f(n) = 450 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
42 de 110 Bsqueda informada (heurstica) A* Sibiu Oradea Fagaras Arad Rimnicu Pitesti Craiova h(n) = 253 f(n) = 393 140 151 99 80 f(n) = 646 f(n) = 417 f(n) = 661 f(n) = 413 Sibiu 146 97 80 f(n) = 526 f(n) = 415 f(n) = 553 Craiova Rimnicu Bucharest 97 138 101 f(n) = 607 f(n) = 615 f(n) = 418 Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
43 de 110 Bsqueda informada (heurstica) 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 Bsqueda aleatoria
Si h=h y g=0 Bsqueda avara
Si h=0 y g=g Bsq. de costo uniforme
Si h(n)>h*(n) se habra perdido la ruta ptima
Si h(n)<h*(n) ruta bien tramo redundante? Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
44 de 110 Bsqueda informada Estrategias de bsqueda informada (heurstica)
Bsqueda voraz primero el mejor. Bsqueda A*: minimizar el costo estimado total de la solucin. Bsqueda heurstica con memoria acotada. Aprender a buscar mejor. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
45 de 110 Bsqueda informada (heurstica) B. Heurstica 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*: Funcin de corte: f-coste (g+h) En cada iteracin el valor del corte es f-coste ms pequeo de cualquier nodo que excedi el coste de la iteracin anterior.
Algoritmos con memoria acotada: BRPM: Bsqueda recursiva primero el mejor. A*M: Algoritmo A* con memoria acotada. A*MS: Algoritmo A* con memoria simplificada. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
46 de 110 Bsqueda informada (heurstica) Bsqueda recursiva primero el mejor (BRPM) Intenta imitar la bsqueda de primero el mejor estndar sobre un espacio lineal.
Su estructura es simular a la bsqueda 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 atrs al camino alternativo.
El BRPM sustituye los f-valores por el mejor f-valor del su hijo. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
47 de 110 Bsqueda informada (heurstica) Bsqueda recursiva primero el mejor (BRPM) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
48 de 110 Bsqueda informada (heurstica) Bsqueda recursiva primero el mejor (BRPM) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
49 de 110 Bsqueda informada (heurstica) Bsqueda recursiva primero el mejor (BRPM) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
50 de 110 Bsqueda informada (heurstica) Bsqueda recursiva primero el mejor (BRPM) Ventajas: Es ms eficiente en memoria que el A*PI.
Inconvenientes: Regeneracin excesiva de nodos. No utiliza la memoria sobrante para mejorar el tiempo de la solucin.
Otras caractersticas: Es optimo si la h(n) es admisible. Complejidad en espacio es O(bd). Complejidad en tiempo: de difcil obtencin.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
51 de 110 Bsqueda informada (heurstica) 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 aadir un nuevo nodo hasta eliminar uno viejo. Retiramos el peor nodo hoja (f-valor ms alto). Regeneracin excesiva de nodos. Devuelve hacia atrs (a su padre) el valor del nodo olvidado.
El A*MS vuelve a generar el subrbol 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 ms nueva, o elimina la peor hoja ms vieja.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
52 de 110 Bsqueda informada Estrategias de bsqueda informada (heurstica)
Bsqueda voraz primero el mejor. Bsqueda A*: minimizar el costo estimado total de la solucin. Bsqueda heurstica con memoria acotada. Aprender a buscar mejor. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
53 de 110 Bsqueda informada (heurstica) Aprender a buscar mejor Podra 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 subrboles no prometedores.
El objetivo del aprendizaje es reducir al mnimo el coste total de resolver el problema (coste computacional + coste del camino).
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
54 de 110 Bsqueda informada Funciones heursticas Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
55 de 110 Bsqueda informada (heurstica)
Buscar una heurstica para el problema del 8-puzzle. Para encontrar la solucin ms corta utilizando A*, necesitamos una funcin heurstica que nunca sobrestima el nmero de pasos al objetivo. Heursticas tpicas: h1 = nmero de piezas mal colocadas. h2 = suma de las distancias de las piezas a sus posiciones en el objetivo (suma de distancias horizontales y verticales). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
56 de 110 Bsqueda informada Funciones heursticas
El efecto de la precisin heurstica en el rendimiento. Inventar funciones heursticas admisibles. Aprendizaje de heursticas desde la experiencia. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
57 de 110 Bsqueda informada (heurstica)
Medir la calidad de la heurstica => b*factor de ramificacin eficaz. h2 es siempre mejor que h1 cuando para cualquier nodo n, h2(n) >= h1(n) => h2 domina a h1. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
58 de 110 Bsqueda informada Funciones heursticas
El efecto de la precisin heurstica en el rendimiento. Inventar funciones heursticas admisibles. Aprendizaje de heursticas desde la experiencia. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
59 de 110 Bsqueda informada (heurstica)
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 vaca.
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) => Sera el apropiado si movemos cada ficha en direccin a su destino.. Una ficha puede moverse del cuadro A al cuadro B si B es el vaco. Una ficha puede moverse del cuadro A al cuadro B. H1 (fichas mal colocadas) => Sera el apropiado si las fichas pueden moverse hacia el destino en un paso. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
60 de 110 Bsqueda informada (heurstica)
Se pueden obtener heursticas admisibles del coste de la solucin 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.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
61 de 110 Bsqueda informada Funciones heursticas
El efecto de la precisin heurstica en el rendimiento. Inventar funciones heursticas admisibles. Aprendizaje de heursticas desde la experiencia. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
62 de 110 Bsqueda informada (heurstica)
Una funcin h(n) estima el coste de una solucin que comienza desde el estado en el nodo n.
Cmo podra un agente construir tan funcin? - Problemas relajados. - Aprender de la experiencia.
En el caso del 8-puzzle cada ejemplo se compone de un estado del camino solucin y el coste real de la solucin desde ese punto.
Algoritmo de aprendizaje inductivo: construir una funcin h(n) que pueda predecir los costos solucin para otros estados que aparezcan durante la bsqueda.
Tcnicas: Redes neuronales, rboles de decisin, ...
Requieren de caractersticas de un estado que sean relevante para su evaluacin adems de la descripcin del estado. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
63 de 110 Bsqueda informada Algoritmos de bsqueda local y problemas de optimizacin Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
64 de 110 Bsqueda informada (heurstica)
Algoritmos de bsqueda: Exploran espacios de bsqueda de forma sistemtica. 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 solucin al problema.
Que hacemos cuando el camino al objetivo es irrelevante?
Algoritmos de bsqueda local: Funcionan con un solo estado actual (frente a los mltiples caminos). Generalmente se mueve slo a los vecinos del estado. No se guardan los caminos seguidos para la bsqueda. Ventajas: Usan muy poca memoria. Encuentran soluciones razonables en espacio de estados grandes o infinitos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
65 de 110 Bsqueda informada (heurstica)
Problemas de optimizacin puros: Objetivo: encontrar el mejor estado segn una funcin objetivo.
Paisaje del espacio de estados: Posicin: definida por el estado. Elevacin: definida por el valor de la funcin de coste heurstica o funcin objetivo. Mnimo global: cuando la elevacin corresponde al coste, el objetivo es encontrar el valle ms bajo. Mximo global: Si la elevacin corresponde a una funcin objetivo => el objetivo es encontrar el pico ms alto.
Algoritmo de bsqueda local completo => Siempre encuentra el objetivo si existe.
Algoritmo ptimo => Siempre encuentra un mnimo/mximo global.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
66 de 110 Bsqueda informada (heurstica)
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
67 de 110 Bsqueda informada Algoritmos de bsqueda local y problemas de optimizacin
Bsqueda de ascensin de colinas. Bsqueda de temple simulado. Bsqueda por haz local. Algoritmos genticos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
68 de 110 Bsqueda informada (heurstica)
Algoritmo de bsqueda de ascensin de colinas: Bucle que continuamente se mueve en direccin del valor creciente (hacia arriba). Termina cuando alcanza "un pico" donde ningn vecino tiene un valor ms alto.
Caractersticas: Es un algoritmo voraz, que no mantiene un rbol de bsqueda, sino slo la representacin del estado actual y el valor de su funcin objetivo. Mantiene una estructura de datos del nodo actual que necesita slo el registro del estado y su valor de funcin objetivo. No se mira ms all de los vecinos inmediatos del estado actual. Escoge el vecino que tiene un mejor valor de la funcin objetivo. Finaliza cuando alcanza un extremo (mximo o mnimo, depende del planteamiento)
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
69 de 110 Bsqueda informada (heurstica)
Obviamente no garantizan encontrar la solucin ptima, la bsqueda se puede quedar atascada: en un mximo local: Es un pico que es ms alto que cada uno de sus estados vecinos, pero ms abajo que el mximo global. mnimo local en una meseta: rea del paisaje del espacio de estados donde la funcin de evaluacin es plana. en una terraza en una cresta. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
70 de 110 Bsqueda informada (heurstica) Mtodo de Escalada
Mtodo de Mejora I terativa Determinista
1.- Partimos de la solucin actual 2.- Buscamos un vecino con mejor calidad 3.- Si existe un vecino que mejore la solucin actual entonces se sustituye la solucin 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) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
71 de 110 Bsqueda informada (heurstica)
8-reinas con bsqueda por escalada: Cada estado tiene las 8 reinas en el tablero La funcin sucesor devuelve todos los estados posibles moviendo una reina a otra posicin de la misma columna (| N(H)| =8*7= 56) La funcin objetivo es el numero de pares de reinas que se atacan, directa o indirectamente. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
72 de 110 Bsqueda informada (heurstica)
Ventajas e I nconvenientes
Ventajas: Mejora del valor objetivo en un entorno
Inconvenientes: Explora una pequea porcin del espacio de bsqueda
Para evitar quedarse atrapado en un ptimo local hay variantes del algoritmo de escalada bsico: Escalada estocstica Escalada de primera opcin Escalada con reinicio aleatorio Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
73 de 110 Bsqueda informada (heurstica)
Variantes del mtodo de escalada
Escalada estocstica Escoge aleatoriamente entre los sucesores con mejor valoracin que el estado actual.
Escalada de primera opcin generan aleatoriamente sucesores, escogiendo el primero con mejor valoracin que el estado actual
Escalada con reinicio aleatorio Se repite varias veces la bsqueda, partiendo cada vez de un estado inicial distinto, generado aleatoriamente si no te sale a la primera, intntalo otra vez Si la probabilidad de xito de una bsqueda individual es p, entonces el nmero esperado de reinicios es 1/p Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
74 de 110 Bsqueda informada (heurstica) Mtodo de Escalada
Mtodo del Mximo Gradiente (Steepest Descent Strategy)
1.- Partimos de la solucin actual 2.- Buscamos de todos los vecinos el de mejor calidad 3.- Si existe un vecino mejor entonces se sustituye la solucin actual por la vecina volvemos al paso 2 sino parar
Devuelve un ptimo local con respecto al vecindario utilizado (ms costoso que el mtodo de escalada). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
75 de 110 Bsqueda informada (heurstica) Bsqueda Ascenso de Colinas
Bsqueda Tab (TS)
Fred Glover 1989: Metaheurstico que usa bsqueda agresiva del ptimo del problema
Memoria +Aprendizaje = Bsqueda inteligente.
Es mejor una mala decisin basada en informacin que una buena decisin al azar, ya que, en un sistema que emplea memoria, una mala eleccin basada en una estrategia proporcionar claves tiles para continuar la bsqueda. Una buena eleccin fruto del azar no proporcionar ninguna informacin para posteriores acciones." Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
76 de 110 Bsqueda informada Algoritmos de bsqueda local y problemas de optimizacin
Bsqueda de ascensin de colinas. Bsqueda de temple simulado. Bsqueda por haz local. Algoritmos genticos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
77 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado
Simulated Annealing Origen: Procesos heursticos que intentan simular el comportamiento de un grupo de tomos expuestos a enfriamiento (Recocido de slidos) Enfriamiento rpido: estado de alta energa (inestable) Enfriamiento lento (recocido/temple): estado ordenado (de baja energa)
Temple: proceso para endurecer metales, calentndolos a un temperatura alta y luego dejndolos enfriar gradualmente Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
78 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado
La idea es movernos de los extremos locales mediante sacudidas (simulan la temperatura) que irn decreciendo en intensidad. Se selecciona aleatoriamente un sucesor del estado actual y se pasa a l de forma condicional Si su valoracin es mejor, se pasa a ese nuevo estado Si la valoracin del sucesor no es mejor, pasamos con probabilidad eE/T E es el gradiente de la valoracin T es una metfora de la temperatura en un proceso de templado metalrgico
Si T disminuye bastante despacio, el algoritmo encontrar un ptimo global con probabilidad cerca de uno.
Utilizada en problemas de distribucin VLSI y de optimizacin a gran escala. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
79 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
80 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado
Algoritmo de Metrpolis
Estrategia bsica: Iteracin del Algoritmo de Metrpolis Algoritmo de Metrpolis: Dado un estado i con energa Ei Se genera un nuevo estado j mediante una perturbacin (pequea distorsin en i) Se calcula la energa 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) Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
81 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado
Probabilidad de aceptacin: ( cR+ es el parmetro de control, c= KBT)
Inicialmente valores grandes de c aceptan cualquier estado. Al tender c a 0, se dejan de aceptar estados
Bsqueda de equilibrio trmico en cada temperatura Varias transiciones en cada temperatura Caracterizado por la distribucin de Boltzman Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
82 de 110 Bsqueda informada (heurstica) Bsqueda Temple Simulado (Mtodo)
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
83 de 110 Bsqueda informada Algoritmos de bsqueda local y problemas de optimizacin
Bsqueda de ascensin de colinas. Bsqueda de temple simulado. Bsqueda por haz local. Algoritmos genticos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
84 de 110 Bsqueda informada (heurstica) Bsqueda 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 bsqueda En cada paso se generan todos los sucesores de los k estados. Si alguno es objetivo, se detiene la bsqueda 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 bsqueda por haz local la informacin til se pasa entre los k hilos paralelos de bsqueda, si uno genera mejores sucesores, los k hilos de bsqueda seguirn por ese camino.
Puede carecer de diversidad en los k estados Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
85 de 110 Bsqueda informada (heurstica) Bsqueda por haz local
B. por haz estocstica La bsqueda por haz local puede concentrarse rpidamente en pequeas regiones del espacio de estados (explotacin)
A veces es necesario explorar otras zonas aparentemente peores.
Trata de combinar la explotacin de las zonas mejores con la exploracin de las zonas aparentemente peores. En vez de elegir los k mejores sucesores, se eligen k sucesores con una probabilidad que es funcin creciente de su valoracin los mejores tienen mayor probabilidad de ser elegidos, aunque no siempre lo sern Guarda relacin con la seleccin natural Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
86 de 110 Bsqueda informada (heurstica) Bsqueda por haz local
Aspectos generales La calidad de la solucin depende de la definicin del vecindario y tambin la forma del espacio de bsqueda Pocos ptimos locales Muchos ptimos locales, muy juntos (tiles los mecanismos de escape) Muchos ptimos locales esparcidos por el espacio de bsqueda. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
87 de 110 Bsqueda informada Algoritmos de bsqueda local y problemas de optimizacin
Bsqueda de ascensin de colinas. Bsqueda de temple simulado. Bsqueda por haz local. Algoritmos genticos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
88 de 110 Bsqueda informada (heurstica) Algoritmos Genticos
Algoritmo gentico (AG): Es una variante de la bsqueda de haz estocstica en la que los estados sucesores se generar combinando dos estados padres, en lugar de modificar un solo estado.
Analoga: frente a la bsqueda de haz estocstica (reproduccin asexual), los AG simulan el mtodo de la reproduccin sexual.
Los AGs comienzan con un conjunto de k estados generados aleatoriamente (poblacin).
Los estados o individuos est representado como una cadena sobre un alfabeto finito (normalmente cadenas de 0s y 1s).
Funcin de idoneidad: Funcin de evaluacin para tasar cada estado.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
89 de 110 Bsqueda informada (heurstica) Algoritmos Genticos
Conceptos de los AGs: Punto de cruce: se selecciona aleatoriamente. Mutacin: en los AGs se aplica una probabilidad independiente de mutacin aleatoria. Esquema: Es una subcadena en la cual algunas de las posiciones se pueden dejar inespecficas I nstancias 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) Poblacin inicial. c) Funcin idoneidad: Kn/Sum(K1..Kn) d) Seleccin. e) Cruce. f) Mutacin.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
90 de 110 Bsqueda informada (heurstica) Algoritmos Genticos
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
91 de 110 Bsqueda informada (heurstica) Algoritmos Genticos
H(n): n de pares de reinas que no se atacan = 8*7/2 = 28
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
92 de 110 Bsqueda informada (heurstica) Algoritmos Genticos
Algoritmo gentico (AG):
Ej 8-reinas:
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
93 de 110 Bsqueda informada Bsqueda local en espacios continuos Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
94 de 110 Bsqueda informada (heurstica) Bsqueda por haz local
Bsqueda en espacios continuos La funcin sucesor devuelve infinitos estados
Ejemplo: colocar tres aeropuertos en Rumania minimizando su distancia a las ciudades estados: estn definidos por las coordenadas de los 3 aeropuertos: (x1,y1) (x2,y2) (x3,y3) funcin objetivo: f(x1,y1,x2,y2,x3,y3)=distancia de todas las ciudades a su aeropuerto ms cercano
Muchos mtodos usan el gradiente que nos da la magnitud y la direccin de la inclinacin ms pronunciada: Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
95 de 110 Bsqueda informada (heurstica) Bsqueda por haz local
Bsqueda 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 es una pequea cte
La determinacin de es fundamental: si es pequea necesitaremos muchos pasos para alcanzar un extremo, y si es grande podremos pasarnos del extremo Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
96 de 110 Bsqueda informada Agentes de bsqueda online y ambientes desconocidos Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
97 de 110 Bsqueda informada (heurstica) Bsqueda on-line
Bsqueda off-line: Calcula una solucin completa antes de poner un pie en el mundo real. Despus ejecutan la solucin sin recurrir a las percepciones.
Bsqueda on-line: Intercala el calcula y la accin. Toma una accin Observa el entorno Calcula la siguiente accin.
Usos de la bsqueda on-line: Problemas de exploracin, donde el agente desconoce los estados y acciones. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
98 de 110 Bsqueda informada Agentes de bsqueda online y ambientes desconocidos
Problemas de bsqueda en lnea (online). Agentes de bsqueda en lnea (online). Bsqueda local en lnea (online). Aprendizaje en la bsqueda en lnea (online). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
99 de 110 Bsqueda informada (heurstica) Bsqueda on-line
Asumimos que el agente sabe: Accin (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 podra tener acceso a una funcin heurstica admisible h(s) que estime la distancia del estado actual a un estado objetivo. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
100 de 110 Bsqueda informada (heurstica) Bsqueda on-line
Objetivo del agente: Alcanzar un estado objetivo minimizando el coste.
Conceptos: Costo: coste total del camino por el que el agente viaja. Proporcin competitiva: obtener el coste ms pequeo que sea posible. Argumento de adversario.
Asumimos que el espacio de estados es seguramente explorable: algn estado objetivo es alcanzable desde cualquier estado alcanzable.
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
101 de 110 Bsqueda informada (heurstica) Bsqueda on-line (Ej. Laberinto)
Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
102 de 110 Bsqueda informada Agentes de bsqueda online y ambientes desconocidos
Problemas de bsqueda en lnea (online). Agentes de bsqueda en lnea (online). Bsqueda local en lnea (online). Aprendizaje en la bsqueda en lnea (online). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
103 de 110 Bsqueda informada (heurstica) Agentes de bsqueda on-line Intercalacin planificacin-accin: Despus de cada accin, un agente online recibe una percepcin (al decirle el estado que ha alcanzado). Esta informacin aumenta su mapa de entorno. El mapa actual se utiliza para decidir donde ir.
La bsqueda on-line son necesarias para problemas de exploracin.
Los estados deben expandirse teniendo en cuenta la posicin fsica que ocupamos => bsqueda en profundidad. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
104 de 110 Bsqueda informada (heurstica) Agentes de bsqueda on-line Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
105 de 110 Bsqueda informada Agentes de bsqueda online y ambientes desconocidos
Problemas de bsqueda en lnea (online). Agentes de bsqueda en lnea (online). Bsqueda local en lnea (online). Aprendizaje en la bsqueda en lnea (online). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
106 de 110 Bsqueda informada Bsqueda local on-line Propiedad de localidad en la expansin de los nodos: Bsqueda primero en profundidad. Bsqueda de ascensin de colinas.
Usaremos caminos aleatorios para probar el entorno.
Aumentar la ascensin de colinas con memoria y no con aleatoriedad resulta ms eficiente.
H(s): Almacenar una mejor estimacin actual del coste para alcanzar el objetivo desde cada estado que se ha alcanzado. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
107 de 110 Bsqueda informada Bsqueda 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" segn sus costos estimados actuales. Las acciones que todava 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. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
108 de 110 Bsqueda informada Bsqueda local on-line Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
109 de 110 Bsqueda informada Agentes de bsqueda online y ambientes desconocidos
Problemas de bsqueda en lnea (online). Agentes de bsqueda en lnea (online). Bsqueda local en lnea (online). Aprendizaje en la bsqueda en lnea (online). Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
110 de 110 Bsqueda informada Bsqueda local on-line Aprendizaje de los agentes: Los agentes aprenden un "mapa" del entorno (el resultado de cada accin en cada estado), registrando cada una de sus experiencias. Los agentes adquieren estimaciones ms exactas del valor de cada estado utilizando las reglas de actualizacin local. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
111 de 110 Bsqueda informada Resumen Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
112 de 110 Bsqueda informada (heurstica) Resumen
Heursticas: hemos analizado la aplicacin de heursticas para reducir los de costes de la bsqueda.
Optimalidad: tiene un precio excesivo en trminos del coste de bsqueda, an con heursticas buenas.
Bsqueda primero el mejor: Es una bsqueda-grafo. Los nodos no expandidos de coste mnimo se escogen para la expansin. Utilizan una h(n) que estima el coste de una solucin desde n.
Bsqueda primero el mejor avara: Expande nodos con h(n) mnima. No es ptima. Suele tener costes razonables. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
113 de 110 Bsqueda informada (heurstica) Resumen
Bsqueda A*: Expande nodos con mnimo f(n) = g(n) + h(n) Es completa y optima si: h(n) es admisible con Bsqueda-rbol h(n) es consistente con Bsqueda-Grafo. Alto coste.
El rendimiento de los algoritmos de bsqueda heurstica depende de la calidad de la funcin heurstica.
Las heursticas buenas pueden construirse a veces relajando la definicin del problema, mediante: Costes de solucin precalculados para sub-problemas Aprendiendo de la experiencia de clases de problemas. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
114 de 110 Bsqueda informada (heurstica) Resumen
BRPM y A*MS son algoritmos de bsqueda: robustos ptimos utilizan cantidades limitadas de memoria con suficiente tiempo resuelven problemas que el A* no puede resolver.
Mtodos de bsqueda local: Operan en formulaciones completas de estados. Mantienen slo un nmero pequeo de nodos en memoria. Los algoritmos estocsticos (temple simulado) devuelven soluciones ptimas cuando se da un apropiado programa de enfriamiento. Se pueden utilizar para resolver problemas en espacios continuos. Luis Enrique Snchez Crespo UCLM-ESI I n t e l i g e n c i a
A r t i f i c i a l
e
I n g e n i e r i a
d e l
C o n o c i m i e n t o
115 de 110 Bsqueda informada (heurstica) Resumen
Algoritmo gentico: Es una bsqueda de ascensin de colinas estocstica en la que se mantiene una poblacin grande estados. Los estados nuevos se generan por mutacin y cruce, combinando pares de estados de la poblacin.
Problemas de exploracin: El agente no tiene la menor idea acerca de los estados y acciones de su entorno. En entornos explorables, los agente de bsqueda en lnea pueden construirse un mapa y encontrar un objetivo si existe. Las estimaciones de las heurstica, que se actualizan por la experiencia, proporcionan un mtodo efectivo para escapar de mnimos locales. Universidad de Castilla-La Mancha
Luis Jimnez Linares Luis.jimenez@uclm.es Luis Enrique Snchez Crespo LuisEnrique@SanchezCrespo.org