Técnicas de Búsqueda Heurística

Transcripción

Técnicas de Búsqueda Heurística
Técnicas de Búsqueda
Heurística
Curso Inteligencia Artificial
Prof. Demetrio A. Ovalle C.
Octubre 14 de 2009
Técnicas de Búsqueda
Heurística
♣ Generación y prueba
♣ Escalada (simple, máxima pendiente)
♣ Verificación de restricciones
♣ Análisis de medios y fines
(Planificación en IA)
♣ Búsqueda el primero mejor, A*
♣ Reducción de problemas
INTRODUCCIÓN
Estrategias de búsqueda simple:
- Profundidad
- Amplitud (Anchura)
Búsqueda Primero en Profundidad
Búsqueda Primero en Amplitud
Generación y Prueba
1. Generar una posible solución.
2. Verificar si el objetivo elegido es
una solución al comparar con
objetivo final.
3. Si se ha encontrado la solución,
terminar. Si no volver al paso 1.
Escalada
(Hill Climbing)
• Simple (Hill climbing)
• Máxima pendiente
(Steepest ascent hill climbing or
Gradient search)
Escalada Simple
Hill Climbing
• Dirigirse siempre a un estado mejor
que el actual.
• Función heurística de proximidad.
• No se mantiene reporte de estados
anteriores.
• Es un método local. Sus movimientos
están determinados por ser mejores
que los previos.
Búsqueda
• Si existe un sucesor s del estado actual n
mejor que n, entonces hacer a s como
estado actual. De lo contrario, detener.
• Mirar un paso hacia adelante para
determinar si algún sucesor es mejor que
el estado actual; si lo hay, moverse al
mejor sucesor.
Escalada por la Máxima Pendiente
(Steepest ascent hill climbing or
Gradient search)
Buscar no solamente un
estado mejor que el actual,
sino el mejor de todos estos
estados posibles (Máxima
pendiente).
Escalada por la Máxima Pendiente
Dificultades
de la Escalada
Dificultad
Posible Solución
• Máximo local.
• Backtrack.
• Mesetas.
• Saltar.
• Crestas.
• Moverse en varias
direcciones a la
vez.
Otras Ventajas y
Desventajas
Ventajas
• Produce una
menor explosión
combinatoria.
• Utiliza una
cantidad arbitraria
de información si
está codificada en
la función
heurística.
Desventajas
• Pocas garantías de
que va a ser eficaz.
• Sólo atiende a las
consecuencias
inmediatas.
Ejemplo: El mundo de los bloques
A
H
H
G
F
G
F
E
D
E
D
C
C
B
B
A
Estado Inicial (Eo)
Estado Final (Ef)
Función Heurística: - Añadir un punto por cada bloque que
esté sobre un bloque o piso correcto. Restar un punto por
cada bloque que esté situado en un lugar incorrecto.
VERIFICACIÓN DE
RESTRICCIONES
En
los
problemas
de
verificación de restricciones el
objetivo consiste en descubrir
algún estado del problema que
satisfaga un conjunto dado de
restricciones
Ejemplos
• Problemas con rompecabezas
criptoaritméticos.
y
• Etiquetado de percepciones en el
mundo real.
• El diseño de tareas (tiempo, costo y
materiales como limitantes).
¿Cómo funciona?
• Aunque se necesiten aún las
suposiciones, el número de las que
son permitidas se va reduciendo
conforme la búsqueda se va
restringiendo.
• Es un procedimiento de búsqueda
que funciona en un espacio de
conjuntos de restricciones.
¿Qué se busca?
• Un estado objetivo es aquel que ha
satisfecho las restricciones
“suficientemente”, donde
“suficientemente” debe definirse
para cada problema en particular.
Pasos para la búsqueda
La propagación se hace necesaria
por el hecho de que normalmente
existen dependencias entre las
restricciones. También debido a la
presencia de reglas de inferencia
que permiten la inferencia de
otras restricciones adicionales.
Realizar nuevas hipótesis
En el caso de que con las
restricciones iniciales no se llegue a
una solución.
Después comenzar de nuevo la
propagación de restricciones a partir
de ese nuevo estado.
Si se encuentra una solución se
muestra.
Si se detecta alguna contradicción
puede usarse vuelta atrás.
Ejemplo de verificación
de restricciones
Criptoaritmética
S E N D
+ M O R E
------------------M O N E Y

Documentos relacionados