Vous êtes sur la page 1sur 4

Algoritmo de Bsqueda A*

1. Introduccin al algoritmo a*
El algoritmo A* (conocido tambin como A estrella o asterisco) es un algoritmo de bsqueda que
encuentra la ruta de menor coste entre dos puntos siempre y cuando se cumplan una serie de
condiciones. Est clasificado dentro de los algoritmos de bsqueda en grafos ya que tiene la
necesidad de dar a los mecanismos robticos, vehiculares o virtuales un sistema de navegacin
autnomo.
Es ampliamente utilizado en las ciencias de la computacin para encontrar rutas y que tan transitable
es una grfica, es decir, se refiere al problema de visitar todos los nodos en una grfica dada de forma
particular , esto no es ms que el proceso de trazado de la ruta ms eficiente entre unos puntos
llamados nodos. Este algoritmo goza de una aceptable y continua implementacin gracias a su
desempeo y precisin. Fue descrito por primera vez en 1968 como una extensin del algoritmo de
Dijkstra (1959), por Peter Hart, Nils Nilsson y Bertran Raphael, que expusieron que el A* lograba un
mejor desempeo con respecto al tiempo usando heursticas.

2. Orgenes del algoritmo A*


En 1964 Nils Nilsson invent una heurstica basada en aproximaciones para incrementar la velocidad
del algoritmo de Dijkstra. Este algoritmo fue llamado inicialmente como A1.
En 1967 Bertran Raphael hizo mejoras dramticas sobre este algoritmo pero fall en demostrar su
optimalizad. l llam a este algoritmo como A2. Hart introdujo un argumento que el A2 era ptimo
usando una heurstica consistente haciendo unos cambios menores. Su comprobacin del algoritmo
tambin demostr que el A2 era el mejor algoritmo dadas algunas condiciones. As Hart llam a este

nuevo algoritmo con la sintaxis Kleene star (debido a que representa una operacin con solamente
un operando [5, 6]) por ser un algoritmo que empieza con la letra A e incluye todas las versiones de
nmeros posibles o A*. El algoritmo A*, (ledo A estrella) es un algoritmo de bsqueda en grafos. Fue
presentado por Peter E. Hart y Nils J. Nilsson (1968), y Bertram Raphael (1968), el algoritmo
encuentra, siempre y cuando se cumplan unas determinadas condiciones, el camino de menor coste
entre una condicin inicial y una condicin meta.
3. Descripcin del algoritmo A*

Es un algoritmo que se encarga de encontrar la ruta que representa un menor costo entre un punto A y
otro B. Es una tcnica de bsqueda para grafos que utiliza una funcin heurstica:
f(n) = g(n) + h(n)
f(n): costo total estimado del camino para llegar al objetivo a travs del nodo n.
Este algoritmo mantiene un conjunto de soluciones parciales almacenadas en una cola de prioridad.
g(n) : es el costo de las movidas realizadas.
Representa el valor absoluto de la operacin dentro del parntesis.
h(n) : es la funcin heurstica. Representa el costo estimado del mejor camino. Dicha estimacin debe
ser realizada por defecto, es decir, siempre menor o igual a la real.
Representa el valor explcito de movernos de nuestro punto actual al siguiente en alguna direccin
dada, si no se especifica se toma como unitario ya que pertenece a una distribucin uniforme.
Los nodos buenos deben poseer valores bajos
F(n)= los valores bajos

4. Aplicaciones del algoritmo A*


De manera general este algoritmo se utiliza para encontrar el camino ms corto entre dos puntos
dados, pero dentro de sus otras aplicaciones se utiliza en juegos para determinar el recorrido que un
objeto debe realizar; un ejemplo de ello es el videojuego pacman en el que se aplicaba al
comportamiento de los fantasmitas y en la resolucin de los problemas de Sudoku de 8 variables.
Tambin se puede utilizar para resolver el cubo Rubik mostrndonos cmo hacerlo con la menor
cantidad de movidas.

5. Propiedades del algoritmo

Como todo algoritmo de bsqueda en amplitud, A* es un algoritmo completo: en caso de existir una
solucin, siempre dar con ella.
Si para todo nodo n del grafo se cumple

, nos encontramos ante una bsqueda voraz.

Si para todo nodo n del grafo se cumple

, A* pasa a ser una bsqueda de coste uniforme no

informada.
6. Complejidad en memoria
El espacio requerido por A* para ser ejecutado es su mayor problema. Dado que tiene que
almacenar todos los posibles siguientes nodos de cada estado, la cantidad de memoria que
requerir ser exponencial con respecto al tamao del problema.
7. Ventajas y Desventajas
Ventajas:
Solucin inmediata si existe.
Solucin por el camino ms corto.
Desventajas:
Al almacenar todos los posibles siguientes nodos de cada estado, la cantidad de memoria que
requerir ser exponencial con respecto al tamao del problema

8. Bibliografa
[1]. Algoritmo de bsqueda A* Disponible en:
https://es.wikipedia.org/wiki/Algoritmo_de_b%C3%BAsqueda_A*
[2]. Algoritmo A* Disponible en:
http://idelab.uva.es/algoritmo
[3]. Algoritmo A* para encontrar el camino ms corto en IA Disponible en:
http://www.cristalab.com/tutoriales/algoritmo-a-para-encontrar-el-camino-mas-corto-en-ia-c91591l/
[4]. El algoritmo a (asterisco) Disponible en:
http://es.slideshare.net/CristinaLopez35/el-algoritmo-a-asterisco

Vous aimerez peut-être aussi