Sie sind auf Seite 1von 7

Bsqueda Heurstica

Los mtodos de bsqueda heursticas (del griego heuriskein, que significa


encontrar) estn orientados a reducir la cantidad de bsqueda requerida para
encontrar una solucin. Cuando un problema es presentado como un rbol de
bsqueda el enfoque heurstico intenta reducir el tamao del rbol cortando
nodos pocos prometedores. Estos mtodos se llaman mtodos fuertes porque
ellos son ms poderosos que los estudiados hasta aqu al incorporar
conocimiento heurstico o heurstica. Hay una contradiccin entre generalidad
y potencia en el sentido que los mtodos dbiles son esencialmente aplicables
universalmente mientras que los fuertes son menos universales en su
aplicabilidad y el conocimiento o heurstica usada en un problema dado puede
no ser totalmente aplicable o ser inaplicable en otro dominio o tarea.
Feigenbaum y Feldman definen la heurstica como sigue: "Una heurstica es
una regla para engaar, simplificar o para cualquier otra clase de ardid el cual
limita drsticamente la bsqueda de soluciones en grandes espacios de
estados". En esencia una heurstica es simplemente un conjunto de reglas que
evalan la posibilidad de que una bsqueda va en la direccin correcta.
Generalmente los mtodos de bsqueda heursticas se basan en maximizar o
minimizar algunos aspectos del problema. Un ejemplo sencillo de heurstica es
el siguiente:
Un hombre se encuentra en una extensa llanura y tiene sed, en ese momento
ha llegado a una pequea elevacin que es la nica en esa regin y se sube a
ella. Desde la elevacin el hombre observa el cuadro siguiente:
NORTE: vegetacin verde y movimiento de animales
SUR: vegetacin amarilla
ESTE: vegetacin amarilla
OESTE: vegetacin verde
Evidentemente la vegetacin verde es un indicio de que hay humedad, luego
es muy probable que exista agua en la superficie o subterrnea. El movimiento
de animales puede indicar que ellos se dirigen all a beber, lo cual sugiere que
el agua est en la superficie. Esta informacin le dice al hombre que debe
dirigirse al norte, constituye una heurstica.
La Heurstica no garantiza que siempre se tome la direccin de la bsqueda
correcta, por eso este enfoque no es ptimo sino suficientemente bueno.
Frecuentemente son mejores los mtodos heursticos que los mtodos de
bsquedas a ciegas. Las desventajas y limitaciones principales de la heurstica
son:

La flexibilidad inherente de los mtodos heursticos pueden conducir a errores


o a manipulaciones fraudulentas.
Ciertas heursticas se pueden contradecir al aplicarse al mismo problema, lo
cual genera confusin y hacen perder credibilidad a los mtodos heursticos.
Soluciones ptimas no son identificadas. Las mejoras locales determinadas por
las heursticas pueden cortar el camino a soluciones mejores por la falta de una
perspectiva global. La brecha entre la solucin ptima y una generada por
heurstica puede ser grande.
El significado tcnico de la palabra heurstica ha variado en la historia de la
Inteligencia Artificial. En 1957, George Polya en su libro "How to solve it" us
este trmino para referirse al estudio de mtodos para descubrir e inventar
tcnicas de solucin de problemas.
En otras ocasiones se ha usado como un trmino opuesto a algortmico. Por
ejemplo, Newell, Shaw y Simn plantearon en 1993 "Un proceso que puede
resolver un problema dado, pero no ofrece garanta de hacerlo, es llamado una
heurstica para ese problema".
Actualmente, la heurstica es ms frecuentemente usada como un adjetivo
para referirse a cualquier tcnica que mejore la media del proceso de solucin
de problemas.
Segn Shapiro, uno de los resultados empricos de los ltimos treinta aos de
la Inteligencia Artificial es que para muchos problemas la relacin (balance)
entre conocimiento, tiempo de clculo y calidad de la solucin es bastante
favorable. Es decir, el uso de una pequea cantidad de conocimiento especfico
del problema puede mejorar significativamente la calidad de la solucin o el
costo del proceso de bsqueda.
Funciones de evaluacin heurstica
La calidad de un nodo (estado, situacin) del espacio de bsqueda se puede
estimar de varias formas:
Nivel de dificultad de resolver el subproblema representado por el nodo.
Calidad del conjunto de soluciones candidatas codificadas por el nodo.
Cantidad de la informacin que se puede ganar expandiendo un nodo dado y la
importancia de la informacin para guiar la bsqueda.
En todos estos casos la calidad el nodo se estima numricamente por una
funcin de evaluacin heurstica f(n). Una funcin de evaluacin heurstica es
una funcin que hace corresponder situaciones del problema con nmeros. Es
decir, ofrece una medida conceptual de la distancia entre un estado dado y el

estado objetivo. En general depende de la descripcin de n (la descripcin del


objetivo, la informacin obtenida hasta ese punto de la bsqueda y cualquier
conocimiento extra sobre el dominio del problema).
El proceso de construccin de funciones heursticas bien puede ser considerado
un proceso de descubrimiento, pues es muy difcil articular el mecanismo por el
cual se llega a estas funciones. Sin embargo, se puede formular el siguiente
paradigma general: las heursticas se descubren consultando modelos
simplificados del dominio del problema.
Estos valores son usados para determinar cual operacin ejecutar a
continuacin, tpicamente seleccionando la operacin que conduce a la
situacin con mxima o mnima evaluacin. Un inconveniente de los mtodos
heursticos es que en ocasiones no es posible conocer la calidad de la solucin,
es decir, cun cerca est el ptimo (x*) la solucin heurstica encontrada
(xheu); si por ejemplo, el problema es de maximizacin lo nico que sabemos
es que xheu ( x*. Una forma simple de evaluar la calidad de una solucin
heurstica es generar aleatoriamente varias soluciones y si son similares a la
misma entonces cabra poner en duda la efectividad de la heurstica.
Algunas consideraciones sobre las funciones heursticas son:
a) La funcin debe dar un estimado til y realista del mrito de un estado
particular.
b) La evaluacin de la funcin en general no debe requerir un gran clculo en
su aplicacin. Si la evaluacin de la funcin es computacionalmente compleja
puede ser ms eficiente hacer una bsqueda a ciegas en lugar de gastar
recurso (tiempo y memoria) en el clculo de la funcin.
c) Frecuentemente el costo de una solucin exacta a un problema flexibilizado
es una buena heurstica para el problema original. Un problema flexibilizado es
uno obtenido a partir del problema original simplificando las restricciones sobre
los operadores. La idea es que el nmero exacto de movimientos requeridos
para resolver un problema ms simple puede ser fcil de calcular y puede
servir como un estimado de la cantidad de movimientos necesitados para
resolver el problema original.
d) Es siempre mejor usar una funcin heurstica con valores ms altos que
otras, siempre que esta no este sobreestimada. Para un problema puede haber
una coleccin de heursticas admisibles h1,...,hm. Si una de ellas domina a las
otras, es decir alcanza valores mayores para todos los nodos, se debe
seleccionar esta. Si ninguna es dominante lo mejor es definir una heurstica
compuesta de la forma siguiente:h(n)=max(p(n),...,hh1(n)).De esta forma h
dominar todas las heursticas individuales.

e) Otra forma de inventar una buena heurstica es usar informacin estadstica.


Esto puede ser hecho realizando una bsqueda sobre una cantidad de
problemas de entrenamiento, por ejemplo, en el juego de las ocho piezas cien
configuraciones generadas aleatoriamente.
f) Frecuentemente es posible seleccionar rasgos de un estado que contribuyen
a su evaluacin heurstica. La funcin de evaluacin heurstica puede ser
construida como una combinacin lineal de estos rasgos. Los rasgos pueden
tener un peso que indique su importancia.
g) Otro tipo de modelo flexibilizado para un problema son los modelos
analgicos. Aqu el modelo auxiliar flexibilizado extrae su potencia no de
simplificar la estructura del problema a resolver sino de usar procesos de
bsqueda que fueron empleados con xito en problemas anlogos. Esto se
retoma posteriormente al estudiar el razonamiento por analoga.
Ejemplo: El problema de las ocho reinas
Asumiendo la variante incremental del juego, es decir poner las reinas una a
una de modo que no se ataquen mutuamente, supngase que se tienen
situadas tres reinas y tenemos que decidir donde colocar la cuarta. El papel de
la heurstica aqu sera ofrecer un criterio para decidir cual de las tres
posiciones indicadas es la ms promisoria de conducir a una solucin
satisfactoria.
Monografias.com
Al deducir una heurstica para este problema podemos razonar que para poder
colocar las ocho reinas tenemos que dejar libres la mayor cantidad de opciones
como sea posible para futuras adiciones de reinas.
Esto significa determinar la cantidad de casillas en las filas no utilizadas que
quedaran no atacadas al colocar la cuarta reina en A, B o C. Una casilla
candidata ser preferida si deja la mayor cantidad de casillas no atacadas en el
resto del tablero. Consecuentemente el nmero de casillas no atacadas
constituye una medida de su mrito, es decir, es la funcin de evaluacin
heurstica para este problema.
Al calcular la funcin heurstica para las posiciones A, B y C se tiene:
f(A) = 8
f(B) = 9
f(C)= 10
Otra alternativa o enfoque heurstico es el siguiente. Las filas no usadas no
tienen igual estatus ya que aquellas con pocas casillas no atacadas tienden a

quedar bloqueadas ms rpidamente que filas con muchas casillas no


atacadas. Consecuentemente, si queremos minimizar la posibilidad de un
futuro bloqueo debemos focalizar nuestra atencin sobre la fila con menor
nmero de casillas no atacadas, sea f" esta heurstica. Para esta funcin
tenemos,
f"(A) = 1
f"(B) = 1
f"(C)= 2
Ntese que con esta heurstica C tambin es la alternativa preferida. Adems,
si alguna opcin candidata toma valor cero para f o f" no tiene sentido
considerarla pues eventualmente ser un nodo muerto, la funcin f" supera a f
en que esta detecta todos los nodos muertos predichos por f y muchos ms.
Como se vio antes el objetivo de este juego es reordenar una configuracin
inicial dada de ocho piezas sobre un tablero de tres por tres en una
configuracin final.
En el reordenamiento slo se permite desplazar fichas a la casilla vaca,
siempre que sea adyacente, es decir la regla es:
Una pieza puede moverse de la posicin X a la Y Si la posicin X es adyacente
aYy
la posicin Y est vaca.
Una solucin tpica para este problema requiere alrededor de veinte pasos,
aunque este nmero vara dependiendo del estado inicial. El factor de
ramificacin es aproximadamente tres (cuando la casilla vaca est en el centro
hay cuatro movimientos posibles y cuando est en una esquina hay dos). Esto
significa que una bsqueda exhaustiva a profundidad veinte podra requerir
cerca de 320 = 3.5x109 estados. Eliminando los estados repetidos quedaran
9! = 362, 880 ordenamientos diferentes. Esta es an una cantidad grande de
estados por lo que se requiere encontrar una buena funcin heurstica.
Un razonamiento a seguir para construir la funcin heurstica para este
problema es estimar cun cerca un estado est del objetivo. Hay dos variantes
comnmente usadas para estimar la proximidad de un estado a otro:
i) Cantidad de piezas mal ubicadas, aquellas por las cuales los dos estados
difieren, llamada p.
ii) La suma de las distancias (horizontal y vertical) de las piezas a sus
posiciones en el estado objetivo, llamada h2. Esta funcin heurstica se conoce
como distancia Manhattan.

Al aplicar estas heursticas al planteamiento anterior se tiene


h1(A) = 2 h1(B) = 3 h1(C) = 4
h2(A) = 2 h2(B) = 4 h2(C) = 4
Ambas funciones indican que A es la mejor opcin y por eso debe ser
explorado antes que B o C.
La variante de encontrar funciones heursticas flexibilizando el modelo del
problema se puede ilustrar con este juego. A partir de la regla que gobierna el
juego se pueden generar tres problemas flexibilizados removiendo una o ms
de las condiciones:
(a) Una ficha se puede mover de X a Y si X est adyacente a Y (elimina la
condicin que Y est vaco)
(b) Una ficha se puede mover de X a Y si Y est vaca (elimina la condicin de
que ambas sean adyacentes)
(c) Una ficha se puede mover de X a Y (elimina ambas condiciones)
La cantidad de movimientos requeridos para resolver el problema (a) es
exactamente igual a la distancia Manhattan.
La cantidad de movimientos requeridos para resolver el problema (C) es
exactamente igual a la cantidad de fichas fuera de lugar, es decir que estn en
una posicin diferente a la que deben tener en el estado objetivo; la cual
coincide con H1.
La funcin h1 es ms barata pero menos precisa que h2.
En el caso del problema (b) la cantidad de movimientos requeridos para
resolverlo es la cantidad de veces que la posicin vaca tiene que ser
intercambiada con otra ficha, lo cual sugiere otro estimado heurstico para el
problema original.
Propiedades de las funciones de evaluacin heurstica
a. Heursticas admisibles.
Una funcin de evaluacin heurstica se denomina admisible si ella nunca
sobrestima el costo real de alcanzar el objetivo.
b. Heurstica ms informada.
Para dos heursticas admisibles f1 y f2, si f1(n) ( f2(n), para cualquier estado n
en el espacio de bsqueda, se dice que la heurstica f2 es ms informada que
f1.

Si una heurstica f2 es ms informada que f1, entonces el conjunto de estados


examinados por f2 es un subconjunto de los expandidos por f1.

Das könnte Ihnen auch gefallen