Vous êtes sur la page 1sur 20

Tcnicas de Bsqueda

MSc. Edgar Taya Acosta

Tcnicas de Bsqueda
Tcnicas de Bsqueda Bsqueda en espacio de estados Estrategias de bsqueda simple (Profundidad y Amplitud)

Bsqueda en espacio de estados


En la gran mayora de problemas, si abstraemos sus elementos podemos identificar: Un punto de partida. Un objetivo a alcanzar. Elementos que son relevantes en el problema definidos por el tipo de dominio. Acciones a nuestra disposicin para resolver el problema. Restricciones sobre el objetivo. Ej.:

Bsqueda en espacio de estados


Acciones, Restricciones y elementos relevantes

Elemento obj. Puede ser Obj1, Obj2, mesa Sitio Puede ser Sitio1, Sitio2

Bsqueda en espacio de estados


En cada instante de la resolucin de un problema esos elementos tendrn unas caractersticas y relaciones especficas. Denominaremos Estado a la representacin de elementos que describen el problema en un momento. los

Distinguiremos dos estado especiales el Estado Inicial (punto de partida) y el Estado Final (objetivo del problema). Ej. Estado (no Inicial, no Final): Sobre (Obj1,Obj2) Sobre (Obj2,mesa) En (mesa, sitio1) En (Robot, sitio1) ManoVacia Grande (mesa) Despejado (Obj1)

Bsqueda en espacio de estados


Los estados y su relacin de accesibilidad conforman lo que se denomina espacio de estados. Representa todos los caminos que hay entre todos los estados posibles de un problema. Podra asimilarse con un mapa de carreteras de un problema. La solucin de nuestro problema esta dentro de ese mapa Si en el ejemplo anterior realizramos todas las posibles combinaciones de estados podramos llegar desde cualquier estado inicial a cualquier estado final.

Bsqueda en espacio de estados


Ej.: problema de los tres bloques Restriccin: para realizar cualquier movimiento los dos elementos implicados deben estar despejados

((A)(B)(C))

A B C B

A C

B A C A

B C

C A B A

C B

((AB)(C))

((B)(AC))

((BA)(C))

((A)(BC))

((CA)(B))

((A)(CB))

Bsqueda en espacio de estados (Grafo de estados explicito)


B A C C A B B C A A B C C A B C

((BAC))

((BCA))

A C B

((B)(AC))

((CA)(B))
A
B

((ACB))

((CAB))
A B C
A B ((A)(B)(C)) C

((A)(CB))

((AB)(C))
B

((BA)(C))
C B A

((A)(BC))
A B C

((CBA))

((ABC))

Bsqueda en espacio de estados (Busqueda en estados explcitos)


0 1 0 1

0 1 3 2 2 3 3

0 1 3

4 2 2

Bsqueda en espacio de estados (Bsqueda en estados implcitos)


Muchos de los problemas de inters practico tienen unos espacios de bsqueda tan grandes que no pueden ser representados mediante un grafo explicito. Es por esta razn que se crearon nuevos algoritmos de bsqueda que permitieran generar de forma implcita el grafo de estados y posteriormente aplicar mtodos eficientes de bsqueda sobre dichos grafos de gran tamao. Dichos algoritmos se clasifican en 2 grupos: Algoritmos de bsqueda ciega Algoritmos de bsqueda heurstica

Algoritmos de bsqueda ciega


No tienen en cuenta el coste de la solucin en la bsqueda. Su funcionamiento es sistemtico, siguen un orden de visitas y generacin de nodos establecido por la estructura del espacio de bsqueda.

Este tipo de algoritmos funcionan aplicando todos los operadores disponibles a los nodos.
Existe dos algoritmos muy conocidos en este grupo: Primero en amplitud. Primero en Profundidad.

Algoritmos de bsqueda ciega Primero en amplitud


En este algoritmo se va construyendo un grafo de estados explcitos mediante la aplicacin de los operadores disponibles al nodo inicial, luego aplica los operadores disponibles a los nodos sucesores directos del nodo inicial, y as sucesivamente.

Algoritmos de bsqueda ciega Primero en amplitud

Los nodos se visitan y generan por niveles. Un nodo es visitado cuando todos los nodos de los niveles superiores y sus hermanos precedentes han sido visitados.
Caractersticas: Completitud: El algoritmo siempre encuentra una solucin. Complejidad temporal y espacial : Exponencial respecto al factor de ramificacin y la profundidad de la solucin. Optimalidad: La solucin que se encuentra es ptima en nmero de niveles desde la raz.

Algoritmos de bsqueda ciega Primero en amplitud


1

Nodo Inicio 2

a
3
4 5

d
6

b
7 8

d
9 10

a
11

e
12

c
13

e
14 15

e
16 17

b
18 19

b
20

f
21

f g

b c

f g

e f g

Nodo Objetivo

Algoritmos de bsqueda ciega Primero en Profundidad


En este algoritmo se genera solo un sucesor del nodo en cada paso; es decir, cada vez que obtenemos un nuevo sucesor, se le aplica a este un operador y se obtiene un nuevo sucesor, y asi sucesivamente.

Algoritmos de bsqueda ciega Primero en Profundidad

Los nodos se visitan y generan buscando los nodos a mayor profundidad y retrocediendo cuando no se encuentran nodos sucesores. Para garantizar que el algoritmo acaba debe imponerse un lmite en la profundidad de exploracin. Caractersticas Completitud: El algoritmo encuentra una solucin si se impone un lmite de profundidad y existe una solucin dentro de ese lmite. Complejidad temporal y espacial : Exponencial respecto al factor de ramificacin y la profundidad del lmite de exploracin. Optimalidad: No se garantiza que la solucin sea ptima

Algoritmos de bsqueda ciega Primero en Profundidad


1

Nodo Inicio

a
2

d
d a b f g d
Nodo Objetivo

b
3 4

e b e f g a c f g

c
5

e
6

e f
7

b c

Algoritmos de bsqueda ciega Ejercicio


Aplicando el mtodo de bsqueda ciega Primero en amplitud realice el siguiente ejercicio.
Se tienen dos jarrones, uno de 4 y otro de 3 litros. Ninguno tiene marcas de medidas sobre l. cmo podemos obtener exactamente 2 litros en el jarrn de 3? Tambin se tiene una toma de agua que puede usarse para llenar los jarrones (solo se pueden utilizar para llenar los jarrones hasta el tope). Podemos vaciar agua de un tanque a otro (Hasta que quede lleno o vaci un tanque)

Algoritmos de bsqueda ciega Ejercicio

Bibliografa

Nils J. Nilsson. INTELIGENCIA ARTIFICIAL: Una Nueva Sntesis, Ed McGraw-Hill 2001.

Vous aimerez peut-être aussi