SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
PROBLEMA DE LAS JARRAS 1
UNIVERSIDAD NACIONAL DE TRUJILLO
FACULTAD DE CIENCIAS FÍSICAS Y
MATEMÁTICAS
ESCUELA DE INFORMÁTICA
MONOGRAFIA
ASIGNATURA: Programación Lógica
PROFESOR: Ing. José Arturo Díaz Pulido.
INTEGRANTES: Mendez Echevarria Alessia
Meza Sanchez Kathiuska
Reyes Mozo Lizeth
CICLO: VII
TRUJILLO-PERÚ
2014
PROBLEMA DE LAS
JARRAS
PROBLEMA DE LAS JARRAS 2
A Dios,
por brindarnos la dicha de la
salud y bienestar físico
y espiritual
A nuestros padres,
como agradecimiento a su esfuerzo,
amor y apoyo incondicional, durante
nuestra formación tanto personal
como profesional.
A nuestros docentes,
por brindarnos su guía
y sabiduría en el desarrollo
de este trabajo.
PROBLEMA DE LAS JARRAS 3
CONTENIDO
INTRODUCCIÓN..................................................................................................................... 4
MARCO TEORICO.................................................................................................................. 5
1. CAPÍTULO I: TEORÍA DE TÉCNICAS DE BÚSQUEDA ............................................. 5
1.1. Búsqueda en Anchura ............................................................................................. 5
1.2. Búsqueda en Profundidad....................................................................................... 6
2. CAPÍTULO II: PROBLEMA DE LAS JARRAS............................................................. 8
2.1. Representación De Problemas:.............................................................................. 8
2.2. Planteamiento del problema de las Jarras ............................................................ 8
2.3. Formulación del problema de las Jarras................................................................ 9
3. CAPITULO III: SOLUCION PROBLEMA DE LAS JARRAS...................................... 11
3.1. PROBLEMA DE LAS JARRAS DE AGUA (PROFUNDIDAD) ........................... 11
3.2. PROBLEMA DE LAS JARRAS DE AGUA (ANCHURA) .................................... 13
4. CAPITULO IV: IMPLEMENTACION ............................................................................ 15
4.1. Código en Prolog ....................................................................................................... 15
4.2. ANIMACION DEL PROBLEMA EN JAVA (PASO A PASO).............................. 17
CONCLUSIONES:................................................................................................................. 19
ANEXOS .................................................................................................................................. 20
BIBLIOGRAFÍA ..................................................................................................................... 21
PROBLEMA DE LAS JARRAS 4
INTRODUCCIÓN
La Ciencia de la Computación trata cada vez de plantear nuevos problemas que
sean difíciles de resolver mediante las técnicas computacionales existentes. Estos
problemas generalmente no tienen solución algorítmica conocida o esta es tan
compleja que no tiene una implementación práctica computacional.
Los problemas de decisión que normalmente se presentan en la vida empresarial
pueden caer en esta clase de problemas.
Por lo general existe una serie de recursos escasos (obreros, presupuesto,
tiempo, etc.), o bien requisitos mínimos que hay que condicionan la elección de la
estrategia más adecuada. Por lo general el objetivo al tomar la decisión es llevar a
cabo el plan propuesto de manera óptima (bien incurriendo en mínimos costes o
bien buscando el máximo beneficio).
El proceso de buscar una solución a un problema produce un espacio solución, o
sea, la parte del espacio problema que se examina realmente. A diferencia de las
estructuras de datos que están predefinidas y ya existen cuando comienza la
búsqueda, los espacios problema son generalmente definidos proceduralmente,
es decir, el espacio problema es creado a medida que es explorado. Se usan
procedimientos para definir los siguientes estados posibles en el espacio a través
de los cuales la búsqueda puede continuar desde el estado actual. Solamente los
caminos explorados tienen que estar definidos explícitamente.
PROBLEMA DE LAS JARRAS 5
MARCO TEORICO
1. CAPÍTULO I: TEORÍA DE TÉCNICAS DE BÚSQUEDA
1.1. Búsqueda en Anchura
La búsqueda en anchura (o búsqueda en amplitud), llamada Breadth
First Search en inglés, es un algoritmo usado para recorrer o buscar
elementos en una estructura de datos como los árboles y los grafos
(aunque nosotros nos centremos ahora mismo en los árboles).
Pertenece al grupo de las búsquedas no informadas (sin heurísticas).
Su procedimiento consiste en ir visitando todos los nodos de un nivel
antes de proceder con el siguiente nivel tal y como mostramos en la
siguiente figura (los números en naranja indican el orden de
exploración de los nodos):
PROBLEMA DE LAS JARRAS 6
Entonces, la búsqueda en anchura va a encontrar el elemento
de menor profundidad del árbol, si es que existe.
Ventajas de la búsqueda en Anchura:
- Es completo: siempre encuentra la solución si existe.
- Es óptimo si el coste de cada rama es constante: en Inteligencia Artificial
puede que cada nodo sea un estado de un problema, y que unas ramas
tengan un coste diferente a las demás.
Desventajas de la búsqueda en Anchura:
- Complejidad exponencial en espacio y tiempo (incluso peor la del espacio
que la del tiempo)
1.2. Búsqueda en Profundidad
La búsqueda en profundidad, llamada Depth First Search en inglés, es un
algoritmo usado para recorrer o buscar elementos en un árbol o un grafo y
pertenece al grupo de las búsquedas no informadas (sin heurísticas). Su
procedimiento consiste en visitar todos los nodos de forma ordenada pero no
uniforme en un camino concreto, dejando caminos sin visitar en su proceso.
Una vez llega al final del camino vuelve atrás hasta que encuentra una
bifurcación que no ha explorado, y repite el proceso hasta acabar el árbol
(esto se conoce como backtracking). En la siguiente figura mostramos el
orden de visita, siendo los números en naranja dicho orden:
PROBLEMA DE LAS JARRAS 7
Como vemos, la búsqueda en profundidad busca el elemento por el
camino de máxima profundidad y cuando éste se acaba, vuelve al último
nodo que había visitado con caminos posibles (caminos abiertos).
Ventajas de la búsqueda en Profundidad:
- Es completa si no existen ciclos repetidos.
- Tiene menor complejidad en espacio que la búsqueda en anchura,
porque solo mantenemos en memoria un camino simultáneamente.
Desventajas de la búsqueda en Profundidad:
- No es óptima.
- Puede no encontrar la solución aunque exista si hay caminos infinitos.
- No es completa.
PROBLEMA DE LAS JARRAS 8
2. CAPÍTULO II: PROBLEMA DE LAS JARRAS
2.1. Representación De Problemas:
Existen diferentes formas de representar problemas para resolverlos de
manera automática.
Representación General:
 Espacio de Estado: un problema se divide en un conjunto de
pasos de resolución desde el inicio hasta el objetivo.
 Reducción a Sub-Problemas: un problema se descompone en
una jerarquía de sub-problemas
Representaciones para problemas Específicos:
 Resolución de juegos
 Satisfacción de restricciones
2.2. Planteamiento del problema de las Jarras
Enunciado:
-Se tienen dos jarras de agua, una de 4 litros y otra de 3 litros sin escala
de medición. Se desea tener 2 litros de agua en la jarra de 4 litros. Las
siguientes operaciones son válidas: llenar las jarras, tirar agua de las
jarras, pasar agua de una jarra a otra.
Representación de estados:
- (x y) con x en {0,1,2,3,4} e y en {0,1,2,3}.
Número de estados: 20.
PROBLEMA DE LAS JARRAS 9
2.3. Formulación del problema de las Jarras
Estado inicial: (0 0).
Estados finales: todos los estados de la forma (2 y).
Operadores:
• Llenar la jarra de 4 litros con la bomba.
• Llenar la jarra de 3 litros con la bomba.
• Vaciar la jarra de 4 litros en el suelo.
• Vaciar la jarra de 3 litros en el suelo.
• Llenar la jarra de 4 litros con la jarra de 3 litros.
• Llenar la jarra de 3 litros con la jarra de 4 litros.
• Vaciar la jarra de 3 litros en la jarra de 4 litros.
• Vaciar la jarra de 4 litros en la jarra de 3 litros.
2.4.Las Reglas que se pueden aplicar son:
1. Llenar la jarra de 4l: Si (X,Y) AND X<4 => (4,Y)
2. Llenar la jarra de 3l: Si (X,Y) AND Y<3 => (X,3)
3. Vaciar la jarra de 4l: Si (X,Y) AND X>0 => (0, Y)
4. Vaciar la jarra de 3l: Si (X,Y) AND Y>0 => (X, 0)
PROBLEMA DE LAS JARRAS 10
5. Pasar agua de la jarra de 4l a la jarra de 3l hasta llenarla:
Si (X,Y) AND X>0 AND X+Y>=3 => (X-(3-Y),3)
6. Pasar agua de la jarra de 3l a la jarra de 4l hasta llenarla:
Si (X,Y) AND Y>0 AND X+Y>=4 => (4, Y-(4-X))
7. Pasar toda el agua de la jarra de 4l a la jarra de 3l:
Si (X,Y) AND X>0 AND X+Y<3 => (0,X+Y)
8. Pasar toda el agua de la jarra de 3l a la jarra de 4l:
Si (X,Y) AND Y>0 AND X+Y<4 => (X+Y,0)
El programa debería encontrar un pasaje de estados para ir del estado
(0,0) al estado (2,0). Puede existir más de un pasaje de estados hacia la
solución, por ejemplo:
(0,0) => (0,3) => (3,0) => (3,3) => (4,2) => (0,2) => (2,0)
En la cual, a partir del estado inicial, se aplicaron las reglas 2, 8, 2, 6, 3 y
8, hasta conseguir el estado objetivo.
Otro pasaje de estados hacia la solución es la siguiente
(0,0) => (4,0) => (1,3) => (1,0) => (0,1) => (4,1) => (2,3) => (2,0)
En la cual se aplicaron las reglas 1, 5, 4, 7, 1, 5 y 4
PROBLEMA DE LAS JARRAS 11
3. CAPITULO III: SOLUCION PROBLEMA DE LAS JARRAS
3.1. PROBLEMA DE LAS JARRAS DE AGUA (PROFUNDIDAD)
3.1.1. Grafo De Búsqueda En Profundidad
PROBLEMA DE LAS JARRAS 12
3.2.2 Tabla De Busqueda En Profundidad
3.2.3. Propiedades de la búsqueda en profundidad
Complejidad:
r: factor de ramificación.
m: máxima profundidad de la búsqueda.
Complejidad en tiempo: O(rm
).
Complejidad en espacio: O(rm
).
No es completa.
No es minimal.
PROBLEMA DE LAS JARRAS 13
3.2. PROBLEMA DE LAS JARRAS DE AGUA (ANCHURA)
3.2.1 Grafo de búsqueda en anchura
PROBLEMA DE LAS JARRAS 14
3.2.2. Tabla de búsqueda en anchura
3.2.3. Propiedades de la búsqueda en anchura
Complejidad:
r: factor de ramificación.
p: profundidad de la solución.
Complejidad en tiempo: O(rp
).
Complejidad en espacio: O(rp
).
Es completa.
Es minimal.
PROBLEMA DE LAS JARRAS 15
4. CAPITULO IV: IMPLEMENTACION
4.1. Código en Prolog
PROBLEMA DE LAS JARRAS 16
PROBLEMA DE LAS JARRAS 17
4.2. ANIMACION DEL PROBLEMA EN JAVA (PASO A PASO)
PROBLEMA DE LAS JARRAS 18
PROBLEMA DE LAS JARRAS 19
CONCLUSIONES:
El problema de las jarras nos ayudó a resolver problemas reales, actuando como
un armamento de ideas acerca de cómo representar y utilizar el conocimiento, y
de cómo ensamblar sistemas
Es explicar varios tipos de inteligencia. Determinar qué ideas acerca de la
representación del conocimiento, del uso que se le da a éste, y del ensamble de
sistemas explican distintas clases de inteligencia
PROBLEMA DE LAS JARRAS 20
ANEXOS
 Soluciones de los problemas
Los siguientes cuadros muestran un resumen de las estadísticas mediante
la técnica de búsqueda por anchura y por profundidad de algunos
problemas.
Estadística de búsqueda en anchura:
Estadística de búsqueda en profundidad:
PROBLEMA DE LAS JARRAS 21
BIBLIOGRAFÍA
http://www.cs.us.es/~jalonso/cursos/ia1-99/temas/tema-03.pdf
http://www.infcr.uclm.es/www/aadan/AIIA_Industriales2005_archivos/Manu
ales/tema1.pdf
-Juan Cruz Jiménez, A (2013), el problema de las jarras de agua con CLIPS-
búsqueda primero en profundidad
http://ccia.ei.uvigo.es/docencia/IA/1213/transparencias/Tema2.pdf
http://blog.vidasconcurrentes.com/programacion/busqueda-en-profundidad-y-
busqueda-en-anchura/
http://www.widget-101.com/codigo/algoritmos-de-busqueda-en-anchura-bfs-
y-busqueda-en-profundidad-dfs/
http://elvex.ugr.es/decsai/algorithms/slides/5%20Grafos.pdf

Más contenido relacionado

La actualidad más candente

Tipos de búsqueda en inteligencia artificial
Tipos de búsqueda  en inteligencia artificialTipos de búsqueda  en inteligencia artificial
Tipos de búsqueda en inteligencia artificial
Henry Cambal
 
Ejercicios diferenciacion-e-integracic3b3n-numc3a9rica
Ejercicios diferenciacion-e-integracic3b3n-numc3a9ricaEjercicios diferenciacion-e-integracic3b3n-numc3a9rica
Ejercicios diferenciacion-e-integracic3b3n-numc3a9rica
alfredo_bhg
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
ITCV
 
Metodos numericos ing electrica
Metodos numericos ing electricaMetodos numericos ing electrica
Metodos numericos ing electrica
Javier Velasco
 
17 Introduccion Arboles
17 Introduccion Arboles17 Introduccion Arboles
17 Introduccion Arboles
UVM
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
Johnfornerod
 

La actualidad más candente (20)

Tipos de búsqueda en inteligencia artificial
Tipos de búsqueda  en inteligencia artificialTipos de búsqueda  en inteligencia artificial
Tipos de búsqueda en inteligencia artificial
 
Busquedas Heuristicas vs Busquedas Ciegas
Busquedas Heuristicas vs Busquedas CiegasBusquedas Heuristicas vs Busquedas Ciegas
Busquedas Heuristicas vs Busquedas Ciegas
 
Busquedas a Heuristicas
Busquedas a HeuristicasBusquedas a Heuristicas
Busquedas a Heuristicas
 
Ejercicios diferenciacion-e-integracic3b3n-numc3a9rica
Ejercicios diferenciacion-e-integracic3b3n-numc3a9ricaEjercicios diferenciacion-e-integracic3b3n-numc3a9rica
Ejercicios diferenciacion-e-integracic3b3n-numc3a9rica
 
Árboles Rojo - Negro
Árboles Rojo - NegroÁrboles Rojo - Negro
Árboles Rojo - Negro
 
Arboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de BusquedaArboles Binarios y Arboles Binarios de Busqueda
Arboles Binarios y Arboles Binarios de Busqueda
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
 
Algoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap SortAlgoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap Sort
 
Ejercicios de búsqueda a Ciegas y Búsqueda informada
Ejercicios de búsqueda a Ciegas y Búsqueda informadaEjercicios de búsqueda a Ciegas y Búsqueda informada
Ejercicios de búsqueda a Ciegas y Búsqueda informada
 
Propositional Logic and Pridicate logic
Propositional Logic and Pridicate logicPropositional Logic and Pridicate logic
Propositional Logic and Pridicate logic
 
Metodos numericos ing electrica
Metodos numericos ing electricaMetodos numericos ing electrica
Metodos numericos ing electrica
 
TEORÍA DE GRAFOS
TEORÍA DE GRAFOSTEORÍA DE GRAFOS
TEORÍA DE GRAFOS
 
Exposicion Caminos de euler
Exposicion Caminos de eulerExposicion Caminos de euler
Exposicion Caminos de euler
 
17 Introduccion Arboles
17 Introduccion Arboles17 Introduccion Arboles
17 Introduccion Arboles
 
Arboles
Arboles Arboles
Arboles
 
Compiladores, Analisis Lexico, Tabla de Transiciones
Compiladores, Analisis Lexico, Tabla de TransicionesCompiladores, Analisis Lexico, Tabla de Transiciones
Compiladores, Analisis Lexico, Tabla de Transiciones
 
2.5.3 Algoritmo de Dijkstra.pptx
2.5.3 Algoritmo de Dijkstra.pptx2.5.3 Algoritmo de Dijkstra.pptx
2.5.3 Algoritmo de Dijkstra.pptx
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
 
Método por plegamiento Hash
Método por plegamiento HashMétodo por plegamiento Hash
Método por plegamiento Hash
 
NP Complete Problems in Graph Theory
NP Complete Problems in Graph TheoryNP Complete Problems in Graph Theory
NP Complete Problems in Graph Theory
 

Destacado

Formulacion estrategica de problemas mg
Formulacion estrategica de problemas mgFormulacion estrategica de problemas mg
Formulacion estrategica de problemas mg
MaritzaGavilanez
 
Teoria de Cattell
Teoria de CattellTeoria de Cattell
Teoria de Cattell
Yeri Joce
 
La Torre de Hanoi Monografía vanessa mayo 2010
La Torre de Hanoi  Monografía  vanessa mayo 2010La Torre de Hanoi  Monografía  vanessa mayo 2010
La Torre de Hanoi Monografía vanessa mayo 2010
Vanessa Santiago
 
Enfermedad psicosomática: "lo que no se puede nombrar
Enfermedad psicosomática: "lo que no se puede nombrarEnfermedad psicosomática: "lo que no se puede nombrar
Enfermedad psicosomática: "lo que no se puede nombrar
cosasdelpac
 
Personalidad del docente
Personalidad del docentePersonalidad del docente
Personalidad del docente
personalidad89
 
Historia de la histeria.
Historia de la histeria.Historia de la histeria.
Historia de la histeria.
MicaelaPi
 
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
Oli Vazquez
 

Destacado (20)

Monografía - Problema de las Jarras
Monografía  - Problema de las JarrasMonografía  - Problema de las Jarras
Monografía - Problema de las Jarras
 
Test de jarras
Test de jarrasTest de jarras
Test de jarras
 
Formulacion estrategica de problemas mg
Formulacion estrategica de problemas mgFormulacion estrategica de problemas mg
Formulacion estrategica de problemas mg
 
Teoria de Cattell
Teoria de CattellTeoria de Cattell
Teoria de Cattell
 
Clips
ClipsClips
Clips
 
Clase 22
Clase 22Clase 22
Clase 22
 
La Torre de Hanoi Monografía vanessa mayo 2010
La Torre de Hanoi  Monografía  vanessa mayo 2010La Torre de Hanoi  Monografía  vanessa mayo 2010
La Torre de Hanoi Monografía vanessa mayo 2010
 
Pensamientocreativo
PensamientocreativoPensamientocreativo
Pensamientocreativo
 
Programación en Prolog para Inteligencia Artificial
Programación en Prolog para Inteligencia ArtificialProgramación en Prolog para Inteligencia Artificial
Programación en Prolog para Inteligencia Artificial
 
Expresión corporal
Expresión corporalExpresión corporal
Expresión corporal
 
Paciente psicosomatico
Paciente psicosomaticoPaciente psicosomatico
Paciente psicosomatico
 
Enfermedad psicosomática: "lo que no se puede nombrar
Enfermedad psicosomática: "lo que no se puede nombrarEnfermedad psicosomática: "lo que no se puede nombrar
Enfermedad psicosomática: "lo que no se puede nombrar
 
La personalidad desde el modelo cognitivo de la psicología. Enfoque organizac...
La personalidad desde el modelo cognitivo de la psicología. Enfoque organizac...La personalidad desde el modelo cognitivo de la psicología. Enfoque organizac...
La personalidad desde el modelo cognitivo de la psicología. Enfoque organizac...
 
Expresión corporal
Expresión corporalExpresión corporal
Expresión corporal
 
Coagulación Floculación
Coagulación FloculaciónCoagulación Floculación
Coagulación Floculación
 
Personalidad del docente
Personalidad del docentePersonalidad del docente
Personalidad del docente
 
Historia de la histeria.
Historia de la histeria.Historia de la histeria.
Historia de la histeria.
 
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
trastornos de la exprecion escrita 0000000000000000000000000000 trastorno de ...
 
La expresión corporal
La expresión corporal La expresión corporal
La expresión corporal
 
Histeria
HisteriaHisteria
Histeria
 

Similar a Monografia problema de las jarras de agua- prolog

Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.
Mayra Villanueva
 
Metodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problemaMetodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problema
yenmary
 
Proyecto de aula
Proyecto de aulaProyecto de aula
Proyecto de aula
ivandar16
 

Similar a Monografia problema de las jarras de agua- prolog (20)

Matematica
MatematicaMatematica
Matematica
 
Matematica
MatematicaMatematica
Matematica
 
Matematica
MatematicaMatematica
Matematica
 
Matematica
MatematicaMatematica
Matematica
 
Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.
 
Problema de las 8 reinas
Problema de las 8 reinasProblema de las 8 reinas
Problema de las 8 reinas
 
Estrategias Para aprender matematica
Estrategias Para aprender matematicaEstrategias Para aprender matematica
Estrategias Para aprender matematica
 
Tarea de word
Tarea de wordTarea de word
Tarea de word
 
Solucionar problemas-por-medio-de-algoritmo
Solucionar problemas-por-medio-de-algoritmoSolucionar problemas-por-medio-de-algoritmo
Solucionar problemas-por-medio-de-algoritmo
 
Solucionar problemas-por-medio-de-algoritmo
Solucionar problemas-por-medio-de-algoritmoSolucionar problemas-por-medio-de-algoritmo
Solucionar problemas-por-medio-de-algoritmo
 
Razonamiento logico matematico
Razonamiento logico matematicoRazonamiento logico matematico
Razonamiento logico matematico
 
Razonamiento logico matematico
Razonamiento logico matematicoRazonamiento logico matematico
Razonamiento logico matematico
 
Trabajo investigación 2 (1).docx
Trabajo investigación 2 (1).docxTrabajo investigación 2 (1).docx
Trabajo investigación 2 (1).docx
 
Metodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problemaMetodologia para el analisis y planteamiento del problema
Metodologia para el analisis y planteamiento del problema
 
143
143143
143
 
Lpae5
Lpae5Lpae5
Lpae5
 
Proyecto de aula
Proyecto de aulaProyecto de aula
Proyecto de aula
 
Desarrollo del pensamiento tomo3
Desarrollo del pensamiento tomo3Desarrollo del pensamiento tomo3
Desarrollo del pensamiento tomo3
 
Diario de camapo
Diario de camapoDiario de camapo
Diario de camapo
 
Algoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemasAlgoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemas
 

Último

auditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridadauditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridad
NELSON QUINTANA
 
SO5. s5. Unidad 2. Sectorización_-639808213.pdf
SO5. s5. Unidad 2. Sectorización_-639808213.pdfSO5. s5. Unidad 2. Sectorización_-639808213.pdf
SO5. s5. Unidad 2. Sectorización_-639808213.pdf
StayBe1
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
andersonsubero28
 

Último (20)

Balance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoBalance materia y energia procesos de Secado
Balance materia y energia procesos de Secado
 
Matematica Basica Limites indeterminados
Matematica Basica Limites indeterminadosMatematica Basica Limites indeterminados
Matematica Basica Limites indeterminados
 
auditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridadauditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridad
 
IG01 Instalacion de gas, materiales, criterios, recomendaciones
IG01 Instalacion de gas, materiales, criterios, recomendacionesIG01 Instalacion de gas, materiales, criterios, recomendaciones
IG01 Instalacion de gas, materiales, criterios, recomendaciones
 
1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdf1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdf
 
UNIDAD 2.- SENSORES.TIPOS DE SENSORES Y SU CLASIFICAIÓN
UNIDAD 2.- SENSORES.TIPOS DE SENSORES  Y SU CLASIFICAIÓNUNIDAD 2.- SENSORES.TIPOS DE SENSORES  Y SU CLASIFICAIÓN
UNIDAD 2.- SENSORES.TIPOS DE SENSORES Y SU CLASIFICAIÓN
 
INFORME de actividades para pago de servicio
INFORME de actividades para pago de servicioINFORME de actividades para pago de servicio
INFORME de actividades para pago de servicio
 
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
8 2024A CONDUCCION DE CALOR EN REGIMEN TRANSITORIO.pptx
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
Presentacion Feria Cientifica Proyecto.pptx
Presentacion Feria Cientifica Proyecto.pptxPresentacion Feria Cientifica Proyecto.pptx
Presentacion Feria Cientifica Proyecto.pptx
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de Gestión
 
3er Informe Laboratorio Quimica General (2) (1).pdf
3er Informe Laboratorio Quimica General  (2) (1).pdf3er Informe Laboratorio Quimica General  (2) (1).pdf
3er Informe Laboratorio Quimica General (2) (1).pdf
 
dokumen.tips_311-determinacion-del-espacio-estatico.pptx
dokumen.tips_311-determinacion-del-espacio-estatico.pptxdokumen.tips_311-determinacion-del-espacio-estatico.pptx
dokumen.tips_311-determinacion-del-espacio-estatico.pptx
 
docsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbanadocsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbana
 
ESTUDIO DE TRAFICO PARA EL DISEÑO DE TIPOS DE VIAS.pptx
ESTUDIO DE TRAFICO PARA EL DISEÑO DE TIPOS DE VIAS.pptxESTUDIO DE TRAFICO PARA EL DISEÑO DE TIPOS DE VIAS.pptx
ESTUDIO DE TRAFICO PARA EL DISEÑO DE TIPOS DE VIAS.pptx
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
 
SO5. s5. Unidad 2. Sectorización_-639808213.pdf
SO5. s5. Unidad 2. Sectorización_-639808213.pdfSO5. s5. Unidad 2. Sectorización_-639808213.pdf
SO5. s5. Unidad 2. Sectorización_-639808213.pdf
 
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdfTrabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
 
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALESCAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
 

Monografia problema de las jarras de agua- prolog

  • 1. PROBLEMA DE LAS JARRAS 1 UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS ESCUELA DE INFORMÁTICA MONOGRAFIA ASIGNATURA: Programación Lógica PROFESOR: Ing. José Arturo Díaz Pulido. INTEGRANTES: Mendez Echevarria Alessia Meza Sanchez Kathiuska Reyes Mozo Lizeth CICLO: VII TRUJILLO-PERÚ 2014 PROBLEMA DE LAS JARRAS
  • 2. PROBLEMA DE LAS JARRAS 2 A Dios, por brindarnos la dicha de la salud y bienestar físico y espiritual A nuestros padres, como agradecimiento a su esfuerzo, amor y apoyo incondicional, durante nuestra formación tanto personal como profesional. A nuestros docentes, por brindarnos su guía y sabiduría en el desarrollo de este trabajo.
  • 3. PROBLEMA DE LAS JARRAS 3 CONTENIDO INTRODUCCIÓN..................................................................................................................... 4 MARCO TEORICO.................................................................................................................. 5 1. CAPÍTULO I: TEORÍA DE TÉCNICAS DE BÚSQUEDA ............................................. 5 1.1. Búsqueda en Anchura ............................................................................................. 5 1.2. Búsqueda en Profundidad....................................................................................... 6 2. CAPÍTULO II: PROBLEMA DE LAS JARRAS............................................................. 8 2.1. Representación De Problemas:.............................................................................. 8 2.2. Planteamiento del problema de las Jarras ............................................................ 8 2.3. Formulación del problema de las Jarras................................................................ 9 3. CAPITULO III: SOLUCION PROBLEMA DE LAS JARRAS...................................... 11 3.1. PROBLEMA DE LAS JARRAS DE AGUA (PROFUNDIDAD) ........................... 11 3.2. PROBLEMA DE LAS JARRAS DE AGUA (ANCHURA) .................................... 13 4. CAPITULO IV: IMPLEMENTACION ............................................................................ 15 4.1. Código en Prolog ....................................................................................................... 15 4.2. ANIMACION DEL PROBLEMA EN JAVA (PASO A PASO).............................. 17 CONCLUSIONES:................................................................................................................. 19 ANEXOS .................................................................................................................................. 20 BIBLIOGRAFÍA ..................................................................................................................... 21
  • 4. PROBLEMA DE LAS JARRAS 4 INTRODUCCIÓN La Ciencia de la Computación trata cada vez de plantear nuevos problemas que sean difíciles de resolver mediante las técnicas computacionales existentes. Estos problemas generalmente no tienen solución algorítmica conocida o esta es tan compleja que no tiene una implementación práctica computacional. Los problemas de decisión que normalmente se presentan en la vida empresarial pueden caer en esta clase de problemas. Por lo general existe una serie de recursos escasos (obreros, presupuesto, tiempo, etc.), o bien requisitos mínimos que hay que condicionan la elección de la estrategia más adecuada. Por lo general el objetivo al tomar la decisión es llevar a cabo el plan propuesto de manera óptima (bien incurriendo en mínimos costes o bien buscando el máximo beneficio). El proceso de buscar una solución a un problema produce un espacio solución, o sea, la parte del espacio problema que se examina realmente. A diferencia de las estructuras de datos que están predefinidas y ya existen cuando comienza la búsqueda, los espacios problema son generalmente definidos proceduralmente, es decir, el espacio problema es creado a medida que es explorado. Se usan procedimientos para definir los siguientes estados posibles en el espacio a través de los cuales la búsqueda puede continuar desde el estado actual. Solamente los caminos explorados tienen que estar definidos explícitamente.
  • 5. PROBLEMA DE LAS JARRAS 5 MARCO TEORICO 1. CAPÍTULO I: TEORÍA DE TÉCNICAS DE BÚSQUEDA 1.1. Búsqueda en Anchura La búsqueda en anchura (o búsqueda en amplitud), llamada Breadth First Search en inglés, es un algoritmo usado para recorrer o buscar elementos en una estructura de datos como los árboles y los grafos (aunque nosotros nos centremos ahora mismo en los árboles). Pertenece al grupo de las búsquedas no informadas (sin heurísticas). Su procedimiento consiste en ir visitando todos los nodos de un nivel antes de proceder con el siguiente nivel tal y como mostramos en la siguiente figura (los números en naranja indican el orden de exploración de los nodos):
  • 6. PROBLEMA DE LAS JARRAS 6 Entonces, la búsqueda en anchura va a encontrar el elemento de menor profundidad del árbol, si es que existe. Ventajas de la búsqueda en Anchura: - Es completo: siempre encuentra la solución si existe. - Es óptimo si el coste de cada rama es constante: en Inteligencia Artificial puede que cada nodo sea un estado de un problema, y que unas ramas tengan un coste diferente a las demás. Desventajas de la búsqueda en Anchura: - Complejidad exponencial en espacio y tiempo (incluso peor la del espacio que la del tiempo) 1.2. Búsqueda en Profundidad La búsqueda en profundidad, llamada Depth First Search en inglés, es un algoritmo usado para recorrer o buscar elementos en un árbol o un grafo y pertenece al grupo de las búsquedas no informadas (sin heurísticas). Su procedimiento consiste en visitar todos los nodos de forma ordenada pero no uniforme en un camino concreto, dejando caminos sin visitar en su proceso. Una vez llega al final del camino vuelve atrás hasta que encuentra una bifurcación que no ha explorado, y repite el proceso hasta acabar el árbol (esto se conoce como backtracking). En la siguiente figura mostramos el orden de visita, siendo los números en naranja dicho orden:
  • 7. PROBLEMA DE LAS JARRAS 7 Como vemos, la búsqueda en profundidad busca el elemento por el camino de máxima profundidad y cuando éste se acaba, vuelve al último nodo que había visitado con caminos posibles (caminos abiertos). Ventajas de la búsqueda en Profundidad: - Es completa si no existen ciclos repetidos. - Tiene menor complejidad en espacio que la búsqueda en anchura, porque solo mantenemos en memoria un camino simultáneamente. Desventajas de la búsqueda en Profundidad: - No es óptima. - Puede no encontrar la solución aunque exista si hay caminos infinitos. - No es completa.
  • 8. PROBLEMA DE LAS JARRAS 8 2. CAPÍTULO II: PROBLEMA DE LAS JARRAS 2.1. Representación De Problemas: Existen diferentes formas de representar problemas para resolverlos de manera automática. Representación General:  Espacio de Estado: un problema se divide en un conjunto de pasos de resolución desde el inicio hasta el objetivo.  Reducción a Sub-Problemas: un problema se descompone en una jerarquía de sub-problemas Representaciones para problemas Específicos:  Resolución de juegos  Satisfacción de restricciones 2.2. Planteamiento del problema de las Jarras Enunciado: -Se tienen dos jarras de agua, una de 4 litros y otra de 3 litros sin escala de medición. Se desea tener 2 litros de agua en la jarra de 4 litros. Las siguientes operaciones son válidas: llenar las jarras, tirar agua de las jarras, pasar agua de una jarra a otra. Representación de estados: - (x y) con x en {0,1,2,3,4} e y en {0,1,2,3}. Número de estados: 20.
  • 9. PROBLEMA DE LAS JARRAS 9 2.3. Formulación del problema de las Jarras Estado inicial: (0 0). Estados finales: todos los estados de la forma (2 y). Operadores: • Llenar la jarra de 4 litros con la bomba. • Llenar la jarra de 3 litros con la bomba. • Vaciar la jarra de 4 litros en el suelo. • Vaciar la jarra de 3 litros en el suelo. • Llenar la jarra de 4 litros con la jarra de 3 litros. • Llenar la jarra de 3 litros con la jarra de 4 litros. • Vaciar la jarra de 3 litros en la jarra de 4 litros. • Vaciar la jarra de 4 litros en la jarra de 3 litros. 2.4.Las Reglas que se pueden aplicar son: 1. Llenar la jarra de 4l: Si (X,Y) AND X<4 => (4,Y) 2. Llenar la jarra de 3l: Si (X,Y) AND Y<3 => (X,3) 3. Vaciar la jarra de 4l: Si (X,Y) AND X>0 => (0, Y) 4. Vaciar la jarra de 3l: Si (X,Y) AND Y>0 => (X, 0)
  • 10. PROBLEMA DE LAS JARRAS 10 5. Pasar agua de la jarra de 4l a la jarra de 3l hasta llenarla: Si (X,Y) AND X>0 AND X+Y>=3 => (X-(3-Y),3) 6. Pasar agua de la jarra de 3l a la jarra de 4l hasta llenarla: Si (X,Y) AND Y>0 AND X+Y>=4 => (4, Y-(4-X)) 7. Pasar toda el agua de la jarra de 4l a la jarra de 3l: Si (X,Y) AND X>0 AND X+Y<3 => (0,X+Y) 8. Pasar toda el agua de la jarra de 3l a la jarra de 4l: Si (X,Y) AND Y>0 AND X+Y<4 => (X+Y,0) El programa debería encontrar un pasaje de estados para ir del estado (0,0) al estado (2,0). Puede existir más de un pasaje de estados hacia la solución, por ejemplo: (0,0) => (0,3) => (3,0) => (3,3) => (4,2) => (0,2) => (2,0) En la cual, a partir del estado inicial, se aplicaron las reglas 2, 8, 2, 6, 3 y 8, hasta conseguir el estado objetivo. Otro pasaje de estados hacia la solución es la siguiente (0,0) => (4,0) => (1,3) => (1,0) => (0,1) => (4,1) => (2,3) => (2,0) En la cual se aplicaron las reglas 1, 5, 4, 7, 1, 5 y 4
  • 11. PROBLEMA DE LAS JARRAS 11 3. CAPITULO III: SOLUCION PROBLEMA DE LAS JARRAS 3.1. PROBLEMA DE LAS JARRAS DE AGUA (PROFUNDIDAD) 3.1.1. Grafo De Búsqueda En Profundidad
  • 12. PROBLEMA DE LAS JARRAS 12 3.2.2 Tabla De Busqueda En Profundidad 3.2.3. Propiedades de la búsqueda en profundidad Complejidad: r: factor de ramificación. m: máxima profundidad de la búsqueda. Complejidad en tiempo: O(rm ). Complejidad en espacio: O(rm ). No es completa. No es minimal.
  • 13. PROBLEMA DE LAS JARRAS 13 3.2. PROBLEMA DE LAS JARRAS DE AGUA (ANCHURA) 3.2.1 Grafo de búsqueda en anchura
  • 14. PROBLEMA DE LAS JARRAS 14 3.2.2. Tabla de búsqueda en anchura 3.2.3. Propiedades de la búsqueda en anchura Complejidad: r: factor de ramificación. p: profundidad de la solución. Complejidad en tiempo: O(rp ). Complejidad en espacio: O(rp ). Es completa. Es minimal.
  • 15. PROBLEMA DE LAS JARRAS 15 4. CAPITULO IV: IMPLEMENTACION 4.1. Código en Prolog
  • 16. PROBLEMA DE LAS JARRAS 16
  • 17. PROBLEMA DE LAS JARRAS 17 4.2. ANIMACION DEL PROBLEMA EN JAVA (PASO A PASO)
  • 18. PROBLEMA DE LAS JARRAS 18
  • 19. PROBLEMA DE LAS JARRAS 19 CONCLUSIONES: El problema de las jarras nos ayudó a resolver problemas reales, actuando como un armamento de ideas acerca de cómo representar y utilizar el conocimiento, y de cómo ensamblar sistemas Es explicar varios tipos de inteligencia. Determinar qué ideas acerca de la representación del conocimiento, del uso que se le da a éste, y del ensamble de sistemas explican distintas clases de inteligencia
  • 20. PROBLEMA DE LAS JARRAS 20 ANEXOS  Soluciones de los problemas Los siguientes cuadros muestran un resumen de las estadísticas mediante la técnica de búsqueda por anchura y por profundidad de algunos problemas. Estadística de búsqueda en anchura: Estadística de búsqueda en profundidad:
  • 21. PROBLEMA DE LAS JARRAS 21 BIBLIOGRAFÍA http://www.cs.us.es/~jalonso/cursos/ia1-99/temas/tema-03.pdf http://www.infcr.uclm.es/www/aadan/AIIA_Industriales2005_archivos/Manu ales/tema1.pdf -Juan Cruz Jiménez, A (2013), el problema de las jarras de agua con CLIPS- búsqueda primero en profundidad http://ccia.ei.uvigo.es/docencia/IA/1213/transparencias/Tema2.pdf http://blog.vidasconcurrentes.com/programacion/busqueda-en-profundidad-y- busqueda-en-anchura/ http://www.widget-101.com/codigo/algoritmos-de-busqueda-en-anchura-bfs- y-busqueda-en-profundidad-dfs/ http://elvex.ugr.es/decsai/algorithms/slides/5%20Grafos.pdf