Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2005-I
Algoritmos de bsqueda
Bsqueda ciega no informada
Primera en amplitud
Primera uniforme
Primera en profundidad
Profundizacin iterativa primera en profundidad
Bidireccional
Conceptos importantes:
Completitud
Complejidad de tiempo
Complejidad de espacio
Calidad de Solucin
Bsqueda No Informada 2
Bsqueda No Informada 3
Bsqueda No Informada 4
Bsqueda No Informada 5
Bsqueda No Informada 6
La estrategia es lo
que diferencia los
diferentes
algoritmos de
bsqueda
Bsqueda No Informada 7
Bsqueda No Informada 8
Bsqueda No Informada 9
Estrategias de bsqueda
Una estratega de bsqueda se define por el orden en el que se
escoge el nodo a Expandirir
Las estrategias se evalan considerando las siguientes
dimensiones:
Bsqueda No Informada 10
Alternativa: los nodos que esperan en una cola para ser explorados,
tambin son llamados ABIERTOS
Implementacin:
Para BFS, la alternativa es una cola FIFO
Los nuevos sucesores se van al final de la cola
Estados repetidos?
Estrategia Simple: no aadir los padres de un nodo como una hoja
Bsqueda No Informada 11
Bsqueda No Informada 12
C
G
S
D
Cola = {S}
Seleccionar S
Meta(S) = verdadero?
Si no, Expandir(S)
Bsqueda No Informada 13
C
G
S
A
Cola = {A, D}
Seleccionar A
Meta(A) = verdadero?
Si no, Expandir(A)
Bsqueda No Informada 14
D
D
C
G
S
A
Cola = {D, B, D}
Seleccionar D
Meta(D) =
verdadero?
Si no, Expandir(D)
Bsqueda No Informada 15
G
D
A
D
Cola = {B, D, A, E}
Seleccionar B
etc.
Bsqueda No Informada 16
D
E
G
D
E
B
Nivel 3
Cola = {C, E, S, E, S, B, B, F}
Bsqueda No Informada 17
G
D
Nivel 4
Expandir Cola hasta que G este en frente
Seleccionar G
Meta(G) = verdadero
Profesor Juan Gamarra Moreno
Bsqueda No Informada 18
Bsqueda BFS
Bsqueda No Informada 19
Implementacin:
Para DFS, la alternativa es una cola FIFO
Los nuevos sucesores se van al inicio de la cola
Nodos Repetidos?
Estrategia simple: No aadir un estado como hoja si este estado
esta en el camino de la raz al nodo actual
Bsqueda No Informada 20
C
G
S
A
Cola = {A,D}
Bsqueda No Informada 21
C
G
S
A
Cola = {B,D,D}
Bsqueda No Informada 22
B
C
C
G
S
A
Cola = {C,E,D,D}
Bsqueda No Informada 23
C
G
S
A
Cola = {D,F,D,D}
Bsqueda No Informada 24
C
G
S
A
Cola = {G,D,D}
F
G
Bsqueda No Informada 25
Optimalidad
siempre encuentra una solucin de menor costo (o de mnima
profundidad)?
Complejidad de tiempo
Nmero de nodos generados (peor de los casos)
Complejidad de espacio
Nmero de nodos en memoria (peor de los casos)
Bsqueda No Informada 26
Propiedades BFS
Completo? Si
ptimo? Only if path-cost = non-decreasing function of depth
Complejidad de tiempo O(bd)
Complejidad de espacio O(bd)
Bsqueda No Informada 27
Complejidad de BFS
Complejidad de Tiempo
Asuma (en el peor de los casos) que
exista una hoja meta al lado de la
mano derecha a la profundidad d
as BFS generar
= b + b2+ ..... + bd + bd+1 - b
= O (bd+1)
Complejidad de Espacio
cuntos nodos pueden estar en la
Cola (en el peor de los casos)?
A la profundidad d existen bd+1 nodos
no expandidos en la cola Q = O (bd+1)
d=0
d=1
d=2
G
d=0
d=1
G
d=2
Bsqueda No Informada 28
Profundidad de
Solucin
Nodos
Generados
Tiempo
Memoria
1100
0.11 segundos
1 MB
111,100
11 segundos
106 MB
109
31 horas
1 TB
12
1013
35 aos
10 PB
Bsqueda No Informada 29
Qu es la complejidad de DFS?
Complejidad de Tiempo
Profundidad de rbol mxima= m
asuma (en el peor de los casos)
que exista una hoja meta en la
hoja del lado de la mano derecha
a la profundidad d
as DFS generar O (bm)
Complejidad de Espacio
Cuantos nodos pueden estar en
la cola (en el peor de los casos)?
A la profundidad m tenemos b
nodos
y b-1 nodos en las profundidades
ms tempranas
total = b + (m-1)*(b-1) = O(bm)
d=0
d=1
d=2
G
d=0
d=1
d=2
d=3
d=4
Bsqueda No Informada 30
Prof. de
Solucin
Nodos
Generados
Tiempo
Memoria
1012
3 years
120kb
1012
3 years
120kb
1012
3 years
120kb
12
1012
3 years
120kb
Bsqueda No Informada 31
Propiedades DFS
Completo?
No completo si el rbol no tiene profundidad limitada
ptimo?
No
Complejidad de tiempo?
Exponencial
Complejidad de espacio?
Lineal
Bsqueda No Informada 32
En general
BFS es mejor si la meta no est profunda, si los caminos son
infinitos, si existen muchos lazos, si el espacio de bsqueda es
pequeo.
DFS es mejor si existen muchas metas, no muchos lazos,
DFS es mucho mejor en trminos de memoria
Bsqueda No Informada 33
Bsqueda No Informada 34
Bsqueda No Informada 35
Bsqueda No Informada 36
Bsqueda No Informada 37
Bsqueda No Informada 38
Bsqueda No Informada 39
Bsqueda No Informada 40
Bsqueda No Informada 41
Bsqueda No Informada 42
Bsqueda No Informada 43
Complejidad de Tiempo
b + (b+b2) + .......(b+....bd) = O(bd)
(por ej. Asintticamente lo mismo como BFS o DFS para limitar la
profundidad d en el peor de los casos)
Completo?
Si
Optimal
Solo si el costo de camino es una funcin que decrece en la profundidad
Bsqueda No Informada 44
IDS en la Prctica
No es IDS derrochador?
Repetidas bsquedas en diferentes iteraciones
= 111,110
Bsqueda No Informada 45
Bsqueda Bidireccional
Idea
Simultneamente se busca hacia adelante desde S y hacia atrs
desde G
Parar cuando ambos se encuentren en el medio
Necesidad de mantener rastro de la interseccin de 2 conjuntos
abiertos de nodos
Complejidad
Complejidad de tiempo en el mejor de los casos: O(2 b(d/2)) = O(b
(d/2))
complejidad de memoria es la misma
Profesor Juan Gamarra Moreno
Bsqueda No Informada 46
Bsqueda Bidireccional
Bsqueda No Informada 47
Bsqueda No Informada 48
Bsqueda No Informada 49
Bsqueda No Informada 50
O( b [1 + floor(C*/e)] )
Por qu?
floor(C*/e) ~ profundidad de la solucin si todos los costos
son aproximadamente iguales
Bsqueda No Informada 51
Bsqueda No Informada 52
Bsqueda No Informada 53
B
S
Espacio de estados
Ejemplo de un rbol de bsqueda
Solucin posible
no agregar nodos que estn en el camino de la raz
Evita los caminos que contengan ciclos (lazos)
fcil de revisar en DFS
Bsqueda No Informada 54
Estados repetidos
Si se falla en detectar estados repetidos se puede convertir un
problema lineal en uno exponencial!
Bsqueda No Informada 55
Bsqueda No Informada 56
Bsqueda No Informada 57
Resumen
Revisin de bsqueda
Un espacio de bsqueda consiste de estados y operadores: esto es
un grafo
Un rbol de bsqueda representa una exploracin particular de un
espacio de bsqueda
Primera en amplitud
Primera en profundidad
Profundizacin iterativa
Bsqueda bidireccional
Bsqueda de costo uniforme
Bsqueda No Informada 58