MemoriaPractica.pdf

download MemoriaPractica.pdf

of 11

Transcript of MemoriaPractica.pdf

  • 7/21/2019 MemoriaPractica.pdf

    1/11

    Resolucion

    de problemas de busqueda

    Memoria de Practicas de Inteligencia Artificial

    Primera Entrega

    26 de noviembre de 2007

    Autores:

    Mariano Cabrero Canosa [email protected]

    Elena Hernandez Pereira [email protected]

    Directorio de entrega: XXXXX

  • 7/21/2019 MemoriaPractica.pdf

    2/11

    Resumen. El 8-puzzle es un pequeno juego de mesa para un unico jugador que

    consiste en 8 piezas cuadradas numeradas del 1 al 8 y un espacio vaco en un tablero

    de 3 x 3. El objetivo del juego es alcanzar una disposicion determinada de las piezas

    realizando solo movimientos permitidos. Esta practica trata de dar solucion al juego

    formulandolo como un problema de busqueda. Se implementan distintos algoritmos

    de busqueda, ciega e informada, se evaluan y se extraen las conclusiones pertinentes.

  • 7/21/2019 MemoriaPractica.pdf

    3/11

    Indice

    1. Introduccion 4

    2. Definicion formal 4

    3. Analisis comparativo de metodos de busqueda ciega 5

    3.1. Tamano del espacio de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    3.2. Factor de ramificacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    3.3. Completitud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    3.4. Optimalidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    3.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    4. Heursticas 8

    4.1. Heurstica Fichas mal colocadas. . . . . . . . . . . . . . . . . . . . . . . . . . . . 84.2. Heurstica Manhattan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

  • 7/21/2019 MemoriaPractica.pdf

    4/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    1. Introduccion

    El 15-puzzle es un juego inventado por Sam Loyd, uno de los m as grandes creadores deacertijos que han existido. En 1870 propuso un rompecabezas que caus o verdadero furor en suepoca y ha mantenido su popularidad hasta nuestros das. La version original consista en una

    caja cuadrada que contena quince piezas cuadradas, numeradas del 1 al 15, dispuestas como seve en la figura 1. La casilla inferior derecha esta vaca, y si los numeros se leen de izquierda aderecha y de arriba hacia abajo entonces estan ordenados en forma creciente, excepto por el 15y el 14 que aparecen transpuestos.

    Figura 1: Publicado en Sam Loyds Cyclopedia of 5000 Puzzles, Tricks and Conundrums with Answers

    Un movimiento valido consiste en deslizar uno de los numeros horizontal o verticalmenteadyacentes a la casilla vaca hasta ocuparla, dejando vacante la casilla ocupada originalmentepor la pieza movida. En la posicion inicial hay solo dos movimientos validos, que consisten en

    mover el 12 o el 14 hasta ocupar la casilla inferior derecha.Sam Loyd ofrecio pagar mil dolares a quien lograra, mediante alguna secuencia de movi-

    mientos validos, intercambiar el 14 y el 15 dejando a los demas numeros en su posicion inicial.En otras palabras, si llamamos posicion normal a la que tiene los quince numeros ordenadosen forma creciente y con la casilla inferior derecha vaca, la propuesta de Sam Loyd fue hallaruna secuencia de movimientos validos que transformara la posicion de la Figura 1 en la posicionnormal. En realidad, no existe solucion al problema as planteado y nadie pudo cobrar el premioofrecido por Sam Lloyd.

    El problema que nos ocupa, el 8-puzzle, es la version simplificada del juego de Loyd paraesta practica. El objetivo del juego, formulado como un problema de busqueda, es obtener lasecuencia de movimientos que se debe realizar para, partiendo de un estado inicial dado, llegarhasta el estado solucion.

    2. Definicion formal

    La descripcion de un estado especifica la localizacion de cada una de las 8 fichas y el espacioen blanco, en cada uno de los nueve cuadrados.

    Estado inicial: cualquier estado puede ser un estado inicial. En nuestro problema la colo-cacion de partida de las distintas fichas.

    Estado meta: estado o estados que especifican una configuracion determinada que hay quealcanzar. En la figura 2 se muestra un ejemplo de ambas.

    4

  • 7/21/2019 MemoriaPractica.pdf

    5/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    Figura 2: Ejemplo de estados inicial y final para el problema del 8 puzzle

    Representacion de estados: Representaremos cada configuracion del tablero por una matrizcuadrada 3x3 de numeros enteros entre 0 (casilla vaca) y 8. Para el ejemplo de estadoinicial de la figura 2, la matriz sera la siguiente:

    A(1, 1) = 7 A(1, 2) = 2 A(1, 3) = 4

    A(2, 1) = 5 A(2, 2) = 0 A(2, 3) = 6

    A(3, 1) = 8 A(3, 2) = 3 A(3, 3) = 1

    As pues, una pieza x se localiza por su posicion (i, j), es decir, i-esima fila y j-esimacolumna en la cuadrcula, con i, j1, 2, 3.

    Conjunto de operadores y restricciones: Una forma de representar movimientos legales eneste problema es definiendo reglas que transformen la matriz 3x3 que representa un estadoen otra matriz de 3x3. De esta forma, los operadores permitidos que generan transicionesen el espacio de estados aparecen en la tabla 1:

    Tabla 1: Operadores permitidos y restricciones

    Operador Precondicion Resultado Comentario

    R1 A(i, j) = 0 , i >1 A(i 1, j) = 0; A(i, j) =A(i 1, j) Mover hueco hacia arriba

    R2 A(i, j) = 0 , j 1 A(i, j 1) = 0; A(i, j) =A(i, j 1) Mover hueco a la izquierda

    R4 A(i, j) = 0 , i

  • 7/21/2019 MemoriaPractica.pdf

    6/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    sin repeticion son, precisamente, todas sus permutaciones: 9! = 362,880, es decir, el numero deestados posibles.

    Autores como Storey[1] y Johnson[2] con sendos artculos aparecidos en 1879 en el AmericanJournal of Mathematics, han corregido esta cifra a la mitad, es decir, el tamano del espacio deestados sera de 9!/2 = 181,440. Por debajo subyace una teora matematica respecto al concepto

    de paridad de las permutaciones, que escapa las pretensiones de este texto. La idea basica esque el espacio de estados se dividira en dos clases de equivalencia: si el estado de partida y elestado destino se encuentran en la misma clase el problema tiene solucion; sin embargo no esposible saltar de un estado a otro si se encuentran en clases distintas. Entonces el grafo debusqueda esta compuesto en realidad por dos subgrafos no conexos entre s1.

    Este hecho se ha demostrado tambien empricamente en un artculo de Alexander Reinefeld[3].A partir de una meta unica (la representada en la Figura 2), se generaron todas las combinacio-nes posibles de las fichas utilizando movimientos validos. Cada una de ellas constitua un estadoinicial de un nuevo problema2. Se resolvieron el conjunto de problemas (todos con la mismameta) en el menor numero de movimientos posible (solucion optima). As, el experimento de-mostro que el numero de configuraciones posibles o estados distintos logrados era ciertamentede 9!/2 y no 9! como pudiera parecer en un principio. Adem as, se constato que la longitud delcamino solucion mas largo era de 31 movimientos (21,97 de media). La Figura 3 muestra ladistribucion de longitudes de caminos de las soluciones optimas para todas las configuracionesde fichas.

    3.2. Factor de ramificacion

    Otro aspecto que influye en la seleccion de un algoritmo de busqueda es el factor de rami-ficacion medio. En cada configuracion existiran dos, tres o cuatro posibilidades de movimientodependiendo del lugar en el cual este situada la pieza blanca (figuras 4a, 4b y 4c). Si suponemosque las posibles posiciones de esta pieza son equiprobables el factor de ramificacion en el grafodel espacio de estados es:

    b=

    esquina 4 2 +

    lado 4 3 +

    centro 1 4

    9 = 2, 66 (1)

    que resulta, simplemente, de calcular el numero medio de descendientes desde cada una de lasposibles localizaciones del blanco. Esto significa que una busqueda exhaustiva a profundidad22 (la media de pasos utilizando los datos de la tabla de la figura 3) generara/almacenara

    alrededor de 322 3, 1 1010 estados. Un algoritmo de busqueda preferente en profundidadrequerira muchos menos espacio, en concreto 3 31, aunque mas tiempo 331.

    3.3. Completitud

    Como hemos mencionado antes, el espacio de estados del problema 8 puzzle posee unacaracterstica especial: tanto el estado inicial como el estado meta tienen que pertenecer al mismosubgrafo para poder encontrar una solucion. Suponiendo que dicha restriccion ya se cumple, ypor tanto, existe una o varias soluciones en el espacio de estados, es necesario un algoritmo capaz

    1Para experimentar con esta teora jugando al 8 puzzle en http://www.brian-borowski.com/Puzzle/definir

    como estado de partida 123456870 y estado meta 123456780.2Observese que as, estado inicial y estado meta perteneceran a la misma clase de equivalencia, y por tanto,

    al mismo subgrafo y de esta forma existira un camino en el espacio de estados que los une.

    6

  • 7/21/2019 MemoriaPractica.pdf

    7/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    Figura 3: Distribucion de longitudes de camino optimasf

    de encontrarla, es decir, una estrategia de busqueda completa. Solo la busqueda preferente poranchura es, por si misma, completa. La busqueda preferente por profundidad encontrara lasolucion considerando un espacio de estados finito, o lo que es lo mismo, eliminando durante elproceso de busqueda la posibilidad de realizar bucles o visitar estados repetidos.

    3.4. Optimalidad

    3 Otro aspecto que debemos entrar a juzgar a la hora de seleccionar un algoritmo de busquedaciega es determinar la necesidad de encontrar o no soluciones optimas al problema. En lo que

    respecta al 8 puzzle, el objetivo s es encontrar una secuencia mnima de movimientos. Ademas,sabemos que el coste de aplicar un operadoro efectuar una transicion valida en el espacio deestados del problemaes siempre constante e igual a 1. Por tanto, la estrategia que nos garantizaencontrar la solucion optima sera el algoritmo en anchura.

    3.5. Conclusiones

    A la vista del analisis previo solo el algoritmo en anchura, con un consumo de recursosajustado, garantiza encontrar soluciones en el menor numero de movimientos.

    3No existe una traduccion directa del termino ingles optimality.

    7

  • 7/21/2019 MemoriaPractica.pdf

    8/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    Figura 4: Posibles desplazamientos del espacio en el 8-puzzle

    4. Heursticas

    4.1. Heurstica Fichas mal colocadas.

    Numero de casillas mal colocadas. Esta funcion puede considerarse un lmite inferior delcoste optimo ya que como mnimo tendremos que desplazar las fichas mal colocadas hasta suposicion original, y en el mejor caso estaran desplazadas una posicion de la meta.

    Expresion matematica. Seanpi,j la ficha que ocupa la fila i, columna j de la matriz P querepresenta el estado actual n y qk,s la misma ficha en la matrizQ que representa al estado meta.Entonces la heurstica Fichas mal colocadas para una configuracion dada del 8-puzzle se definecomo:

    h1(n) =3

    i=1

    3j=1

    Si,j (2)

    donde i, j no es la posicion correspondiente al hueco,k, s y Si,j se define como:

    Si,j =

    1 si (pi,j =qk,s) y pi,j = 0

    0 en otro caso(3)

    Notese que la ficha blanca no se incluye.

    Idoneidad. Esta heurstica se obtiene relajando restricciones del problema original suponien-do que se puede mover una pieza de A a su posicion destino en un solo movimiento. Portanto, la funcion de coste en este problema relajado es el numero de piezas que se encuen-

    tran descolocadas. Dicha funcion de coste se utiliza como heurstica admisible en el problemaoriginal.

    Esta heurstica tiene en cuenta, en esencia, el numero mnimo de movimientos necesariospara solucionar el problema, que es igual a contar cu antas piezas estan fuera de su posicionhabitual. Por tanto, simplifica el problema original al maximo.

    Demostracion de no sobrestimacion. Dado que hemos generado la heurstica relajandorestricciones del problema original (en concreto la posibilidad de desplazar las fichas en un s olomovimiento a su posicion destino), tenemos la seguridad de que la heurstica no sobreestimara.Parece razonable que impidiendo a una ficha desplazarse mas de una posicion en cada movimiento

    siempre y cuando exista un espacio vaco contiguo, el numero de movimientos necesarios paracolocarla, y por extension la totalidad de las piezas, se incrementara notablemente respecto alproblema relajado. Es decir,

    8

  • 7/21/2019 MemoriaPractica.pdf

    9/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    41

    11

    21

    71

    31

    81

    51

    61

    h1(n) = 8Coste optimo = 8

    Figura 5: Ejemplo de aplicacion de heurstica Mal Colocadas

    n, h1(n) h(n)

    donde h(n) es la funcion que devuelve el coste optimo a la meta.

    Aparicion de mnimos locales. Un ejemplo de aplicacion aparece en la Figura 5 dondepodemos ver que el numero de movimientos necesarios para solucionar el problema coincide conel valor de la heurstica (que aparece reflejado en la esquina superior izquierda de cada ficha). En

    este caso, la heurstica no generara mnimos locales, por cuanto el valor calculado ya representael mnimo numero de movimientos necesarios para obtener la solucion.

    4.2. Heurstica Manhattan.

    Esta heurstica se define como la suma de las distancias de Manhattan de todas las fichas queforman un estado concreto del tablero. Es decir, la distancia de cada ficha a su posicion originalsumando filas y columnas. Esta funcion puede considerarse un lmite inferior del coste optimoya que aunque tendremos que desplazar las fichas mal colocadas hasta su posicion original, enrealidad tendremos que realizar mas movimientos.

    Expresion matematica. Seanpi,j la ficha que ocupa la fila i, columna j de la matriz P querepresenta el estado actual n y qk,s la misma ficha en la matrizQ que representa al estado meta.Entonces la heurstica distancia Manhattan para una configuracion dada del 8-puzzle se definecomo:

    h2(n) =3

    i=1

    3j=1

    3k=1

    3s=1

    d(pi,j , qk,s) (4)

    donde d(pi,j , qk,s) se define como:

    d(pi,j , qk,s) =

    0 si (pi,j =qk,s) o pi,j = 0

    |(ij)| + | (k s)| en otro caso(5)

    Notese que no se computa ninguna distancia para la ficha blanca.

    Idoneidad. Esta heurstica se obtiene relajando restricciones del problema original suponiendoque se puede mover una pieza de A a B, si A es adyacente a B. La funcion de coste en este

    problema relajado es la suma de movimientos que restan a cada ficha de A para alcanzar laposicion destino en B. Dicha funcion de coste se utiliza como heurstica admisible en el problemaoriginal.

    9

  • 7/21/2019 MemoriaPractica.pdf

    10/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    Demostracion de no sobrestimacion. Dado que hemos generado la heurstica relajandorestricciones del problema original (en concreto la posibilidad de desplazar fichas aun cuando nohaya un espacio adyacente), tenemos la seguridad de que la heurstica no sobreestimara. Parecerazonable que impidiendo a una ficha desplazarse si no hay un espacio vaco contiguo el numerode movimientos necesarios para colocar la totalidad de las piezas se incrementar a respecto al

    problema relajado. Es decir,

    n, h2(n) h(n)

    donde h(n) es la funcion que devuelve el coste optimo a la meta.

    Aparicion de mnimos locales. Un espacio de estados contiene un mnimo local si la heursti-ca proporciona un valor menor (mejor) para un estado que para otro que se encuentra en realidadmas cerca de la meta. Esta situacion ocurre cuando existen piezas ya colocadas en su situacionfinal y el resto estan intercambiadas en su fila (o columna) destino. Supongamos que ocurre condos piezas: claramente el intercambio no podra hacerse en solo dos movimientos, sino que como

    mnimo son necesarios 4. Para ello una de las piezas tiene que dejar su posicion, para que laotra se mueva a su posicion destino. Pero todava queda una distancia mnima de 2 para que laprimera se coloque en su posicion final. La figura 6 ilustra esta idea.

    Figura 6: Fichas x e y e intercambio sus posiciones

    Vease por ejemplo las configuraciones de la Figura 7. Los numeros que aparecen en la esquinasuperior derecha en cada pieza indican el valor de heurstica Manhattan. En el primer caso seobtiene un valor de heurstica de 4 siendo el coste optimo de solucion 14. En el segundo caso,se obtiene un valor de 7 en la heurstica (por tanto, peor estado que el previo) pero el coste dealcanzar la solucion se reduce en una unidad a 13.

    Referencias

    [1] Storey, W.E. Notes on the 15 puzzle. I. EnAmerican Journal of Mathematics, vol. 2 (4),pp. 399404, 1879.

    [2] Johnson, W. W. Notes on the 15 Puzzle. I. EnAmerican Journal of Mathematics, vol. 2

    (4), pp. 397399, 1879.

    [3] A. Reinefeld. Complete Solution of the Eight-Puzzle and the Benefit of Node Orderingin IDA* En International Joint Conference on Artificial Intelligence, pp. 248-253, 1993.http://citeseer.ist.psu.edu/article/reinefeld93complete.html

    10

    20

    30

    51

    61

    42

    70

    80

    h2(n) = 4Coste optimo =14

    10

    20

    30

    62

    41

    52

    71

    81

    h2(n) = 7Coste optimo =13

    Figura 7: Ejemplo de aplicacion de heurstica Manhattan y aparicion de mnimo local

    10

  • 7/21/2019 MemoriaPractica.pdf

    11/11

    Resolucion de problemas de busqueda Inteligencia Artificial

    [4] V. Moret, A. Alonso, M. Cabrero, B. Guijarro, E. Mosqueira. Fundamentos de InteligenciaArtificial (2aEd). Servicio de Publicaciones, UDC, 2000.

    [5] N. Nillson. Inteligencia artificial: una nueva sntesis. McGraw-Hill, 2001.

    [6] S. Russell, P. Norvig. Inteligencia Artificial: Un enfoque moderno. Prentice-Hall, 2004.

    11