Você está na página 1de 34

Algoritmos de busca com

e sem informao
Airton Bordin Junior
[airtonbjunior@gmail.com]

Metaheursticas - Prof. Dr. Celso Gonalves Camilo Junior


Mestrado em Cincia da Computao 2017/2
Universidade Federal de Gois (UFG) - Instituto de Informtica Agosto/2017
Programao

Introduo

Busca informada

Metaheursticas - Airton Bordin Junior


Busca no informada

Busca local e otimizao

Referncias

2
Introduo
Formulaode problemas: processo de decidir
que aes e estados devem ser considerados,
dado um objetivo;

Metaheursticas - Airton Bordin Junior


Objetivo:conjunto de estados do mundo que
deseja alcanar;
Busca: processo
de procurar a sequncia de aes
que alcanam o objetivo.

3
Problema bem definido
Componentes
1. Estado inicial;
2. Aes;
3. Modelo de transio;

Metaheursticas - Airton Bordin Junior


4. Teste de objetivo
5. Custo de caminho.
Ambiente do problema: representado pelo espao de
estados
Soluo: um caminho do estado inicial ao estado objetivo.

4
Problema bem definido
Estado inicial: Qualquer estado;
Quebra-cabea de oito peas Aes: A formulao mais simples define as aes como
movimentos do quadrado vazio Esquerda, Direita, Para Cima
ou Para Baixo. Pode haver subconjuntos diferentes desses,
dependendo de onde estiver o quadrado vazio;

Metaheursticas - Airton Bordin Junior


Modelo de transio: Dado um estado e ao, ele devolve o
estado resultante; por exemplo, se aplicarmos Esquerda para o
estado inicial na figura, o estado resultante ter comutado o 5
e o vazio;
Estado inicial Estado objetivo Teste de objetivo: Verifica se o estado corresponde
configurao de estado objetivo mostrada na Figura (so
possveis outras configuraes de objetivos);
Custo de caminho: Cada passo custa 1 e, assim, o custo do
caminho o nmero de passos do caminho.
5
Algoritmos de busca
Analisados em termos de
Completeza;
Otimizao;
Complexidade de tempo;

Metaheursticas - Airton Bordin Junior


Complexidade de espao.
Complexidade
b: fator de ramificao no espao de estados;
d: profundidade da soluo mais rasa.

6
Algoritmos de busca
Analisados em termos de
Completeza
O algoritmo oferece a garantia de encontrar uma soluo
quando ela existir?
Otimizao

Metaheursticas - Airton Bordin Junior


A estratgia encontra a soluo tima?
Complexidade de tempo
Tempo necessrio para encontrar a soluo.
Complexidade de espao.
Memria necessria para encontrar a soluo.

7
Busca no informada
Possuem acesso apenas definio do problema;

Algoritmos bsicos
Busca em largura;

Metaheursticas - Airton Bordin Junior


Busca de custo uniforme;
Busca em profundidade;
Busca de aprofundamento iterativo;
Busca bidimensional.

8
Busca no informada
Busca em largura
Completeza: Sim (b finito)
Otimizao: Sim (se custo for igual para
todos os passos)

Metaheursticas - Airton Bordin Junior


Complexidade tempo: 1+b+b2+b3+ +bd
= O( )
Complexidade espao: O( ) (mantm
todos os ns na memria)

9
Busca no informada
Busca de custo uniforme
Extenso da Busca em Largura para encontrar a
soluo tima para qualquer valor de passo;
Expande o n n que apresenta o menor custo de

Metaheursticas - Airton Bordin Junior


caminho g(n);
Teste de objetivo realizado quando um n
selecionado para expanso (ao invs de realizar
quando o n gerado).

10
Busca no informada
Busca de custo uniforme

Completeza: garantido caso cada passo tiver um custo maior

Metaheursticas - Airton Bordin Junior


que (com > 0 e pequeno)
Otimizao: garantido caso expandir os ns respeitando g(n)
Complexidade tempo: O( b1+[C/] ) C: custo da
Complexidade espao: O( b1+[C*/] ) soluo tima

11
Busca no informada
Busca em profundidade

Completeza: No
Otimizao: No (para na primeira

Metaheursticas - Airton Bordin Junior


soluo encontrada)
Complexidade tempo: O( )
Complexidade espao: O(b*m)

12
Busca no informada
Busca de aprofundamento iterativo

Metaheursticas - Airton Bordin Junior


Completeza: Sim (b finito)
Otimizao: Sim (se custo for igual
para todos os passos)
Complexidade tempo: O( )
Complexidade espao: O(b*d)

13
Busca no informada
Busca bidimensional

Completeza: Sim (b finito e ambos usam busca


em largura)

Metaheursticas - Airton Bordin Junior


Otimizao: Sim (se custo for igual para todos
os passos e amos usam busca em largura)
Complexidade tempo: O( /2 )
Complexidade espao: O( /2 )

14
Busca informada
Podem ter acesso a uma funo heurstica h(n)
que estima o custo da soluo a partir de n;
Umafuno heurstica h(n) deve ser capaz de
estimar o custo de uma soluo comeando pelo

Metaheursticas - Airton Bordin Junior


estado do n n.
Como construir tal funo?
Conceber problemas relaxados para os quais uma
soluo tima pode ser facilmente encontrada;
Aprender com a experincia.

15
Busca informada
Podem ter acesso a uma funo heurstica h(n)
que estima o custo da soluo a partir de n;
Algoritmos bsicos

Metaheursticas - Airton Bordin Junior


Busca gulosa de melhor escolha;
Busca A*;
Busca recursiva de melhor escolha (RBFS) e
busca A* de memria limitada (SMA*).

16
Busca informada
Busca de melhor escolha
Instncia do algoritmo geral da Busca em rvore;
N selecionado para expanso com base em uma funo de
avaliao f(n);
f(n) analisada como uma estimativa de custo

Metaheursticas - Airton Bordin Junior


N com a menor avaliao ser expandido primeiro.
A maior parte dos algoritmos de melhor escolha inclui como
componente de f uma funo heurstica h(n)
Custo estimado do caminho de menor custo do estado do n n
para um estado objetivo. (n for objetivo, h(n) = 0)

17
Busca informada
Busca gulosa de melhor escolha
Tenta expandir o n que est mais prximo do
objetivo
Isso pode conduzir a uma soluo rapidamente.

Metaheursticas - Airton Bordin Junior


Avalia os ns usando apenas a funo heurstica (f(n)
= h(n));
Desempenho depende da qualidade de h(n);

18
Busca informada
Busca A*
f(n) = g(n) + h(n)
g(n): custo para alcanar o n

Metaheursticas - Airton Bordin Junior


h(n): custo para ir do n at o objetivo
Condies para ser tima: admissibilidade e
consistncia

19
Busca informada
Busca A*
Heurstica admissvel: nunca superestima o custo de atingir
o objetivo;
Heurstica consistente: para cada n n e para todo sucessor

Metaheursticas - Airton Bordin Junior


n de n gerado por uma ao a, o custo estimado de
alcanar o objetivo de n no maior do que o custo do
passo de chegar a n + o custo estimado de alcanar o
objetivo de n.
h(n) c(n, a, n) + h(n)

20
Busca informada
Busca recursiva de melhor escolha
Tenta imitar a operao de busca padro pela melhor escolha
usando apenas um espao linear de memria;
Semelhante a busca em profundidade recursiva

Metaheursticas - Airton Bordin Junior


Em vez de continuar indefinidamente seguindo o caminho atual,
usa a varivel f_limite para acompanhar o f-valor do melhor
caminho alternativo disponvel de qualquer ancestral do n
atual.

21
Busca informada
Busca A* simplificada de memria limitada
Procede exatamente como o A*, expandindo a melhor folha at que a
memria esteja cheia. Nesse ponto, no poder adicionar um novo n
rvore de busca sem suprimir um antigo;
Sempre suprime o pior n folha (maior f_valor).

Metaheursticas - Airton Bordin Junior


Faz o backup do valor do n esquecido em seu pai
Ancestral de uma subrvore esquecida conhece a qualidade do melhor
caminho daquela subrvore.
Se todos os descendentes de um n n forem esquecidos, no
saberemos para onde ir a partir de n, mas ainda teremos uma ideia de
como vale a pena ir a algum lugar de n.

22
Busca informada
Gerao de heursticas admissveis
Problema relaxado: problema com poucas restries
sobre as aes;
Qualquer soluo tima do problema original ser

Metaheursticas - Airton Bordin Junior


uma soluo do problema relaxado;
Problema relaxado pode ter melhores solues
Custo de uma soluo tima para um problema
relaxado uma heurstica admissvel para o problema
original.

23
Busca informada
Bancos de dados de padres
Armazenar os custos exatos de soluo para todas as
instncias possveis do subproblema;
Heurstica admissvel hBD para cada estado completo

Metaheursticas - Airton Bordin Junior


encontrado durante uma busca
Exame da configurao correspondente do subproblema no
banco de dados.
O prprio banco de dados construdo atravs de
busca reversa do objetivo e do registro do custo de cada
novo padro encontrado..

24
Busca local e otimizao
Quandoo caminho at o objetivo no importa,
podemos considerar uma classe diferente de
algoritmos
Algoritmos de busca local operam usando um
nico estado atual e, em geral, se movem

Metaheursticas - Airton Bordin Junior


apenas para os vizinhos desse estado.
teis para problemas de otimizao
Encontrar o melhor estado de acordo com
uma funo objetivo.

25
Busca local e otimizao
Vantagens
Usam pouqussima memria (normalmente
um valor constante);
Frequentemente podem encontrar solues

Metaheursticas - Airton Bordin Junior


razoveis em grandes ou infinitos
(contnuos) espaos de estados para os
quais os algoritmos sistemticos so
inadequados.

26
Busca local e otimizao

Algoritmo completo
sempre encontra um

Metaheursticas - Airton Bordin Junior


objetivo (caso exista)
Algoritmo timo
sempre acha um
mnimo/mximo global

Topologia de espao de estados


27
Busca local e otimizao
Busca de subida de encosta
Se move de forma contnua no sentido do valor
crescente;
Termina quando alcana um pico em que nenhum

Metaheursticas - Airton Bordin Junior


vizinho tem valor mais alto;
Com frequncia fica paralisada
Mximos locais;
Cordilheiras;
Plats.

28
Busca local e otimizao

Sequncia de mximos locais que


torna muito difcil a navegao para
algoritmos gulosos;

Metaheursticas - Airton Bordin Junior


A partir de cada mximo local,
todas as aes disponveis
apontam encosta abaixo

Cordilheiras

29
Busca local e otimizao
Tmpera simulada
Escolhe um movimento aleatrio;
Se o movimento melhorar a situao sempre ser
aceito;

Metaheursticas - Airton Bordin Junior


Caso contrrio, o algoritmo aceitar o movimento com
alguma probabilidade menor que 1;
Probabilidade decresce exponencialmente com a m
qualidade do movimento o valor E segundo o
qual a avaliao piora.

30
Busca local e otimizao
Tmpera simulada
Probabilidade tambm decresce medida que a
temperatura T se reduz;
Movimentos ruins tm maior probabilidade de serem

Metaheursticas - Airton Bordin Junior


permitidos no incio, quando T estiver alto. Tornam-se
mais improvveis conforme T diminui;
Se o escalonamento diminuir T com lentido suficiente,
o algoritmo encontrar um valor timo global com
probabilidade prxima de 1.

31
Busca local e otimizao
Busca em feixe local
Mantm o controle de k estados (em vez de um);
Comea com k estados gerados aleatoriamente;
A cada passo, so gerados todos os sucessores de

Metaheursticas - Airton Bordin Junior


todos os k estados
Se um deles for um objetivo, o algoritmo para.
Se no for, seleciona k melhores sucessores a partir
da lista completa para repetir o procedimento.

32
Busca local e otimizao
Algoritmos genticos
Variante de busca em feixe estocstica na qual os
estados sucessores so gerados pela combinao
de dois estados pais (em vez de nico estado);

Metaheursticas - Airton Bordin Junior


Reproduo sexuada;

33
Referncias
RUSSELL, Stuart; NORVIG, Peter; INTELLIGENCE, Artificial. A modern
approach. Artificial Intelligence. Prentice-Hall, Egnlewood Cliffs, v. 25, p. 27,
1995.

Metaheursticas - Airton Bordin Junior


34

Você também pode gostar