Intelligenza Artificiale Logiche Descrittive Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 0 Sommario 1. Motivazioni 2. Logiche Descrittive: Linguaggi per la descrizione di concetti 3. Sistemi basati sulla conoscenza Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 1 Motivazioni Semantic Networks e Frames offrono strutture (gerarchiche) per rappresentare la conoscenza. • epistemological adequacy • computational adequacy Idea: le rappresentazioni della conoscenza strutturate sono efficienti sia epistemologicamente che computazionalmente Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 2 Un esempio di rete Female v/r Person has-child *Z H Y } BM HH Z Z H B H Z H B Z H B H Z B B B : B B B B Woman Mother Parent (1,nil) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 3 Relazioni in una rete • ISA: Madre ISA Femmina(ereditarietà) • Restrizioni di ruolo: Genitore“Un genitore è una persona che ha almeno un figlio, che è una persona e tutti i suoi figli sono persone” Deduzione: scoperta di relazioni implicite Se definiamo Donna come le persone di sesso femminile abbiamo che Madre ISA Donna Le inferenze “semplici” sono facili da vedere nella rete ma in generale occorre definire con precisione le relazioni che possono essere calcolate. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 4 Inizio Brachmann e Levesque [AAAI-84] Metodologia Dare una caratterizzazione formale dei processi deduttivi e studiarne la complessità computazionale. La semantica in logica di reti semantiche e frames è relativamente semplice: • le classi o concetti corrispondono a predidati unari • le relazioni tra classi o ruoli sono predicati binari ma come caratterizzare la complessità della deduzione? Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 5 Un sottoinsieme della logica dei predicati Description Logics (Terminological/Taxonomic/Concept) Tesi “There exists a fundamental tradeoff between the expressive power of a knowledge representation language and the complexity of reasoning in that language” Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 6 Ricostruzione logica delle reti • Definizione di un linguaggio per denotare gli elementi della rete (sintassi astratta, sintassi LISP-like, sintassi tipo linguaggio naturale, sintassi grafica) • Caratterizzazione del significato delle espressioni del linguaggio (classiche strutture di interpretazione) • Caratterizzazione semantica della deduzione (conseguenza logica) • Definizione dei metodi di deduzione Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 7 Sintassi Il passo base della costruzione è costituito da due insiemi disgiunti di simboli (alfabeti) per primitive (atomic) concepts, e primitive (atomic) roles. I termini si costruiscono a partire dall’alfabeto attraverso dei costruttori. Es. l’operatore congiunzione, C u D, serve per restringere gli individui a coloro che appartengono sia a C che a D. Nota: nella sintassi non compaiono variabili, ma le espressioni caratterizzano implicitamente un insieme di individui (in questo caso l’intersezione di due insiemi) Notazione LISP-like (Classic) (AND Persona Femmina) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 8 Costruttori insiemistici • intersection C u D • union C t D • complement ¬C “Le persone che non sono di sesso femminile” e “gli individui che sono maschi o femmine” Persona u ¬Femmina and Femmina t Maschio. Femmina, Persona, sono atomic concepts. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 9 Costruttori che usano i ruoli • universal role restriction, ∀R.C, comporta che tutti gli individui che sono nella relazione R appartengono a C. “individui che hanno tutte figlie femmine”: ∀haFiglio.Femmina • existential role restriction, ∃R.C, che impone l’esistenza di un individuo nella relazione R che appartiene a C. “individui che hanno una figlia femmina”: ∃haFiglio.Femmina. haFiglio è un atomic role. L’individuo che corrisponde al secondo argomento di un ruolo viene detto role filler. Negli esempi precedenti le figlie femmine sono role fillers. ∃haFiglio.Persona u ∀haFiglio.Persona. nelle role restriction c’è un’altra variabile quantificata implicitamente: ∀y.R(x, y) → C(y) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 10 Restrizioni numeriche number restrictions: denotano insiemi di individui che hanno almeno o al più un certo numero di role fillers. (6 3 haFiglio) u (> 2 haParentiF) “gli individui che hanno al più tre figli e almeno due familiari di sesso femminile”. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 11 Costruttori per le espressioni di ruoli Role intersection: esprime l’intersezione di ruoli. “ha-Figlia”: haFiglio u haParentiF Donna u (6 2 (haFiglio u haParentiF)) “donne con al più 2 figlie”. I costruttori delle espressioni di ruolo sono meno usati anche se può essere utile definire delle gerarchie di ruoli. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 12 Sintassi delle espressioni di concetti C, D −→ A| >| ⊥| C uD | CtD | ¬C | ∀R.C | ∃R.C | (≥ n R) | (≤ n R) (primitive concept) (top) (bottom) (intersection) (union) (complement) (universal quantif.) (existential quantif.) (atleast num. restriction) (atmost num. restriction) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 13 Sintassi delle espressioni di ruoli R −→ P | QuR| (primitive role) (role conjunction) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 14 Semantica Una interpretazione I = (∆I , ·I ) è definita da: • un insieme ∆I (il dominiodi I) • una funzione ·I (la funzione di interpretazione di I) che mappa ogni concetto in un sottoinsieme di ∆I ed ogni ruolo in un sottoinsieme di ∆I × ∆I . Il dominio può essere infinito e la open world assumption differenzia le logiche descrittive dalle Basi di Dati. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 15 Semantica delle espressioni di concetti I primitive concepts sono sottoinsiemi del dominio di interpretazione: A ⊆ ∆I ⊥I >I (¬C)I (C t D)I (C u D)I (∀R.C)I (∃R.C)I (≥ n R)I (≤ n R)I = = = = = = = = = ∅ ∆I ∆I \ C I C I ∪ DI C I ∩ DI {a ∈ ∆I {a ∈ ∆I {a ∈ ∆I {a ∈ ∆I | ∀b. (a, b) ∈ RI → b ∈ C I } | ∃(a, b) ∈ RI . ∧ b ∈ C I } | |{b ∈ ∆I | (a, b) ∈ RI }| ≥ n} | |{b ∈ ∆I | (a, b) ∈ RI }| ≤ n}. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 16 Semantica delle espressioni di ruoli I primitive roles sono coppie di elementi del dominio di interpretazione R ⊆ ∆I × ∆I (Q u R)I = QI ∩ RI Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 17 Esempi di espressioni di concetti 1. Stud u ¬Studliv2 2. Studliv2 t Prof 3. Corso u ∀iscritto.Studliv2u (≥ 2 iscritto) u (≤ 20 iscritto) 4. Corso u ∃iscritto.Studliv2u ∃iscritto.Studliv1 5. PowerPlant u (≥ 1 LOC) u (≤ 1 LOC)u ∀LOC.NewYork u ∃FAIL.Mechanical Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 18 Semantica dei concetti Una interpretazione I è un modello di un concetto C se C I non è vuota. Un concetto è soddisfacibile se ha un modello ed insoddisfacibile altrimenti. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 19 Nomenclatura FL− (Frame Language) include: • concept conjunction • universal quantification • unqualified existential quantification ∃R AL (Attributive Language) = F L− + negation on primitive concepts Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 20 La famiglia dei linguaggi AL C negation U disjunction E existential quantification N numerical restriction I inverse role R role conjunction I nomi dei linguaggi sono definiti usando combinazioni delle lettere che indicano quali costrutti sono ammessi nel linguaggio. ALC = AL + negation Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 21 Sussunzione La forma principale di ragionamento è la subsumption (sussunzione): CvD cioè la verifica D (the subsumer) è più generale di C (the subsumee). C è subsumed (sussunto) da D se C I ⊆ DI per ogni interpretazione I La sussunzione verifica se il primo dei due concetti è un sopra insieme del secondo. Donna u ∃haFiglio.Femmina v Genitore Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 22 Altre forme di ragionamento La soddisfacibilità di concetti, è il problema di verificare se un concetto ammette almeno un individuo; si riconduce alla non-subsumption (in cui il subsumer è il concetto vuoto). Le deduzioni diventano più interessante quando tengono conto delle conoscenze espresse in una terminologia. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 23 Tecniche di ragionamento Le tecniche di ragionamento su reti semantiche e frame si basano sulla costruzione di grafi che corrispondono ai concetti ed alla verifica di alcune proprietà dei grafi. Sussunzione strutturale: verifica tramite Confronto strutturale che un grafo (il subsumee) si può mappare sull’altro (il subsumer). L’analisi della sussunzione strutturale ha mostrato che è (in genere) corretta ma non sempre completa: La risposta “yes” è corretta, ma la risposta “no” talvolta non lo è. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 24 Analisi di complessità Brachman e Levesque mostrano che esiste una stretta correlazione tra l’espressività del linguaggio e la complessità computazionale del ragionamento La sussunzione in F L− è polinomiale, ma l’aggiunta al linguaggio di un costrutto sui ruoli (chiamato role restriction) fa diventare la sussunzione coNP-hard. 1. “l’efficienza del ragionamento” può essere confrontata usando l’analisi di complessità; 2. l’insieme di costrutti ammessi nel linguaggio determina le proprietà computazionali del ragionamento. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 25 Proprietà computazionali del ragionamento 1. F L è intrattabile 2. ALC is PSPACE-completo 3. ∃R.C è una sorgente di complessità 4. linguaggi “massimamente polinomiali” Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 26 AL + C tD ∃R.C (≥ n R) (≤ n R) R u R0 NPcomp P × Co-NP comp × × × × × × PSPACE-complete × × × × × × × × × × × × × × × × × × × × × × × Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 27 Risultati dell’analisi di complessità • algoritmi/tecniche di ragionamento corretti e completi • individuazione dei “casi critici”/interazione dei costrutti • corrispondenze con altri formalismi Ma quali sono le implicazioni dei risultati di intrattabilità? In pratica il caso peggiore non capita nelle basi di conoscenza realizzate e questo consente l’uso di linguaggi più espressivi. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 28 Dalla trattabilità alla decidibilità • trade-off expressivity/tractability • trade-off expressivity/decidability “very expressive” Description Logics: ammettono un insieme di costrutti sui concetti e sui ruoli più ricco ed il ragionamento (corretto e completo) più difficile. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 29 Basi di conoscenza Due componenti: • intensionale (TBOX) • estensionale (ABOX) Σ = hT , Ai T è un insieme di definizioni: C ≡ D A è un insieme di asserzioni: C(a) P (a, b) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 30 La Terminologia La TBOX viene anche detta terminologia ed è costrituita da definizioni di concetti. Donna ≡ Persona u Femmina Le definizioni sono interpretate come equivalenze logiche e quindi rappresentano condizioni necessarie e sufficienti per classificare una donna. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 31 La TBOX Inclusioni DvC Definizioni . A=C si possono riscrivere A v C e C v A Semantica dei cicli • minimo punto fisso (least fix-point) • massimo punto fisso (greatest fix-point) • descrittiva (descriptive) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 32 Definizioni in pratica • una sola definizione per ogni nome di concetto • definizioni acicliche In questo modo si possono espandere le definizioni ed ottenere un’espressione costituita da concetti primitivi (nel caso peggiore di dimensioini esponenziali). In questa ipotesi la deduzione si riconduce alla sussunzione tra concetti; se la TBOX non si può espandere la deduzione si complica. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 33 Ragionamento sulla TBOX La forma di ragionamento principale sulla TBOX è la: classificazione, che comporta il posizionamento di una nuova definizione nella tassonomia. La definizione di C lo classifica tra: • i concetti più specifici sussumono C • i concetti più generali che C sussume Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 34 La ABOX La ABox contiene la conoscenza estensionale: Femmina u Persona(ANNA) haFiglio(ANNA, JACOPO) Una asserzione C(a) ABOX A è soddisfacibile se aI ∈ C I Una interpretazione I soddisfa una ABOX se soddisfa tutte le asserzioni della ABOX e si dice modello della ABOX. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 35 Ragionamento nella ABOX • instance checking, verifica che un individuo sia istanza del concetto (fondamentale) A |= C(a) se ogni modello di A è anche un modello di C(a) • knowledge base consistency, verifica che ogni concetto nella KB sia consistente • realization, determina il concetto più specifico di cui un dato individuo è istanza • retrieval, trova tutti gli individui che sono istanza di un dato concetto La deduzione con la ABOX richiede di estendere i metodi di ragionamento sulle espressioni di concetti. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 36 Un esempio di base di conoscenza (Σ1) TBOX AdvC ≡ Corso u ∀iscritto.Studliv2, (≥ 2 iscritto) u (≤ 20 iscritto) BasC ≡ Corso u ∀iscritto.Studliv1, IntC ≡ Corso u ∃iscritto.Studliv2u ∃iscritto.Studliv1, ∃insegna.Corso v Studliv2 t Prof, Studliv2 ≡ Stud u ∃titStu.Laurea, Studliv1 ≡ Stud u ¬Studliv2 Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 37 Un esempio di base di conoscenza (Σ1) ABOX Prof(bob), Studliv1(peter), Stud(susy), Stud(mary), Laurea(bs), Corso(cs1), Corso(cs2), IntC(ee1), insegna(bob, ee1), insegna(john, cs2), insegna(john, cs1), titStu(mary, bs), iscritto(cs1, susy), iscritto(cs1, mary), iscritto(cs2, susy), iscritto(cs2, peter), iscritto(ee1, peter) Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 38 Corrispondenza con i sistemi a frame Frame: AdvC in KB Univ Superclasses: Corso Memberslot: registra ValueClass: Studliv2 Cardinality.Min: 2 Cardinality.Max: 20 Frame: Studliv2 in KB Univ Superclasses: Stud Memberslot: titStu ValueClass: Laurea Cardinality.Min: 1 Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 39 Interrogazione della base di conoscenza Le interrogazioni ad una base di conoscenza Σ hanno la forma: C(a) • YES l’interrogazione è vera in ogni modello di Σ • NO l’interrogazione è falsa in ogni modello di Σ • UNKNOWN altrimenti. Esempio 1 Σ1 |= ∃iscritto.Studliv2(ee1) ? Answer: YES. Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 40 Procedural rules Procedural rules tipiche di molti sistemi (CLASSIC) che nella KB ammettono un insieme di regole del tipo: C⇒D Il significato intuitivo delle regole è: “Se un individuo è istanza di un oggetto C , allora è istanza anche di D”. Si tratta di una forma di implicazione debole che caratterizza il ragionamento in avanti Non è possibile dare una semantica classica, ma si può dare con un operatore epistemico: KC v D Intelligenza Artificiale – Daniele Nardi, 2003 Logiche Descrittive 41