Integrazione di ontologie su un sistema a regole: un caso di studio

Post on 04-Jul-2015

1,212 views 0 download

transcript

UNIVERSITÀ DEGLI STUDI DI BARI

FACOLTÀ DI SCIENZE MM.FF.NNCORSO DI LAUREA TRIENNALE IN INFORMATICA

Relatrice: Chiar.ma Prof.ssa F. Esposito

Integrazione di ontologie su un sistema a regole: un caso di studio

Correlatrice:Dott.ssa F. A. Lisi

Tesi di Laurea di:Maria Pia De Marzo

Anno Accademico 2007/2008

• L’OntologiaL’Ontologia. Nasce nell’ambito della filosofia – Lo studio della realtà e della natura delle cose

• Le ontologieLe ontologie.Nel campo dell’informatica:– La definizione è molto più ristretta–“Un’ontologia è un’esplicita specificazione di una concettualizzazione”

T. R. Gruber. A translation approach to portable ontologies.

Knowledge Acquisition, 5(2):199-220, 1993

Le ontologieIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Specifica del W3C per definire ontologie- Basato su RDF

- Comprende tre linguaggi, di espressività crescente

OWL – Ontology Web LanguageIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

XML

RDF

RDF(S)

OWL

Syntax

Semantics

Sviluppato dalla Standford Medical Informatics Per creare, memorizzare, visualizzare e gestire basi di conoscenza Open-source Implementato in Java Interoperabile Estensibile Vari formati di esportazione Interfacciamento con sistemi di controllo automatici

Consistency checking: per ogni classe, può esistere almeno un individuo appartenente a tale classe?

Protègè: un editor per ontologieIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Architettura di ProtègèIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Cosa sono le regoleIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Una regola è un tipo di istruzione o comando che viene applicato in una certa situazione Statement if-then

IF IF premessa/condizione

THENTHEN conclusione/azione

I sistemi a regoleIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Base di conoscenza

[regole]

Motore inferenziale

Agenda

Memoria di lavoro [fatti]

Interfaccia utente

– Rappresentano la più semplice forma di intelligenza artificiale (AI) usata in ambito informatico

– Sono stati concepiti per una classe di applicazioni particolari (sistemi esperti o expert systems).

CLIPSCLIPS - 1984. Johnson Space Center della NASA- Software libero

JessJess- 1990. Sandia National Laboratories- Ispirato dal modello di CLIPS

- Implementato in Java

I sistemi ibridiIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Un sistema a regole codifica conoscenza per mezzo delle regole Le ontologie concettualizzano un dominio di interesse

E’ possibile integrare le due componenti in un’unica soluzione Definire le restrizioni che coinvolgono più di una proprietà Dedurre automaticamente le classi basate sulla composizioni di proprietà

SWRL - Semantic Web Rule LanguageIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o Tutte le regole sono espresse in termini di concetti OWL (classi, proprietà, individui)

Regole come parte integrante dell’ontologia Regole nella seguente formula:

a1 ٨… ٨ an → b1 ٨. . . ٨ bk

Ad esempio:

Persona(?p) ٨ haBambino (?p,?s)٨ Femmina(?s) -> haFiglia(?p,?s)

In Protègè-OWL, SWRL è supportato dal plugin: SWRLJessTab integra il motore inferenziale di Jess asserisce nuovi fatti nella base di conoscenza

SWRL e le queryIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

SWRL non è un linguaggio per regole ma.. ..una regola può esser vista come una “query congiuntiva” Con l’uso di built-ins si può ottenere un’estensione di SWRL

simile a un linguaggio per interrogazioneAd esempio:Persona(?p) ٨ haEtà(?p,?a) ٨ swrlb:lessThan(?a,5) → query:select(?p,?a)

In Protègè-OWL è supportato dal plugin : SWRLQueryTab metodo per interrogare l’ontologia non prevede la creazione di nuova conoscenza

“Studio delle ontologie e dei sistemi basati su regole e degli strumenti che consentono di integrarli, applicati

ad un dominio applicativo reale”

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio

Il caso di studio

Obiettivo

1. Pro e i contro dei sistemi a regole.2. Pro e i contro delle ontologie.3. Pro e contro di un approccio ibrido.

La pesca sportiva.La pesca sportiva.

Perché: Comporta un processo decisionale basato

su esperienza La conoscenza del dominio può essere

formalizzata Esiste un ragionamentoIn

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Il dominio applicativo

Opera in forward (da un fatto conosciuto verso un goal specifico) Usa i fattori di certezza (Certainty Factors)

CF[h,e’] = MB[h,e’’] – MD[h,e’’’] Fornisce delle plausibili interpretazione di quello che i dati sembrano indicare Demo

Cos’è FishingHelper?In

tegr

azio

ne d

i ont

olog

ie su

un

sist

ema

a re

gole

: un

caso

di s

tudi

o

Sistema esperto per il supporto alle decisioni, implementato in CLIPS Base di conoscenza costituita da circa 500 regole

Caratteristiche:Caratteristiche:

Cos’è OntoFishing?

Caratteristiche:Caratteristiche:

Ontologia costruita con Protègè-OWL PluginBase di conoscenza costituita da:

93 classi con 95 restrizioni 22 proprietà (object e datatype) 116 istanze

Controllo della consistenza mediante il ragionamento automatico:

usa come reasoner PelletDemo

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio Caratteristiche:Caratteristiche:

Estensione dell’ontologia OntoFishing con SWRL Costituito da 20 regole

regole deduttive regole di interrogazione

Ragionamento deduttivo mediante Jess Uso del plugin SWRL Rules da Protègè-OWL:

SWRLJessTab SWRLQueryTab

Demo

Cos’è RuleFishingHelper?

Conclusioni

Tre prototipi software: FishingHelper, OntoFishing,

RuleFishingHelper

Ciascun prototipo ha delle caratteristiche diverse e soffre di

limiti proprie del sottostante livello di conoscenza.

L’approccio ibrido coniuga le caratteristiche dei sistemi a regole

e ontologie.

L’attuale orientamento è indirizzato verso le ontologie integrate

con le regole (ad esempio il Semantic Web).

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio

Integrazione di ontologie su un sistema a regole: un caso di studio

Grazie per l’attenzione

Maria Pia De Marzo

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio

Inte

graz

ione

di o

ntol

ogie

su u

n si

stem

a a

rego

le: u

n ca

so d

i stu

dio

FishingHelper

FishingHelper - domande

FishingHelper - domande

FishingHelper - domande

FishingHelper – il risultato

FishingHelper

OntoFishing - Classi

OntoFishing – Proprietà Object

OntoFishing – Proprietà Datatype

OntoFishing - Istanze

OntoFishing – Consistency Checking

RuleFishingHelper

RuleFishingHelper

RuleFishingHelper

RuleFishingHelper

RuleFishingHelper

34

RuleFishingHelper

RuleFishingHelper

RuleFishingHelper - query

RuleFishingHelper - query

RuleFishingHelper - query