SlideShare una empresa de Scribd logo
UNIVERSIDAD NACIONAL DE TRUJILLO
FACULTAD DE CIENCIAS FISICAS Y
MATEMATICAS
ESCUELA ACADEMICO PROFESIONAL DE
INFORMATICA
Programación en Lógica
TEMA: Problema de las 8 Reinas
DOCENTE: Arturo Díaz Pulido
INTEGRANTES:
o REBAZA CASTAÑEDA, JHOSER ALBERTO
TRUJILLO – PERU
2014
2
ÍNDICE
Índice…………………………………………………………………………2
Dedicatoria…………………………………………………………………...3
Introducción………………………………………………………………….4
Marco Teorico……...……......………………………………………………5
Problema de las Ocho reinas ……………………………………………….6
Implementación …………………….………………………………………9
Conclusión…………………………………………………………………11
Referencias bibliográficas…………………………………………………12
3
DEDICATORIA
Dedicado a toda la comunidad estudiantil de Ciencia de la Computación, con
el fin de promover la investigación, poniendo al alcance de sus manos un formato que
sabemos será de mucho agrado para las futuras aplicaciones que le puedan dar.
4
INTRODUCCION
El problema de las ocho reinas se trata de un acertijo en el que se colocan
ocho reinas sin que se amenacen. Fue propuesto por el ajedrecista alemán Max
Bezzel en 1848. En el juego de ajedrez la reina amenaza a aquellas piezas que se
encuentren en su misma fila, columna o diagonal. Las 8 reinas consisten en colocar
sobre un tablero de ajedrez ocho reinas sin que estas se den jaques entre ellas.
5
1.- MARCO TEORICO
Mucho se ha hablado sobre este tema, pero en verdad lo único que puede afirmarse
con propiedad es que el ajedrez es tan antiguo como la civilización, ya que en
excavaciones efectuadas en la Mesopotamia (región ubicada entre los ríos Tigres y
Eufrates) se han encontrado objetos que demostraban que el ajedrez o un juego
similar existía por lo menos 4000 años antes de Cristo.
Duncan Forbes en su libro "Historia del Ajedrez" (Londres 1860) señala que el
ajedrez tiene su origen en la India, más concretamente en el Valle del Indo, y data
del siglo VI D.C. y a SUSA BEN DAHIR el HINDI como su inventor.
El problema fue originalmente propuesto en 1848 por el ajedrecista Max Bezzel, y
durante los años, muchos matemáticos, incluyendo a Gauss y a Georg Cantor, han
trabajado en este problema y lo han generalizado a n-reinas. Las primeras soluciones
fueron ofrecidas por Franz Nauck en 1850. Nauck también se abocó a las n-reinas (en
un tablero de nxn de tamaño arbitrario). En 1874, S. Günther propuso un método para
hallar las soluciones usando determinantes, y J.W.L. Glaisher redefinió su
aproximación. Edsger Dijkstra usó este problema en 1972 para ilustrar el poder de la
llamada programación estructurada. Él publicó una descripción altamente detallada
del desarrollo del algoritmo de backtracking, "depth-first".
Este acertijo apareció en el popular juego de computadora de los '90 llamado "The
7th Guest".
6
PROBLEMA DE LAS OCHO REINAS
El problema de las ocho reinas y en general de las N reinas, se basa en
colocar 8 reinas en un tablero de 8 8 (o N en un tablero de N N, si el problema se
generaliza), de forma que en no puede haber dos piezas en la misma línea horizontal,
vertical o diagonal.
Este programa has sido muy estudiado por los matemáticos. Se trata de un
problema NP-Completo que no tiene solución para N=2 y N=3. Para N=4 tiene una
única solución. Para N=8 hay más de 80 soluciones dependiendo de las restricciones
que se impongan.
Una forma de abordar el problema se lleva a cabo mediante la construcción de un
predicado en Prolog del tipo siguiente: reinas(N, Solucion), donde N representa las
dimensiones del tablero y el número de reinas y Solucion es una lista que contiene la
permutación de la lista de números que resuelven el problema. Los índices de dicha
lista representan la columna en la que se encuentra una reina y el número que
almacena la posición o índice representa la fila donde la reina está colocada. Así, para
el ejemplo mostrado en la Figura 1, tenemos que R=[2,4,1,3].
Este problema es resuelto, de modo clásico, por el método de prueba y error, luego se
adapta perfectamente a un algoritmo de backtracking. Básicamente, el problema se
reduce a colocar una reina, e intentar repetir el proceso teniendo en cuenta la reina
colocada. Si logramos poner todas las reinas el problema se ha resuelto, en caso
contrario, deshacemos lo que llevamos hasta ahora y probamos con otra combinación.
Por tanto, hemos de generar un conjunto de permutaciones y seleccionar aquella que
cumpla los requisitos impuestos por el juego.
7
Número de soluciones
Soluciones al problema de las ocho reinas
El problema de las ocho reinas tiene 92 soluciones, de las cuales 12
son esencialmente distintas, es decir las 92 soluciones existentes se pueden obtener
a partir de simetrías, rotaciones y traslaciones de las 12 soluciones únicas, que se
muestran a continuación:
8
9
Implementación
A continuación se muestra una posible implementación del anterior algoritmo
en Prolog.
% Autor: REBAZA CASTAÑEDA JHOSER ALBERTO
% Fecha: 01/07/2014
numeros(1).
numeros(2).
numeros(3).
numeros(4).
numeros(5).
numeros(6).
numeros(7).
numeros(8).
reinas:-numeros(X1), numeros(X2),numeros(X3), numeros(X4), numeros(X5),
numeros(X6), numeros(X7),numeros(X8),
solucion([X1,X2,X3,X4,X5,X6,X7,X8],1),
imprimir([X1,X2,X3,X4,X5,X6,X7,X8]).
solucion([],_).
solucion([X|Cola],C):-not(pertenece(X,Cola)),C1 is C+1, calculo(X,C,C1,Cola),
solucion(Cola,C1).
pertenece(X,[X|_]).
pertenece(X,[_|Z]):-pertenece(X,Z).
10
calculo(_,_,_,[]).
calculo(X,Y,Y2,[X2|Cola]):-R1 is X-X2,Y3 is Y2+1,R2 is Y-Y2,Ab1 is abs(R1),Ab2
is abs(R2),Ab1=Ab2,calculo(X,Y,Y3,Cola).
imprimir([]).
imprimir([X|Cola]):-mostrarFila(1,X),writeln(''),imprimir(Cola).
mostrarFila(8,8):-write('R ').
mostrarFila(8,X):-8=X,write('0 ').
mostrarFila(X,X):-X<8,write('R '),X1 is X+1,mostrarFila(X1,X).
mostrarFila(C,X):-C<8,C=X,write('0 '),C1 is C+1,mostrarFila(C1,X).
11
CONCLUCIÓN
El problema de las 8 reinas es un juego de habilidades en el cual
desarrollamos nuestras capacidades de lograr una mejor manera de ver las diferentes
propuestas que podemos dar a una incógnita como esta.
12
REFERENCIAS BIBLIOGRÁFICAS.
 http://es.scribd.com/doc/49374147/Problema-de-Las-8-Reinasl
 http://www.uhu.es/nieves.pavon/pprogramacion/temario/tema4/tema4.html
 http://ende.cc/agujero/juegos/8reinas_R.html
 http://es.wikipedia.org/wiki/Problema_de_las_ocho_reinas
 http://www.taringa.net/posts/ciencia-educacion/7197136/Ajedrez-El-
problema-de-las-8-damas.html
 http://aitoreus.blogspot.com/2010/02/programita-de-las-8-reinas-con.html
 Watkins, John J. (2004). Across the Board: The Mathematics of Chess
Problems. Princeton: Princeton University Press. ISBN 0-691-11503-6.
 Brassard, Gilles; Bratley, Paul (1997). «Exploración de grafos». Fundamentos de
Algoritmia. Madrid: PRENTICE HALL. ISBN 84-89660-00-X.

Más contenido relacionado

La actualidad más candente

Procedimientos especiales
Procedimientos especialesProcedimientos especiales
Procedimientos especiales
Anel Sosa
 
8 reinas
8 reinas8 reinas
8 reinas
Cesar Zuñiga
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
Yolanda Uruchima
 
RED De Retro-propagación Neuronal
RED De Retro-propagación NeuronalRED De Retro-propagación Neuronal
RED De Retro-propagación Neuronal
ESCOM
 
Clase 2
Clase 2Clase 2
ARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdfARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdf
DavidVeraOlivera
 
Búsqueda Primero el Mejor
Búsqueda Primero el MejorBúsqueda Primero el Mejor
Búsqueda Primero el Mejor
Tutor4uDev
 
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
 
Programación geométrica
Programación geométricaProgramación geométrica
Programación geométrica
Alvaro Miguel Naupay Gusukuma
 
Backtracking
BacktrackingBacktracking
Backtracking
cristian torres
 
Algoritmos de enrutamiento
Algoritmos de enrutamientoAlgoritmos de enrutamiento
Algoritmos de enrutamiento
Javier Peinado I
 
Presentación de logs
Presentación de logsPresentación de logs
Presentación de logs
Matías Leal
 
Terminología de Redes
Terminología de RedesTerminología de Redes
Terminología de Redes
ElizabethDeSousa
 
Construccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
Construccion , Diseño y Entrenamiento de Redes Neuronales ArtificialesConstruccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
Construccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
ESCOM
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
Ignacio Vergara
 
Problema de las 8 reinas
Problema de las 8 reinasProblema de las 8 reinas
Problema de las 8 reinas
José Rodriguez Mantilla
 
Actividad 1 practica redes inalambricas (1)
Actividad 1 practica redes inalambricas (1)Actividad 1 practica redes inalambricas (1)
Actividad 1 practica redes inalambricas (1)
dianamarcela0611
 
sistemas expertos
sistemas expertossistemas expertos
Lecture 13 modulacion digital parte 1
Lecture 13  modulacion digital   parte 1Lecture 13  modulacion digital   parte 1
Lecture 13 modulacion digital parte 1
nica2009
 
Presentacion Modelo Espiral Prototipo
Presentacion Modelo Espiral PrototipoPresentacion Modelo Espiral Prototipo
Presentacion Modelo Espiral Prototipo
Rosario M.
 

La actualidad más candente (20)

Procedimientos especiales
Procedimientos especialesProcedimientos especiales
Procedimientos especiales
 
8 reinas
8 reinas8 reinas
8 reinas
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
 
RED De Retro-propagación Neuronal
RED De Retro-propagación NeuronalRED De Retro-propagación Neuronal
RED De Retro-propagación Neuronal
 
Clase 2
Clase 2Clase 2
Clase 2
 
ARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdfARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdf
 
Búsqueda Primero el Mejor
Búsqueda Primero el MejorBúsqueda Primero el Mejor
Búsqueda Primero el Mejor
 
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.
 
Programación geométrica
Programación geométricaProgramación geométrica
Programación geométrica
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Algoritmos de enrutamiento
Algoritmos de enrutamientoAlgoritmos de enrutamiento
Algoritmos de enrutamiento
 
Presentación de logs
Presentación de logsPresentación de logs
Presentación de logs
 
Terminología de Redes
Terminología de RedesTerminología de Redes
Terminología de Redes
 
Construccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
Construccion , Diseño y Entrenamiento de Redes Neuronales ArtificialesConstruccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
Construccion , Diseño y Entrenamiento de Redes Neuronales Artificiales
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
 
Problema de las 8 reinas
Problema de las 8 reinasProblema de las 8 reinas
Problema de las 8 reinas
 
Actividad 1 practica redes inalambricas (1)
Actividad 1 practica redes inalambricas (1)Actividad 1 practica redes inalambricas (1)
Actividad 1 practica redes inalambricas (1)
 
sistemas expertos
sistemas expertossistemas expertos
sistemas expertos
 
Lecture 13 modulacion digital parte 1
Lecture 13  modulacion digital   parte 1Lecture 13  modulacion digital   parte 1
Lecture 13 modulacion digital parte 1
 
Presentacion Modelo Espiral Prototipo
Presentacion Modelo Espiral PrototipoPresentacion Modelo Espiral Prototipo
Presentacion Modelo Espiral Prototipo
 

Destacado

Donacion t202 e10_mgj_frr.
Donacion t202 e10_mgj_frr.Donacion t202 e10_mgj_frr.
Donacion t202 e10_mgj_frr.
RFlorivera
 
123
123123
Scoopit
ScoopitScoopit
Ensayo sistema anti error
Ensayo sistema anti errorEnsayo sistema anti error
Ensayo sistema anti error
Oscar Pulido
 
Comercio electrónico (1)
Comercio electrónico (1)Comercio electrónico (1)
Comercio electrónico (1)
Brynner07T
 
Crianza abandono negligencia y... +
Crianza abandono negligencia y... +Crianza abandono negligencia y... +
Crianza abandono negligencia y... +
Corporacion Humanizando
 
"Oportunidades y retos del e-learning en Colombia"
"Oportunidades y retos del e-learning en Colombia""Oportunidades y retos del e-learning en Colombia"
"Oportunidades y retos del e-learning en Colombia"
CRISEL BY AEFOL
 
Tarea 1
Tarea 1Tarea 1
Cancer de colon seguimiento
Cancer de colon seguimientoCancer de colon seguimiento
Cancer de colon seguimiento
Dr. Arsenio Torres Delgado
 
Plan anticorrupcion 2013.doc
Plan anticorrupcion 2013.docPlan anticorrupcion 2013.doc
Plan anticorrupcion 2013.doc
jhonaloe
 
Aprendiendo a leer( las profesiones)
Aprendiendo a leer( las profesiones)Aprendiendo a leer( las profesiones)
Aprendiendo a leer( las profesiones)
ITLAC, ICOMI Computadoras y Accesorios
 
Soladura al-arco
Soladura al-arcoSoladura al-arco
Soladura al-arco
Ariel Adolfo Minero Nava
 
Yutii
YutiiYutii
Conferencia brasil, el caribe y los afrocolombianos
Conferencia brasil, el caribe y los afrocolombianos Conferencia brasil, el caribe y los afrocolombianos
Conferencia brasil, el caribe y los afrocolombianos
Fundación Acua
 
Presentacion blog
Presentacion blogPresentacion blog
Presentacion blog
j_leon
 
Modelo cuantitativo yasuni_itt_espanol
Modelo cuantitativo yasuni_itt_espanolModelo cuantitativo yasuni_itt_espanol
Modelo cuantitativo yasuni_itt_espanol
adrianyta_sarely
 
ciclo celular
ciclo celularciclo celular
ciclo celular
bryansithoo
 
Vivisg
VivisgVivisg
Vivisg
vivisg
 
UPCnet: la implantación del Moodle como Campus Virtual en la universidad
UPCnet: la implantación del Moodle como Campus Virtual en la universidadUPCnet: la implantación del Moodle como Campus Virtual en la universidad
UPCnet: la implantación del Moodle como Campus Virtual en la universidad
CRISEL BY AEFOL
 
Chuchuhua sandra y bety
Chuchuhua sandra y betyChuchuhua sandra y bety
Chuchuhua sandra y bety
Sandii Peña
 

Destacado (20)

Donacion t202 e10_mgj_frr.
Donacion t202 e10_mgj_frr.Donacion t202 e10_mgj_frr.
Donacion t202 e10_mgj_frr.
 
123
123123
123
 
Scoopit
ScoopitScoopit
Scoopit
 
Ensayo sistema anti error
Ensayo sistema anti errorEnsayo sistema anti error
Ensayo sistema anti error
 
Comercio electrónico (1)
Comercio electrónico (1)Comercio electrónico (1)
Comercio electrónico (1)
 
Crianza abandono negligencia y... +
Crianza abandono negligencia y... +Crianza abandono negligencia y... +
Crianza abandono negligencia y... +
 
"Oportunidades y retos del e-learning en Colombia"
"Oportunidades y retos del e-learning en Colombia""Oportunidades y retos del e-learning en Colombia"
"Oportunidades y retos del e-learning en Colombia"
 
Tarea 1
Tarea 1Tarea 1
Tarea 1
 
Cancer de colon seguimiento
Cancer de colon seguimientoCancer de colon seguimiento
Cancer de colon seguimiento
 
Plan anticorrupcion 2013.doc
Plan anticorrupcion 2013.docPlan anticorrupcion 2013.doc
Plan anticorrupcion 2013.doc
 
Aprendiendo a leer( las profesiones)
Aprendiendo a leer( las profesiones)Aprendiendo a leer( las profesiones)
Aprendiendo a leer( las profesiones)
 
Soladura al-arco
Soladura al-arcoSoladura al-arco
Soladura al-arco
 
Yutii
YutiiYutii
Yutii
 
Conferencia brasil, el caribe y los afrocolombianos
Conferencia brasil, el caribe y los afrocolombianos Conferencia brasil, el caribe y los afrocolombianos
Conferencia brasil, el caribe y los afrocolombianos
 
Presentacion blog
Presentacion blogPresentacion blog
Presentacion blog
 
Modelo cuantitativo yasuni_itt_espanol
Modelo cuantitativo yasuni_itt_espanolModelo cuantitativo yasuni_itt_espanol
Modelo cuantitativo yasuni_itt_espanol
 
ciclo celular
ciclo celularciclo celular
ciclo celular
 
Vivisg
VivisgVivisg
Vivisg
 
UPCnet: la implantación del Moodle como Campus Virtual en la universidad
UPCnet: la implantación del Moodle como Campus Virtual en la universidadUPCnet: la implantación del Moodle como Campus Virtual en la universidad
UPCnet: la implantación del Moodle como Campus Virtual en la universidad
 
Chuchuhua sandra y bety
Chuchuhua sandra y betyChuchuhua sandra y bety
Chuchuhua sandra y bety
 

Similar a Problema de las 8 reinas rebaza castañeda jhoser alberto

Estrategia para resolver situacion problema de matematica
Estrategia para resolver situacion problema de matematicaEstrategia para resolver situacion problema de matematica
Estrategia para resolver situacion problema de matematica
jaime taype castillo
 
3restos numero
3restos numero3restos numero
3restos numero
Deivin Mejía
 
Ajedrez y matemáticas
Ajedrez y matemáticasAjedrez y matemáticas
Ajedrez y matemáticas
LUIS MIGUEL RANGEL ALVAREZ
 
Enfoque
EnfoqueEnfoque
Combinatoria Primera Parte.pdf
Combinatoria Primera Parte.pdfCombinatoria Primera Parte.pdf
Combinatoria Primera Parte.pdf
EnriqueJulcaDelgado
 
Algoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemasAlgoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemas
Américo Royci Mamani Nina
 
Solucionar Problemas Por Medio de Algoritmos
Solucionar Problemas Por Medio de AlgoritmosSolucionar Problemas Por Medio de Algoritmos
Solucionar Problemas Por Medio de Algoritmos
pilgrim15
 
Trabajo colaborativo tres (1)
Trabajo colaborativo tres (1)Trabajo colaborativo tres (1)
Trabajo colaborativo tres (1)
Juan Carlos Restrepo
 
Problemas Olimpiadas
Problemas OlimpiadasProblemas Olimpiadas
Problemas Olimpiadas
fmhervas21
 
EcuacionesSimultaneas.pdf
EcuacionesSimultaneas.pdfEcuacionesSimultaneas.pdf
EcuacionesSimultaneas.pdf
GermnRalCastroMoya1
 
Tarea de word
Tarea de wordTarea de word
Tarea de word
abigailhernandez123
 
Solucionar problemas por medio de algoritmos
Solucionar problemas por medio de algoritmosSolucionar problemas por medio de algoritmos
Solucionar problemas por medio de algoritmos
pilgrim15
 
Matematicas estas ahi
Matematicas estas ahiMatematicas estas ahi
Matematicas estas ahi
Miguel Sanchez Alcántara
 
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptxGuía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
pamela valentina peña gutierrez
 
Back Tracking
Back TrackingBack Tracking
Ecuaciones diofánticas
Ecuaciones diofánticasEcuaciones diofánticas
Ecuaciones diofánticas
Alberto Segura
 
Mdulo 3 niv mt 2010
Mdulo 3 niv mt 2010Mdulo 3 niv mt 2010
Mdulo 3 niv mt 2010
camila machuca hernandez
 
Inecuaciones
InecuacionesInecuaciones
Inecuaciones
jraguasmoreno
 
Inecuaciones
InecuacionesInecuaciones
Inecuaciones
jraguasmoreno
 
Sistemas de ecuaciones lineales
Sistemas de ecuaciones linealesSistemas de ecuaciones lineales
Sistemas de ecuaciones lineales
mari_gonzalez
 

Similar a Problema de las 8 reinas rebaza castañeda jhoser alberto (20)

Estrategia para resolver situacion problema de matematica
Estrategia para resolver situacion problema de matematicaEstrategia para resolver situacion problema de matematica
Estrategia para resolver situacion problema de matematica
 
3restos numero
3restos numero3restos numero
3restos numero
 
Ajedrez y matemáticas
Ajedrez y matemáticasAjedrez y matemáticas
Ajedrez y matemáticas
 
Enfoque
EnfoqueEnfoque
Enfoque
 
Combinatoria Primera Parte.pdf
Combinatoria Primera Parte.pdfCombinatoria Primera Parte.pdf
Combinatoria Primera Parte.pdf
 
Algoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemasAlgoritmos+y+solucion+de+problemas
Algoritmos+y+solucion+de+problemas
 
Solucionar Problemas Por Medio de Algoritmos
Solucionar Problemas Por Medio de AlgoritmosSolucionar Problemas Por Medio de Algoritmos
Solucionar Problemas Por Medio de Algoritmos
 
Trabajo colaborativo tres (1)
Trabajo colaborativo tres (1)Trabajo colaborativo tres (1)
Trabajo colaborativo tres (1)
 
Problemas Olimpiadas
Problemas OlimpiadasProblemas Olimpiadas
Problemas Olimpiadas
 
EcuacionesSimultaneas.pdf
EcuacionesSimultaneas.pdfEcuacionesSimultaneas.pdf
EcuacionesSimultaneas.pdf
 
Tarea de word
Tarea de wordTarea de word
Tarea de word
 
Solucionar problemas por medio de algoritmos
Solucionar problemas por medio de algoritmosSolucionar problemas por medio de algoritmos
Solucionar problemas por medio de algoritmos
 
Matematicas estas ahi
Matematicas estas ahiMatematicas estas ahi
Matematicas estas ahi
 
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptxGuía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
Guía n° 13 Sistema de Ecuaciones lineales Metodo Iguación y cramer.pptx
 
Back Tracking
Back TrackingBack Tracking
Back Tracking
 
Ecuaciones diofánticas
Ecuaciones diofánticasEcuaciones diofánticas
Ecuaciones diofánticas
 
Mdulo 3 niv mt 2010
Mdulo 3 niv mt 2010Mdulo 3 niv mt 2010
Mdulo 3 niv mt 2010
 
Inecuaciones
InecuacionesInecuaciones
Inecuaciones
 
Inecuaciones
InecuacionesInecuaciones
Inecuaciones
 
Sistemas de ecuaciones lineales
Sistemas de ecuaciones linealesSistemas de ecuaciones lineales
Sistemas de ecuaciones lineales
 

Problema de las 8 reinas rebaza castañeda jhoser alberto

  • 1. UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE CIENCIAS FISICAS Y MATEMATICAS ESCUELA ACADEMICO PROFESIONAL DE INFORMATICA Programación en Lógica TEMA: Problema de las 8 Reinas DOCENTE: Arturo Díaz Pulido INTEGRANTES: o REBAZA CASTAÑEDA, JHOSER ALBERTO TRUJILLO – PERU 2014
  • 2. 2 ÍNDICE Índice…………………………………………………………………………2 Dedicatoria…………………………………………………………………...3 Introducción………………………………………………………………….4 Marco Teorico……...……......………………………………………………5 Problema de las Ocho reinas ……………………………………………….6 Implementación …………………….………………………………………9 Conclusión…………………………………………………………………11 Referencias bibliográficas…………………………………………………12
  • 3. 3 DEDICATORIA Dedicado a toda la comunidad estudiantil de Ciencia de la Computación, con el fin de promover la investigación, poniendo al alcance de sus manos un formato que sabemos será de mucho agrado para las futuras aplicaciones que le puedan dar.
  • 4. 4 INTRODUCCION El problema de las ocho reinas se trata de un acertijo en el que se colocan ocho reinas sin que se amenacen. Fue propuesto por el ajedrecista alemán Max Bezzel en 1848. En el juego de ajedrez la reina amenaza a aquellas piezas que se encuentren en su misma fila, columna o diagonal. Las 8 reinas consisten en colocar sobre un tablero de ajedrez ocho reinas sin que estas se den jaques entre ellas.
  • 5. 5 1.- MARCO TEORICO Mucho se ha hablado sobre este tema, pero en verdad lo único que puede afirmarse con propiedad es que el ajedrez es tan antiguo como la civilización, ya que en excavaciones efectuadas en la Mesopotamia (región ubicada entre los ríos Tigres y Eufrates) se han encontrado objetos que demostraban que el ajedrez o un juego similar existía por lo menos 4000 años antes de Cristo. Duncan Forbes en su libro "Historia del Ajedrez" (Londres 1860) señala que el ajedrez tiene su origen en la India, más concretamente en el Valle del Indo, y data del siglo VI D.C. y a SUSA BEN DAHIR el HINDI como su inventor. El problema fue originalmente propuesto en 1848 por el ajedrecista Max Bezzel, y durante los años, muchos matemáticos, incluyendo a Gauss y a Georg Cantor, han trabajado en este problema y lo han generalizado a n-reinas. Las primeras soluciones fueron ofrecidas por Franz Nauck en 1850. Nauck también se abocó a las n-reinas (en un tablero de nxn de tamaño arbitrario). En 1874, S. Günther propuso un método para hallar las soluciones usando determinantes, y J.W.L. Glaisher redefinió su aproximación. Edsger Dijkstra usó este problema en 1972 para ilustrar el poder de la llamada programación estructurada. Él publicó una descripción altamente detallada del desarrollo del algoritmo de backtracking, "depth-first". Este acertijo apareció en el popular juego de computadora de los '90 llamado "The 7th Guest".
  • 6. 6 PROBLEMA DE LAS OCHO REINAS El problema de las ocho reinas y en general de las N reinas, se basa en colocar 8 reinas en un tablero de 8 8 (o N en un tablero de N N, si el problema se generaliza), de forma que en no puede haber dos piezas en la misma línea horizontal, vertical o diagonal. Este programa has sido muy estudiado por los matemáticos. Se trata de un problema NP-Completo que no tiene solución para N=2 y N=3. Para N=4 tiene una única solución. Para N=8 hay más de 80 soluciones dependiendo de las restricciones que se impongan. Una forma de abordar el problema se lleva a cabo mediante la construcción de un predicado en Prolog del tipo siguiente: reinas(N, Solucion), donde N representa las dimensiones del tablero y el número de reinas y Solucion es una lista que contiene la permutación de la lista de números que resuelven el problema. Los índices de dicha lista representan la columna en la que se encuentra una reina y el número que almacena la posición o índice representa la fila donde la reina está colocada. Así, para el ejemplo mostrado en la Figura 1, tenemos que R=[2,4,1,3]. Este problema es resuelto, de modo clásico, por el método de prueba y error, luego se adapta perfectamente a un algoritmo de backtracking. Básicamente, el problema se reduce a colocar una reina, e intentar repetir el proceso teniendo en cuenta la reina colocada. Si logramos poner todas las reinas el problema se ha resuelto, en caso contrario, deshacemos lo que llevamos hasta ahora y probamos con otra combinación. Por tanto, hemos de generar un conjunto de permutaciones y seleccionar aquella que cumpla los requisitos impuestos por el juego.
  • 7. 7 Número de soluciones Soluciones al problema de las ocho reinas El problema de las ocho reinas tiene 92 soluciones, de las cuales 12 son esencialmente distintas, es decir las 92 soluciones existentes se pueden obtener a partir de simetrías, rotaciones y traslaciones de las 12 soluciones únicas, que se muestran a continuación:
  • 8. 8
  • 9. 9 Implementación A continuación se muestra una posible implementación del anterior algoritmo en Prolog. % Autor: REBAZA CASTAÑEDA JHOSER ALBERTO % Fecha: 01/07/2014 numeros(1). numeros(2). numeros(3). numeros(4). numeros(5). numeros(6). numeros(7). numeros(8). reinas:-numeros(X1), numeros(X2),numeros(X3), numeros(X4), numeros(X5), numeros(X6), numeros(X7),numeros(X8), solucion([X1,X2,X3,X4,X5,X6,X7,X8],1), imprimir([X1,X2,X3,X4,X5,X6,X7,X8]). solucion([],_). solucion([X|Cola],C):-not(pertenece(X,Cola)),C1 is C+1, calculo(X,C,C1,Cola), solucion(Cola,C1). pertenece(X,[X|_]). pertenece(X,[_|Z]):-pertenece(X,Z).
  • 10. 10 calculo(_,_,_,[]). calculo(X,Y,Y2,[X2|Cola]):-R1 is X-X2,Y3 is Y2+1,R2 is Y-Y2,Ab1 is abs(R1),Ab2 is abs(R2),Ab1=Ab2,calculo(X,Y,Y3,Cola). imprimir([]). imprimir([X|Cola]):-mostrarFila(1,X),writeln(''),imprimir(Cola). mostrarFila(8,8):-write('R '). mostrarFila(8,X):-8=X,write('0 '). mostrarFila(X,X):-X<8,write('R '),X1 is X+1,mostrarFila(X1,X). mostrarFila(C,X):-C<8,C=X,write('0 '),C1 is C+1,mostrarFila(C1,X).
  • 11. 11 CONCLUCIÓN El problema de las 8 reinas es un juego de habilidades en el cual desarrollamos nuestras capacidades de lograr una mejor manera de ver las diferentes propuestas que podemos dar a una incógnita como esta.
  • 12. 12 REFERENCIAS BIBLIOGRÁFICAS.  http://es.scribd.com/doc/49374147/Problema-de-Las-8-Reinasl  http://www.uhu.es/nieves.pavon/pprogramacion/temario/tema4/tema4.html  http://ende.cc/agujero/juegos/8reinas_R.html  http://es.wikipedia.org/wiki/Problema_de_las_ocho_reinas  http://www.taringa.net/posts/ciencia-educacion/7197136/Ajedrez-El- problema-de-las-8-damas.html  http://aitoreus.blogspot.com/2010/02/programita-de-las-8-reinas-con.html  Watkins, John J. (2004). Across the Board: The Mathematics of Chess Problems. Princeton: Princeton University Press. ISBN 0-691-11503-6.  Brassard, Gilles; Bratley, Paul (1997). «Exploración de grafos». Fundamentos de Algoritmia. Madrid: PRENTICE HALL. ISBN 84-89660-00-X.