7. Búsqueda informada 2 -...

Info iconThis preview shows pages 1–5. Sign up to view the full content.

View Full Document Right Arrow Icon
Enriqueciendo los Estados del Espacio de B´usqueda I Es muy com´un encontrarse con problemas de b´usqueda en los cuales no solamente interesa encontrar una soluci´on, sino que adem´ as interesa el camino seguido para encontrar la soluci´ on. Un ejemplo es el de los misioneros y can´ ıbales visto anteriormente. La forma m´ as inmediata para extender los algoritmos de b´usqueda estudiados anteriormente, es agregando al estado de b´usqueda la informaci´ on de c´ omo se lleg´o a ´ el. Es posible incorporar la historia dentro de los estados. Es as´ ı como es posible programar el predicado buscarH g que almacena la historia dentro de los estados y adem´ as elimina almacena estados cerrados . La implementaci´ on puede hacerse de la siguiente manera: Jorge Baier (DCC-PUC) Intro a Prolog 1 / 25
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Enriqueciendo los Estados del Espacio de B´usqueda II buscarH_g([[Resultado,Hist]|_], _, [Resultado,Hist], Objetivo, _, _):- X=. .[Objetivo, Resultado], call(X), write(’Plan: ’),write(Hist),nl, write(’Largo Plan: ’), length(Hist,Largo), write(Largo),nl. buscarH_g([[Estado,Hist]|Otros_abiertos], Cerrados, Resultado, Objetivo, Mezclar_g, Sucesores):- X=. . [Sucesores, [Estado,Hist], Nuevos_sucesores], call(X), Nuevos_Cerrados = [Estado | Cerrados], Y=. . [Mezclar_g, Otros_abiertos, Nuevos_Cerrados, Nuevos_sucesores, Nuevos_Abiertos], call(Y), buscarH_g(Nuevos_Abiertos, Nuevos_Cerrados, Resultado, Objetivo, Mezclar_g, Sucesores). mezclaH_g_bfs(Abiertos, Cerrados, Nuevos_estados, Nuevos_abiertos):- menos2(Nuevos_estados, Cerrados, N2), append(Abiertos,N2,Nuevos_abiertos). mezclaH_g_dfs(Abiertos, Cerrados, Nuevos_estados, Nuevos_abiertos):- menos2(Nuevos_estados, Cerrados, N2), append(N2,Abiertos,Nuevos_abiertos). Jorge Baier (DCC-PUC) Intro a Prolog 2 / 25
Background image of page 2
Enriqueciendo los Estados del Espacio de B´usqueda III Los resultados que se obtienen usando este algoritmo son los siguientes. Para los misioneros y can´ ıbales: ?- time(buscarH_g([[estado(3,3,0,0,izq),[]]],[],_, final,mezclaH_g_bfs,sucesoresH)). Plan: [cruzar(1, 1), cruzar(0, 1), cruzar(2, 0), cruzar(1, 0), cruzar(0, 2), cruzar(1, 1), cruzar(0, 2), cruzar(1, 0), cruzar(2, 0), cruzar(0, 1), cruzar(1, 1)] Largo Plan: 11 % 3,071 inferences in 0.01 seconds (307100 Lips) Jorge Baier (DCC-PUC) Intro a Prolog 3 / 25
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Profundidad Limitada: Funciona como DFS, pero recibe como par´ ametro un l´ ımite de profundidad para la b´usqueda. Se ejecuta DFS sobre el sub´ arbol de profundidad del espacio de b´usqueda. Profundizaci´ on Iterativa: Este m´ etodo realiza una iteraci´ on con el m´ etodo de Profundidad Limitada : 1 =1; 2 realice b´usqueda en profundidad limitada con l´ ımite . 3
Background image of page 4
Image of page 5
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 25

7. Búsqueda informada 2 -...

This preview shows document pages 1 - 5. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online