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

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

Sistemas Baseados em Conhecimento Prof. Cláudio M. N. A. Pereira.

Apresentações semelhantes


Apresentação em tema: "Sistemas Baseados em Conhecimento Prof. Cláudio M. N. A. Pereira."— Transcrição da apresentação:

1 Sistemas Baseados em Conhecimento Prof. Cláudio M. N. A. Pereira

2 Sumário 1. Introdução 2. Estrutura de um SBC 3. Representação do conhecimento

3 Introdução Uma definição SBC são sistemas computacionais que utilizam e manipulam o conhecimento representado de forma explícita visando resolver problemas em um dado domínio.

4 Introdução DADO x INFORMAÇÃO x CONHECIMENTO

5 Introdução DADO é a estrutura básica de um sistema de informação. É quantificável e não depende de uma interpretação. Podem ser selecionados, gravados e recuperados de uma base de dados, arquivo ou memória. Ex: preço = 10 quant = 70

6 Introdução INFORMAÇÃO é criada a partir da análise e dos dados. Envolve a interpretação dos dados para um dado contexto. Ex: preço = 10; preço_mercado = 12 => BARATO quant = 70; estoque_mínimo = 100 => ESTOQUE BAIXO

7 Introdução CONHECIMENTO é a habilidade de criar um modelo que indique ações e decisões a serem tomadas. Ex: se CARO e ESTOQUE BAIXO então COMPRAR Qt_min se CARO e ESTOQUE NORMAL então COMPRAR 0 se MUITO BARATO então COMPRAR Qt_max

8 Características de um SBC capacidade de questionar o usuário para obter informações de interesse; capacidade de desenvolver raciocínio a partir das informações e do conhecimento nele representado; capacidade de explicar o raciocínio (como chegou a uma certa conclusão).

9 Características de um SBC todo o conhecimento a respeito do domínio da utilização do SBC deve estar representado em sua Base de Conhecimento (BC); deve haver um mecanismo de inferência capaz de interpretar e utilizar o conhecimento contido na BC; resolve problemas para os quais não se conhece procedimento determinístico que garanta a solução

10 SBC x Sistemas Convencionais Estruturas de Dados Representação do conhecimento Sistemas ConvencionaisSBC Manipulam conhecimentoManipulam dados Busca / HeurísticaAlgoritmos bem determinados Conhecimento representado explicitamente e separado do programa que o manipula Conhecimento embutido no código Facilidade p/ explicar raciocínioDifícil explicar o raciocínio

11 Estrutura geral de um SBC Memória de Trabalho ou Base de Fatos Base de Conhecimento Motor de Inferência Explicação do raciocínio Aquisição do conhecimento Usuário Especialista IHM

12 Estrutura geral de um SBC IHM - módulo que realiza toda a interação com o usuário, de forma a obter informações sobre o problema; Memória de trabalho - módulo que contêm: –a descrição do problema (situação atual, os dados); –possíveis ações a serem executadas; –hipóteses e novos cenários que o sistema já tenha produzido;

13 Estrutura geral de um SBC Base de Conhecimento - módulo que contêm o conhecimento declarado. –Utiliza alguma técnica de representação do conhecimento Módulo de aquisição do conhecimento - responsável por fazer a aquisição do conhecimento via interface com o especialista;

14 Estrutura geral de um SBC Explicação do raciocínio - módulo responsável por explicar como as conclusões ou respostas do SBC foram obtidas Motor de Inferência - módulo que gerencia e controla a utilização do conhecimento, estabelecendo critérios para identificação (matching), ativação e agendamento de regras, além de verificação de consistência e resolução de conflitos;

15 Representação do Conhecimento A Representação do Conhecimento (RC) é uma forma sistemática de se estruturar e codificar o que se sabe sobre um dado domínio de aplicação.

16 Características de uma RC O conhecimento representado deve ser compreensível ao ser humano; Abstração dos detalhes internos de como funciona o seu interpretador (máquina de inferência) Ser robusta. Permitir funcionamento mesmo que não sejam abordadas todas as situações possíveis.

17 Algumas técnicas de RC Representação Lógica Representação por Regras Representação por Redes Semânticas Orientação a Objetos Entre outras

18 Representação Lógica  Inferências dedutivas  Baseadas em lógica matemática  Linguagem PROLOG Exemplo: Lógica proposicional “todos os seres vivos são mortais”  C [ser_vivo(C)  mortal(C)] Exemplo: Lógica de predicados pai (joão) = antônio mãe (joana) = maria amigos(pai (joão), mãe (joana)) = amigos (antônio, maria)

19 Representação por Regras Forma mais natural SE (condições) ENTÃO (conclusões/ações)

20 Representação por Redes Semânticas  Grafo direcionado, que representa objetos (conceitos, situações, etc) e suas relações  Os nós representam objetos (físicos ou abstratos), as suas propriedades e valores  Os arcos representam relações entre os nós

21 Representação por Redes Semânticas Exemplo Uma ave é um animal. A forma de deslocamento das aves é voando. Uma ave possui atividade diurna. Um albatroz é uma ave. Uma albatroz é preto e branco. O tamanho médio do albatroz é 115 cm. O Alberto é um albatroz. O tamanho do Alberto é 120 cm. Um pinguim é uma ave. Um pinguim é branco e preto. A forma de deslocamento dos pinguins é andando. O Tweety é um pinguim. Exemplo de questões: –Qual forma de deslocamento de Alberto ? –Qual o forma de deslocamento de Tweety ?

22 Representação por Redes Semânticas AnimalAve é um Exemplo Uma ave é um animal.

23 Representação por Redes Semânticas AnimalAve é um Exemplo Uma ave é um animal. A forma de deslocamento das aves é voando. Voando deslocamento

24 Representação por Redes Semânticas AnimalAve é um Exemplo Uma ave é um animal. A forma de deslocamento das aves é voando. Uma ave possui atividade diurna. Voando deslocamento Diurna atividade

25 Representação por Redes Semânticas AnimalAve é um Exemplo Uma ave é um animal. A forma de deslocamento das aves é voando. Uma ave possui atividade diurna. Um albatroz é uma ave. Voando deslocamento Diurna atividade Albatroz é uma

26 Exemplo Uma ave é um animal. A forma de deslocamento das aves é voando. Uma ave possui atividade diurna. Um albatroz é uma ave. Uma albatroz é preto e branco. O tamanho médio do albatroz é 115 cm. O Alberto é um albatroz. O tamanho do Alberto é 120 cm. Um pinguim é uma ave. Um pinguim é branco e preto. A forma de deslocamento dos pinguins é andando. O Tweety é um pinguim. Exemplo de questões: –Qual forma de deslocamento de Alberto ? –Qual o forma de deslocamento de Tweety ? Representação por Redes Semânticas AnimalAve é um Voando deslocamento Diurna atividade Albatroz é uma Preto e Branco Pinguim 115 cm Andando cor tamanho cor deslocamento Tweety Alberto 120 cm é um tamanho é uma

27 Orientação a Objetos  A estrutura hierárquica da Programação Orientada a Objetos, bem como o conceito de encapsulamento e mensagens entre objetos, permitem a Representação do Conhecimento de forma similar a das Redes Semânticas.

28 Linguagens de Programação A rigor, qualquer linguagem pode ser utilizada para implementar conceitos da IA, entretanto, algumas possuem facilidades para serem utilizadas na implementação de sistemas de IA. - LISP (LISt Processing) - PROLOG (PROgramming in LOGic)

29 Exemplo: Blocos c b a Objetivo: Dados os fatos que configuram o cenário, deseja-se informar quais blocos estão acima de um outro. Consideraremos os seguintes fatos: - “a” está sobre “b” e - “b” está sobre “c”.

30 Exemplo: Blocos Representação com Regras Regra 1: SE X está SOBRE Y ENTÃO X está ACIMA de Y Regra 2: SE Z está SOBRE Y E X está ACIMA de Z ENTÃO X está ACIMA de Y Base de Conhecimento

31 Exemplo: Blocos Representação com Regras Base de Fatos / Memória de Trabalho A está SOBRE B B está SOBRE C

32 Exemplo: Blocos Executando o Sistema A está SOBRE B B está SOBRE CB está ACIMA de C (novo fato) Regra 1 A está ACIMA de B (novo fato) Regra 1

33 Exemplo: Blocos Executando o Sistema Base de Fatos / Memória de Trabalho A está SOBRE B B está SOBRE C B está ACIMA de C A está ACIMA de B

34 Exemplo: Blocos Executando o Sistema B está SOBRE CA está ACIMA de C (novo fato) Regra 2 A está ACIMA de B E C onclusão: A está ACIMA de C

35 Exemplo: Blocos (defclass bloco (is-a USER) (role concrete) (slot nome (type STRING) (create-accessor read-write)) (slot cor (type STRING) (create-accessor read-write)) (slot tamanho (type STRING) (create-accessor read-write)) ) (defmessage-handler bloco imprime() (printout t “Bloco “ ?self:nome “ (“ ?self:cor “,” ?self:tamanho “)”) ) Representação com Regras (Orientada a Objetos): LISP

36 Exemplo: Blocos Representação com Regras (Orientada a Objetos): LISP (definstances blocos (a of bloco (nome “a”) (cor “branco”) (tamanho “pequeno”) ) (b of bloco (nome “b”) (cor “verde”) (tamanho “medio”) ) (c of bloco (nome “c”) (cor “azul”) (tamanho “grande”) ) (deffcats exemplo (sobre [a] [b]) (sobre [b] [c]) )

37 Exemplo: Blocos (defrule direta (sobre ?X ?Y) => (assert (acima ?X ?Y)) (printout t (send ?X imprime) “acima de ” (send ?Y imprime)) ) (defrule indireta (sobre ?Z ?Y) (acima ?X ?Z) => (assert (acima ?X ?Y)) (printout t (send ?X imprime) “acima de ” (send ?Y imprime)) ) SE X está SOBRE Y ENTÃO X está ACIMA de Y SE Z está SOBRE Y E X está ACIMA de Z ENTÃO X está ACIMA de Y Representação com Regras (Orientada a Objetos): LISP

38 Exemplo: Blocos Execução do programa 1) Inicialmente o Motor de Inferência do LISP tenta casar pré-condição da regra direta com os fatos existentes; (Obs.: A verificação é feita na ordem inversa da declaração dos fatos) Logo, tem-se que o fato (sobre [b] [c]) dispara a regra direta 2) Com o disparo da regra direta, um novo fato (acima [b] [c]) é adicionado na Memória de Trabalho. 3) Um novo ciclo é iniciado e a regra direta é novamente disparada pela pré-condição (sobre [a] [b]), adicionando o fato (acima [a] [b]) na Memória de Trabalho. 4) Outro ciclo se inicia e as pré-condições (sobre [b] [c]) e (acima [a] [b]) disparam a regra indireta, gerando o fato (acima [a] [c])

39 Exemplo: Blocos Representação Lógica: PROLOG cor (a, branco). cor (b, verde). cor (c, azul). tamanho (a, pequeno). tamanho (b, médio). tamanho (c, grande). sobre (a, b). sobre (b, c). acima (X, Y) :- sobre (X, Y). acima (X, Y) :- sobre (Z, Y), acima (X, Z).


Carregar ppt "Sistemas Baseados em Conhecimento Prof. Cláudio M. N. A. Pereira."

Apresentações semelhantes


Anúncios Google