Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Algoritmo Astar
Algoritmo Astar
Algoritmo A *
Video
• https://www.youtube.com/watch?v=19h1g22hby8
2
Búsqueda Informada (heurísticas)
• Utiliza conocimiento específico del problema
más allá de la definición del problema en sí.
• Es una función matemática, h(n) definida en los
nodos de un árbol de búsqueda , que sirve como
una estimación del coste del camino más
económico de un nodo dado hasta el nodo
objetivo.
Búsqueda Voraz Primero el Mejor
• Búsqueda Voraz Primero el Mejor
– Selecciona un nodo para expansión basada en una
función de evaluación (f(n))
– Tradicionalmente, se selecciona el nodo con la
evaluación más baja
• La evaluación mide la distancia al objetivo
– Usa BUSQUEDA-ÁRBOLES con cola de prioridad
Búsqueda Primero el Mejor
• Existe toda una familia de algoritmos de Búsqueda
Primero el Mejor con diferentes funciones de
evaluación, cada uno tiene un función heurística h(n)
• h(n) = costo estimado del camino más barato desde
el nodo n hasta el nodo objetivo
• Ejemplo: en el planeamiento de rutas, estimar el
costo del camino más barato puede ser la distancia
en línea recta entre dos ciudades
5
Recordar…
• g(n) = costo desde el nodo inicial al nodo
actual n
• h(n) = costo estimado del camino más barato
desde el nodo n al nodo objetivo
• f(n) = función de evaluación para seleccionar
un nodo para expandir (usualmente el nodo
de menor costo)
6
Búsqueda Voraz Primero el Mejor
• Intenta expandir el nodo más cercano al objetivo,
alegando que probablemente conduzca rápidamente
a una solución
– f(n) = h(n)
• Implementación
– Expandir el nodo “más deseable” en la cola de
frontera
– Ordenar la cola en orden decreciente de deseabilidad
• Ejemplo: considerar la heurística de línea recta hDLR
– Expandir el nodo que parezca estar más cerca del objetivo
7
Ejemplo: De Arad a Bucharest
8
Ejemplo: De Arad a Bucharest
• hSLD(En(Arad)) = 366
• Notar que los valores de hSLD no pueden ser
calculados de la descripción del problema en sí
mismo.
• Se requiere de experiencia para conocer que
hSLD tiene correlación con las distancias reales
del camino.
– Por lo tanto es una heurística útil
9
Ejemplo: De Arad a Bucharest
10
Ejemplo: De Arad a Bucharest
11
Ejemplo: De Arad a Bucharest
¿El camino
obtenido es el
mejor?
12
Búsqueda Voraz Primero el Mejor
• Completitud
– No, puede quedar atrapada en ciclos (p.e.,
saltando de una misma ciudad a otra)
• Tiempo
– O(bm), pero una buena heurística puede reducirla
considerablemente
• Espacio
– O(bm): mantiene todos los nodos en memoria
• Optimalidad: No
13
Búsqueda A*
• La forma más ampliamente conocida de la
búsqueda primero el mejor
• Evalúa los nodos combinando g(n) y h(n)
f(n) = g(n) + h(n)
– g(n): coste del camino desde el nodo inicio a n
– h(n): coste estimado del camino más barato desde
n al objetivo
– f(n): coste más barato estimado de la solución a
través de n
14
Búsqueda A*
• Cuando h(n) = costo real al objetivo
– Solo nodos en el camino correcto son expandidos
– Se encuentra la solución óptima
• Cuando h(n) < costo real al objetivo
– Se expanden nodos adicionales
– Se encuentra la solución óptima
• Cuando h(n) > costo real al objetivo
– Se puede no encontrar la solución óptima
15
Búsqueda A*
• A* es óptima si usar una heurística admisible
– h(n) <= h*(n) el costo verdadero desde el nodo n
– Si h(n) nunca sobre-estima el costo para alcanzar
el objetivo
16
Algoritmo A*
17
Algoritmo A*
Tratar sucesor
18
Ejemplo con mapa de Rumanía
• Encontrar el camino más optimo desde Arad a
Bucharest con A*
20
De Arad a Bucharest con A*
20
De Arad a Bucharest con A*
21
De Arad a Bucharest con A*
22
De Arad a Bucharest con A*
23
De Arad a Bucharest con A*
24
Otro Ejemplo de búsqueda
Considerando el punto A hasta el punto B. Asumamos también
que un muro separa estos dos puntos. Trazar el camino más óptimo
• G: Es el coste de ir
desde la celda origen a
la celda actual. 10
puntos, caso diagonal
14.
• H: heurística basada en
Distancia Manhattan
• F: Es la suma de G y H
25
Solución al ejemplo de búsqueda
26
Solución al ejemplo de búsqueda
27
Solución al ejemplo de búsqueda
28
Solución al ejemplo de búsqueda
29
Solución al ejemplo de búsqueda
Referencias:
https://www.lanshor.com/pathfinding-a-estrella/
http://www.policyalmanac.org/games/articulo1.htm 31
Fin
32