fbpx
Wikipedia

Heurística admisible

En ciencias de la computación, específicamente en algoritmos relacionados con búsqueda de caminos, se dice que una heurística (informática) es admisible si nunca sobreestima el coste de alcanzar el objetivo, o sea, que en el punto actual la estimación del coste de alcanzar el objetivo nunca es mayor que el menor coste posible.

Algoritmos de búsqueda

Una heurística admisible es usada para estimar el coste de alcanzar el estado objetivo en un algoritmo de búsqueda informada. Una heurística será admisible para cierto problema de búsqueda cuando el coste estimado sea siempre menor o igual que el coste mínimo de alcanzar el estado objetivo. El algoritmo de búsqueda usa la heurística para encontrar una estimación del camino óptimo hasta el objetivo desde el nodo actual. Por ejemplo, uno de los algoritmos de búsqueda más populares es el A* (en inglés A-Star Search). En este la función de evaluación para  , donde   es el nodo actual, es así:

 

donde:

  •   es la función de evaluación, una estimación del camino de coste mínimo que va desde el inicio hasta el objetivo y pasa por  .
  •   es el coste del camino desde el inicio hasta  .
  •   es el coste estimado desde el nodo actual hasta el objetivo.

  es calculado usando una función heurística. Con una heurística no admisible, el algoritmo A* podría pasar por alto la solución óptima durante la búsqueda debido a una sobreestimación de  . Las heurísticas admisibles son por su naturaleza optimistas, porque ellas piensan que el coste de solucionar el problema es menor que el que realmente es. Como   es el coste exacto de alcanzar  , tenemos como consecuencia inmediata que   nunca sobreestima el coste verdadero de la solución a través de  . De estar   definida por una heurística admisible, el algoritmo de búsqueda A* devolverá una solución óptima.

Formulación

Tomando que:

  •   es un nodo.
  •   es una heurística.
  •   es el la estimación del coste mínimo para alcanzar el objetivo desde  , aplicando  .
  •   es el coste mínimo real para alcanzar el objetivo desde  .

Decimos que   es admisible si para todo  ,  .

Ejemplos

Por ejemplo, si se quiere resolver el 15-puzle (o juego del 15) en la menor cantidad de pasos posible usando A*, es necesario emplear una heurística admisible. Hay una larga historia de tales heurísticas para el 15-puzle, aquí tenemos dos de las más comúnmente usadas:

Queda claro que la Distancia de Hamming es admisible, dado que el número total de movimientos para ordenar las fichas correctamente es al menos el número de fichas que no están en su lugar (si cada ficha no está en su posición original deberá ser movida al menos una vez). La Distancia Manhattan también será una heurística admisible porque cada ficha será movida el menos la cantidad de pasos entre ella misma y su posición original. Considere el siguiente rompecabezas:

4 6 3 8
7 12 9 14
15 13 1 5
2 10 11

la distribución de las distancias Manhattan para cada ficha quedaría así:

3 1 0 1
2 3 3 4
3 2 4 4
4 1 1

La distancia total de Manhattan para el puzle quedaría:

 

Construcción

Una heurística admisible puede derivar de una versión simplificada del problema, o por información desde un patrón de base de datos que almacene la solución exacta de un problema, o usando aprendizaje inductivo. Por ejemplo, del 15-puzle visto anteriormente, podemos definir tres problemas más simples: La regla del juego original es "Una ficha se puede mover desde la casilla A hasta la casilla B si A es adyacente a B y B está vacía".

Se pueden generar tres problemas quitando una o ambas condiciones:

  1. Una ficha se puede mover desde la casilla A hasta la casilla B si A es adyacente a B.
  2. Una ficha se puede mover desde la casilla A hasta la casilla B si B está en blanco.
  3. Una ficha se puede mover desde la casilla A hasta la casilla B.

De 1) podemos derivar la Distancia Manhattan, de 2) podemos derivar otra heurística conocida como La heurística de Gaschnig y de 3) podemos derivar la Distancia de Hamming.

La idea detrás del patrón de base de datos es almacenar los costos de las soluciones exactas de cada posible instancia de un sub-problema, en nuestro ejemplo las instancias de sub-problemas podrían ser 8 casillas y el espacio en blanco o 7 casilla y el espacio en blanco. Por ejemplo (1-2-3-4-5-6-7-8) y (9-10-11-12-13-14-15). Si las casillas seleccionadas no se repiten en dos sub-problemas (o dicho generalmente, no hay solapamiento en dos sub-problemas), podemos crear una heurística admisible que sea la suma de ambos costos almacenados en la base de datos. Usando esta heurística se resolvería el 15-puzzle en unos pocos milisegundos, el número de nodos generados se reduce en 10000 comparado con como cuando se usa la distancia Manhattan.

Notas

Si se tiene de una heurística admisible, la que mejor funcione va a ser la de mayor valor, o sea, la que mejor aproxime la solución óptima real sin sobrepasar su valor. De ahí si tenemos varias heurísticas admisibles y no sabemos cuál elegir, podemos crear una nueva que sea el máximo de todas las otras.

Mientras que todas las heurísticas consistentes son admisible, no todas las heurísticas admisibles son consistentes. Una heurística   es consistente si, para todo nodo   y todo sucesor   de   generado por cualquier acción A, el costo estimado de alcanzar el objetivo desde   no es mayor que el costo de obtener   más el costo estimado de obtener el objetivo desde  :

 

Para problemas de busca en árbol, si una heurística admisible es usada, el algoritmo A* nunca devolverá un nodo objetivo subóptimo.

Referencias

Russell, S.J.; Norvig, P. (2002). Artificial Intelligence: A Modern Approach. Prentice Hall. ISBN 0-13-790395-2.

Temas relacionados

  •   Datos: Q4683807

heurística, admisible, ciencias, computación, específicamente, algoritmos, relacionados, búsqueda, caminos, dice, heurística, informática, admisible, nunca, sobreestima, coste, alcanzar, objetivo, punto, actual, estimación, coste, alcanzar, objetivo, nunca, ma. En ciencias de la computacion especificamente en algoritmos relacionados con busqueda de caminos se dice que una heuristica informatica es admisible si nunca sobreestima el coste de alcanzar el objetivo o sea que en el punto actual la estimacion del coste de alcanzar el objetivo nunca es mayor que el menor coste posible Indice 1 Algoritmos de busqueda 2 Formulacion 3 Ejemplos 4 Construccion 5 Notas 6 Referencias 7 Temas relacionadosAlgoritmos de busqueda EditarUna heuristica admisible es usada para estimar el coste de alcanzar el estado objetivo en un algoritmo de busqueda informada Una heuristica sera admisible para cierto problema de busqueda cuando el coste estimado sea siempre menor o igual que el coste minimo de alcanzar el estado objetivo El algoritmo de busqueda usa la heuristica para encontrar una estimacion del camino optimo hasta el objetivo desde el nodo actual Por ejemplo uno de los algoritmos de busqueda mas populares es el A en ingles A Star Search En este la funcion de evaluacion para n displaystyle n donde n displaystyle n es el nodo actual es asi f n g n h n displaystyle f n g n h n donde f n displaystyle f n es la funcion de evaluacion una estimacion del camino de coste minimo que va desde el inicio hasta el objetivo y pasa por n displaystyle n g n displaystyle g n es el coste del camino desde el inicio hasta n displaystyle n h n displaystyle h n es el coste estimado desde el nodo actual hasta el objetivo h n displaystyle h n es calculado usando una funcion heuristica Con una heuristica no admisible el algoritmo A podria pasar por alto la solucion optima durante la busqueda debido a una sobreestimacion de f n displaystyle f n Las heuristicas admisibles son por su naturaleza optimistas porque ellas piensan que el coste de solucionar el problema es menor que el que realmente es Como g n displaystyle g n es el coste exacto de alcanzar n displaystyle n tenemos como consecuencia inmediata que f n displaystyle f n nunca sobreestima el coste verdadero de la solucion a traves de n displaystyle n De estar h n displaystyle h n definida por una heuristica admisible el algoritmo de busqueda A devolvera una solucion optima Formulacion EditarTomando que n displaystyle n es un nodo h displaystyle h es una heuristica h n displaystyle h n es el la estimacion del coste minimo para alcanzar el objetivo desde n displaystyle n aplicando h displaystyle h C n displaystyle C n es el coste minimo real para alcanzar el objetivo desde n displaystyle n Decimos que h displaystyle h es admisible si para todo n displaystyle n h n C n displaystyle h n leq C n Ejemplos EditarPor ejemplo si se quiere resolver el 15 puzle o juego del 15 en la menor cantidad de pasos posible usando A es necesario emplear una heuristica admisible Hay una larga historia de tales heuristicas para el 15 puzle aqui tenemos dos de las mas comunmente usadas Distancia de Hamming el numero de fichas que no estan en su lugar Distancia Manhattan la suma de las distancias desde la posicion actual de cada ficha hasta su posicion original Queda claro que la Distancia de Hamming es admisible dado que el numero total de movimientos para ordenar las fichas correctamente es al menos el numero de fichas que no estan en su lugar si cada ficha no esta en su posicion original debera ser movida al menos una vez La Distancia Manhattan tambien sera una heuristica admisible porque cada ficha sera movida el menos la cantidad de pasos entre ella misma y su posicion original Considere el siguiente rompecabezas 4 6 3 87 12 9 1415 13 1 52 10 11la distribucion de las distancias Manhattan para cada ficha quedaria asi 3 1 0 12 3 3 43 2 4 44 1 1La distancia total de Manhattan para el puzle quedaria h n 3 1 0 1 2 3 3 4 3 2 4 4 4 1 1 36 displaystyle h n 3 1 0 1 2 3 3 4 3 2 4 4 4 1 1 36 Construccion EditarUna heuristica admisible puede derivar de una version simplificada del problema o por informacion desde un patron de base de datos que almacene la solucion exacta de un problema o usando aprendizaje inductivo Por ejemplo del 15 puzle visto anteriormente podemos definir tres problemas mas simples La regla del juego original es Una ficha se puede mover desde la casilla A hasta la casilla B si A es adyacente a B y B esta vacia Se pueden generar tres problemas quitando una o ambas condiciones Una ficha se puede mover desde la casilla A hasta la casilla B si A es adyacente a B Una ficha se puede mover desde la casilla A hasta la casilla B si B esta en blanco Una ficha se puede mover desde la casilla A hasta la casilla B De 1 podemos derivar la Distancia Manhattan de 2 podemos derivar otra heuristica conocida como La heuristica de Gaschnig y de 3 podemos derivar la Distancia de Hamming La idea detras del patron de base de datos es almacenar los costos de las soluciones exactas de cada posible instancia de un sub problema en nuestro ejemplo las instancias de sub problemas podrian ser 8 casillas y el espacio en blanco o 7 casilla y el espacio en blanco Por ejemplo 1 2 3 4 5 6 7 8 y 9 10 11 12 13 14 15 Si las casillas seleccionadas no se repiten en dos sub problemas o dicho generalmente no hay solapamiento en dos sub problemas podemos crear una heuristica admisible que sea la suma de ambos costos almacenados en la base de datos Usando esta heuristica se resolveria el 15 puzzle en unos pocos milisegundos el numero de nodos generados se reduce en 10000 comparado con como cuando se usa la distancia Manhattan Notas EditarSi se tiene de una heuristica admisible la que mejor funcione va a ser la de mayor valor o sea la que mejor aproxime la solucion optima real sin sobrepasar su valor De ahi si tenemos varias heuristicas admisibles y no sabemos cual elegir podemos crear una nueva que sea el maximo de todas las otras Mientras que todas las heuristicas consistentes son admisible no todas las heuristicas admisibles son consistentes Una heuristica h n displaystyle h n es consistente si para todo nodo n displaystyle n y todo sucesor n displaystyle n de n displaystyle n generado por cualquier accion A el costo estimado de alcanzar el objetivo desde n displaystyle n no es mayor que el costo de obtener n displaystyle n mas el costo estimado de obtener el objetivo desde n displaystyle n h n c n A n h n displaystyle h n leq c n A n h n Para problemas de busca en arbol si una heuristica admisible es usada el algoritmo A nunca devolvera un nodo objetivo suboptimo Referencias EditarRussell S J Norvig P 2002 Artificial Intelligence A Modern Approach Prentice Hall ISBN 0 13 790395 2 Temas relacionados EditarInteligencia Artificial Algoritmo A Heuristica Datos Q4683807Obtenido de https es wikipedia org w index php title Heuristica admisible amp oldid 117266194, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos