Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Bsqueda Informada
Agenda
Parte 1
Introduccin a la Bsqueda
Informada o Heurstica
Best-First Search
Parte 2
Proceso de Bsqueda
Heurstica y su aplicacin
Funcin de evaluacin
Admisibilidad
Consistencia
Dominancia
Calidad
Estrategias de Definicin de
Heursticas
Anlisis de Performance
son capaces de calcular slo el costo del camino del nodo actual al nodo
inicial para decidir cual es el prximo nodo de la frontera a ser expandido.
Heurstica
La palabra Heurstica
viene del griego
Heuriskein que significa Descubrir y es
tambin el origen de Eureka que proviene de la
expresin
heurika que es famosa por
Arqumedes.
Heurstica
Ejemplo
Distancia
2 4 8
7 3 5
2 3 4
1
5
1 6
8 7 6
Estado Final
Estado Actual
h1
2 4 8
7 3 5
1 6
)=
Estimando la distancia
Ejemplo
Distancia
2 4 8
7 3 5
2 3 4
1
5
1 6
8 7 6
Estado Final
Estado Actual
h1
2 4 8
7 3 5
1 6
)=
La cantidad de piezas
fuera de lugar
=7
Ejemplo
2 4 8
7 3 5
1 6
h1
2 4 8
7 3 5
1 6
) =7
Estado 1
2 3 4
1
5
8 7 6
2 4 8
7 3 5
1
6
Estado Final
Estado 2
h1
2 4 8
7 3 5
1 6
) =6
Ejemplo
Distancia
2 4 8
7 3 5
2 3 4
1
5
1 6
8 7 6
Estado Final
Estado Actual
h2
2 4 8
7 3 5
1 6
)=
?
Otra heurstica?
Ejemplo
Distancia
2 4 8
7 3 5
2 3 4
1
5
1 6
8 7 6
Estado Final
Estado Actual
h2
2 4 8
7 3 5
1 6
)=
Nmero de movimentos
necesarios para colocar cada
pieza en el su lugar
= 10
Ejemplo
2 4 8
7 3 5
1 6
h2
248
735
16
) = 10
Estado 1
2 3 4
1
5
8 7 6
2 4 8
7 3 5
1
6
Estado Final
Estado 2
h2
248
735
1 6
) =9
Complejidad de tiempo:
Complejidad de espacio:
ptima:
Notacin
Dado un nodo n
g(n) = costo desde el nodo inicial hasta n.
h(n) = funcin heurstica aplicada al nodo n.
Esto es, el costo estimado desde n hasta una
solucin.
h*(n) = costo real de un camino ptimo desde
n hasta una solucin.
f(n) = g(n) + h(n) costo estimado de una
solucin que pasa por el nodo n.
Bsqueda Golosa
Bsqueda Golosa
Algoritmo:
funcin Bsqueda-Golosa (problema, h)
retorna una solucin o falla
Bsqueda-Mejor-Escogida (problema, h)
Bsqueda Golosa
Ponta
de Sol
366
Aqu ser
Propiedades/Caractersticas de la bsqueda
Golosa:
No es Completa
Partida Machico
Propiedades/Caractersticas de la bsqueda
Golosa:
Cual el camino a
escoger?
Propiedades/Caractersticas de la bsqueda
Golosa:
Porque?
Puede ocurrir en el peor caso, que todos los nodos
tengan que de ser expandidos o visitados.
Porque?
Mantener todos los nodos en memoria.
Costo Uniforme:
Bsqueda Golosa
Ordena a partir de g
Completo y ptimo
Caro
Ordena a partir de h
No es completo ni es ptimo
Pero es mejor en trminos computacionales
Algoritmo A*
En la bsqueda A* la evaluacin de cada
nodo es una combinacin:
f(n) = g(n) + h(n)
g(n) Costo del camino desde el nodo
inicial hasta n.
h(n) Estima el costo desde n hasta al
nodo objetivo.
Algoritmo A*
Objetivo:
Minimizar f(n) Solucin menor costo total
Algoritmo A*
Algoritmo A*
A
366=0+366
449=75+374
R
413=220+193
646=280+366
591=338+253
450=450+0
553=300+253
- Objetivo
418 =418 +0
615=455+160
607=414+193
- Solucin
h(n) h*(n)
Algoritmo A*
Se puede demostrar lo siguiente:
Sean h1 y h2 , dos heursticas admisibles
tales que para todo nodo n:
Algoritmo A*
Complejidad de tiempo:
Exponencial en la profundidad de la solucin,
sin embargo buenas funciones heursticas
disminuyen significativamente ese coste.
Costo de espacio: O(bd)
Eficiencia ptima
Algoritmo IDA*
Modificaciones al Algoritmo A* :
IDA*
Algoritmo IDA*
SMA*
Es una versin (simplificada) de A*.
Hace uso de toda la memoria disponible.
Estrategia:
SMA*
Lmite de memoria: 8 nodos
A
366=0+366
393=140+253
R
413=220+193
415=239+176
646 =280+366
671=291 +380
- Nodo descartado
- Objetivo
- Soluin
Z
449=75+374
SMA*
Lmite de memoria: 8 nodos
A
366=0+366
671
T
393=140+253
R
413=220+193
646 =280+366
415=239+176
671=291 +380
Nodo
descartado
Objetivo
526=366+160
Soluin
Z
449=75+374
SMA*
SMA*
SMA*
SMA* es completo si la menor profundidad
de la solucin es menor que el espacio en
memoria.
SMA* es ptimo si consigue alcanzar la
solucin ptima, dentro de la memoria,
sino retorna la mejor posible.
Complejidad de Espacio / Tiempo :
Exponencial
FIN PARTE 1
Inteligencia Artificial
Bsqueda Informada
Agenda
Parte 1
Introduccin a la Bsqueda
Informada o Heurstica
Best-First Search
Parte 2
Proceso de Bsqueda
Heurstica y su aplicacin
Funcin de evaluacin
Admisibilidad
Consistencia
Dominancia
Calidad
Estrategias de Definicin de
Heursticas
Anlisis de Performance
Heurstica y su Aplicacin
La heurstica es utilizada:
Como tcnica de bsqueda para la obtencin
de metas en problemas donde el algortmico
bsico generan explosin combinatoria.
Como un mtodo aproximado de resolucin de
problemas utilizando funciones de evaluacin
de tipo heurstico.
Como un mtodo de poda (corte) para
estrategias de programas de juegos.
Heurstica y su Aplicacin
Heurstica y su Aplicacin
Admisibilidad
Consistencia
Dominancia
Calidad
2 4 8
7 3 5
2 3 4
1
5
1 6
8 7 6
Estado Final
Estado Actual
h1
2 4 8
7 3 5
1 6
)=
La cantidad de piezas
fuera de lugar
=7
2 4 8
7 3 5
1 6
2 3 4
1
5
8 7 6
Estado Actual
Estado Final
h2
2 4 8
7 3 5
1 6
)=
Nmero de movimentos
necesrios para colocar cada
pieza en el seu lugar
= 10
Calidad
Estrategias de Definicin
2.
3.
Anlisis de Performance
Espacio
de
Estados
=
conjunto
de
configuraciones completas;
Encontrar configuraciones que respeten las
restricciones.
Ej.: 8-reinas
En estos casos, podemos usar Algoritmos de
Bsqueda Local.
Los caminos
guardados.
seguidos
por
el
Algoritmo
son
Dos Ventajas:
Ejemplo: n-reinas
Trepada de Colinas
Mximo Global
Mximo
Local
Trepada de Colinas:
Circunstancias Indeseables
Mximos Locales
Planicies
Laderas y Riscos
Mximos locales
Planicies
f(n) = f (hijos(n))
Restriccin del algoritmo
Laderas y Riscos
Es tambin denominada Bsqueda Local Golosa porque no mira ms all de los estados sucesores
inmediatos.
Problema 8 reinas
Problema 8 reinas
Trepada de Colinas
Objetivo!!!
El algoritmo es completo?
Toda vez que cada nodo tratado por el algoritmo sea siempre un
estado completo (una solucin).
Ex.: juego del 8-puzzle
Semejante a bsqueda en profundidad
El algoritmo es ptimo?
Recocido Simulado
Recocido Simulado
Recocida Simulado
Simulated Annealing
Fundamento terico.
Variantes de SA.
Aplicacin (Dial-A-Ride)
TA (Threshold accepting)
GDA (Great deluge algorithm)
RRT (Record-to-Record Travel)
Aplicacion. (TSP)
Concluciones.
Fundamento Terico
Definir vecindad.
Estrategia de exploracin en la
vecindad.
Estrategia de enfriado.
Condicin de parada.
Fundamento Terico
Fundamento Terico
Fundamento Terico
P = exp(x/t)
Fundamento Terico
Estrategia de enfriado :
Se elije una temperatura inicial (To).
Funcin de enfriamiento g(t)
(actualizacin: de t)
Funcin de equilibrio.
Fundamento Terico
Condiciones de parada.
Temperatura mnima del sistema.
Cantidad de iteraciones.
No se obtiene una solucin mejor despus de
varias iteraciones.
Fundamento Terico
Repetir
Repetir (para cierto t)
Selecciona aleatoriamente una sol. j en vecindad(i).
Sea = f(j) f(i)
Si > 0 entonces i = j
Sino generar aleatoriamente q U(0,1)
Si q < exp(/t) entonces i = j
Hasta llegar a equilibrio.
Actualizo la temperatura (t = g(t)).
Hasta condicin de parada.
Simulated Annealing
Fundamento terico.
Aplicacin (Dial-A-Ride)
Variantes de SA.
TA (Threshold accepting)
GDA (Great deluge algorithm)
RRT (Record-to-Record Travel)
Aplicacion. (TSP)
Concluciones.
Aplicacin SA
Dial-A-Ride
Aplicacin SA
Dial-A-Ride
Funcin objetivo:
Aplicacin SA
Dial-A-Ride
Ejemplo:
Cliente K solicita pedido a las 8hs (1k
=8)
El vehculo m recoge la carga a las
13hs (ik=13) y la deja a las 16hs
(jk=16).
El tiempo terico de ir del nodo i a j es
de 2 hs (ik,jk=2)
losk= ( jk - 1k ) / ik,jk = (16-8) / 2 = 4
Aplicacin SA
Dial-A-Ride
k = 1,...,n
Aplicacin SA
Dial-A-Ride
Aplicacin SA
Dial-A-Ride
Al llegar una nueva llamada k:
A) Asigno la llamada al mejor vehculo (fase de
asignacin)
B) la nueva ruta de ese vehculo es
seleccionada (fase de ruteo)
Dial-A-Ride
solucion
aleatoria
ii ==mejor
solucion
para el cliente (k-1)
Repetir
1 h
f ( j ) = losk ( j )
h k =1
1 h
f (i ) = los k (i )
h k =1
=TRUE ; l=i;
Repetir
For h = 1(para
to 10cierto t)
aleatoriamente
jSelecciona
= Cambio pareja
de nodos deuna
i sol. j en vecindad(i).
Si f(j) < f(l) entonces l=j
Sea = f(j) f(i)
Si<<0 0entonces
entonces
j
Si
i = ij;==FALSE
Sino generar aleatoriamente q U(0,1)
Siqq<<exp(-/t)
exp(/t) entonces
entonces
Si
i =i j=; j=FALSE
Hasta llegar a equilibrio
endfor
tActualizo
= 0.95*t la temperatura (t = g(t)).
Hasta condicin de parada.
Hasta
Simulated Annealing
Fundamento terico.
Aplicacin (Dial-A-Ride)
Variantes de SA.
TA (Threshold accepting)
GDA (Great deluge algorithm)
RRT (Record-to-Record Travel)
Aplicacion. (TSP)
Concluciones.
Variantes de Simulated
Annealing
Variantes de S.A.
TA (Threshold accepting)
Threshold accepting
Threshold accepting
Acepta nuevas soluciones que no son
mucho peores que la vieja solucin.
No se precisa temperatura inicial ni
esquema de enfriamiento.
Solo utiliza un parmetro inicial Threshold.
Threshold accepting
Elijo solucin inicial (i) y threshold inicial (T).
Repetir
Repetir
Seleccionar aleatoriamente una sol. j En vecindad(i).
Sea = f(j) f(i)
Si > -T entonces i = j
Hasta equilibrio
disminuyo T
Hasta condicion de parada.
Variantes de Simulated
Annealing
Variantes de S.A.
TA (Threshold accepting)
GDA (Great deluge algorithm)
RRT (Record-to-Record Travel)
Aplicaciones
Grotschels 442 ciudades (TSP Euclidiano)
Problema: Dada las coordenadas de N
ciudades, busco un recorrido que visite
todas las ciudades minimizando el costo.
Aplicaciones
4
2
1
(1, 5, 4, 3, 2)
Aplicaciones
Corrida: i = 1
j=4
31 (1, 3, 4, 5, 2)
LIN-2-OPT
Elijo i, j C, i < j
T
Enddisminuyo
para cada ciudad
c1
Hasta condicion de parada
End para cada Threshold
100
# recorridos
# recorridos
TA
50
0
4
10
12
14
16
18
20
nb
100
50
0
4
10
12
14
16
nb
# recorridos
RRT
100
El largo de la
solucin optima es: 50.80
50
0
4
10
12
nb
14
16
18
20
18
20
100
# recorridos
# recorrido
GDA
50
0
4
10
12
14
16
18
20
nb
100
50
0
4
10
12
14
16
nb
# rec orridos
RRT
100
El largo de la
solucin optima es: 27.686
50
0
4
10
12
nb
14
16
18
20
18
20
Conclusiones
Heursticas fciles de aplicar e
implementar.
Los resultados obtenidos con estas
heursticas son buenos.
SA es muy sensible a la eleccin del
esquema de enfriamiento.
TA, GDA y RRT son mejores y slo
dependen de un nico parmetro.
Fuentes Consultadas
Lecturas
LIBROS
Rusel, Norvig, Artificial Intelligence: La
Modern Approach, Cap. 4.
Costa,
Simes, Inteligencia Artificial.
Fundamentos y Aplicaes. Cap 3.3. 3.4
FIN