Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin...

50
Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Amanda Pimentel Jacques Robin Jacques Robin CIn-UFPE CIn-UFPE

Transcript of Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin...

Page 1: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Ontologias e Representação do Conhecimento

Orientada a Objetos

Amanda PimentelAmanda Pimentel

Jacques RobinJacques Robin

CIn-UFPECIn-UFPE

Page 2: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Roteiro

Limitações da lógica como formalismo de representação do Limitações da lógica como formalismo de representação do conhecimentoconhecimento

Formalismos de representação do conhecimento orientado a objetosFormalismos de representação do conhecimento orientado a objetos Redes semânticas UML: redes semânticas utilizadas no nível certo Frames: a volta dos procedimentos Linguagens de programação orientadas a objetos como FRC Lógicas descritivas: a volta vingativa da lógica

OntologiasOntologias Definição e origens Tipologia das ontologias e suas aplicações Ontologias e reuso de conhecimento Ontologias já estudadas na disciplina Áreas da engenharia ontológica Linguagens de representação de ontologias Web semântica: o renascimento das ontologias e dos FRCOO Arquitetura de software dirigido por modelos: ontologias entram no

mainstream Catálogo das ontologias disponíveis

Page 3: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Formalismo de Representação do Conhecimento Orientados a Objetos

(FRCOO)

Page 4: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Limitações da lógica como formalismos de representação do conhecimento

Complexa Representação Complexa Representação

- Entendimento- Entendimento

Surgimento cognitivoSurgimento cognitivo

- Sem usar lógica- Sem usar lógica

“ “non-logical” FRC foram desenvolvidos motivados pela crença que non-logical” FRC foram desenvolvidos motivados pela crença que lógica (clássica) é inadequada para representação do conhecimento lógica (clássica) é inadequada para representação do conhecimento em aplicações IA. em aplicações IA.

Page 5: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Redes semântica: construtores

Uma rede semântica é uma representação na qualUma rede semântica é uma representação na qual existem nós que representam entidades e links

(predicados) que representam relacionamentos entre essas entidades;

cada link conecta um nó origem até um nó destino; normalmente, os nós e links denotam entidades de domínio

específico.

Forma mais flexível e intuitiva de representar Forma mais flexível e intuitiva de representar conhecimento.conhecimento.

Page 6: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Redes semânticas: serviços de inferência

Base de conhecimentoBase de conhecimento nós e links da rede.

Máquina de inferênciaMáquina de inferência busca e casamento de padrões a busca se dá para frente e para trás através dos links.

A busca pode ser usada de várias maneiras para se extrair A busca pode ser usada de várias maneiras para se extrair informações informações como uma ferramenta explicativa; para explorar exaustivamente um tópico; para encontrar o relacionamento entre dois objetos.

Page 7: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Redes semânticas: exemplo

Page 8: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Redes semânticas: limitações

Duas limitações principais das redes semânticas:Duas limitações principais das redes semânticas: 1. 1. Computacionalmente incompletos para implementar a maioria dos sistemas Computacionalmente incompletos para implementar a maioria dos sistemas

inteligentesinteligentes 2. Sem semântica declarativa formal bem-definida (atalho entre nível do 2. Sem semântica declarativa formal bem-definida (atalho entre nível do

conhecimento e nível da implementação sem lógica)conhecimento e nível da implementação sem lógica) Frames são sucessores das redes semânticas visando a superar a 1Frames são sucessores das redes semânticas visando a superar a 1aa

limitação limitação Lógicas descritivas são sucessores das redes semânticas visando a Lógicas descritivas são sucessores das redes semânticas visando a

superar a 2superar a 2aa limitação limitação Busca em redes semânticas grandes pode ser muito ineficiente.Busca em redes semânticas grandes pode ser muito ineficiente. Não há homogeneidade na definição de nós e links.Não há homogeneidade na definição de nós e links. Hereditariedade pode causar dificuldades no tratamento de exceções.Hereditariedade pode causar dificuldades no tratamento de exceções. Pode haver conflito entre características herdadas.Pode haver conflito entre características herdadas. É difícil representar conhecimento procedimentalÉ difícil representar conhecimento procedimental

seqüenciamento e tempo não estão explícitos. Menos expressiva que a Lógica de Primeira Ordem Menos expressiva que a Lógica de Primeira Ordem

não há quantificadores

Page 9: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Redes semânticas no 3o milênio: diagramas de classes e de objetos UML

Page 10: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Vantagens de UML sobre redes semânticas

Padrão - rede semântica nunca padronizou nem notação nem Padrão - rede semântica nunca padronizou nem notação nem ferramenta de ediçãoferramenta de edição

Links bens definidos - composição, agregação, ... Links bens definidos - composição, agregação, ...

Trabalha a nível do conhecimentoTrabalha a nível do conhecimento

Gráfico - bom para modelar Gráfico - bom para modelar

Page 11: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

 Frames

Um frame é identificado por um nome e descreve um objeto Um frame é identificado por um nome e descreve um objeto complexo através de um conjunto de atributoscomplexo através de um conjunto de atributos

Um Um Sistema de FramesSistema de Frames é um conjunto de frames é um conjunto de frames organizados hierarquicamente. organizados hierarquicamente.

São uma evolução das Redes Semânticas: São uma evolução das Redes Semânticas: nós são substituídos por frames

arcos são substituídos por atributos (slots)

procedimentos podem ser anexados a um frame

Page 12: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

 Frames: construtores

Definição do Frame– Frame: F in KB Definição do Frame– Frame: F in KB F F EE F – Nome do frameF – Nome do frame E – Expressão do frame  E – Expressão do frame   S – Nome do slot representa propriedades da situação descrita S – Nome do slot representa propriedades da situação descrita

no frameno frame H – Slots constraints (INTERSECTION, UNION, NOT)H – Slots constraints (INTERSECTION, UNION, NOT) F F - Conjunto de definições do Frame- Conjunto de definições do Frame

Page 13: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Frames - Facetas

Descrevem conhecimento ou algum procedimento relativo ao Descrevem conhecimento ou algum procedimento relativo ao atributo.atributo.

PropriedadesPropriedades Valor: especifica o único valor possível. Valor default: especifica o valor assumido pelo atributo caso não

haja nenhuma informação a esse respeito. Tipo: indica o tipo de dado do valor. Domínio: descreve os valores possíveis para o atributo.

Page 14: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Frames - Gatilhos

DefiniçãoDefinição São procedimentos anexados aos frames, disparados por

consultas ou atualizações.

Podem inferir valores para atributos a partir de valores de outros atributos especificados anteriormente em qualquer frame do sistema.

Procedimentos Demons:Procedimentos Demons: when-requested

quando o valor é pedido mas não existe ainda when-read

quando valor é lido when-written

quando valor é modificado

Page 15: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Frames: exemplo

Page 16: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Limitações dos Frames

Conhecimento comportamental não declarativo impede Conhecimento comportamental não declarativo impede codificação direita por especialista do domínio que não é codificação direita por especialista do domínio que não é programadorprogramador

Sem semântica formalSem semântica formal Implementação ad-hoc de dedução e adbução, geralmente Implementação ad-hoc de dedução e adbução, geralmente

ineficientesineficientes Não existe máquina de inferência indutivas para Não existe máquina de inferência indutivas para

aprendizagemaprendizagem Não inclui noções de encapsulamento e componentes das Não inclui noções de encapsulamento e componentes das

linguagens de programação OO modernaslinguagens de programação OO modernas

Page 17: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

LPOO como FRC: construtores

OObjetos bjetos (estado + comportamento)(estado + comportamento)

ClassesClasses

InstânciaInstância

SubclasseSubclasse

Encapsulamento (Encapsulamento (ocultamento de implementação e ocultamento de implementação e modularidademodularidade))

Page 18: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

LPOO como FRC: serviços de inferência

Rico em termos de estrutura, pobre em termos de inferênciaRico em termos de estrutura, pobre em termos de inferência

Inferência – Herança (você não programa herança)Inferência – Herança (você não programa herança)

Ex: Implementar maquina de inferência em Java Ex: Implementar maquina de inferência em Java

Trabalhoso, lento, limitadoTrabalhoso, lento, limitado

Jeops: um sistema de produção embutido em JavaJeops: um sistema de produção embutido em Java

Page 19: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

LPOO como FRC: exemplopublic class Course {public class Course {

final static short MAX_ENROLLED = 30;final static short MAX_ENROLLED = 30; final static short MIN_ENROLLED = 2;final static short MIN_ENROLLED = 2;

private Student[] enrolls; private Student[] enrolls; private Lecturer taughtby;private Lecturer taughtby;

public void setEnrolls(Student[] enrolls) {public void setEnrolls(Student[] enrolls) { if(enrolls.length >= MIN_ENROLLED &&if(enrolls.length >= MIN_ENROLLED && enrolls.length >= MAX_ENROLLED) {enrolls.length >= MAX_ENROLLED) { this.enrolls = enrolls;this.enrolls = enrolls; } else{} else{ throw new IllegalArgumentException("Enrolls must be between "+throw new IllegalArgumentException("Enrolls must be between "+ MIN_ENROLLED+" and "+MAX_ENROLLED);MIN_ENROLLED+" and "+MAX_ENROLLED); }} }} ......}}

Page 20: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

LPOO como FRC: exemplo

public class BasCourse extends Course {public class BasCourse extends Course {

public BasCourse() {public BasCourse() {

}}

public void setTaughtby(Lecturer taughtby) {public void setTaughtby(Lecturer taughtby) {

if(taughtby instanceof Professor){if(taughtby instanceof Professor){

this.setTaughtby(taughtby);this.setTaughtby(taughtby);

} else {} else {

throw new IllegalArgumentException("Lecurer must be an throw new IllegalArgumentException("Lecurer must be an Professor to teach an BasCourse");Professor to teach an BasCourse");

}}

}}

}}

Page 21: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: princípios

Usar lógica para definir formalmente semântica de formalismos Usar lógica para definir formalmente semântica de formalismos de representação de conhecimento OO.de representação de conhecimento OO.

Estudar computabilidade e complexidade das linguagens e Estudar computabilidade e complexidade das linguagens e serviços de inferência antes de implementá-los.serviços de inferência antes de implementá-los.

Limitar expressividade para garantir que esses serviços sejam Limitar expressividade para garantir que esses serviços sejam computacionalmente tratáveis.computacionalmente tratáveis.

Page 22: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: conceitos chaves

Utilizar lógica para dar semântica a hierarquia OOUtilizar lógica para dar semântica a hierarquia OO Formalismos lógicos para representação das informações sobre Formalismos lógicos para representação das informações sobre

classes de indivíduos e suas descrições.classes de indivíduos e suas descrições. Subconjunto da lógica de primeira ordem, trata de:Subconjunto da lógica de primeira ordem, trata de:

Relações unárias (conceitos) Ex, Student = {x | Student(x)}

Relações binárias (papéis); Ex, SUPERVISED = {(x,y) | SUPERVISED(x,y) }

Possui também:Possui também: Construtores sobre os conceitos (,, outros)

Ex, PdhStudent = Student SUPERVISED.AcademicStaff = { x | Student(x) y.SUPERVISED(x,y) AcademicStaff(y) }

Indivíduos, e instâncias dos conceitos franklin, jacques, thiago; Student(thiago), PhdStudent(franklin), Researcher(jacques)

Page 23: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: construtores

Page 24: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: bases de conhecimento

KB = Tbox + AboxKB = Tbox + Abox Tbox (Terminological part) - Tbox (Terminological part) - intensional knowledgeintensional knowledge

DescriçõesDescrições Exemplo:

Woman = Person Female

Abox (Assertional part) - extensional knowledgeAbox (Assertional part) - extensional knowledge

InstânciasInstâncias Exemplos:

Female Person (Anna) hasChild (Anna, Jacopo)

Page 25: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: serviços de inferência

Dada uma base de conhecimento Dada uma base de conhecimento = <Tbox,Abox>, dois = <Tbox,Abox>, dois conceitos C e D, e um indivíduo a, chamamos:conceitos C e D, e um indivíduo a, chamamos:

Satisfiability: |= C Verificar se há um modelo I de tal que CI Exemplo: Student Person ?

Subsumption: |= C D Verificar se C é subsumed por D. CI DI em todo modelo I de Exemplo: Employee Person Student ?

Consistência: |= Verificar se a própria base tem um modelo. Exemplo: Student = Person ?

Classificação de instância: |= C(a) Verificar se uma dada asserção é válida. Exemplo: Person(joao)

Page 26: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: exemplos

Course Course enrolls.Student enrolls.Student 2 enrolls 2 enrolls 30 enrolls 30 enrolls taughtby.(Professor taughtby.(Professor GradStudent) GradStudent) =1taughtby=1taughtby

AdvCourse AdvCourse Course Course enrolls. GradStudent enrolls. GradStudent 20 enrolls 20 enrolls BasCourse BasCourse Course Course taughtby.Professor taughtby.Professor GradStudent GradStudent Student Student degree.String degree.String = = 1 degree1 degree Undergrad Undergrad Student Student

GradStudent(João)GradStudent(João) Taughtby(Jacques,UFPE)Taughtby(Jacques,UFPE)

Page 27: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: aplicações práticas

Modelagem de AplicaçõesModelagem de Aplicações

- entendimento retirando inconsistências- entendimento retirando inconsistências

Engenharia de SoftwareEngenharia de Software

- Uma das primeiras aplicações : usar DL para um sistema de - Uma das primeiras aplicações : usar DL para um sistema de softwaresoftware

ConfiguraçãoConfiguração

- Incluem aplicações que suportam o design de sistemas - Incluem aplicações que suportam o design de sistemas complexos criados pela combinação de componentescomplexos criados pela combinação de componentes

MedicinaMedicina

- Construção de ontologias de conhecimento médico- Construção de ontologias de conhecimento médico

Page 28: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Lógicas descritivas: limitações

DL não trata bem de conceitos quantitativos tais como ordem, DL não trata bem de conceitos quantitativos tais como ordem, quantidade, tempo e taxas.quantidade, tempo e taxas.

Limitar expressividade para garantir que esses serviços sejam Limitar expressividade para garantir que esses serviços sejam computacionalmente tratáveis.computacionalmente tratáveis.

Definição cíclica Definição cíclica

Ex: Pessoa – filho (pessoa)Ex: Pessoa – filho (pessoa)

Page 29: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Ontologias

Page 30: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

O que é uma ontologia ?

Definição: Definição: especificação (semi-)formal explícita de uma especificação (semi-)formal explícita de uma concepção compartilhadaconcepção compartilhada

Concepção: Concepção: modelo das entidades, relações, axiomas e regras de algum domínio

Formal:Formal: processável por máquina com semântica lógica formal

Compartilhada:Compartilhada: por uma comunidade, permitindo entendimento

Conceitos de computação relacionados:Conceitos de computação relacionados: Base de conhecimento reutilizável Esquema de banco de dados

Page 31: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Origem e motivação para ontologias

Gerenciamentodo Conhecimentoem Organizações

desde 90

Integraçãode Dadosdesde 95

SistemasMulti-agentes

desde 95

Recuperaçãode Informação

na Webdesde 00

PsicologiaCognitivadesde 60

Lingüísticadesde 60

SistemasEspecialistas

desde 80

Processamentode Linguagem

Naturaldesde 80

OntologiasFilosofia

desde 350 A.C.

Engenhariade Software:

requisitos e reusodesde 90

Page 32: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Tipologias das ontologias

Especialista:Especialista: modela um domínio particular restrito modela um domínio particular restrito Geral:Geral:

inclue vocabulário relacionado a coisas eventos, tempo, espaço, etc

modela o conhecimento de senso comum compartilhado por todos os seres humanos

parte de mais alto nível, reutilizável em vários domínios Conceitual:Conceitual: fundamentada na capacidade de raciocinar fundamentada na capacidade de raciocinar Lingüística:Lingüística: fundamenta no vocabulário de uma(s) língua(s) fundamenta no vocabulário de uma(s) língua(s) De meta-dados:De meta-dados: “especializada” na descrição de recursos on- “especializada” na descrição de recursos on-

line, no entanto sobre qualquer domínioline, no entanto sobre qualquer domínio De tarefas e métodos:De tarefas e métodos: modela procedimentos e modela procedimentos e

comportamentos abstratos no lugar de entidades ou relaçõescomportamentos abstratos no lugar de entidades ou relações

Page 33: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Elementos de uma ontologia

Hierarquia de conceitos:Hierarquia de conceitos: entidades

cada entidade definida por conjunto de pares atributo-valor correspondem:

as classes dos modelos orientado a objetos as entidades do modelo relacional aos termos do modelo lógico

relações sem hierarquia x em hierarquia paralela a hierarquia de entidades correspondem:

associações, agregações e atributos dos modelos OO cujos valores são objetos

as relações do modelo relacional aos predicados do modelo lógico

Page 34: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Elementos de uma ontologia

Restrições:Restrições: sobre valores possíveis dos atributos do conceitos correspondem:

as assinaturas de classes em modelos OO as axiomas universalmente quantificados em modelos lógicos as restrições de integridade nos esquema de BD

Regras dedutivas:Regras dedutivas: permitem inferência automática da existência de instâncias

de conceitos a partir da existência de outras instâncias correspondem:

as regras dos sistemas especialistas e programação em lógica aos métodos dos modelos OO as visões em BD

Page 35: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Elementos de uma ontologia

Instâncias de conceitos:Instâncias de conceitos: definição de entidade e relações específicos (indivíduos) correspondem:

aos fatos de sistemas especialistas e programação em lógica aos objetos dos modelos OO aos dados dos BD

Page 36: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Ontologias e reuso de conhecimento

G

D1

AP1

G

D1

AP2

G

D2

AP1

G

D2

AP2

Aplicação 1 Aplicação 2

Domínio 1

Domínio 2

Page 37: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Sub-problemas de modelagem de uma ontologia geral

Categorias e conjuntosCategorias e conjuntos MedidasMedidas Objetos compostosObjetos compostos TempoTempo EspaçoEspaço MudançasMudanças Eventos e processosEventos e processos Objetos físicosObjetos físicos SubstânciasSubstâncias Objetos mentais e crençasObjetos mentais e crenças

Page 38: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Engenharia ontológica: categorias

Também chamadas de classes, relações, tipos ...Também chamadas de classes, relações, tipos ... conjuntos de objetos com propriedades comuns organiza e simplifica a base de conhecimento.

Exemplos de simplificação:Exemplos de simplificação: através de herança

todo mamífero bebe leite

Taxonomia: Taxonomia: tipo particular de ontologia:

relações hierárquicas entre classe e sub-classes em forma de árvores

Page 39: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Engenharia ontológica: categorias

DisjunçãoDisjunção

- não há interseção entre as categorias- não há interseção entre as categorias ex. Disjunção({Animais, Vegetais})

Decomposição exaustivaDecomposição exaustiva ex. DecomposiçãoExaustiva({Americano, Canadense, Mexicano}, Norte-

Americano)

PartiçãoPartição

- - decomposição exaustiva disjuntadecomposição exaustiva disjuntaex.. Partição(({macho, fêmea}), animal)

Page 40: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Engenharia ontológica: medidas

Valores atribuídos aos objetos do mundo real: servem para Valores atribuídos aos objetos do mundo real: servem para descrever objetosdescrever objetos ex. peso, comprimento, altura, diâmetro, ...

Medidas quantitativas são fáceis de representarMedidas quantitativas são fáceis de representar ex. Tamanho(L1) = Polegadas(1,5) = Centímetros (3,81)

Medidas qualitativas são mais complicadas Medidas qualitativas são mais complicadas ex. beleza de um poema, dificuldade de um exercício O importante é ordenar

e1, e2 e1 Exercícios e2 Exercícios Elabora(João,e1) Elabora(Pedro,e2) Dificuldade(e1) < Dificuldade(e2)

Page 41: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Engenharia ontológica: Objetos Compostos

Objetos formados por partes que também são objetosObjetos formados por partes que também são objetos São caracterizados pela estrutura dos objetos que os compõem ex. massa de um carro é a soma das massas de suas

partes(carroceria, motor, pneu, ...) Para representá-los, usamos a relação Para representá-los, usamos a relação ParteDeParteDe

e.g., ParteDe(motor, Carro), ParteDe(pneu, Carro) Exemplo:Exemplo:

a Bipede(a) l1, l2, b Perna(l1) Perna(l2) Corpo(b) ParteDe(l1,a) ParteDe(l2,a)ParteDe(b,a)

Ligado(l1,b) Ligado(l2,b) l1 l2 l3 Perna(l3) ParteDe(l3,a) (l3 = l1 l3 = l2)

Page 42: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Linguagens de representação de ontologias

Lógicas descritivas: LOOM, Classic, FaCT, ...Lógicas descritivas: LOOM, Classic, FaCT, ... Linguagens de interoperabilidade entre agentes: KIFLinguagens de interoperabilidade entre agentes: KIF Programação em Lógica OO: Flora, Lopix, SirliProgramação em Lógica OO: Flora, Lopix, Sirli Linguagens específicas para ontologias antes da iniciativa Web Linguagens específicas para ontologias antes da iniciativa Web

Semântica da W3C: OntolinguaSemântica da W3C: Ontolingua Linguagens de Web semântica: XMLS (esquema para documentos XML) RDFS (essencialmente redes semânticas distribuidas na web) DAML-OIL e OWL (essencialmente lógicas descritivas distribuidas

na web) RuleML (essencialmente regras Prolog e regras de produção

distribuídas na web) UMLUML

Page 43: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Web semântica

Torna pesquisa de ontologia atualTorna pesquisa de ontologia atual

Uma das aplicações de ontologiaUma das aplicações de ontologia

Extensão da Web atualExtensão da Web atual

Tentar contornar a falta de precisão dos engenhos de buscaTentar contornar a falta de precisão dos engenhos de busca

Informação estruturada e com semântica bem definidaInformação estruturada e com semântica bem definida

Agentes computacionais capazes de processar e entender os Agentes computacionais capazes de processar e entender os dadosdados

Page 44: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Web semântica Arquitetura

Dados

Web Semântica

Engenho de Busca

Ontologia Ontologia Ontologia

Camada deEstrutura

Camada deEsquema

Regras de InferênciaCamadaLógica

… E-commerce

Page 45: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Web semântica Arquitetura

Camada de EstruturaCamada de Estrutura

- Responsável por estruturar os dados e definir seu significado- Responsável por estruturar os dados e definir seu significado Camada de EsquemaCamada de Esquema

- Responsável por definir relações entre os dados- Responsável por definir relações entre os dados

- Ontologia: “Entendimento comum e compartilhado de um - Ontologia: “Entendimento comum e compartilhado de um domínio”domínio”

- Uso de ontologias em páginas web torna mais simples a - Uso de ontologias em páginas web torna mais simples a resolução de indefinição ou conflito de terminologiaresolução de indefinição ou conflito de terminologia

Camada Lógica Camada Lógica

- Responsável por definir mecanismos para fazer inferência - Responsável por definir mecanismos para fazer inferência sobre os dadossobre os dados

- Composta por um conjunto de regras de inferência- Composta por um conjunto de regras de inferência

- Regras de inferência fornecem aos agentes computacionais - Regras de inferência fornecem aos agentes computacionais o poder de raciocinar sobre as estruturas de dadoso poder de raciocinar sobre as estruturas de dados

Page 46: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Arquitetura de software dirigida por modelos

Model-driven architecture, an OMG standardModel-driven architecture, an OMG standard

httphttp://www.://www.omgomg..orgorg//

Page 47: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Catálogo de ontologias disponíveis

www.www.damldaml..orgorg

Page 48: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Problemática geral e questões sobre ontologias

Divisão:Divisão: como delimito as classes e os atributos? quais são as distinções que trazem valor agregado?

Escopo: Escopo: qual conhecimento incluir? qual a fronteira do meu domínio?

Granularidade: Granularidade: até que nível de detalhe modelar os domínio? problema da ramificação?

Validação: Validação: como avalio a qualidade do modelo? como escolho entre várias modelagem alternativas (as vezes propostas

por pessoas diferentes)?] como identificar aspectos importantes que estão faltando?

Page 49: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Problemática geral e questões sobre ontologias

Muito difícil responder a essas perguntas porque:Muito difícil responder a essas perguntas porque: Almejados reuso e relativa independência de aplicação impedem

ser guiado completamente pelos requisitos de uma aplicação restrita

Para ontologias gerais de senso comum pior devido a imensidão em largura e profundidade do conhecimento a modelar

Metodologias ainda incipientesMetodologias ainda incipientes

No entanto, já existe tentativa de padronização: No entanto, já existe tentativa de padronização: httphttp://suo.ieee.://suo.ieee.orgorg//

Page 50: Ontologias e Representação do Conhecimento Orientada a Objetos Amanda Pimentel Jacques Robin CIn-UFPE.

Referências e links

The Description Logic Handbook : Theory, Implementation and The Description Logic Handbook : Theory, Implementation and ApplicationsApplicationsFranz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi, Peter Patel-Schneider

Ontological Engeneering: a state of the arteAsunción Goméz Peréz

Artificial Intelligence a Modern Approach (2nd Edition), S. Russell & P. Norvig, 2002, Prentice-Hall.

Ontologies, the Silver Bullet for Knowledge Management and Electronic Commerce, D. Fensel. 2001, Springer-Verlag.

www.www.damldaml..orgorg httphttp://www.://www.omgomg..orgorg// http://www.cin.ufpe.br/~in1006/2003http://www.cin.ufpe.br/~in1006/2003