ia05_metbuscainformada
DESCRIPTION
fbvffgTRANSCRIPT
-
1Inteligncia Artificial(IA)
Erivan Alves de Andrade
Mtodos de Busca Informada
-
2ErivanA de Andrade 2011
Mtodos de busca informada
Contedo programticon Busca O Melhor Primeiro
n Funes heursticas
n Busca limitada pela memria
n Algoritmos de melhoramento iterativo
-
3ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Funo de avaliao(FA)
q Retorna um nmero propondo descrever a (desirability) utilidade(ou falta dela) de expandir o prximo n de uma arvore de busca
n Um FA usa conhecimento especfico sobre o probleman Busca o melhor primeiro
q Se os ns so ordenado e os com melhor avaliao so expandidos primeiro
n A estratgia de buscar o melhor primeiro venervel mas imprecisaq Se pudssemos de fato expandir o melhor primeiro iramos
direto soluoq Ele permite apenas escolher o que parece ser melhor,
segundo a FA utilizadaq Uma FA onisciente pode de fato expandir o melhor primeiro
-
4ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Existem vrios algoritmos de busca o melhor
primeiro com diferentes FAq Tipicamente esta FA usam alguma medida do custo da
soluo e tentam minimiz-la
n Para focar a busca a medida deve incorporar alguma estimativa de proximidade de um n em relao ao n meta
n Consideremos duas abordagens bsicasq Primeiro tentar expandir o n mais prximo da
meta(busca gulosa)q Tentar expandir o n no caminho da soluo de custo
mnimo (busca A*)
-
5ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Minimizar o custo estimado para atingir a meta
busca gulosaq O n julgado estar mais prximo da meta e expandido
primeiro
q Para muitos problemas o custo de atingir a meta a partir de um determinado n pode ser estimado, mas no determinado com exatido
q Uma funo que calcula tal custo estimado chamada de funo heurstica
q Funo heurstica n h(n) = custo estimado do caminho mais barato do estado
do n n ao estado meta
-
6ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Minimizar o custo estimado para atingir a meta
busca gulosa (cont...)q Na busca gulosa a h pode ser qualquer funo desde
quen h(n)=0 se n o estado meta
n Uma funo heurstica especfica para cada problemaq Ex: para encontrar uma rota que leve de Arad a
Bucharest pode se utilizar a distncia em linha reta entre as cidade como funo heurstica
-
7ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca gulosa
-
8ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca gulosa
-
9ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca gulosa
q A estratgia se preocupa em abocanhar o mximo possvel do caminho restante para tingir a metan No se preocupa com as conseqncias disto a longo tempo
q Algoritmos gulosos com freqncia produz bons resultados
q Nem sempre encontra a soluo tima
q suscetvel a falsos comeos(false starts)n Ex: ir de Iasi a Fagaras
q Lembra a busca em profundidade primeiron Sofre dos mesmos problemas: no tima nem completa
n Complexidade de tempo no pior caso O(bm) m profundidade mxima
n Complexidade de espao igual a de tempo
q Uma boa heurstica pode reduzir ambas as complexidades
-
10
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Minimizar o custo do caminho total: busca A*
q Busca gulosa minimiza o custo estimado de n at a meta- h(n)n No tima nem completa
q A busca de custo uniforme minimiza o custo do caminho at n g(n)n tima e completan Pode ser muito ineficiente
q Idia bsica: combinar as vantagens de h(n) e g(n)q Essa combinao e representada por f(n)
f(n) = g(n)+h(n)q f(n) d o custo estimado do caminho mais barato da
soluo passando por n
-
11
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca A* (cont...)
q Para encontrar a soluo mais barato razovel expandir primeiro o n com o menor valor de f
q Pode-se provar que esta estratgia tima e completan Se a funo heurstica utilizada for uma heurstica
admissvelq Heurstica admissvel
n Funo heurstica h que nunca superestima o custo para atingir a meta
q Heursticas admissveis so otimistas por naturezaq O otimismo da heurstica h e transferido pra f
n Se h admissvel, f(n) nunca superestima o custo atual da melhor soluo passando por n
q A busca melhor primeiro utilizando f como FA e uma funo h admissvel conhecido como busca A*
-
12
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Comportamento da Busca A*
q Se na rvore de busca ao longo de qualquer caminho, a partir da raiz, o custo de f nunca decresce a heurstica montonan Maioria das heursticas admissveis so montonas
q Pode se fazer uma correo para se restaurar a monotonicidade se ela no ocorren Seja os ns n e n com n sendo o pai de n
n Se f(n) < f(n) ento h no montona
n Usa se uma equao que garante que o custo de f nunca decresce
f(n)= max(f(n), g(n)+h(n)) equao pathmax
-
13
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Comportamento da Busca A*
q Usando a equao pathmax f ser sempre crescente ao longo de qualquer caminho a partir da raizn Pode-se conceitualmente desenhar contornos no espao
de estados
q Seja f* o custo do caminho da soluo timan A* expande todos os ns com f(n)
-
14
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Comportamento da Busca A*q Usando a equao pathmax f ser sempre
crescente ao longo de qualquer caminho a partir da raiz
q A otimalidade e completude de A* j foi provada matematicamente
q Nenhum outro algoritmo timo expande menos ns que A*
q A* possui problemas quanto a sua complexidade de tempo e espao
-
15
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Comportamento da Busca A*
q Nenhum outro algoritmo timo expande menos ns que A*
q A* possui problemas quanto a sua complexidade de tempo e espao
-
16
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca A*: Exemplo
Ver mapa
-
17
ErivanA de Andrade 2011
Mtodos de busca informada
Busca o melhor primeiron Busca A*: Contornos
-
18
ErivanA de Andrade 2011
Mtodos de busca informada
Funes Heursticasn Como escolher uma boa funo heurstica
h?n h depende de cada problema particular.n h deve ser admissvelq no superestimar o custo real da soluo
n Existem estratgias genricas para definir h:
1) Relaxar restries do problema;
2) Usar informao estatstica;
3) Identificar os atributos mais relevantes do problema (exige aprendizagem).
-
19
ErivanA de Andrade 2011
Mtodos de busca informada
Funes Heursticas: relaxando o problema
n Problema Relaxado:q verso simplificada do problema original, onde os
operadores so menos restritivos
n Exemplo: jogo dos 8 nmeros - operador originalq Um nmero pode mover-se de A para B se A
adjacente a B e B est vazioq busca exaustiva 320 estados possveis
n Operadores relaxados:1. um nmero pode mover-se de A para B se A adjacente a B (h2)2. um nmero pode mover-se de A para B se B est vazio3. um nmero pode mover-se de A para B (h1)
4 5 8
1 6
7 32
-
20
ErivanA de Andrade 2011
Mtodos de busca informada
Heursticas para jogo 8 nmeros
Heursticas possveish1 = no. de elementos fora do lugar (h1=7)h2 = soma das distncias de cada nmero posio final (h2=2+3+3+2+4+2+0+2=18)
-
21
ErivanA de Andrade 2011
Mtodos de busca informada
Espao de Estados jogo dos 8-nmeros
1 3
8 42
7 6 5
1 2 3
8 4
7 6 5
1 3
8 42
7 6 5
1 3
8 42
7 6 5
1 2 3
8 4
7 6 5
1 3 4
8 52
7 6
1 3
8 42
7 6 5
1 3 4
8 2
1 3 4
8 2
7 6 5
7 6 5
-
22
ErivanA de Andrade 2011
Mtodos de busca informada
Funes Heursticas: Usando informao estatstican Funes heursticas podem ser melhoradas com
informao estatstica:q executar a busca com um conjunto de treinamento (e.g., 100
configuraes diferentes do jogo), e computar os resultados.
q se, em 90% dos casos, quando h (n) = 14, a distncia real da soluo 18,
q ento, quando o algoritmo encontrar 14 para o resultado da funo, substituir-se esse valor por 18.
n Informao estatstica expande menos ns, porm elimina admissibilidade:
q em 10% dos casos do problema acima, a funo de avaliao poder superestimar o custo da soluo, no sendo de grande auxlio para o algoritmo encontrar a soluo mais barata.
-
23
ErivanA de Andrade 2011
Mtodos de busca informada
Funes Heursticas: Escolhendo Funes Heursticas
n sempre melhor usar uma funo heurstica com valores mais altos, contanto que ela seja admissvel. q ex. h2 melhor que h1
n hi domina hk hi(n) hk(n) "n no espao de estadosq h2 domina h1 no exemplo anterior
n Caso existam muitas funes heursticas para o mesmo problema, e nenhuma delas domine as outras, usa-se uma heurstica composta:q h (n) = max (h1 (n), h2 (n),,hm(n))
n Assim definida, h admissvel e domina cada funo hi individualmente
-
24
ErivanA de Andrade 2011
Mtodos de busca informada
Funes Heursticas: Escolhendo Funes Heursticas
n A qualidade da funo heurstica: medida atravs do fator de expanso efetivo (b*).
q b* o fator de expanso de uma rvore uniforme com N ns e nvel de profundidade d
q N = 1 + b* + (b*)2 + ... + (b*)d , onde N = total de ns expandidos para uma instncia de problema
d = profundidade da soluo;
n Mede-se empiricamente a qualidade de h a partir do conjunto de valores experimentais de N e d. q uma boa funo heurstica ter o b* muito prximo de 1.
n Se o custo de execuo da funo heurstica for maior do que expandir ns, ento ela no deve ser usada. q uma boa funo heurstica deve ser eficiente e econmica.
-
Funes Heursticas: Experimento com 100 problemas
Uma boa funo heurstica ter o b* muito prximo de 1.
-
26
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo(AMI)
n A idia comear com o estado inicial (configurao completa, soluo aceitvel), e melhor-lo iterativamente. q Imagem da TV
n Os estados esto representados sobre uma superfcie (grfico)q a altura de qualquer ponto na superfcie corresponde
funo de avaliao do estado naquele ponto
n O algoritmo se move pela superfcie em busca de pontos mais altos (objetivos)
q o ponto mais alto (mximo global) corresponde soluo timan n onde a funo de avaliao atinge seu valor mximo
n Aplicaes: problemas de otimizao q por exemplo, linha de montagem
-
27
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
Exemplo de Espao de Estados
-
28
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Esses algoritmos guardam apenas o estado atual, e no vem alm dos vizinhos imediatos do estado.
n Contudo, muitas vezes so os melhores mtodos para tratar problemas reais muito complexos.
n Duas classes de algoritmos:
q Subida de Encosta(Hill-Climbing ou Gradiente Ascendente ou busca gulosa local)
n s faz modificaes que melhoram o estado atual.
q Anelamento Simulado(Simulated Annealing ou tmpera simulada)n pode fazer modificaes que pioram o estado atual
temporariamente, para possivelmente melhor-lo no futuro.
-
29
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encosta: algoritmoq O algoritmo no mantm uma rvore de
busca:n guarda apenas o estado atual e sua avaliaon simplesmente um loop que se move na direo
crescente (para maximizar) ou decrescente (para minimizar) da funo de avaliao.
-
30
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encosta: Exemploq Clculo da menor rotas com 5 ns:
n estado inicial = (N1, N2, N3, N4, N5)
n f = soma das distncias diretas entre cada n, na ordem escolhida (admissvel!)
n operadores = permutar dois ns quaisquer do caminho
n restrio = somente caminhos conectados so estados vlidos
n estado final = n onde valor de f mnimo
n e1 = {N1, N2, N3, N4, N5}f(N1, N2, N3, N4, N5) = 10
n e2 = {N2, N1, N3, N4, N5}f(N2, N1, N3, N4, N5) = 14
n e3 = {N2, N1, N4, N3, N5}f(N2, N1, N3, N4, N5) = 9!!!
-
31
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encosta
q O algoritmo move-se sempre na direo que apresenta maior taxa de variao para f
q Isso pode acarretar em 3 problemas:
1. Mximos locais
2. Plancies (plats)
3. Encostas e picos
-
32
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Mximos locaisq Definio
n Em contraste com mximos globais, so picos mais baixos do que o pico mais alto no espao de estados (soluo tima)
q A funo de avaliao leva a um valor mximo para o caminho sendo percorridon a funo de avaliao menor para todos os estados
filhos do estado atual, apesar de o objetivo estar em um ponto mais altoq essa funo utiliza informao local
n e.g., xadrez: eliminar a Rainha do adversrio pode levar o jogador a perder o jogo.
-
33
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Mximos locais
q O algoritmo pra no mximo localn pois s pode mover-se com taxa crescente de
variaoq restrio do algoritmo
n e.g., 8-nmeros: mover uma pea para fora da sua posio correta para dar passagem a outra pea que est fora do lugar tem taxa de variao negativa!!!
-
34
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Plats (Plancies)
q Uma regio do espao de estados onde a funo de
avaliao d o mesmo resultado
n todos os movimentos locais so iguais (taxa de variao zero)
q f(n) = f(filhos(n))
n o algoritmo pra depois de algumas tentativas
q restrio do algoritmo
n ex. jogo 8-nmeros: nenhum movimento possvel vai influenciar no valor de f, pois nenhum nmero vai chegar ao seu local objetivo.
-
35
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Encostas e Picos
q Apesar de estar em uma direo que leva ao
pico, nenhum dos operadores vlidos conduz o
algoritmo nessa direo
n os movimentos possveis tm taxa de variao zero
ou negativa
q restrio do problema e do algoritmo
n ex. rotas: quando permutar dois pontos e o caminho resultante no est conectado.
-
36
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encostaq Nos casos acima, o algoritmo chega a um ponto de onde
no faz mais progresso.q Soluo: reincio aleatrio (random restart)
n O algoritmo realiza uma srie de buscas a partir de estados iniciais gerados aleatoriamente.
q Cada busca executadan at que um nmero mximo estipulado de iteraes seja
atingido, ou n at que os resultados encontrados no apresentem melhora
significativa.q O algoritmo escolhe o melhor resultado obtido com as
diferentes buscas.n Objetivo!!!
-
37
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encosta: anliseq O algoritmo completo?
n SIM, para problemas de otimizao
q uma vez que cada n tratado pelo algoritmo sempre um estado completo (uma soluo)
n NO, para problemas onde os ns no so estados completosq e.g., jogo dos 8-nmerosq semelhante busca em profundidade
q O algoritmo timo?
n TALVEZ, para problemas de otimizao
q quando iteraes suficientes forem permitidas...
n NO, para problemas onde os ns no so estados completos
-
38
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Subida da Encosta: anlise
q O sucesso deste mtodo depende muito do formato da superfcie do espao de estados:n se h poucos mximos locais, o reincio aleatrio
encontra uma boa soluo rapidamente
n caso contrrio, o custo de tempo exponencial.
-
39
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Tmpera Simulado
q Este algoritmo semelhante Subida da Encosta, porm oferece meios para se escapar de mximos locais.n quando a busca fica presa em um mximo local, o algoritmo no
reinicia a busca aleatoriamente
n ele retrocede para escapar desse mximo local
n esses retrocessos so chamados de passos indiretos
q Apesar de aumentar o tempo de busca, essa estratgia consegue escapar dos mximos locais
q Analogia com cozimento de vidros ou metais: n processo de resfriar um lquido gradualmente at ele se solidificar
-
40
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Tmpera Simulado
q O algoritmo utiliza um mapeamento de resfriamento de instantes de tempo (t) em temperaturas (T).
q Nas iteraes iniciais, no escolhe necessariamente o melhor passo, e sim um movimento aleatrio:n se a situao melhorar, esse movimento ser sempre
escolhido posteriormente;n caso contrrio, associa a esse movimento uma
probabilidade de escolha menor do que 1. q Essa probabilidade depende de dois parmetros, e
decresce exponencialmente com a piora causada pelo movimento, e-DE/T, onde:
DE = Valor[prximo-n] - Valor[n-atual]
T = Temperatura
-
41
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
n Tmpera Simulado:Algoritmo
q funo AnelamentoAnelamento--SimuladoSimulado (problema,mapeamento) retorna uma soluo
variveis locais: corrente, prximo, T (temperatura que controla a probabilidade de passos para trs)
corrente FazFaz--NN(EstadoEstado--InicialInicial[problema])for t 1 to do
T mapeamento[t]Se T = 0
ento retorna correnteprximo um sucessor de corrente escolhido aleatoriamenteDE ValorValor[prximo] - ValorValor[corrente]Se DE > 0
ento corrente prximoseno corrente prximo com probabilidade = e-DE/T
-
42
ErivanA de Andrade 2011
Mtodos de busca informada
Algoritmos de Melhoramento Iterativo
Tmpera Simulado
q Com o tempo (diminuio da temperatura), este algoritmo passa a funcionar como Subida da Encosta.
q O algoritmo timo e completo se o mapeamento de resfriamento tiver muitas entradas com variaes suaves
n isto , se o mapeamento diminui T suficientemente devagar no tempo, o algoritmo vai encontrar um mximo global timo.
-
43
ErivanA de Andrade 2011
Mtodos de busca informada
Crticas Busca Heurstican Soluo de problemas usando tcnicas de busca
heurstica:q dificuldades em definir e usar a funo de avaliao
q no consideram conhecimento genrico do mundo (ousenso comum)
n Funo de avaliao: compromisso (conflito) entreq tempo gasto na seleo de um n e
q reduo do espao de busca
n Achar o melhor n a ser expandido a cada passo pode ser to difcil quanto o problema da busca em geral.
-
44
ErivanA de Andrade 2011
Mtodos de busca informada
n www.di.ufpe.br/~compint/aulas-IAS
n Stuart Russel e Peter Norvig. Artificial Intelligence: A modern approach
Fontes de consulta