Está en la página 1de 27

Mtodos Heursticos en

Inteligencia Artificial
Mtodos Heursticos en
Inteligencia Artificial
J avier Ram
J avier Ram

rez
rez
-
-
Rodr
Rodr

guez
guez
Ana Lilia Laureano
Ana Lilia Laureano
-
-
Cruces
Cruces
Universidad Aut
Universidad Aut

noma Metropolitana
noma Metropolitana
Mtodos Heursticos en
Inteligencia Artificial
Los problemas de Inteligencia Artificial
(IA) generalmente usan un trmino comn
llamado estado.
No hay un algoritmo formal que los
resuelva, i.e., dado un estado inicial no se
puede decir cual es la secuencia de etapas
para llegar a un estado meta.
Met. Heursticos en IA: Ramrez/Laureano
La IA estudia especialmente mtodos que permiten
resolver problemas en los que no existe el
conocimiento sistemtico para plantear una solucin
analtica.
Estos mtodos tienen la ventaja de poderse aplicar en
una gran diversidad de clases de problemas.
Para llevarlos a cabo efectiva y eficientemente, sobre
dichos mtodos se utiliza el conocimiento heurstico
disponible.
Entre menos estados se generen, mejor es el
algoritmo utilizado para llegar al estado meta.
Heurstico: Viene del griego heuriskein que significa
encontrar o descubrir.
Met. Heursticos en IA: Ramrez/Laureano
En Inteligencia Artificial, heurstico se
describe mejor como mtodo de bsqueda.
La bsqueda heurstica consiste en aadir
informacin, basndose en el espacio
estudiado hasta ese momento, de forma que
se restringe drsticamente esa bsqueda
Muchos problemas de IA se pueden modelar
como una grfica en donde hay que buscar
recorridos o caminos con ciertas
caractersticas.
Met. Heursticos en IA: Ramrez/Laureano
Para estos modelos se han desarrollado
muy diversas heursticas que han dado
muy buenos resultados para encontrar
soluciones aproximadas.
Entre las que se pueden mencionar
algoritmos genticos, recocido simulado y
en general algoritmos evolutivos.
Met. Heursticos en IA: Ramrez/Laureano
La IA estudia especialmente mtodos que permiten resolver
problemas en los que no existe el conocimiento sistemtico
para plantear una solucin analtica (a lo ancho, en
profundidad, hill climbing).
Estos mtodos, considerados dbiles por realizar procedimientos
de bsqueda no informada, no aprovechan la informacin
relevante del dominio, suelen ser poco eficientes, pero tienen la
ventaja de poderse aplicar en una gran diversidad de clases de
problemas.
Para llevarlos a cabo efectiva y eficientemente, sobre dichos
mtodos se utiliza el conocimiento heurstico disponible.
La clave para el enfoque de IA es bsqueda inteligente y
emparejamiento de estados. Entre menos estados se
generen, mejor es el algoritmo utilizado para llegar al
estado meta.
Met. Heursticos en IA: Ramrez/Laureano
B
B

squeda Heur
squeda Heur

stica
stica
George Polya: Estudio de mtodos y
reglas para descubrimiento e invencin.
Las heursticas son formalizadas como reglas
para elegir (bscar) las ramas en el espacio
de estados que son ms probables de llegar
a una solucin aceptable del problema.
Met. Heursticos en IA: Ramrez/Laureano
Met. Heursticos en IA: Ramrez/Laureano
En IA, se emplean heur
En IA, se emplean heur

sticas
sticas
en dos casos
en dos casos

Un problema puede
Un problema puede
no
no
contar con
contar con
soluci
soluci

n exacta
n exacta
debido a ambig
debido a ambig

edades inherentes en el problema o


edades inherentes en el problema o
datos disponibles.
datos disponibles.
Diagn Diagn stico m stico m dico dico
Visi Visi n n

Un problema puede tener soluci
Un problema puede tener soluci

n exacta,
n exacta,
pero el costo
pero el costo
computacional por encontrarla puede ser prohibitivo
computacional por encontrarla puede ser prohibitivo
.
.
Problema del agente viajero Problema del agente viajero
Problema de coloraci Problema de coloraci n n
J uego de ajedrez J uego de ajedrez
Bsquedas Heursticas y Sistemas
Expertos
J uegos simples son vehculos ideales para explorar el
diseo y comportamiento de algoritmos de bsqueda
heurstica debido a que
El espacio de bsqueda es suficientemente grande que
requiere poda heurstica.
Son suficientemente complejos para sugerir una amplia
variedad de evaluaciones heursticas.
Generalmente admiten representaciones sencillas.
Cada nodo del espacio de estados tiene una representacin
comn, una heurstica puede aplicarse a travs del espacio de
estados.
Met. Heursticos en IA: Ramrez/Laureano
Met. Heursticos en IA: Ramrez/Laureano
Las Heur
Las Heur

sticas
sticas
Atacan la complejidad guiando la b Atacan la complejidad guiando la b squeda por los caminos squeda por los caminos m m s s
prometedores prometedores en el espacio de b en el espacio de b squeda. squeda.
Eliminan estados no prometedores y sus descendientes Eliminan estados no prometedores y sus descendientes
Encuentran soluciones aceptables. Encuentran soluciones aceptables.
Desafortunadamente las reglas son falibles, pues usan informaci Desafortunadamente las reglas son falibles, pues usan informaci n n
limitada. limitada.
J uegos y probar teoremas J uegos y probar teoremas son dos de las m son dos de las m s antiguas aplicaciones s antiguas aplicaciones
en IA. en IA.
No es posible examinar cada inferencia que puede ser hecha en un No es posible examinar cada inferencia que puede ser hecha en un
dominio matem dominio matem tico, o cada movimiento que puede ser hecho en un tico, o cada movimiento que puede ser hecho en un
tablero de ajedrez. tablero de ajedrez.
De aqu De aqu que las funciones heur que las funciones heur sticas sean un componente esencial sticas sean un componente esencial
para resolver este tipo de problemas. para resolver este tipo de problemas.
Un Algoritmo heursitico

consta de dos
partes
1.

La medida heurstica.
2.

Un algoritmo que la usa para buscar en el espacio de estados.


Ejemplo: Considerar el juego del GATO.


Un simple anlisis permite determinar el nmero de estados que
necesitan considerarse en una bsqueda exhaustiva en 987... o
9!


Una reduccin simtrica

puede disminuir un poco el espacio de
bsqueda.


Tomando en consideracin el punto anterior, slo hay 3 movimientos
iniciales.
Met. Heursticos en IA: Ramrez/Laureano
x
x
x
x o x o x
o
x
o
x
o x
o
x
o x o x
o
x
o
x
o
x
o
Met. Heursticos en IA: Ramrez/Laureano
Razonamiento
Razonamiento


Si usamos reducciones por simetra, en un segundo
nivel

de estados el nmero de posibles caminos a travs
del espacio de estados se convierte en 12

7!


Una heurstica simple casi puede eliminar la bsqueda
total, si se intenta colocar a X slo a estados donde esta
tiene ms posibilidades de ganar.


El algoritmo selecciona y se mueve al estado con el valor ms
alto de la heurstica, con lo que se podan hasta 2/3 del espacio
de estados.


La heurstica se utilizar

en cada turno de X.
Met. Heursticos en IA: Ramrez/Laureano
Algoritmos para b
Algoritmos para b

squeda
squeda
heur
heur

stica
stica


La forma ms simple de implementar una bsqueda heurstica es mediante
el procedimiento llamado Hill climbing

(escalando una colina):
no se corrigen fallas en la estrategia
tendencia a caer en ptimo local (Hill climbing-RecSimul).


Mejor primera bsqueda (best-first-search) (MBH)


Usar listas para mantener estados: abiertos y

cerrados (algoritmo A*).
Etapa adicional de este ultimo, es ordenar los estados en abiertos de acuerdo a
alguna estimacin heurstica de su cercana al objetivo.
En cada iteracin se considera el estado ms prometedor de la lista de abiertos
Actualizando la historia de los ancestros de nodos en abierto y cerrado cuando se
redescubren es ms probable que el algoritmo encuentre el camino ms corto al
objetivo.
Cuando abierto se mantiene como una lista clasificada se llama fila prioritaria.
Met. Heursticos en IA: Ramrez/Laureano
FUNCIONES DE EVALUACIN
HEURSTICA
A continuacin se evala el desempeo de varias
heursticas para el rompecabezas de las 9 celdas y
8 azulejos:
Piezas fuera de lugar, con respecto al estado meta.
Suma de distancias fuera de lugar, con respecto al estado
meta.
Nmero de regresos directos por 2. Con respecto al
estado meta
Met. Heursticos en IA: Ramrez/Laureano
Meta
Meta
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
1 2 3
8 4
7 6 5
(1) Piezas fuera de lugar
(2) Suma de distancias
fuera de lugar
(3) 2 x no. Regresos
directos
5 6 0
5 6 0
3 4 0
Heursticas
Ejemplo de la contabilizacin en un
regreso directo
2
2
1
1
3
3
8
8
4
4
7
7
5
5
6
6
1
1
2
2
3
3
8
8
4
4
7
7
6
6
5
5
Un estado con una meta y dos regresos directos: 1 y 2, 5 y 6
Met. Heursticos en IA: Ramrez/Laureano
Met. Heursticos en IA: Ramrez/Laureano
2 8 3
1 6 4
7 5
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
1 2 3
8 4
7 6 5
ejemplo
meta
g(n) = 0
g(n) =1
Valores de h(n) 6 4 6
f(n) = g(n)

+ h(n),

donde:
g(n) = distancia de n al estado inicial (no. de niveles)
h(n) = nmero de distancias fuera de lugar / heurstica (2)
f(n) = g(n)

+ h(n),

donde:
g(n) = distancia de n al estado inicial (no. de niveles)
h(n) = nmero de distancias fuera de lugar / heurstica (2)
Met. Heursticos en IA: Ramrez/Laureano
2 8 3
1 6 4
7 5
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
1 2 3
8 4
7 6 5
Met. Heursticos en IA: Ramrez/Laureano
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 3
1 8 4
7 6 5
1 2 3
8 4
7 6 5
h(n) = 6 4 6
h(n) = 5 3 5
Met. Heursticos en IA: Ramrez/Laureano
1 2
8 4 3
7 6 5
2 3
1 8 4
7 6 5
2 3
1 8 4
7 6 5
1 2 3
8 4
7 6 5
2 8 3
7 1 4
6 5
1 2 3
8 4
7 6 5
1 2 3
8 4
7 6 5
h(n) = 6 2 3
h(n) = 1 2 2
1 2 3
8 4 5
7 6
An
An

lisis de las heur


lisis de las heur

sticas
sticas
1.

La heurstica ms simple cuenta los azulejos que estn fuera de
lugar, cuando se compara con el estado meta.
2.

Una heurstica mejor sera la que suma todas las distancias por
las cuales los azulejos estn fuera de lugar.
Ambas desconocen las dificultades para intercambiar azulejos.
3.

Una heurstica que toma en cuenta esta dificultad, es la que
utiliza un factor de cambio, cuando multiplica por un nmero
pequeo; en este caso 2, cada regreso directo de un azulejo.
Esto es, cuando dos azulejos adyacentes deben intercambiarse
(en cualquier sentido) para estar en el orden del objetivo.
Met. Heursticos en IA: Ramrez/Laureano
Dificultad para crear buenas
heursticas


El objetivo es usar la informacin limitada disponible para hacer
selecciones inteligentes.


El diseo de buenas heursticas es un problema emprico, que se
apoya en buen juicio e intuicin , pero la medida final de una
heurstica debe ser el desempeo en el problema en cuestin para
el que fue creado.


Y debe comprender los dos datos siguientes, en la funcin de
evaluacin:


f(n) = g(n) + h(n)


donde:


g(n):

representa la longitud del estado n al estado inicial y


h(n):

representa la estimacin heurstica de la distancia de n al objetivo
Puntos a considerar en el dise
Puntos a considerar en el dise

o
o
de funciones heur
de funciones heur

sticas
sticas
En una funcin heurstica no solo existe el deseo de
encontrar una solucin sino tambin encontrar el camino
ms corto a una meta.
Esto es importante cuando en una aplicacin las etapas extras
tienen un costo excesivo, tal como la planificacin de un camino
para un robot autnomo a travs de ambientes peligrosos.
Admisible
Se denomina a la funcin heurstica que encuentra el camino
ms corto a una meta siempre que exista. Por ejemplo:
El mtodo de bsqueda a lo ancho es una estrategia admisible,
desgraciadamente, en general, es ineficiente para usarse en la
prctica.
Al utilizar funciones heur
Al utilizar funciones heur

sticas
sticas
f(n) = g(n) + h(n)


Se pueden caracterizar una clase de estrategias de bsqueda
admisibles.


Determinando las propiedades de heursticas admisibles se define
la funcin de evaluacin f*(n) = g*(n) + h*(n)


Donde g*(n) es el camino ms corto del nodo inicial al nodo n y h*

representa el costo del camino ms corto desde n a la meta.


Una funcin heurstica h
1

es ms informada

que otra h
2

si ambas
son admisibles y adems.


h
1

(n)


h
2

(n) n | n, donde n, no es

un nodo meta.
Monoton
Monoton

a
a

Se dice que una funci
Se dice que una funci

n heur
n heur

stica es
stica es
mon
mon

tona
tona
ssi
ssi
:
:
1.

Para todos los estados n
i

y n
j,

se cumple que:
n h(n
i

)

h(n
j

)

costo (n
i

,n
j

)
2.

H (meta) = 0

Una manera de describir la propiedad de
Una manera de describir la propiedad de
monoton
monoton

a es que la heur
a es que la heur

stica es admisible en
stica es admisible en
todas partes.
todas partes.


n
j

es descendiente de n
i


Costo (n
i
,n
j
) es el costo actual, en nmero de
movimientos, para ir del estado n
i

al estado n
j
FIN
FIN

También podría gustarte