Buscas Informadas ou Heurísticas - Parte II

Documentos relacionados
lnteligência Artificial

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

Inteligência Artificial

Estratégias informadas de Busca. February 19, 2018

Métodos de Busca. Estratégias de Busca Cega

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 *

Buscas Não Informadas (Cegas) - Parte I

Prof. Dr. Jaime Simão Sichman Prof. Dra. Anna Helena Reali Costa

Busca com informação e exploração. Capítulo 4 Russell & Norvig Seção 4.2 e 4.3

Estratégias de Busca: Métodos Informados. March 9, 2015

Técnicas Inteligência Artificial

Buscas Informadas ou Heurísticas - Parte I

Estratégias informadas de Busca. March 3, 2016

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

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

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

Agentes de Procura Procura Estocástica. Capítulo 3: Costa, E. e Simões, A. (2008). Inteligência Artificial Fundamentos e Aplicações, 2.ª edição, FCA.

Técnicas Inteligência Artificial

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

BCC204 - Teoria dos Grafos

Cap. 4 Busca com Informações e Exploração. do livro de Russel e Norvig

Resolução de Problemas

Métodos de Busca. Inteligência Artificial. Busca Heurística. Busca Heurística. Prof. Ms. Luiz Alberto Contato:

Procura Informada. Capítulo 4

Inteligência Artificial

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro

Buscas Informadas ou Heurísticas - Parte III

Os problemas de IA empregam heurísticas, basicamente, em duas situações:

Busca com informação e exploração. Inteligência Artificial

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

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

Estratégias de Busca Cega

Métodos de Busca Informada (best first search) Capítulo 4 Parte I

Busca com informação e exploração. Capítulo 4 Russell & Norvig Seção 4.1

Estratégias de Busca Cega

Inteligência Artificial

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

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

Inteligência Artificial

Busca Heurística - Informada

Resumo. Como um agente busca de seqüência de ações para alcançar seus objetivos.

Busca em Espaço de Estados a

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

Revisão sobre Busca 1

Busca Heurística. Profa. Josiane M. P. Ferreira

Lista de exercícios 1

MAC425/5739 Inteligência Artificial 3. Busca informada

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

Jogos com Oponentes. March 7, 2018

Algoritmos Tentativa e Erro (Backtracking) Prof.: Jonas Potros

Resolução de Problemas através de Busca. Prof. Júlio Cesar Nievola PPGIA - PUC-PR

Teoria da Computação. Complexidade computacional classes de problemas

Estudo e implementação de heurísticas para determinação do caminho de menor custo para atender a rotas pré estabelecidas. Por: Charles Pereira

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

Resolução de Problemas de Busca

Lista 1 Sistemas Inteligentes (INE5633) 2014s2. Cap. 2 - Russel & Norvig - Exercícios selecionados (respostas em azul)

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

PCS Gabarito da 1a. lista

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

Inteligência Artificial

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

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

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

Inteligência Artificial

Enunciados dos Exercícios Cap. 2 Russell & Norvig

PROCURA E PLANEAMENTO

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

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

Busca no espaço de estados

Inteligência Artificial

Problemas e Estratégias. March 31, 2016

Procura Informada. Capítulo 4

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

Aula 05 Busca com informação

Inteligência Artificial

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)

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Procura Informada. Capítulo 4

Sistemas Inteligentes Lista de Exercícios sobre Busca e Agentes Inteligentes

Inteligência Artificial

Inteligência Artificial

Inteligência Artificial - IA

CTC-17 Inteligência Artificial Problema de Satisfação de Restrições. Prof. Paulo André Castro

Redes Neurais (Inteligência Artificial)

Trabalho 1: Busca no Pacman

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

Sistemas Baseados em Conhecimento

Teoria dos Grafos Aula 14

*Capítulo 3 (Russel & Norvig)

ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO GABARITO

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

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

RESOLUÇÃO DE PROBLEMAS POR MEIO DE BUSCA (PARTE 1) *Capítulo 3 (Russel & Norvig)

Inteligência Artificial

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 02 Prof. Vitor Hugo Ferreira

Transcrição:

Buscas Informadas ou Heurísticas - Parte II Prof. Cedric Luiz de Carvalho Instituto de Informática - UFG Graduação em Ciência da Computação / 2006

FUNÇÕES HEURÍSTICAS - 1/7

FUNÇÕES HEURÍSTICAS - 2/7 Solução típica: 20 passos (dependendo do estado inicial) Fator de ramificação: 3 Espaço no centro: 4 Espaço nos cantos: 2 Espaços em outras posições: 3 Busca exaustiva até a profundidade 20: Examina 3 20 = 3.5x10 9.

FUNÇÕES HEURÍSTICAS - 3/7 Verificação de estados repetidos: São 9! = 362.880 arranjos de 9 ladrilhos. Solução melhor: heurística. h 1 = número de ladrilhos em posições erradas. Na figura anterior: 7 dos 8 estão em posições erradas h1 = 7. h 2 = soma das distâncias do ladrilhos até a meta (distâncias verticais + horizontais).

FUNÇÕES HEURÍSTICAS - 3/7 Distância Manhattan - para os ladrilhos de 1 a 8: h 2 = 2 + 3+ 3 + 2 + 4 + 2 + 0 + 2 = 18

FUNÇÕES HEURÍSTICAS - 4/7 b*: Efeito da precisão da heurística na performance. Para uma árvore uniforme, se o número total de nós expandidos por A*, para um problema particular é N e profundidade da solução é d, então: N = 1 + b +(b ) 2 +... + (b ) d. Fator de ramificação efetivo

FUNÇÕES HEURÍSTICAS - 5/7 Normalmente, o fator de ramificação efetivo de uma dada heurística é constante. Valores experimentais medidos de b*, para pequenos conjuntos de problemas, podem representar boas dicas para heurísticas de uso mais amplo.

FUNÇÕES HEURÍSTICAS - 6/7 Uma boa heurística: Deve ter um b* próximo de 1. Para testar heurísticas (h 1, h 2 ): Gera-se, aleatoriamente, 100 problemas com soluções de comprimento 2, 4,..., 20. Resolve-se os problemas usando-se Busca A* (com h 1 e h 2 ) e também Busca com Aprofundamento Iterativo (IDS).

FUNÇÕES HEURÍSTICAS - 7/7 Custo da Busca b* D IDS A*(h 1 ) A*(h 2 ) IDS A*(h 1 ) A*(h 2 ) 2 10 6 6 2.45 1.79 1.79 4 112 13 12 2.87 1.48 1.45 6 680 20 18 2.73 1.34 1.3 8 6384 39 25 2.80 1.33 1.24 10 47127 93 39 2.79 1.38 1.22 12 364404 227 73 2.78 1.42 1.24 14 3473941 539 113 2.83 1.44 1.23 16 1301 211 1.45 1.25 18 3056 363 1.46 1.26 20 7276 676 1.47 1.27 22 18094 1219 1.48 1.28 24 39135 1641 1.48 1.26

CRIANDO HEURÍSTICAS 1/9 As restrições sobre os operadores podem ser aliviadas: o problema pode ser relaxado. O custo de uma solução exata para um problema relaxado pode ser uma boa heurística para o problema original.

CRIANDO HEURÍSTICAS 2/9 Se a definição do problema está escrita em uma linguagem formal é possível construir problemas relaxados automaticamente. Exemplo Quebra-cabeças de 8 Um ladrilho pode ser mover de A para B se A e B são adjacentes e B é vazio.

CRIANDO HEURÍSTICAS 3/9 Uma (ou mais) das condições a seguir podem ser removidas: gera-se novos problemas. 1. O movimento pode acontecer se A é adjacente a B. 2. O movimento pode acontecer se B está vazio. 3. O movimento pode acontecer de A para B.

CRIANDO HEURÍSTICAS 4/9 Pode-se ter várias heurísticas admissíveis. Deve-se escolher uma. Pode-se obter a melhor solução definindo-se a função: h(n) = max(h 1 (n),..., h m (n)) - n: nó sendo considerado.

CRIANDO HEURÍSTICAS 5/9 Pode-se usar informações estatísticas: Executa-se a busca sobre alguns problemas de treinamento. Exemplo Pode-se tomar 100 instâncias do quebra-cabeças escolhidas aleatoriamente. Pode-se identificar que se h 2 (n) = 14, 90% das vezes a distância real até meta é 18. Ao tratar problemas reais: se h 2 (n) indicar 14, usa-se 18.

CRIANDO HEURÍSTICAS 6/9 Uso de probabilidades: Pode-se estar abrindo mão da garantia de admissibilidade. É provável que se expanda menos nós, na média.

CRIANDO HEURÍSTICAS 7/9 Características dos estados podem contribuir na definição da heurística, mesmo quando é difícil estabelecer qual contribuição seria. Exemplo No xadrez: Número de peças de cada tipo dos oponentes. Número de peças sendo atacadas pelo adversário. Etc.

CRIANDO HEURÍSTICAS 8/9 A função pode ser considerada como uma combinação linear dos valores selecionados. Mesmo se não se sabe a importância das características selecionadas; ou Se tais características são boas ou ruins. Um algoritmo de aprendizado pode identificar coeficientes razoáveis para cada característica.

CRIANDO HEURÍSTICAS 9/9 O custo do cálculo da função heurística pode ser relevante. O custo do cálculo da função heurística pode ser relevante. Uma boa heurística deve ser eficiente e precisa.

PROBLEMA DA COLORAÇÃO DE MAPAS - 1/6 Deve-se evitar que países adjacentes sejam coloridos com a mesma cor. Pode-se usar, no máximo, três cores: verde, vermelho e amarelo. O país A deve aparecer em verde e o país B em vermelho.

PROBLEMA DA COLORAÇÃO DE MAPAS - 2/6

PROBLEMA DA COLORAÇÃO DE MAPAS - 3/6

PROBLEMA DA COLORAÇÃO DE MAPAS - 4/6

PROBLEMA DA COLORAÇÃO DE MAPAS - 5/6

HEURÍSTICAS PARA PROBLEMAS COM RESTRIÇÕES (CSPs) - 6/6 Não é necessário busca para a resolução do problema: pode-se usar a intuição. Heurística da variável-mais-restrita. É usada em conjunto com a checagem adiante ( foward checking ).

HEURÍSTICA DA VARIÁVEL-MAIS-RESTRITA. Identifica os valores que ainda são permitidos para cada variável, em função das escolhas feitas até o momento. A cada momento: A variável com menos possíveis valores é escolhida para ser instanciada. O fator de ramificação tende a ser minimizado.

HEURÍSTICA DA VARIÁVEL-MENOS-RESTRITA. Escolher um valor que exclua o menor número possível de valores para as variáveis conectadas à variável corrente pelas restrições. No exemplo anterior: após instanciar A e B, pode-se decidir instanciar C com vermelho, pois esta escolha dá mais opções para futuras escolhas.

BUSCA A* - APROFUNDAMENTO ITERATIVO (IDA*) Cada iteração é uma busca em profundidade. O algoritmo de Busca em Profundidade é modificado: Usa-se uma função de custo f, ao invés de um limite de profundidade.

AVALIAÇÃO DA BUSCA IDA* Completa e ótima (nas mesmas condições de A*). Como é feita uma Busca em Profundidade: Requer um espaço proporcional ao caminho mais longo que é explorado.

AVALIAÇÃO DA BUSCA IDA* Não precisa inserir e retirar nós de uma fila de prioridades: Sua sobrecarga por nó é muito menor que A*. A solução ótima para muitos problemas práticos é encontrada primeiro por IDA*.

AVALIAÇÃO DA BUSCA IDA* Não produz bons resultados em domínios muito complexos. Exemplo: problema do caixeiro viajante. O valor heurístico é diferente para cada estado. Cada contorno de f: inclui apenas um nó a mais. Se A* expande N nós: IDA* terá de realizar N iterações terá de expandir 1 + 2 +... + N = O(N 2 ) nós.

COMPLEXIDADE TEMPORAL Depende fortemente do número de valores diferentes que a função heurística pode tomar. Tipicamente, a função f aumenta duas ou três vezes ao longo do caminho até a solução. Na última iteração: IDA* expande exatamente o mesmo número de nós que A*.

ALGORITMO ADMISSÍVEL-ε O limite de custo f pode ser expandido por um valor fixo ε em cada iteração. O número total de iterações é proporcional a 1/ε. Reduz o custo da busca, mas pode retornar uma solução pior que a ótima.

BUSCA A* - APROFUNDAMENTO ITERATIVO (IDA*) Não pode lembrar sua história : é condenado a repetí-la. O problema é mais grave quando o espaço de estados é um grafo ao invés de uma árvore. Pode ser modificado para verificar estados repetidos em um mesmo caminho. Não se pode evitar estados repetidos gerados por caminho alternativos.