Está en la página 1de 11

25/09/2014

Galadriel a Frodo, en El seor


de los anillos:
M. en C. Arturo Rodrguez Garca, PCIC,
UNAM, 2014

M. en C. Arturo Rodrguez Garca

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA INFORMADA

Te entrego la luz de Erendil,


nuestra ms preciada estrella,
que ella te ilumine en los
lugares ms oscuros cuando
las dems luces se apaguen.

BSQUEDA INFORMADA
Utiliza conocimiento especfico del problema, ms
all de la definicin del problema en s mismo.
A la aproximacin general le llamaremos
bsqueda primero el mejor, que consiste en
seleccionar un nodo a expandir a partir de una
funcin de evaluacin f(n).

f(n) = h(n)
h(n) = costo estimado del camino ms barato desde el
nodo n a un objetivo.

Las funciones heursticas capturan el


conocimiento adicional que se tiene del problema.

Supongamos que una persona quiere viajar en


carretera por Rumania.
Estado inicial.- Arad
Test objetivo.- Llegar a Bucarest.
Funcin sucesor y funcin de costo.- definidas por
un mapa.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Expande el nodo ms cercano al objetivo.


Evala los nodos utilizando una funcin
heurstica h(n).

EJEMPLO

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA VORAZ

BSQUEDA VORAZ PRIMERO EL


MEJOR (BSQUEDA VARA /
BSQUEDA PRIMERO EL MEJOR)

25/09/2014

Como heurstica, podemos utilizar la distancia en


lnea recta a Bucarest.
Estos valores no forman parte de la descripcin
del problema.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

No es ptimo. El camino encontrado Arad-SibiuFagaras-Bucarest tiene costo de 450.


El camino Arad-Sibiu-RimnicuVilcea-PitestiBucarest con un costo de 418 es una mejor
solucin.

LA AVARICIA ES MALA

En cada paso, el algoritmo trata de ponerse tan


cerca del objetivo como sea posible.
M. en C. Arturo Rodrguez Garca, PCIC,
UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

25/09/2014

Qu pasa si queremos ir de Iasi a Fagaras?


Primero se expandera Neamt por estar ms
cerca de Fagaras, pero entraramos en un callejn
sin salida.

No es ptima.
Es incompleta (puede quedarse en un camino
infinito).
Complejidad en tiempo y en espacio: O(bm)

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA A*

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


f(Craiova) = 140 + 80 + 146 + 160 = 526

g(n) = costo para alcanzar el nodo


h(n) = costo de ir al nodo objetivo

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA A*

Evala los costos mediante la funcin de


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

ES PTIMO?
A* es ptimo si h(n) es una heurstica admisible.
Una heurstica es admisible si h(n) no
sobreestima el costo de alcanzar el objetivo.
Un ejemplo de heurstica admisible es la
distancia en lnea recta al objetivo (pues el
camino ms corto entre dos puntos es una lnea
recta, por lo que la lnea recta no puede ser una
sobrestimacin).

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

25/09/2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

EVITANDO ESTADOS REPETIDOS

Por demostrar: A* es ptimo si h(n) es admisible.


Supongamos que G1 es la solucin ptima cuyo
costo es C*, pero que en la frontera del rbol
aparece una solucin subptima G2.
f(G2) = g(G2) + h(G2) = g(G2) + 0 = g(G2) > C*
Ahora consideremos un nodo n de la frontera que
est en un camino ptimo hacia G1. Si h(n) no
sobrestima el costo del camino solucin, entonces
f(n) = g(n) + h(n) C*
Entonces f(n) C* < f(G2) por lo que A* elegir a
n en vez de a G2 para expandir.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Implica que buscamos en un grafo en lugar del


rbol de bsqueda. Para que funcione existen dos
opciones:
Opcin 1.- Desechar el camino ms caro de dos
caminos encontrados que llevan al mismo nodo.
Opcin 2.- Asegurar que el camino ptimo a cualquier
estado repetido es siempre el que seguimos primero.
Para ello, h(n) debe ser consistente (o montona).

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

DEMOSTRACIN

25/09/2014

CONSISTENCIA

Una heurstica es consistente si:

(desigualdad del

A*:
Es completo
Es ptimo
Enfrenta como dificultad que, para la mayora de los
problemas, el espacio de bsqueda crece
exponencialmente.
Requiere mucha memoria porque mantiene todos los
nodos generados en memoria.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

h(n) c(n,a,n) + h(n)


tringulo)

A*PI

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA A* DE PROFUNDIDAD
ITERATIVA (A*PI)

Adapta la idea de realizar bsqueda iterativas,


usando como corte el costo de f(n), en vez de la
profundidad (como lo hace la Bsqueda de
Profundidad Iterativa).

BRPM

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA RECURSIVA DEL


PRIMERO MEJOR (BRPM)

Mantiene la pista del mejor camino alternativo


desde cualquier antepasado del nodo actual. Si el
nodo actual excede ese lmite, vuelve atrs al
camino alternativo.

25/09/2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BRPM es ms eficiente que A*PI, pero todava


sufre de regeneracin excesiva de nodos, pues
cada cambio de opinin puede requerir
expansiones de nodos olvidados para volver a
crear el camino.
Es ptimo si h(n) es admisible.
Su complejidad en espacio es O(bd).
La complejidad en tiempo depende de la
exactitud de la informacin heurstica.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

A*MS
Trabaja como A*, expandiendo la mejor hoja
hasta que la memoria se llena.
Cuando se ha alcanzado el lmite de memoria,
para aadir un nuevo nodo se retira uno viejo.
Siempre se retira el peor nodo hoja, devolviendo
el valor a su padre.
De este modo, el antepasado de un subrbol
olvidado sabe la calidad del mejor camino en el
subrbol.
A*MS vuelve a generar el subrbol slo cuando
todos los otros caminos parecen peores que el
camino olvidado.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA A*MS
(BSQUEDA A* CON MEMORIA
ACOTADA SIMPLE)

25/09/2014

Es completo y ptimo siempre y cuando la


memoria sea suficiente.
Una desventaja es que a menudo el algoritmo es
forzado a cambiar hacia adelante y hacia atrs
continuamente entre un conjunto de caminos
solucin candidatos.
La regeneracin repetida de nodos hace que
problemas que son resolubles por A* se vuelvan
intratables para A*MS.

En muchos problemas, el camino al objetivo es


irrelevante. Por ejemplo, en el problema de las 8
reinas lo que importa es la configuracin final de
las reinas, no el orden en el cual se aaden.
La bsqueda local funciona con un nico estado
actual. Los caminos seguidos no se retienen.
Ventajas:

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA LOCAL

BSQUEDA LOCAL

PAISAJE DEL ESPACIO DE ESTADOS

Usan muy poca memoria.


A menudo encuentran soluciones razonables en
espacios de estados grandes o infinitos (continuos).

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

MTODOS DE BSQUEDA LOCAL


Bsqueda de ascensin de colinas.
Recocido simulado.
Bsqueda por haz local.
Algoritmos genticos.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Si la elevacin corresponde al costo, entonces el


objetivo es encontrar el mnimo global.
Si la elevacin corresponde a una funcin
objetivo, entonces el objetivo es encontrar el
mximo global.
Los algoritmos de bsqueda exploran el paisaje.
Un algoritmo completo encuentra un objetivo si
existe.
Un algoritmo ptimo encuentra siempre el
mnimo/mximo global.

25/09/2014

BSQUEDA DE ASCENSIN DE COLINAS

En el estado actual, la funcin de costo es h=17.

Se elige el movimiento que lleve al estado con la


menor funcin de costo.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

COLINAS

Consiste en moverse en direccin del valor


creciente, hasta alcanzar un pico en donde
ningn vecino tenga valor ms alto.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA DE ASCENSIN DE

PROBLEMA DE LAS 8 REINAS


Formulacin de estados completa. Cada estado
tiene ocho reinas sobre el tablero, una por
columna.
La funcin sucesor devuelve todos los estados
posibles generados por mover una reina a otro
cuadrado en la misma columna (8 reinas x 7
espacios disponibles para cada una = 56
sucesores).
La funcin heurstica es el nmero de pares de
reinas que estn sobre la misma lnea horizontal,
vertical o diagonal (sin importar si en el estado
actual no se puedan atacar por la presencia de
una tercer reina entre ellas).

Se calcula la funcin de costo para cada estado


sucesor.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

25/09/2014

En el estado actual, la funcin de costo es h=12.


A la ascensin de colinas se le llama tambin
bsqueda local voraz.
Este mtodo a menudo funciona bien y progresa
rpidamente hacia las soluciones.
Sin embargo, el mtodo a veces se atasca debido a
mximos locales o mesetas.

Para el problema de las 8 reinas, comenzando


desde un estado aleatorio, este algoritmo se
estanca el 86% de las veces. Sin embargo, trabaja
rpidamente: en promedio, 4 pasos cuando tiene
xito, y 3 cuando fracasa.

BSQUEDA DE ASCENSIN DE COLINAS

CON MOVIMIENTO LATERAL

ESTOCSTICA

Si se llega a un estado desde el cual no existe un


estado mejor al cual moverse, pero s existen
estados con igual funcin de costo, entonces se
realiza un movimiento a uno de esos estados.
Se debe poner un lmite al nmero de
movimientos laterales para no caer en un bucle
infinito.
En el caso del problema de las 8 reinas, esto
aumenta el xito a 94%, con un promedio de 21
pasos cuando se tiene xito y 64 cuando se
fracasa.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Escoge aleatoriamente de entre los movimiento


ascendentes.
La probabilidad de seleccin puede variar con la
pendiente del movimiento ascendente.
Converge ms despacio, pero en algunos paisajes
de estados encuentra mejores soluciones.

BSQUEDA DE ASCENSIN DE COLINAS

PRIMERA OPCIN

CON REINICIO ALEATORIO

Implementa una ascensin de colinas estocstica


generando sucesores al azar hasta que se genera
uno que es mejor que el estado actual.
Es una buena estrategia cuando un estado tiene
muchos sucesores.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Es una serie de bsquedas desde estados iniciales


generados aleatoriamente, parndose cuando se
encuentra un objetivo.
Es completo, por la razn trivial de que generar
eventualmente un estado objetivo como el estado
inicial.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA DE ASCENSIN DE COLINAS DE

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA DE ASCENSIN DE COLINAS

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

25/09/2014

RECOCIDO O TEMPLADO

BSQUEDA DE RECOCIDO SIMULADO

Imaginemos que estamos buscando el mnimo


global (mediante la funcin de costo). Si
colocamos una pelota de ping pong en el paisaje y
la dejamos rodar se ir hacia uno de los mnimos
(ya sea local o global).
El truco es sacudir el paisaje, con fuerza
adecuada para que pueda escapar de mnimos
locales, pero no del mnimo global.
La solucin consiste en sacudir primero con
fuerza e ir reduciendo la intensidad de la
sacudida.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Es similar a la ascensin de colinas.


En vez de escoger el mejor movimiento, escoge un
movimiento aleatorio. Se tienen dos opciones:

Si el movimiento mejora la situacin, es aceptado.


Si el movimiento no mejora la situacin, es aceptado
con una probabilidad menor que 1 (la cual va
disminuyendo exponencialmente).

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA DE RECOCIDO SIMULADO

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA DE RECOCIDO
SIMULADO (TEMPLADO
SIMULADO)

En metalurgia, es el
proceso para templar
o endurecer metales y
cristales,
calentndolos a una
temperatura alta y
luego gradualmente
enfriarlos.

BSQUEDA POR HAZ LOCAL


Comienza con k estados generados
aleatoriamente.
En cada paso se generan los sucesores de los k
estados. Si alguno es objetivo, se para el
algoritmo. De lo contrario, se juntan todos los
sucesores de los k estados en una sola lista. Se
seleccionan los k mejores sucesores de la lista.
De esta manera, la informacin til es pasada
entre los k hilos paralelos de bsqueda.
La bsqueda de haz estocstica, elige
aleatoriamente a los sucesores.

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA POR HAZ LOCAL

10

25/09/2014

ALGORITMOS GENTICOS

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

ALGORITMOS GENTICOS

Variante de la bsqueda de haz estocstica en la


que los estados sucesores se generan combinando
dos estados.

BSQUEDA LOCAL EN ESPACIOS


CONTINUOS
Utilizar clculo diferencial para encontrar
mximos y mnimos.
Utilizar mtodos numricos (por ejemplo, el
mtodo de Newton-Raphson).
Utilizar mtodos de investigacin de operaciones
(programacin lineal).

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

CONTINUOS

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

BSQUEDA LOCAL EN ESPACIOS

REFERENCIAS

M. en C. Arturo Rodrguez Garca, PCIC,


UNAM, 2014

Inteligencia Artificial: Un enfoque moderno.


Stuart Russell y Peter Norvig. 2 Edicin.
Cptulo 4. Pginas 107-153.

11

También podría gustarte