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

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

T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas.

Apresentações semelhantes


Apresentação em tema: "T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas."— Transcrição da apresentação:

1 T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas

2 B USCA EM E SPAÇOS DE E STADO Conceito:

3 B USCA EM E SPAÇOS DE E STADO Questões Importantes: Existe garantia que o sistema para resolução de problemas encontrará uma solução? Este Sistema chegará sempre ao final, ou ele poderá ficar preso num laço infinito? Quando uma solução é encontrada, é garantido que ela seja ótima?

4 B USCA EM E SPAÇOS DE E STADO Questões Importantes: Qual é a complexidade do processo de busca em termos de tanto de consumo de tempo como de consumo de memória? Como o interpretador pode reduzir, da forma mais eficiente, a complexidade da busca? Como se pode projetar um interpretador para que ele utilize uma linguagem de representação o mais eficientemente possível?

5 B USCA EM E SPAÇOS DE E STADO Teoria dos Grafos Um grafo consiste: Conjunto de NÓS ; Conjunto de ARCOS (Elos)

6 B USCA EM E SPAÇOS DE E STADO Teoria dos Grafos Os NÓS representam os Estados, por exemplo, o resultados de inferência lógicas ou as diferentes configurações de um tabuleiro; Os ARCOS representam as transições entre estados, por exemplo, as inferências lógicas ou movimentos válidos de um jogo.

7 B USCA EM E SPAÇOS DE E STADO Jogo da Velha

8 B USCA EM E SPAÇOS DE E STADO Web site

9 B USCA EM E SPAÇOS DE E STADO Em sistemas especialistas os estados descrevem o nosso conhecimento sobre um caso do problema em algum estágio de um processo de raciocínio. O conhecimento do especialista, na forma de regras SE... ENTÃO, nos permite gerar informação nova. O ato de aplicar uma regra é representado como um arco entre estados.

10 B USCA EM E SPAÇOS DE E STADO Uma árvore é um grafo no qual dois nós têm, no máximo, um caminho entre eles. As árvores freqüentemente tem raízes e, neste caso, elas são normalmente desenhadas com a raiz no topo, como um grafo radicado. Como cada nó de uma árvore tem apenas uma caminho de acesso, a partir de qualquer outro nó, é impossível para um caminho circular continuamente através de uma seqüência de nós, originando um laço.

11 B USCA EM E SPAÇOS DE E STADO Nós = (a, b, c, d, e) Arcos = {(a,b), (a,d), (b,c), (c,b), (c,d), (d,a), (d,e) (e,c), (e,d)} a. b. d.d. c. e. Grafo direcionado rotulado

12 B USCA EM E SPAÇOS DE E STADO Árvore Relações de Parentesco a. b. d.d. c. e. f.g.h.h. i.j.

13 R EPRESENTAÇÃO DE PROBLEMAS POR ESPAÇOS DE ESTADOS Um espaço de estado é representado pelo conjunto { N, A, S, DO }, onde: N representa os nós ou estados do grafo. Eles correspondem aos estados de um processo de solução de problema. A representa os arcos entre os nós. Eles correspondem aos passos de um processo de solução de problema.

14 R EPRESENTAÇÃO DE PROBLEMAS POR ESPAÇOS DE ESTADOS S representa um subconjunto não vazio de N, contém o(s) estado(s) inicial(is) do problema; DO representa um subconjunto não vazio de N, contém o(s) estado(s) objetivo(s) do problema.

15 R EPRESENTAÇÃO DE PROBLEMAS POR ESPAÇOS DE ESTADOS Os estados e, DO são descritos usando: Uma propriedade mensurável dos estados encontrados na busca; Uma propriedade do caminho desenvolvido na busca, por exemplo, os custos de transição para o arco do caminho. Um caminho solução é um caminho através deste grafo de um nó S para um nó em DO.

16 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Entre as principais destacam-se a busca em a busca em Amplitude e a busca em Profundidade ; Na busca em profundidade, quando um estado é examinado, todos os seu filhos e os descendentes de seus filhos são examinados antes de qualquer um de seus irmãos; Apenas quando não forem encontrados descendentes de um estado é que seus irmãos são considerados.

17 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – B USCA EM P ROFUNDIDADE A, B, E, K, S, L, T, F, M, C, G, N, H, O, P, U, D, I, Q, J, R a. b. d.d. c. e. f.g.h.h. i.j. k.k. l.m.n.n. o.q.r.p.p. s.t. u.u.

18 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS A em amplitude, por outro lado, explora o espaço nível por nível, apenas quando não houver mais estados a serem explorados num determinado nível é que o algoritmo se moverá para o próximo.

19 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – B USCA EM AMPLITUDE A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P Q, R, S, T, U a. b. d.d. c. e. f.g.h.h. i.j. k.k. l.m.n.n. o.q.r.p.p. s.t. u.u.

20 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Implementação do algoritmo de busca em amplitude : função busca_em_amplitude; inicio abertos := [iniciar]; fechados := []; enquanto abertos <> [] faça inicio remova o estado mais à esquerda em abertos, chame-o de X; se X for um objetivo, então retorne SUCESSO senão inicio gere filhos de X; coloque X em fechados; descarte filhos de X se já estiverem em abertos ou fechados; coloque os filhos que restam no final à direita de abertos; fim retorne FALHA fim.

21 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS A lista de abertos é implementado como uma fila (FIFO); Os estados são adicionados à direita da lista e removidos pela esquerda; Os estados filhos que já foram descobertos são descartados; Se o algoritmo encerrar porque a condição “enquanto” não for mais satisfeita (abertos=[ ]), então ele varreu o grafo inteiro sem encontrar o estado objetivo.

22 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Configuração da lista de abertos 1. abertos = [ A ]; fechados=[ ] 2. abertos = [ B,C,D ]; fechados=[ A ]; 3. abertos = [ C,D,E,F ]; fechados=[ B,A ]; 4. abertos = [ D,E,F,G,H ]; fechados=[ C,B,A ]; 5. abertos = [ E,F,G,H,I,J ]; fechados=[ D,C,B,A ]; 6. abertos = [ F,G,H,I,J,K,L ]; fechados=[ E,D,C,B,A ]; 7. abertos = [ G,H,I,J,K,L,M ]( pois L já está em abertos ); fechados=[ F,E,D,C,B,A ]; 8. abertos = [ H,I,J,K,L,M,N ]; fechados=[ G,F,E,D,C,B,A ]; 9. e assim por diante, até que U seja encontrando ou abertos = [ ]

23 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS A busca em amplitude garante que o caminho mais curto entre o estado inicial e o objetivo será encontrada, caso exista; Pode-se manter outras informações nas listas de estados, como os ancestrais junto a cada estado, com isso pode-se refazer o caminho percorrido até o estado meta;

24 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Implementação do algoritmo de busca em profundidade: função busca_em_profundidade; inicio abertos := [iniciar]; fechados := []; enquanto abertos <> [] faça inicio remova o estado mais à esquerda em abertos, chame-o de X; se X for um objetivo, então retorne SUCESSO senão inicio gere filhos de X; coloque X em fechados; descarte filhos de X se já estiverem em abertos ou fechados; coloque os filhos que restam no final à esquerda de abertos; fim retorne FALHA fim.

25 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Nesse algoritmo os estados descendentes são adicionados e removidos a partir do final esquerdo da lista de abertos. Assim nessa implementação a estrutura de dados usada é a pilha (LIFO). Com isso a busca é direcionada para os estados gerados mais recentemente, produzindo uma ordem que avança em profundidade;

26 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Configuração da lista de abertos 1. abertos = [ A ]; fechados=[ ] 2. abertos = [ B,C,D ]; fechados=[ A ]; 3. abertos = [ E,F,C,D ]; fechados=[ B,A ]; 4. abertos = [ K,L,F,C,D ]; fechados=[ E,B,A ]; 5. abertos = [ S,L,F,C,D ]; fechados=[ K,E,B,A ]; 6. abertos = [ L,F,C,D ]; fechados=[ S,K,E,B,A ]; 7. abertos = [ T,F,C,D ]; fechados=[ L,S,K,E,B,A ]; 8. abertos = [ F,C,D ]; fechados=[ T,L,S,K,E,B,A ]; 9. abertos = [ M,C,D ]( como L já está em abertos) ; fechados=[ F,T,L,S,K,E,B,A ]; 10. abertos = [ C,D ]; fechados=[ M,F,T,L,S,K,E,B,A ]; 11. abertos = [ G,H,D ]; fechados=[ C,M,F,T,L,S,K,E,B,A ]; 12. e assim por diante, até que U seja encontrando ou abertos = [ ]

27 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Na busca em profundidade não se tem garantia que o caminho mais curto até um estado foi localizado na primeira vez que este estado é encontrado; Isso pode ser feito utilizando um atributo T AMANHO_CAMINHO e varrendo toda a árvore.

28 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS Entre as características mais significativas a escolha entre as duas abordagens se incluem: A importância de se encontrar o caminho mais curto até o objetivo; Fator de ramificação de espaço; Disponibilidade de tempo computacional e de recursos de memória; A média de comprimento dos caminhos até o objetivo; Se queremos todas soluções ou apenas a primeira encontrada.

29 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – BUSCA HEURÍSTICA De acordo com Polya (1945), heurística é “ o estudo dos métodos e das regras de descoberta e invenção ”. Na busca em espaços de estado, heurísticas são formalizadas como regras para escolher aqueles ramos que tem maior probabilidade de levarem a uma solução aceitável para o problema.

30 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – BUSCA HEURÍSTICA As heurísticas são usadas basicamente quando: Um problema pode não ter uma solução exata por causa das ambigüidades inerentes na formulação do problema ou pela disponibilidade de dados. Ex.: medicina e visão; Um problema pode ter uma solução exata, mas o custo computacional de encontrá-la pode ser proibitivo. Ex.: jogo de xadrez.

31 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – BUSCA HEURÍSTICA Uma heurística é apenas um conjectura informada sobre o próximo passo a ser tomado na solução e um problema; pode levar um algoritmo encontrar uma solução sub-ótima ou não levá-la a encontrar a solução de um problema, isto é inerente das heurísticas; As “regras práticas” que um especialista humano usadas para resolver problemas eficientemente são essencialmente heurísticas quanto a sua natureza.

32 E STRATÉGIAS PARA BUSCA EM ESPAÇO DE ESTADOS – BUSCA HEURÍSTICA Os algoritmos heurísticos são constituídos de duas partes: Medida heurística; Algoritmo (parte que usa as medidas).


Carregar ppt "T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas."

Apresentações semelhantes


Anúncios Google