Visualizações
As visualizações foram preparadas para ajudar na compreensão do comportamento dos algoritmos, e não apenas do resultado final.
Use os botões de avanço e retorno para observar cada passo com calma e tente explicar por que o próximo estado foi escolhido antes de avançar.
Aula 04 - Estratégias de Busca
Busca não informada
- Busca em Largura - BFS - observe a exploração por níveis e a organização da fronteira;
- Busca em Profundidade - DFS - observe o aprofundamento por um ramo antes do retorno;
- Busca de Custo Uniforme - UCS - acompanhe o custo acumulado
g(n).
Busca informada
- Busca Gulosa - Greedy Search - acompanhe a heurística
h(n); - A* - compare
g(n),h(n)ef(n) = g(n) + h(n); - Beam Search - observe como somente os
kcandidatos mais promissores permanecem no feixe.
Busca local e evolucionária
- Hill Climbing - observe a melhora local e o ponto em que o algoritmo pode ficar preso;
- Simulated Annealing - observe quando uma piora pode ser aceita para escapar de regiões locais;
- Algoritmo Genético - AG - acompanhe snapshots da evolução da população ao longo das gerações.
Abrir visualização interativa da Aula 04
Como estudar com o visualizador
Uma sequência útil é:
- selecione um algoritmo;
- observe o estado inicial;
- tente prever o próximo passo;
- avance uma etapa;
- confira fronteira, explorados, custos, heurísticas ou configuração atual;
- compare o comportamento com outro algoritmo sobre o mesmo problema.
Para as buscas em grafo, procure principalmente comparar ordem de expansão, informação utilizada para decisão, custo do caminho e quantidade de estados considerados.
Para as buscas locais, observe que o foco deixa de ser a construção de um caminho completo em um grafo e passa a ser a melhoria de um estado candidato.
Integridade acadêmica
A visualização pública é baseada em traces pré-calculados. O navegador apenas representa estados previamente produzidos.
O código público não executa BFS, DFS, UCS, Busca Gulosa, A*, Beam Search, Hill Climbing, Simulated Annealing ou Algoritmo Genético. Também não contém os mecanismos privados utilizados para gerar os traces.
Assim, o recurso pode ser utilizado para compreender e comparar os algoritmos sem disponibilizar uma implementação diretamente reutilizável nas atividades da disciplina.