Title: 1 de 110
1Datos 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.
2Datos 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).
3Universidad de Castilla-La ManchaInteligencia
Artificial e Ingeniería del Conocimiento
- Tema3 Métodos de búsqueda de soluciones
(Búsqueda informada y exploración)
Profesores Luis Jiménez Linares.
Luis Enrique Sánchez Crespo.
4Bú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.
5Búsqueda informada
Estrategias de búsqueda informada (heurística)
6Bú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.
La información sobre el espacio de estados puede
impedir a los algoritmos cometer un error en la
oscuridad
7Bú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
8Búsqueda informada
Estrategias de búsqueda informada (heurística)
- ? 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.
9Búsqueda informada (heurística)BPM
Búsqueda Primero el Mejor gt usar una función
de evaluación para cada nodo - estimar la
deseabilidad Función de evaluación gt Expandir
el nodo más deseable (evaluación más baja
parece ser el mejor) entre los no
expandidos. Función heurística gt h(n) coste
estimado del camino más barato desde el nodo n a
un nodo objetivo.
10Bú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.
11Bú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? -
En este caso el método seguirá la ruta más larga,
al empezar a moverse hacia delante según la receta
12Bú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.
13Bú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.
14Bú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.
15Bú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.
16Bú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
17Bú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(bm), 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
18Bú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 gt
19Búsqueda informada (heurística)AVARA Minimizar
el costo estimado
- En el mapa ya visto anotamos AradgtBucarest
366 km - h(n) distancia en línea recta
- -gt Zerind 374
- -gt Sibiu 253 lt
- -gt Timisoara 329
20Búsqueda informada (heurística)AVARA Minimizar
el costo estimado
- Arad - 366
- Oradea - 380
- ? Fagaras .. 178
- Rimnicu Vicea - 193
21Búsqueda informada (heurística)AVARA Minimizar
el costo estimado
22Búsqueda informada (heurística)AVARA Minimizar
el costo estimado
h(n) 366
Arad
Zerind
Sibiu
Timisoara
h(n) 253
h(n) 329
h(n) 374
193
178
366
380
Fagaras
Oradea
Arad
Rimnicu
253
h(n) 0
Sibiu
Bucharest
verdadera ruta óptima es Arad ? Sibiu ?
Rimnicu ? Pitesti ? Bucharest
23Bú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
24Búsqueda informada (heurística)
Minimizar el costo de ruta total
- 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)
25Búsqueda informada (heurística)
Minimizar el costo de ruta total
- 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)
26Búsqueda informada
Estrategias de búsqueda informada (heurística)
- 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.
27Bú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.
28Bú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)ltf
- 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)
29Bú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 ffi.
30Búsqueda informada (heurística)
- Ver figuras con círculos concéntricos
deformados, ya no con CONTORNOS equirradiales -
?
31Búsqueda informada (heurística)
380
32Búsqueda informada (heurística)
Prueba estándar de la optimalidad de A
-
- ------------------------
- ------------------------
- n
- G1 G2
- Sea una meta subóptima G2 que está en la cola de
espera - Sea n un nodo sin expandir en el camino más corto
hacia una meta óptima G1 - A nunca va a elegir G2 para su expansión
33Bú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
34Bú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 .
35Bú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 (hgt0) 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
36Bú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)lt 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.
37Búsqueda informada (heurística) Completitud de A
- Complejidad temporal - O(bd)
- Complejidad espacial - O(bd)
- el espacio de búsqueda de A crece
exponencialmente a no ser que sea - h(n)-h(n) lt 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
38Bú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.
39Búsqueda informada (heurística)A
f(n) 366
Arad
140
75
118
h(n) 253 f(n) 393
h(n) 374 f(n) 449
h(n) 329 f(n) 447
Zerind
Sibiu
Timisoara
80
140
99
151
f(n) 413
Rimnicu
Fagaras
Oradea
Arad
146
97
80
f(n) 646
f(n) 417
f(n) 661
Craiova
Pitesti
Sibiu
f(n) 526
f(n) 415
f(n) 553
40Bú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
41Búsqueda informada (heurística) A
h(n) 253 f(n) 393
Sibiu
80
140
99
151
Arad
f(n) 413
Rimnicu
Oradea
f(n) 646
f(n) 526
80
97
Fagaras
f(n) 417
146
Sibiu
Pitesti
f(n) 415
Craiova
99
211
f(n) 553
f(n) 526
97
138
101
Bucharest
Sibiu
Craiova
Rimnicu
Bucharest
f(n) 450
f(n) 591
f(n) 607
f(n) 615
f(n) 418
42Búsqueda informada (heurística) A
h(n) 253 f(n) 393
Sibiu
80
f(n) 413
Rimnicu
151
146
97
80
Oradea
140
99
Pitesti
f(n) 661
Sibiu
f(n) 415
Craiova
f(n) 553
f(n) 526
Fagaras
Arad
138
101
97
f(n) 417
f(n) 646
Craiova
Bucharest
Rimnicu
f(n) 418
f(n) 607
f(n) 615
43Búsqueda informada (heurística) Casos limites de
A
- Si h0 y gd ? BPA
- Si h1/d y g0 ? BPP
- Si h0 y g0 ? Búsqueda aleatoria
- Si hh y g0 ? Búsqueda avara
- Si h0 y gg ? Búsq. de costo uniforme
- Si h(n)gth(n) ? se habría perdido la ruta óptima
- Si h(n)lth(n) ? ruta bien tramo redundante?
44Búsqueda informada
Estrategias de búsqueda informada (heurística)
- 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.
45Búsqueda informada (heurística) B. Heurística
con memoria acotada
- Problema del algoritmo A gt Altos requerimientos
de memoria. - Algoritmo API Los requerimientos de memoria se
pueden solucionar aplicando el algoritmo de PI
(Profundidad Iterativa) al A - Función de corte f-coste (gh)
- 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.
- AM Algoritmo A con memoria acotada.
- AMS Algoritmo A con memoria simplificada.
46Bú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.
47Búsqueda informada (heurística) Búsqueda
recursiva primero el mejor (BRPM)
48Búsqueda informada (heurística) Búsqueda
recursiva primero el mejor (BRPM)
49Búsqueda informada (heurística) Búsqueda
recursiva primero el mejor (BRPM)
50Búsqueda informada (heurística) Búsqueda
recursiva primero el mejor (BRPM)
- Ventajas
- Es más eficiente en memoria que el API.
- 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.
51Búsqueda informada (heurística) Algoritmo A con
memoria simplificada (AMS)
- Reutilizan la memoria sobrante.
- El AMS 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 AMS 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 AMS expande
la mejor hoja más nueva, o elimina la peor hoja
más vieja.
52Búsqueda informada
Estrategias de búsqueda informada (heurística)
- 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.
53Bú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).
54Búsqueda informada
Funciones heurísticas
55Búsqueda informada (heurística)
- Buscar una heurística para el problema del
8-puzzle.
- Para encontrar la solución más corta utilizando
A, necesitamos una función heurística que nunca
sobrestima el número de pasos al objetivo. - Heurísticas típicas
- h1 número de piezas mal colocadas.
- h2 suma de las distancias de las piezas a sus
posiciones en el objetivo (suma de distancias
horizontales y verticales).
56Búsqueda informada
Funciones heurísticas
- ? El efecto de la precisión heurística en el
rendimiento. - Inventar funciones heurísticas admisibles.
- Aprendizaje de heurísticas desde la experiencia.
57Búsqueda informada (heurística)
- Medir la calidad de la heurística gt bfactor de
ramificación eficaz. - h2 es siempre mejor que h1 cuando para cualquier
nodo n, h2(n) gt h1(n) gt h2 domina a h1.
58Búsqueda informada
Funciones heurísticas
- El efecto de la precisión heurística en el
rendimiento. - ? Inventar funciones heurísticas admisibles.
- Aprendizaje de heurísticas desde la experiencia.
59Bú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) gt 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) gt Sería el apropiado
si las fichas pueden moverse hacia el destino en
un paso.
60Bú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.
61Búsqueda informada
Funciones heurísticas
- El efecto de la precisión heurística en el
rendimiento. - Inventar funciones heurísticas admisibles.
- ? Aprendizaje de heurísticas desde la experiencia.
62Bú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.
63Búsqueda informada
Algoritmos de búsqueda local y problemas de
optimización
64Bú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.
65Bú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 gt el objetivo es encontrar el
pico más alto. - Algoritmo de búsqueda local completo gt Siempre
encuentra el objetivo si existe. - Algoritmo óptimo gt Siempre encuentra un
mínimo/máximo global.
66Búsqueda informada (heurística)
67Búsqueda informada
Algoritmos de búsqueda local y problemas de
optimización
- ? Búsqueda de ascensión de colinas.
- Búsqueda de temple simulado.
- Búsqueda por haz local.
- Algoritmos genéticos.
68Bú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)
69Bú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.
70Bú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)
71Bú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) 87 56) - La función objetivo es el numero de pares de
reinas que se atacan, directa o indirectamente.
72Bú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
73Bú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
74Bú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).
75Bú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."
76Búsqueda informada
Algoritmos de búsqueda local y problemas de
optimización
- Búsqueda de ascensión de colinas.
- ? Búsqueda de temple simulado.
- Búsqueda por haz local.
- Algoritmos genéticos.
77Bú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
78Bú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.
79Búsqueda informada (heurística)Búsqueda Temple
Simulado
80Bú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)
81Bú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
82Búsqueda informada (heurística)Búsqueda Temple
Simulado (Método)
83Búsqueda informada
Algoritmos de búsqueda local y problemas de
optimización
- Búsqueda de ascensión de colinas.
- Búsqueda de temple simulado.
- ? Búsqueda por haz local.
- Algoritmos genéticos.
84Bú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
85Bú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
86Bú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.
87Búsqueda informada
Algoritmos de búsqueda local y problemas de
optimización
- Búsqueda de ascensión de colinas.
- Búsqueda de temple simulado.
- Búsqueda por haz local.
- ? Algoritmos genéticos.
88Bú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.
89Bú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) 87/2 28 - b) Población inicial.
- c) Función idoneidad Kn/Sum(K1..Kn)
- d) Selección.
- e) Cruce.
- f) Mutación.
90Búsqueda informada (heurística)Algoritmos
Genéticos
91Búsqueda informada (heurística)Algoritmos
Genéticos
- H(n) nº de pares de reinas que no se atacan
87/2 28
92Búsqueda informada (heurística)Algoritmos
Genéticos
- Algoritmo genético (AG)
- Ej 8-reinas
93Búsqueda informada
Búsqueda local en espacios continuos
94Bú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
95Bú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
96Búsqueda informada
Agentes de búsqueda online y ambientes
desconocidos
97Bú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.
98Búsqueda informada
Agentes de búsqueda online y ambientes
desconocidos
- ? 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).
99Bú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.
100Bú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.
101Búsqueda informada (heurística)Búsqueda on-line
(Ej. Laberinto)
102Búsqueda informada
Agentes de búsqueda online y ambientes
desconocidos
- 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).
103Bú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 gt búsqueda en
profundidad.
104Búsqueda informada (heurística) Agentes de
búsqueda on-line
105Búsqueda informada
Agentes de búsqueda online y ambientes
desconocidos
- 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).
106Bú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.
107Búsqueda informada Búsqueda local on-line
- AATR 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 AATR garantiza encontrar un objetivo
en un entorno seguramente explorable y finito.
Pero no es completo para espacios de estados
infinitos.
108Búsqueda informada Búsqueda local on-line
109Búsqueda informada
Agentes de búsqueda online y ambientes
desconocidos
- 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).
110Bú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.
111Búsqueda informada
Resumen
112Bú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.
113Bú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.
114Búsqueda informada (heurística)Resumen
- BRPM y AMS 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.
115Bú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.
116Universidad de Castilla-La Mancha
- Luis Jiménez Linares
- Luis.jimenez_at_uclm.es
- Luis Enrique Sánchez Crespo
- LuisEnrique.sanchez_at_uclm.es