SlideShare una empresa de Scribd logo
1 de 111
Descargar para leer sin conexión
INTELIGENCIA ARTIFICIAL - ICIF0021
 Unidad 2 - B´squeda en Espacio de Estados
             u

                      Docente: Milton A. Ram´ Klapp
                                            ırez
                            miramire@gmail.com

                             Universidad San Sebasti´n
                                                    a
                         Facultad de Ingenier´ y Tecnolog´
                                             ıa          ıa


                            Primer Semestre 2011



M. Ram´
      ırez K. (USS)                 Apunte curso IA           Primer Semestre 2011   1 / 111
Objetivos de la Unidad



   Conocen la estructura general de un agente de b´squeda.
                                                  u
   Identifican los tipos de b´squeda que existen y comprenden las diferencias entre
                            u
   ambos enfoques.
   Conocen las diferentes m´tricas que existen para evaluar el rendimiento de un
                           e
   algoritmo determinado en funci´n de par´metros como completitud, optimalidad,
                                  o        a
   complejidad temporal y complejidad espacial.
   Realizan b´squedas no informadas empleando las estrategias en anchura y en
             u
   profundidad.
   Comprenden la problem´tica que tiene la b´squeda no informada y entienden la
                          a                  u
   necesidad de contar con informaci´n adicional en un problema.
                                    o
   Resuelven problemas aplicando estrategias de b´squeda informada con heur´
                                                 u                         ısticas
   admisibles.




   M. Ram´
         ırez K. (USS)             Apunte curso IA            Primer Semestre 2011   2 / 111
Contenidos




 1   Estructura de un espacio de estados.
 2   ´
     Arboles de b´squeda.
                 u
 3   Algoritmo general de b´squeda.
                           u
 4   B´squeda no informada: por anchura y en profundidad.
      u
 5   B´squeda informada: A*.
      u
 6   Admisibilidad de heur´
                          ısiticas.
 7   M´tricas para evaluar el rendimiento de una soluci´n.
      e                                                o




     M. Ram´
           ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   3 / 111
Presentaci´n
          o




   Sabemos c´mo plantear un problema.
            o
   ¿C´mo lo resolvemos?
     o
   Mediante una exploraci´n del espacio de estados.
                         o
   El ´rbol de b´squeda es la estructura de datos que permite hacer el
      a          u
   escaneo y se construye a partir del espacio de estados.




   M. Ram´
         ırez K. (USS)       Apunte curso IA       Primer Semestre 2011   4 / 111
Presentaci´n
          o




   En l´
       ıneas generales, se parte del estado inicial del ´rbol de b´squeda
                                                        a         u
   y se va evaluando cada operaci´n posible hasta llegar a la soluci´n del
                                   o                                o
   problema, respetando en todo momento las restricciones del mismo.




   M. Ram´
         ırez K. (USS)         Apunte curso IA        Primer Semestre 2011   5 / 111
Importante
Las acciones que lleguen a ¶ deben evitarse siempre.




M. Ram´
      ırez K. (USS)        Apunte curso IA        Primer Semestre 2011   6 / 111
Espacio de estados




   El espacio de estados se puede representar como un grafo donde:
          cada nodo corresponde a un estado del problema,
          los arcos (aristas) representan la aplicaci´n de un operador.
                                                     o
          Si f ∈ Φ y para alg´n x ∈ E : f (x) = y, la representaci´n gr´fica de
                               u                                  o    a
          esto es:

                                               f
                             x                             y


   M. Ram´
         ırez K. (USS)             Apunte curso IA          Primer Semestre 2011   7 / 111
Espacio de estados


                                           v1                    NODO INICIAL

                                o1                         o2


                           v2                                    v3

                     o1                          o1
                                                                  o1
                                o2                                                       NODOS
                                                                                         INTERMEDIOS
                                                                                 o2
      o2
                                                    o2
                v4                   v5                          v6


                     o1                   o2                           o1



                           v7                       v8                      v9
                                                                                       NODOS OBJETIVOS
                  01, 02                   01, 02
                                                             01, 02
 NODO DE FRACASO




    M. Ram´
          ırez K. (USS)                        Apunte curso IA                   Primer Semestre 2011   8 / 111
Espacio de estados




   Identifique todos los elementos del espacio de estados de la figura
   anterior:
          conjunto de estados E
          conjunto de operadores Φ
          para cada operador ∆ ∈ Φ indique en una tabla el valor de ∆(x), x ∈ E
          conjunto de objetivos M




   M. Ram´
         ırez K. (USS)            Apunte curso IA         Primer Semestre 2011   9 / 111
Importante
Es f´cil advertir en general que, independiente del problema P:
    a

                 (∀m ∈ M)(∀∆ ∈ Φ) : ∆(m) = m
´
Arboles de b´squeda
            u




   Las definiciones de nodo y arco son las mismas que ocupamos para
   explicar el espacio de estados.
   Recordar que en un ´rbol
                        a
          existe un unico camino entre cada par de nodos y
                    ´
          no hay ciclos.




   M. Ram´
         ırez K. (USS)           Apunte curso IA        Primer Semestre 2011   11 / 111
´
Arboles de b´squeda
            u
Conceptos particulares

    La ra´ del ´rbol corresponde al estado inicial.
         ız    a
    La expansi´n de un nodo es el proceso que permite encontrar sus
                o
    sucesores inmediatos.
    Los sucesores de un nodo reciben el nombre de hijos.
    El objetivo es un nodo terminal del ´rbol que se recibe el nombre de
                                        a
    hoja.

                                      RAÍZ



                          NODO N



                                    NODOS SUCESORES DE N


    M. Ram´
          ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   12 / 111
Esquema general de b´squeda
                    u




Elementos principales

    La lista ABIERTO contiene a los estados que han sido generados pero
    no explorados, lo que quiere decir que hasta el momento no se saben
    si son estado final ni cu´les son sus estados sucesores (o hijos) dentro
                            a
    del ´rbol de b´squeda.
        a         u
    La lista CERRADO guarda todos los estados que ya se han visitado.




    M. Ram´
          ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   13 / 111
Esquema general de b´squeda
                    u

Entrada: representaci´n del espacio de estados
                        o
Salida: ´xito o fracaso
         e
 1: Crear el ´rbol de b´squeda T con X como nodo inicial
              a          u
 2: ABIERTO ← [X]
 3: CERRADO ← []
 4: mientras ABIERTO = [] hacer
 5:    remover un estado X del conjunto ABIERTO
 6:    si X es un estado objetivo entonces
 7:        retornar ´xito: camino hasta X en T
                      e
 8:    sino
 9:        generar el conjunto de sucesores admisibles del estado X
10:        agregar X al conjunto CERRADO
11:        eliminar los sucesores que est´n en ABIERTO o en CERRADO
                                         e
12:        agregar el resto de los sucesores al conjunto ABIERTO
13:        incorporar los sucesores que queden de X en el ´rbol T creando los arcos
                                                           a
           correspondientes
14:    fin si
15: fin mientras
16: retornar fracaso

     M. Ram´
           ırez K. (USS)              Apunte curso IA            Primer Semestre 2011   14 / 111
Esquema general de b´squeda
                    u




   En la l´
          ınea 11 del algoritmo general de b´squeda, el hecho de
                                              u
   eliminar los sucesores que est´n en ABIERTO o en CERRADO evita
                                 e
   caer en ciclos, para que no sean considerados de nuevo.
   Dependiendo del orden en que se traten los elementos de ABIERTO,
   se obtienen diferentes tipos de recorrido.




   M. Ram´
         ırez K. (USS)      Apunte curso IA      Primer Semestre 2011   15 / 111
Espacio de estados




   El espacio de estados se puede representar como un grafo donde:
          cada nodo corresponde a un estado del problema,
          los arcos (aristas) representan la aplicaci´n de un operador.
                                                     o
                 Si f ∈ Φ y para alg´n x ∈ E : f (x) = y, la representaci´n gr´fica de
                                    u                                    o    a
                 esto es:

                                                  f
                               x                                y


   M. Ram´
         ırez K. (USS)                Apunte curso IA           Primer Semestre 2011   16 / 111
Espacio de estados


                                           v1                    NODO INICIAL

                                o1                         o2


                           v2                                    v3

                     o1                          o1
                                                                  o1
                                o2                                                        NODOS
                                                                                          INTERMEDIOS
                                                                                 o2
      o2
                                                    o2
                v4                   v5                          v6


                     o1                   o2                           o1



                           v7                       v8                      v9
                                                                                        NODOS OBJETIVOS
                  01, 02                   01, 02
                                                             01, 02
 NODO DE FRACASO




    M. Ram´
          ırez K. (USS)                        Apunte curso IA                   Primer Semestre 2011   17 / 111
Espacio de estados




   Identifique todos los elementos del espacio de estados de la figura
   anterior:
          conjunto de estados E
          conjunto de operadores Φ
          para cada operador ∆ ∈ Φ indique en una tabla el valor de ∆(x), x ∈ E
          conjunto de objetivos M




   M. Ram´
         ırez K. (USS)            Apunte curso IA        Primer Semestre 2011   18 / 111
Espacio de estados




    Importante
    Independiente de cu´l sea P =< E, Φ, M >, estableceremos que
                       a

                          (∀m ∈ M)(∀∆ ∈ Φ) : ∆(m) = m


¿C´mo se traduce al espa˜ol el comentario de arriba?
  o                     n




    M. Ram´
          ırez K. (USS)           Apunte curso IA      Primer Semestre 2011   19 / 111
´
Arboles de b´squeda
            u




   Las definiciones de nodo y arco son las mismas que ocupamos para
   explicar el espacio de estados.
   Recordar que en un ´rbol
                        a
          existe un unico camino entre cada par de nodos y
                    ´
          no hay ciclos.




   M. Ram´
         ırez K. (USS)           Apunte curso IA        Primer Semestre 2011   20 / 111
´
Arboles de b´squeda
            u
Conceptos particulares

    La ra´ del ´rbol corresponde al estado inicial.
         ız    a
    La expansi´n de un nodo es el proceso que permite encontrar sus
                o
    sucesores inmediatos.
    Los sucesores de un nodo reciben el nombre de hijos.
    El objetivo es un nodo terminal del ´rbol que recibe el nombre de
                                        a
    hoja.

                                      RAÍZ



                          NODO N



                                    NODOS SUCESORES DE N


    M. Ram´
          ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   21 / 111
Esquema general de b´squeda
                    u




Elementos principales

    La lista ABIERTO contiene a los estados que han sido generados pero
    no explorados, lo que quiere decir que hasta el momento no se saben
    si son estado final ni cu´les son sus estados sucesores (o hijos) dentro
                            a
    del ´rbol de b´squeda.
        a         u
    La lista CERRADO guarda todos los estados que ya se han visitado.




    M. Ram´
          ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   22 / 111
Esquema general de b´squeda
                    u

Entrada: representaci´n del espacio de estados
                        o
Salida: ´xito o fracaso
         e
 1: Crear el ´rbol de b´squeda T con X como nodo inicial
              a          u
 2: ABIERTO ← [X]
 3: CERRADO ← []
 4: mientras ABIERTO = [] hacer
 5:    remover un estado X del conjunto ABIERTO
 6:    si X es un estado objetivo entonces
 7:        retornar ´xito: camino hasta X en T
                      e
 8:    sino
 9:        generar el conjunto de sucesores admisibles del estado X
10:        agregar X al conjunto CERRADO
11:        eliminar los sucesores que est´n en ABIERTO o en CERRADO
                                         e
12:        agregar el resto de los sucesores al conjunto ABIERTO
13:        incorporar los sucesores que queden de X en el ´rbol T creando los arcos
                                                           a
           correspondientes
14:    fin si
15: fin mientras
16: retornar fracaso

     M. Ram´
           ırez K. (USS)              Apunte curso IA            Primer Semestre 2011   23 / 111
Esquema general de b´squeda
                    u




   En la l´
          ınea 11 del algoritmo general de b´squeda, el hecho de
                                              u
   eliminar los sucesores que est´n en ABIERTO o en CERRADO evita
                                 e
   caer en ciclos, para que no sean considerados de nuevo.
   Dependiendo del orden en que se traten los elementos de ABIERTO,
   se obtienen diferentes tipos de recorrido.




   M. Ram´
         ırez K. (USS)      Apunte curso IA      Primer Semestre 2011   24 / 111
M´tricas para medir el rendimiento de una soluci´n
 e                                              o



Completitud. El algoritmo es completo si es capaz de hallar la soluci´n del
                                                                     o
             problema.
Complejidad temporal. Se refiere al costo en tiempo que tarde la ejecuci´n
                                                                        o
             del algoritmo para encontrar la soluci´n – si es que puede
                                                   o
             hacerlo – en funci´n del tama˜o de la entrada.
                               o           n
Complejidad espacial. Es el espacio requerido para almacenar los nodos
            que est´n o se hayan explorado.
                    e
Optimalidad. Si es capaz de encontrar la mejor soluci´n de acuerdo a
                                                     o
             alg´n criterio de costo determinado.
                u




    M. Ram´
          ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   25 / 111
M´tricas para medir el rendimiento de una soluci´n
 e                                              o
Elementos que intervienen en la complejidad



Complejidad temporal

   1   Factor de ramificaci´n (b): corresponde al m´ximo n´mero de
                             o                    a      u
       sucesores de cualquier nodo.
   2   Profundidad (d): es la distancia a la que se encuentra el nodo
       objetivo m´s superficial.
                 a
   3   Longitud m´xima del camino (m): es la profundidad m´xima en el
                   a                                      a
       ´rbol de b´squeda.
       a         u


Complejidad espacial
Se mide en funci´n del tama˜o m´ximo que alcancen los conjuntos
                o          n   a
ABIERTO y CERRADO durante el proceso de b´squeda.
                                             u


       M. Ram´
             ırez K. (USS)           Apunte curso IA   Primer Semestre 2011   26 / 111
Costo total de una b´squeda
                    u



Entonces, el costo de hacer una b´squeda se mide en t´rminos:
                                 u                   e
    del tiempo de ejecuci´n de la b´squeda
                         o         u
    la cantidad de memoria que utilice.


Por lo tanto, el costo total de la soluci´n es igual a
                                         o

                          tiempo de b´squeda + costo del camino
                                     u




    M. Ram´
          ırez K. (USS)                 Apunte curso IA     Primer Semestre 2011   27 / 111
¿Qu´ vimos la clase pasada?
   e




   Elementos principales de los algoritmos de b´squeda.
                                               u
   M´tricas para evaluar el rendimiento de los m´todos de b´squeda.
    e                                           e          u




   M. Ram´
         ırez K. (USS)        Apunte curso IA       Primer Semestre 2011   28 / 111
Hoy veremos




   Estrategias de b´squeda
                   u
          en particular m´todos no informados, como algoritmos que operan en
                         e
          profundidad y en amplitud.
   Comparaci´n entre ambos m´todos.
            o               e




   M. Ram´
         ırez K. (USS)           Apunte curso IA         Primer Semestre 2011   29 / 111
Estrategias de B´squeda
                u

Trabajaremos con dos esquemas:
B´squeda no informada
 u

    No hay informaci´n adicional sobre los estados.
                    o
    S´lo se utiliza la definici´n del problema.
     o                        o
    Sigue un orden de exploraci´n del espacio de estados de acuerdo a su
                               o
    estructura.

B´squeda informada
 u

    Utilizan una estimaci´n del costo o de la calidad de la soluci´n para
                         o                                        o
    guiar la b´squeda.
              u
    No sigue un orden espec´ ıfico para explorar el espacio de estados, sino
    que se orientan por el criterio heur´
                                        ıstico aplicado.

   M. Ram´
         ırez K. (USS)          Apunte curso IA        Primer Semestre 2011   30 / 111
Etapas del proceso de codificaci´n de la soluci´n
                               o              o
independiente del esquema elegido




                                    PROBLEMA




     M. Ram´
           ırez K. (USS)            Apunte curso IA   Primer Semestre 2011   31 / 111
Etapas del proceso de codificaci´n de la soluci´n
                               o              o
independiente del esquema elegido




                                    abstracción       EXPRESIÓN
                   PROBLEMA                           COMO ESPACIO
                                                       DE ESTADOS




     M. Ram´
           ırez K. (USS)            Apunte curso IA         Primer Semestre 2011   32 / 111
Etapas del proceso de codificaci´n de la soluci´n
                               o              o
independiente del esquema elegido




                                    abstracción        EXPRESIÓN
                      PROBLEMA                        COMO ESPACIO
                                                       DE ESTADOS




                                                       IMPLEMENTAC .
                                                        EN LENG . DE
                                                      PROGRAMACIÓN




     M. Ram´
           ırez K. (USS)            Apunte curso IA            Primer Semestre 2011   33 / 111
Etapas del proceso de codificaci´n de la soluci´n
                               o              o
independiente del esquema elegido




                                    abstracción        EXPRESIÓN
                      PROBLEMA                        COMO ESPACIO
                                                       DE ESTADOS




                      APLICACIÓN                       IMPLEMENTAC .
                       ALGORITMO                        EN LENG . DE
                        BÚSQUEDA                      PROGRAMACIÓN




     M. Ram´
           ırez K. (USS)            Apunte curso IA            Primer Semestre 2011   34 / 111
Etapas del proceso de codificaci´n de la soluci´n
                               o              o
independiente del esquema elegido



                                           abstracción     EXPRESIÓN
                           PROBLEMA                       COMO ESPACIO
                                                           DE ESTADOS




                           APLICACIÓN                      IMPLEMENTAC.
                           ALGORITMO                        EN LENG . DE
                            BÚSQUEDA                      PROGRAMACIÓN



                 interpretación

                                          SOLUCIÓN




     M. Ram´
           ırez K. (USS)                Apunte curso IA         Primer Semestre 2011   35 / 111
B´squeda no informada
 u




Veremos dos t´cnicas:
             e
  1   B´squeda en profundidad.
       u
  2   B´squeda en anchura.
       u


La diferencia entre uno y otro es la manera en la cual se administre el
orden de visita de los nodos del conjunto ABIERTO.




      M. Ram´
            ırez K. (USS)        Apunte curso IA       Primer Semestre 2011   36 / 111
B´squeda en Profundidad
 u




   Se le conoce como depth-first search.
   El conjunto ABIERTO se maneja como una lista tipo LIFO:
          last in, first out
          los elementos de ABIERTO se tratan como a una pila.




   M. Ram´
         ırez K. (USS)           Apunte curso IA       Primer Semestre 2011   37 / 111
B´squeda en Profundidad
 u



De manera m´s informal, este algoritmo opera as´
           a                                   ı:
    Se comienza en el nodo ra´
                             ız
    Despu´s se expanden todos los hijos
          e
    A continuaci´n se expanden los hijos de los hijos avanzando en
                o
    profundidad
           . . . y as´ sucesivamente
                     ı
    En l´
        ıneas generales, se visitan primero los ultimos nodos en ser
                                                ´
    generados.




    M. Ram´
          ırez K. (USS)                Apunte curso IA   Primer Semestre 2011   38 / 111
Algoritmo de B´squeda en Profundidad
              u

Entrada: representaci´n del espacio de estados
                        o
Salida: ´xito o fracaso
         e
 1: Crear el ´rbol de b´squeda T con X como nodo inicial
              a          u
 2: ABIERTO ← [X]
 3: CERRADO ← []
 4: mientras ABIERTO = [] hacer
 5:    remover el primer elemento X del conjunto ABIERTO
 6:    si X es un estado objetivo entonces
 7:        retornar ´xito: camino en T hasta X
                      e
 8:    sino
 9:        generar el conjunto de sucesores admisibles del estado X
10:        eliminar los sucesores que est´n en ABIERTO o en CERRADO
                                         e
11:        agregar X al conjunto CERRADO
12:        agregar el resto de los sucesores al principio del conjunto ABIERTO
13:        incorporar los sucesores que queden de X en el ´rbol T creando los arcos
                                                            a
           correspondientes
14:    fin si
15: fin mientras
16: retornar fracaso

     M. Ram´
           ırez K. (USS)              Apunte curso IA            Primer Semestre 2011   39 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u



Consideremos, para simplificar, el siguiente espacio de estados donde 1 es
el nodo de inicio y 8 el objetivo:



                 2                                            6


   1                           4                       5                            8


                 3                                            7



     M. Ram´
           ırez K. (USS)             Apunte curso IA       Primer Semestre 2011   40 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




El seguimiento que haremos se har´ a trav´s de una tabla cuyas columnas
                                    a       e
ser´n las variables que intervienen en la concepci´n del algoritmo:
   a                                              o
     Lista de estados ABIERTO (sin explorar a´n).
                                             u
     Lista de estados CERRADOS (ya explorados).
     X, que hace las veces del primer elemento de ABIERTO.
     Conjunto de sucesores de X
            los hijos de X los ordenaremos por nombre en forma ascendente.




     M. Ram´
           ırez K. (USS)             Apunte curso IA       Primer Semestre 2011   41 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u



     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X   Sucesores de X
                                  [1]            []        1        2-3
                       1           []           [1]
                                 [2 3]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u
                                                       2


                                         1


                                                       3



     M. Ram´
           ırez K. (USS)             Apunte curso IA           Primer Semestre 2011   42 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o        ABIERTO      CERRADO       X   Sucesores de X
                     2                [3]         [1 2]       2        4-6
                                    [4 6 3]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u
                                        2                         6


                               1                          4


                                        3




     M. Ram´
           ırez K. (USS)                Apunte curso IA           Primer Semestre 2011   43 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO        CERRADO     X   Sucesores de X
                     3           [6 3]          [1 2 4]   4         5
                                [5 6 3]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u
                                  2                            6


                           1                       4           5


                                  3




     M. Ram´
           ırez K. (USS)              Apunte curso IA         Primer Semestre 2011   44 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO      X       Sucesores de X
                     4           [6 3]        [1 2 4 5]   5            6-7
                                [7 6 3]                                 7
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u
                               2                              6


                           1                4                 5


                               3                                         7




     M. Ram´
           ırez K. (USS)             Apunte curso IA              Primer Semestre 2011   45 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X   Sucesores de X
                     5           [6 3]       [1 2 4 5 7]   7         8
                                [8 6 3]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u
                           2                           6


                 1                  4                  5                       8


                           3                                   7




     M. Ram´
           ırez K. (USS)             Apunte curso IA           Primer Semestre 2011   46 / 111
Ejemplo
Traza del algoritmo de b´squeda en profundidad
                        u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X   Sucesores de X
                     6           [6 3]                     8

     El camino final se muestra con flechas m´s gruesas:
                                           a
                           2                           6


                 1                  4                  5                       8


                           3                                   7




     M. Ram´
           ırez K. (USS)             Apunte curso IA           Primer Semestre 2011   47 / 111
B´squeda en Anchura
 u




   Se le conoce tambi´n como b´squeda en amplitud o breadth-first
                     e        u
   search.
   El conjunto ABIERTO se maneja como una lista FIFO:
          first in, first out
          se maneja como una fila.




   M. Ram´
         ırez K. (USS)              Apunte curso IA   Primer Semestre 2011   48 / 111
B´squeda en Anchura
 u

   El recorrido que del espacio de estados lo hace por niveles de
   profundidad, de manera que un nodo se visita solamente cuando
   todos sus predecesores y sus hermanos anteriores en orden de
   generaci´n ya se han visitado.
            o

                            NODO INICIAL
                                                  NIVEL 0




                                                  NIVEL 1



                                                  NIVEL 2



                                       OBJETIVO   NIVEL 3



   M. Ram´
         ırez K. (USS)       Apunte curso IA         Primer Semestre 2011   49 / 111
B´squeda en Anchura
 u




   Se comienza en el nodo ra´
                            ız.
   Despu´s se expanden todos los hijos.
        e
   A continuaci´n se expanden todos los hijos de los hijos.
               o
          . . . y as´ sucesivamente
                    ı
          se expanden todos los nodos de un nivel antes de expandir el pr´ximo.
                                                                         o




   M. Ram´
         ırez K. (USS)            Apunte curso IA         Primer Semestre 2011   50 / 111
Algoritmo de B´squeda en Anchura
              u

Entrada: representaci´n del espacio de estados
                        o
Salida: ´xito o fracaso
         e
 1: Crear el ´rbol de b´squeda T con X como nodo inicial
              a          u
 2: ABIERTO ← [X]
 3: CERRADO ← []
 4: mientras ABIERTO = [] hacer
 5:    remover el primer elemento X del conjunto ABIERTO
 6:    si X es un estado objetivo entonces
 7:        retornar ´xito: camino en T hasta X
                      e
 8:    sino
 9:        generar el conjunto de sucesores admisibles del estado X
10:        eliminar los sucesores que est´n en ABIERTO o en CERRADO
                                         e
11:        agregar X al conjunto CERRADO
12:        agregar el resto de los sucesores al final del conjunto ABIERTO
13:        incorporar los sucesores que queden de X en el ´rbol T creando los arcos
                                                            a
           correspondientes
14:    fin si
15: fin mientras
16: retornar fracaso

     M. Ram´
           ırez K. (USS)              Apunte curso IA            Primer Semestre 2011   51 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u



Consideremos nuevamente el espacio de estados del ejemplo anterior



                 2                                            6


   1                           4                       5                            8


                 3                                            7



     M. Ram´
           ırez K. (USS)             Apunte curso IA       Primer Semestre 2011   52 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u



      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X   Sucesores de X
                                  [1]            []        1        2-3
                       1           []           [1]
                                 [2 3]
      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                                                       2


                                         1


                                                       3



     M. Ram´
           ırez K. (USS)             Apunte curso IA           Primer Semestre 2011   53 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO        CERRADO   X   Sucesores de X
                     2            [3]           [1 2]   2        4-6
                                [3 4 6]
      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                                  2                          6


                           1                       4


                                  3




     M. Ram´
           ırez K. (USS)              Apunte curso IA       Primer Semestre 2011   54 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO         CERRADO     X   Sucesores de X
                     3            [4 6]          [1 2 3]   3       4-5-7
                                [4 6 5 7]                           5-7
      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                                   2                            6


                           1                        4           5


                                   3                            7




     M. Ram´
           ırez K. (USS)               Apunte curso IA         Primer Semestre 2011   55 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO        CERRADO      X   Sucesores de X
                     4          [6 5 7]        [1 2 3 4]   4         5

      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                                  2                             6


                           1                       4            5


                                  3                             7




     M. Ram´
           ırez K. (USS)              Apunte curso IA          Primer Semestre 2011   56 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o        ABIERTO        CERRADO       X   Sucesores de X
                     5               [5 7]        [1 2 3 4 6]   6        7-8
                                    [5 7 8]                               8
      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                               2                                6


                      1                       4                 5


                               3                                7             8




     M. Ram´
           ırez K. (USS)                Apunte curso IA             Primer Semestre 2011   57 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
              No. Iteraci´n
                         o    ABIERTO         CERRADO        X   Sucesores de X
                    6           [7 8]        [1 2 3 4 6 5]   5        6-7
                                                                      ——
      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                              2                              6


                      1                  4                   5


                              3                              7             8




     M. Ram´
           ırez K. (USS)             Apunte curso IA             Primer Semestre 2011   58 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u




      Tabla de traza del algoritmo:
             No. Iteraci´n
                        o    ABIERTO           CERRADO             X    Sucesores de X
                   7            [8]          [1 2 4 5 6 5 7]       7          8

      Evoluci´n del ´rbol de b´squeda parcial:
             o      a         u
                             2                                 6


                      1                  4                     5


                             3                                 7                 8




     M. Ram´
           ırez K. (USS)             Apunte curso IA                   Primer Semestre 2011   59 / 111
Ejemplo
traza del algoritmo de b´squeda en anchura
                        u



      Tabla de traza del algoritmo:
               No. Iteraci´n
                          o        ABIERTO       CERRADO   X   Sucesores de X
                     8                []                   8

      El camino final se muestra con flechas m´s gruesas:
                                            a
                               2                           6


                      1                      4             5


                               3                           7             8




     M. Ram´
           ırez K. (USS)                Apunte curso IA        Primer Semestre 2011   60 / 111
/* Comentario */




   Los ejemplos de seguimiento que hemos hecho hasta el momento han
   contemplado s´lo un grafo en donde hemos encubierto las
                 o
   operaciones que permiten ir de un estado a otro.
   Esto era solamente para que se entienda bien el esp´
                                                      ıritu de los
   algoritmos que se han revisado.
   A continuaci´n veremos un ejemplo donde el grafo ya no lo vamos a
                 o
   tener listo como el de los ejemplos anteriores, sino que va a ser
   necesario ir generando los nodos siguiendo un orden de aplicaci´n de
                                                                    o
   operadores.




  M. Ram´
        ırez K. (USS)          Apunte curso IA       Primer Semestre 2011   61 / 111
Ejemplo
Puzzle 4




     Consideremos una adaptaci´n del puzzle 8 conocida como el puzzle
                                 o
     4, el cual sigue las mismas reglas con las mismas operaciones, tal
     como fueron definidas para su hom´logo.
                                         o
     Encuentre una soluci´n para este problema usando b´squeda en
                          o                                u
     profundidad, indicando la secuencia de operaciones a realizar,
     sabiendo que los estados inicial y final son, respectivamente:

                              1      2              3   1
                              3                     2




     M. Ram´
           ırez K. (USS)          Apunte curso IA           Primer Semestre 2011   62 / 111
Ejemplo
Puzzle 4


     Los elementos del espacio de estados son:
                     1     2     1   3     2    1       2      3     3    1       3     2
                     3           2         3            1            2            1
                   (1)         (2)       (3)          (4)          (5)          (6)

                     1     2    1    3    2     1          2   3    3     1       3     2
                           3         2          3              1          2             1
                   (7)         (8)       (9)          (10)         (11)         (12)

                     1           1         2            2            3            3
                     2 3         3 2       1 3          3 1          1 2          2 1
                   (13)        (14)      (15)         (16)         (17)         (18)

                        1           1         2            2            3            3
                     2 3         3 2       1 3          3 1          1 2          2 1
                   (19)        (20)      (21)         (22)         (23)         (24)

                   ¶(25)

     M. Ram´
           ırez K. (USS)                 Apunte curso IA                  Primer Semestre 2011   63 / 111
Ejemplo
Puzzle 4




     De acuerdo a este esquema, el estado inicial queda seteado como el
     n´mero 1 y el objetivo como el 5.
      u
     El orden que se va a establecer para encontrar los sucesores de cada
     estado va a estar dado por:

                           m→     m←              m↑   m↓




     M. Ram´
           ırez K. (USS)        Apunte curso IA             Primer Semestre 2011   64 / 111
/* Comentario */




   Importante
         El criterio que se elija para establecer la secuencia de
         operadores es completamente arbitrario.
                lo que implica el orden en que se generen los sucesores de
                cualquier nodo del ´rbol
                                    a
         Una vez establecido, se debe respetar en todo momento.




  M. Ram´
        ırez K. (USS)               Apunte curso IA         Primer Semestre 2011   65 / 111
Ejemplo
Puzzle 4



     Entenderemos que para cualquier estado, sus nodos sucesores
     admisibles son aquellos que sean distintos de ¶.
     Veamos, por ejemplo, cu´les son los estados sucesores admisibles para
                            a
                     1 2
     el nodo inicial       de acuerdo al orden de operadores establecido:
                     3

                                 1 2
                      1    m→             = ¶ pues no podemos salir del tablero.
                                 3
                                 1 2            1        2
                      2    m←             =
                                 3                       3
                                1 2           1
                      3    m↑            =
                                3             3     2
                                1 2
                      4    m↓            = ¶ pues no podemos salir del tablero.
                                3


     M. Ram´
           ırez K. (USS)               Apunte curso IA         Primer Semestre 2011   66 / 111
Ejemplo
Puzzle 4




Por lo tanto, de acuerdo al orden que nos dan las funciones md , el orden
                                   1 2
de los sucesores admisibles para          es:
                                   3

                           1   2                         1
                                 (7)        ∧                    (14)
                               3                         2   3




     M. Ram´
           ırez K. (USS)               Apunte curso IA              Primer Semestre 2011   67 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u




     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO        CERRADO       X   Sucesores de X
                     1            [1]             []        1        7-14
                                [7 14]           [1]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                          m            7


                                          1


                                          m            14




     M. Ram´
           ırez K. (USS)             Apunte curso IA            Primer Semestre 2011   68 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u


     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X    Sucesores de X
                     2            [14]         [1 7]       7         1-21
                                [21 14]                               21
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                                       m

                                 m        7                21


                                 1


                                 m        14



     M. Ram´
           ırez K. (USS)             Apunte curso IA            Primer Semestre 2011   69 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u


     Tabla de traza del algoritmo:
              No. Iteraci´n
                         o     ABIERTO      CERRADO         X    Sucesores de X
                    3             [14]       [1 7 21]       21        15-7
                                [15 14]                                15
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                        m                   m

                           m     7                     21             15


                           1


                           m    14



     M. Ram´
           ırez K. (USS)             Apunte curso IA             Primer Semestre 2011   70 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u


     Tabla de traza del algoritmo:
              No. Iteraci´n
                         o     ABIERTO      CERRADO         X    Sucesores de X
                    4            [14]       [1 7 21 15]     15        21-7
                                                                      ——
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                        m                   m

                           m     7                     21             15


                           1


                           m    14



     M. Ram´
           ırez K. (USS)             Apunte curso IA             Primer Semestre 2011   71 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u


     Tabla de traza del algoritmo:
             No. Iteraci´n
                        o      ABIERTO        CERRADO         X     Sucesores de X
                   5              []         [1 7 21 15 14]   14          20
                                 [20]
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                         m                    m

                           m      7                     21              15


                           1
                                           m
                           m     14                     20



     M. Ram´
           ırez K. (USS)              Apunte curso IA              Primer Semestre 2011   72 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u


     Tabla de traza del algoritmo:
           No. Iteraci´n
                      o        ABIERTO          CERRADO              X       Sucesores de X
                 6                []         [1 7 21 15 14 20]       20          14-11
                                 [11]                                              11
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                            m                    m

                           m       7                       21                  15


                           1
                                                                 m
                                              m
                           m      14                       20                  11



     M. Ram´
           ırez K. (USS)                 Apunte curso IA                  Primer Semestre 2011   73 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u

     Tabla de traza del algoritmo:
         No. Iteraci´n
                    o          ABIERTO            CERRADO           X    Sucesores de X
               7                   []        [1 7 21 15 14 20 11]   11        5-20
                                  [5]                                           5
     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                         m                  m

                           m      7                  21             15


                           1
                                                            m
                                          m
                           m     14                  20             11
                                                                         m


                                                                     5

     M. Ram´
           ırez K. (USS)                 Apunte curso IA            Primer Semestre 2011   74 / 111
Puzzle 4
traza de soluci´n usando b´squeda en profundidad
               o          u

     Tabla de traza del algoritmo:
               No. Iteraci´n
                          o    ABIERTO       CERRADO       X   Sucesores de X
                     8            []                       5

     Evoluci´n del ´rbol de b´squeda parcial:
            o      a         u

                                    m                  m

                           m   7                 21            15


                           1
                                                       m
                                      m
                           m   14               20             11
                                                                    m



                                                               5
     M. Ram´
           ırez K. (USS)             Apunte curso IA           Primer Semestre 2011   75 / 111
/* Comentario */
Puzzle 4

     De la iteraci´n 8, se observa que el camino que conduce del estado 1
                  o
     al 5 es



       1        m↑         14   m←                20        m↓          11           m→            5


     Atendiendo a la numeraci´n que ten´ los estados, este camino
                             o         ıan
     podemos representarlo gr´ficamente como:
                             a
                                        m                       m
                                1   2               1                   1
                                3                   3   2           3   2
                                                                            1
                                (1)                 (14)            (20)

                                                                        m




                                                            m
                                            3   1                   3   1
                                            2                           2

                                            (5)                     (11)


     M. Ram´
           ırez K. (USS)                Apunte curso IA                         Primer Semestre 2011   76 / 111
B´squeda en Profundidad vs B´squeda en Anchura
 u                          u
Criterio: Completitud




      En profundidad, el algoritmo encuentra una soluci´n si se impone
                                                         o
      una profundidad l´
                       ımite y existe una soluci´n dentro de ese l´
                                                o                 ımite.
      En anchura, el algoritmo siempre encuentra una soluci´n en caso de
                                                           o
      haberla.




     M. Ram´
           ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   77 / 111
B´squeda en Profundidad vs B´squeda en Anchura
 u                          u
Criterio: Complejidad Temporal




     En profundidad, si tomamos como medida del costo el n´mero de
                                                               u
     nodos explorados, el costo es exponencial respecto al factor de
     ramificaci´n r y la profundidad del l´
              o                          ımite de exploraci´n m, nos da
                                                           o
     O(rm ).
     En anchura, si tomamos como medida del costo el n´mero de nodos
                                                         u
     explorados, este crece de manera exponencial respecto al factor de
     ramificaci´n r y la profundidad m de la soluci´n: O(rm ).
              o                                   o




     M. Ram´
           ırez K. (USS)         Apunte curso IA      Primer Semestre 2011   78 / 111
B´squeda en Profundidad vs B´squeda en Anchura
 u                          u
Criterio: Complejidad Espacial




      En profundidad, el costo es lineal respecto al factor de ramificaci´n r
                                                                        o
            ımite de profundidad m, es decir O(rm).
      y el l´
      En anchura, Dado que tenemos que almacenar todos los nodos
      pendientes por explorar, el costo es exponencial respecto al factor de
      ramificaci´n y la profundidad de la soluci´n: O(rm ).
               o                               o




     M. Ram´
           ırez K. (USS)          Apunte curso IA       Primer Semestre 2011   79 / 111
B´squeda en Profundidad vs B´squeda en Anchura
 u                          u
Criterio: Optimalidad




      En profundidad, no se garantiza que la soluci´n sea ´ptima, la
                                                     o      o
      soluci´n que se retornar´ ser´ la primera en el orden de exploraci´n.
            o                 a    a                                    o
      En anchura, la soluci´n obtenida es ´ptima respecto al n´mero de
                            o               o                 u
      pasos desde la ra´ Si los operadores de b´squeda tienen costo
                       ız.                       u
      uniforme,el costo de la soluci´n ser´ el ´ptimo.
                                    o     ıa o




     M. Ram´
           ırez K. (USS)          Apunte curso IA       Primer Semestre 2011   80 / 111
B´squeda informada
 u




   La b´squeda no informada comete el error de ser muy ineficiente.
       u
   Al no depender del problema para el cual se est´n aplicando, operan
                                                   e
   en cierta medida a ciegas.
   El objetivo de las estrategias de b´squeda informadas es que
                                      u
   incorporen informaci´n particular del problema para resolverlo:
                        o
          se gana en eficiencia
          se evita el uso de recorridos innecesarios en el espacio de estados.




   M. Ram´
         ırez K. (USS)              Apunte curso IA          Primer Semestre 2011   81 / 111
B´squeda informada
 u



   A diferencia de los m´todos no informados, la idea va a ser encontrar
                        e
   alg´n v´rtice que presente ventajas comparativas sobre los otros
      u e
   candidatos:
          uno que en cierta etapa presente mayores posibilidades de abrir
          caminos que lleven a la soluci´n.
                                        o
   Este v´rtice m´s promisor puede ser obtenido asociando un costo a
         e        a
   cada regla, lo que determina una funci´n de evaluaci´n
                                         o              o

                                  f : E −→ R+
                                            0

   que ya veremos.




   M. Ram´
         ırez K. (USS)            Apunte curso IA        Primer Semestre 2011   82 / 111
B´squeda informada
 u




   En esta clase de algoritmos, se retira el concepto de aplicabilidad de
   reglas y se reemplaza por el de costo asociado a una regla, de tal
   manera que la funci´n f ayude a encontrar el pr´ximo estado en ser
                       o                             o
   expandido.
   El m´todo que veremos en esta etapa recibe el nombre A*.
       e




   M. Ram´
         ırez K. (USS)         Apunte curso IA        Primer Semestre 2011   83 / 111
Algoritmo A*
A-estrella




      Es muy similar a la b´squeda en profundidad.
                           u
      En este algoritmo la funci´n de evaluaci´n f la calculamos a partir de
                                o             o
      la suma de dos funciones

                                        g, h : E −→ R+
                                                     0

      de tal manera que para un estado n ∈ E:
             g mide el costo acumulado en el ´rbol de exploraci´n para ir de la ra´
                                               a                 o                ız
             (nodo inicial) al nodo n (no necesariamente el ´ptimo).
                                                            o
             h representa una estimaci´n del costo m´s barato para ir del estado n
                                        o             a
             hasta el objetivo.
                    h recibe el nombre de funci´n heur´
                                                o       ıstica.
                    Si p es un estado objetivo, entonces h(p) = 0.




      M. Ram´
            ırez K. (USS)               Apunte curso IA              Primer Semestre 2011   84 / 111
Algoritmo A*
A-estrella




      Importante
      De esta manera:

                            ∀n ∈ E : f (n) = g(n) + h(n)

             f mide la distancia que hay de la ra´ hasta el objetivo pasando
                                                 ız
             por el nodo n.
             Por lo tanto, se prefieren los valores m´s bajos.
                                                    a




      M. Ram´
            ırez K. (USS)           Apunte curso IA        Primer Semestre 2011   85 / 111
Algoritmo A* I

Entrada: representaci´n del espacio de estados, estrategia de soluci´n
                         o                                            o
Salida: ´xito o fracaso
         e
 1: Crear el grafo de b´squeda T con X como nodo inicial
                          u
 2: ABIERTO ← [X]
 3: CERRADO ← []
 4: mientras ABIERTO = [] hacer
 5:    remover el primer nodo X de ABIERTO
 6:    colocar X en CERRADO
 7:    si X es un estado objetivo entonces
 8:        retornar ´xito: camino hasta X en T
                      e
 9:    sino
10:        generar el conjunto de sucesores del estado X
11:        ordenar los sucesores en orden creciente de acuerdo a los valores actualizados
           de f
12:        incluir los sucesores de X en T con los arcos correspondientes
13:        para cada Y en sucesores hacer
14:           si Y no est´ en ABIERTO ni en CERRADO entonces
                           a
15:               agregar Y en la lista ABIERTO


     M. Ram´
           ırez K. (USS)               Apunte curso IA            Primer Semestre 2011   86 / 111
Algoritmo A* II

16:               actualizar la lista ABIERTO en orden creciente seg´n los valores de f
                                                                    u
                  manteniendo el de menor valor
17:            fin si
18:            si Y est´ en ABIERTO entonces
                        a
19:               si el nuevo camino a Y es m´s corto entonces
                                              a
20:                  actualizar el camino almacenado en ABIERTO en forma creciente
                     seg´n los valores de f manteniendo el de menor valor
                         u
21:               fin si
22:            fin si
23:            si Y est´ en CERRADO entonces
                        a
24:               si el nuevo camino a Y es m´s corto entonces
                                              a
25:                  remover Y de CERRADO
26:                  agregar Y en ABIERTO
27:               fin si
28:            fin si
29:        fin para
30:      fin si
31:   fin mientras
32:   retornar fracaso

      M. Ram´
            ırez K. (USS)               Apunte curso IA            Primer Semestre 2011   87 / 111
Algoritmo A*
A-estrella




Por notaci´n, al elaborar el ´rbol de b´squeda, al lado de cada nodo n
          o                  a         u
colocaremos expl´ıcitamente g(n) + h(n).




      M. Ram´
            ırez K. (USS)       Apunte curso IA       Primer Semestre 2011   88 / 111
Algoritmo A* - Ejemplo
parte del mapa de Rumania


                                       71
                            Zerind                  Oradea

                  75
                                       151
                               140                             99
                     Arad                Sibiu                             Fagaras



                  118
            Timisoara                  80

                  111                                                            211
                                        Rimnicu
              Lugoj                      Vilcea

                                                         97
                  70                                     Pitesti    101
                                       146
            Mehadia
                                                                          Bucharest
                                                     138
                                        Craiova
                75
                  Dobreta
                                 120
     M. Ram´
           ırez K. (USS)               Apunte curso IA                Primer Semestre 2011   89 / 111
Algoritmo A*
Ejemplo de traza del algoritmo




      Los nodos representan ciudades y las aristas vienen rotuladas con el
      costo para ir de un lugar a otro.
      Se pide encontrar el costo m´
                                  ınimo y el camino que se debe seguir
      para ir de Arad hasta Bucarest ocupando el algoritmo A*.




     M. Ram´
           ırez K. (USS)         Apunte curso IA        Primer Semestre 2011   90 / 111
De Arad a Bucharest I
traza de A*



     En todo problema donde intervengan estrategias de b´squeda informadas,
                                                        u
     debemos considerar la funci´n heur´
                                o      ıstica.
     En este caso, podemos considerar como heur´ıstica la distancia que hay en l´
                                                                                ınea
     recta para ir desde una ciudad n hasta Bucharest. As´ı:

                      h(n) = distancia en l´
                                           ınea recta desde n hasta Bucharest

     Los valores se resumen en esta tabla:
                           Ciudad n     h(n)         Ciudad n       h(n)
                             Arad        366          Oradea         380
                           Bucharest      0           Pitesti        100
                            Craiova      160       Rimnicu Vilcea    193
                            Dobreta      242           Sibiu         253
                            Fagaras      176         Timisoara       329
                             Lugoj       244          Zerind         374
                           Mehadia       241



     M. Ram´
           ırez K. (USS)                 Apunte curso IA            Primer Semestre 2011   91 / 111
De Arad a Bucharest II
traza de A*




     Haremos en detalle las dos primeras iteraciones del algoritmo.
     Una iteraci´n habr´ finalizado cada vez que se salga del ciclo mientras de A*
                o      a




     M. Ram´
           ırez K. (USS)              Apunte curso IA           Primer Semestre 2011   92 / 111
De Arad a Bucharest III
traza de A*


Iteraci´n 1.
       o


      El nodo X tiene el valor Arad porque es el estado inicial del problema. Luego:
               ABIERTO = [Arad]
               CERRADO = []
      Como ABIERTO no es igual a [], removemos el primer nodo que tiene, en este
      caso X=Arad y lo colocamos en CERRADO.
      De esta manera, los valores actuales que toman estas listas son
               ABIERTO = []
               CERRADO = [Arad]
      Como X=Arad no es el estado objetivo, procedemos a hallar sus sucesores:
               Timisoara
               Zerind
               Sibiu


     M. Ram´
           ırez K. (USS)               Apunte curso IA           Primer Semestre 2011   93 / 111
De Arad a Bucharest IV
traza de A*


     Para ordenarlos, debemos evaluar la funci´n f en cada uno de ellos y luego
                                              o
     reescribirlos de menor a mayor:

                           f (Timisoara)      =       g(Timisoara) + h(Timisoara)
                                              =       118 + 329
                                              =       447



                                f (Zerind)     =       g(Zerind) + h(Zerind)
                                               =       75 + 374
                                               =       449



                                  f (Sibiu)       =     g(Sibiu) + h(Sibiu)
                                                  =     140 + 253
                                                  =     393

     M. Ram´
           ırez K. (USS)                      Apunte curso IA                 Primer Semestre 2011   94 / 111
De Arad a Bucharest V
traza de A*


     De esta manera, los sucesores de X los anotamos en este orden:

                                   Sibiu      Timisoara       Zerind

                                                    Arad




                       140+253                                           75+374

                           Sibiu     118+329      Timisoara              Zerind



     Ahora hay que hacer el tratamiento de los nodos sucesores de X:

                    Nodo Y         Nuevo f (Y)        Actualizaci´n de ABIERTO
                                                                 o
                      Sibiu           393             [Sibiu]
                    Timisoara         447             [Sibiu Timisoara]
                     Zerind           449             [Sibiu Timisoara Zerind]



     M. Ram´
           ırez K. (USS)                   Apunte curso IA             Primer Semestre 2011   95 / 111
De Arad a Bucharest VI
traza de A*

      Con esto termina la primera iteraci´n. Hasta el momento:
                                         o
               ABIERTO = [Sibiu Timisoara Zerind]
               CERRADO = [Arad]

Iteraci´n 2.
       o

      El primer nodo X de ABIERTO es Sibiu.
      Tras retirarlo y colocarlo en CERRADO, ambas listas quedan as´
                                                                   ı:
               ABIERTO = [Timisoara Zerind]
               CERRADO = [Arad Sibiu]
      Como X=Sibiu no es estado final, buscamos sus sucesores:
               Arad (el hecho que est´ en CERRADO no significa que haya que
                                     e
               excluirlo como sucesor)
               Oradea
               Fagaras
               Romnicu Vilcea
     M. Ram´
           ırez K. (USS)              Apunte curso IA            Primer Semestre 2011   96 / 111
De Arad a Bucharest VII
traza de A*


     Como g mide el costo acumulado que se lleva desde la ra´ hasta el nodo n
                                                            ız
     debemos considerar que hasta el momento hemos expandido Arad y Sibiu, de tal
     manera que g(Arad) es igual al costo del camino de Arad a Sibiu (140) m´s el
                                                                            a
     retorno de Sibiu a Arad (140).
     As´ g(Arad)=280. Por lo tanto:
       ı,
              g(Oradea) = costo camino Arad - Sibiu - Oradea = 140 + 151 = 291
              g(Fagaras) = costo camino Arad - Sibiu - Fagaras = 140 + 99 = 239
              g(Romnicu Vilcea) = costo camino Arad - Sibiu - Romnicu Vilcea =
              140 + 80 = 220
     De esta manera, los valores actualizados de f para cada sucesor y ordenados de
     manera creciente son:
              f (Romnicu Vilcea) = 413
              f (Fagaras) = 415
              f (Oradea) = 646
              f (Arad) = 671


     M. Ram´
           ırez K. (USS)              Apunte curso IA         Primer Semestre 2011   97 / 111
De Arad a Bucharest VIII
traza de A*



     El grafo de b´squeda se muestra a continuaci´n con los nodos actualizados:
                  u                              o


                                                       Arad




                           Sibiu       118+329 Timisoara               Zerind        75+374




        Romnicu
         Vilcea             Arad                 Fagaras        Oradea      291+380
       220+193             280+366               239+176




     M. Ram´
           ırez K. (USS)             Apunte curso IA          Primer Semestre 2011    98 / 111
De Arad a Bucharest IX
traza de A*




     De los sucesores de Sibiu, el unico que est´ en ABIERTO es Arad y mantenemos el
                                   ´            a
     camino acumulado de menor valor en el grafo, que vale 140+253 = 393,
     descart´ndose el “nuevo” Arad como nodo para explorar.
            a




     M. Ram´
           ırez K. (USS)            Apunte curso IA          Primer Semestre 2011   99 / 111
De Arad a Bucharest X
traza de A*




¿Y el resto de las ciudades?




     M. Ram´
           ırez K. (USS)       Apunte curso IA   Primer Semestre 2011   100 / 111
De Arad a Bucharest XI
traza de A*


Romnicu Vilcea


                                                                    Arad




                                       Sibiu            118+329 Timisoara       Zerind    75+374




                      Romnicu              Arad                Fagaras      Oradea   291+380
                       Vilcea
                                      280+366                  239+176




              Sibiu    Craiova   Pitesti

           300+253     366+160   315+100




     M. Ram´
           ırez K. (USS)                          Apunte curso IA             Primer Semestre 2011   101 / 111
De Arad a Bucharest XII
traza de A*


Fagaras


                                                                     Arad




                                       Sibiu            118+329 Timisoara               Zerind    75+374




                      Romnicu              Arad                   Fagaras           Oradea   291+380
                       Vilcea
                                      280+366




              Sibiu    Craiova   Pitesti                  Sibiu         Bucharest

           300+253     366+160   315+100                338+253             450+0




     M. Ram´
           ırez K. (USS)                          Apunte curso IA                     Primer Semestre 2011   102 / 111
De Arad a Bucharest XIII
traza de A*

Pitesti

                                                                           Arad




                                                Sibiu         118+329 Timisoara               Zerind    75+374




                            Romnicu             Arad                    Fagaras           Oradea   291+380
                             Vilcea
                                             280+366




                Sibiu        Craiova   Pitesti                  Sibiu         Bucharest

               300+253       366+160                           338+253            450+0




                           Romnicu     Bucharest
                            Vilcea                        Craiova

                           414+193      418+0             455+160




     M. Ram´
           ırez K. (USS)                                Apunte curso IA                        Primer Semestre 2011   103 / 111
De Arad a Bucharest XIV
traza de A*


Bucharest

                                                                          Arad




                                                Sibiu        118+329 Timisoara               Zerind    75+374




                              Romnicu            Arad                  Fagaras           Oradea   291+380
                               Vilcea
                                               280+366




                    Sibiu      Craiova    Pitesti              Sibiu         Bucharest

                   300+253     366+160                        338+253            450+0




                             Romnicu
                              Vilcea     Bucharest       Craiova

                             414+193                     455+160
                                           418




     M. Ram´
           ırez K. (USS)                             Apunte curso IA                              Primer Semestre 2011   104 / 111
De Arad a Bucharest XV
traza de A*




De esta manera, el costo del camino menor para llegar a Bucharest es igual a 418 y la
ruta a seguir est´ dada por
                 a

              Arad         Sibiu   Romnicu Vicea           Pitesti   Bucharest




     M. Ram´
           ırez K. (USS)                 Apunte curso IA              Primer Semestre 2011   105 / 111
Admisibilidad

    Un algoritmo de b´squeda se dice que es admisible si garantiza que pueda
                      u
    encontrar el camino ´ptimo entre el estado inicial y el objetivo.
                        o
    Una b´squeda basada en una funci´n de evaluaci´n heur´
         u                          o             o      ıstica

                                f (n) = g(n) + h(n)

    es admisible si h subestima el largo del camino m´
                                                     ınimo efectivo.
          Es optimista, ya que “cree” que el costo para ir de un nodo n y el
          objetivo es menor de lo que en realidad es.
    Para demostrar que un algoritmo de b´squeda sea admisible, se define una
                                          u
    funci´n
         o
                                  f ∗ : E −→ R+
                                              0

    que entrega el largo del camino ´ptimo del nodo inicial a un nodo objetivo
                                    o
    pasando por n.

   M. Ram´
         ırez K. (USS)             Apunte curso IA        Primer Semestre 2011   106 / 111
Admisibilidad


     A este tipo de funciones se les conoce como funciones or´culo porque
                                                                 a
     implica adivinar cu´l es el mejor camino sin recorrer el espacio de estados.
                        a
     ∀n ∈ E se define
                                f ∗ (n) = g ∗ (n) + h∗ (n)
     en que
           g ∗ (n) es el largo efectivo del camino ´ptimo del nodo inicial al nodo
                                                    o
           n.
           h∗ (n) es el largo efectivo desde n al objetivo.


Siempre se tiene que
                              ∀n ∈ E : g(n) ≥ g ∗ (n)




    M. Ram´
          ırez K. (USS)             Apunte curso IA          Primer Semestre 2011   107 / 111
Admisibilidad

     Teorema.
     Si ∀n ∈ E : h(n) ≤ h∗ (n) entonces la b´squeda heur´
                                            u           ıstica es admisible.


Demostraci´n
          o

     Supongamos por el contrario que

                                      ∀n ∈ E : h(n) ≤ h∗ (n)

     y que la b´squeda heur´
               u           ıstica no es admisible bajo esa condici´n.
                                                                  o
     Sea q uno de los nodos objetivo del problema y supongamos que q fue generado a trav´s
                                                                                        e
     de un camino de largo (o costo) l:
           entonces f (q) = l
     Como q fue el ultimo nodo en ser expandido, se tiene que ∀x ∈ ABIERTO: f (x) ≥ f (q)
                   ´

           por lo tanto, f (x) ≥ l



    M. Ram´
          ırez K. (USS)                   Apunte curso IA          Primer Semestre 2011   108 / 111
Admisibilidad
Demostraci´n (Cont.)
          o

     Pero, si el camino que lleva a q no es el optimo debiera existir alg´n nodo n en la lista
                                               ´                         u
     ABIERTO que se haya generado antes de expandir q y que est´ en el camino ´ptimo.
                                                                      e             o
     Si n estuviera en el camino optimo entonces g(n) = g ∗ (n), de tal manera que
                                 ´

                                           f (n) = g ∗ (n) + h(n)


     Dado que hemos supuesto h(n) ≤ h∗ (n), entonces

                          [g ∗ (n) + h(n)] ≤ [g ∗ (n) + h∗ (n)] ⇐⇒ f (n) ≤ f ∗ (n)


     Como dijimos que este algoritmo de b´squeda no era admisible, entonces el camino que
                                         u
     conduce a q no es el ´ptimo por lo que f ∗ (n) < l y as´ f (n) ≤ f ∗ (n) < l.
                          o                                 ı
     Esto nos conduce a que

                                                 f (n) < l
     lo que genera una contradicci´n.
                                  o

    M. Ram´
          ırez K. (USS)                     Apunte curso IA             Primer Semestre 2011   109 / 111
Admisibilidad




   Teorema.
   Si la heur´
             ıstica que se use es admisible, el algoritmo A* es ´ptimo si
                                                                o
   no descartamos nodos.




   M. Ram´
         ırez K. (USS)         Apunte curso IA       Primer Semestre 2011   110 / 111
Fin de la Unidad 2




    M. Ram´
          ırez K. (USS)   Apunte curso IA   Primer Semestre 2011   111 / 111

Más contenido relacionado

La actualidad más candente

metodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialmetodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialNoraVelasquez4
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de ContextoBrayhan Acosta
 
Arboles de derivacion
Arboles de derivacionArboles de derivacion
Arboles de derivacionLuis Couoh
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Metodología orientadas a objetos
Metodología orientadas a objetosMetodología orientadas a objetos
Metodología orientadas a objetosyolandacando1
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De TuringRicardo Quintero
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 
Poo es-u3-ep1 elabora programas computacionales utilizando herencia y polim...
Poo es-u3-ep1  elabora programas computacionales utilizando  herencia y polim...Poo es-u3-ep1  elabora programas computacionales utilizando  herencia y polim...
Poo es-u3-ep1 elabora programas computacionales utilizando herencia y polim...Conalep Puebla III
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...Hugo Alberto Rivera Diaz
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salidaJorge Garcia
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Proyecto De Base De Datos
Proyecto De Base De DatosProyecto De Base De Datos
Proyecto De Base De Datosguesta67b7c
 

La actualidad más candente (20)

Transacciones
TransaccionesTransacciones
Transacciones
 
metodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialmetodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificial
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Arboles de derivacion
Arboles de derivacionArboles de derivacion
Arboles de derivacion
 
Casos de uso
Casos de usoCasos de uso
Casos de uso
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
 
Metodologia orientada a objeto
Metodologia orientada a objetoMetodologia orientada a objeto
Metodologia orientada a objeto
 
Metodología orientadas a objetos
Metodología orientadas a objetosMetodología orientadas a objetos
Metodología orientadas a objetos
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De Turing
 
TABLA DE SÍMBOLOS
TABLA DE SÍMBOLOSTABLA DE SÍMBOLOS
TABLA DE SÍMBOLOS
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
 
Poo es-u3-ep1 elabora programas computacionales utilizando herencia y polim...
Poo es-u3-ep1  elabora programas computacionales utilizando  herencia y polim...Poo es-u3-ep1  elabora programas computacionales utilizando  herencia y polim...
Poo es-u3-ep1 elabora programas computacionales utilizando herencia y polim...
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salida
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Proyecto De Base De Datos
Proyecto De Base De DatosProyecto De Base De Datos
Proyecto De Base De Datos
 

Destacado

Unidad No. 1 - Introducción a la IA y Representación de Problemas
Unidad No. 1 - Introducción a la IA y Representación de ProblemasUnidad No. 1 - Introducción a la IA y Representación de Problemas
Unidad No. 1 - Introducción a la IA y Representación de ProblemasMilton Klapp
 
Clase 7 Espacio de estado
Clase 7 Espacio de estadoClase 7 Espacio de estado
Clase 7 Espacio de estadoUNEFA
 
Unidad no. 1 introducción a la ia y representación de problemas
Unidad no. 1   introducción a la ia y representación de problemasUnidad no. 1   introducción a la ia y representación de problemas
Unidad no. 1 introducción a la ia y representación de problemasMilton Klapp
 
Clase 05-E LogíSitica
Clase 05-E LogíSiticaClase 05-E LogíSitica
Clase 05-E LogíSiticaMilton Klapp
 
Unidad No. 6 - Introducción al Aprendizaje Automático
Unidad No. 6 - Introducción al Aprendizaje AutomáticoUnidad No. 6 - Introducción al Aprendizaje Automático
Unidad No. 6 - Introducción al Aprendizaje AutomáticoMilton Klapp
 
Tipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialTipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialJuank Grifin
 
Unidad No. 4 - Representación del Conocimiento
Unidad No. 4 - Representación del ConocimientoUnidad No. 4 - Representación del Conocimiento
Unidad No. 4 - Representación del ConocimientoMilton Klapp
 
Unidad No. 3 - Planificadores Modernos
Unidad No. 3 - Planificadores ModernosUnidad No. 3 - Planificadores Modernos
Unidad No. 3 - Planificadores ModernosMilton Klapp
 
Contrato clase prepa1
Contrato clase prepa1Contrato clase prepa1
Contrato clase prepa1susyperal
 
Unidad No. 2 - Búsqueda en Espacios de Estados
Unidad No. 2 - Búsqueda en Espacios de EstadosUnidad No. 2 - Búsqueda en Espacios de Estados
Unidad No. 2 - Búsqueda en Espacios de EstadosMilton Klapp
 
7 impacto de las tic en el medio ambiente
7 impacto de las tic en el medio ambiente7 impacto de las tic en el medio ambiente
7 impacto de las tic en el medio ambienteMilton Klapp
 
Realimentacion del estado
Realimentacion del estadoRealimentacion del estado
Realimentacion del estadoAdan Aguirre
 
Solución de problemas mediante busqueda
Solución de problemas mediante busquedaSolución de problemas mediante busqueda
Solución de problemas mediante busquedasacrilegetx
 
Tipos de busquedas ia
Tipos de busquedas iaTipos de busquedas ia
Tipos de busquedas iaPAko DiAz
 

Destacado (15)

Unidad No. 1 - Introducción a la IA y Representación de Problemas
Unidad No. 1 - Introducción a la IA y Representación de ProblemasUnidad No. 1 - Introducción a la IA y Representación de Problemas
Unidad No. 1 - Introducción a la IA y Representación de Problemas
 
Clase 7 Espacio de estado
Clase 7 Espacio de estadoClase 7 Espacio de estado
Clase 7 Espacio de estado
 
2011 03-10
2011 03-102011 03-10
2011 03-10
 
Unidad no. 1 introducción a la ia y representación de problemas
Unidad no. 1   introducción a la ia y representación de problemasUnidad no. 1   introducción a la ia y representación de problemas
Unidad no. 1 introducción a la ia y representación de problemas
 
Clase 05-E LogíSitica
Clase 05-E LogíSiticaClase 05-E LogíSitica
Clase 05-E LogíSitica
 
Unidad No. 6 - Introducción al Aprendizaje Automático
Unidad No. 6 - Introducción al Aprendizaje AutomáticoUnidad No. 6 - Introducción al Aprendizaje Automático
Unidad No. 6 - Introducción al Aprendizaje Automático
 
Tipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialTipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia Artificial
 
Unidad No. 4 - Representación del Conocimiento
Unidad No. 4 - Representación del ConocimientoUnidad No. 4 - Representación del Conocimiento
Unidad No. 4 - Representación del Conocimiento
 
Unidad No. 3 - Planificadores Modernos
Unidad No. 3 - Planificadores ModernosUnidad No. 3 - Planificadores Modernos
Unidad No. 3 - Planificadores Modernos
 
Contrato clase prepa1
Contrato clase prepa1Contrato clase prepa1
Contrato clase prepa1
 
Unidad No. 2 - Búsqueda en Espacios de Estados
Unidad No. 2 - Búsqueda en Espacios de EstadosUnidad No. 2 - Búsqueda en Espacios de Estados
Unidad No. 2 - Búsqueda en Espacios de Estados
 
7 impacto de las tic en el medio ambiente
7 impacto de las tic en el medio ambiente7 impacto de las tic en el medio ambiente
7 impacto de las tic en el medio ambiente
 
Realimentacion del estado
Realimentacion del estadoRealimentacion del estado
Realimentacion del estado
 
Solución de problemas mediante busqueda
Solución de problemas mediante busquedaSolución de problemas mediante busqueda
Solución de problemas mediante busqueda
 
Tipos de busquedas ia
Tipos de busquedas iaTipos de busquedas ia
Tipos de busquedas ia
 

Unidad no. 2 búsqueda en espacio de estados

  • 1. INTELIGENCIA ARTIFICIAL - ICIF0021 Unidad 2 - B´squeda en Espacio de Estados u Docente: Milton A. Ram´ Klapp ırez miramire@gmail.com Universidad San Sebasti´n a Facultad de Ingenier´ y Tecnolog´ ıa ıa Primer Semestre 2011 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 1 / 111
  • 2. Objetivos de la Unidad Conocen la estructura general de un agente de b´squeda. u Identifican los tipos de b´squeda que existen y comprenden las diferencias entre u ambos enfoques. Conocen las diferentes m´tricas que existen para evaluar el rendimiento de un e algoritmo determinado en funci´n de par´metros como completitud, optimalidad, o a complejidad temporal y complejidad espacial. Realizan b´squedas no informadas empleando las estrategias en anchura y en u profundidad. Comprenden la problem´tica que tiene la b´squeda no informada y entienden la a u necesidad de contar con informaci´n adicional en un problema. o Resuelven problemas aplicando estrategias de b´squeda informada con heur´ u ısticas admisibles. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 2 / 111
  • 3. Contenidos 1 Estructura de un espacio de estados. 2 ´ Arboles de b´squeda. u 3 Algoritmo general de b´squeda. u 4 B´squeda no informada: por anchura y en profundidad. u 5 B´squeda informada: A*. u 6 Admisibilidad de heur´ ısiticas. 7 M´tricas para evaluar el rendimiento de una soluci´n. e o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 3 / 111
  • 4. Presentaci´n o Sabemos c´mo plantear un problema. o ¿C´mo lo resolvemos? o Mediante una exploraci´n del espacio de estados. o El ´rbol de b´squeda es la estructura de datos que permite hacer el a u escaneo y se construye a partir del espacio de estados. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 4 / 111
  • 5. Presentaci´n o En l´ ıneas generales, se parte del estado inicial del ´rbol de b´squeda a u y se va evaluando cada operaci´n posible hasta llegar a la soluci´n del o o problema, respetando en todo momento las restricciones del mismo. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 5 / 111
  • 6. Importante Las acciones que lleguen a ¶ deben evitarse siempre. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 6 / 111
  • 7. Espacio de estados El espacio de estados se puede representar como un grafo donde: cada nodo corresponde a un estado del problema, los arcos (aristas) representan la aplicaci´n de un operador. o Si f ∈ Φ y para alg´n x ∈ E : f (x) = y, la representaci´n gr´fica de u o a esto es: f x y M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 7 / 111
  • 8. Espacio de estados v1 NODO INICIAL o1 o2 v2 v3 o1 o1 o1 o2 NODOS INTERMEDIOS o2 o2 o2 v4 v5 v6 o1 o2 o1 v7 v8 v9 NODOS OBJETIVOS 01, 02 01, 02 01, 02 NODO DE FRACASO M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 8 / 111
  • 9. Espacio de estados Identifique todos los elementos del espacio de estados de la figura anterior: conjunto de estados E conjunto de operadores Φ para cada operador ∆ ∈ Φ indique en una tabla el valor de ∆(x), x ∈ E conjunto de objetivos M M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 9 / 111
  • 10. Importante Es f´cil advertir en general que, independiente del problema P: a (∀m ∈ M)(∀∆ ∈ Φ) : ∆(m) = m
  • 11. ´ Arboles de b´squeda u Las definiciones de nodo y arco son las mismas que ocupamos para explicar el espacio de estados. Recordar que en un ´rbol a existe un unico camino entre cada par de nodos y ´ no hay ciclos. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 11 / 111
  • 12. ´ Arboles de b´squeda u Conceptos particulares La ra´ del ´rbol corresponde al estado inicial. ız a La expansi´n de un nodo es el proceso que permite encontrar sus o sucesores inmediatos. Los sucesores de un nodo reciben el nombre de hijos. El objetivo es un nodo terminal del ´rbol que se recibe el nombre de a hoja. RAÍZ NODO N NODOS SUCESORES DE N M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 12 / 111
  • 13. Esquema general de b´squeda u Elementos principales La lista ABIERTO contiene a los estados que han sido generados pero no explorados, lo que quiere decir que hasta el momento no se saben si son estado final ni cu´les son sus estados sucesores (o hijos) dentro a del ´rbol de b´squeda. a u La lista CERRADO guarda todos los estados que ya se han visitado. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 13 / 111
  • 14. Esquema general de b´squeda u Entrada: representaci´n del espacio de estados o Salida: ´xito o fracaso e 1: Crear el ´rbol de b´squeda T con X como nodo inicial a u 2: ABIERTO ← [X] 3: CERRADO ← [] 4: mientras ABIERTO = [] hacer 5: remover un estado X del conjunto ABIERTO 6: si X es un estado objetivo entonces 7: retornar ´xito: camino hasta X en T e 8: sino 9: generar el conjunto de sucesores admisibles del estado X 10: agregar X al conjunto CERRADO 11: eliminar los sucesores que est´n en ABIERTO o en CERRADO e 12: agregar el resto de los sucesores al conjunto ABIERTO 13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes 14: fin si 15: fin mientras 16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 14 / 111
  • 15. Esquema general de b´squeda u En la l´ ınea 11 del algoritmo general de b´squeda, el hecho de u eliminar los sucesores que est´n en ABIERTO o en CERRADO evita e caer en ciclos, para que no sean considerados de nuevo. Dependiendo del orden en que se traten los elementos de ABIERTO, se obtienen diferentes tipos de recorrido. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 15 / 111
  • 16. Espacio de estados El espacio de estados se puede representar como un grafo donde: cada nodo corresponde a un estado del problema, los arcos (aristas) representan la aplicaci´n de un operador. o Si f ∈ Φ y para alg´n x ∈ E : f (x) = y, la representaci´n gr´fica de u o a esto es: f x y M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 16 / 111
  • 17. Espacio de estados v1 NODO INICIAL o1 o2 v2 v3 o1 o1 o1 o2 NODOS INTERMEDIOS o2 o2 o2 v4 v5 v6 o1 o2 o1 v7 v8 v9 NODOS OBJETIVOS 01, 02 01, 02 01, 02 NODO DE FRACASO M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 17 / 111
  • 18. Espacio de estados Identifique todos los elementos del espacio de estados de la figura anterior: conjunto de estados E conjunto de operadores Φ para cada operador ∆ ∈ Φ indique en una tabla el valor de ∆(x), x ∈ E conjunto de objetivos M M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 18 / 111
  • 19. Espacio de estados Importante Independiente de cu´l sea P =< E, Φ, M >, estableceremos que a (∀m ∈ M)(∀∆ ∈ Φ) : ∆(m) = m ¿C´mo se traduce al espa˜ol el comentario de arriba? o n M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 19 / 111
  • 20. ´ Arboles de b´squeda u Las definiciones de nodo y arco son las mismas que ocupamos para explicar el espacio de estados. Recordar que en un ´rbol a existe un unico camino entre cada par de nodos y ´ no hay ciclos. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 20 / 111
  • 21. ´ Arboles de b´squeda u Conceptos particulares La ra´ del ´rbol corresponde al estado inicial. ız a La expansi´n de un nodo es el proceso que permite encontrar sus o sucesores inmediatos. Los sucesores de un nodo reciben el nombre de hijos. El objetivo es un nodo terminal del ´rbol que recibe el nombre de a hoja. RAÍZ NODO N NODOS SUCESORES DE N M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 21 / 111
  • 22. Esquema general de b´squeda u Elementos principales La lista ABIERTO contiene a los estados que han sido generados pero no explorados, lo que quiere decir que hasta el momento no se saben si son estado final ni cu´les son sus estados sucesores (o hijos) dentro a del ´rbol de b´squeda. a u La lista CERRADO guarda todos los estados que ya se han visitado. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 22 / 111
  • 23. Esquema general de b´squeda u Entrada: representaci´n del espacio de estados o Salida: ´xito o fracaso e 1: Crear el ´rbol de b´squeda T con X como nodo inicial a u 2: ABIERTO ← [X] 3: CERRADO ← [] 4: mientras ABIERTO = [] hacer 5: remover un estado X del conjunto ABIERTO 6: si X es un estado objetivo entonces 7: retornar ´xito: camino hasta X en T e 8: sino 9: generar el conjunto de sucesores admisibles del estado X 10: agregar X al conjunto CERRADO 11: eliminar los sucesores que est´n en ABIERTO o en CERRADO e 12: agregar el resto de los sucesores al conjunto ABIERTO 13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes 14: fin si 15: fin mientras 16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 23 / 111
  • 24. Esquema general de b´squeda u En la l´ ınea 11 del algoritmo general de b´squeda, el hecho de u eliminar los sucesores que est´n en ABIERTO o en CERRADO evita e caer en ciclos, para que no sean considerados de nuevo. Dependiendo del orden en que se traten los elementos de ABIERTO, se obtienen diferentes tipos de recorrido. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 24 / 111
  • 25. M´tricas para medir el rendimiento de una soluci´n e o Completitud. El algoritmo es completo si es capaz de hallar la soluci´n del o problema. Complejidad temporal. Se refiere al costo en tiempo que tarde la ejecuci´n o del algoritmo para encontrar la soluci´n – si es que puede o hacerlo – en funci´n del tama˜o de la entrada. o n Complejidad espacial. Es el espacio requerido para almacenar los nodos que est´n o se hayan explorado. e Optimalidad. Si es capaz de encontrar la mejor soluci´n de acuerdo a o alg´n criterio de costo determinado. u M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 25 / 111
  • 26. M´tricas para medir el rendimiento de una soluci´n e o Elementos que intervienen en la complejidad Complejidad temporal 1 Factor de ramificaci´n (b): corresponde al m´ximo n´mero de o a u sucesores de cualquier nodo. 2 Profundidad (d): es la distancia a la que se encuentra el nodo objetivo m´s superficial. a 3 Longitud m´xima del camino (m): es la profundidad m´xima en el a a ´rbol de b´squeda. a u Complejidad espacial Se mide en funci´n del tama˜o m´ximo que alcancen los conjuntos o n a ABIERTO y CERRADO durante el proceso de b´squeda. u M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 26 / 111
  • 27. Costo total de una b´squeda u Entonces, el costo de hacer una b´squeda se mide en t´rminos: u e del tiempo de ejecuci´n de la b´squeda o u la cantidad de memoria que utilice. Por lo tanto, el costo total de la soluci´n es igual a o tiempo de b´squeda + costo del camino u M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 27 / 111
  • 28. ¿Qu´ vimos la clase pasada? e Elementos principales de los algoritmos de b´squeda. u M´tricas para evaluar el rendimiento de los m´todos de b´squeda. e e u M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 28 / 111
  • 29. Hoy veremos Estrategias de b´squeda u en particular m´todos no informados, como algoritmos que operan en e profundidad y en amplitud. Comparaci´n entre ambos m´todos. o e M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 29 / 111
  • 30. Estrategias de B´squeda u Trabajaremos con dos esquemas: B´squeda no informada u No hay informaci´n adicional sobre los estados. o S´lo se utiliza la definici´n del problema. o o Sigue un orden de exploraci´n del espacio de estados de acuerdo a su o estructura. B´squeda informada u Utilizan una estimaci´n del costo o de la calidad de la soluci´n para o o guiar la b´squeda. u No sigue un orden espec´ ıfico para explorar el espacio de estados, sino que se orientan por el criterio heur´ ıstico aplicado. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 30 / 111
  • 31. Etapas del proceso de codificaci´n de la soluci´n o o independiente del esquema elegido PROBLEMA M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 31 / 111
  • 32. Etapas del proceso de codificaci´n de la soluci´n o o independiente del esquema elegido abstracción EXPRESIÓN PROBLEMA COMO ESPACIO DE ESTADOS M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 32 / 111
  • 33. Etapas del proceso de codificaci´n de la soluci´n o o independiente del esquema elegido abstracción EXPRESIÓN PROBLEMA COMO ESPACIO DE ESTADOS IMPLEMENTAC . EN LENG . DE PROGRAMACIÓN M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 33 / 111
  • 34. Etapas del proceso de codificaci´n de la soluci´n o o independiente del esquema elegido abstracción EXPRESIÓN PROBLEMA COMO ESPACIO DE ESTADOS APLICACIÓN IMPLEMENTAC . ALGORITMO EN LENG . DE BÚSQUEDA PROGRAMACIÓN M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 34 / 111
  • 35. Etapas del proceso de codificaci´n de la soluci´n o o independiente del esquema elegido abstracción EXPRESIÓN PROBLEMA COMO ESPACIO DE ESTADOS APLICACIÓN IMPLEMENTAC. ALGORITMO EN LENG . DE BÚSQUEDA PROGRAMACIÓN interpretación SOLUCIÓN M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 35 / 111
  • 36. B´squeda no informada u Veremos dos t´cnicas: e 1 B´squeda en profundidad. u 2 B´squeda en anchura. u La diferencia entre uno y otro es la manera en la cual se administre el orden de visita de los nodos del conjunto ABIERTO. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 36 / 111
  • 37. B´squeda en Profundidad u Se le conoce como depth-first search. El conjunto ABIERTO se maneja como una lista tipo LIFO: last in, first out los elementos de ABIERTO se tratan como a una pila. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 37 / 111
  • 38. B´squeda en Profundidad u De manera m´s informal, este algoritmo opera as´ a ı: Se comienza en el nodo ra´ ız Despu´s se expanden todos los hijos e A continuaci´n se expanden los hijos de los hijos avanzando en o profundidad . . . y as´ sucesivamente ı En l´ ıneas generales, se visitan primero los ultimos nodos en ser ´ generados. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 38 / 111
  • 39. Algoritmo de B´squeda en Profundidad u Entrada: representaci´n del espacio de estados o Salida: ´xito o fracaso e 1: Crear el ´rbol de b´squeda T con X como nodo inicial a u 2: ABIERTO ← [X] 3: CERRADO ← [] 4: mientras ABIERTO = [] hacer 5: remover el primer elemento X del conjunto ABIERTO 6: si X es un estado objetivo entonces 7: retornar ´xito: camino en T hasta X e 8: sino 9: generar el conjunto de sucesores admisibles del estado X 10: eliminar los sucesores que est´n en ABIERTO o en CERRADO e 11: agregar X al conjunto CERRADO 12: agregar el resto de los sucesores al principio del conjunto ABIERTO 13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes 14: fin si 15: fin mientras 16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 39 / 111
  • 40. Ejemplo Traza del algoritmo de b´squeda en profundidad u Consideremos, para simplificar, el siguiente espacio de estados donde 1 es el nodo de inicio y 8 el objetivo: 2 6 1 4 5 8 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 40 / 111
  • 41. Ejemplo Traza del algoritmo de b´squeda en profundidad u El seguimiento que haremos se har´ a trav´s de una tabla cuyas columnas a e ser´n las variables que intervienen en la concepci´n del algoritmo: a o Lista de estados ABIERTO (sin explorar a´n). u Lista de estados CERRADOS (ya explorados). X, que hace las veces del primer elemento de ABIERTO. Conjunto de sucesores de X los hijos de X los ordenaremos por nombre en forma ascendente. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 41 / 111
  • 42. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X [1] [] 1 2-3 1 [] [1] [2 3] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 1 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 42 / 111
  • 43. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 2 [3] [1 2] 2 4-6 [4 6 3] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 43 / 111
  • 44. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 3 [6 3] [1 2 4] 4 5 [5 6 3] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 44 / 111
  • 45. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 4 [6 3] [1 2 4 5] 5 6-7 [7 6 3] 7 Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 45 / 111
  • 46. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 5 [6 3] [1 2 4 5 7] 7 8 [8 6 3] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 8 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 46 / 111
  • 47. Ejemplo Traza del algoritmo de b´squeda en profundidad u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 6 [6 3] 8 El camino final se muestra con flechas m´s gruesas: a 2 6 1 4 5 8 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 47 / 111
  • 48. B´squeda en Anchura u Se le conoce tambi´n como b´squeda en amplitud o breadth-first e u search. El conjunto ABIERTO se maneja como una lista FIFO: first in, first out se maneja como una fila. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 48 / 111
  • 49. B´squeda en Anchura u El recorrido que del espacio de estados lo hace por niveles de profundidad, de manera que un nodo se visita solamente cuando todos sus predecesores y sus hermanos anteriores en orden de generaci´n ya se han visitado. o NODO INICIAL NIVEL 0 NIVEL 1 NIVEL 2 OBJETIVO NIVEL 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 49 / 111
  • 50. B´squeda en Anchura u Se comienza en el nodo ra´ ız. Despu´s se expanden todos los hijos. e A continuaci´n se expanden todos los hijos de los hijos. o . . . y as´ sucesivamente ı se expanden todos los nodos de un nivel antes de expandir el pr´ximo. o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 50 / 111
  • 51. Algoritmo de B´squeda en Anchura u Entrada: representaci´n del espacio de estados o Salida: ´xito o fracaso e 1: Crear el ´rbol de b´squeda T con X como nodo inicial a u 2: ABIERTO ← [X] 3: CERRADO ← [] 4: mientras ABIERTO = [] hacer 5: remover el primer elemento X del conjunto ABIERTO 6: si X es un estado objetivo entonces 7: retornar ´xito: camino en T hasta X e 8: sino 9: generar el conjunto de sucesores admisibles del estado X 10: eliminar los sucesores que est´n en ABIERTO o en CERRADO e 11: agregar X al conjunto CERRADO 12: agregar el resto de los sucesores al final del conjunto ABIERTO 13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes 14: fin si 15: fin mientras 16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 51 / 111
  • 52. Ejemplo traza del algoritmo de b´squeda en anchura u Consideremos nuevamente el espacio de estados del ejemplo anterior 2 6 1 4 5 8 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 52 / 111
  • 53. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X [1] [] 1 2-3 1 [] [1] [2 3] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 1 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 53 / 111
  • 54. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 2 [3] [1 2] 2 4-6 [3 4 6] Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 54 / 111
  • 55. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 3 [4 6] [1 2 3] 3 4-5-7 [4 6 5 7] 5-7 Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 55 / 111
  • 56. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 4 [6 5 7] [1 2 3 4] 4 5 Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 56 / 111
  • 57. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 5 [5 7] [1 2 3 4 6] 6 7-8 [5 7 8] 8 Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 8 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 57 / 111
  • 58. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 6 [7 8] [1 2 3 4 6 5] 5 6-7 —— Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 8 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 58 / 111
  • 59. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 7 [8] [1 2 4 5 6 5 7] 7 8 Evoluci´n del ´rbol de b´squeda parcial: o a u 2 6 1 4 5 3 7 8 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 59 / 111
  • 60. Ejemplo traza del algoritmo de b´squeda en anchura u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 8 [] 8 El camino final se muestra con flechas m´s gruesas: a 2 6 1 4 5 3 7 8 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 60 / 111
  • 61. /* Comentario */ Los ejemplos de seguimiento que hemos hecho hasta el momento han contemplado s´lo un grafo en donde hemos encubierto las o operaciones que permiten ir de un estado a otro. Esto era solamente para que se entienda bien el esp´ ıritu de los algoritmos que se han revisado. A continuaci´n veremos un ejemplo donde el grafo ya no lo vamos a o tener listo como el de los ejemplos anteriores, sino que va a ser necesario ir generando los nodos siguiendo un orden de aplicaci´n de o operadores. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 61 / 111
  • 62. Ejemplo Puzzle 4 Consideremos una adaptaci´n del puzzle 8 conocida como el puzzle o 4, el cual sigue las mismas reglas con las mismas operaciones, tal como fueron definidas para su hom´logo. o Encuentre una soluci´n para este problema usando b´squeda en o u profundidad, indicando la secuencia de operaciones a realizar, sabiendo que los estados inicial y final son, respectivamente: 1 2 3 1 3 2 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 62 / 111
  • 63. Ejemplo Puzzle 4 Los elementos del espacio de estados son: 1 2 1 3 2 1 2 3 3 1 3 2 3 2 3 1 2 1 (1) (2) (3) (4) (5) (6) 1 2 1 3 2 1 2 3 3 1 3 2 3 2 3 1 2 1 (7) (8) (9) (10) (11) (12) 1 1 2 2 3 3 2 3 3 2 1 3 3 1 1 2 2 1 (13) (14) (15) (16) (17) (18) 1 1 2 2 3 3 2 3 3 2 1 3 3 1 1 2 2 1 (19) (20) (21) (22) (23) (24) ¶(25) M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 63 / 111
  • 64. Ejemplo Puzzle 4 De acuerdo a este esquema, el estado inicial queda seteado como el n´mero 1 y el objetivo como el 5. u El orden que se va a establecer para encontrar los sucesores de cada estado va a estar dado por: m→ m← m↑ m↓ M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 64 / 111
  • 65. /* Comentario */ Importante El criterio que se elija para establecer la secuencia de operadores es completamente arbitrario. lo que implica el orden en que se generen los sucesores de cualquier nodo del ´rbol a Una vez establecido, se debe respetar en todo momento. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 65 / 111
  • 66. Ejemplo Puzzle 4 Entenderemos que para cualquier estado, sus nodos sucesores admisibles son aquellos que sean distintos de ¶. Veamos, por ejemplo, cu´les son los estados sucesores admisibles para a 1 2 el nodo inicial de acuerdo al orden de operadores establecido: 3 1 2 1 m→ = ¶ pues no podemos salir del tablero. 3 1 2 1 2 2 m← = 3 3 1 2 1 3 m↑ = 3 3 2 1 2 4 m↓ = ¶ pues no podemos salir del tablero. 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 66 / 111
  • 67. Ejemplo Puzzle 4 Por lo tanto, de acuerdo al orden que nos dan las funciones md , el orden 1 2 de los sucesores admisibles para es: 3 1 2 1 (7) ∧ (14) 3 2 3 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 67 / 111
  • 68. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 1 [1] [] 1 7-14 [7 14] [1] Evoluci´n del ´rbol de b´squeda parcial: o a u m 7 1 m 14 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 68 / 111
  • 69. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 2 [14] [1 7] 7 1-21 [21 14] 21 Evoluci´n del ´rbol de b´squeda parcial: o a u m m 7 21 1 m 14 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 69 / 111
  • 70. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 3 [14] [1 7 21] 21 15-7 [15 14] 15 Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m 14 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 70 / 111
  • 71. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 4 [14] [1 7 21 15] 15 21-7 —— Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m 14 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 71 / 111
  • 72. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 5 [] [1 7 21 15 14] 14 20 [20] Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m m 14 20 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 72 / 111
  • 73. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 6 [] [1 7 21 15 14 20] 20 14-11 [11] 11 Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m m m 14 20 11 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 73 / 111
  • 74. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 7 [] [1 7 21 15 14 20 11] 11 5-20 [5] 5 Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m m m 14 20 11 m 5 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 74 / 111
  • 75. Puzzle 4 traza de soluci´n usando b´squeda en profundidad o u Tabla de traza del algoritmo: No. Iteraci´n o ABIERTO CERRADO X Sucesores de X 8 [] 5 Evoluci´n del ´rbol de b´squeda parcial: o a u m m m 7 21 15 1 m m m 14 20 11 m 5 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 75 / 111
  • 76. /* Comentario */ Puzzle 4 De la iteraci´n 8, se observa que el camino que conduce del estado 1 o al 5 es 1 m↑ 14 m← 20 m↓ 11 m→ 5 Atendiendo a la numeraci´n que ten´ los estados, este camino o ıan podemos representarlo gr´ficamente como: a m m 1 2 1 1 3 3 2 3 2 1 (1) (14) (20) m m 3 1 3 1 2 2 (5) (11) M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 76 / 111
  • 77. B´squeda en Profundidad vs B´squeda en Anchura u u Criterio: Completitud En profundidad, el algoritmo encuentra una soluci´n si se impone o una profundidad l´ ımite y existe una soluci´n dentro de ese l´ o ımite. En anchura, el algoritmo siempre encuentra una soluci´n en caso de o haberla. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 77 / 111
  • 78. B´squeda en Profundidad vs B´squeda en Anchura u u Criterio: Complejidad Temporal En profundidad, si tomamos como medida del costo el n´mero de u nodos explorados, el costo es exponencial respecto al factor de ramificaci´n r y la profundidad del l´ o ımite de exploraci´n m, nos da o O(rm ). En anchura, si tomamos como medida del costo el n´mero de nodos u explorados, este crece de manera exponencial respecto al factor de ramificaci´n r y la profundidad m de la soluci´n: O(rm ). o o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 78 / 111
  • 79. B´squeda en Profundidad vs B´squeda en Anchura u u Criterio: Complejidad Espacial En profundidad, el costo es lineal respecto al factor de ramificaci´n r o ımite de profundidad m, es decir O(rm). y el l´ En anchura, Dado que tenemos que almacenar todos los nodos pendientes por explorar, el costo es exponencial respecto al factor de ramificaci´n y la profundidad de la soluci´n: O(rm ). o o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 79 / 111
  • 80. B´squeda en Profundidad vs B´squeda en Anchura u u Criterio: Optimalidad En profundidad, no se garantiza que la soluci´n sea ´ptima, la o o soluci´n que se retornar´ ser´ la primera en el orden de exploraci´n. o a a o En anchura, la soluci´n obtenida es ´ptima respecto al n´mero de o o u pasos desde la ra´ Si los operadores de b´squeda tienen costo ız. u uniforme,el costo de la soluci´n ser´ el ´ptimo. o ıa o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 80 / 111
  • 81. B´squeda informada u La b´squeda no informada comete el error de ser muy ineficiente. u Al no depender del problema para el cual se est´n aplicando, operan e en cierta medida a ciegas. El objetivo de las estrategias de b´squeda informadas es que u incorporen informaci´n particular del problema para resolverlo: o se gana en eficiencia se evita el uso de recorridos innecesarios en el espacio de estados. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 81 / 111
  • 82. B´squeda informada u A diferencia de los m´todos no informados, la idea va a ser encontrar e alg´n v´rtice que presente ventajas comparativas sobre los otros u e candidatos: uno que en cierta etapa presente mayores posibilidades de abrir caminos que lleven a la soluci´n. o Este v´rtice m´s promisor puede ser obtenido asociando un costo a e a cada regla, lo que determina una funci´n de evaluaci´n o o f : E −→ R+ 0 que ya veremos. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 82 / 111
  • 83. B´squeda informada u En esta clase de algoritmos, se retira el concepto de aplicabilidad de reglas y se reemplaza por el de costo asociado a una regla, de tal manera que la funci´n f ayude a encontrar el pr´ximo estado en ser o o expandido. El m´todo que veremos en esta etapa recibe el nombre A*. e M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 83 / 111
  • 84. Algoritmo A* A-estrella Es muy similar a la b´squeda en profundidad. u En este algoritmo la funci´n de evaluaci´n f la calculamos a partir de o o la suma de dos funciones g, h : E −→ R+ 0 de tal manera que para un estado n ∈ E: g mide el costo acumulado en el ´rbol de exploraci´n para ir de la ra´ a o ız (nodo inicial) al nodo n (no necesariamente el ´ptimo). o h representa una estimaci´n del costo m´s barato para ir del estado n o a hasta el objetivo. h recibe el nombre de funci´n heur´ o ıstica. Si p es un estado objetivo, entonces h(p) = 0. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 84 / 111
  • 85. Algoritmo A* A-estrella Importante De esta manera: ∀n ∈ E : f (n) = g(n) + h(n) f mide la distancia que hay de la ra´ hasta el objetivo pasando ız por el nodo n. Por lo tanto, se prefieren los valores m´s bajos. a M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 85 / 111
  • 86. Algoritmo A* I Entrada: representaci´n del espacio de estados, estrategia de soluci´n o o Salida: ´xito o fracaso e 1: Crear el grafo de b´squeda T con X como nodo inicial u 2: ABIERTO ← [X] 3: CERRADO ← [] 4: mientras ABIERTO = [] hacer 5: remover el primer nodo X de ABIERTO 6: colocar X en CERRADO 7: si X es un estado objetivo entonces 8: retornar ´xito: camino hasta X en T e 9: sino 10: generar el conjunto de sucesores del estado X 11: ordenar los sucesores en orden creciente de acuerdo a los valores actualizados de f 12: incluir los sucesores de X en T con los arcos correspondientes 13: para cada Y en sucesores hacer 14: si Y no est´ en ABIERTO ni en CERRADO entonces a 15: agregar Y en la lista ABIERTO M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 86 / 111
  • 87. Algoritmo A* II 16: actualizar la lista ABIERTO en orden creciente seg´n los valores de f u manteniendo el de menor valor 17: fin si 18: si Y est´ en ABIERTO entonces a 19: si el nuevo camino a Y es m´s corto entonces a 20: actualizar el camino almacenado en ABIERTO en forma creciente seg´n los valores de f manteniendo el de menor valor u 21: fin si 22: fin si 23: si Y est´ en CERRADO entonces a 24: si el nuevo camino a Y es m´s corto entonces a 25: remover Y de CERRADO 26: agregar Y en ABIERTO 27: fin si 28: fin si 29: fin para 30: fin si 31: fin mientras 32: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 87 / 111
  • 88. Algoritmo A* A-estrella Por notaci´n, al elaborar el ´rbol de b´squeda, al lado de cada nodo n o a u colocaremos expl´ıcitamente g(n) + h(n). M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 88 / 111
  • 89. Algoritmo A* - Ejemplo parte del mapa de Rumania 71 Zerind Oradea 75 151 140 99 Arad Sibiu Fagaras 118 Timisoara 80 111 211 Rimnicu Lugoj Vilcea 97 70 Pitesti 101 146 Mehadia Bucharest 138 Craiova 75 Dobreta 120 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 89 / 111
  • 90. Algoritmo A* Ejemplo de traza del algoritmo Los nodos representan ciudades y las aristas vienen rotuladas con el costo para ir de un lugar a otro. Se pide encontrar el costo m´ ınimo y el camino que se debe seguir para ir de Arad hasta Bucarest ocupando el algoritmo A*. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 90 / 111
  • 91. De Arad a Bucharest I traza de A* En todo problema donde intervengan estrategias de b´squeda informadas, u debemos considerar la funci´n heur´ o ıstica. En este caso, podemos considerar como heur´ıstica la distancia que hay en l´ ınea recta para ir desde una ciudad n hasta Bucharest. As´ı: h(n) = distancia en l´ ınea recta desde n hasta Bucharest Los valores se resumen en esta tabla: Ciudad n h(n) Ciudad n h(n) Arad 366 Oradea 380 Bucharest 0 Pitesti 100 Craiova 160 Rimnicu Vilcea 193 Dobreta 242 Sibiu 253 Fagaras 176 Timisoara 329 Lugoj 244 Zerind 374 Mehadia 241 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 91 / 111
  • 92. De Arad a Bucharest II traza de A* Haremos en detalle las dos primeras iteraciones del algoritmo. Una iteraci´n habr´ finalizado cada vez que se salga del ciclo mientras de A* o a M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 92 / 111
  • 93. De Arad a Bucharest III traza de A* Iteraci´n 1. o El nodo X tiene el valor Arad porque es el estado inicial del problema. Luego: ABIERTO = [Arad] CERRADO = [] Como ABIERTO no es igual a [], removemos el primer nodo que tiene, en este caso X=Arad y lo colocamos en CERRADO. De esta manera, los valores actuales que toman estas listas son ABIERTO = [] CERRADO = [Arad] Como X=Arad no es el estado objetivo, procedemos a hallar sus sucesores: Timisoara Zerind Sibiu M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 93 / 111
  • 94. De Arad a Bucharest IV traza de A* Para ordenarlos, debemos evaluar la funci´n f en cada uno de ellos y luego o reescribirlos de menor a mayor: f (Timisoara) = g(Timisoara) + h(Timisoara) = 118 + 329 = 447 f (Zerind) = g(Zerind) + h(Zerind) = 75 + 374 = 449 f (Sibiu) = g(Sibiu) + h(Sibiu) = 140 + 253 = 393 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 94 / 111
  • 95. De Arad a Bucharest V traza de A* De esta manera, los sucesores de X los anotamos en este orden: Sibiu Timisoara Zerind Arad 140+253 75+374 Sibiu 118+329 Timisoara Zerind Ahora hay que hacer el tratamiento de los nodos sucesores de X: Nodo Y Nuevo f (Y) Actualizaci´n de ABIERTO o Sibiu 393 [Sibiu] Timisoara 447 [Sibiu Timisoara] Zerind 449 [Sibiu Timisoara Zerind] M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 95 / 111
  • 96. De Arad a Bucharest VI traza de A* Con esto termina la primera iteraci´n. Hasta el momento: o ABIERTO = [Sibiu Timisoara Zerind] CERRADO = [Arad] Iteraci´n 2. o El primer nodo X de ABIERTO es Sibiu. Tras retirarlo y colocarlo en CERRADO, ambas listas quedan as´ ı: ABIERTO = [Timisoara Zerind] CERRADO = [Arad Sibiu] Como X=Sibiu no es estado final, buscamos sus sucesores: Arad (el hecho que est´ en CERRADO no significa que haya que e excluirlo como sucesor) Oradea Fagaras Romnicu Vilcea M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 96 / 111
  • 97. De Arad a Bucharest VII traza de A* Como g mide el costo acumulado que se lleva desde la ra´ hasta el nodo n ız debemos considerar que hasta el momento hemos expandido Arad y Sibiu, de tal manera que g(Arad) es igual al costo del camino de Arad a Sibiu (140) m´s el a retorno de Sibiu a Arad (140). As´ g(Arad)=280. Por lo tanto: ı, g(Oradea) = costo camino Arad - Sibiu - Oradea = 140 + 151 = 291 g(Fagaras) = costo camino Arad - Sibiu - Fagaras = 140 + 99 = 239 g(Romnicu Vilcea) = costo camino Arad - Sibiu - Romnicu Vilcea = 140 + 80 = 220 De esta manera, los valores actualizados de f para cada sucesor y ordenados de manera creciente son: f (Romnicu Vilcea) = 413 f (Fagaras) = 415 f (Oradea) = 646 f (Arad) = 671 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 97 / 111
  • 98. De Arad a Bucharest VIII traza de A* El grafo de b´squeda se muestra a continuaci´n con los nodos actualizados: u o Arad Sibiu 118+329 Timisoara Zerind 75+374 Romnicu Vilcea Arad Fagaras Oradea 291+380 220+193 280+366 239+176 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 98 / 111
  • 99. De Arad a Bucharest IX traza de A* De los sucesores de Sibiu, el unico que est´ en ABIERTO es Arad y mantenemos el ´ a camino acumulado de menor valor en el grafo, que vale 140+253 = 393, descart´ndose el “nuevo” Arad como nodo para explorar. a M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 99 / 111
  • 100. De Arad a Bucharest X traza de A* ¿Y el resto de las ciudades? M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 100 / 111
  • 101. De Arad a Bucharest XI traza de A* Romnicu Vilcea Arad Sibiu 118+329 Timisoara Zerind 75+374 Romnicu Arad Fagaras Oradea 291+380 Vilcea 280+366 239+176 Sibiu Craiova Pitesti 300+253 366+160 315+100 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 101 / 111
  • 102. De Arad a Bucharest XII traza de A* Fagaras Arad Sibiu 118+329 Timisoara Zerind 75+374 Romnicu Arad Fagaras Oradea 291+380 Vilcea 280+366 Sibiu Craiova Pitesti Sibiu Bucharest 300+253 366+160 315+100 338+253 450+0 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 102 / 111
  • 103. De Arad a Bucharest XIII traza de A* Pitesti Arad Sibiu 118+329 Timisoara Zerind 75+374 Romnicu Arad Fagaras Oradea 291+380 Vilcea 280+366 Sibiu Craiova Pitesti Sibiu Bucharest 300+253 366+160 338+253 450+0 Romnicu Bucharest Vilcea Craiova 414+193 418+0 455+160 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 103 / 111
  • 104. De Arad a Bucharest XIV traza de A* Bucharest Arad Sibiu 118+329 Timisoara Zerind 75+374 Romnicu Arad Fagaras Oradea 291+380 Vilcea 280+366 Sibiu Craiova Pitesti Sibiu Bucharest 300+253 366+160 338+253 450+0 Romnicu Vilcea Bucharest Craiova 414+193 455+160 418 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 104 / 111
  • 105. De Arad a Bucharest XV traza de A* De esta manera, el costo del camino menor para llegar a Bucharest es igual a 418 y la ruta a seguir est´ dada por a Arad Sibiu Romnicu Vicea Pitesti Bucharest M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 105 / 111
  • 106. Admisibilidad Un algoritmo de b´squeda se dice que es admisible si garantiza que pueda u encontrar el camino ´ptimo entre el estado inicial y el objetivo. o Una b´squeda basada en una funci´n de evaluaci´n heur´ u o o ıstica f (n) = g(n) + h(n) es admisible si h subestima el largo del camino m´ ınimo efectivo. Es optimista, ya que “cree” que el costo para ir de un nodo n y el objetivo es menor de lo que en realidad es. Para demostrar que un algoritmo de b´squeda sea admisible, se define una u funci´n o f ∗ : E −→ R+ 0 que entrega el largo del camino ´ptimo del nodo inicial a un nodo objetivo o pasando por n. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 106 / 111
  • 107. Admisibilidad A este tipo de funciones se les conoce como funciones or´culo porque a implica adivinar cu´l es el mejor camino sin recorrer el espacio de estados. a ∀n ∈ E se define f ∗ (n) = g ∗ (n) + h∗ (n) en que g ∗ (n) es el largo efectivo del camino ´ptimo del nodo inicial al nodo o n. h∗ (n) es el largo efectivo desde n al objetivo. Siempre se tiene que ∀n ∈ E : g(n) ≥ g ∗ (n) M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 107 / 111
  • 108. Admisibilidad Teorema. Si ∀n ∈ E : h(n) ≤ h∗ (n) entonces la b´squeda heur´ u ıstica es admisible. Demostraci´n o Supongamos por el contrario que ∀n ∈ E : h(n) ≤ h∗ (n) y que la b´squeda heur´ u ıstica no es admisible bajo esa condici´n. o Sea q uno de los nodos objetivo del problema y supongamos que q fue generado a trav´s e de un camino de largo (o costo) l: entonces f (q) = l Como q fue el ultimo nodo en ser expandido, se tiene que ∀x ∈ ABIERTO: f (x) ≥ f (q) ´ por lo tanto, f (x) ≥ l M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 108 / 111
  • 109. Admisibilidad Demostraci´n (Cont.) o Pero, si el camino que lleva a q no es el optimo debiera existir alg´n nodo n en la lista ´ u ABIERTO que se haya generado antes de expandir q y que est´ en el camino ´ptimo. e o Si n estuviera en el camino optimo entonces g(n) = g ∗ (n), de tal manera que ´ f (n) = g ∗ (n) + h(n) Dado que hemos supuesto h(n) ≤ h∗ (n), entonces [g ∗ (n) + h(n)] ≤ [g ∗ (n) + h∗ (n)] ⇐⇒ f (n) ≤ f ∗ (n) Como dijimos que este algoritmo de b´squeda no era admisible, entonces el camino que u conduce a q no es el ´ptimo por lo que f ∗ (n) < l y as´ f (n) ≤ f ∗ (n) < l. o ı Esto nos conduce a que f (n) < l lo que genera una contradicci´n. o M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 109 / 111
  • 110. Admisibilidad Teorema. Si la heur´ ıstica que se use es admisible, el algoritmo A* es ´ptimo si o no descartamos nodos. M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 110 / 111
  • 111. Fin de la Unidad 2 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 111 / 111