• No se han encontrado resultados

Relación 1 - Búsqueda en espacios de estados

N/A
N/A
Protected

Academic year: 2021

Share "Relación 1 - Búsqueda en espacios de estados"

Copied!
9
0
0

Texto completo

(1)

Inteligencia Artificial

2014 - 2015

Relaci´

on 1 - B´

usqueda en espacios de estados

Cuestiones

Cuesti´on 1. Enuncia la principal diferencia entre Inteligencia Artificial fuerte e Inteli-gencia Artificial d´ebil.

Cuesti´on 2. Calcular cu´antos nodos se exploran (contando las repeticiones) en el algo-ritmo de profundidad iterativa en un problema de b´usqueda donde el n´umero de sucesores de cualquier nodo es b y la soluci´on se alcanza en el ´ultimo nodo a profundidad n.

Cuesti´on 3. Dar un ejemplo de problema de espacios de estados en el que la soluci´on m´as corta est´e a profundidad p, pero que la b´usqueda en profundidad acotada con cota p no encuentre la soluci´on.

Cuesti´on 4. Supongamos que, para resolver un problema de espacio de estados, dos alumnos deciden representar de la misma manera los estados y los operadores, y definen de la misma manera el estado inicial y las funciones es estado final y aplica. Sin embargo, aplicando el procedimiento de b´usqueda en profundidad obtienen soluciones distintas ¿Por qu´e puede ocurrir esto?

Cuesti´on 5. ¿Son ciertas las siguientes afirmaciones? (justificar la respuesta):

La lista de ABIERTOS usada en los procedimientos de b´usqueda contiene en cada momento todas las hojas del ´arbol de b´usqueda actual.

Las listas de ABIERTOS y CERRADOS no tienen nodos en com´un.

Cuesti´on 6. Explicar en qu´e consiste (y para qu´e se usa) la t´ecnica de “relajaci´on de un problema de espacio de estados”.

Cuesti´on 7. Dar un ejemplo de problema de espacios de estados en los cuales aplicando el algoritmo de primero el mejor con una heur´ıstica admisible no se obtenga soluci´on ´optima.

Cuesti´on 8. Dadas dos funciones heur´ısticas distintas ¿es cierto que siempre una de ellas est´a m´as informada que la otra?

Cuesti´on 9. Dar una ventaja de la b´usqueda en profundidad frente a la b´usqueda en anchura, y viceversa.

Cuesti´on 10. Sea h una heur´ıstica admisible para un problema planteado como espacio de estados y k > 0 un n´umero real ¿Qu´e efecto tiene usar en el algoritmo de b´usqueda por primero el mejor, en lugar de h, la heur´ıstica que a cada estado e le asigna valor k · h(e)? ¿Y en el algoritmo A∗? ¿Var´ıan las respuestas anteriores si sabemos que k < 1?

Cuesti´on 11. Dado un problema de espacio de estados, supongamos que definimos una heur´ıstica h que a cada estado le asigna el coste del camino encontrado por una b´usqueda ´optima que tiene a dicho estado como estado inicial ¿Es h una heur´ıstica admisible? ¿Qu´e inconvenientes presenta el uso de dicha heur´ıstica desde el punto de vista pr´actico?

(2)

Cuesti´on 12. Especificar, razonando la respuesta, un problema de espacio de estados en el que la lista de cerrados en los algoritmos de b´usqueda en anchura y en profundidad sea superflua.

Cuesti´on 13. Consid´erese una modificaci´on del algoritmo A∗ en el que en lugar de usar

f (n) = g(n) + h(n) para ordenar la cola de abiertos se usa f′(n) = (1 − w) · g(n) + w · h(n),

siendo w un n´umero real constante, 0 ≤ w ≤ 1

(a) ¿Qu´e algoritmo de b´usqueda estar´ıamos aplicando si tomamos w = 0? ¿Y w = 0, 5? ¿Y w = 1?

(b) Demostrar que si h es admisible y w ≤ 0, 5 entonces se obtiene soluci´on ´optima si ordenamos la lista ABIERTOS usando f′.

(c) Dar un ejemplo de problema de espacio de estados, una heur´ıstica admisible y un valor w > 0, 5 tal que al ordenar por f′ no se obtenga soluci´on ´optima.

Cuesti´on 14. Responder razonadamente si las siguientes afirmaciones son verdaderas o falsas. Si la respuesta Verdadera debes dar razones que apoyen tu decisi´on. Si la respuesta es Falsa debes dar un ejemplo en el que no se verifique la afirmaci´on.

(a) El algoritmo A∗ siempre encuentra soluci´on ´optima cuando usa una heur´ıstica

ad-misible, aunque algunas de las acciones puedan tener coste cero y haya una cantidad ilimitada de estados.

(b) Si el coste de las acciones es constante, entonces la b´usqueda por primero el mejor con una heur´ıstica admisible siempre devuelve una soluci´on ´optima.

(c) Sea h∗(n) el coste de un camino ´optimo desde el estado n hasta un estado final en un

problema de b´usqueda en espacio de estados. Afirmaci´on: La b´usqueda por primero el mejor usando h∗ como heur´ıstica encuentra siempre una soluci´on ´optima.

Cuesti´on 15. Consid´erense un par de heur´ısticas h1 y h2, ambas admisibles para un

problema representado como espacio de estados. Supuesto que estamos interesados en encontrar una soluci´on de coste m´ınimo en el menor tiempo posible, ¿qu´e heur´ıstica de las siguientes es la mejor para ser usada junto con el algoritmo A∗? (justificar la elecci´on):

• h1.

• h2.

• h3, definida por h3(e) = max{h1(e), h2(e)}.

• h4, definida por h4(e) = h1(e) + h2(e).

Cuesti´on 16. Si tenemos dos heur´ısticas admisibles, una m´as informada que otra, y queremos aplicar el algoritmo A∗ ¿hay alguna diferencia a nivel te´orico entre usar una u

otra? ¿y a nivel pr´actico?

Cuesti´on 17. Dar un ejemplo de problema de espacios de estados con coste, donde todos los costes sean positivos, pero el algoritmo de b´usqueda ´optimano obtenga soluci´on ´optima.

(3)

Problemas

Problema 1. Consideremos el problema de espacios de estados con los estados A, B, C, D, E, F . La lista siguiente representa la relaci´on sucesor de un estado y sus costes asociados:

A → B A → D B → C C → D C → E C → F D → B D → E E → F

5 3 1 1 2 8 1 7 1

El estado incial es A y el estado final es F . Tenemos tambi´en la siguiente heur´ıstica h(A) = 5, h(B) = 4, h(C) = 3, h(D) = 2, h(E) = 1, h(F ) = 0. En caso de igualdad de condiciones, usamos el orden alfab´etico. Se pide:

(a) Aplicar el algoritmo de b´usqueda en profundidad iterativa con cota inicial 2 (usando CERRADOS), rellenando la siguiente tabla y justificando cada uno de los pasos. Indicar expl´ıcitamente la profundidad de la soluci´on encontrada.

PASO ACTUAL PROF(ACTUAL) CERRADOS ABIERTOS

0 ∅ [A]

1 A 0 . . . .

. . . .

(b) Aplicar el algoritmo A∗mediante una tabla como la del apartado anterior,

justifican-do la ordenaci´on de los nojustifican-dos en cada paso. Indicar expl´ıcitamente la profundidad, el coste y el camino de la soluci´on encontrada.

Problema 2. El siguiente grafo representa un espacio de estados. El estado incial es A y hay dos estados finales F y H. El coste de aplicar un operador a un estado es siempre 1. Tenemos tambi´en la siguiente heur´ıstica h(A) = 4, h(B) = 3, h(C) = 3, h(D) = 2, h(E) = 3, h(F ) = 0, h(G) = 1, h(H) = 0. En caso de igualdad de condiciones, usamos el orden alfab´etico. Nota: La profundidad de un nodo en un ´arbol de b´usqueda es el n´umero de acciones que nos han llevado hasta ese nodo desde el nodo ra´ız.

A

B

C

D

E

F

G

H

Se pide:

Aplicar el algoritmo de b´usqueda en profundidad acotada (usando CERRADOS) con cota 3, rellenando la siguiente tabla y justificando cada uno de los pasos. ¿Cu´al es la soluci´on encontrada?

PASO ACTUAL PROF(ACTUAL) CERRADOS ABIERTOS

0 ∅ [A]

1 A 0 . . . .

(4)

Aplicar el algoritmo A∗ mediante una tabla como la del apartado anterior,

justifi-cando la ordenaci´on de los nodos en cada paso. ¿Cu´al es la soluci´on encontrada? ¿Es la heur´ıstica admisible?

Problema 3. El problema de los misioneros y los can´ıbales se enuncia de la siguiente manera: “En la orilla izquierda de un r´ıo se encuentran M misioneros, C can´ıbales y una barca en la que caben como m´aximo P personas; se trata de determinar c´omo pueden trasladarse los misioneros y los can´ıbales a la orilla derecha teniendo en cuenta que en la orilla en la que no est´e la barca no debe haber m´as can´ıbales que misioneros y que queremos minimizar la suma total de cambios de orilla realizados por cada una de las personas”. Plantear el problema como un problema de espacio de estados e indicar qu´e algoritmo de b´usqueda informada y qu´e heur´ıstica se usar´ıa para encontrar una soluci´on.

Problema 4. Consideremos el problema de espacios de estados con los estados A, B, C, D, E, F . La lista siguiente representa la relaci´on sucesor de un estado y sus costes asociados:

A → B A → C B → D D → C C → E D → F

1 4 1 1 2 5

El estado incial es A y los estados finales son E y F . Tenemos tambi´en la siguiente heur´ıstica h(A) = 1, h(B) = 1, h(C) = 0, h(D) = 3, h(E) = 0, h(F ) = 0. En los siguientes apartados representaremos cada nodo por la terna hEstado, Camino − recorrido, V alori, donde V alor es el valor num´erico que nos permite ordenar los abiertos en cada algoritmo. Se pide:

(a) Aplicar el algoritmo de b´usqueda ´optima, rellenando la siguiente tabla y justifi-cando cada uno de los pasos. Indicar expl´ıcitamente la soluci´on encontrada.

PASO EST. ACTUAL PROF(ACTUAL) CERRADOS ABIERTOS

0 ∅ {hA, [A], 0i}

1 A 0 . . . .

. . . .

(b) Aplicar el algoritmo A∗ mediante una tabla como la del apartado anterior,

justifi-cando la ordenaci´on de los nodos en cada paso. Indicar expl´ıcitamente el coste y el camino de la soluci´on encontrada.

Problema 5. Dado el conjunto de valores enteros I = {i1, i2, i3, ..., iN}, encontrar un

subconjunto no vac´ıo S ⊂ I cuyos elementos sumen cero.

1. Formaliza este problema como problema de espacio de estados indicando de forma precisa los distintos elementos que lo componen.

2. Si se pretende encontrar una soluci´on que minimice la suma de los cuadrados de los elementos de S. ¿Qu´e algoritmo garantizar´ıa la misma? (Completar, con la infor-maci´on necesaria, la formalizaci´on dada seg´un el algoritmo escogido).

(5)

Problema 6. Consideremos un problema gen´erico de b´usqueda en espacios de estados donde cada acci´on tiene asignado un coste mayor o igual a 1/2. Responder, razonadamente, si las siguientes funciones son heur´ısticas admisibles (en el caso general). Debes responder SI o N O en el cuadro junto a la pregunta y luego dar aparte el razonamiento.

(a) h1(n). Para calcularlo, consideramos todas las acciones que se pueden realizar desde

el estado n. El valor de h1(n) es el m´ınimo de esos valores y cero si no se puede

realizar ninguna acci´on. . . .

(b) h2(n) es el menor n´umero de acciones que debo realizar para llegar desde n a un

estado final . . . .

(c) h3(n) = 1/coste(n), donde coste(n) es el menor coste de un camino que lleva desde

el estado inicial hasta n y 0 si coste(n) = 0 . . . . (d) h4(n) = h∗(n)/(1 + h∗(n)) donde h∗(n) el coste de un camino ´optimo desde n

. . . .

Problema 7. Consideremos el problema de espacios de estados con los estados A, B, C, D, E, F . La lista siguiente representa la relaci´on sucesor de un estado y sus costes asociados:

A → B A → C A → D B → F C → B

6 3 2 1 2

C → E D → C D → E E → A E → F

3 4 3 1 3

El estado inicial es A y el estado final es F . En caso de igualdad de con-diciones, usamos el orden alfab´etico. Representaremos cada nodo como la terna Estado-Profundidad-Coste, donde Coste es el coste acumulado desde el nodo inicial. Aplicar el algoritmo de b´usqueda ´optima (usando CERRADOS), rellenando la siguiente tabla y justificando cada uno de los pasos.

PASO ACTUAL CERRADOS ABIERTOS

0 ∅ [A-0-0]

1 A-0-0 . . . .

. . . .

Problema 8. Problema de las torres de Hanoi: en un templo hind´u se encuentran tres varillas de platino. En una de ellas, hay 64 anillos de oro de distintos radios, colocados de mayor a menor. El trabajo de los monjes de ese templo consiste en pasarlos todos a la tercera varilla, usando la segunda como varilla auxiliar, con las siguientes condiciones:

En cada paso s´olo se puede mover un anillo.

Nunca puede haber un anillo de mayor di´ametro encima de uno de menor di´ametro. Se pide:

(6)

1. Formalizarlo como un problema de espacio de estados, y obtener una funci´on heur´ıstica admisible que sirva para obtener una soluci´on ´optima (entendiendo que el coste de aplicar un operador es siempre 1).

2. ¿Qu´e algoritmo de b´usqueda habr´a que emplear? Raz´onese la respuesta.

Problema 9. El siguiente grafo representa un problema de espacio de estados. Los nodos del grafo son los estados del problema, las aristas conectan estados con sus sucesores y el valor num´erico de cada arista representa el coste de pasar de un estado a su sucesor:

I A B G C D F E 6 6 6 5 1 8 5 1 87

El estado inicial del problema es I y el ´unico estado final es F . Se consideran las funciones heur´ısticas H1 y H2 dadas por la siguiente tabla:

Estado H1 H2 I 16 20 A 8 8 B 10 6 C 3 12 D 2 2 E 9 9 F 0 0 G 1 1

Resolver los siguientes apartados:

Construir los ´arboles de b´usqueda generados por los algoritmos de b´usqueda en profundidad y b´usqueda ´optima. Indicar, en cada caso, el orden en el que se analizan los nodos y la soluci´on obtenida junto con su coste.

An´alogamente, con el algoritmo de b´usqueda A∗, usando las dos heur´ısticas H1 y

H2 anteriormente definidas ¿Son admisibles? Justificar las respuestas.

Nota: Considerar que distintos sucesores de un mismo nodo se ordenan alfab´etica-mente.

(7)

Problema 10. El siguiente grafo representa un problema de espacio de estados. Los nodos del grafo son los estados del problema, las aristas conectan cada estado con sus sucesores, y el valor num´erico de cada arista representa el coste de pasar de un estado al sucesor correspondiente.

El estado inicial del problema es el nodo A, y los estados finales son H e I. Se considera la funci´on heur´ıstica h dada por la siguiente tabla:

2 7 H I F E A B C D G 4 9 10 1 6 1 7 1 1 6 4 1 5 10 Nodo Heur´ıstica A 7 B 7 C 2 D 7 E 4 F 9 G 1 H 0 I 0

Resolver los siguientes apartados:

(a) Construir el ´arbol de b´usqueda generado por los algoritmos de b´usqueda por primero el mejor y b´usqueda ´optima.

(b) Para cada uno de ellos decir cual es la soluci´on obtenida, el n´umero de nodos que en cada caso ha sido necesario expandir, y el coste de cada camino soluci´on. ¿Es alguna de las soluciones obtenidas ´optima? ¿Cu´al? ¿Por qu´e la otra no lo es? (c) Construir el ´arbol de b´usqueda generado por el algoritmo A∗. Teniendo en cuenta la

soluci´on obtenida responda a la pregunta ¿es h admisible?. Modificar m´ınimamente la heur´ıstica para que A∗ encuentre la soluci´on ´optima.

Nota: Considerar que los sucesores de un mismo nodo se ordenan alfab´eticamente. En caso de empate a la hora de gestionar la cola de abiertos, resolverlo igualmente atendiendo al orden alfab´etico.

Problema 11. Explicar esquem´aticamente (sin entrar en detalles de implementaci´on) la representaci´on como espacio de estados del siguiente problema. Especificar la repre-sentaci´on de estados y operadores, el estado inicial, los estados finales, el conjunto de operadores, c´omo se aplican estos operadores y el coste de dicha aplicaci´on. Definir tam-bi´en una heur´ıstica, indicando si es admisible y justificando la respuesta.

El problema es el siguiente: dados cuatro n´umeros naturales n, m, r y T , encontrar una secuencia m´ınima de operaciones aritm´eticas b´asicas (suma, resta, multiplicaci´on y divisi´on) que usando n y m ´unicamente y partiendo de 0, obtenga como resultado T , con la restricci´on adicional de que ni n ni m se pueden usar m´as de r veces.

Por ejemplo, si n = 2, m = 3, r = 3 y T = 28, una posible soluci´on (no necesariamente m´ınima) es ((((((0 + 3) × 3) × 2) − 3) × 2) − 2), ya que el resultado es 28 y ni 2 ni 3 se han usado m´as de tres veces cada uno.

(8)

Problema 12. Consideremos un problema de espacio de estados con factor de ramifica-ci´on constante b y con una ´unica soluci´on que se encuentra a profundidad d.

Calcular, tanto en el mejor como en el peor de los casos, el n´umero de nodos que se necesitan analizar para encontrar la soluci´on, al aplicar un algoritmo de b´usqueda en anchura. An´alogamente para la b´usqueda en profundidad.

Calcular, tanto en el mejor como en el peor de los casos, el m´aximo n´umero de nodos que podr´ıan estar a la espera de ser analizados en la lista de ABIERTOS, al aplicar el algoritmo de b´usqueda en anchura. Lo mismo para el algoritmo de b´usqueda en profundidad iterativa.

Problema 13. Consideremos el siguiente puzle: se dispone de 3 fichas negras (N), 3 fichas blancas (B) y una casilla vac´ıa, en la siguiente posici´on inicial:

N N N B B B V

El objetivo del puzle consiste en colocar todas las fichas blancas a la izquierda de las fichas negras, independientemente de la posici´on de la casilla vac´ıa. Para ello, los movimientos permitidos son los siguientes:

Una ficha puede moverse a una celda adyacente vac´ıa, con coste 1.

Una ficha puede desplazarse a una celda vac´ıa saltando dos fichas como m´aximo, con un coste igual al n´umero de fichas saltadas.

Se pide:

Definir una funci´on heur´ıstica para este problema, justificando su admisibilidad. Para resolverlo, ¿utilizar´ıas el algoritmo de b´usqueda por primero el mejor o el algoritmo A∗? ¿Por qu´e?

Problema 14. Consid´erese el problema del 3-puzle, versi´on reducida del problema del 8-puzle, en el que en un cuadrado 2 × 2 se disponen tres bloques (y por tanto un hueco) numerados del 1 al 3. Los estados inicial y final son, respectivamente:

1

2

3

1

2

3

Estado inicial Estado final

Tomamos como operadores del problema el movimiento del hueco arriba, abajo, a la izquierda y a la derecha (en ese orden) y como coste de aplicar un operador el valor 1. Representar gr´aficamente los ´arboles correspondientes a los siguientes algoritmos de b´usqueda.

B´usqueda en profundidad. B´usqueda A∗ con la heur´ıstica h

1 que cuenta la distancia Manhattan desde la

(9)

B´usqueda por primero el mejor con la heur´ıstica h2 que cuenta el n´umero de bloques

que no est´an en la posici´on que deben ocupar en el estado final.

En cada caso, anotar junto a cada nodo el orden en el que se analiza y su heur´ıstica o coste m´as heur´ıstica, cuando sea relevante. A igualdad de valoraci´on, resolver los conflictos escogiendo el nodo que m´as tiempo lleve en la cola de espera. ¿Es h1 admisible? ¿Es h2

admisible? ¿Cu´al est´a m´as informada?

Problema 15. Consideremos un robot m´ovil que se puede desplazar por la malla si-guiente, donde los lados de la malla son de longitud 1 metro.

Cada localizaci´on L del robot viene dada por las coordenadas (i, j) del nodo en el que se encuentra, junto con su orientaci´on: Norte, Sur, Este, Oeste. Por ejemplo, la localizaci´on del robot situado en la malla anterior es (1,1), orientaci´on Oeste.

En cada momento, el robot puede:

desplazarse en el sentido de su orientaci´on actual hasta el siguiente nodo, o

girar sobre s´ı mismo 90 grados en un sentido u otro, manteni´endose en las mismas coordenadas.

Adem´as, sabemos que:

tarda 4 s. en realizar un giro sobre s´ı mismo.

se desplaza a 0.5 m/s por los tramos de trazo grueso. se desplaza a 1 m/s por los tramos de trazo fino. Se pide:

(a) Formalizar el problema de trasladar el robot desde una localizaci´on a otra en el m´ınimo tiempo como un problema de b´usqueda en espacio de estados.

(b) En el caso concreto de trasladar el robot desde la localizaci´on L1 ((1, 1), orientaci´on Oeste), hasta la localizaci´on L2 ((2, 2), orientaci´on Norte):

• Definir una funci´on heur´ıstica admisible, lo m´as informada posible, y justificar su admisibilidad.

• Aplicar el algoritmo A*, utilizando la funci´on heur´ıstica definida en el aparta-do anterior, especificanaparta-do el orden de generaci´on y el orden de an´alisis de los nodos. Describir la soluci´on encontrada y el coste de la misma ¿Es la soluci´on encontrada la que tiene tiempo de recorrido m´ınimo? Justifica la respuesta. Nota: en caso de empate en la valoraci´on de los nodos, ordenar seg´un la orien-taci´on dada por la lista (E, S, O, N ).

Referencias

Documento similar

A partir de este momento los modelos se van a re- petir hasta el siglo XV o incluso más tarde, lo que está indicando que habían llegado a un «ideal sonoro».. LOS INSTRUMENTOS

Pero mientras en Europa la democracia igualitaria, heredera del anden- régime, tien- de sle suyo a la centralización del poder, la democracia de los Es- tados Unidos

Dado que el régimen de los poderes de emergencia afecta a la democracia, a los derechos fundamentales y humanos, así como al Estado de derecho, el control de

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

23 Aqui, entre aspas, para não deixar de registrar nossa repulsa ao “essencialismo”.. Ao contrário, para os que se inserem no universo dialético, a liberdade começa a

&#34;No porque las dos, que vinieron de Valencia, no merecieran ese favor, pues eran entrambas de tan grande espíritu […] La razón porque no vió Coronas para ellas, sería

Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas

Desde esa concepción, el Derecho es considerado como algo que puede ser completamente objetivado y observado sin ningún tipo de parti- cipación (puede ser casi «fotografiado»).