1 / 60

B squeda no Informada

yannis
Télécharger la présentation

B squeda no Informada

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Mg. Samuel Oporto Daz Bsqueda no Informada

    2. Mapa Conceptual del Curso

    3. Tabla de Contenido Estrategias de Bsqueda Bsqueda no Informada. Bsqueda por Amplitud Bsqueda por Costo Uniforme Bsqueda en Profundidad Bsqueda Limitada por Profundidad Bsqueda por Profundidad Iterativa Bsqueda Bidireccional Bibliografa

    4. Objetivos Presentar los conceptos acerca de las estrategas de bsqueda no informada.

    5. ESTRATEGIAS DE BSQUEDA

    6. Estrategias de Bsqueda Bsqueda No Informada (Ciega)

    7. Bsqueda en el Espacio de Estados La resolucin de un problema con esta representacin pasa por explorar el espacio de estados Partimos del estado inicial evaluando cada paso hasta encontrar un estado final En el caso peor exploraremos todos los posibles caminos entre el estado inicial del problema hasta llegar al estado final Definiremos una representacin del espacio de estados para poder implementar algoritmos que busquen soluciones

    8. Estructura del espacio de estados Estructuras de datos: rboles y Grafos Estados = Nodos Operadores = Arcos entre nodos (dirigidos) rboles: Solo un camino lleva a un nodo Grafos: Varios caminos pueden llevar a un nodo

    9. Algoritmo Bsico Basado en bsqueda y recorrido en rboles y grafos La estructura la construimos a medida que hacemos la bsqueda Algoritmo para una solucin: Seleccionar el primer estado como el estado actual mientras el estado actual no es el estado final hacer Generar y guardar sucesores del estado actual (expansin) Escoger el siguiente estado entre los pendientes (seleccin) fin-mientras La seleccin del siguiente nodo determinar el tipo de bsqueda (orden de seleccin o expansin) Es necesario definir un orden entre los sucesores de un nodo (orden de generacin)

    10. Algoritmo Bsico Nodos abiertos: Estados generados pero an no visitados Nodos cerrados: Estados visitados y que ya se han expandido Tendremos una estructura para almacenar los nodos abiertos Las diferentes polticas de insercin en la estructura determinarn el tipo de bsqueda Si exploramos un grafo puede ser necesario tener en cuenta los estados repetidos (esto significa tener una estructura para los nodos cerrados). Merece la pena si el nmero de nodos diferentes es pequeo respecto al nmero de caminos

    11. Evaluacin de las Estrategias Las estrategias se evalan de acuerdo a su: Completez. La estrategia garantiza encontrar una solucin, si sta existe? Complejidad temporal. Cunto tiempo se necesitar para encontrar una solucin? Complejidad espacial. Cunta memoria se necesita para efectuar la bsqueda? Optimalidad. Con esta estrategia se encontrar una solucin de la ms alta calidad, si hay varias soluciones?

    12. BUSQUEDA NO INFORMADA

    13. Estrategias de bsqueda no informada No existe informacin sobre la cantidad de estados intermedios o el costo de ruta para pasar del estado actual a la meta. Slo se sabe distinguir si estamos en el estado meta o no A esta bsqueda se le conoce tambin como bsqueda ciega

    14. Estrategias de bsqueda no informada Bsqueda preferente por amplitud Bsqueda de costo uniforme Bsqueda preferente por profundidad Bsqueda limitada por profundidad Bsqueda por profundizacin iterativa Bsqueda bidireccional

    15. BUSQUEDA POR AMPLITUD (BFS)

    16. 1. Bsqueda preferente por amplitud En este caso, primero se expande el nodo raz y luego todos los nodos generados por ste, luego sus sucesores y as sucesivamente. Todos los nodos que estn a profundidad d se expanden antes que los nodos con profundidad d+1.

    17. Bsqueda preferente por amplitud Abiertos?(n0); Cerrados?( ) Si Abiertos = ( ), fin devolviendo fallo n?primer elemento de Abiertos; eliminar n de Abiertos y llevarlo a Cerrados; Suc?( ) Si n es meta, fin con xito, devolviendo el camino expandir n, colocando sus hijos en Suc, como hijos de n eliminar de Suc cualquier nodo cuyo estado ya est asociado a algn nodo de Abiertos o Cerrados colocar los nodos de Suc al final de Abiertos Ir a 2

    25. Bsqueda preferente por amplitud Si hay solucin, es seguro que se encontrar mediante la bsqueda preferente por amplitud. Si son varias soluciones, siempre encontrar primero el estado de meta ms prximo (menos profundidad, ms a la izquierda). La bsqueda preferente por amplitud es completa y ptima siempre y cuando el costo de ruta sea una funcin que no disminuya al aumentar la profundidad del nodo.

    26. Complejidad Temporal Si b es el factor de ramificacin de los estados, y la solucin est a una profundidad d, entonces la cantidad mxima de nodos expandidos antes de encontrar la solucin es: 1+ b + b2 + b3 + ... + bd + (bd+1 b) La complejidad de este algoritmo es O(bd+1).

    27. Complejidad Espacial y Temporal Si b=10, se analizan 10,000 nodos por segundo y cada nodo requiere 1000 bytes de almacenamiento:

    28. Resumen (BFS) Los nodos se visitan y generan por niveles La estructura para los nodos abiertos es una cola (FIFO) Un nodo es visitado cuando todos los nodos de los niveles superiores y sus hermanos precedentes han sido visitados Caractersticas: Completidud: El algoritmo siempre encuentra una solucin Complejidad temporal: Exponencial respecto al factor de ramificacin y la profundidad de la solucin O(bd+1). Complejidad espacial: Exponencial respecto al factor de ramificacin y la profundidad de la solucin O(bd+1). Optimalidad: La solucin que se encuentra es ptima en nmero de niveles desde la raz

    29. Ejercicio 1 Determine el orden en que un agente basado en metas busca el objetivo (orden en que se visitan y orden en que se aperturan): VISITA (nodos cerrados) APERTURA (nodos abiertos)

    30. Ejercicio 2 Diga para el siguiente rbol el orden en que se aperturan (nodos abiertos) y orden en que se visitan los nodos (nodos cerrados).

    31. BUSQUEDA POR COSTO UNIFORME Uniform-Cost Search (UCS)

    32. Bsqueda de costo uniforme Con la bsqueda anterior no siempre se encuentra la solucin de costo de ruta mnimo. La bsqueda de costo uniforme expande siempre el nodo de menor costo en el margen, medido por el costo de ruta g(n) en vez del nodo de menor profundidad. Si se cumplen ciertas condiciones, es seguro que la primera solucin encontrada ser la ms barata. La bsqueda en amplitud es una bsqueda de costo uniforme donde g(n) = profundidad(n)

    33. Bsqueda de costo uniforme

    34. Bsqueda de costo uniforme

    35. Bsqueda de costo uniforme

    36. Bsqueda de costo uniforme

    37. Bsqueda de costo uniforme Este mtodo puede encontrar la solucin ms barata siempre y cuando se satisfaga un requisito sencillo. El costo de ruta nunca debe ir disminuyendo conforme avanzamos por la ruta, es decir, g(Sucesor(n)) ? g(n) para todos los nodos n. Para que el costo de la ruta no disminuya el costo de aplicar un operador no debe ser negativo. Qu pasa si el costo de un operador de negativo?

    38. Resumen (UCS) Se visitan y expanden los nodos del borde con menor costo. La estructura para los nodos abiertos es una cola (FIFO) Un nodo es visitado si su costo de ruta es el menor de todos. Caractersticas: Completitud: Se encuentra la ruta siempre y cuando el costo no disminuya conforme se avanza g(sucesor(n)) = g(n) Complejidad temporal: Exponencial respecto al factor de ramificacin y la profundidad de la solucin O(bd+1). Complejidad espacial: Exponencial respecto al factor de ramificacin y la profundidad de la solucin O(bd+1). Optimalidad: La solucin es ptima si el costo de un operador > 0, en caso contrario hay que buscar exhaustivamente

    39. Ejercicio 3 Use la estrategia de costo uniforme para encontrar la ruta de menor costo para ir de: A ? D. Recuerde que para la estrategia de costo uniforme se usa la funcin: f = g + h : donde h = 0. Donde g es el costo de la ruta avanzada Recomendaciones: Sustente su respuesta presentando el rbol de bsqueda generado No apertura nodos ya visitados en la misma ruta.

    40. Ejercicio 3

    41. Bsqueda preferente por profundidad (DFS)

    42. Bsqueda preferente por profundidad En esta bsqueda siempre se expande uno de los nodos que se encuentre en lo ms profundo del rbol. Slo si la bsqueda conduce a un callejn sin salida (un nodo que no es meta y que no tiene expansin), se revierte la bsqueda y se expanden los nodos de niveles menos profundos. Lo anterior se logra mediante el algoritmo de Bsqueda-General, con una funcin de lista de espera que ponga los estados recin generados al principio de la lista.

    43. Bsqueda preferente por profundidad

    44. Bsqueda preferente por profundidad Slo es necesario guardar la ruta que va del nodo raz al nodo hoja, junto con los nodos restantes no expandidos, por cada nodo de la ruta. Si un espacio de estados tiene factor de ramificacin b y profundidad mxima m, se requieren almacenar bm nodos. La complejidad temporal es de O(bm).

    45. Bsqueda preferente por profundidad Si la cantidad de soluciones en un problema es grande, se recomienda esta bsqueda (BFS) sobre la bsqueda preferente por amplitud (DFS). La desventaja de esta bsqueda es que se puede quedar estancada al avanzar por una ruta equivocada, ya que muchos rboles de bsqueda pueden ser muy profundos o infinitos. Por lo tanto, la BPPP no es ni la mas completa ni la ms ptima.

    46. Resumen (DFS) Los nodos se visitan y generan buscando los nodos a mayor profundidad y retrocediendo cuando no se encuentran nodos sucesores La estructura para los nodos abiertos es una pila (LIFO) Para garantizar que el algoritmo acaba debe imponerse un lmite en la profundidad de exploracin Caractersticas Completidud: El algoritmo encuentra una solucin si se impone un lmite de profundidad y existe una solucin dentro de ese lmite Complejidad temporal: Exponencial respecto al factor de ramificacin y la profundidad del lmite de exploracin O(bm). Complejidad espacial: Si no se controlan los nodos repetidos el coste es lineal respecto al factor de ramificacin y el lmite de profundidad O(bm). Si tratamos repetidos el coste es igual que en anchura. Si la implementacin es recursiva el coste es O(m). Optimalidad: No se garantiza que la solucin sea ptima

    47. Ejercicio 4 Considere el siguiente grfico. Los nodos sombreados ya fueron visitados y se han extendido. Dibuje el rbol de la bsqueda que corresponde a este grfico, dnde la bsqueda se inici en A y se expandi hasta R, y puede visitar un nodo en el grfico ms de una vez.

    48. Ejercicio 5 Imagine un escenario con un robot que intenta navegar en el siguiente laberinto desde (S) hasta la meta (G). A cada paso, el robot puede seguir una de las cuatro direcciones del compas. El robot contempla las alternativas en el orden siguiente: Moverse al Sur Moverse al Este Moverse al Norte Moverse al Oeste

    49. Bsqueda limitada por profundidad (DLS)

    50. Bsqueda limitada por profundidad Con esta bsqueda se eliminan las dificultades de la bsqueda preferente por profundidad, al imponer un lmite a la profundidad mxima de una ruta. El establecer este lmite es difcil, ya que no conocemos mucho sobre el espacio de estados. La bsqueda limitada puede no ser completa ni ptima: un lmite de profundidad muy pequeo puede que no contenga la solucin, y uno muy grande puede que contenga soluciones no ptimas que son encontradas primero. La complejidad espacio-temporal de la bsqueda limitada por profundidad es similar a la de la bsqueda preferente por profundidad: requiere un tiempo de O(bl) y un espacio O(bl), donde l es el lmite de profundidad.

    51. Bsqueda por profundizacin iterativa (IDS)

    52. Bsqueda por profundizacin iterativa Elimina la dificultad de elegir un lmite adecuado de profundidad en la bsqueda limitada por profundidad. Lo anterior lo hace probando todos los lmites de profundidad posibles, primero la profundidad 0, luego la 1, luego la 2, etc. En la profundizacin iterativa se combinan las ventajas de las bsquedas preferente por profundidad y preferente por amplitud. Es ptima y completa, como la bsqueda preferente por amplitud, pero la memoria que necesita es la de la bsqueda preferente por profundidad.

    53. Bsqueda por profundizacin iterativa Funcin Bsqueda-por-profundizacin-iterativa(problema) responde con una secuencia de solucin. entradas: problema, un problema. para profundidad ? 0 a ? hacer si Bsqueda-limitada-por-profundidad(problema, profundidad) tiene xito, entregue el resultado obtenido fin-para responda con falla

    54. Bsqueda por profundizacin iterativa

    55. Bsqueda por profundizacin iterativa La bsqueda por profundizacin iterativa puede parecer un desperdicio, por repetir expansiones de estados, pero en la mayora de los problemas esta expansin mltiple es realmente pequea. La complejidad temporal sigue siendo O(bd) y la complejidad espacial es O(bd). La profundizacin iterativa es el mtodo idneo para aquellos casos donde el espacio de bsqueda es grande y se ignora la profundidad de la solucin.

    56. Bsqueda Bidireccional (BS)

    57. Bsqueda bidireccional Es bsicamente una bsqueda simultnea que avanza a partir del estado inicial y que retrocede a partir de la meta y que se detiene cuando ambas bsquedas se encuentran en algn punto intermedio. Si en un problema el factor de ramificacin b es el mismo en ambas direcciones, la bsqueda bidireccional puede ser muy til. Si la solucin est a profundidad d, entonces la solucin estar a O(2bd/2) = O(bd/2) pasos

    58. Cuestiones a resolver La bsqueda hacia atrs implica la sucesiva generacin de predecesores a partir del nodo meta. Si todos los operadores son reversibles, los conjuntos de predecesor y sucesor son idnticos, pero en algunos problemas, el clculo de los predecesores puede resultar muy difcil. Si hay varios estados meta listados en forma explcita, se puede aplicar una funcin de predecesor al conjunto de estados como en el caso de la bsqueda de estado mltiple. Pero si slo hay una descripcin de los estados meta, es realmente difcil (qu estados son predecesores del jaque mate en ajedrez?) Se requiere una manera eficiente de verificar cada uno de los nodos nuevos para ver si ya estn en el otro rbol. Se tiene que definir un tipo de bsqueda para cada mitad. Amplitud amplitud, amplitud profundidad, etc. La complejidad espacial es igual a la temporal para esta bsqueda.

    59. Bibliografa AIMA. Captulo 3, primera edicin. AIMA. Chapter 3, second edition.

    60. PREGUNTAS

More Related