You are on page 1of 3

CRISTIAN CAMILO GOMEZ OSORIO

DIEGO MAURICIO VELEZ MOLINA

REPRESENTACION DE UN PROBLEMA DE BUSQUEDA


Considere el siguiente problema: Hay un campesino que tiene que cruzar al otro
lado de un ro. El campesino lleva un cordero, un lobo y un repollo pero en la
lancha que sirve para cruzar de un extremo al otro del ro solo cabe l y una de
sus pertenencias. Tenga en cuenta que si deja en cualquier extremo del ro al
cordero junto con el repollo, ste se comer el repollo, as mismo, el lobo se puede
comer al cordero (esto ocurre si no est presente el campesino). El problema
consiste en que el campesino pase de un extremo al otro con todas sus
pertenencias. El campesino puede viajar slo en la lancha.
a) Ejercicio evaluativo de clase (valor 3.0):
i) Modele el problema como una representacin del mundo: estado inicial, estado
objetivo y operadores.
ii) Entregue el camino de solucin a su problema
SOLUCION
-

Definimos:
Lado 1= W
Lado 2= Z
A= Campesino
B= Cabra
X= Repollo
Y= Lobo

Estado inicial: (A=W, B=W, X=W, Y=W).


Estado objetivo: (A=Z, B=Z, X=Z, Y=Z).
Si A y B= Z (Z,Z,W,W).
Si A=W (W,Z,W,W).
Si A y Y=Z (Z,Z,W,Z).
Si B y A=W (W,W,W,Z).
Si A y X=Z (Z,,W,Z,Z).
Si A=W (W,W,Z,Z).
Si A y B=Z (Z,Z,Z,Z).

Pasar campesino y cabra de W a Z; Si A=Z AND B=Z


Devolver campesino de Z a W; Si A=W
Pasar campesino y lobo de W a Z; Si A=Z AND Y=Z
Devolver campesino y cabra de Z a W; Si A=W AND B=W
Pasar campesino y repollo de W a Z; Si A=Z AND X=Z
Devolver campesino de Z a W; Si A=W
Pasar campesino y cabra de W a Z; Si A=Z AND B=Z

BSQUEDA INFORMADA 3. A* Este algoritmo encuentra la ruta de menor costo


desde el nodo inicial o raz hacia el nodo objetivo. Para esto utiliza una funcin de
evaluacin la cual consiste de la suma de una funcin heurstica de distancia y
una funcin de costo, lo cual utiliza para determinar el orden en que recorrer los
nodos en el rbol. La funcin heurstica de distancia y la funcin de costo son: La
funcin de costo, es el costo de la ruta para desplazarse de un nodo a otro
(generalmente denotado por g(x)). La funcin heurstica de distancia, es un valor
de admisibilidad, el cual es un estimado de la distancia hacia el nodo objetivo
(generalmente denotado por h(x)). Una vez establecidos el valor de estas
funciones, el algoritmo A* utiliza dos estructuras de datos auxiliares, que se
denominan abiertos y cerrados, implementado una cola de prioridad (ordenada por
el valor de evaluacin) en la abierta, y en la cerrada se almacenara informacin de
los nodos que ya han sido visitados. En cada paso del algoritmo, se expande el
nodo que est primero en abiertos, y en caso de que no sea el nodo objetivo,
calcula la funcin de evaluacin de todos sus hijos, los inserta en abiertos, y pasa
el nodo evaluado a cerrados. Nota: El algoritmo es una combinacin entre las
bsquedas de primero en anchura y primero en profundidad: mientras que la
funcin heurstica de distancia tiende a la bsqueda primero en profundidad, la
funcin de costo tiende a la bsqueda primero en anchura. Debido a esto, se
cambia de algoritmo de bsqueda cada vez que existen nodos ms prometedores.
a. Ejercicio de clase (valor 2.0):
i. Utilizar el software suministrado en clase (JSearchDemo.jar) para observar el
algoritmo A* en funcionamiento, para esto grafique el rbol que se muestra en la
figura 2, teniendo en cuenta que el nodo raz es el de color azul (A) y el nodo
objetivo es el de color verde (L). Los valores al interior de los nodos corresponde a
la funcin heurstica y los adyacentes a las aristas al costo.
ii. Conteste las siguientes preguntas a partir de lo observado:
1. Cules nodos corresponden a la solucin del algoritmo, segn Jsearch?
2. Cules nodos corresponden a la solucin del algoritmo (segn la teora)?
3. Cul es la longitud final de la solucin?

SOLUCION
1. A,B,D,I,E,J,N,O,P,E,I,D,J,N,O,P,C,F,K,L
2. La longitud es 274

You might also like