1 / 75

Raciocínio em Lógica de Descrições

Raciocínio em Lógica de Descrições. Menandro Ribeiro Santana. Roteiro. Introdução Raciocínio em DL Otimizações em Sistemas de Raciocínio. Introdução. Lógicas de Descrições. Família de formalismos de representação do conhecimento baseados na Lógica Matemática.

guy
Download Presentation

Raciocínio em Lógica de Descrições

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. Raciocínio em Lógica de Descrições Menandro Ribeiro Santana

  2. Roteiro • Introdução • Raciocínio em DL • Otimizações em Sistemas de Raciocínio

  3. Introdução

  4. Lógicas de Descrições • Família de formalismos de representação do conhecimento baseados na Lógica Matemática. • Descrevem o domínio em termos de conceitos, propriedades e indivíduos. • Possuem semântica formal • Provêem serviços de inferência.

  5. Sintaxe e Semântica das DL’s • Uma interpretação é um par <I, I>, onde: • I é o universo de discurso (não-vazio) • I é uma função de interpretação, que mapeia: • Conceitos para subconjuntos de I • Papéis para subconjuntos de II • Instâncias para elementos de I

  6. Sintaxe e Semântica das DL’s

  7. Sintaxe e Semântica das DL’s

  8. Famílias de DL’s S = FL- +AL*+ papéis transitivos • SHIQ

  9. Base de Conhecimento em DL • Par <TBox, ABox> onde: • TBox (Terminological Box) • Conhecimento Intensional: conhecimento geral sobre o domínio do problema. • ABox (Assertional Box) • Conhecimento Extensional: especifica um problema particular.

  10. TBox • Conhecimento intensional na forma de terminologia. • Construído através de declarações que descrevem as propriedades gerais dos conceitos. • Conceito primitivo (base) Pessoa Fêmea • Conceito complexo Mulher ≡ Pessoa ┌┐ Fêmea

  11. TBox • As declarações do TBox são representadas como: • Equivalências lógicas (condições necessárias e suficientes) : ≡ • Inclusão (condições necessárias) :  • Características das declarações: • Somente é permitida uma definição para cada nome de conceito. • É recomendado que as definições sejam acíclicas, isto é, não podem ser definidas em termos de: • Elas mesmas • Outros conceitos que indiretamente se referem a elas.

  12. TBox - Exemplo

  13. ABox • Conhecimento extensional, que especifica os indivíduos do domínio. • Instanciação da estrutura de conceitos.

  14. Tipos de Declarações no ABox • Declaração de Conceitos : C(a) • Declara que “a” é um indivíduo do conceito C. • Ex : Pessoa(Ana) • Declaração de Papel : R(a,b) • Declara que o indivíduo “a” está relacionado com o indivíduo “b” através da propriedade R. • Ex : temFilho(Ana,João)

  15. ABox - Exemplo

  16. Raciocínio em DL

  17. Raciocínio em DL • Satisfatibilidade • Subsunção • Conseqüência Lógica • Checagem de Equivalência • Checagem de Consistência • Checagem de Instância • Consulta a Ontologia

  18. Satisfatibilidade • Um conceito é satisfatível com respeito a um TBox T se existe uma interpretação I de T tal que CIé não vazio. Neste caso dizemos que I é um modelo de T.

  19. Satisfatibilidade - Exemplo TBox • Mulher ≡ Pessoa ┌┐ Fêmea • Mãe ≡ Mulher ┌┐ temFilho. Pessoa Teste de Satisfatibilidade • Mãe(a) ≡ Mulher(a) ┌┐ temFilho(a,b) • Mãe(a) ≡ (Pessoa(a) ┌┐ Fêmea(a)) ┌┐ temFilho(a,b)

  20. Insatisfatibilidade - Exemplo TBox • Mulher ≡ Pessoa ┌┐ Fêmea • Homem ≡ Pessoa ┌┐ ¬Mulher • Hermafrodita ≡ Homem ┌┐ Mulher Teste de Satisfatibilidade • Hermafrodita(a) ≡ Homem(a) ┌┐ Mulher(a) • Hermafrodita(a) ≡ Pessoa(a) ┌┐ ¬Mulher(a) ┌┐Mulher(a)

  21. Subsunção • Um conceito C é classificado por um conceito D com respeito a um TBox T se CI DI para toda interpretação I de T. Neste caso escrevemos C T D ou T ╞ C  D . • O conceito D é chamado classificador • O conceito C é chamado classificado.

  22. Subsunção - Exemplo TBox • Mulher ≡ Pessoa ┌┐ Fêmea • Mãe ≡ Mulher ┌┐ temFilho. Pessoa Relacionamento entre os conceitos • Mãe  Mulher • Classificador : Mulher • Classificado : Mãe

  23. Conseqüência Lógica • Se todo modelo da BC A é também modelo da BC B, então B é Conseqüência Lógica de A • TBox: • teaches.Course Undergrad └┘ Professor • ABox: • teaches ( john , cs415 ) ; Course ( cs415 ) ; • Undergrad ( john ) • Professor ( john )?

  24. Checagem de Equivalência • Dois conceitos C e D são equivalentes com respeito a um TBox T se CI= DI para toda interpretação I de T. Neste caso escrevemos C ≡T D ou T ╞ C ≡ D .

  25. Checagem de Equivalência - Exemplo TBox • Mulher ≡ Pessoa ┌┐ Fêmea • Homem ≡ Pessoa ┌┐ ¬Mulher • Masculino ≡ Pessoa ┌┐ ¬Fêmea Expansão do TBox e Simplificação • Homem ≡ Pessoa ┌┐ ¬ Mulher • Homem ≡ Pessoa ┌┐ ¬(Pessoa ┌┐ Fêmea) • Homem ≡ Pessoa ┌┐ (¬Pessoa └┘ ¬Fêmea) • Homem ≡ (Pessoa ┌┐ ¬Pessoa) └┘(Pessoa ┌┐ ¬Fêmea) • Homem ≡ Pessoa ┌┐ ¬Fêmea Relacionamento entre os conceitos • HomemI= MasculinoI

  26. Checagem de Consistência • Um ABox A é consistente com relação a um TBox T se existe uma interpretação que é modelo de ambos, A e T.

  27. Checagem de Consistência - Exemplo TBox • Mulher ≡ Pessoa ┌┐ Fêmea • Homem ≡ Pessoa ┌┐ ¬Mulher • Pai ≡ Homem ┌┐ temFilho. Pessoa ABox • Mulher(Jaguaraci) • Pai(Jaguaraci) • temFilho(Jaguaraci, Ana) • Mulher(Jaguaraci) ≡ Pessoa(Jaguaraci) ┌┐ Fêmea(Jaguaraci) • Pai(Jaguaraci) ≡ Homem(Jaguaraci) ┌┐temFilho(Jaguaraci, Ana) • Homem(Jaguaraci) ≡ Pessoa(Jaguaraci) ┌┐ ¬Mulher(Jaguaraci)

  28. Checagem de Instância • Verifica se um dado indivíduo é uma instância de um conceito específico. • Exemplo: TBox Mulher ≡ Pessoa ┌┐ Fêmea Mãe ≡ Mulher ┌┐ temFilho. Pessoa ABox Mulher(Maria) temFilho(Maria,Pedro) Checagem de Instância Mãe(Maria) Mãe(Maria) ≡ Mulher(Maria) ┌┐ temFilho. Pessoa

  29. Consulta a Ontologia • Encontra os indivíduos na base de conhecimento que são instâncias de um dado conceito. • Exemplo: ABox Mulher(Maria) Homem(João) Homem(Pedro) Resposta da Consulta Homem → João, Pedro Mulher → Maria

  30. Redução • É possível implementar os serviços de raciocínio para o TBox a partir da satisfatibilidade ou da subsunção dependendo da lógica de descrições utilizada. • Interseção (┌┐) e conceito de insatisfatibilidade (┴) : Redução a Subsunção. • Interseção (┌┐) e negação (¬) : Redução a Satisfatibilidade.

  31. Redução a Subsunção • Proposição (Redução a Subsunção) Para conceitos C e D temos: (i) C é INSAT C  ┴ ; (ii) C = D  (C  D) ┌┐ (D  C); (iii) C e D disjuntos  (C ┌┐ D)  ┴ .;

  32. Redução a Satisfatibilidade • Proposição ( Redução a Satisfatibilidade ) Para conceitos C e D temos: (i) C  D  (C ┌┐ ¬D)  ┴ . (ii) C = D  (( C ┌┐ ¬D) ┴) ┌┐ ((¬C ┌┐ D )  ┴); (iii) C e D disjuntos  (C ┌┐ D)  ┴

  33. Algoritmo Tableau • Ao invés de testar diretamente a subsunção dos conceitos, este algoritmo usa a negação para reduzir a subsunção a (in)satisfatibilidade dos conceitos. C  D se somente se C ┌┐¬D é INSAT

  34. Algoritmo Tableau C  D se somente se (C ┌┐¬D)  ┴ • C  D ≡ C → D • C → D ≡ ¬C└┘D • Para realizar o algoritmo tableau é necessário negar a expressão (¬C └┘D) e chegar a insatisfatibilidade. • ¬(¬C └┘D) ≡ C ┌┐¬D • C ┌┐¬D é insatisfatível

  35. Exemplo • Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐(R.B) é subclasse de R.(A ┌┐ B). • C = (R.A) ┌┐(R.B) ┌┐(¬ R.(A ┌┐ B)) • Forma normal de negação: C0 = (R.A) ┌┐(R.B) ┌┐R.(¬A └┘¬B))

  36. Construir uma interpretação finita I tal que C0I . • Gerar um indivíduo b tal que b  C0I . • b  (R.A)I, b  (R.B)I , b  R.(¬A └┘¬B)I. • b  (R.A)I  deve existir um indivíduo c tal que (b,c)  RI e c  AI . • b  (R.B)I  deve existir um indivíduo d tal que (b,d)  RI e d  BI .

  37. b  R.(¬A └┘¬B)I. • c  (¬A └┘¬B)I e d  (¬A └┘¬B)I . • c  (¬A └┘¬B)I  c  (¬A)I ou c  (¬B)I . • d  (¬A └┘¬B)I  d  (¬A)I ou d  (¬B)I . • Conclusão: (R.A) ┌┐(R.B) não é subclasse de R.(A ┌┐ B)

  38. Algoritmo Tableau • As restrições são expressadas como declarações do ABox. • Seja C0 um conceito ALCN na forma de negação normal. • O algoritmo inicia com o ABox A0 = {C0(x0)}. • Utilizar as Regras de transformação do algoritmo de satisfatibilidade, até que nenhuma delas possa ser usada. • ABox Completo – ABox onde todos os ramos possíveis foram expandidos.

  39. Regras – Lógica Proposicional R1=H ┌┐ G R2=H └┘ G R3=HG H G H G H G R4=HG R5=H R6=(H ┌┐ G) H H┌┐G H┌┐G H G R7=(H └┘ G) R8=(HG) R9=(HG) H H G G H┌┐G H┌┐G

  40. Regras – DL (ALC) R1=(H ┌┐ G)(x) R2=(H └┘ G)(x) H(x) G(x) H(x) G(x) R3= (R.C)(x) C(y) R(x,y) R4= (R.C)(x) e R(x,y) C(y) onde y é um nome de indivíduo que não ocorre em A

  41. Regras – DL (N) R6= (nR)(x)R7= (nR)(x) R(x,z1) R(x,z1) R(x,z2) R(x,z2) : : R(x,zn) R(x, zn) R(x, zn+1) zi≠zj não está em KB (com i≠j) zi=zj

  42. Regras – DL (R+) R8= (R.C)(x) e R+ C(y) (R.C)(x) onde C não é atômico Problema - Regra gera recursividade Solução - Bloqueio, após perceber que nada de novo está sendo gerado

  43. Regras – DL (R+)

  44. Regras – DL (R+)

  45. Regras – DL (R+)

  46. Algoritmo Tableau • Um conceito C é insatisfatível sse KB ┌┐ C = ┴ em todas as interpretações • Cada ramo do Abox contém uma contradição (clash) de um dos seguintes tipos: 1. {┴ (x)}  KB para algum nome de indivíduo x; 2. {A(x), ¬A(x)}  KB para algum nome de indivíduo x e algum nome de conceito A; 3. (nR)(x)  R(x,yi) | 1  i  n+1}  {yi  yj | 1  i  j  n+1}  KB para nomes de indivíduos x, y1,..., yn+1 , um inteiro não negativo n e um nome de papel R.

  47. Aplicação do Tableau : Exemplo 1 • Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐ (R.B) é subclasse de R.(A ┌┐ B). • C = (R.A) ┌┐ (R.B) ┌┐ (¬ R.(A ┌┐ B)) Forma normal de negação: • C0 = (R.A) ┌┐ (R.B) ┌┐R.(¬A └┘ ¬B))

  48. Aplicação do Tableau : Exemplo 2 • Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐ (R.B) ┌┐ 1 R é subclasse de R.(A ┌┐ B). • C = (R.A)┌┐(R.B)┌┐( 1 R)┌┐(¬ R.(A┌┐ B)) Forma normal de negação: • C0 = (R.A)┌┐(R.B)┌┐( 1 R)┌┐R.(¬A└┘ ¬B))

More Related