1 / 39

Inteligência Artificial

Inteligência Artificial. Nadilma C. V. N. Pereira Aula 4 – Resolvendo Problemas. Agente solucionador de problemas (guiado por objetivo). O agente reativo Escolhe suas ações com base apenas nas percepções atuais Não tem estado interno Não pode pensar no futuro, não sabe “aonde vai”

Download Presentation

Inteligência Artificial

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. Inteligência Artificial Nadilma C. V. N. Pereira Aula 4 – Resolvendo Problemas

  2. Agente solucionador de problemas (guiado por objetivo) • O agente reativo • Escolhe suas ações com base apenas nas percepções atuais • Não tem estado interno • Não pode pensar no futuro, não sabe “aonde vai” • O agente solucionador de problemas • Busca uma sequência que leve a estados DESEJÁVEIS (objetivos)

  3. Agentes solucionadores de problemas • O que é um problema em I.A.? • Como formulá-lo? • Como buscar a solução do problema? • Busca cega • Busca Heurística • Quais são os tipos de problemas? • Quais são as aplicações?

  4. Solução de problemas: definições • Um problema em IA é definido em termos de... • Um espaço de estados possíveis, incluindo: • Um estado inicial • Um (ou mais) estado final = objetivo • Exemplo: dirigir de Recife a Cajazeiras • Espaço de estados: todas as cidades da região • Um conjunto de ações (ou operadores) que permitem passar de um estado a outro

  5. Solução de problemas: definições • Definição do objetivo • Conjunto de estados finais do mundo • Ex. estar em Cajazeiras • Solução • Caminho (sequência de ações ou operadores) que leva do estado inicial a um estado final (0bjetivo). • Espaço de Estados • Conjunto de todos os estados alcançáveis a partir do estado inicial por qualquer sequência de ações.

  6. Solucionando o problema: formulação, busca e execução • Formulação do problema e do objetivo: • Quais são os estados e as ações a considerar? • Qual é (e como representar) o objetivo? • Busca (solução do problema): • Processo que gera/analisa sequências de ações para alcançar um objetivo • Solução = caminho entre estado inicial e estado final • Custo do caminho = qualidade da solução • Execução: • Executar a solução completa encontrada. Ou • Intercalar a solução com busca: planejamento

  7. Exemplo de formulação de problemas • Ida para Cajazeiras • Estados = cada possível cidade do mapa • Estado inicial = Jeremoabo • Teste de término = estar em Cajazeiras • Operadores = dirigir de uma cidade para outra • Custo do caminho = número de cidades visitadas, distância percorrida, tempo de viagem, grau de divertimento, etc.

  8. Jeremoabo - Cajazeiras

  9. Medida de Desempenho na busca • Desempenho de um algoritmo de busca: • O algoritmo encontrou alguma solução? • É uma boa solução? • Custo de caminho (qualidade da solução) • É uma solução computacionalmente barata? • Custo da busca (tempo e memória) • Custo total: • Custo do caminho + custo da busca • Espaço de estados grande • Compromisso (conflito) entre a melhor solução e a solução mais barata

  10. Custo diferente => Solução diferente • Função de custo de caminho • Número de cidades visitadas • Distância entre as cidades • Tempo de viagem, etc. • Solução mais barata: • Canudos, Belém do S. Francisco, Salgueiro, .... • Canudos, Belém do S. Francisco, Cabrobó, .... • Canudos, Juazeiro, Petrolina, Cabrobó. Salgueiro, ....

  11. Tipos de problema • Existem 4 tipos • Problemas de estado único (o mais tratado por busca) • Problemas de múltiplos estados • Problemas contingenciais • Problemas exploratórios Tudo depende do conhecimento do agente!!!!

  12. Tipo 1: Problemas de estado único • Conhecimento do agente • Sabe em que estado está (mundo totalmente acessível) • Sabe o efeito de cada uma de suas ações • Sabe onde está depois de uma sequência qualquer de ações • Cada ação leva um único estado

  13. Tipo 2: Problemas de múltiplos estados • Conhecimento do agente • Não sabe seu estado inicial (percepção deficiente), mas sabe o efeito de suas ações, OU • Não sabe o efeito das ações (execução deficiente), mas sabe seu estado inicial • Lei de Murphy: faz o que tem que tem que fazer e ao mesmo tempo realiza a tarefa contrária • O agente deve raciocinar sobre os conjuntos de estados aos quais ele pode chegar pelas ações. • Nestes casos, sempre existe uma sequência de ações que leva a um estado final. • Técnica a aplicar: Busca

  14. Tipo 3: Problema de contingências • Conhecimento do agente: • O agente não enxerga o ambiente inteiro OU • O agente não sabe precisar o efeito das ações • Não há sequência prévia de ações que garanta a solução do problema • O agente precisa intercarlar busca e execução • Técnica a aplicar: Planejamento • O agente constrói uma árvore de ações, onde cada ramo lida com uma possível contingência.

  15. Tipo 4: Problemas exploratórios • Conhecimento agente: • O agente não conhece seus possíveis estados E • O agente não sabe o efeito de suas ações • O agente deve explorar seu ambiente, descobrindo gradualmente o resultado de suas ações e os estados existentes. • Se o agente “sobreviver”, terá aprendido um mapa do ambiente, que poderá ser reutilizado em problemas subsequentes. • Técnica a aplicar: Aprendizagem.

  16. Aplicações: Problemas Reais • Cálculo de rotas • Rotas em redes de computadores • Sistemas de planejamento de viagens • Planejamento de rotas de aviões • Caixeiro viajante

  17. Busca em espaço de estados • Uma vez o problema bem formulado... O estado final deve ser “buscado” • Em outras palavras, deve-se usar um método de busca para saber a ordem correta de aplicação dos operadores que levará do estado inicial ao final • Uma vez a busca terminada com sucesso, é só executar a solução (=conjunto ordenado de operadores a aplicar)

  18. Busca em espaço de estados: Geração e Teste • Fronteira do espaço de estados • Nós (estados) a serem expandidos no momento • Algoritmo • Obs: o algoritmo começa com a fronteira contendo o estado inicial do problema

  19. Exemplo: Jeremoabo a Cajazeiras

  20. Busca em espaço de estados

  21. Busca em espaço de estados: Implementação

  22. Métodos de busca

  23. Critérios de Avaliação das Estratégias de Busca

  24. Heurísticas

  25. Problema do caixeiro viajante • É um problema clássico de otimização combinatória; • Suponha que um caixeiro tenha de visitar n cidades diferentes, iniciando e encerrando sua viagem na primeira cidade. A ordem de visita às cidades não importa e cada uma delas pode ir diretamente a qualquer outra. Resumindo, o problema do caixeiro viajante consiste em descobrir a rota que torna mínima a viagem total.

  26. Hill Climbing (Subida na Montanha) • É um método de busca (local) que utiliza um procedimento de melhora iterativa (iterative improvement). • A estratégia é aplicada a um único ponto x (solução candidata) no espaço de busca

  27. Algoritmo Padrão Hill Climbing

  28. Interpretação da Terminologia do Sistema Físico para o Domínio Computacional

  29. Simulated Annealing • Arrefecimento simulado ou simulated annealing é uma meta-heurística  para otimização que consiste numa técnica de busca local probabilística, e se fundamenta numa analogia com a termodinâmica. • É análogo ao processo térmico devido a duas etapas utilizada na metalúrgica no processo de annealing: • A temperatura é aumentada a fim de fundir o sólido • Resfriamento realizado lentamente e o material se solidifica. Nesta fase, os átomos organizam-se numa estrutura uniforme com energia mínima, provocando que os átomos ganhem energia para se movimentarem livremente e arrefecer (tornar frio) de forma controlada.

  30. Simulated Annealing A grande sacada nisso é que esse processo dar uma melhor hipótese de que o material se organize numa configuração com menor energia interna, para ter, como resultado prático, uma redução dos defeitos do material.

  31. Simulated Annealing • Substitui uma solução atual por uma solução próxima (no espaço de soluções) através de: • De forma análoga, o algoritmo de arrefecimento simulado substitui a solução atual por uma solução próxima, escolhida de acordo com uma função objetivo e com uma variável T (dita Temperatura, por analogia).Quanto maior for T, maior a componente aleatória que será incluída na próxima solução escolhida. • À medida que o algoritmo progride, o valor de T é decrementado, começando o algoritmo a converter para uma solução ótima, necessariamente local. • Uma das principais vantagens deste algoritmo é permitir testar soluções mais distantes da solução atual e dar mais independência do ponto inicial da pesquisa.

  32. Simulated Annealing O parâmetro T (temperatura) é reduzidoapós algumas iterações (arrefecimento). Figura 1 Ilustração de mínimos locais e mínimo global

  33. Simulated Annealing • Procedimento: • Busca a partir de uma solução inicial qualquer • O procedimento principal é um loop que gera UM ÚNICO vizinho s’ da solução s • A Cada s’é testado a variação do ∆ do valor da função objetivo, ∆ = f (s’) – f (s) • ∆ < 0 Redução de energia • ∆ = 0 Caso de estabilidade • ∆ ≥ 0 Aumento do estado de energia

  34. Simulated Annealing • T assume valor elevado inicialmente (T0) • Quando o sistema atinge o equilíbrio térmico em uma dada temperatura, ela é diminuída • Tn ← α * Tn -1, sendo 0 < α < 1 • Com esse procedimento inicial há uma chance maior de se escapar de mínimos locais

  35. Simulated Annealing • Quando a temperatura chega a um valor próximo de zero (mínimo local) • Quando o sistema encontra-se nesta situação evidencia o encontro de um mínimo local

  36. Simulated Annealing Identificadores utilizados: S0 → Configuração Inicial (Entrada); Si → Configuração da Iteração i; S → Configuração Final; T0 → Temperatura Inicial; Ti → Temperatura na Iteração i; M → Número máximo de iterações (Entrada); P → Número máximo de Perturbações por iteração (Entrada); L → Número máximo de sucessos por iteração (Entrada); α → Factor de redução da temperatura (Entrada); f(Si) → Valor da função objetivo correspondente á configuração Si; nSucesso → Contador de sucesso em uma iteração; i e j → Variáveis de controle de Loops.

  37. Simulated Annealing Funções utilizadas: Pertuba(S) → Função que realiza uma perturbação na Solução S; Randomiza() → Função que gera um número aleatório no intervalo [0,1]; TempInicial() → Função que calcula a temperatura inicial;

  38. Simulated Annealing Pseudo-Código Simulated Annealing Inicio/* Entradas do Algoritmo */ Ler (S0, M, P, L, α) /* Inicialização das variáveis */ S = S0 T0 = TempInicial() T = T0 j = 1 /*Loop principal – Verifica se foram atendidas as condições de termino do algoritmo*/Repita i = 1 nSucesso = 0/*Loop Interno – Realização de perturbação em uma iteração*/ Repita Si = Pertuba(S) ∆Fi = f(Si) – f(S)/*Teste de aceitação de uma nova solução*/ Se (∆fi ≤ 0) ou (exp(-∆fi/T) > Randomiza()) então S= Si nSucesso = nSucesso + 1 Fim-se i = i + 1 Até (nSucesso ≥ L) ou (i > P)/*Atualização da Temperatura*/ T = α.T/*Atualização do Contador de iterações*/ j = j + 1Até (nSucesso = 0) ou (j > M)/*Saída do Algoritmo*/Imprima(S)

  39. Simulated Annealing • Para usar SA é necessário definir: • O problema • O mecanismo da geração de uma nova vizinhança • Função Objetivo • Forma de resfriamento da temperatura • Critério de Parada

More Related