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

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

Raciocínio em Lógica de Descrições Menandro Ribeiro Santana.

Apresentações semelhantes


Apresentação em tema: "Raciocínio em Lógica de Descrições Menandro Ribeiro Santana."— Transcrição da apresentação:

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 DLs Uma interpretação é um par, 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 DLs

7

8 S = FL- +AL*+ papéis transitivos –SHIQ Famílias de DLs

9 Base de Conhecimento em DL Par 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 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. TBox

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 Um conceito é satisfatível com respeito a um TBox T se existe uma interpretação I de T tal que C I é não vazio. Neste caso dizemos que I é um modelo de T. Satisfatibilidade

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 C I D I 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 Dois conceitos C e D são equivalentes com respeito a um TBox T se C I = D I para toda interpretação I de T. Neste caso escrevemos C T D ou T C D. Checagem de Equivalência

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 Homem I = Masculino I

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 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 Algoritmo Tableau

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: C 0 = ( R.A) ( R.B) R.( ¬ A ¬ B))

36 Construir uma interpretação finita I tal que C 0 I. –Gerar um indivíduo b tal que b C 0 I. –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) R I e c A I. –b ( R.B) I deve existir um indivíduo d tal que (b,d) R I e d B I.

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 As restrições são expressadas como declarações do ABox. Seja C 0 um conceito ALCN na forma de negação normal. O algoritmo inicia com o ABox A 0 = {C 0 (x 0 )}. 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. Algoritmo Tableau

39 R1=H G R2=H G R3=H G H G H G H G R4=H GR5= H R6= (H G) H H G H G H G R7= (H G) R8= (H G) R9= (H G) HH G G H G H G Regras – Lógica Proposicional

40 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) Regras – DL (ALC) onde y é um nome de indivíduo que não ocorre em A

41 R6= ( nR)(x) R7= ( nR)(x) R(x,z1) R(x,z2) : R(x,zn) R(x, zn) R(x, zn+1) zizj não está em KB (com ij) zi=zj Regras – DL (N)

42 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 Regras – DL (R + )

43

44

45

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,y i ) | 1 i n+1} {y i y j | 1 i j n+1} KB para nomes de indivíduos x, y 1,..., y n+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: –C 0 = ( R.A) ( R.B) R.(¬A ¬B))

48

49 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: –C 0 = ( R.A) ( R.B) ( 1 R) R.(¬A ¬B))

50

51 Aplicação do Tableau : Exemplo 3 Seja a BC –Conference progChair.Person – progChair.T Event –Conference (eswc) Provar –Event(eswc) –Verificar se Conference (eswc) ¬Event(eswc) é insatisfatível

52 Aplicação do Tableau : Exemplo 3

53 OTIMIZAÇÕES EM SISTEMAS DE RACIOCÍNIO

54 Expansão do TBox - Unfold Pode-se reduzir os problemas de raciocínio com relação a um TBox acíclico T para problemas com respeito ao TBox vazio. –TBox vazio: TBox no qual todos os conceitos complexos são definidos apenas com a utilização de conceitos primitivos. –Necessário expandir as definições de conceitos armazenados no TBox. –Permite encontrar mais facilmente as semelhanças entre conceitos, contradições, etc.

55 Cada definição está na forma A D onde D contém somente símbolos base. –OBS: A D pode ser substituído por A Ā D, sendo que Ā é um novo símbolo base. Para cada conceito C, definimos a expansão de C com respeito a T como o conceito C que é obtido de C pela substituição de cada ocorrência de um nome de símbolo A em C pelo conceito D. Expansão do TBox

56 Expansão do TBox - Exemplo Mulher Pessoa Fêmea Homem Pessoa ¬Mulher Mãe Mulher temFilho. Pessoa Pai Homem temFilho. Pessoa Pais Pai Mãe

57 Expansão do TBox - Exemplo Mulher Pessoa Fêmea Homem Pessoa ¬ (Pessoa Fêmea) Mãe (Pessoa Fêmea) temFilho. Pessoa Pai (Pessoa ¬ (Pessoa Fêmea)) temFilho. Pessoa Pais ((Pessoa ¬ (Pessoa Fêmea)) temFilho. Pessoa) ((Pessoa Fêmea) temFilho. Pessoa)

58 Otimizações de pré- processamento Normalização Absorção

59 Normalização Simplificação da BC identificando : –Equivalências sintáticas –Contradições e –Tautologias Todos os conceitos devem ser modificados para se adequar a um formato padrão –Utiliza apenas o conjunto completo de conectivos ¬ e.

60 Normalização Exemplos: (¬D ¬C) é transformado em ¬(D C). R. é simplificado para.

61 Absorção Eliminação de axiomas gerais aumentando a definição destes axiomas. –Axiomas gerais na forma C D, C é um conceito não atômico São manipulados até chegar em A D, onde A é atômico. –Este axioma pode então ser fundido dentro de uma definição primitiva existente A C, para resultar em A C D.

62 Regras de Absorção A B D, A atômico A D ¬ B. A B D, A atômico A D ¬ B.

63 Absorção Exemplo: (Homem temFilho.Pessoa Pai) resulta em (Homem Pai ¬ temFilho.Pessoa) Homem ¬ Mulher Absorção: Homem ¬ Mulher (Pai ¬ temFilho.Pessoa)

64 Otimizações de Classificação Hierarquia de conceitos representada por um grafo acíclico direto –Nós são rotulados com os nomes dos conceitos –Arcos correspondem a relações de classificação Um conceito A classifica um conceito B se: –Ambos A e B estão no rótulo do mesmo nó x –A está no rótulo de algum nó x, e existe um arco (x,y) no grafo e um conceito (s) no rótulo do nó y, que classifica B.

65 Otimizações de Classificação Hierarquia de conceitos representada por um grafo acíclico direto –Nós são rotulados com os nomes dos conceitos –Arcos correspondem a relações de classificação Um conceito A classifica um conceito B se: –Ambos A e B estão no rótulo do mesmo nó x –A está no rótulo de algum nó x, e existe um arco (x,y) no grafo e um conceito (s) no rótulo do nó y, que classifica B.

66 Otimizações de Classificação Minimização do número de testes de classificação através de algoritmos de busca que percorrem o grafo: –Da base para o topo: encontra conceitos classificados –Do topo para a base: encontra conceitos classificadores. São encontradas as classificações óbvias, diminuindo o custo de processamento causado pelo teste de classificação.

67 Otimizações de Classificação Transitividade da relação de subsunção: –Se A não é subclasse de B, então ele não pode ser subclasse de nenhum outro conceito que seja subclasse de B. Busca do topo: testa se A classifica B somente quando se sabe que B é subclasse de todos os conceitos que classificam A. Busca da base: testa se A classifica B somente quando se sabe que A classifica todos os conceitos que são subclasse de B.

68 Otimizações do Teste de Subsunção Detecta não-classificações óbvias. Baseia-se no armazenamento das árvores de expansão construídas anteriormente para evitar repetições futuras. Exemplo: A C R 1 C 1 R 2 C 2 B ¬D R 3 C 3. Provar que A não é subclasse de B A ¬B é satisfatível

69 Otimizações do Teste de Subsunção

70 Otimizações do Teste de Satisfatibilidade Teste realizado após a execução de todas as otimizações. –Diminuição de custo computacional. Algoritmo Tableau –Padrão: Ramos Sintáticos –Otimizado: Ramos Semânticos

71 Ramos Semânticos Ramos sintáticos –Ao expandir um nó do grafo (árvore), escolhe- se uma disjunção não expandida e inicia-se a busca pelos diferentes modelos gerados pela adição de cada um dos membros da disjunção. –Não há uma prevenção de recorrência de um conceito insatisfatível em ramos diferentes. –Alto custo dependendo da dificuldade encontrada para provar a insatisfatibilidade deste conceito disjunto.

72 Ramos Semânticos Ramos semânticos: –Ao expandir um nó do grafo (árvore), escolhe- se um dos membros isolados da disjunção não expandida e gerasse dois novos ramos, adicionando em um ramo o conceito escolhido e no outro a sua negação. –Não ocorrem buscas desnecessárias como na busca por ramos sintáticos, pois os ramos são estritamente disjuntos.

73 Ramos Semânticos Busca Sintática de Ramos Busca Semântica de Ramos

74 Bibliografia NARDI, D.; BRACHMAN, R. An Introduction to Description Logics. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel- Schneider, BAADER, F.; NUTT, W. Basic Description Logics. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, BAADER, F. Description Logic Terminology. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003.

75 Bibliografia HORROCKS, I. Implementation and Optimisation Techniques. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003a. VIEIRA, R.; ABDALLA, D.; SILVA, D. M.; SANTANA, M. R. Web Semântica: Ontologias, Lógicas de Descrições e Inferências. In: Web e Multimídia: Desafios e Soluções. PUC Minas, 2005.


Carregar ppt "Raciocínio em Lógica de Descrições Menandro Ribeiro Santana."

Apresentações semelhantes


Anúncios Google