1. Vamos a resolver el problema del 8 puzle. Partiendo de la

Anuncio
1. Vamos a resolver el problema del 8 puzle. Partiendo de la configuración inicial, mostrada en
la figura de la izquierda, se desea obtener a la configuración final, mostrada en la figura de la
derecha.
Estado inicial
Estado objetivo
1
8
7
3
6
4
2
5
1
8
7
2
6
3
4
5
Para resolver el puzle se utilizarán los operadores que permitan mover el hueco hacia la
izquierda, hacia la derecha, hacia arriba y hacia abajo y su utilización será en ese orden.
En la búsqueda no se explorarán estados repetidos (indicar marcando con una R el nodo
correspondiente).
Indica en el árbol de búsqueda el orden de expansión de los nodos.
a) Búsqueda en profundidad con límite en d=4.
b) Búsqueda A* con la heurística siguiente h(x) = suma_manhattan, siendo la distancia
manhattan para una ficha el número de columnas (en horizontal) y el número de filas (en
vertical) que hay que mover esa ficha para pasar de su posición actual, en el estado x, a
su posición esperada en el estado objetivo, suma_manhattan es la suma de las distancias
manhattan de las 8 fichas. Indica los valores de f, g, h en cada nodo.
¿Es una heurística admisible?
Compara los resultados obtenidos con los dos métodos utilizados.
Responde razonadamente ¿qué algoritmo da mejor resultado para este problema y por qué?
2. El problema de las N-REINAS consiste en poner N reinas en un tablero de N por N, de tal
manera que ninguna de ellas ataca a otra. Una reina ataca a una segunda si están ambas en la
misma fila o columna o diagonal.
Vamos a resolver dicho problema para el caso N=4 (4-REINAS). Para ello, se parte del
tablero vació inicialmente y en cada paso se incorpora al tablero una reina en una posición
del tablero. A la hora de elegir posición del tablero a ocupar, se seguirán estas indicaciones:
i) se elige una columna no utilizada anteriormente, empezando desde la columna izquierda,
ii) se elige una fila, empezando desde la fila superior a la inferior.
Se pide:
a. Formaliza el problema como un CSP (problema de satisfacción de restricciones):
variables y sus dominios, restricciones, estado inicial y final.
b. Realiza los árboles de búsqueda asociados a las estrategias que se indican a continuación.
Anota en cada árbol el orden de expansión de nodos, realiza eliminación de estados
repetidos. Al final indica: el número total de nodos generados, número total de nodos
expandido, el coste de encontrar la solución y el tablero con la solución encontrada.

Búsqueda en anchura.

Búsqueda en profundidad
c. ¿Cuál de las dos estrategias realizadas es mejor? Explica razonadamente el porqué de tu
respuesta.
d. ¿Se te ocurre una manera de “podar” el árbol de búsqueda? Es decir, ¿ves factible
simplificar la generación de algunos estados que podrían ser equivalentes a otros ya
generados?
Descargar