Presentación Sin Título (1)

download Presentación Sin Título (1)

of 15

Transcript of Presentación Sin Título (1)

  • 5/22/2018 Presentaci n Sin T tulo (1)

    1/15

    Problema de las

    8 ReinasProgramacin lgica

    Alumnos:Barreto Valderrama LizbethCam Urquizo DanielGutierrez Romero Fabio

    Profesor:Diaz Pulido

  • 5/22/2018 Presentaci n Sin T tulo (1)

    2/15

    Planteamiento del problema

    El problema original de ocho reinas es intentar enconforma de colocar a ocho reinas en un tablero de ajedrez d

    que no se vean amenazadas una a la otra. Es decir que un

    de 8x8, ninguna de las reinas comparta un fila, col

    diagonal debido a que cada reina puede amenazar a to

    reinas que estn en la misma fila, columna o diagonal.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    3/15

    Posibles posiciones:

    Restricciones:

    Misma fila y columna

    Misma columna

    Dada dos reinas en

    posicin (i,j) (k,l)

  • 5/22/2018 Presentaci n Sin T tulo (1)

    4/15

    Importancia

    Con este problema podemos implementdiferentes soluciones

  • 5/22/2018 Presentaci n Sin T tulo (1)

    5/15

    SolucinEl problema de las ocho

    reinas tiene 92 soluciones, delas cuales 12 son

    esencialmente distintas, es

    decir las 92 soluciones

    existentes se pueden obtener

    a partir de simetras,

    rotaciones y traslaciones de

    las 12 soluciones nicas.

    Podemos considerar que el

    resultado sea solo una

    posicion o genere todas las

    posibles

  • 5/22/2018 Presentaci n Sin T tulo (1)

    6/15

    Soluciones en N reinas

  • 5/22/2018 Presentaci n Sin T tulo (1)

    7/15

    Ingenieria del Proyecto

    Busqueda en profundidadColocar la reina n en la primera casilla validad de si la reina no puede llegar a colocarse en ninguna

    se vuelve atras y se cambia de posicion de la rein

    intentar colocar las reinas restantes en las filas qu

    Explora todos los casos hasta que llegue a las sol

  • 5/22/2018 Presentaci n Sin T tulo (1)

    8/15

  • 5/22/2018 Presentaci n Sin T tulo (1)

    9/15

    Cdigo

    Sabemos que el problema consiste en ubicar las reinas en e

    ajedrez de manera que ningn par de ellas se amenace.Necerepresentacin para la solucin, usaremos una lista de la siguiente

    donde el par [i,Yi] representan las coordenadas de la reina i e

    claramente no puede haber ms de una reina por columna.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    10/15

    Codigo

    El siguiente predicado genera/1 genera las distintas configurac

    tablero.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    11/15

    Cdigo

    Ahora necesitamos un predicado para determinar si una configu

    que las reinas no se ataquen, lo hacemos verificando la lista poizquierda a derecha.

    Esta regla establece que en la configuracin las reinas no se

    primera reina no ataca a las restantes (no_ataca(X,L)) y las rest

    atacan. El caso base es una configuracinvaca.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    12/15

    CodigoAhora generamos y comprobamos

    Esto da solucin al problema, pero no es muy eficiente, d

    comprobamos en PROLOG el tiempo de ejecucin.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    13/15

    Codigo

    Entonces como hay muchas configuraciones que estamos

    sabemos q las reinas siempre estn en distintas filas entoncedescartar a priori modificando el predicado genera/1.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    14/15

    Codigo

    Calculamos la cantidad de soluciones que deberan ser 92 p

    mencionado con el siguiente predicado cantidadSol/1.

  • 5/22/2018 Presentaci n Sin T tulo (1)

    15/15

    Conclusiones

    En cuanto a la optimizacion se puede implementa

    algoritmos geneticos e incluso redes neuronales.Utilidad en la vida real

    Una desventaja de esta implementacion es muy le

    porque su complejidad es exponencial o factorial,

    Ventajas es facil de implementar y entender a comde otros metodos