El problema consiste en:
1) Tenemos dos
jarras.
2) Jarra 1 de 4 litros de capacidad.
3) Jarra 2 de 3 litros de capacidad.
4) Ninguna de ellas tiene
marcas que permitan identificar cuánta agua hay.
5) Existe un grifo que
permite llenar las jarras de agua.
6) Es posible vaciar el contenido de las jarras.
7) Además es posible verter el contenido de una en otra.
El objetivo del problema consiste en encontrar
una secuencia de movimientos que consiga dejar exactamente 2 litros de agua en
la jarra de 4 litros de capacidad, sin importar cuantos litros quedan en la jarra de 3 litros.
Nuestro informe para el desarrollo del trabajo consiste en abarcar los siguientes puntos:
1. Introducción
Presentación del contexto del problema de las 2 Jarras y cual es el objetivo final.
2. Búsqueda en Anchura y Profundidad
Marco teórico sobre la búsqueda en Anchura y Profundidad utilizando las estructuras de Colas y Pilas respectivamente.
3. Representación del problema en el espacio de estados.
Se describirán los Estados, Operaciones, Propiedades y Restricciones, los cuales tienen por objetivo poner un contexto claro para modelar nuestro código.
4. Grafo de búsqueda en Profundidad y Anchura
Aplicar la búsqueda en Anchura y Profundidad en nuestro árbol para determinar como se van moviendo los estados y mostrarlos en una tabla, la cual nos permite determinar cual fue el nivel de profundidad o anchura y cual fue solución definitiva.
5. Conclusiones
6. Referencias bibliográficas
7. Experimentación con los algoritmos implementados
Se muestra un cuadro con la salida para los siguientes estados iniciales: (0,0) – (4,3) – (1,1) – (2,2).
Link del informe en formato PDF:
Link del código en JAVA:
No hay comentarios:
Publicar un comentario