26
Representação do Conhecimento Baseado nos slides de Tom Lenarts (IRIDIA) Capítulo 10

Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

  • Upload
    lydan

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Representação do Conhecimento

Baseado nos slides de Tom Lenarts (IRIDIA)

Capítulo 10

Page 2: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Sumário Engenharia Ontológica

Categorias e objectos

Acções, situações e eventos

Conhecimento sobre crenças

O mundo de compras na internet

Sistemas de raciocínio

Raciocínio com falta de informação

Sistemas de manutenção de verdade

Page 3: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Objectivos Capítulos anteriores

Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem

Implementação de agentes baseados em lógica

Agentes baseados em lógica Base de conhecimento + motor de inferência

Neste capítulo Qual o conhecimento que deve ser incluído na base de

conhecimento?

Page 4: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Engenharia Ontológica Como criar representações mais gerais e flexíveis

Conceitos como acções, tempo, objectos físicos e crenças

Mais abrangente do que Engenharia do Conhecimento; domínios mais complexos

Definir uma framework de conceitos Ontologia genérica

Limitações da representação lógica Tipicamente as generalizações têm excepções Exº Os tomates são vermelhos, mas… também há tomates

verdes e amarelos

Page 5: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Ontologia genérica do mundo

Page 6: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Diferenças versus ontologias específicas Uma ontologia genérica deve ser aplicável em qualquer

domínio específico Através da axiomas específicos do domínio

Em domínios mais complexos, é necessário unificar diferentes áreas do saber Raciocínio e resolução de problemas pode envolver várias

áreas simultaneamente

O que é necessário especificar?Categorias, Medidas, Objectos compostos, Tempo, Espaço,

Mudança, Eventos, Processos, Objectos Físicos, Substâncias, Objectos mentais, Crenças

Page 7: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Categorias e objectos

Os objectos devem ser organizados em categorias Interacção ao nível do objecto Raciocínio ao nível das categorias

Categorias permitem caracterizar objectos A partir das suas propriedades

Categorias podem ser representadas de 2 formas em LPO Predicados: maçã(x) Transformação de categorias em objectos: maçãs

Categoria = conjunto dos seus membros

Page 8: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Organização de categorias

Relação = herança: Todas as

instâncias de alimentos são comestíveis, fruta é uma subclasse de alimento e maçã é uma subclasse de fruta – logo maçã é comestível

Definição de uma taxonomia

Page 9: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

LPO e categorias

Um objecto é um membro de uma categoria Membro(BB12,BolasBasket)

Uma categoria é uma subclasse de outra categoria Subconjunto(BolasBasket,Bolas)

Todos os membros de categoria têm algumas propriedades x (Membro(x,BolasBasket) Redondo(x))

Todos os membros de uma categoria podem ser reconhecidos por algumas propriedades x (Laranja(x) Redondo(x) Diâmetro(x)=24.1cm

Membro(x,Bolas) Membro(x,BolasBasket))

Uma categoria tem propriedades Membro(Cães,EspéciesDomésticas)

Page 10: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Relações entre categorias

Duas ou mais categorias são disjuntas se não têm membros em comum: Disjuntos(s)( c1,c2 c1 s c2 s c1 c2 Intersecção(c1,c2)

={}) Exemplo: Disjuntos({animais, vegetais})

Um conjunto de categorias s constitui uma decomposição exaustivade uma categoria c se todos os membros do conjunto c estão cobertos por categorias em s: D.E.(s,c) ( i i c c2 c2 s i c2)

Exemplo: DecomposiçãoExaustiva({Americanos, Canadianos, Mexicanos},NorteAmericanos).

Page 11: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Relações entre categorias

Uma partição é uma decomposição exaustiva disjunta: Partitição(s,c) Disjuntos(s,c) D.E.(s,c) Exemplo: Partição({Masculino,Feminino},Pessoas).

({Americanos,Canadianos,Mexicanos},NorteAmericanos) éuma partição?

Categorias podem ser definidas dando condições necessárias e suficientes para que um objecto seja membro de uma categoria x Solteirão(x) Homem(x) Adulto(x) NãoCasado(x)

Page 12: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Definições não estritas

Muitas categorias não têm definições claras (cadeira, arbusto, livro).

Tomates: algo verde, vermelho, amarelo. Tipicamente redondo.

Solução possível: categoria Típico(Tomates). x, x Típico(Tomates) Vermelho(x) Esférico(x) Podemos explicitar factos úteis sobre categorias sem dar

definições exactas. Todos os tomates “típicos” são tomates.

E quanto a “solteirão”? Questionável o que se considera uma definição estrita. Podemos questionar a conclusão “o Papa é um solteirão”.

Page 13: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Composição Física Um objecto pode ser parte de outro:

Parte(Bucareste,Roménia) Parte(Roménia, EuropaLeste) Parte(EuropeLeste,Europa)

O predicado Parte é transitivo (e irreflexivo), logo podemos inferir Parte(Bucareste,Europa)

Generalizando: x Parte(x,x) x,y,z Parte(x,y) Parte(y,z) Parte(x,z)

Composição física é muitas vezes caracterizada por relações estruturais entre as partes. E.g. Bípede(a)

Page 14: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Medidas

Objectos têm peso, massa, custo, .... Valores atribuídos a estes atributos são medidas

Combinar funções com um valor numérico: Comprimento(L1) = Polegadas(1.5) = Centímetros(3.81).

Conversão entre unidades: i Centímetros(2.54 x i)=Polegadas(i).

Algumas medidas não têm escala: Beleza, Dificuldade, etc. Aspecto mais importante das medidas: são ordenáveis. Números podem ser irrelevantes; o que interessa é a

relação de ordem. (Uma maçã pode ter sabor .9 ou .1.)

Page 15: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Acções, eventos e situações• Raciocínio sobre resultado de

acções é fundamental para um agente baseado em conhecimento

• Como é possível manter registo de posições em LPO?• Múltiplas cópias em lógica

proposicional• Representação do tempo através

de situações (estados resultantes da execução de acções)• Cálculo situacional

Page 16: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Cálculo Situacional

Objectivo: especificar para o instante t+1 o resultado de ter realizado determinada acção em t

Ontologia Situações são termos lógicos

Situação inicial S0

Todas as situações resultantes de uma acção (=Resultado(a,s)) Fluentes são funções e predicados que variam de uma

situação para outra E.g. Segurar(G1, S0), Idade(Wumpus, S0)

Predicados e funções eternos são predicados e funções que nunca mudam E.g. Ouro(G1), PernaEsq(Wumpus)

Page 17: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Cálculo Situacional: exemplo

Page 18: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Cálculo Situacional

Resultados de sequências de acções são determinados por acções individuais Resultado([ ], s) = s Resultado([a|seq], s) = Resultado(seq,Resultado(a,s))

Tarefa de Projecção: agente deve ser capaz de deduzir o resultado de uma sequência de acções

Tarefa de Planeamento: encontrar uma sequência de acções que produz o efeito desejado

Page 19: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Exemplo em LPO

O que é verdade em S0 Em(Agente,[1,1],S0) Em(G1,[1,2],S0)

O que não é verdade em S0 Em(o,x, S0) [(o=Agente x=[1,1]) (o= G1

x=[1,2])] Segurar(G1,S0)

Outros factos Ouro(G1) Adjacente([1,1],[1,2])

Adjacente([1,2],[1,1])

Page 20: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Exemplo em LPO (cont.)

Objectivo: provar que o agente alcança o seu objectivo ao deslocar-se para a posição [1,2], agarrar o ouro e voltar para a posição [1,1] Em(G1,[1,1],Resultado([Ir([1,1],[1,2]),Agarrar(G1),Ir([1

,2],[1,1])],S0)

Construção de um plano resposta à questão “Qual a sequência de acções que leva a que o ouro esteja na posição [1,1]?” seq Em(G1,[1,1],Resultado(seq, S0))

Page 21: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Descrição de acções: mudança

Cálculo situacional requer dois axiomas para descrever mudança Axioma de possibilidade: possibilidade de realizar

uma acção Pré-condições Possível(a,s)

Exº: Em(Agente,x,s) Adjacente(x,y) Possível(Ir(x,y),s)

Axioma de efeito: mudanças resultantes de acções Possível(a,s) Mudanças resultantes da acção

Possível(Ir(x,y),s) Em(Agente,y,Resultado(Ir(x,y),s))

Page 22: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Descrição de acções: mudança

Axiomas de efeito estabelecem o que muda mas não dizem o que fica na mesma

Problema do enquadramento: como representar aquilo que fica na mesma? Axioma de enquadramento: descrever ausência de

mudança como resultado de acções Exº: os movimentos de um agente não afectam

outros objectos se estes não estiverem a ser segurados

Em(o,x,s) (o Agente) Segurar(o,s) Em(o,x,Resultado(Ir(y,z),s))

Page 23: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Problema da representação de enquadramentos Se existem F fluentes e A acções então necessitamos de

A*F axiomas de enquadramento para descrever que os objectos que ficam na mesma excepto se forem segurados Descrevemos os efeitos de cada acção

Solução: descrever como cada fluente é alterado ao longo do tempo Axioma de estado sucessor

Acção é possível (Fluente é verdadeiro no estado resultante Fluente resulta da acção Fluente já era verdadeiro antes e permaneceu inalterado)

Exº: Possível(a,s) (Em(Agente,y,Resultado(a,s)) (a = Ir(x,y)) (Em(Agente,y,s) a Ir(y,z))

Significa que o agente está em y depois de executar uma acção se a acção é possível e consiste em ir para y ou se o agente jáestava em y e acção não consiste em ir para outra posição

Page 24: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Problema da representação de enquadramentos O estado seguinte é completamente especificado

pelo estado actual O efeito de cada acção é mencionado apenas uma

vez Como lidar com efeitos secundários (implícitos)?

Se um agente está a segurar o ouro e o agente se move então o ouro também se move

Problema de ramificação Exº: Possível(a,s) Em(o,y,Resultado(a,s))

(a=Ir(x,y) (o=Agente Segurar(o,s))) (Em(o,y,s) (z yz a=Ir(y,z) (o=Agente Segurar(o,s))))

Page 25: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Problema do enquadramento inferencial Como decidir EFICIENTEMENTE que fluentes

permanecem no futuro? Solução: alterar o mecanismo de inferência

Possível(a,s) Fi(Resultado(a,s)) (a=A1 a=A2 …) Fi(s) (aA3 aA4) …

Possível(a,s) Fi(Resultado(a,s)) EfeitoPositivo(a,Fi) [Fi(s) EfeitoNegativo(a,Fi)]

EfeitoPositivo(A1,Fi) EfeitoPositivo(A2,Fi) EfeitoNegativo(A3,Fi) EfeitoNegativo(A4,Fi)

Page 26: Representação do Conhecimento - fenix.tecnico.ulisboa.pt · Sintaxe, semântica e sistema de prova para lógica proposicional e lógica de 1ª ordem ... Exemplo: Disjuntos({animais,

Problema da qualificação

Como garantir que todas as pré-condições necessárias estão especificadas? Exº Ir não tem efeito se o agente morrer entretanto

Não existe uma solução completa para este problema