Funciones Heurísticas Parte II María de la Asunción Gómez Castro José Ignacio Carmona Villegas
Jun 29, 2015
Funciones HeurísticasParte II
María de la Asunción Gómez CastroJosé Ignacio Carmona Villegas
ContenidosSobrecarga de restricciones (Overconstraining)Heurísticas metafóricasHeurísticas basadas en probabilidad
Desenlace más probableMuestreo
Aprendizaje InductivoCombinación de heurísticas
Sobrecarga de restricciones (overconstraining)Es el proceso opuesto a la relajación de restricciones.
Consiste en añadir restricciones al modelo del problema.Las soluciones al modelo sobrecargado no son
admisibles.Intentar buscar cualquier camino a un objetivo (no
necesariamente el óptimo) puede dar lugar a soluciones útiles para el modelo original.
Sobrecarga de restricciones (overconstraining)Añadir restricciones que lleven a buenas soluciones es un
proceso complejo y no siempre fructífero.La forma más sencilla consiste en asumir que una parte
de la solución se da de antemano. Por ejemplo, en el problema del viajante de comercio, se
puede tomar un subcircuito aleatorio y obtener un subproblema sobrecargado más sencillo que el original.
El coste asociado constituye una cota superior de h y se puede usar para limitar el uso de memoria de A*.
Heurísticas metafóricasSe basan en el uso de modelos metafóricos (análogos)
que no simplifican necesariamente el problema original, sino que aprovechan las capacidades del agente resolutor de problemas.
Por ejemplo el juego del Tic-Tac-Toe nos parece a los humanos más simple que su isomorfo, el scrabble numérico (buscar tres números que sumen 15).
Debido a nuestra capacidad de visualizar el problema el tic-tac-toe nos resulta más sencillo.
Heurísticas metafóricasPara aprovechar esta técnica de generación
de heurísticas, es necesario conocer las capacidades especiales del agente. Por ejemplo un agente dotado de capacidades de visión artificial suficientemente eficientes podría resolver más fácilmente el problema.34 8
59 1
72 6
Heurísticas basadas en probabilidadDe forma natural, diariamente, utilizamos heurísticas
propias que hacen uso de probabilidades que hemos aprendido con el tiempo.
Asimismo, podemos crear heurísticas que consideren un evento como más probable si posee características prototípicas de una gran población.
A veces conducen a situaciones paradójicas.Una heurística debe funcionar bien la mayoría de las
veces. De ahí que sea natural la aplicación de distribuciones de probabilidad a los modelos de problemas.
El suceso más probableSi el dominio del problema está caracterizado por un
modelo probabilístico, se puede hacer uso del cálculo de probabilidades para determinar el suceso más probable.
Debido a su naturaleza, estas estimaciones basadas en probabilidad, no garantizan la admisibilidad. A veces sobrestiman mucho el valor de h y provocan la obtención temprana de soluciones suboptimales.
Si se permite relajar la condición de optimalidad, estas heurísticas encuentran buenas soluciones la mayoría de las veces.
MuestreoEs una de las heurísticas más antiguas y usadas. Consiste
en inferir alguna propiedad de un gran grupo de elementos a partir de las propiedades de un subgrupo pequeño y aleatorio.
Ejemplo: Base de datos gigante que contiene N dígitos binarios y se pide computar la proporción de dígitos que son 1.Si podemos tolerar un margen de error, podemos pasar de orden lineal a constante (definido por los parámetros de calidad de las muestras).
MuestreoLas técnicas de muestreo pueden ser usadas para
construir distribuciones de probabilidad (originalmente desconocidas, estiman la forma de la distribución) y que serán utilizadas para guiar algoritmos de búsqueda probabilística.
De nuevo, esta técnica no garantiza una heurística admisible, pero en conjunto con otras estrategias puede ayudar a reducir los tiempos de búsqueda.
Aprendizaje inductivoEstrategia consistente en la modificación/generación de
una heurística en base a lo inferido de la experiencia (proceso de obtención de soluciones).
En esta estrategia se basan técnicas más particulares como las redes neuronales, árboles de decisión, aprendizaje por refuerzo…
Funcionan mejor cuando se les suministran características de un estado que sean relevantes para su evaluación (no sólo la descripción del estado).
Aprendizaje inductivoEn el 8-Puzle, el número de fichas mal colocadas sería
una característica adecuada para la evaluación (x1(n)).El numero de pares de fichas adyacentes que son
también adyacentes en el estado objetivo podría ser otra característica adecuada (x2(n)).
Una combinación lineal nos puede permitir combinar x1 y x2 para predecir h(n).
h(n) = c1x1(n) + c2x2(n)
Las constantes c1 y c2 deben ser ajustadas a los costes de la solución.
Combinación de heurísticasSi disponemos de múltiples heurísticas admisibles y
ninguna se muestra claramente mejor, podemos combinarlas, y quedarnos con la más dominante en cada momento.
hc (n) = max { h1(n), …, hm(n) }
Debido a que las heurísticas componentes son admisibles, es fácil demostrar que hc es admisible, consistente y domina a todas las demás.
Referencias1. Stuart Russell y Peter Norvig. Artificial Intelligence: A modern Approach.
Pearson, 3o edición, 2010.2. Judea Pearl. Heuristics: Intelligent search strategies for computer
problem solving. Addison-Wesley, 1985.