A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Baseado no Cap 3 de Russel, Norvig Artificial Intelligence: a Modern Aproach Carlos Augusto dos Santos Computação Inteligente UFS-DCOMP Prof. Maria Augusta.

Apresentações semelhantes


Apresentação em tema: "Baseado no Cap 3 de Russel, Norvig Artificial Intelligence: a Modern Aproach Carlos Augusto dos Santos Computação Inteligente UFS-DCOMP Prof. Maria Augusta."— Transcrição da apresentação:

1 Baseado no Cap 3 de Russel, Norvig Artificial Intelligence: a Modern Aproach Carlos Augusto dos Santos Computação Inteligente UFS-DCOMP Prof. Maria Augusta Abril/2009

2  No Cap. 2 vimos agentes reativos, ◦ baseiam suas ações em um mapeamento direto de estados de ações, ◦ não podem operar bem em ambientes cujo mapeamento seriam grande demais par armazenar e levaria muito tempo para aprender.  No Cap. 3 veremos um tipo de agente baseados em objetivos chamado Agente de Resolução de Problemas. ◦ decidem o que fazer encontrando ações que levam a estados desejáveis.

3  Agentes de Resolução de Problemas  Formulação de Problemas  Busca da Solução  Problemas e Soluções bem definidos  Exemplos de Problemas  Algoritmos Específicos ◦ Busca em Extensão ◦ Busca de Custo Uniforme ◦ Busca em Profundidade ◦ Busca em Profundidade Limitada (Backtracking) ◦ Busca em Profundidade Iterativa em Profundidade ◦ Busca Bidirecional ◦ Tabela Comparativa  Limitações e Dificuldades ◦ Estados Repetidos ◦ Informações Parciais

4

5  Qualquer situação a ser “resolvida” por uma seqüência ações a ser executada, com vistas a atingir um objetivo; ◦ Na descrição acima: Situação = estado inicial; Seqüência de Ações = operações que irão gerar uma sucessão de estados; Objetivo = estado final (ou conjunto de) desejado;  Metáfora da resolução de problemas por meio de busca: ◦ Transformar um problema de raciocínio de um agente diretamente em um problema de navegação num espaço de estados, no qual, a partir de um estado inicial, um agente pode buscar uma seqüência de ações que conduzem ao estados final desejado.  A solução de um problema é conjunto de seqüências de ações que levam de um estado inicial ao estado objetivado  Uma solução ótima é uma seqüência de ações que leva de um estado inicial ao estado objetivado com o menor custo*.

6

7  Algoritmo Genérico de busca Função AGENTE-DE –RESOLUÇÃO-DE PROBLEMAS-SIMPLES(percepção) retorna uma ação entradas: percepção, uma percepção variáveis státicas: seq, uma sequencia de ações inicialmente vazia estado, alguma descrição dp estado atual do mundo Objetivo, um objetivo, inicialmente nulo Problema, uma formulação de problema Estado <- ATUALIZAR-ESTADO(estado,percepção) se seq está vazia então faça objetivo <- FORMULAR-OBJETIVO(estado) problema <- FORMULAR-PROBLEMA(estado, objetivo) seq <- BUSCA(problema) ação <- PRIMEIRO(seq) seq <- RESTO(seq) retornar ação

8  Formular o objetivo: definir um estado final que satisfaz o agente ex: “Estar em Bucareste”  Especificar o problema em termos de:  Estado Inicialex: “Estou em Arad”  Função Sucessor S(x) = conjunto de pares ação-estado ◦ ex: S(Arad) = { (Arad→Zerind, Zerind), (Arad→Sibiu, Sibiu),......}  Teste do Objetivo: condição que é capaz de determinar se o estado final foi alcançado ◦ ex: “Estou em Bucareste?”  Custo (path cost)ex: soma de distancias, nº de ações executadas, etc.

9  O Espaço de Estados  É definido implicitamente pelo estado inicial juntamente com todos os estados alcançáveis através da função sucessora S(x).  Forma um grafo onde os nós representam estados e os arcos entre os nós representam ações. Entretanto : Estado Corresponde a uma configuração do mundo. Ex: “estou em Bucareste” Nó Estrutura de Informação que compõe uma seqüência percorrida. Ex:  Nó(“Bucareste”) (1) Antecessor = Nó(“Pitesti”) Path-cost = 418 Km Nó(“Bucareste”) (2) Antecessor = Nó(“Fagarás”) Path-cost = 450 Km

10  O mundo real é absurdamente complexo: espaço de estados tem que ser abstraído para a resolução de problemas.  Estado (abstrato) = conjunto de estados reais  Ação (abstrata) = combinação complexa de ações reais, onde cada ação abstrata deveria ser “mais fácil” que o problema original. ◦ Ex: “Arad→Zerind” representa um complexo de rotas possíveis, paradas para descanso, etc.  Solução (abstrata) = conjunto de caminhos reais que são soluções no mundo real para o problema.

11  O Espaço de Estados derivado da formulação do problema impacta na eficiência de busca da solução  Ex: Problema das 8 Rainhas Dispor 8 rainhas num tabuleiro de xadrez, sem que qualquer uma delas esteja “sob ataque” das demais:  não pode haver mais de uma rainha em uma mesma linha, coluna ou diagonal  somente o custo da busca conta (nº de passos para a solução)

12  Problema das 8 Rainhas - Formulação 1: ◦ estado inicial: nenhuma rainha no tabuleiro ◦ operadores: adicionar uma rainha a qualquer quadrado vazio ◦ teste do objetivo: 8 rainhas no tabuleiro sem ataque mútuo?.... E assim por diante, até 64 x 63 x 62 x..... x 57  1,8 x seqüências possíveis a serem testadas [_,_] 0: [1,1] [1,2][2,1] [1,8] [2,2] [2,8][8,1] [8,2] [8,8] (64 estados possíveis) 1: [1,2][2,1] [1,8] [2,2] [2,8][8,1] [8,2] [8,8] (64 x 63 estados possíveis) 2:

13  Problema das 8 Rainhas - Formulação 2: ◦ estado inicial: nenhuma rainha no tabuleiro ◦ operadores: adicionar uma rainha a qualquer quadrado da coluna mais a esquerda que não contém nenhuma rainha ◦ teste do objetivo: 8 rainhas no tabuleiro sem ataque mútuo?.... E assim por diante, até 8 8  1,7 x 10 7 seqüências possíveis a serem testadas [_,_] 0: [1,1] [2,1][3,1] [8,1] (8 estados possíveis)1: [1,2] [2,2][3,2] [8,2] (8 x 8 estados possíveis)2: 1,8 x possibilidades da formulação 1 <<

14  Uma vez o problema bem formulado... usa-se um método de busca para encontrar o estado final desejado.  Métodos genéricos de busca: ◦ Busca exaustiva ou cega  Não sabe qual o melhor nó da fronteira a ser expandido = menor custo de caminho desse nó até um nó final (objetivo). ◦ Busca heurística - informada  Estima qual o melhor nó da fronteira a ser expandido com base em funções heurísticas => conhecimento

15  Estados: O agente está entre duas posições que podem estar limpas ou sujas. Ou seja, há 2 X 2 2 =8 estados possíveis  Ações: Esquerda, Direita, Aspirar  Teste de Objetivo: Todos os locais limpos  Custo de Caminho: 1 por ação

16  Estados: Cada peça pode estar em qualquer lugar  Ações: Mover para o espaço vazio em qualquer direção  Teste de Objetivo = Verifica se as peças estão devidamente sequenciadas  Custo de Caminho: 1 por movimento

17  Uma vez o problema bem formulado... usa-se um método de busca para encontrar o estado final desejado.  Métodos genéricos de busca: ◦ Busca exaustiva ou cega  Não sabe qual o melhor nó da fronteira a ser expandido = menor custo de caminho desse nó até um nó final (objetivo). ◦ Busca heurística - informada  Estima qual o melhor nó da fronteira a ser expandido com base em funções heurísticas => conhecimento

18  Descrição informal do algoritmo função BUSCA-EM-ÁRVORE(problema, estratégia) retorna uma solução ou falha Inicializar a árvore de busca usando o estado inicial de problema repita se não existe nenhum candidato para expansão então retornar falha escolher um nó para expansão de acordo com a estratégia se o nó contém um estado objetivo então retornar solução correspondente Senão expandir o nó e adicionar os nós restantes à arvore de busca

19  Nosso nó será uma estrutura de dados com cinco componentes: ◦ ESTADO: o estado no espaço de estados a que o nó corresponde; ◦ NÓ-PAI: O nó da árvore de busca que gerou esse nó; ◦ AÇÃO: A ação que foi aplicada ao pai para gerar o nó; ◦ CUSTO-DO-CAMINHO: O custo, tradicionalmente denotado por g(n), do caminho desde o estado inicial até o nó, indicado pelos ponteiros do pai.

20 AradFagarasOradeaR.VilceaAradLugojAradOradea SibiuTimisoaraZenrid Arad Grafo do espaço de estados do problema Árvore de Busca A cada passo, a árvore de busca é expandida a partir de sua fronteira, pelos operadores definidos na sua função sucessora

21 AradFagarasOradeaR.VilceaAradLugojAradOradea SibiuTimisoaraZenrid Arad Grafo do espaço de estados do problema Árvore de Busca A cada passo, a árvore de busca é expandida a partir de sua fronteira, pelos operadores definidos na sua função sucessora fronteira

22 AradFagarasOradeaR.VilceaAradLugojAradOradea SibiuTimisoaraZenrid Arad Grafo do espaço de estados do problema Árvore de Busca A cada passo, a árvore de busca é expandida a partir de sua fronteira, pelos operadores definidos na sua função sucessora fronteira

23 AradFagarasOradeaR.VilceaAradLugojAradOradea SibiuTimisoaraZenrid Arad Grafo do espaço de estados do problema Árvore de Busca A cada passo, a árvore de busca é expandida a partir de sua fronteira, pelos operadores definidos na sua função sucessora fronteira

24  Completude: se sempre encontra uma solução, se ela existe;  Complexidade de Tempo: em função do nº de nós gerados/expandidos;  Complexidade de Espaço: em função do nº máximo de nós armazenados em memória;  Otimização: se sempre encontra a solução de menor custo ◦ Complexidade de tempo e espaço é mensurada em termos de: b (branching) - fator máximo de ramificação da árvore de busca; d (depth) – profundidade da solução de menor custo; m – profundidade máxima do espaço de estados (que pode ser infinita)

25 Busca Cega ou Exaustiva

26  Exaustiva: Busca em todo espaço de estados, com sequencia sistemática de açoes que atingem todos os estados. Também chamada de Busca Cega, Sistemática ou Uniforme  Parcial: Busca num conjunto restrito de espaço de estados a partir do conhecimento a cerca de características específicas do problema ou classe de problema  Heurística: Estimativa ou conhecimento aproximado sobre a classe ou família em que o algoritmo de busca possa “confiar” para aprimorar o tempo de execução e/ou exigências de espaço;  Buscas Não-heuristicas nao são escalonáveis a grandes problemas. (pior caso é exponencial em tempo e/ou espaço)  Busca Heurística, parcial não oferece garantia de encontrar uma solução se ela existir ou a melhor solução entre muitas existentes.

27  Busca em Extensão/Largura (Breadth-first);  Busca de Custo Uniforme;  Busca em Profundidade (Depth-first);  Busca em Profundidade Limitada (Depth-limited)  Busca de Aprofundamento Iterativo (Iterative deepening)  Busca Bidirecional

28  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim A BC EFDG Fronteira = (A) KMIOJLHN

29 A BC EFDG Fronteira = (B,C) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

30 A BC EFDG Fronteira = (C,D,E) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

31 A BC EFDG Fronteira = (D,E,F,G) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

32 A BC EFDG Fronteira = (E,F,G,H,I) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

33 A BC EFDG Fronteira = (F,G,H,I,J,K) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

34 A BC EFDG Fronteira = (G,H,I,J,K,L,M) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

35 A BC EFDG Fronteira = (H,I,J,K,L,M,N,O) KMIOJLHN  Expande sempre o nó menos profundo ainda não expandido; ◦ Fronteira é uma fila do tipo FIFO, i.e., novos sucessores são postos no fim

36  Completa? ◦ Sim, desde que b (fator de ramificação) seja finito  Tempo? ◦ 1 + b + b 2 + b b d + b(b d – 1) = O(b d+1 ), i.e., exponencial em d (fator de profundidade)  Espaço? ◦ O(b d+1 ) (armazena cada nó na memória)  Ótima? ◦ Em geral, não. Sim quando o custo é constante a cada passo  Espaço é o grande problema; pode facilmente gerar nódulos a 10MB/sec, o que em 24h chegaria a 860GB !!!!!

37  Expande sempre o próximo nó ainda não expandido que possui caminho de menor custo Fronteira = fila de nós ordenada pelo custo do caminho até cada nó A CE B D Cidades: A BCD 1 5 Fronteira = (B,C,D) A BCD Fronteira = (C, E B,D) EBEB A BCD Fronteira = (E c, E B,D) EBEB EcEc A Fronteira = (A)

38 Completa? Tempo? Espaço? Ótima? Sim, desde que o custo de cada nó  0 Nº de nós com custo(nó) < custo(solução ótima) Sim, já q os nódulos expandem em ordem crescente de custo(nó) Nº de nós com custo(nó) < custo(solução ótima) Se o custo dos nós de um mesmo nível for igual, o desempenho é equivalente ao da Busca em Largura

39  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início A BC EFDG JLHNKMIO Fronteira = (A)

40 A BC EFDG JLHNKMIO Fronteira = (B,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

41 A BC EFDG JLHNKMIO Fronteira = (D,E,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

42 A BC EFDG JLHNKMIO Fronteira = (H,I,E,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

43 A BC EFDG JLHNKMIO Fronteira = (I,E,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

44 A BC EFDG JLHNKMIO Fronteira = (E,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

45 A BC EFDG JLHNKMIO Fronteira = (J,K,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

46 A BC EFDG JLHNKMIO Fronteira = (K,C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

47 A BC EFDG JLHNKMIO Fronteira = (C)  Expande sempre o nó mais profundo ainda não expandido; ◦ Fronteira é uma fila do tipo LIFO, i.e., novos sucessores são postos no início

48  Completa?  Tempo?  Espaço?  Ótima? Não: falha em árvores de profundidade infinita. Nesse caso, pode-se arbitrar um limite de profundidade L: Depth-limited search O(b m ): muito ruim se m >> d (m profundidade máxima, d profundidade da solução) O(b.m), i.e., função de crescimento linear Não: deve ser evitada em árvores muito profundas ou profundidade infinita

49  Variação da Busca em Profundidade, que utiliza um limite de profundidade L, que inicia em 0 e vai sendo incrementado de 1, a cada iteração. A A BC A BC DEDE A BC DE A BC DEDE A L = 0 A L = 1 A BC A BC A L = 2 A BC A BC DE A BC DE A BC DEDE

50  Completa?  Tempo?  Espaço?  Ótima? Sim, desde que b (fator de ramificação) seja finito O(b d ) (b fator de ramificação, d profundidade do nó objetivado) O(b.d) (b fator de ramificação, d profundidade do nó objetivado) Em geral, não. Sim quando o custo é constante a cada passo Em geral, é o método de Busca Cega preferido para grandes espaços de busca e quando a profundidade da solução é desconhecida

51  Princípio básico - dois agentes de busca agindo em paralelo, onde a cada expansão de nós verifica-se a existência de interseção entre as respectivas fronteiras de suas árvores de busca. A B

52  Motivação: (b d/2 + b d/2 ) << b d A B

53 A B Infelizmente, nem sempre é aplicável!

54 CritérioLarguraCusto Uniforme Profun- Didade Aprofund. Iterativo Bidirecional (se aplicável) Completa?Sim* NãoSim* Tempob d+1 b d* bmbm bdbd b d/2 Espaçob d+1 b d* b.mb.db d/2 Ótima?Sim*SimNãoSim*

55 A B C D Soluções possíveis (Custo x Eficácia) 1. Não retornar ao estado “pai” 2. Não retornar a um ancestral 3. Não gerar qualquer estado que já tenha sido criado antes (em qualquer ramo) ◦ requer que todos os estados gerados permaneçam na memória: custo O(b d ) ◦ pode ser implementado mais eficientemente com hash tables ◦ quando encontra nó igual tem de escolher o melhor (menor custo de caminho até então) A BB CCCC

56  Sensorless or conformant problem (ambiente inacessíveis) ◦ Agente não sabe seu estado inicial (percepção deficiente) ◦ Deve raciocinar sobre os conjuntos de estados ◦ Solução: seqüência de ações (via busca)  Problema de contingência ◦ Efeito das ações não-determinístico e/ou mundo parcialmente observável => novas percepções depois de ação  ex. aspirador que suja ao sugar e/ou só percebe sujeira localmente ◦ Solução: árvore de decisão (via planejamento, agente deliberativo)  Problema exploratório (on-line) ◦ Espaço de estados desconhecido  ex. dirigir sem mapa ◦ Solução.... via aprendizagem por reforço (agente indutivo situado)

57  Estado simples ◦ Início: 5 ◦ Solução: [dir, suga]  Conformant problem ◦ Início: {1,2,3,4,5,6,7,8} ◦ Dica: direita => {2,4,6,8} ◦ Solução: [dir, suga, esq, suga]  Problema de contingência ◦ Início: [lado esq, sujo] = {1,3} ◦ Solução? Sugar => {5,7}, Dir => {6,8}, Sugar no 6 => 8 mas sugar no 8 => 6 ◦ Solução: [sugar, dir, se sujo sugar] ◦ Solução geral: [dir, se sujo suga, esq, se sujo suga]  Problema exploratório ◦....

58  Referências: ◦ Russel e Norvig, Artificial Intelligence: a Modern Aproach, 2ed, Elsevier; ◦ Russel e Norvig, Inteligencia Artificial, Tradução da 2ed, Ed, Campos; ◦ Santana, André F, Resolução de Problemas por Meio de Busca Cega no Espaço Extensional de Hipótese, UFPE, 2003  Acessado em 08/04/2011 no link


Carregar ppt "Baseado no Cap 3 de Russel, Norvig Artificial Intelligence: a Modern Aproach Carlos Augusto dos Santos Computação Inteligente UFS-DCOMP Prof. Maria Augusta."

Apresentações semelhantes


Anúncios Google