Buscar uma solução em um espaço (geralmente) grande de soluções.
Espaço de busca (de estados)
(x=0, y=0).Norte, Sul, Leste, Oeste (restritas por limites e obstáculos).Result((x,y), Norte) → (x, y+1) se não houver obstáculo.(i,j) tais que 0 ≤ i,j < 4 e sem obstáculos.Um puzzle de empilhamento de blocos.
| Elemento | Descrição |
|---|---|
| Estado inicial |
|
| Conjunto de ações |
Mover o disco superior da torre |
| Função sucessora |
Remove o topo da torre origem e coloca sobre a torre destino, gerando novo estado. |
| Custo da ação |
1 (todos os movimentos têm custo unitário). |
| Condição de meta |
Todos os discos na torre |
O espaço de estados possui
mas apenas 15 são válidas quando se considera a regra de empilhamento.

Fonte da imagem: https://8-puzzle.readthedocs.io/en/latest/

Fonte da imagem: https://8-puzzle.readthedocs.io/en/latest/

Fonte da imagem: https://8-puzzle.readthedocs.io/en/latest/
Iteração Principal – enquanto a fronteira não estiver vazia:
Algoritmos que exploram o espaço de estados sem utilizar nenhuma informação adicional (heurística) sobre a distância até o objetivo que ajude a filtrar ações, sendo necessário buscar exaustivamente pelo espaço de estados.
Busca em Largura (BFS) – Nós são expandidos na ordem que foram criados. Usa fila. Expande níveis sucessivos; garante solução ótima em custo unitário.
Busca em Profundidade (DFS) – O último nó criado é o primeiro a ser expandido. Usa pilha. Não é completa. Não garante otimalidade.
n da fila.n é solução, retornar caminho até n.n, gerando todos os sucessores e inserindo-os na fila (apenas se ainda não foram visitados).
Note que
n.n é objetivo, retornar caminho até n.n, gerando todos os sucessores e inserindo-os na pilha (apenas se ainda não foram visitados).
limite que indica a profundidade máxima permitida.n.n é solução → retornar caminho até n.limite: expandir n, inserir sucessores na pilha com profundidade +1 (apenas se ainda não visitados).l = 0, 1, 2, … executar Busca em Profundidade Limitada (DLS) até a profundidade l.l e repetir.
Atividade recomendada: Leitura do capítulo 3.
- A busca prossegue imediatamente até o nível mais profundo da árvore de busca, onde os nós não têm sucessores (folhas). - À medida que esses nós são expandidos, eles são retirados da borda e, então, a busca "retorna" ao nó seguinte mais profundo que ainda tem sucessores inexplorados.
# Estratégias de Busca Informada **Algoritmos baseados em avaliação**: $f(n) = g(n) + h(n)$. - $g(n)$: custo acumulado até o nó $n$. - $h(n)$: estimativa heurística do restante. *Tipos de heurísticas:* admissíveis, consistentes, e seu impacto na optimalidade. ---
# Algoritmos Populares - **Busca A\*** – Garante solução ótima se $h$ é admissível e consistente; usa prioridade pelo menor $f(n)$. - **Greedy Best‑First Search** – Usa apenas $h(n)$; rápido, mas sem garantias de optimalidade.
# Heurísticas: Exemplos e Construção - **Heurística admissível**: distância Euclidiana no problema do 8‑puzzle. - **Heurística consistente**: soma das distâncias de Manhattan; satisfaz a desigualdade triangular. ---