Aula 04 / LAB 01 Resolução de problemas por meio de busca Prof. Dr. Alexandre da Silva Simões. Exercício 1. Problema dos jarros de água

Documentos relacionados
Aula 03 Métodos de busca sem informação

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula II Algoritmos básicos de busca cega

Resolução de Problemas. Universidade Católica de Pelotas Engenharia da Computação Disciplina: Inteligência Artificial

Resolução de problemas por meio de busca. Inteligência Artificial. Formulação de problemas. Estratégias de busca

Resolução de problemas por meio de busca. Capítulo 3 Inteligência Artificial Sistemas de Informação

*Capítulo 3 (Russel & Norvig)

Redes Neurais (Inteligência Artificial)

Inteligência Artificial 04. Busca Sem Informação (Cega) Capítulo 3 Russell & Norvig; Seções 3.4 e 3.5

Busca no espaço de estados (parte I)

INTELIGÊNCIA ARTIFICIAL 2008/09

Sistemas de Produção, Espaços de estados e buscas

Teoria dos Grafos Aula 6

Inteligência Artificial - IA

lnteligência Artificial

Busca em Espaço de Estados a

Resolução de problemas por meio de busca. Capítulo 3 Russell & Norvig Seções 3.4 e 3.5

Resolução de problemas por meio de busca. Inteligência Artificial. Busca. Exemplo: Romênia. Exemplo: Romênia 8/23/2010

Tópicos Especiais: Inteligência Artificial BUSCA COM INFORMAÇÃO E EXPLORAÇÃO

Inteligência Artificial

3. Resolução de problemas por meio de busca

Busca com informação e exploração. Inteligência Artificial. Busca pela melhor escolha. Romênia com custos em km. Busca com informação (ou heurística)

Inteligência Artificial

Inteligência Artificial

Inteligência Artificial

Resolução de problemas por meio de busca. Inteligência Artificial

Fundamentos de Inteligência Artificial [5COP099]

Inteligência Computacional

INF 1771 Inteligência Artificial

Relatório de Inteligência Artificial

Tópicos Especiais: Inteligência Artificial

Buscas Não Informadas (Cegas) - Parte I

Resolução de Problemas. Hugo Barros

Introdução à Inteligência Artificial MAC MAC 415. Exercício Programa 1 Busca

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva

BUSCA CEGA OU SEM INFORMAÇÃO (parte 2 Resolução de problemas por busca) *Capítulo 3 (Russel & Norvig)

Inteligência Artificial - IA. Resolução de problemas por meio de busca

Inteligência Artificial

CCO 016 / COM 110 Fundamentos de Programação

Fundamentos de Inteligência Artificial [5COP099]

Estruturas de Dados Aula 14: Recursão

Técnicas Inteligência Artificial

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula I - Introdução

Estruturas de Dados Aula 14: Recursão 19/05/2011

Técnicas Inteligência Artificial

INTELIGÊNCIA ARTIFICIAL. Prof. Cedric Luiz de Carvalho

3. Resolução de problemas por meio de busca

Inteligência Artificial

Busca com informação e exploração. Inteligência Artificial. Revisão da aula passada: Heurística Admissível. Revisão da aula passada: Busca A *

meio de busca Seções 3.1, 3.2 e 3.3

Resolução de Problemas

Estatística e Modelos Probabilísticos - COE241

Estatística e Modelos Probabilísticos - COE241

INTRODUÇÃO A PROGRAMAÇÃO

Resolução de problemas por meio de busca. CAPÍTULO 3 - Russell

LERCI/LEIC TAGUSPARK INTELIGÊNCIA ARTIFICIAL 2005/06 PROCURA

Técnicas de Inteligência Artificial

Grafos COM11087-Tópicos Especiais em Programação II

3. Resolução de problemas por meio de busca

Inteligência Artificial

Notas sobre Definições Recursivas

Introdução à Computação II Unesp Rio Claro 2012Prof. Rafael Oliveira

INF 1771 Inteligência Artificial

CEFET/RJ Inteligência Artificial (2017.2) Professor: Eduardo Bezerra Lista de exercícios 03

Estatística e Modelos Probabilísticos - COE241

Resolução de Problemas de Busca

Departamento de Ciência de Computadores - FCUP Primeiro Teste de Inteligência Artificial / Sistemas Inteligentes (Duração: 2 horas)

Teoria dos Grafos Aula 8

Classificação Externa: Intercalação de Partições Classificadas

Estrutura de Dados: Aula 3 - Linguagem C

Classificação Externa: Geração de Partições Classificadas

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 5 Resolvendo Problemas

Recursividade. Objetivos do módulo. O que é recursividade

Análise de Complexidade para algoritmos iterativos e recursivos

Introdução à Resolução de Problemas por meio de Busca

Arquivos Seqüenciais: Intercalação

Teoria dos Grafos Aula 8

Buscas Informadas ou Heurísticas - Parte III

Busca com informação e exploração. Inteligência Artificial. Busca pela melhor escolha. Romênia com custos em km 9/13/2010

Inteligência Artificial

CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 02

Busca Competitiva. Inteligência Artificial. Até aqui... Jogos vs. busca. Decisões ótimas em jogos 9/22/2010

Representação do Conhecimento

Prof. Paulo Villa Aula 1

Inteligência Computacional

Inteligência Computacional

Erros META OBJETIVOS. 2.1 Erros

Sistemas Inteligentes / Inteligência Artificial, Outros Métodos de Procura

Inteligência Artificial (SI 214) Aula 4 Resolução de Problemas por meio de Busca Heurística

Busca Cega (Exaustiva) e Heurística. Busca Aula 2

ÁRVORES E ÁRVORE BINÁRIA DE BUSCA

Jogos. Geralmente o oponente tentará, na medida do possível, fazer o movimento menos benéfico para o adversário.

Introdução 1. Um espaço de estados possíveis, incluindo um estado inicial e um estado final(objetivo): Introdução

Estes são alguns dos programa utilizados para realizar a compactação de arquivos:

Utilização do Conjunto de Cantor para a resolução da Torre de Hanoi

ORDENAÇÃO EXTERNA DE ARQUIVOS: GERAÇÃO DE PARTIÇÕES CLASSIFICADAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

Métodos de Pesquisa Operacional

Buscas Informadas ou Heurísticas - Parte II

Jogo de Damas. Alunos: Sávio Mendes de Figueiredo Sômulo Nogueira Mafra

INTRODUÇÃO À COMPUTAÇÃO - EPET006 Aula 3

Transcrição:

Aula 04 / LAB 01 Resolução de problemas por meio de busca Prof. Dr. Alexandre da Silva Simões Exercício 1 Prof. Dr. Alexandre da Silva Simões Problema dos jarros de água Problema dos jarros de água: modelagem Estado: (x,y), onde: x é a quantidade de água no vaso de 4 Litros; y é a quantidade de água no vaso de 3 Litros; Dados sobre o problema Existem dois vasos: um de 4 litros e um de 3 litros, inicialmente vazios, e uma fonte que jorra água em abundância. Objetivo: Conseguir 2 litros em qualquer um dos vasos. Ações possíveis: Encher os vasos Esvaziar os vasos Completar um vaso com outro Jogar um vaso em outro Alexandre da Silva Simões 3 Estado inicial: (0,0) Estados-meta: (X,2) ou (2,X) Regras: R0: Encher_vaso_4 R1: Encher_vaso_3 R2: Esvaziar_vaso_4 R3: Esvaziar_vaso_3 R4: Completar_3_com_4 R5: Completar_4_com_3 R6: Esvaziar_4_em_3 R7: Esvaziar_3_em_4 Regras sobre o problema Condições inicial e final do problema Alexandre da Silva Simões 4 1

ProSE - Diagrama de classes Definição do problema Alexandre da Silva Simões 5 Alexandre da Silva Simões 6 Gerenciamento de listas Máquina de busca Alexandre da Silva Simões 7 Alexandre da Silva Simões 8 2

Interface com usuário Interface com usuário Dados sobre a busca Dados sobre o nó corrente Alexandre da Silva Simões 9 Alexandre da Silva Simões 10 Interface com usuário Interface com usuário Dados sobre a lista de nós (pilha ou fila) Dados sobre o nó meta (quando encontrado) Alexandre da Silva Simões 11 Alexandre da Silva Simões 12 3

Exercício 1 Exercício 2 Busca em profundidade sem armazenamento de nós visitados 1. Arquivo jarros.exe 2. Selecionar o algoritmo Busca em profundidade 3. Certificar-se de que visited nodes está desabilitado 4. Pressionar o botão step até encontrar solução 5. Observar a dinâmica da busca: gera sucessores, transfere todos para pilha, retira primeiro da pilha, gera sucessores... Não converge (inserção cíclica de um mesmo nó) Busca em amplitude sem armazenamento de nós visitados 1. Arquivo jarros.exe 2. Selecionar o algoritmo Busca em amplitude 3. Certificar-se de que visited nodes está desabilitado 4. Utilizar step até encontrar a solução, observando a dinâmica da inserção de nós (solução após a análise de 26 nós. Um mesmo nó é avaliado muitas vezes) 5. Reiniciar o algoritmo e refazer a busca utilizando o botão Run (infinitas soluções de profundidade crescente serão encontradas) Alexandre da Silva Simões 13 Alexandre da Silva Simões 14 Busca sem armazenamento de nós Como evitar estados repetidos? Insere semente na lista Repetir: Retirar nó da lista Verificar se é solução Gerar sucessores Se sucessor não está na lista, então adicionar Algoritmos que esquecem sua história estão fadados a repetí-la!! Solução: armazenar cada nó expandido em uma lista Alexandre da Silva Simões 15 Alexandre da Silva Simões 16 4

Exercício 3 Exercício 4 Busca em profundidade com armazenamento de nós visitados 1. Arquivo jarros.exe 2. Selecionar como algoritmo Busca em profundidade 3. Habilitar a opção visited nodes 4. Pressionar o botão step até encontrar solução 5. Observar a nova dinâmica da busca Busca em amplitude com armazenamento de nós visitados 1. Arquivo jarros.exe 2. Selecionar o algoritmo Busca em amplitude 3. Habilitar a opção visited nodes 4. Utilizar step até encontrar a solução, observando a dinâmica da inserção de nós 9. Reiniciar o algoritmo e refazer a busca utilizando o botão Run Alexandre da Silva Simões 17 Alexandre da Silva Simões 18 Busca com armazenamento de nós Busca com nós visitados Insere semente na lista Repetir: Retirar nó da lista Adicionar nó em visitados Verificar se é solução Gerar sucessores Se sucessor não está em visitados e nem na lista, então adicionar na lista Busca em amplitude com nós visitados R1 R5 R1 R5 4 10 11 R0 R4 R3 R4 R0 R4 6 12 12 Busca em profundidade com nós visitados R1 R5 R1 R5 4 5 7 R0 R4 R3 R4 R0 R4 6 12 12 Alexandre da Silva Simões 19 Alexandre da Silva Simões 20 5

Exercício: Torre de Hanoi Exercício 2 Prof. Dr. Alexandre da Silva Simões A B C Criado pelo matemático francês Edouard Lucas em 1883 Existe uma base com três pinos. Em um dos pinos existe uma torre feita com discos de diâmetros diferentes. O objetivo é mover esta torre para outro pino, utilizando as seguintes restrições: 1. Apenas um disco pode ser movimentado de cada vez; 2. Todos os discos precisam sempre estar em alguma torre; 3. Em nenhum momento um disco pode ser colocado sobre um disco com um raio menor que o seu. Alexandre da Silva Simões 22 Exercício 5 Torre de Hanoi com 3 discos 1. Arquivo hanoi3.exe 2. Estimar o número de nós da árvore e sua profundidade 3. Utilizando busca em amplitude e depois busca em profundidade, determinar: 1. As regras que devem ser aplicadas para resolver o problema 2. Profundidade da solução na árvore de busca 3. Número de nós visitados antes de achar a solução 4. Posições de memória utilizadas Repetir para a Torre de Hanói com 4 e 5 discos. Alexandre da Silva Simões 23 Torre de Hanói com 3 discos Árvore: Busca em amplitude Busca em profundidade número de nós prof. máx. conh. (DFS) 27 11 R0, R1, R3, R0, R4, R5, R0 7 20 27 R1, R0, R5, R1, R2, R3, R1 7 25 27 R1, R0, R5, R1, R3, R2, R5, R1, R3 9 10 15 R1, R0, R5, R1, R3, R2, R4, R5, R1, R0, R5 11 16 21 Alexandre da Silva Simões 24 6

Torre de Hanói com 4 discos Árvore: Busca em amplitude Busca em profundidade número de nós prof. máx. conh. (DFS) 81 29... 15 71 81... 15 81 81... 27 28 42... 29 43 57 Alexandre da Silva Simões 25 Torre de Hanói com 5 discos Árvore: Busca em amplitude Busca em profundidade número de nós prof. máx. conh. (DFS) 243 83... 31 212 242... 31 233 243... 81 82 123... 83 124 165 Alexandre da Silva Simões 26 Desempenho dos algoritmos Solução é ótima? Busca em amplitude Solução profund. passos memória Hanói 3 R0, R1, R3, R0, R4, R5, R0 7 20 27 Hanói 4... 15 71 81 Hanói 5... 31 212 242 Busca em profundidade Hanói 3 R1, R0, R5, R1, R3, R2, R5, R1, R3 9 10 15 Hanói 4... 27 28 42 Hanói 5... 81 82 123 Alexandre da Silva Simões 27 Alexandre da Silva Simões 28 7

Quanto de memória foi usado? Quadro resumo b d m Busca em amplitude Busca em profundidade Completa? Sim Sim* (ignorando estados já visitados) Ótima? Sim Não (nós tendem a ser mais profundos) Complexidade de memória O(b d+1 ) O(bm) Complexidade de tempo O(b d+1 ) O(b m ) (não pode ser medido nos experimentos anteriores. Tempo para atualização das janelas é significativo) Alexandre da Silva Simões 29 Alexandre da Silva Simões 30 Tempo de busca na árvore Atividades extra-classe Num. de nós prof. máx. Tempo busca amplitude Tempo busca profundidade Hanoi 3 27 11 < 1 seg. < 1 seg. Hanoi 4 81 29 < 1 seg. < 1 seg. Hanoi 5 243 83 < 1 seg. < 1 seg. Hanoi 6 729 245 < 1 seg. < 1 seg. Hanoi 7 2187 731 < 2 seg. < 2 seg. Hanoi 8 6561 2187 ~17 seg. > 20 seg. Leitura e exercícios: RUSSELL, S. NORVIG, P. Inteligência Artificial. 2ª edição. Capítulo 3. OBS: Certifique-se de que disable lists visualization encontra-se habilitado. Alexandre da Silva Simões 31 Alexandre da Silva Simões 32 8