2. ¿Qué es búsqueda?
• Búsqueda: método computacional para resolver problemas
Sistemática y no sistemática
• Sistemática: si existe una solución la encuentra recorrido ordenado del
espacio de estados si un estado no puede ser solución --> poda
• No sistemática: pueden no encontrar la solución búsqueda local
• pueden visitar varias veces el mismo estado
Las técnicas de búsqueda son una serie de esquemas de representación
del conocimiento, que mediante diversos algoritmos nos permite resolver
ciertos problemas desde el punto de vista de la I.A.
3. BÚSQUEDA CIEGA
Sólo utiliza información acerca de si un estado es o no objetivo
para guiar su proceso de búsqueda.
Antes de explicar los tipos de búsqueda ciega, convendría dar una
serie de definiciones:
Expandir un nodo: obtener los posibles hijos de un nodo a
partir de la aplicación de los distintos operadores sobre él.
Nodo cerrado: Se han aplicado todos los posibles operadores
sobre él, obteniéndose todos sus posibles hijos.
Nodo abierto: No han actuado todos los posibles operadores,
con lo que podrían obtenerse nuevos hijos aplicando los
operadores restantes.
4. TIPOS DE BÚSQUEDA CIEGA:
Búsqueda en amplitud.
Búsqueda en profundidad.
Búsqueda en profundidad progresiva.
Búsqueda bidireccional.
5. Búsqueda en amplitud:
Es un algoritmo usado para recorrer o buscar elementos en una
estructura de datos como los árboles.
Pertenece al grupo de las búsquedas no informadas (sin heurísticas).
Procedimientos de búsqueda nivel a nivel.
Para cada uno de los nodos de un nivel se aplican todos los posibles
operadores.
No se expande ningún nodo de un nivel antes de haber expandido todos
los del nivel anterior.
Una cola es una estructura FIFO (First In, First Out) en la que sólo
disponemos de dos operaciones: insertar al final de la cola y extraer del
principio de la cola. Por tanto, el elemento que entra el último será el
último en salir
6. Ventajas:
- Si existe la solución, la encuentra en la menor profundidad posible.
- Desventajas:
- Explosión combinatoria aparece frecuentemente debido a la alta
complejidad espacial y temporal de esta técnica
7. Búsqueda en profundidad:
consiste en visitar todos los nodos de forma ordenada pero no uniforme
en un camino concreto, dejando caminos sin visitar en su proceso.
Una vez llega al final del camino vuelve atrás hasta que encuentra una
bifurcación que no ha explorado, y repite el proceso hasta acabar el árbol.
se realiza por una sola rama del árbol hasta encontrar una solución o
hasta que se tome la decisión de terminar la búsqueda por esa dirección.
Terminar la búsqueda por una dirección se debe a no haber posibles
operadores que aplicar sobre el nodo hoja o por haber alcanzado un nivel
de profundidad muy grande.
Si esto ocurre se produce una vuelta atrás (backtracking) y se sigue por
otra rama hasta visitar todas las ramas del árbol si es necesario.
8. Ventajas:
- Tiene menor complejidad espacial que búsqueda en amplitud.
- Desventajas:
- Se pueden encontrar soluciones que están mas alejadas de la raíz que
otras.
- Existe el riesgo de presencia de bucles infinitos.
9. Búsqueda en profundidad progresiva:
- Se define una profundidad predefinida.
- Se desarrolla el árbol realizando una búsqueda en profundidad
hasta el límite definido en el punto anterior.
- Si se encuentra la solución FIN
- En caso contrario, se establece un nuevo límite y volvemos al
segundo paso.
10. Búsqueda bidireccional:
- Se llevan a la vez dos búsquedas: una descendente desde el nodo inicial y
otra ascendente desde el nodo meta.
- Al menos una de estas dos búsquedas debe ser en anchura para que el
recorrido ascendente y descendente puedan encontrarse en algún
momento.
- Cuando se llegue a un nodo que ya había sido explorado con el otro tipo
de búsqueda, el algoritmo acaba.
- El camino solución es la suma de los caminos hallados por cada
búsqueda desde el nodo mencionado hasta el nodo inicial y hasta el nodo
meta.
11. MÉTODO HEURÍSTICO
Se basa en la utilización
de reglas empíricas para
llegar a una solución.
El método heurístico
conocido como “IDEAL”,
incluye cinco pasos:
Identificar el problema;
definir y presentar el
problema;
explorar las estrategias
viables;
avanzar en las
estrategias; y
lograr la solución y
volver para evaluar los
efectos de las actividades
Los métodos de búsqueda heurística
disponen de alguna información sobre
la proximidad de cada estado a un
estado objetivo, lo que permite
explorar en primer lugar los caminos
más prometedores.
Heurística
• Origen: heuriskein (encontrar en
griego)
• Significado:
• Procedimiento: criterio que puede
resolver un problema pero que no hay
garantía de que siempre lo resuelva.
• Función: estimación del coste
necesario para
alcanzar una solución desde el estado
actual.
12. Búsqueda heurística
• Las técnicas de búsqueda heurística usan el conocimiento del dominio
para adaptar el solucionador y, de esta manera, éste sea más potente y
consiga llegar a la solución con mayor rapidez. Por tanto, estas técnicas
utilizan el conocimiento para avanzar buscando la solución al problema.
Definiciones:
• Costo del camino: coste necesario para ir del nodo raíz al nodo meta
por dicho camino.
• Costo para hallar la solución: coste necesario para encontrar el
camino anteriormente definido.
• Potencia heurística: capacidad de un método de exploración para
obtener la solución con un coste lo más bajo posible.
Tipos
• Estrategias tentativas: aquellas en las que se puede abandonar la
exploración de una rama y pasar a explorar otra en cualquier momento del
problema.
• Estrategias irrevocables: aquellas en las que no se puede abandonar la
exploración de la rama por la que se comenzó.
•Primero el mejor
• Búsqueda en haz
• Algoritmo A
13. Primero el mejor:
La búsqueda primero el mejor es un caso particular del algoritmo
general de Búsqueda -Árboles en el cual se selecciona un nodo
para la expansión basada en una función de evaluación .
Extiende la mejor trayectoria parcial en cada punto. Considera
todos los nodos abiertos hasta el momento. Generalmente la
búsqueda primero el mejor encuentra trayectorias más cortas a
los estados meta.
14. • Metodología: elegir como siguiente nodo aquel con mayor
función de evaluación.
• Tipo: tentativo.
• Ventajas: no depende en exceso de la función de evaluación.
• Inconvenientes: excesiva complejidad espacial, pues se deben
guardar todos los nodos abiertos.
15. Búsqueda en haz:
• Sólo se mueve hacia abajo.
•Extiende varias trayectorias parciales y elimina el resto
•Metodología: elegir un conjunto de nodos como los siguientes a expandir, y
hacerlo de forma irrevocable.
• Tipo: irrevocable/tentativo.
• Ventajas: más permisible.
• Inconvenientes: en caso de que el sistema sea irrevocable, este método no
actúa con eficacia.
s
a
b
c
d
a
e
e
d
d
b
f
b
f
g
c
g
d
e
b
e
f
g
a
f
c
g
16. Algoritmo A:
• Metodología: Ponderar a la vez lo cerca que estamos del nodo meta
y lo lejos que estamos del nodo inicial.
• Tipo: tentativo.
• Ventajas: soluciones más cercanas a la raíz.
• Inconvenientes: la función de evaluación se complica.