SlideShare una empresa de Scribd logo
1 de 11
Problema de las 8 Reinas




 Algoritmos Computacionales
      Esteban González
 http://esteban-gzz.blogspot.
             com/
Problema de las 8 Reinas

  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 fichas que se encuentren en su misma fila,
                   columna o diagonal.

  Las 8 reinas consiste en colocar sobre un tablero de
 ajedrez ocho reinas sin que estas se den jaques entre
                         ellas.
Planteamiento




      Las reinas en el ajedrez se pueden atacar
    horizontalmente, verticalmente y en diagonal.

  Se busca encontrar el acomodo de 8 reinas en un
  tablero de 8 por 8, donde ninguna reina de jaque a
                         otra.
Planteamiento

 Algoritmo:

 - Colocar la reina n en la primera casilla válida de la fila
 n

 - Si una reina no puede llegar a colocarse en ninguna
 casilla, se vuelve atrás y se cambia la posición de la
 reina n-1

 - Intentar colocar las reinas restantes en las filas que
 quedan
Problema de las n Reinas

 El problema de las ocho Reinas es generalizado por el
              problema de las n Reinas.

 El problema consiste en colocar n Reinas en un tablero
 de ajedrez de de tal manera que ninguna de las Reinas
                quede atacando a otra.

 El tamaño del tablero de ajedrez para este problema es
                     de tamaño n*n.

    Existe un algoritmo que resuelve este problema
           generalizado usando la recursión.
Algoritmo




Esta es la función recursiva para encontrar el orden para
acomodar a las Reinas. Vemos que cuando se llama a si
misma se tiene que incrementar el número de la fila en 1.
Algoritmo




 Del código anterior tenemos una condición antes de la
 llamada recursiva que es "comprobar". Lo que hace es
verificar si ya hay alguna colocada en la fila, la columna y
                        su diagonal.
Ejemplo




   En el ejemplo de corrida cuando colocamos como
argumento el valor de 8, que es tomado como el numero
     de reinas, nos imprime como queda la tabla.
Ejemplo




Así quedaría nuestro tablero para el caso clásico de las 8
                         reinas.

Comprobamos visualmente que ninguna da jaque a otra.
Existe forma iterativa

 La recursión puede evitarse si pensamos en la estrategia
de backtracking como una búsqueda en profundidad en un
árbol implícito en el que cada nodo interno es un arreglo A
  con una asignación parcial de valores para k variables.

 El parámetro k es el nivel de cada nodo y los nodos hoja
consisten en asignaciones completas de variables para A,
                 esto es k = n = length[A].

Una búsqueda iterativa puede hacerse bajando a través de
    los nodos siempre que sean prometedores, si nos
topamos con uno que no sea prometedor subimos de nivel
                    restando uno a k.
Bibliografía

http://en.wikipedia.org/wiki/Eight_queens_puzzle
http://www.slideshare.net/mejiaff/vuelta-atras
http://es.wikipedia.org/wiki/Problema_de_las_ocho_reinas

Código del algoritmo:
http://elvex.ugr.es/decsai/c/#problemas

Más contenido relacionado

La actualidad más candente

Distribución y fragmentación de datos
Distribución y fragmentación  de datosDistribución y fragmentación  de datos
Distribución y fragmentación de datos
José Mendoza
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
Blanca Parra
 
Algoritmo de planificación srt
Algoritmo de planificación srtAlgoritmo de planificación srt
Algoritmo de planificación srt
Carlos Solano
 

La actualidad más candente (20)

Distribución y fragmentación de datos
Distribución y fragmentación  de datosDistribución y fragmentación  de datos
Distribución y fragmentación de datos
 
Casos uso uml
Casos uso umlCasos uso uml
Casos uso uml
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
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
 
ejercicios de recorrido de grafos (arboles)
ejercicios de recorrido de grafos (arboles) ejercicios de recorrido de grafos (arboles)
ejercicios de recorrido de grafos (arboles)
 
Importancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datosImportancia de la implementación de las listas para la estructura de datos
Importancia de la implementación de las listas para la estructura de datos
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
 
Programación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesProgramación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operaciones
 
2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automata2...2 expresiones regulares, cerradura, fractales, automata
2...2 expresiones regulares, cerradura, fractales, automata
 
Arboles multicamino
Arboles  multicaminoArboles  multicamino
Arboles multicamino
 
Unidad 4 Mad Modelado Analisis Casos De Uso
Unidad 4 Mad Modelado Analisis Casos De UsoUnidad 4 Mad Modelado Analisis Casos De Uso
Unidad 4 Mad Modelado Analisis Casos De Uso
 
Tabla De Transicion
Tabla De TransicionTabla De Transicion
Tabla De Transicion
 
Procesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o HebrasProcesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o Hebras
 
Algoritmo divide y vencerás
Algoritmo divide y vencerásAlgoritmo divide y vencerás
Algoritmo divide y vencerás
 
Algoritmo de planificación srt
Algoritmo de planificación srtAlgoritmo de planificación srt
Algoritmo de planificación srt
 
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
 
Teoria de grafos
Teoria de grafosTeoria de grafos
Teoria de grafos
 
Traductor y su estructura
Traductor y su estructuraTraductor y su estructura
Traductor y su estructura
 

Más de Esteban Gonzalez (10)

Proyecto Fase 4 - PSA
Proyecto Fase 4 - PSAProyecto Fase 4 - PSA
Proyecto Fase 4 - PSA
 
Proyecto Fase 3 - PSA
Proyecto Fase 3 - PSAProyecto Fase 3 - PSA
Proyecto Fase 3 - PSA
 
Assignment 2 Practical
Assignment 2 PracticalAssignment 2 Practical
Assignment 2 Practical
 
Assignment 2 Theoretical
Assignment 2 TheoreticalAssignment 2 Theoretical
Assignment 2 Theoretical
 
Proyecto Fase 1 - PSA
Proyecto Fase 1 - PSAProyecto Fase 1 - PSA
Proyecto Fase 1 - PSA
 
Demostración final
Demostración finalDemostración final
Demostración final
 
Presentación final
Presentación finalPresentación final
Presentación final
 
Proyecto de Física Moderna
Proyecto de Física ModernaProyecto de Física Moderna
Proyecto de Física Moderna
 
Especificación técnica
Especificación técnicaEspecificación técnica
Especificación técnica
 
Presentación de proyecto
Presentación de proyectoPresentación de proyecto
Presentación de proyecto
 

Último

TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
NadiaMartnez11
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
El Fortí
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 

Último (20)

Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptxEL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 

Problema de las 8 reinas

  • 1. Problema de las 8 Reinas Algoritmos Computacionales Esteban González http://esteban-gzz.blogspot. com/
  • 2. Problema de las 8 Reinas 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 fichas que se encuentren en su misma fila, columna o diagonal. Las 8 reinas consiste en colocar sobre un tablero de ajedrez ocho reinas sin que estas se den jaques entre ellas.
  • 3. Planteamiento Las reinas en el ajedrez se pueden atacar horizontalmente, verticalmente y en diagonal. Se busca encontrar el acomodo de 8 reinas en un tablero de 8 por 8, donde ninguna reina de jaque a otra.
  • 4. Planteamiento Algoritmo: - Colocar la reina n en la primera casilla válida de la fila n - Si una reina no puede llegar a colocarse en ninguna casilla, se vuelve atrás y se cambia la posición de la reina n-1 - Intentar colocar las reinas restantes en las filas que quedan
  • 5. Problema de las n Reinas El problema de las ocho Reinas es generalizado por el problema de las n Reinas. El problema consiste en colocar n Reinas en un tablero de ajedrez de de tal manera que ninguna de las Reinas quede atacando a otra. El tamaño del tablero de ajedrez para este problema es de tamaño n*n. Existe un algoritmo que resuelve este problema generalizado usando la recursión.
  • 6. Algoritmo Esta es la función recursiva para encontrar el orden para acomodar a las Reinas. Vemos que cuando se llama a si misma se tiene que incrementar el número de la fila en 1.
  • 7. Algoritmo Del código anterior tenemos una condición antes de la llamada recursiva que es "comprobar". Lo que hace es verificar si ya hay alguna colocada en la fila, la columna y su diagonal.
  • 8. Ejemplo En el ejemplo de corrida cuando colocamos como argumento el valor de 8, que es tomado como el numero de reinas, nos imprime como queda la tabla.
  • 9. Ejemplo Así quedaría nuestro tablero para el caso clásico de las 8 reinas. Comprobamos visualmente que ninguna da jaque a otra.
  • 10. Existe forma iterativa La recursión puede evitarse si pensamos en la estrategia de backtracking como una búsqueda en profundidad en un árbol implícito en el que cada nodo interno es un arreglo A con una asignación parcial de valores para k variables. El parámetro k es el nivel de cada nodo y los nodos hoja consisten en asignaciones completas de variables para A, esto es k = n = length[A]. Una búsqueda iterativa puede hacerse bajando a través de los nodos siempre que sean prometedores, si nos topamos con uno que no sea prometedor subimos de nivel restando uno a k.