Le reti KL-ONE Sono un esempio di rappresentazione della conoscenza a reti semantiche. Sono state sviluppate verso la fine degli anni ’70 sulla base di formalismi detti “reti semantiche ad ereditarietà strutturata.” (SI-Nets). Le reti KL-ONE costituiscono una realizzazione dei principi di SI-Nets.
“Whats in a link: foundation for semantic networks” (Woods 1975) Il Problema Reti semantiche molto diffuse negli anni ‘70 ma i formalismi utilizzati non erano rigorosi. Ad enunciati sintatticamente simili ma con differenze semantiche dovevano coincidere rappresentazioni differenti. Mancanza di rigore formale anche per quanto riguarda i meccanismi inferenziali. Sebbene le reti semantiche siano state rappresentazioni molto diffuse nell’IA nella metà degli anni ’70, regnava tuttavia una certa anarchia formale per tali rappresentazioni. Il problema fu avanzato da Woods. Fermo restando il fatto che la rappresentazione della conoscenza dovesse essere rappresentata con un grafo, rimaneva il problema di definire con rigore formale il ruolo delle strutture coinvolte nel grafo ovvero -la semantica delle reti semantiche-. “Whats in a link: foundation for semantic networks” (Woods 1975) Lo scopo di tali rappresentazioni è quello di risolvere le ambiguità della lingua naturale: ad enunciati sintatticamente uguali, ma con significati differenti devono corrispondere rappresentazioni semantiche differenti. Le reti semantiche di allora mancavano di rigore formale anche per quanto riguarda i meccanismi inferenziali che si basavano su euristiche di tipo intuitivo ma vi sono esempi in cui tali meccanismi non sono sufficienti. Esempio: Il “Rombo di Nixon” ovvero l’esempio dei quaccheri solitamente pacifisti e dei repubblicani che tipicamente non lo sono: come si deve comportare il sistema di fronte ad un Nixon quacchero e repubblicano?
Caratteristiche di KL-ONE Limitato set di primitive a livello epistemologico. Semantica esplicita e ben definita per i costrutti della rete. Caratterizzazione chiara delle inferenze ammesse dal sistema. Le reti non ammettono eccezioni all’ereditarietà o valori attribuiti per default. Distinzione tra conoscenza terminologica e asserzionale rappresentate su moduli differenti. Formalismo orientato alla comprensione del linguaggio naturale. Le reti KL-ONE sono una risposta a questa esigenza di formalizzazione inoltre si fondano su di un insieme di primitive predefinite e limitate. Tali primitive sono state definite da Brachman (1979) a livello epistemologico, ovvero che non dipendono dalla natura del dominio di rappresentazione. Conoscenza Terminologica: dovrebbe costituire un “lessico concettuale” applicabile ad ogni specifico contesto. Conoscenza Asserzionale:comprende informazioni sui fatti, vere in contesti specifici.
I Concetti Il Concetto rappresenta la base della conoscenza nella rappresentazione KL-ONE. I Concetti sono organizzati in una tassonomia gerarchica. I Concetti sono graficamente rappresentati come nodi della rete. La struttura della rete descrive il Concetto. Il ‘Concetto’ rappresenta la base della conoscenza nella rappresentazione KL-ONE. I ‘Concetti’ sono organizzati in una tassonomia (ordinamento) gerarchica in maniera da sfruttare l’ereditarietà tale per cui ‘Concetti’ con minor grado di generalità possano ereditare caratteristiche peculiari della descrizione dei concetti più generali. Ogni ‘Concetto’ viene rappresentato da un nodo della rete. La descrizione del ‘Concetto’ è demandata agli archi che lo connettono agli altri costrutti della rete semantica.
Tipologie di Concetto Concetti Generici Concetti Individuali
I Concetti Generici Identifica una classe di individui. La descrizione del concetto è affidata ai Ruoli. I Ruoli sono rappresentati come archi orientati. L’etichetta identifica il Ruolo. Branchia mollusco conchiglia gasteropode Organo respiratorio Scheletro Un Concetto generico è un termine che identifica una particolare classe di individui. Ogni Concetto generico può essere descritto tramite delle relazioni speciali con gli altri ‘Concetti’ dette Ruoli. Graficamente i Ruoli sono rappresentati da archi orientati marcati con un piccolo cerchio con inscritto un quadrato vuoto, L’etichetta identifica il Ruolo. La freccia più spessa e vuota all’interno rappresenta la relazione di sussunzione .(vedi slide #8)
I Riempitori e le Restrizioni di valore di un Ruolo Organo respiratorio Istanze di Mollusco dette anche Riempitori Mollusco Il Concetto in cui termina il ruolo viene detto Restrizione di Valore (VR) Branchia Nell’esempio il ruolo generico “organo respiratorio” indica che ogni istanza del concetto mollusco deve stare nella relazione organo respiratorio con le istanze del concetto branchia. Queste istanze vengono dette Riempitori (filler) di un ruolo. Il concetto in cui termina l’arco che rappresenta il ruolo viene detto Restrizione di Valore (VR). I ruoli di un concetto sono analoghi agli slot dei frame, con la differenza che in KL-ONE ai ruoli non possono essere assegnati valori di default, inoltre ad ogni ruolo possono essere assegnati delle restrizioni di numero che esprimono il limite minimo e massimo che un riempitore può avere.
La Sussunzione Le frecce a doppio tratto indicano la relazione di Sussunzione. Sussunzione = inclusione insiemistica. E’ la base del meccanismo dell’ereditarietà Poligono Poligono regolare Triangolo Triangolo equilatero Gli Archi rappresentati da frecce a doppio tratto (Gasteropode => Mollusco) indicano che un concetto è sussunto da un altro se questo è meno generale, ovvero quando tutte le istanze del primo sono anche istanze del secondo. Tali archi di sussunzione sono anche detti di Superconcetto. La sussunzione corrisponde all’inclusione insiemistica quindi gode della proprietà transitiva, inoltre è possibile sussumere un concetto da più di un concetto. La relazione di sussunzione è fondamentale per il meccanismo di ereditarietà strutturata. Nell’esempio del mollusco, il gasteropode, sussunto dal mollusco, eredita da quest’ultimo i ruoli di scheletro e organo respiratorio e le eventuali strutture (restrizioni di numero e di valore).
Restrizioni di ruolo E’ possibile effettuare modifiche locali alla struttura dei ruoli ereditati tramite restrizione. Le restrizioni di ruolo sono modificatori che agiscono su altri ruoli. Le eventuali restrizioni devono risultare coerenti con il ruolo su cui agiscono. Le restrizioni di ruolo possono essere sia di numero che di valore E’ possibile effettuare modifiche locali alla struttura dei ruoli ereditati. La restrizione di un ruolo può essere sia di numero che di valore ed opera in congiunzione con il meccanismo di sussunzione di concetti. La restrizione di numero di un ruolo può essere modificata solo se questa risulta compatibile con il ruolo di riferimento, ovvero solo quando tale restrizione è più vincolante di quella originaria. In KL-ONE non è possibile rappresentare le eccezioni, e quindi non è possibile esprimere il concetto di tipo i mammiferi sono dotati ‘tipicamente’ di gambe per poter prendere in considerazione anche i delfini, le balene,… in KL-ONE siamo costretti ad associare al ruolo ‘possiede’ una restrizione di valore di tipo (0/4) così da contemplare la totalità dei casi. La restrizione di valore impone come nuova V/R un concetto differente dalla restrizione ereditata.
Restrizioni di Numero mollusco conchiglia 0/1 Scheletro La restrizione di numero consente di definire un limite inferiore e superiore per un ruolo. Nel caso in esempio dove essere interpretato: “ Il mollusco ha come scheletro 0 oppure 1 conchiglia “ Se non è indicato alcuna restrizione di numero in KL-ONE si assume che il limite inferiore sia 0 e che quello superiore sia nil. Restrizione di numero
Restrizioni di numero e di valore mollusco conchiglia Scheletro 0/1 ottopode gasteropode Conchiglia monovalve 0/0 Nell’esempio compaiono le due restrizioni; di valore e di numero. La restrizione di numero agisce per il ruolo di scheletro ereditato dal ottopode dal concetto di mollusco, poiché questo non ha alcun scheletro la restrizione di numero, vincola il ruolo scheletro ad essere a zero per il concetto di ottopode. La restrizione di valore agisce sempre sul ruolo scheletro ma per quanto riguarda il gasteropode che ha come scheletro una particolare forma di conchiglia che è quella monovalve. Restrizione di valore Restrizione di numero
La Differenziazione di un ruolo Un ruolo ereditato può essere differenziato in due o più ruoli distinti che esprimono relazioni più specifiche del ruolo originario. lato Poligono Segmento 3/nil Triangolo 3/3 La differenziazione nel caso in esempio agisce sul ruolo lato, specificando come nel caso del triangolo rettangolo il ruolo lato si differenzia in due ruoli cateto e ipotenusa ciascuno con una restrizione di numero particolare ma coerente con la restrizione di numero introdotta dal concetto di triangolo sulla relazione lato a sua volta sussunta da poligono. 2/2 cateto Triangolo rettangolo ipotenusa 1/1
Concetti Primitivi e Definiti Se un concetto esprime condizioni necessarie viene detto Primitivo. Se un concetto esprime condizioni necessarie e sufficienti viene detto definito Graficamente i concetti Primitivi si contraddistinguono da quelli definiti per l’asterisco sul nodo della rete. Poligono Triangolo
Il Classificatore In una rete KL-ONE perché due concetti stiano nella relazione di sussunzione non è necessario che esista un arco di super-concetto esplicito che li collegi direttamente od una catena di archi di super-concetto. E’ possibile ricavare il legame di sussunzione classificando opportunamente i vari concetti. In KL-ONE questo compito viene assolto dal Classificatore (algoritmo di classificazione). Classificare un concetto in una rete KL-ONE significa metterlo al posto giusto nella tassonomia, identificandone i superconcetti più specifici ed i sottoconcetti più generali. Questo compio viene eseguito da un algoritmo di classificazione , o classificatore, che si basa fondamentalmente sul procedimento per l’individuazione delle relazioni di sussunzione. Nella classificazione, la ricerca dei superconcetti del concetto da classificare comincia dal vertice della tassonomia, controllando, per ogni concetto definito, se sussume il concetto da classificare. Quando un concetto è eliminato perché non sussume il concetto da classificare, la ricerca tra i suoi discendenti viene abbandonata. Altrimenti, si controlla se esiste un superconcetto più specifico fra i suoi discendenti.
Descrizioni Strutturali Per descrivere in KL-ONE il concetto di triangolo rettangolo dobbiamo poter rappresentare il fatto che i due cateti sono tra loro perpendicolari. Per affrontare questo tipo di problemi KL-ONE utilizza dei costrutti particolari detti Descrittori Strutturali che si dividono in : Role Value Map (RVM) Descrizioni strutturali in senso stretto
Role Value Map (RVM) Lo scopo di tali costrutti è quello di imporre condizioni di uguaglianza o inclusione tra gli insiemi di riempitori (filler) dei due ruoli di un dato concetto. Altezza cilindro 1/1 lunghezza base diametro 1/1 cerchio 1/1 = Cilindro equilatero
Descrizioni strutturali in senso stretto Le descrizioni strutturali (SD) in senso stretto rendono possibile istituire relazioni più generali tra gli insiemi di riempitori dei ruoli di un concetto al di là dell’inclusione o dell’uguaglianza. Il meccanismo delle SD risulta estremamente complesso e poco intuitivo tanto da scomparire dalla maggior parte dei formalismi terminologici successivi.
Concetti Individuali Gatto Coda Coda bianca & nera Silvestro possiede 0/1 Concetto Individuale satisfies Coda bianca & nera Silvestro La caratteristica dei concetti individuali e che possono essere composti da al massimo un’unica istanza. Ogni concetto individuale può essere sussunto da uno o più concetti generali ma ciò non implica l’esistenza dell’unica istanza che rappresenta. Il meccanismo di ereditarietà continua a valere per i concetti individuali che al pari di quelli generali si possono anche localmente specializzare mediante gli opportuni costrutti. Graficamente i concetti individuali sono rappresentati da nodi ombreggiati come anche il ruolo che individua l’oggetto in relazione al concetto generico. Val
Evoluzione del KL-ONE KL-ONE è una rete semantica orientata alla rappresentazione della conoscenza terminologica o descrizionale. Il compito di formulare una conoscenza asserzionale o fattuale è demandato ad una componente asserzionale esterna. La componente asserzionale ha comunque un ruolo marginale all’interno di KL-ONE. In evoluzioni successive di KL-ONE come in KRYPTON è stato potenziato il potere espressivo del linguaggio asserzionale prevedendo due componenti distinte dotate di linguaggi e meccanismi inferenziali diversi; uno asserzionale (A-BOX) uno terminologico (T-BOX) Poiché KL-ONE è un tipo di rete semantica orientata alla rappresentazione della conoscenza terminologica o descrizionale il compito di formulare una conoscenza di tipo fattuale o asserzionale è demandato ad un opportuna componente asserzionale esterna alla rete. Ad esempio per esprimere il fatto che , in una data situazione, esiste una certa istanza di un determinato concetto (generico o individuale), viene introdotta una costante nella componente asserzionale (nexus), che viene connessa per mezzo di un arco di tipo specifico (description wire) al concetto corrispondente della rete. Un contesto viene definito come un insieme di nexus e description wire che rappresentano un determinato stato di cose. Una base di conoscenza KL-ONE dovrebbe consentire di definire più contesti contemporaneamente, per rappresentare ad esempio situazioni controfattuali, o situazioni corrispondenti a fasi temporali diverse. In ogni caso, il potere espressivo della componente asserzionale di KL-ONE è estremamente limitato è infatti impossibile esprimere relazioni o asserzioni quantificate. In evoluzioni successive di KL-ONE come in KRYPTON è stato potenziato il potere espressivo del linguaggio asserzionale poiché erano previste due componenti distinte dotate di linguaggi e meccanismi inferenziali diversi; uno asserzionale (A-BOX) e uno terminologico (T-BOX).
KL-ONE ed il calcolo dei predicati di primo ordine È possibile convertire una rappresentazione KL-ONE in un insieme di predicati del primo ordine con identità mediante semplici regole. Forme di inferenza quali l’ereditarietà, la sussunzione e la classificazione possono essere assimilate ad usuali inferenze logiche. La tassonomia di KL-ONE con ruoli generici può essere considerata una variante notazionale di un sottoinsieme del calcolo dei predicati del primo ordine.
KL-ONE calcolo dei predicati Ogni Concetto generico P viene tradotto per mezzo di un predicato monadico P(x). Triangolo, Mollusco, Poligono Triangolo(x), Mollusco(x), Poligono(x) Gli archi di superconcetto sono tradotti per mezzo di implicazioni quantificate universalmente. x (Gatto(x) Mammifero(x)) La transitività della sussunzione è garantita dalle regole della logica I ruoli rappresentano relazioni a due posti. Scheletro, Lato, Base Scheletro(x,y), Lato(x,y), Base(x,y)
KL-ONE calcolo dei predicati Per esprimere restrizioni di valore sui ruoli: x (A(x) y(R(x,y) B(y))) Per esprimere restrizioni di numero sui ruoli: Introduciamo i seguenti quantificatori esistenziali limitati: Così la rappresentazione d’esempio diventa: A B m/n C
KL-ONE calcolo dei predicati La modifica di una restrizione di valore (V/R) è espressa nel modo seguente: x (C(x) y (R(x,y) D(y))) La modifica della restrizione di numero del ruolo R per il concetto C: R A B m/n C D p/q
KL-ONE calcolo dei predicati Esempio di differenzazione di un ruolo: Le condizioni necessarie espresse in una rete KL-ONE sono tradotte in calcolo dei predicati in: in tal caso, se A è un concetto definito, la condizione sufficiente per A sarà espressa dalla formula:
KL-ONE calcolo dei predicati solido poliedro parallelep superficie poligono rettangolo faccia 1/nil 6/6 4/nil Le formule dell’esempio costituiscono la traduzione logica delle condizioni necessarie per parallelepipedo e sufficienti per poliedro, più la traduzione dell’arco di superconcetto fra rettangolo e poligono. Da tale insieme di formule segue che: che esprime la sussunzione tra parallelepipedo e poliedro.
KL-ONE calcolo dei predicati Per quanto riguarda i concetti individuali, anche essi vengono trattati mediante predicati monadici, con in più il vincolo di avere al massimo una sola istanza. Così se I è un concetto individuale ad esso corrisponde un predicato I(x) con in più il predicato:
Bibliografia