La empresa sostenible: Principales Características, Barreras para su Avance y...
Tipos de búsqueda en inteligencia artificial
1. UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS
ANDES
”UNIANDES”
NOMBRE:
CAMBAL BARAHONA HENRY DAVID
TEMA:
TIPOS DE BUSQUEDA
ASIGNATURA:
INTELIGENCIA ARTIFICIAL
NIVEL:
SEXTO SISTEMASREALIZADO POR: HENRY CAMBAL 1
2. REALIZADO POR: HENRY CAMBAL 2
¿Qué son las técnicas de búsqueda y cuáles son sus elementos?
Tipos de solucionadores
- Búsqueda ciega
- Búsqueda heurística
Búsqueda sin información del dominio o ciega
- Búsqueda en amplitud
- Búsqueda en profundidad
- Búsqueda en profundidad progresiva
- Búsqueda bidireccional
Sistemas de reducción
3. REALIZADO POR: HENRY CAMBAL 3
Búsqueda heurística
- Definiciones
- Función de evaluación heurística
- Estrategias
- Búsqueda con adversos
- Algoritmo MINIMAX
- Poda Alfa-Beta
Aplicaciones
- GPS (General Problem Solver)
Enlaces de interés
4. REALIZADO POR: HENRY CAMBAL 4
¿QUÉ SON LAS TÉCNICAS DE BÚSQUEDA Y
CUÁLES SON SUS ELEMENTOS?
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.
5. REALIZADO POR: HENRY CAMBAL 5
¿QUÉ SON LAS TÉCNICAS DE BÚSQUEDA Y
CUÁLES SON SUS ELEMENTOS?
Los elementos que integran las técnicas de búsqueda son:
- Conjunto de estados: todas las configuraciones
posibles en el dominio.
- Estados iniciales: estados desde los que partimos.
- Estados finales: las soluciones del problema.
- Operadores: se aplican para pasar de un estado a
otro.
6. REALIZADO POR: HENRY CAMBAL 6
¿QUÉ SON LAS TÉCNICAS DE BÚSQUEDA Y
CUÁLES SON SUS ELEMENTOS?
- Solucionador: mecanismo que nos permite
evolucionar de un estado a otro mediante un
algoritmo aplicando los siguientes pasos:
1. Elegir el estado a explorar
2. Establecer un operador que trabaje sobre el
estado elegido en el paso 1
3. Comprobar si el resultado obtenido es un estado
final (es una solución del problema). Sino ir al paso 1.
7. REALIZADO POR: HENRY CAMBAL 7
¿QUÉ SON LAS TÉCNICAS DE BÚSQUEDA Y
CUÁLES SON SUS ELEMENTOS?
Ejemplo con 8-puzzle: este juego consiste en, dada una matriz de 3x3
elementos, tenemos 8 números que deben de ser ordenados dejando la
casilla central vacía.
Para resolverlo usaremos técnicas de búsqueda:
- El conjunto de estados son todas las combinaciones posibles
de ordenación de las 9 piezas.
- El estado inicial es el estado en el que nos dan el puzzle, en
desorden.
- El estado final es el puzzle ordenado.
- Los operadores son mover una ficha en cualquier dirección:
arriba, abajo, izquierda o derecha.
8. REALIZADO POR: HENRY CAMBAL 8
TIPOS DE SOLUCIONADORES
Para decidir como contestar a las preguntas del solucionador podemos usar dos
tipos de búsqueda:
- Búsqueda ciega:
- Se hace crecer el árbol de forma sistemática
- No se realiza análisis entre el estado
obtenido y la solución
- Búsqueda heurística:
- El crecimiento del árbol se hace inyectando
conocimiento.
- Este conocimiento permite calcular la
distancia entre el estado obtenido y el estado final
9. REALIZADO POR: HENRY CAMBAL 9
TIPOS DE SOLUCIONADORES
Un buen solucionador será aquel que realice su función a bajo
coste según los siguientes parámetros:
- Complejidad temporal: tiempo empleado en obtener la
solución
- Complejidad espacial: cantidad de recursos necesarios
para obtener la solución. Por ejemplo: memoria.
La explosión combinatoria es un fenómeno que hace que el
problema no se pueda abordar computacionalmente.
10. REALIZADO POR: HENRY CAMBAL 10
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.
11. REALIZADO POR: HENRY CAMBAL 11
Nodo abierto: No han actuado todos los posibles operadores,
con lo que podrían obtenerse nuevos hijos aplicando los
operadores restantes.
TIPOS DE BÚSQUEDA CIEGA:
Búsqueda en amplitud.
Búsqueda en profundidad.
Búsqueda en profundidad progresiva.
Búsqueda bidireccional.
12. REALIZADO POR: HENRY CAMBAL 12
Búsqueda en amplitud:
- 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.
- Se implementa con una estructura FIFO.
Ejemplo de movimiento de caballo dirigido con búsqueda
en amplitud ( Archivo flash )
13. REALIZADO POR: HENRY CAMBAL 13
- 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.
Referencia a ésta y otras técnicas de búsqueda ciega:
[Fernández, González y Mira, 1998] Cap. 1 “Búsqueda sin
información del dominio”
14. REALIZADO POR: HENRY CAMBAL 14
Búsqueda en profundidad:
- La búsqueda 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.
15. REALIZADO POR: HENRY CAMBAL
15
- 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.
Un ejemplo de uso de distintos tipos de búsqueda ciega ( Problema
de las jarras )
16. 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.
REALIZADO POR: HENRY CAMBAL 16
17. REALIZADO POR: HENRY CAMBAL 17
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.
18. REALIZADO POR: HENRY CAMBAL 18
• Objetivo: reducir un problema en subproblemas más sencillos
que el problema original.
• Ejemplo: integrales por partes.
• Grafos: en un grafo de reducción, cada uno de los nodos
representan un subproblema del problema original.
19. REALIZADO POR: HENRY CAMBAL 19
• 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.
20. REALIZADO POR: HENRY CAMBAL 20
• Definición: es una aplicación del espacio de estados con el
espacio de los números reales
F(estado) => n
• n representa lo cercano que esta el estado con el que se ha
aplicado la función de evaluación de la solución final.
• Es muy importante mantener un equilibrio entre la eficiencia
de la función y su complejidad. No debemos tener una función
de evaluación demasiado complicada, ni tampoco una
demasiado sencilla pero que no avance prácticamente nada en
el problema. En caso de no mantener este equilibrio se podría
producir explosión combinatoria.
21. REALIZADO POR: HENRY CAMBAL 21
• 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ó.
•Métodos:
• Gradiente
• Primero el mejor
• Búsqueda en haz
• Algoritmo A
22. REALIZADO POR: HENRY CAMBAL 22
Gradiente:
• Metodología: elegir el camino de máxima
pendiente, usando para ello la función de evaluación.
• Tipo: irrevocable.
• Ventajas: se llega a la solución con poco coste
computacional.
• Inconvenientes: puede ser que el problema no sea
compatible con este método, y, por lo tanto, no
conseguiremos obtener la solución.
23. REALIZADO POR: HENRY CAMBAL 23
Primero el mejor:
• 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.
24. REALIZADO POR: HENRY CAMBAL 24
Búsqueda en haz:
• 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.
25. REALIZADO POR: HENRY CAMBAL 25
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.
26. REALIZADO POR: HENRY CAMBAL 26
La búsqueda con adversos (juego contra un oponente) analiza
los problemas en los que existe mas de un adversario
modificando el estado del sistema.
Hay dos operadores:
- el que lleva el problema a la mejor situación (jugada
nuestra)
- el que lleva el problema a la peor situación (jugada
de nuestro adversario)