Vous êtes sur la page 1sur 87

Inteligencia Artificial Clase #4 Bsqueda Ciega

Dr. Wladimir Rodrguez Postgrado en Computacin wladimir@ula.ve

Agenda

Dr. Wladimir Rodriguez

Agente Solucionador de Tareas Bsqueda en Espacio de Estados Conceptos Bsicos de Bsqueda Algoritmo de Bsqueda Bsqueda a lo Ancho Bsqueda en Profundidad Bsqueda en Profundidad Iterativa Bsqueda de Costo Uniforme
2

Inteligencia Artificial

Agente Solucionador de Problemas


1. estado Inicial sensar/leer estado 2. meta seleccionar/leer meta 3. sucesor seleccionar/leer modelos de accin 4. problema (estado inicial, meta, sucesor) 5. solucin bsqueda (problema) 6. ejecutar (solucin}

Dr. Wladimir Rodriguez

Inteligencia Artificial

Bsqueda en Espacio de Estados

Arbol de Bsqueda
Dr. Wladimir Rodriguez 4 Inteligencia Artificial

Conceptos Bsicos de Bsqueda

Arbol de Bsqueda Nodo de Bsqueda Expansin de Nodos Estrategia de Bsqueda: Permite determinar para
cada paso cual nodo expandir

Dr. Wladimir Rodriguez

Inteligencia Artificial

Diferencia entre Nodos de Bsqueda y Estados


8 3 5 2 4 1 7 6

Dr. Wladimir Rodriguez

Inteligencia Artificial

Diferencia entre Nodos de Bsqueda y Estados


8 3 5 2 4 1 7 6

8 3 5

2 4 1 8 3 5

7 6 2 4 1 7 6

Dr. Wladimir Rodriguez

Inteligencia Artificial

Diferencia entre Nodos de Bsqueda y Estados


8 3 5 2 4 1 7 6

8 3 5

2 4 1 8 3 5

7 6 2 4 1 7 6
3 5 8 4 1 2 7 6 8 4 3 5 1 2 7 6 8 3 5 2 4 1 7 6

Dr. Wladimir Rodriguez

Inteligencia Artificial

Diferencia entre Nodos de Bsqueda y Estados


El rbol de bsqueda puede ser infinito, aun si el espacio de estado es finito
8 3 5 2 4 1 7 6

8 3 5

2 4 1 8 3 5

7 6 2 4 1 7 6
3 5 8 4 1 2 7 6 8 4 3 5 1 2 7 6 8 3 5 2 4 1 7 6

Dr. Wladimir Rodriguez

Inteligencia Artificial

Algoritmo de Bsqueda

Idea Bsica:

Fuera del mundo real, simular una exploracin del espacio de estados...
sucesores de los ...generandollama EXPANDIRestados ya explorados (a eso se le estados)
funcin Bsqueda Generalizada(problema, estrategia) retorna solucin oofracaso funcin Bsqueda Generalizada(problema, estrategia) retorna solucin fracaso inicializar el rbol de bsqueda usando el estado inicial del problema inicializar el rbol de bsqueda usando el estado inicial del problema si no hay candidatos en la cola_de_candidatos aaexpandir entonces si no hay candidatos en la cola_de_candidatos expandir entonces retornar fracaso Fin retornar fracaso Fin elegir un nodo hoja para expandir siguiendo una dada estrategia elegir un nodo hoja para expandir siguiendo una dada estrategia si el nodo contiene un estado meta entonces si el nodo contiene un estado meta entonces retornar la solucin correspondiente Fin retornar la solucin correspondiente Fin en el otro caso en el otro caso expandir el nodo yy expandir el nodo aadir los nodos resultantes aala cola_de_candidatos aadir los nodos resultantes la cola_de_candidatos retornar retornar

Dr. Wladimir Rodriguez

10

Inteligencia Artificial

Algoritmo de Bsqueda

Un estado es una representacin de una


configuracin fsica

Un nodo es una estructura de datos parte de un


rbol de bsqueda en incluye:

Los estados CARECEN de esas cosas La funcn Expandir crea nuevos nodos, llenado
varios campos y usando la funcin sucesor del problema para crear esos estados
11 Dr. Wladimir Rodriguez Inteligencia Artificial

padres, hijos, profundidad y costo del paso

Algoritmo de Bsqueda
funcin Bsqueda Generalizada(problema, Funcin Cola_ de_ Candidatos) retorna una solucin, funcin Bsqueda Generalizada(problema, Funcin Cola_ de_ Candidatos) retorna una solucin, oofracaso fracaso nodos Hacer-Cola(Hacer-Nodo(Inicial-Estado[problema])) nodos Hacer-Cola(Hacer-Nodo(Inicial-Estado[problema])) Hacer bucle Hacer bucle si nodos ==vacos entonces si nodos vacos entonces retornar fracaso Fin retornar fracaso Fin nodos Remover-de-Frontera(nodos) nodos Remover-de-Frontera(nodos) si Prueba-de-Meta[problema] tiene buen xito aplicado aaEstado[nodo] entonces si Prueba-de-Meta[problema] tiene buen xito aplicado Estado[nodo] entonces retornar nodo Fin retornar nodo Fin en el otro caso en el otro caso nodos Funcin-Cola-de-Candidatos(nodos, Expandir(nodoe, Operadores[problema])) nodos Funcin-Cola-de-Candidatos(nodos, Expandir(nodoe, Operadores[problema])) Retornar Retornar

Dr. Wladimir Rodriguez

12

Inteligencia Artificial

Criterios de Evaluacin
1. Est garantizado encontrar una solucin? 2. Existen condiciones bajo las cuales la bsqueda no terminara? 3. Es la solucin encontrada siempre ptima? 4. Qu tan eficiente es la bsqueda en trminos de tiempo y uso de memoria? 5. Qu caractersticas debe tener el espacio de estados para que se pueda aplicar la tcnica?
Dr. Wladimir Rodriguez 13 Inteligencia Artificial

Bsqueda a lo Ancho

Expandir todos los nodos del siguiente nivel

antes de proceder con niveles mas profundos.

Garantiza el encontrar una solucin si esta existe A medida que se incrementa el nmero de nodos
sucesores, se requiere de ms tiempo y memoria

Dr. Wladimir Rodriguez

14

Inteligencia Artificial

nodos hijos antes de Cheque todos los un nivel msde un nivel bsqueda por expandir el rbol profundo, nivel. Algoritmo: Poner el nodo inicial en la lista. Si el nodo inicial es la meta, fin. Si la lista esta vaca, no hay solucin. De lo contrario: seleccionar primer nodo de la lista. Si el nodo seleccionado es la meta, fin. De lo contrario: expandir el nodo seleccionado y vvvagregar todos sus sucesores al final de la lista. Repetir

Algoritmo de Bsqueda a lo Ancho

Dr. Wladimir Rodriguez

15

Inteligencia Artificial

Bsqueda a lo Ancho
Estado Inicial A

D Estado Meta

Dr. Wladimir Rodriguez

16

Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 1 Nodos Expandidos: 0


Dr. Wladimir Rodriguez

Cola: A
17 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 5 Nodos Expandidos: 1


Dr. Wladimir Rodriguez

Cola: B, C, D, E, F
18 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 6 Nodos Expandidos: 2


Dr. Wladimir Rodriguez

Cola: C, D, E, F, G, H
19 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 7 Nodos Expandidos: 3


Dr. Wladimir Rodriguez

Cola: D, E, F, G, H, I, J
20 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 8 Nodos Expandidos: 4


Dr. Wladimir Rodriguez

Cola: E, F, G, H, I, J, K, L
21 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 9 Nodos Expandidos: 5


Dr. Wladimir Rodriguez

Cola: F, G, H, I, J, K, L, M, N
22 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 6


Dr. Wladimir Rodriguez

Cola: G, H, I, J, K, L, M, N, O, P
23 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 7


Dr. Wladimir Rodriguez

Cola: H, I, J, K, L, M, N, O, P, Q
24 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 8


Dr. Wladimir Rodriguez

Cola: I, J, K, L, M, N, O, P, Q, R
25 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 9


Dr. Wladimir Rodriguez

Cola: J, K, L, M, N, O, P, Q, R, S
26 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 10


Dr. Wladimir Rodriguez

Cola: K, L, M, N, O, P, Q, R, S, T
27 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 10 Nodos Expandidos: 11


Dr. Wladimir Rodriguez

Cola: L, M, N, O, P, Q, R, S, T, U
28 Inteligencia Artificial

Bsqueda a lo Ancho
A

Tamao de la Cola: 0 Nodos Expandidos: 11


Dr. Wladimir Rodriguez

Cola: vaca
29 Inteligencia Artificial

Propiedades de la Bsqueda a lo Ancho

Completa?

S, mientras b sea finito 1 + b + b2 + b3 + . . . + bd = O(bd) O(bd) (todos los nodos en memoria) S (con costo unitario por paso), subptima en general
30 Inteligencia Artificial

Complejidad temporal? Complejidad espacial? ptima? FIFO


Dr. Wladimir Rodriguez

Algoritmo de Bsqueda en Profundidad

El mismo que para la bsqueda a lo ancho, excepto que los sucesores son agregados al inicio de la lista. Bsqueda en profundidad utiliza una pila (FIFO), mientras que la bsqueda a lo ancho utiliza una cola (LIFO) Algoritmo: Poner el nodo inicial en la lista. Si el nodo inicial es la meta, fin. Si la lista esta vaca, no hay solucin. De lo contrario: seleccionar primer nodo de la lista. Si el nodo seleccionado es la meta, fin. De lo contrario: expandir el nodo seleccionado y vvvagregar todos sus sucesores al inicio de la lista. Repetir
31 Inteligencia Artificial

Dr. Wladimir Rodriguez

Bsqueda en Profundidad
Estado Inicial A

D Estado Meta

Dr. Wladimir Rodriguez

32

Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 1 Nodos Expandidos: 0


Dr. Wladimir Rodriguez

Cola: A
33 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 5 Nodos Expandidos: 1


Dr. Wladimir Rodriguez

Cola: B, C, D, E, F
34 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 6 Nodos Expandidos: 2


Dr. Wladimir Rodriguez

Cola: G, H, C, D, E, F
35 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 6 Nodos Expandidos: 3


Dr. Wladimir Rodriguez

Cola: Q, H, C, D, E, F
36 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 5 Nodos Expandidos: 4


Dr. Wladimir Rodriguez

Cola: H, C, D, E, F
37 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 5 Nodos Expandidos: 5


Dr. Wladimir Rodriguez

Cola: R, C, D, E, F
38 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 4 Nodos Expandidos: 6


Dr. Wladimir Rodriguez

Cola: C, D, E, F
39 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 5 Nodos Expandidos: 7


Dr. Wladimir Rodriguez

Cola: I, J, D, E, F
40 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 5 Nodos Expandidos: 8


Dr. Wladimir Rodriguez

Cola: S, J, D, E, F
41 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 4 Nodos Expandidos: 9


Dr. Wladimir Rodriguez

Cola: J, D, E, F
42 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 4 Nodos Expandidos: 10


Dr. Wladimir Rodriguez

Cola: T, D, E, F
43 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 3 Nodos Expandidos: 11


Dr. Wladimir Rodriguez

Cola: D, E, F
44 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 4 Nodos Expandidos: 12


Dr. Wladimir Rodriguez

Cola: K, L, E, F
45 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 4 Nodos Expandidos: 13


Dr. Wladimir Rodriguez

Cola: U, L, E, F
46 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 3 Nodos Expandidos: 14


Dr. Wladimir Rodriguez

Cola: L, E, F
47 Inteligencia Artificial

Bsqueda en Profundidad
A

Tamao de la Cola: 0 Nodos Expandidos: 15


Dr. Wladimir Rodriguez

Cola: vaca
48 Inteligencia Artificial

Propiedades de la Bsqueda en Profundidad

Completa?

No; falla en espacio de infinita profundidad o con lazos O(bm): terrible si m es mucho mayor que d O(bm) (i.e., espacio lineal) No

Complejidad temporal? Complejidad espacial? ptima? LIFO


Dr. Wladimir Rodriguez 49

Inteligencia Artificial

Bsqueda en Profundidad Iterativa

Combina aspectos de la bsqueda a lo ancho y


en profundidad.

Conduce bsqueda en profundidad dentro de una


profundidad limitada, donde la profundidad se incremente iterativamente igual que la bsqueda a lo ancho pero con requerimientos menores de memoria. al incrementar el lmite de profundidad.
50

Es ptima y garantiza el encontrar la solucin al Los nodos pueden ser expandidos muchas veces
Dr. Wladimir Rodriguez Inteligencia Artificial

Algoritmo de Bsqueda en Profundidad Iterativa

Fijar limite_profundidad = 0

Conducir bsqueda en profundidad hasta el lmite especificado Si se encuentra la solucin Retornar De lo contrario incrementar lmite en 1 Repetir hasta encontrar la solucin

Dr. Wladimir Rodriguez

51

Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Estado Inicial A

D Estado Meta

Dr. Wladimir Rodriguez

52

Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Nivel Cero
A

Tamao de la Cola: 1 Nodos Expandidos: 0


Dr. Wladimir Rodriguez

Cola: A
53 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Nivel Cero
A

Tamao de la Cola: 0 Nodos Expandidos: 1


Dr. Wladimir Rodriguez

Cola: Vaca
54 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 1 Nodos Expandidos: 1


Dr. Wladimir Rodriguez

Cola: A
55 Inteligencia Artificial

Primer Nivel

Tamao de la Cola: 5 Nodos Expandidos: 2


Dr. Wladimir Rodriguez

Cola: B, C, D, E, F
56 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 4 Nodos Expandidos: 3


Dr. Wladimir Rodriguez

Cola: C, D, E, F
57 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 3 Nodos Expandidos: 4


Dr. Wladimir Rodriguez

Cola: D, E, F
58 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 2 Nodos Expandidos: 5


Dr. Wladimir Rodriguez

Cola: E, F
59 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 1 Nodos Expandidos: 6


Dr. Wladimir Rodriguez

Cola: F
60 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Primer Nivel
A

Tamao de la Cola: 0 Nodos Expandidos: 7


Dr. Wladimir Rodriguez

Cola: Vaca
61 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 1 Nodos Expandidos: 7


Dr. Wladimir Rodriguez

Cola: A
62 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 5 Nodos Expandidos: 8


Dr. Wladimir Rodriguez

Cola: B, C, D, E, F
63 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 6 Nodos Expandidos: 9


Dr. Wladimir Rodriguez

Cola: G, H, C, D, E, F
64 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 5 Nodos Expandidos: 10


Dr. Wladimir Rodriguez

Cola: H, C, D, E, F
65 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 4 Nodos Expandidos: 11


Dr. Wladimir Rodriguez

Cola: C, D, E, F
66 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 5 Nodos Expandidos: 12


Dr. Wladimir Rodriguez

Cola: I, J, D, E, F
67 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 4 Nodos Expandidos: 13


Dr. Wladimir Rodriguez

Cola: J, D, E, F
68 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 3 Nodos Expandidos: 14


Dr. Wladimir Rodriguez

Cola: D, E, F
69 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 4 Nodos Expandidos: 15


Dr. Wladimir Rodriguez

Cola: K, L, E, F
70 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 3 Nodos Expandidos: 16


Dr. Wladimir Rodriguez

Cola: L, E, F
71 Inteligencia Artificial

Bsqueda en Profundidad Iterativa


Segundo Nivel
A

Tamao de la Cola: 0 Nodos Expandidos: 17


Dr. Wladimir Rodriguez

Cola: vaca
72 Inteligencia Artificial

Propiedades de la Bsqueda en Profundidad Iterativa

Completa?
S

Complejidad temporal?
O(bd)

Complejidad espacial? ptima?


Dr. Wladimir Rodriguez

O(bd) (todos los nodos en memoria) Si, mientras el costo de cada paso sea unitario

73

Inteligencia Artificial

Bsqueda de Costo Uniforme

Variacin de a lo ancho para CAMINO MAS


BARATO COSTO

Cada cambio de estado tiene asociado un Garantiza encontrar la solucin de costo menor Siempre se expande el nodo de menor costo
Dr. Wladimir Rodriguez 74 Inteligencia Artificial

siempre y cuando el costo nunca disminuya a lo largo del camino

Algoritmo de Bsqueda de Costo Uniforme


Poner el nodo inicial en la lista. Si meta, fin, de lo contrario costo(inicio) = 0 Si la lista esta vaca, no hay solucin. Seleccionar primer nodo de la lista con costo (nodo) mnimo. Si el nodo seleccionado es la meta, fin. De lo contrario: expandir el nodo seleccionado. Costo de cada sucesor = costo del padre + costo del operador Remplazar cada sucesor en la lista Repetir hasta encontrar meta (fin) o lista vaca (no existe solucin)
75 Inteligencia Artificial

Dr. Wladimir Rodriguez

Bsqueda de Costo Uniforme


A

10

15

Dr. Wladimir Rodriguez

76

Inteligencia Artificial

Bsqueda de Costo Uniforme

Tamao de la Cola: 1 Nodos Expandidos:0


Dr. Wladimir Rodriguez

Cola: I
77 Inteligencia Artificial

Bsqueda de Costo Uniforme


A

15

Tamao de la Cola: 3 Nodos Expandidos:1


Dr. Wladimir Rodriguez

Cola: A1, B5, C15


78 Inteligencia Artificial

Bsqueda de Costo Uniforme


A

10

15

Tamao de la Cola: 3 Nodos Expandidos: 2


Dr. Wladimir Rodriguez

Cola: B5, M11, C15


79 Inteligencia Artificial

Bsqueda de Costo Uniforme


A

10

15

Tamao de la Cola: 3 Nodos Expandidos: 3


Dr. Wladimir Rodriguez

Cola: M10, M11, C15


80 Inteligencia Artificial

Bsqueda de Costo Uniforme


A

10

15

Tamao de la Cola: 0 Nodos Expandidos: 3


Dr. Wladimir Rodriguez

Cola: vaca
81 Inteligencia Artificial

Propiedades de la Bsqueda de Costo Uniforme Completa? b sea finita S, mientras


Complejidad temporal? costo de la solucin Nmero de nodos con g(n)
ptima

Complejidad espacial?g(n) costo de la solucin Nmero de nodos con


ptima

ptima? el costo de ruta no disminuya siguiendo S, mientras


cualquier ruta o sea que g(Successor(n)) g(n), para todo n
Dr. Wladimir Rodriguez 82 Inteligencia Artificial

Bsqueda Bidireccional

Dr. Wladimir Rodriguez

83

Inteligencia Artificial

Estados Repetidos
No Pocos Muchos
1 2 3 4 5 7 8 6

Dr. Wladimir Rodriguez

84

Inteligencia Artificial

Estados Repetidos

Requiere comparar las descripciones de los


estados

Bsqueda a lo Ancho

Registrar todos los estados generados el estado Si nodo de un nodo ya existe, entonces descartar el

Dr. Wladimir Rodriguez

85

Inteligencia Artificial

Estados Repetidos

Bsqueda en Profundidad
Solucin 1

Registrar todos los estados generados, del rbol actual Si el estado de un nodo ya existe, entonces descartar el nodo

Evitar Lazos Solucin 2

Registrar todos los estados generados, del rbol actual Si el estado de un nodo ya existe, entonces descartar el nodo

Complejidad espacial como la bsqueda a lo ancho


Dr. Wladimir Rodriguez 86 Inteligencia Artificial

Resumen

Arbol de Bsqueda Espacio de Estados Estrategias de Bsqueda: A lo Ancho, En


Profundidad y variantes

Evaluacin de las Estrategias: Completitud, Evitar estados repetidos

optimalidad, complejidad espacial y temporal

Dr. Wladimir Rodriguez

87

Inteligencia Artificial