Академический Документы
Профессиональный Документы
Культура Документы
ALGORITMO A*
EN 8‐PUZZLE Y 8‐REINA
Los algoritmos de búsqueda informada son más eficientes que los algoritmos de
búsqueda no informada, debido a que éstos últimos pueden encontrar soluciones a
problemas generando sistemáticamente nuevos estados y probándolos con el objetivo.
Los algoritmos de búsqueda informada son muy útiles en problemas donde lo que
importa es el estado de solución en sí mismo, no el camino. Utilizan métodos inspirados en
la física estadística (temple simulado) y la biología evolutiva (algoritmos genéticos).
f(n) = h(n)
Por otra parte, la búsqueda de coste uniforme minimiza el coste del camino hasta
el nodo, g(n) , es decir, expande para cada conjunto de sucesores aquel cuyo camino desde
el nodo raíz tenga un menor coste. Este es un algoritmo óptimo y completo, pero puede ser
muy ineficiente.
Sería bueno poder combinar estas dos estrategias para conseguir las ventajas de
ambos. Afortunadamente, podemos hacer eso exactamente, combinando las dos funciones
de evaluación simplemente sumándolas:
2.1. Optimalidad de A*
La primera solución encontrada debe ser la óptima, dado que los nodos de todos los
contornos subsiguientes tendrán un costo f más alto y con ello un costo g más alto (todos
los estados meta tienen h(n) = 0).
Teorema: Sea h*(n) el costo real desde n hasta la meta. Si h(n) < h*(n) para todo nodo n,
entonces A* siempre va a encontrar un nodo meta óptimo.
Prueba: Sea s el nodo meta de mínimo costo. Sea que A* seleccione un nodo meta
subóptimo s’, donde g(s)<g(s’)
Sea n un nodo sin expandir en la ruta desde el nodo inicio y el nodo meta óptimo s. Notar
que ese nodo sin expandir necesariamente existe, de acuerdo con la suposición previa (en el
otro caso, s ya habría sido elegido como el nodo meta).
Puesto que n no ha sido elegido para su expansión en su ruta hacia s’, se sigue que:
g(s) ³ g(s')
Si h es admisible, f(n) nunca sobreestima el costo real de la mejor solución pasando por n
2.2. Completitud de A*
2.3. Complejidad A*
1 2 3
8 0 4
7 6 5
1 3 0
6 2 4
8 7 5
Para resolver esta matriz de forma óptima se deben realizar 6 movimientos, los
cuales son descritos a continuación:
1 3 0 1 0 3 1 2 3
6 2 4 6 2 4 6 0 4
8 7 5 8 7 5 8 7 5
1 2 3 1 2 3 1 2 3
0 6 4 8 6 4 8 6 4
8 7 5 0 7 5 7 0 5
1 2 3
8 0 4
7 6 5
Para llegar ha este resultado se han tenido que efectuar los 6 movimientos que
acabamos de describir y que enumeramos a continuación:
Todas las heurísticas utilizadas llegan a una solución optima, pero la diferencia
principal radica en le cantidad de recursos que necesitan para resolver el problema.
6 1 4
8 3 2
0 7 5
Una solución óptima encontrada para la resolución de esta matriz de forma óptima
es:
Arriba, Arriba, Derecha, Abajo, Izquierda, Abajo, Derecha, Arriba, Derecha, Arriba,
Izquierda, Abajo.
8 0 4
7 5 2
Una solución óptima encontrada para la resolución de esta matriz de forma óptima
es:
Por ejemplo el hecho de que deba de haber sólo una reina por columna nos reduce
el número de alternativas a menos de 8 en cada renglón.
0= casilla libre
1= reina
2= casilla atacada
7.1. Internet:
i http://www.angelfire.com/oh4/ohcop/ClaseCap4nu.ppt
i http://dmi.uib.es/~abasolo/intart/2-juegos.html
i http://www.ii.uam.es/~fdiez/docencia/material/bh.pdf
i http://www.dc.fi.udc.es/.aios/~barreiro/iadocen/puzzle8-
98/introalgoritmos.html
i http://www.lsi.upc.es/~luigi/docencia/2bBusquedainformadayexploracion(es).p
df
7.2. Bibliografía
i [Rich, 94].- "Inteligencia Artificial". Segunda edición. Elaine Rich. Kevin Knight.
Editorial McGraw-Hill. (1994).
i [Russell, 96].- "Inteligencia Artificial, un enfoque moderno". Stuart Russell. Peter
Norvig. Editorial Prentice Hall. (1996).