Unidad no. 2   búsqueda en espacio de estados
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,013
On Slideshare
2,683
From Embeds
330
Number of Embeds
1

Actions

Shares
Downloads
135
Comments
0
Likes
1

Embeds 330

http://moodle.ubiobio.cl 330

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 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 2011M. 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. ImportanteLas 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. ImportanteEs 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 uConceptos 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 uElementos 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 uEntrada: representaci´n del espacio de estados oSalida: ´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 X10: agregar X al conjunto CERRADO11: eliminar los sucesores que est´n en ABIERTO o en CERRADO e12: agregar el resto de los sucesores al conjunto ABIERTO13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes14: fin si15: fin mientras16: 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 uConceptos 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 uElementos 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 uEntrada: representaci´n del espacio de estados oSalida: ´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 X10: agregar X al conjunto CERRADO11: eliminar los sucesores que est´n en ABIERTO o en CERRADO e12: agregar el resto de los sucesores al conjunto ABIERTO13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes14: fin si15: fin mientras16: 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 oCompletitud. 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 nComplejidad espacial. Es el espacio requerido para almacenar los nodos que est´n o se hayan explorado. eOptimalidad. 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 oElementos que intervienen en la complejidadComplejidad 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 uComplejidad espacialSe mide en funci´n del tama˜o m´ximo que alcancen los conjuntos o n aABIERTO 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 uEntonces, 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 uTrabajaremos 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 oindependiente 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 oindependiente 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 oindependiente 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 oindependiente 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 oindependiente 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 uVeremos dos t´cnicas: e 1 B´squeda en profundidad. u 2 B´squeda en anchura. uLa diferencia entre uno y otro es la manera en la cual se administre elorden 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 uDe 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 uEntrada: representaci´n del espacio de estados oSalida: ´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 X10: eliminar los sucesores que est´n en ABIERTO o en CERRADO e11: agregar X al conjunto CERRADO12: agregar el resto de los sucesores al principio del conjunto ABIERTO13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes14: fin si15: fin mientras16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 39 / 111
  • 40. EjemploTraza del algoritmo de b´squeda en profundidad uConsideremos, para simplificar, el siguiente espacio de estados donde 1 esel 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. EjemploTraza del algoritmo de b´squeda en profundidad uEl seguimiento que haremos se har´ a trav´s de una tabla cuyas columnas a eser´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. EjemploTraza 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. EjemploTraza 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. EjemploTraza 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. EjemploTraza 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. EjemploTraza 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. EjemploTraza 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 uEntrada: representaci´n del espacio de estados oSalida: ´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 X10: eliminar los sucesores que est´n en ABIERTO o en CERRADO e11: agregar X al conjunto CERRADO12: agregar el resto de los sucesores al final del conjunto ABIERTO13: incorporar los sucesores que queden de X en el ´rbol T creando los arcos a correspondientes14: fin si15: fin mientras16: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 51 / 111
  • 52. Ejemplotraza del algoritmo de b´squeda en anchura uConsideremos 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. Ejemplotraza 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. EjemploPuzzle 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. EjemploPuzzle 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. EjemploPuzzle 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. EjemploPuzzle 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. EjemploPuzzle 4Por lo tanto, de acuerdo al orden que nos dan las funciones md , el orden 1 2de 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 4traza 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 4traza 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 4traza 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 4traza 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 4traza 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 4traza 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 4traza 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 4traza 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 uCriterio: 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 uCriterio: 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 uCriterio: 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 uCriterio: 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* IEntrada: representaci´n del espacio de estados, estrategia de soluci´n o oSalida: ´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: sino10: generar el conjunto de sucesores del estado X11: ordenar los sucesores en orden creciente de acuerdo a los valores actualizados de f12: incluir los sucesores de X en T con los arcos correspondientes13: para cada Y en sucesores hacer14: si Y no est´ en ABIERTO ni en CERRADO entonces a15: agregar Y en la lista ABIERTO M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 86 / 111
  • 87. Algoritmo A* II16: actualizar la lista ABIERTO en orden creciente seg´n los valores de f u manteniendo el de menor valor17: fin si18: si Y est´ en ABIERTO entonces a19: si el nuevo camino a Y es m´s corto entonces a20: actualizar el camino almacenado en ABIERTO en forma creciente seg´n los valores de f manteniendo el de menor valor u21: fin si22: fin si23: si Y est´ en CERRADO entonces a24: si el nuevo camino a Y es m´s corto entonces a25: remover Y de CERRADO26: agregar Y en ABIERTO27: fin si28: fin si29: fin para30: fin si31: fin mientras32: retornar fracaso M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 87 / 111
  • 88. Algoritmo A*A-estrellaPor notaci´n, al elaborar el ´rbol de b´squeda, al lado de cada nodo n o a ucolocaremos expl´ıcitamente g(n) + h(n). M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 88 / 111
  • 89. Algoritmo A* - Ejemploparte 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 Itraza 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 IItraza 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 IIItraza 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 IVtraza 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 Vtraza 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 VItraza 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 VIItraza 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 VIIItraza 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 IXtraza 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 Xtraza 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 XItraza 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 XIItraza 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 XIIItraza 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 XIVtraza 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 XVtraza de A*De esta manera, el costo del camino menor para llegar a Bucharest es igual a 418 y laruta 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. AdmisibilidadDemostraci´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