sábado, 11 de marzo de 2017

BÚSQUEDA HEURÍSTICA



COMPLEJIDAD COSTO UNIFORME
El algoritmo de costo uniforme, forma parte de la búsqueda heurística, en primero es mejor.  Costo uniforme, es una algoritmo completo, ya que siempre que haya una solución, este la encontrara, haciendo así, que este sea un algoritmo optimo, que siempre encontrara la mejor solución, que en este caso sería la cual cuente con un menor costo real en el camino recorrido. A continuación hablaremos sobre su complejidad:

·         Tiempo:
  •      Número de nodos con g<= costo en la solución óptima :

·         Espacio:
  •      Número de nodos con g<= costo en la solución óptima  

Podemos ver que la complejidad en ambos casos, tanto en tiempo como en espacio, esta expresada en forma exponencial.

COMPLEJIDAD HEURISTICA PURA
El algoritmo de heurística pura, también llamado búsqueda de greedy o avara,  es uno de los métodos de búsqueda, de primero el mejor, en búsqueda heurística. Este algoritmo no es una búsqueda completa, ya que puede perderse en un ciclo, quedandose ahí de forma infinita y no encontrar una solución al problema, por lo cual no puede asegurar que siempre encuentre la mejor solución, haciéndola así, una búsqueda, no óptima. A continuación explicaremos su complejidad: 
·         Tiempo:
  •      Costo temporal de :

·         Espacio:
  •      Guarda todos los nodos en memoria  :

COMPLEJIDAD A*
Búsqueda de A*, es la última en formar parte de primero el mejor, en búsqueda heurística, haciendo alusión a que esta, es la combinación de las dos búsquedas ya antes mencionadas, que son la búsqueda uniforme y heurística pura. Esta búsqueda es completa, porque si el problema tiene solución, este siempre se encontrara, también es una búsqueda optima, ya que siempre encontrara la mejor solución, que hace referencia a la de menor costo total estimado en el camino, para llegar al objetivo.
·         Tiempo:
  •      Costo temporal exponencial :

·         Espacio:
  •      Guarda todos los nodos en memoria :
     

HEURÍSTICA

La heurística consiste en la capacidad de realizar innovaciones positivas, para así conseguir los fines que se pretenden; también se puede definir como la solución de problemas, en la que esta es hallada. La heurística es una función que asigna a cada estado una estimación del costo óptimo a la solución. 
Guian la búsqueda por el lugar que poseen menor costo, eliminando aquellos que pueden proporcionar un costo mucho más grande. 

ADMISIBLE
Una heurística es admisible cuando el costo estimado es siempre menor o igual que el costo mínimo de alcanzar el estado objetivo, esta heurística es usada para estimar el costo de alcanzar el estado objetivo en un algoritmo de búsqueda informada.

Para resolver problemas de búsqueda se debe encontrar una heurística admibisble, para hacerlo, se deben resolver problemas relajados, que son los que se parecen mucho a que se intenta resolver.

Las heurísticas admisibles por su naturaleza son optimistas, porque siempre creerán que el costo de solucionar el problema, será menor que el que realmente es.

COSISTENCIA
Una heurística es consistente, si al generar un nodo y expandirlo, el costo de llegar a la solución desde el nodo padre, no es mayor que el de generar el nodo hijo, más el costo de llegar a la solución.

h(n) \le c(n, A, n') + h(n')
Una heurística consistente es admisible, pero no todas las heurísticas admisibles son consistentes.
 
MONOTONIA
La monotonía se aplica a las funciones heurísticas, por lo tanto si cada nodo N y cada sucesor del mismo, el costo de alcanzar la solución, no es mayor que el costo de pasar por el sucesor del mismo, más el costo de llegar a la solución.

Una heurística monótona es admisible. El algorimo A*, se considera óptimo, si es monotono.

HEURISTICAS MÁS INFORMADAS
Para entender de forma más sencilla el término de heurísticas más informadas, hay que expresarlo de la siguiente forma:
Si se tienen dos heurísticas adminisbles, cada cualquier nivel, se dice que una de las dos es más informada, si cada uno de los nodos examinados por esta, han sido expandidos por el otro nodo.

ALGORITMO A*
El algoritmo A*, hace parte de primero el mejor, en búsqueda heurística. La idea de este algoritmo, es combinar la heuristica de cada nodo, teniendo en cuenta el costo de llegar al nodo actual.

Función:

                                                    F(n) = g(n) + h(n)

g(n)  = Coste para llegar al nodo n
h(n) = Coste estimado para llegar a un nodo solución desde el nodo n
F(n) = Coste total estimado del camino para llegar al nodo objetivo a través del nodo n

El algoritmo de A*, es un método completo de búsqueda, siempre encuentra la solución y encuentra la más optima.




A continuación se mostrara un ejercicio de las torres de Hanoi aplicado a dos discos, en el cual usaremos el algoritmo A*, para llegar a la solución:

 Árbol generado por el ejercicio planteado:




No hay comentarios:

Publicar un comentario