SlideShare una empresa de Scribd logo
Problema del 8 Puzzle
Arámburo Cabada Joseph David
Chávez Sierra Juan Paúl
Hernández Castaños Gabriela
Leyva Bujons Iván Alberto
Planteamiento del problema.
• Se tiene un puzzle de 8 números los cuales están colocados
aleatoriamente en un espacio de 3 x 3 y se desean ordenar de la
siguiente manera:
1 4 7
2 5 8
3 6
Condiciones del problema
• Se debe generar un nodo inicial de forma aleatoria.
• Se debe utilizar el método de busca informado A*.
• Debe evaluarse todas las posibles heurísticas para seleccionar la
mejor.
• Al encontrar el nodo final se debe mostrar la ruta recorrida hacia la
solución.
Heurísticas evaluadas
• Número de fichas desacomodadas.
• Distancia Manhattan total.
Número de fichas desacomodadas
h=4
h=3
h=2 h=4
Tres fichas
desacomodadas
Cuatro fichas
desacomodadas
Dos fichas
desacomodadas
cuatro fichas
desacomodadas
Distancia Manhattan total
h=3
h=2h=4 h=4
0+0+0+1+1+0+0+1=3
0+0+0+1+1+0+1+1=4 0+0+0+0+1+0+0+1=2 1+0+0+1+1+0+0+1=4
Resultado de la evaluación de la heurística.
• Se usara el método de búsqueda informado A*.
• La heurística que se usara es Distancia Manhattan Total.
• Estructuras de datos que se usaran:
• Nodos cerrados: pila.
• Nodos abiertos: cola con prioridad.
Entorno de desarrollo seleccionado
• Lenguaje : Java
• Se escogió resolver el problema con este lenguaje con el que estamos mas
familiarizados a través de su interfaz de consola.
• IDE: Netbeans v8.0
Implementación
• Se desarrollo una estructura orientada a objetos con la finalidad de
una legible comprensión por parte de usuarios terceros. Cada clase
realiza una tarea especifica que es usada en la clase principal.
Las clases
• A continuación se muestran las clases desarroladas:
Class GeneradorDeNodoInicial
• Consiste en almacenar los números
del 1 al 9 en un arreglo para luego
extraerlos de forma aleatoria a través
de su numero de posición. La posición
seleccionada será eliminada.
Class BuscarCoordenadas
Consiste en visitar todas las casillas de
la matriz del nodo actual con el
objetivo de saber la localización del
espacio representado por el numero 9
y asi poder realizar los siguientes
movimientos.
Class CompararNodos
• Consiste en hacer una
comparación entre el nodo
actual y el nodo meta. Se toma
cada elemento de la matriz y se
compara con su contraparte en
la matriz objetivo. Si surge una
diferencia el método se detiene
y devuelve false, de lo contrario
devolvería true y finaliza la
búsqueda.
Class CalcularManhattan
• Consiste en la suma acumulada de
las distancias en X y Y de cada ficha
desde su estado actual hasta la
meta. El método devuelve el valor
acumulado el cual se guardara en el
campo h del nodo.
Class MoverFicha
• Consiste en realizar el intercambio
del elemento con el numero 9 que
representa el espacio vacío con
alguna de su ficha contiguas a la
derecha, abajo, izquierda o arriba
según sea permitido. El método
realiza el movimiento o en su
defecto un nulo si no se puede
mover porque esta contigua al
limite.
Class NodaCerrado
• Clase que nos sirve para generar
objetos tipo NodoCerrado para
agregarlos a la cola de cerrados.
Class NodoFrontera
• Clase que nos sirve para crear objetos
de tipo NodoFrontera que serian los
nodo abierto o frontera que están
pendientes por visitar.
Class BuscarCerrados
• Esta clase realiza una búsqueda en la
cola de nodos cerrados
comparándolos con el nodo actual. La
clase devuelve un false de no
encontrarse, de lo contrario devuelve
un true.
Class BusquedaFronteras
• Esta clase realiza una búsqueda en la
cola de nodos frontera comparándolos
con el actual que resulta del
ordenamiento por prioridad. El
método devuelve un true de
encontrarse el nodo o en su defecto
devuelve un false.
Class BusquedaPadre
• Esta clase realiza una búsqueda a
través de los identificadores de
los nodos para encontrar el padre
del nodo actual. El método
devuelve el identificados del
padre o de lo contrario devuelve
un nulo.
Class ImprimirNodo
• Este método imprime los nodos
que representan el camino
desde el nodo inicial al nodo
meta.
Demostración del Código
• A continuación se hace una demostración del código desarrollado en
la consola de NetBeans.
Gracias!
• Fin de la presentación.

Más contenido relacionado

La actualidad más candente

Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
joosbeen garcia solano
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
Franklin Parrales Bravo
 
Búsqueda Primero el Mejor
Búsqueda Primero el MejorBúsqueda Primero el Mejor
Búsqueda Primero el Mejor
Tutor4uDev
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
Giancarlo Aguilar
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
DĴäîřo Lêmä
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
1da4
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..
NANO-06
 
Busquedas a Heuristicas
Busquedas a HeuristicasBusquedas a Heuristicas
Busquedas a Heuristicas
Bryan Coronel
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datos
Urban Skate House
 
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
Lenin Acosta Mata
 
Busqueda por profundidad iterativa
Busqueda por profundidad iterativaBusqueda por profundidad iterativa
Busqueda por profundidad iterativa
Israel Calderón de la Cruz
 
Cuadro comparativo de metodos de busqueda en ia
Cuadro comparativo de metodos de busqueda en iaCuadro comparativo de metodos de busqueda en ia
Cuadro comparativo de metodos de busqueda en ia
yorlys oropeza
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
José Antonio Sandoval Acosta
 
Ejemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdenciesEjemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdencies
MICProductivity
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
Angel Vázquez Patiño
 
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
Héctor Estigarribia
 
Grafos 0
Grafos 0Grafos 0
Grafos 0
brisarosales
 
Introducción al análisis de algoritmos
Introducción al  análisis de algoritmosIntroducción al  análisis de algoritmos
Introducción al análisis de algoritmos
Alvaro Enrique Ruano
 
Tercera practica
Tercera practicaTercera practica
Tercera practica
Jonathan Sarmiento
 
Base de datos 12 -REFACCIONARIA
Base de datos 12 -REFACCIONARIABase de datos 12 -REFACCIONARIA
Base de datos 12 -REFACCIONARIA
Naomi_Salcedo
 

La actualidad más candente (20)

Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Búsqueda Primero el Mejor
Búsqueda Primero el MejorBúsqueda Primero el Mejor
Búsqueda Primero el Mejor
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..
 
Busquedas a Heuristicas
Busquedas a HeuristicasBusquedas a Heuristicas
Busquedas a Heuristicas
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datos
 
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
 
Busqueda por profundidad iterativa
Busqueda por profundidad iterativaBusqueda por profundidad iterativa
Busqueda por profundidad iterativa
 
Cuadro comparativo de metodos de busqueda en ia
Cuadro comparativo de metodos de busqueda en iaCuadro comparativo de metodos de busqueda en ia
Cuadro comparativo de metodos de busqueda en ia
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Ejemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdenciesEjemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdencies
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
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
 
Grafos 0
Grafos 0Grafos 0
Grafos 0
 
Introducción al análisis de algoritmos
Introducción al  análisis de algoritmosIntroducción al  análisis de algoritmos
Introducción al análisis de algoritmos
 
Tercera practica
Tercera practicaTercera practica
Tercera practica
 
Base de datos 12 -REFACCIONARIA
Base de datos 12 -REFACCIONARIABase de datos 12 -REFACCIONARIA
Base de datos 12 -REFACCIONARIA
 

Destacado

Busqueda informada y explorada
Busqueda informada y exploradaBusqueda informada y explorada
Busqueda informada y explorada
Tito Rengifo Sanclemente
 
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
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)
Cristina Lopez
 
Aprendiendo SQL 2
Aprendiendo SQL 2 Aprendiendo SQL 2
Aprendiendo SQL 2
Daniel Cruz
 
Sq Lv1a
Sq Lv1aSq Lv1a
Sq Lv1a
Daniel Cruz
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
Daniel Cruz
 
Chipkit comunicacion puerto serie
Chipkit comunicacion puerto serieChipkit comunicacion puerto serie
Chipkit comunicacion puerto serie
Daniel Cruz
 
Programación Lógica con PROLOG
Programación Lógica con PROLOGProgramación Lógica con PROLOG
Programación Lógica con PROLOG
Daniel Cruz
 
Problema de las 8 reinas
Problema de las 8 reinasProblema de las 8 reinas
Problema de las 8 reinas
Esteban Gonzalez
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
josecuartas
 
Distribucion de planta
Distribucion de plantaDistribucion de planta
Distribucion de planta
1204693806
 
Clase II
Clase IIClase II

Destacado (12)

Busqueda informada y explorada
Busqueda informada y exploradaBusqueda informada y explorada
Busqueda informada y explorada
 
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.
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)
 
Aprendiendo SQL 2
Aprendiendo SQL 2 Aprendiendo SQL 2
Aprendiendo SQL 2
 
Sq Lv1a
Sq Lv1aSq Lv1a
Sq Lv1a
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
 
Chipkit comunicacion puerto serie
Chipkit comunicacion puerto serieChipkit comunicacion puerto serie
Chipkit comunicacion puerto serie
 
Programación Lógica con PROLOG
Programación Lógica con PROLOGProgramación Lógica con PROLOG
Programación Lógica con PROLOG
 
Problema de las 8 reinas
Problema de las 8 reinasProblema de las 8 reinas
Problema de las 8 reinas
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
 
Distribucion de planta
Distribucion de plantaDistribucion de planta
Distribucion de planta
 
Clase II
Clase IIClase II
Clase II
 

Similar a Problema 8 puzzle

Criterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia ArtificialCriterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia Artificial
Hilario Per'zz
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificial
Mariy Torrealba
 
Búsqueda inteligencia artificial
Búsqueda inteligencia artificialBúsqueda inteligencia artificial
Búsqueda inteligencia artificial
Alexis Pilco
 
Tecnicas de Busqueda en IA
Tecnicas de Busqueda en IATecnicas de Busqueda en IA
Tecnicas de Busqueda en IA
RafaelVargas155
 
Estructura de datos s14
Estructura de datos s14Estructura de datos s14
Estructura de datos s14
Maestros Online
 
Estructura de datos s14
Estructura de datos s14Estructura de datos s14
Estructura de datos s14
Maestros en Linea
 
Tipos de búsquedas de inteligencia artificial
Tipos de búsquedas de inteligencia artificialTipos de búsquedas de inteligencia artificial
Tipos de búsquedas de inteligencia artificial
luismogollon22
 
Tablas hash
Tablas hashTablas hash
Tablas hash
Privada
 
Busquedas inteligencia artificail
Busquedas inteligencia artificailBusquedas inteligencia artificail
Busquedas inteligencia artificail
Luis Cambal
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
MigdaliaSalazar1
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys B
Jose Andres
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccional
Laura Del Pino Díaz
 
Sistemas basados en casos
Sistemas basados en casosSistemas basados en casos
Sistemas basados en casos
Luis Álamo
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busqueda
Gonzalo Retamal
 

Similar a Problema 8 puzzle (14)

Criterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia ArtificialCriterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia Artificial
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificial
 
Búsqueda inteligencia artificial
Búsqueda inteligencia artificialBúsqueda inteligencia artificial
Búsqueda inteligencia artificial
 
Tecnicas de Busqueda en IA
Tecnicas de Busqueda en IATecnicas de Busqueda en IA
Tecnicas de Busqueda en IA
 
Estructura de datos s14
Estructura de datos s14Estructura de datos s14
Estructura de datos s14
 
Estructura de datos s14
Estructura de datos s14Estructura de datos s14
Estructura de datos s14
 
Tipos de búsquedas de inteligencia artificial
Tipos de búsquedas de inteligencia artificialTipos de búsquedas de inteligencia artificial
Tipos de búsquedas de inteligencia artificial
 
Tablas hash
Tablas hashTablas hash
Tablas hash
 
Busquedas inteligencia artificail
Busquedas inteligencia artificailBusquedas inteligencia artificail
Busquedas inteligencia artificail
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys B
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccional
 
Sistemas basados en casos
Sistemas basados en casosSistemas basados en casos
Sistemas basados en casos
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busqueda
 

Más de Juan Paúl Chávez Sierra

Sistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticosSistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticos
Juan Paúl Chávez Sierra
 
Presentacion fausto
Presentacion faustoPresentacion fausto
Presentacion fausto
Juan Paúl Chávez Sierra
 
Presentacion gestión de los riesgos del proyecto
Presentacion gestión de los riesgos del proyectoPresentacion gestión de los riesgos del proyecto
Presentacion gestión de los riesgos del proyecto
Juan Paúl Chávez Sierra
 
Vigilancia tecnológica, benchmarking e inteligencia competitiva
Vigilancia tecnológica, benchmarking e inteligencia competitivaVigilancia tecnológica, benchmarking e inteligencia competitiva
Vigilancia tecnológica, benchmarking e inteligencia competitiva
Juan Paúl Chávez Sierra
 
Comandapp
ComandappComandapp
Estrategia empresarial y tecnologica
Estrategia empresarial y tecnologicaEstrategia empresarial y tecnologica
Estrategia empresarial y tecnologica
Juan Paúl Chávez Sierra
 
Quicksort
QuicksortQuicksort
Proyecto base de datos hospital angeles
Proyecto base de datos hospital angelesProyecto base de datos hospital angeles
Proyecto base de datos hospital angeles
Juan Paúl Chávez Sierra
 
Cable Coaxial
Cable CoaxialCable Coaxial
Muestreo aleatorio sistematico
Muestreo aleatorio sistematicoMuestreo aleatorio sistematico
Muestreo aleatorio sistematico
Juan Paúl Chávez Sierra
 
Montaje del rack del servidor
Montaje del rack del servidorMontaje del rack del servidor
Montaje del rack del servidor
Juan Paúl Chávez Sierra
 
3m health care products
3m health care products3m health care products
3m health care products
Juan Paúl Chávez Sierra
 
Problemas graficales y de test de CI
Problemas graficales y de test de CIProblemas graficales y de test de CI
Problemas graficales y de test de CI
Juan Paúl Chávez Sierra
 
Italy
ItalyItaly
Caso tricomv1
Caso tricomv1Caso tricomv1
Sección ii administración global de la TI
Sección ii administración global de la TISección ii administración global de la TI
Sección ii administración global de la TI
Juan Paúl Chávez Sierra
 

Más de Juan Paúl Chávez Sierra (16)

Sistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticosSistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticos
 
Presentacion fausto
Presentacion faustoPresentacion fausto
Presentacion fausto
 
Presentacion gestión de los riesgos del proyecto
Presentacion gestión de los riesgos del proyectoPresentacion gestión de los riesgos del proyecto
Presentacion gestión de los riesgos del proyecto
 
Vigilancia tecnológica, benchmarking e inteligencia competitiva
Vigilancia tecnológica, benchmarking e inteligencia competitivaVigilancia tecnológica, benchmarking e inteligencia competitiva
Vigilancia tecnológica, benchmarking e inteligencia competitiva
 
Comandapp
ComandappComandapp
Comandapp
 
Estrategia empresarial y tecnologica
Estrategia empresarial y tecnologicaEstrategia empresarial y tecnologica
Estrategia empresarial y tecnologica
 
Quicksort
QuicksortQuicksort
Quicksort
 
Proyecto base de datos hospital angeles
Proyecto base de datos hospital angelesProyecto base de datos hospital angeles
Proyecto base de datos hospital angeles
 
Cable Coaxial
Cable CoaxialCable Coaxial
Cable Coaxial
 
Muestreo aleatorio sistematico
Muestreo aleatorio sistematicoMuestreo aleatorio sistematico
Muestreo aleatorio sistematico
 
Montaje del rack del servidor
Montaje del rack del servidorMontaje del rack del servidor
Montaje del rack del servidor
 
3m health care products
3m health care products3m health care products
3m health care products
 
Problemas graficales y de test de CI
Problemas graficales y de test de CIProblemas graficales y de test de CI
Problemas graficales y de test de CI
 
Italy
ItalyItaly
Italy
 
Caso tricomv1
Caso tricomv1Caso tricomv1
Caso tricomv1
 
Sección ii administración global de la TI
Sección ii administración global de la TISección ii administración global de la TI
Sección ii administración global de la TI
 

Último

mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
jgvanessa23
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Modo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdfModo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdf
ranierglez
 
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDADEXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
AngelCristhianMB
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
larapalaciosmonzon28
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
luiscohailatenazoa0
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
AMADO SALVADOR
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
renzocruz180310
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
Manuel Diaz
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
leia ereni
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
codesiret
 

Último (20)

mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Modo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdfModo test refrigeradores y codigos de errores 2018 V2.pdf
Modo test refrigeradores y codigos de errores 2018 V2.pdf
 
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDADEXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
EXAMEN DE TOPOGRAFIA RESUELTO-2017 CURSO DE UNIVERSIDAD
 
Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
 

Problema 8 puzzle

  • 1. Problema del 8 Puzzle Arámburo Cabada Joseph David Chávez Sierra Juan Paúl Hernández Castaños Gabriela Leyva Bujons Iván Alberto
  • 2. Planteamiento del problema. • Se tiene un puzzle de 8 números los cuales están colocados aleatoriamente en un espacio de 3 x 3 y se desean ordenar de la siguiente manera: 1 4 7 2 5 8 3 6
  • 3. Condiciones del problema • Se debe generar un nodo inicial de forma aleatoria. • Se debe utilizar el método de busca informado A*. • Debe evaluarse todas las posibles heurísticas para seleccionar la mejor. • Al encontrar el nodo final se debe mostrar la ruta recorrida hacia la solución.
  • 4. Heurísticas evaluadas • Número de fichas desacomodadas. • Distancia Manhattan total.
  • 5. Número de fichas desacomodadas h=4 h=3 h=2 h=4 Tres fichas desacomodadas Cuatro fichas desacomodadas Dos fichas desacomodadas cuatro fichas desacomodadas
  • 6. Distancia Manhattan total h=3 h=2h=4 h=4 0+0+0+1+1+0+0+1=3 0+0+0+1+1+0+1+1=4 0+0+0+0+1+0+0+1=2 1+0+0+1+1+0+0+1=4
  • 7. Resultado de la evaluación de la heurística. • Se usara el método de búsqueda informado A*. • La heurística que se usara es Distancia Manhattan Total. • Estructuras de datos que se usaran: • Nodos cerrados: pila. • Nodos abiertos: cola con prioridad.
  • 8. Entorno de desarrollo seleccionado • Lenguaje : Java • Se escogió resolver el problema con este lenguaje con el que estamos mas familiarizados a través de su interfaz de consola. • IDE: Netbeans v8.0
  • 9. Implementación • Se desarrollo una estructura orientada a objetos con la finalidad de una legible comprensión por parte de usuarios terceros. Cada clase realiza una tarea especifica que es usada en la clase principal.
  • 10. Las clases • A continuación se muestran las clases desarroladas:
  • 11. Class GeneradorDeNodoInicial • Consiste en almacenar los números del 1 al 9 en un arreglo para luego extraerlos de forma aleatoria a través de su numero de posición. La posición seleccionada será eliminada.
  • 12. Class BuscarCoordenadas Consiste en visitar todas las casillas de la matriz del nodo actual con el objetivo de saber la localización del espacio representado por el numero 9 y asi poder realizar los siguientes movimientos.
  • 13. Class CompararNodos • Consiste en hacer una comparación entre el nodo actual y el nodo meta. Se toma cada elemento de la matriz y se compara con su contraparte en la matriz objetivo. Si surge una diferencia el método se detiene y devuelve false, de lo contrario devolvería true y finaliza la búsqueda.
  • 14. Class CalcularManhattan • Consiste en la suma acumulada de las distancias en X y Y de cada ficha desde su estado actual hasta la meta. El método devuelve el valor acumulado el cual se guardara en el campo h del nodo.
  • 15. Class MoverFicha • Consiste en realizar el intercambio del elemento con el numero 9 que representa el espacio vacío con alguna de su ficha contiguas a la derecha, abajo, izquierda o arriba según sea permitido. El método realiza el movimiento o en su defecto un nulo si no se puede mover porque esta contigua al limite.
  • 16. Class NodaCerrado • Clase que nos sirve para generar objetos tipo NodoCerrado para agregarlos a la cola de cerrados.
  • 17. Class NodoFrontera • Clase que nos sirve para crear objetos de tipo NodoFrontera que serian los nodo abierto o frontera que están pendientes por visitar.
  • 18. Class BuscarCerrados • Esta clase realiza una búsqueda en la cola de nodos cerrados comparándolos con el nodo actual. La clase devuelve un false de no encontrarse, de lo contrario devuelve un true.
  • 19. Class BusquedaFronteras • Esta clase realiza una búsqueda en la cola de nodos frontera comparándolos con el actual que resulta del ordenamiento por prioridad. El método devuelve un true de encontrarse el nodo o en su defecto devuelve un false.
  • 20. Class BusquedaPadre • Esta clase realiza una búsqueda a través de los identificadores de los nodos para encontrar el padre del nodo actual. El método devuelve el identificados del padre o de lo contrario devuelve un nulo.
  • 21. Class ImprimirNodo • Este método imprime los nodos que representan el camino desde el nodo inicial al nodo meta.
  • 22. Demostración del Código • A continuación se hace una demostración del código desarrollado en la consola de NetBeans.
  • 23. Gracias! • Fin de la presentación.