Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 03
Tema 03
Bsqueda no informada
Bsqueda no informada
ndice
Bsqueda no informada
Bsqueda no informada
Problema
Expresion
como espacio
de estados
Solucion
INTERPRETACION
Aplicacion de al
goritmos de bus
queda de solucion
Implementacion
en un lenguaje
de programacion
Bsqueda no informada
principio, el inicial)
Si el estado actual es final, acabar (recopilando la sucesin
de operadores)
En caso contrario, obtener los sucesores del estado actual
(expandir)
Elegir un nuevo estado actual, dejando los restantes para
Bsqueda no informada
rboles de bsqueda
(4 0)
(4 3)
(0 3)
(1 3)
(3 0)
(1 0)
(3 3)
Bsqueda no informada
rboles de bsqueda
Nodo de un rbol de bsqueda, componentes:
Estado
Secuencia de operadores que conducen al estado desde el
inicial (camino)
Nodo raz del rbol de bsqueda: estado inicial +
secuencia vaca
Nodos hoja del rbol de bsqueda:
Nodos cuya expansin no ha producido sucesores nuevos
Nodos pendientes de considerar (y expandir en su caso)
bsqueda:
Arbol vs. grafo
Nodos del rbol de bsqueda: estado + camino
El rbol de bsqueda se construye incrementalmente y
Bsqueda no informada
La funcin APLICA(OPERADOR,ESTADO):
Devuelve NO-APLICABLE si OPERADOR no es aplicable a
ESTADO
En caso contrario, devuelve el estado resultante de aplicar
OPERADOR a ESTADO
Bsqueda no informada
Sucesores de un nodo:
FUNCION SUCESOR(NODO,OPERADOR)
1. Hacer ESTADO-SUCESOR igual a APLICA(OPERADOR,ESTADO(NODO))
2. Si ESTADO-SUCESOR=NO-APLICABLE
devolver NO-APLICABLE
en caso contrario,
devolver un nodo cuyo estado es ESTADO-SUCESOR y cuyo camino
es el resultado de aadir OPERADOR a CAMINO(NODO)
FUNCION SUCESORES(NODO)
1. Hacer SUCESORES vaco
2. Para cada OPERADOR en *OPERADORES*,
si SUCESOR(NODO,OPERADOR) =/= NO-APLICABLE,
incluir SUCESOR(NODO,OPERADOR) en SUCESORES
3. Devolver SUCESORES
Bsqueda no informada
FUNCION BUSQUEDA-GENERAL()
1. Hacer ABIERTOS la "cola" formada por el nodo inicial (es decir,
el nodo cuyo estado es *ESTADO-INICIAL* y cuyo camino es vaco);
Hacer CERRADOS vaco
2. Mientras que ABIERTOS no est vaca,
2.1 Hacer ACTUAL el primer nodo de ABIERTOS
2.2 Hacer ABIERTOS el resto de ABIERTOS
2.3 Poner el nodo ACTUAL en CERRADOS.
2.4 Si ES-ESTADO-FINAL(ESTADO(ACTUAL)),
2.4.1 devolver el nodo ACTUAL y terminar.
2.4.2 en caso contrario,
2.4.2.1 Hacer NUEVOS-SUCESORES la lista de nodos
de SUCESORES(ACTUAL) cuyo estado no est
ni en ABIERTOS ni en CERRADOS
2.4.2.2 Hacer ABIERTOS igual a
GESTIONA-COLA(ABIERTOS,NUEVOS SUCESORES)
3. Devolver FALLO.
Bsqueda no informada
bsqueda
En determinados problemas es prescindible
GESTIONA-COLA(ABIERTOS,NUEVOS SUCESORES):
Aade NUEVOS-SUCESORES a ABIERTOS, reordenando
Bsqueda no informada
solucin?
Complejidad en espacio: cunta memoria necesitamos?
Bsqueda no informada
Bsqueda no informada
Bsqueda no informada
Bsqueda en anchura
Arbol de bsqueda en anchura en el problema de las
jarras:
(0 0) 1
(4 0) 2
(4 3) 4
(0 3) 3
(1 3) 5
(3 0) 6
(1 0) 7
(3 3) 8
(0 1) 9
(4 2) 10
(4 1) 11
(0 2) 12
(2 3) 13
(2 0)
Bsqueda no informada
Bsqueda en anchura
Bsqueda en anchura para el problema de las jarras:
Nodo
Actual
Sucesores
1
2
3
4
5
6
7
8
9
10
11
12
13
(0 0)
(4 0)
(0 3)
(4 3)
(1 3)
(3 0)
(1 0)
(3 3)
(0 1)
(4 2)
(4 1)
(0 2)
(2 3)
((4 0) (0 3))
((4 3) (1 3))
((3 0))
()
((1 0))
((3 3))
((0 1))
((4 2))
((4 1))
((0 2))
((2 3))
((2 0))
Abiertos
((0 0))
((4 0) (0 3))
((0 3) (4 3) (1 3))
((4 3) (1 3) (3 0))
((1 3) (3 0))
((3 0) (1 0))
((1 0) (3 3))
((3 3) (0 1))
((0 1) (4 2))
((4 2) (4 1))
((4 1) (0 2))
((0 2) (2 3))
((2 3) (2 0))
Bsqueda no informada
operadores.
Bsqueda no informada
inasumible en la prctica
Suponiendo ramificacin 10, 106 nodos por seg. y 1000
Nodos
110
11110
106
108
1010
1012
1014
1016
Tiempo
0.11 ms.
11 ms.
1.1 s.
2 min.
3 horas
13 das
3.5 aos
350 aos
Espacio
107 Kb
10.6 Mb
1 Gb
103 Gb
10 Tb
1 Pb
99 Pb
10 Eb
Bsqueda no informada
pila (LIFO):
FUNCION BUSQUEDA-EN-PROFUNDIDAD()
1. Hacer ABIERTOS la pila formada por el nodo inicial (el nodo
cuyo estado es *ESTADO-INICIAL* y cuyo camino es vaco)
Hacer CERRADOS vaco
2. Mientras que ABIERTOS no est vaca,
2.1 Hacer ACTUAL el primer nodo de ABIERTOS
2.2 Hacer ABIERTOS el resto de ABIERTOS
2.3 Poner el nodo ACTUAL en CERRADOS.
2.4 Si ES-ESTADO-FINAL(ESTADO(ACTUAL)),
2.4.1 devolver el nodo ACTUAL y terminar.
2.4.2 en caso contrario,
2.4.2.1 Hacer NUEVOS-SUCESORES la lista de nodos
de SUCESORES(ACTUAL) cuyo estado no est
ni en ABIERTOS ni en CERRADOS
2.4.2.2 Hacer ABIERTOS el resultado de incluir
NUEVOS-SUCESORES al principio de ABIERTOS
3. Devolver FALLO.
Bsqueda no informada
Bsqueda en profundidad
Arbol de bsqueda en profundidad para el problema de las
jarras:
(0 0) 1
(4 0) 2
(4 3) 3
(0 3)
(1 3) 4
(1 0) 5
(0 1) 6
(4 1) 7
(2 3) 8
Bsqueda no informada
Bsqueda en profundidad
Tabla de bsqueda en profundidad para el problema de las
jarras:
Nodo
1
2
3
4
5
6
7
8
Actual
Sucesores
(0 0)
(4 0)
(4 3)
(1 3)
(1 0)
(0 1)
(4 1)
(2 3)
((4 0) (0 3))
((4 3) (1 3))
()
((1 0))
((0 1))
((4 1))
((2 3))
Abiertos
((0 0))
((4 0) (0 3))
((4 3) (1 3) (0 3))
((1 3) (0 3))
((1 0) (0 3))
((0 1) (0 3))
((4 1) (0 3))
((2 3) (0 3))
Bsqueda no informada
mnima.
Complejidad en tiempo O(r m ), donde:
r : factor de ramificacin.
m: mxima profundidad de la bsqueda.
Complejidad en espacio:
en la implementacin dada anteriormente (que usa la lista
de CERRADOS), O(r m )
Bsqueda no informada
Bsqueda no informada
bsqueda en profundidad
Idea: no explorar caminos ms all de una determinada
longitud.
Problema: tampoco es completa, si la cota es menor de la
Bsqueda no informada
Bsqueda no informada
Bsqueda no informada
Bsqueda no informada
las jarras):
(0 0) 1,2,5,11,19,29,41
(4 0) 3,6,12,20,30,42
(0 3) 4,9,16,25,36
(3 3) 18,27,38
(0 1) 24,34,46
(4 2)
(4 1) 35,47
(0 2) 40
(2 3) 48
(2 0)
28,39
Bsqueda no informada
Bsqueda no informada
rbol
Bsqueda no informada
Comparacin de procedimientos
Tiempo
Espacio
Completa
Mnima
Anchura
Profundidad
O(r p )
O(r p )
S
S
O(r m )
O(rm)
No
No
Profundidad
acotada
O(r c )
O(rc)
S, si c >= p
No
r : factor de ramificacin.
p: profundidad de la solucin.
m: mxima profundidad de la bsqueda.
c: cota de la profundidad.
Profundidad
iterativa
O(r p )
O(rp)
S
S
Bsqueda no informada
Bibliografa
Russell, S. y Norvig, P. Inteligencia artificial: Un enfoque
(McGrawHill, 2001)]
Cap. 8: Bsqueda a ciegas
Poole, D.; Mackworth, A. y Goebel, R. Computational