1 / 16

As Torres de Hanoi

PESC/COPPE-UFRJ Disciplina: Inteligência Artificial Professora Inês Dutra. As Torres de Hanoi. Resolução por algoritmos de Busca. Daniel N. Epitácio Pereira. A Lenda das Torres. A Lenda das Torres. O Quebra-Cabeça. Edouard Lucas , 1883 Forma tradicional: N discos 3 varas

tuesday
Download Presentation

As Torres de Hanoi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PESC/COPPE-UFRJ Disciplina: Inteligência Artificial Professora Inês Dutra As Torres de Hanoi Resolução por algoritmos de Busca Daniel N. Epitácio Pereira

  2. A Lenda das Torres

  3. A Lenda das Torres

  4. O Quebra-Cabeça • Edouard Lucas, 1883 • Forma tradicional: • N discos • 3 varas • Solução ótima: • 2N-1 movimentos • Variações: • K varas • Liberdade de Objetivo

  5. Problema de Busca • Objetivo estabelecido: N = 15 • 32.767 movimentos! • Operadores: • Pilhas de origem e de destino • Podem ser inválidos ou infrutíferos • Estados: • Pilha em que se situa cada peça • Ramificação = 3 (*)

  6. Métodos de Busca • A* • Heurística + Custo • Guloso (Greedy Search) • Heurística • Busca em Largura (ou de Custo Uniforme) • Custo

  7. Operadores • Inválidos: • Se tem como pilha de origem uma pilha vazia • Se levam uma peça para cima de outra menor • Infrutíferos • Movimentos nulos:

  8. Operadores • Infrutíferos • Reversão: • Perda Imediata de Otimalidade: • Ramificação: No máximo 2

  9. Heurística • Deve ser admissível • Deve ser uma estimativa inferior do número de passos até a solução • Caso contrário, a otimalidade não estará garantida • Não deve ser muito subestimada • Ou a performance será prejudicada • Heurísticas que se aproximam da distância real à solução podem garantir complexidade sub-exponencial

  10. Heurística • Baseada no número de peças na posição correta. • Pode ser feita de forma admissível, mas então o segundo critério fica prejudicado • Distâncias “relaxadas” à posição correta • Um pouco mais elaborada. Admissível, mas ainda pouco eficiente

  11. Heurística

  12. Heurística • Por Estágios • Funciona um pouco melhor • Distância do início de cada estágio à solução é conhecido • Estágios Recursivos • Ideal

  13. Implementação • Em C++ (usando MingW32). • Faz uso de uma fila de prioridades (STL) de configurações do jogo, com base na heurística e no custo correspondente. • Cada uma dessas configurações aponta para um nó. Os nós formam uma árvore baseada em encadeamento.

  14. Fila de Estados Árvore de Nós Implementação • A configuração correspondente a cada nó já expandido é removida da memória

  15. Resultados • Busca em Largura • Até 5 peças • Método Guloso • 15 ou mais peças (sub-ótimo) • A* • 15 ou mais peças (ótimo) • 15 peças com pouco mais do que 120.000 nós expandidos.

  16. Amostra e Referências Programa Visualizador [1] Tower of Hanoi: Fascinating Facts (LHS): http://www.lhs.berkeley.edu/Java/Tower/towerhistory.html [2] Russel, S., Norvig, P. – Artificial Intelligence: A Modern Approach [3] Rich, E., Knight, K. – Inteligência Artificial

More Related