ontologias e sua aplicação em linguagens de...

31
Ontologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni Disciplina de Modelagem de Sistemas Multiagentes - 2006/2 Prof. Ricardo Silveira – PPGCC - UFSC

Upload: others

Post on 09-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Ontologias e sua aplicação em linguagens de Comunicação

Rafael de Moura Speroni

Disciplina de Modelagem de Sistemas Multiagentes - 2006/2Prof. Ricardo Silveira – PPGCC - UFSC

Page 2: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Comunicação entre agentes

Pessoas, organizações e sistemas de software devem ser capazes de se comunicar.

A existência de conjuntos de palavras específicas para cada contexto ou assunto de uma área permite observar discrepâncias, justaposições e/ou conceitos mal compreendidos, em estruturas e métodos.

Como conseqüência, surge a falta de um entendimento comum.

Page 3: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Comunicação entre agentes

A falta de um entendimento comum conduz a:Uma comunicação pobre, dentro e entre estas pessoas e/ou organizações.Dificuldades na identificação de requisitos e deste modo na definição da especificação do sistema.Restringem a interoperabilidade;Restringem o potencial para reutilizar e compartilhar material.

Page 4: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Comunicação entre agentesComunicação entre agentes é a troca intencional de informações causada pela produção e percepção de sinais por parte dos agentes.A comunicação permite que os agentes em um ambiente multiagente troquem informações que servirão de base para coordenar suas ações e realizar cooperação.

Page 5: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Comunicação entre agentesPara que estes atos de comunicação e a cooperação entre agentes sejam possíveis, precisa-se de uma Linguagem de Comunicação entre Agentes (Agent Communication Language, ou ACL).Linguagens para comunicação entre agentes prometem ter o mesmo papel que as linguagens naturais exercem para as pessoas.

Page 6: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Linguagens de Comunicação entre agentes

Em uma ACL, é importante a forma como as mensagens são comunicadas, isto é, se as mensagens expressam adequadamente seu propósito sob um ponto de vista semântico. A comunicação entre dois agentes quaisquer épossível quando:

Tem capacidade de se comunicarCompartilham um conteúdo de conhecimento básicoCompartilham uma maneira de representar conhecimento

Page 7: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Especificações de uma ACL

A especificação preocupa-se com a descrição da estrutura da mensagem, seu modelo semântico e os protocolos de:

O formato da mensagem define os atos de comunicação primitivos e os parâmetros da mensagem (como sender, receiver, etc.). O conteúdo da mensagem descreve fatos, ações, ou objetos em uma linguagem de conteúdo (KIF, Prolog, etc).Outros parâmetros podem cuidar do significado da mensagem e sua entrega.

Page 8: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Especificações de uma ACLO modelo semântico de uma ACL estabelece os fundamentos para obter um significado conciso e não ambíguo das mensagens do agente e dos protocolos de interação.

Os protocolos de interação são conjuntos de padrões bem definidos projetados para facilitar a comunicação entre agentes.

Page 9: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Definição de Ontologias

Uma ontologia é uma especificaçãoexplícita de objetos e relações em um mundo ou domínio alvo com intenção de compartilhar estas informações com uma comunidade de usuários e usada para construir modelos de representação dos objetos desse domínio.

Page 10: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

OntologiaNo contexto de compartilhamento de conhecimento, o termo Ontologia é utilizado com o significado de uma especificação de uma conceitualização. Uma ontologia necessariamente vincula ou inclui algum tipo de “visão geral” referente a um domínio determinado. Esta “visão geral” é freqüentemente concebida como um conjunto de conceitos (i. e. entidades, atributos, processos), suas definições e suas inter-relações.

Page 11: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Razões para a Utilização de Ontologias

Algumas das razões que levam à utilização de ontologias:O compartilhamento da compreensão da estrutura da informação através das pessoas e agentes de software é um dos objetivos mais comuns no desenvolvimento de ontologias;Proporcionar reutilização de conhecimento do domínio;Separar o conhecimento a respeito do domínio do conhecimento operacional;Analisar o conhecimento do domínio é possível, uma vez que esteja disponível uma especificação declarativa dos termos. A análise formal dos termos é extremamente valiosa para reutilizar e estender ontologias existentes;

Page 12: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

OntologiasNormalmente a ontologia de um domínio não é um objetivo final. O desenvolvimento de uma ontologia está, portanto, relacionado à definição de um conjunto de conceitos e sua estrutura para utilização por outras aplicações.

Page 13: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Knowledge Query ManipulationLanguage (KQML)

A efetivação da troca de conhecimentos entre agentes, independente de formalismos de representação de conhecimento na qual o conhecimento está expresso, foi materializada pela linguagem de comunicação KQML. Ela compreende um conjunto extensível de performativas, que define as possíveis operações de comunicação em nível de conhecimento entre agentes.

Page 14: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

KQMLÉ parte do ARPA Knowledge Sharing EffortOs agentes podem trocar conhecimento, enviando sentenças lógicas, fatos e metas, com o intuito de cooperarem e/ou negociarem. Os atos de fala implementados são os atos assertivos (informar), diretivos (pedir ou perguntar), proibitivos e declarativos (causar eventos ao comunicador).

Page 15: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

KQML(ask-all :sender CFP-Agent:receiver PPR-Agent:in-reply-to id0:reply-with id1:language JessTab:ontology Science:content (object (is-a Link)(URL ?u)(anchor ?a&:(occurs [call-for-papers] ?a))))

(tell :sender PPR-Agent:receiver CFP-Agent:in-reply-to id1:reply-with id2:language JessTab:ontology Science:content (object (is-a Link)(URL

“http://lcn2002.cs.bonn.edu”)(anchor “ IEEE Conference on

LocalComputer Networks (LCN

2002)”)))

Page 16: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

FIPA ACL

FIPA ACL é uma linguagem que permite a comunicação dos agentes através de mensagens.É parte das especificações da FIPA (Foundation for Intelligent Physical Agents)

Page 17: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Para que os agentes sejam compatíveis com a FIPA ACL

1. Ter capacidade de enviar e entender mensagens.2. As mensagens ACL devem ser corretamente

implementadas segundo a definição semântica.3. Os atos de comunicação devem ser corretamente

implementados segundo suas definições.4. Novos atos de comunicação podem não significar o

mesmo que os atos padrão pré-definidos.5. Capacidade de gerar corretamente uma mensagem

sintaticamente bem-formada na forma de transporte que corresponda a mensagem que desejam enviar.

Page 18: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Estrutura da Mensagem(inform

:sender agent1:receiver hpl-auction-server:content

(price (bid good02) 150):in-reply-to round04:reply-with bid04:language sl:ontology hpl-auction)

Page 19: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Relação entre KQML e FIPAKQML e ACL são linguagens de inter-língua, com o objetivo de prover uma base lingüística comum para agentes independentes comunicarem-se. Ambas são baseadas na teoria dos atos de fala, na qual as comunicações de um indivíduo podem ser reduzidas a um pequeno número de primitivas (communicative acts).Sintaxe similar baseada em LISP.

Page 20: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Relação entre KQML e FIPANa KQML, inicialmente, a semântica das performativas era descrita informalmente em linguagem natural.Pesquisas posteriores indicaram a necessidade por uma semântica mais precisa, mas não ficou claro que tenha sido universalmente adotada. ACL foi projetada desde o início com uma semântica bem definida formalmente.

Page 21: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

A Linguagem UCL Para a Comunicação Envolvendo Agentes - Carlos A. Estombelo Montesco, Dilvan de Abreu Moreira

Baseada na UNL (Universal Network Language), um projeto da UNU para o desenvolvimento de ferramentas de software para vencer a barreira da língua para a comunicação entre os povos.

Integração comunicativa em um ambiente de processamento automático de linguagem natural (PALN), permitindo que usuários de qualquer parte do mundo possam se comunicar sem que tenham que aprender uma linguagem especial de comunicação.

Page 22: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Universal CommunicationLanguage (UCL)

UNL não é um padrão aberto;UCL - baseada nos conceitos da UNL, mas implementada em XML;

Page 23: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Universal CommunicationLanguage (UCL)

A UCL representa a informação em sentenças contendo a estrutura sintática, e um conjunto de conceitos, relações e de atributos:

UW (Univeral Word): representa o significado de uma palavra ou conceito.Rótulo de relação: representa a relação entre UWs.Rótulo de atributo: contém informação adicional ou definição que se acrescenta à UW e que está presente na mensagem.

Page 24: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Universal CommunicationLanguage (UCL)

Representação semântica da mensagem é feita através de uma ontologia que define formalmente o domínio de conhecimento.Representação conceitual da mensagem estárepresentada pela ontologia ThoughtTreasure(ferramenta PALN).Cada UW é limitada na abrangência de seu significado por meio de rótulos de relação, evitando que dois conceitos se sobreponham.Os conceitos que pertencem à mensagem são relacionados utilizando os rótulos de relação.

Page 25: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni
Page 26: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Editores de Ontologias

OntolínguaKAON (framework para desenvolvimento de aplicações em WebSemântica)Protégé

Page 27: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

ProtégéProtégé é um editor de ontologias baseado em conhecimento, livre e de código aberto.

As ontologias do Protégé podem ser exportadas em vários formatos, incluíndoRDF(S), OWL, e XML Schema.

Page 28: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni
Page 29: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

http://compsem.inf.ufsc.br/~public/gauthier/disciplina.owl

Page 30: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

Considerações FinaisA comunicação entre agentes só é possível através do entendimento que estes tenham sobre as mensagens, seu significado.Necessidade de formalização semântica, visando obter um entendimento comum.Ontologias são utilizadas para a formalização de conhecimentos, definindo significado a conceitos e suas inter-relações.

Page 31: Ontologias e sua aplicação em linguagens de Comunicaçãosilveira/INE602200/Trabalhos/ontologias.pdfOntologias e sua aplicação em linguagens de Comunicação Rafael de Moura Speroni

ReferênciasFREITAS, F. . Ontologias e a Web Semântica. In: Renata Vieira; Fernando Osório. (Org.). Anais do XXIII Congresso da SBC. Volume 8: Jornada de Mini-Cursosem Inteligência Artificial. Campinas: SBC, 2003, v. 8, p. 1-52. MONTESCO, Carlos Alberto Estombelo ; MOREIRA, D. A. . UCL: uma linguagem de comunicação para agentes de software baseada em ontologias. In: 1 Workshop em Tecnologia da Informação e da Linguagem Humana, 2003, São Carlos v. 1. p. 1-4. Carvalho, Felipe G. Comportamento em Grupo de Personagens do Tipo Black&White. Dissertação de Mestrado PUC-Rio Rio de Janeiro, 2004.Ferreira Filho, Raymundo. Ontological Engineering and ITS Research. Baseado no trabalho do prof. Riichiro Mizoguchi. Disponível em http://iate.ufrgs.br/lms/courses/PPECT_EO01/ Acessado em 10/08/2006.GRUBER, Tom. R. Toward principles for the design of ontologies used for knowledge sharing. International Workshop on Formal Ontology, Padova, Italy. 1993. Available as technical report KSL-93-04, Knowledge Systems Laboratory, Stanford University. NOY, Natalya F.; MCGUINNESS, Deborah. Ontology Development 101: A Guideto Creating Your First Ontology. Stanford Knowledge Systems LaboratoryTechnical Report KSL-01-05 and Stanford Medical Informatics Technical Report SMI-2001-0880, March 2001. PROTÉGÉ - The Protégé Ontology Editor and Knowloedge AcquisitionSystem. (2006) http://protege.stanford.edu/. Acessado em 10/08/2006KAON – The Karlsruhe Ontology and Semantic Web tool suite. (2006) http://kaon.semanticweb.org/ (Acessado em 10/08/2006)Ontolingua (2006) http://www.ksl.stanford.edu/software/ontolingua/. Acessado em 10/08/2006.