Solución de problemas mediante busqueda
Upcoming SlideShare
Loading in...5
×
 

Solución de problemas mediante busqueda

on

  • 2,101 views

 

Statistics

Views

Total Views
2,101
Views on SlideShare
2,101
Embed Views
0

Actions

Likes
1
Downloads
82
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Solución de problemas mediante busqueda Solución de problemas mediante busqueda Document Transcript

    • Agentes para la solución de problemas (Metas), basado en metas, tiene algoritmos debúsqueda, el esqueleto es: • Formulación del Problema • Formulación de Metas • Búsqueda (Algoritmos) para llegar del Estado Inicial al estado de meta • SoluciónConocimiento y tipos de problemasConsidere el siguiente ejemplo: El mundo de la aspiradora.En este mundo hay dos posibles ubicaciones en ellas puede o no puede haber mugre y elagente se encuentra en una de las dos.El mundo puede asumir 8 posibles estados. Son tres las acciones que el agente puedeemprende en el mundo de la aspiradora. La meta es eliminar toda la mugre.Problemas bien definidos y soluciones • Problema: Un problema en realidad es un conjunto de información que el agente utiliza para decidir lo que va a hacer. • Estado inicial: Es donde el agente sabe que allí es en el que se encuentra. • Operador: Denota la descripción de una acción que nos servirá para alcanzar un estado. • Espacio de estado: Es el conjunto de todos los estados que pueden alcanzarse a partir del estado inicial mediante cualquier secuencia de acciones. • Ruta: Es cualquier secuencia de acciones que me permiten pasar de un estado a otro.
    • • Prueba de meta.- Se aplica a la descripción de un solo estado para saber si se trata de un estado meta. • Costo de ruta.- Es una función mediante la cual se asigna un costo a un ruta determinada. • Solución.- Es la salida producida por un algoritmo de búsqueda, es decir, una ruta que va del estado inicial al estado que satisface la prueba de meta. • Espacio de conjunto de estado.- Si mediante un operador relaciono un conjunto de estados según los resultados obtenidos, yo estoy construyendo un espacio denominado espacio de conjunto de estados.El espacio del conjunto de espacios del mundo de la aspiradora simplificado, sin sensores.Dentro de las cajas de línea punteada hay un conjunto de estados. En un punto determinado,el agente está dentro de un conjunto de estados, pero ignora en cuál. El conjunto del estadoinicial (total ignorancia) está en la caja superior del centro. Las acciones se representan porarcos identificados. Por claridad se han omitido los autobucles.
    • Buena parte de los esfuerzos invertidos en el área de la búsqueda han quedado en ladeterminación de la estrategia de búsqueda adecuada para un problema. Se utiliza parahallar una solución "sin información". o Búsqueda preferente por amplitud(anchura) o Búsqueda de costo uniforme o Búsqueda preferente por profundidad o Búsqueda limitada por profundidad o Búsqueda por profundización iterativa o Búsqueda birideccionalPara explicar mejor las estrategias imaginemos un problema sencillo como : "Ir en auto deArad a Bucarest utilizando las carreteras del mapa de Rumania"Búsqueda preferente por amplitud(anchura)Primero se expande el nodo más superficial del árbol de búsqueda. Es un método completo,óptimo para operadores de costo unitario. Su complejidad espacio-temporal es O(bd). Enmuchos casos, la complejidad espacial impide que sea práctico.Debo expandir la profundidad (d) antes de expandir la profundidad siguiente (d+1) empezandopor la izquierda. d = profundidad nodo raíz = estado inicial
    • Búsqueda de costo uniformePrimero se expande el nodo hoja de menor costo. Es un método completo y, a diferencia de labúsqueda preferente por amplitud, es óptimo incluso si el costo de cada uno de los operadoreses distinto. Su complejidad espacio-temporal es la misma que la de la búsqueda preferente poramplitud.Siempre se tiene un costo o unidades. Los costos deben ser positivos, caso contrario no seaplica esta búsqueda.Tómese el caso del problema de la determinación de ruta que radica en ir de S a G.Respuesta: S-B-G
    • Búsqueda preferente por profundidadPrimero se expande el nodo más profundo del árbol de búsqueda. No es un métodocompletamente óptimo; su complejidad temporal O(bm) y su complejidad espacial es O(bm),en donde m es la profundidad máxima. Los árboles de búsqueda cuya profundidad es muygrande o infinita, invalidan la utilidad de este método.Sólo si la búsqueda conduce a un callejón sin salida (un nodo sin meta que no tieneexpansión), se revierte la búsqueda y se expanden los nodos de niveles menos profundos.
    • Búsqueda limitada por profundidadSe pone un límite a la búsqueda preferente por profundidad. Si el límite fuera igual a laprofundidad del estado meta más superficial, se reduce al mínimo la complejidad espacio-temporal.
    • Búsqueda por profundización iterativaSe emplea la búsqueda con límite de profundidad, pero los límites van aumentando hastaencontrar una meta. Es completa y óptima; su complejidad temporal es O(bd) y su complejidadespacial es O(bd).
    • Búsqueda bidireccionalAyuda a reducir notablemente la complejidad temporal, aunque no siempre pueda utilizársele.La cantidad de memoria que necesita puede hacerla poco práctica.Es básicamente, una búsqueda simultánea que avanza a partir del estado inicial y queretrocede a partir de la meta y que se detiene cuando ambas búsquedas se encuentran enalgún punto intermedio.
    • Búsqueda heurísticaEn casi todos los espacios de estado, existe información que permite guiar los procesos debúsqueda, normalmente esa información no es perfecta, es decir no es un algoritmo quepermite conocer de forma precisa cual es el mejor camino para obtener la solución.Este tipo de información no perfecta que ayuda a resolver problemas a un espacio de estado,pero que no siempre acierta con el mejor camino se denomina heurística.Cuando se dispone de este tipo de información las técnicas de búsqueda se pueden ver muybeneficiadas de su utilización.Técnica de escaladaLa técnica de escalada es la evolución de la técnica de profundidad en la que cada nodo sedispone en una forma de evaluar cómo está de cerca o de lejos la solución. La forma máscomún de evaluar es la función de evaluación.f(nodo)= # de casillas bien colocadas (maximizo)f’(nodo)= # de casillas mal colocadas (minimizo)Como ejemplo del juego 8-puzzle se puede definir una función de evaluación que fuera igual:f(nodo)= # de casillas bien colocadas (máximo)Que devuelven un número que representa como está de cerca un determinado estado de lasolución, cuanto mayor sea el número se estará cerca de la solución.Por tanto si se tiene que elegir entre varios estados se debería escoger aquel, que tendría unvalor mayor de esta función, es decir es una función que se debe maximizar.
    • procedimiento escalada (estado inicial estado final) 1. N = estado inicial; Exito = Falso. 2. Hasta que Exito. o Generar los sucesos de N o Si algún sucesor es estado final entonces o Exito = Verdadero. o Si No o Evaluar cada nodo como la función de evaluación o N = mejor sucesor 3. Si Éxito entonces 0. Solución = camino desde nodo del estado-inicial al nodo N por los punteros. Si No o Solución = Fracaso. La técnica de escalada exagera los problemas de la profundidad en el sentido de que no asegura de que se alcance la solución óptima relacionada con esto; existen dos problemas que ocurren a menudo cuando se utiliza escalada: 1. Puede haber máximo o mínimos locales esto ocurre por ejemplo cuando la función de evaluación elegida es maximizante y todos los sucesores de un determinado nodo tienen menor valor que el valor del nodo. 2. Altiplanicies: Es un caso parecido al anterior y sucede cuando los mejores sucesores de un nodo tienen igual valor que el nodo. Las soluciones que se pueden adoptar son: - Retroceder - Dar mas de un paso
    • Retroceder: A la lista de razones a la que se debe retroceder que provienen a la técnicade profundidad se le añade cuando ocurra cualquier caso de los anteriores.Dar más de un paso: En lugar de retroceder se generan todos los sucesores de lossucesores del nodo en cuestión y aún así no hay ningún sucesor de los sucesores quesea mejor que el nodo, se puede expandir un nivel mas, hasta que se obtenga un valormayor / menor que el nodo.Búsqueda AvaraEs cuando se reduce al mínimo el costo estimado para alcanzar una meta, h(n). Aunquepor lo general, el tiempo de búsqueda disminuye en comparación con lo necesariocuando se emplea un algoritmo que no cuenta con información, el de la búsqueda ávarano es un algoritmo óptimo y completo.Para un mejor entendimiento de esta búsqueda se aplicará en distancia de ciudades deArad – Bucharest:También considere el siguiente cuadro:
    • Se escoge la ruta con menor distancia de acuerdo al cuadro anterior:Método de búsqueda asterisco (A*)La reducción al mínimo de f(n)= g(n) + h(n) combina las ventajas de la búsqueda porcosto uniforme y la búsqueda ávara. Cuando se repiten los estados que se manejan yse garantiza que h(n) nunca haga una sobreestimación, existe una búsqueda asterisco.g(n) = Costo de la ruta de partida al nodo nh(n) = Costo de la ruta mas barata que va de n a la metaf(n) = Costo estimado de la solución mas barata pasando por n f(n)= g(n) + h(n)Si aplicáramos el método Asterisco obtendríamos:En donde g(n) = ruta inicial hasta n y h(n) = unidad establecida en el cuadro deDistancias en línea recta a Bucarest.