Intelligenza Artificiale
Lezione 11
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
0
Sommario
♦ La rappresentazione della conoscenza
♦ Proprietà di una buona rappresentazione
♦ Logica come formalismo di rappresentazione
♦ Sistemi di rappresentazione della conoscenza
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
1
Sviluppo della rappresentazione della conoscenza
♦ ipotesi del sistema simbolico
♦ logica sı̀, logica no
♦ teoria della conoscenza
♦ ingegneria della conoscenza
♦ Base di conoscenza ↔ Motore inferenziale
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
2
Ipotesi del sistema simbolico
Il calcolatore fa parte di una importante classe di sistemi
artificiali, quella dei ”sistemi simbolici”...
Un sistema simbolico consiste di entità, detti simboli. Questi
possono comparire come componenti di strutture. . . .
Nel caso dei calcolatori, un sistema di simboli possiede anche un insieme di semplici processi che elaborano (creano,
modificano, copiano,. . . ) simboli
H. Simon, The Sciences of the Artificial, 1969, 1994
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
3
Proprietà di una buona rappresentazione
♦ I tre criteri di adeguatezza proposti da McCarthy & Hayes
Adeguatezza metafisica
Adeguatezza epistemologica
Adeguatezza euristica
♦ identificazione del linguaggio
♦ identificazione del livello di astrazione
♦ principi di buona progettazione
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
4
Logica e rappresentazione della conoscenza
Logica si:
chiara sintassi – semantica – apparati deduttivi
♦ Dichiarativa vs Procedurale
Logica no:
mancanza di principi di strutturazione
inadeguata a cogliere tutti gli aspetti di interesse dell’AI
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
5
Base di conoscenza
Una base di conoscenza è una rappresentazione delle conoscenze
sul mondo (problema).
• conoscenza intensionale esprime delle leggi generali sul
dominio di interesse (regole)
• conoscenza estensionale esprime la conoscenza sul particolare caso (situazione) in esame (fatti)
La costruzione della base di sonoscenza si effettua tramite
l’asserzione delle frasi che tappresentano la conoscenza intensionale ed estensionale (Tell).
Il linguaggio usato per esprimere la conoscenza si chiama
linguaggio di rappresentazione della conoscenza.
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
6
Motore inferenziale
Le implicazioni (conseguenze) della base della conoscenza
vengono calcolate da un meccanismo di inferenza (motore
inferenziale).
Ask è l’operatore usato per caratterizzare le inferenze (risposte)
ottenibili da un base di conoscenze.
La caratterizzazione di un sistema di rappresentazione della
conoscenza tramite Tell&Ask si definisce dichiarativa: non
occorre conoscere il meccanismo di inferenza per sapere cosa
è implicato dalla base di conoscenza.
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
7
Sistemi di rappresentazione della conoscenza
formule
algoritmo
formule
BASE DI CONOSCENZA
MOTORE
ZIALE
che
manipola
INFEREN-
Esempio: rappresentazione della conoscenza in logica proposizionale
• linguaggio: formule proposizionali
• inferenza: |=
• Ask: metodi deduttivi per il calcolo proposizionale
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
8
Un esempio
BASE DI CONOSCENZA
Piove
Tiravento
Se Piove allora Prendoombrello
Se Tiravento allora Mettogiaccaavento
Se Piove e Senzaombrello allora Mibagno
Dalla base di conoscenza posso derivare(tramite MP):
Piove??
Tiravento??
Prendoombrello??
Mettogiaccaavento??
Nebbia??
Mibagno??
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
9
Sistemi di rappresentazione della conoscenza
♦ Basi di dati deduttive
♦ Programmazione logica (espressività limitata, inferenza
efficiente, dichiarativa?)
♦ Dimostratori di teoremi (espressività della logica del primo
ordine, ma deduzione non efficiente)
♦ Regole di produzione
♦ Reti semantiche
♦ Frames
♦ Logiche descrittive
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
10
Basi di dati deduttive
• linguaggio: clausole senza simboli di funzione (+ negazione
come fallimento)
• inferenza: |=
• Ask: metodi deduttivi per il calcolo proposizionale e metodi
deduttivi ad hoc (computazione punto fisso etc.)
Con l’ipotesi di dominio finito e costituito dai simboli di
costante che compa diono nella base di conoscenza le basi di
dati deduttive corrispondono a teorie proposizionali.
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
11
Basi di dati Horn
Basi di dati Horn (HDB) o vivide, solo clausole Horn:
1. > → A(x)
2. A1(x) ∧ . . . ∧ An(x) → B(x)
3. A1(x) ∧ . . . ∧ An(x) → ⊥
1. Fatti
2. Regole
3. Interrogazioni
3. possono anche essere letti come vincoli di integrità
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
12
Inferenza nelle basi di dati Horn
MP è una regola di inferenza corretta e completa per HDB
Per HDB vale la proprietà dell’intersezione di modelli: quindi
HDB hanno un modello minimo.
Per un HDB è facile costruire la chiusura deduttiva: applicando MP in tutti i modi possibili e aggiungendo le conclusioni, se non ci sono già
Quindi HDB con MP è un sistema formale con deduzione
corretta e completa rispetto alla semantica
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
13
Complessità della deduzione in HDB
n×d
Quanto costa?? Se non ci sono simboli di funzioni
dove n è il numero massimo di premesse delle regole e d è la
dimensione del HDB
HDB è un esempio di come, restringendo il linguaggio si abbatte la complessità della deduzione.
HDB senza funzioni è DATALOG
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
14
Basi di dati disgiuntive (DDB)
Non tutte le formule della logica del primo ordine possono
essere messe in forma di clausole Horn, e.g.
piove → (ombrello ∨ giaccavento)
Basi di dati disgiuntive (DDB):
A(x)
A1(x) ∧ . . . ∧ An(x) → B1(x) ∨ . . . ∨ Bn(x)
Tutte le formule della logica del primo ordine possono essere
messe in questa forma
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
15
Programmazione Logica
• linguaggio: clausole di Horn con simboli di funzione (+
negazione come fallimento)
• inferenza: |=
• Ask: modello operazionale del PROLOG (non dichiarativo per la dipendenza dall’ordine di scrittura delle clausole e degli atomi nel corpo delle clausole)
Sono state realizzate diverse estensioni del PROLOG ...
• programmazione logica con vincoli (CLP), dove l’unificazione
viene fatta in presenza di vincoli più deboli dell’uguaglianza
• extended logic programs clausole non-horn e negazione
“vera”
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
16
Controllo dell’inferenza
“Qual è il reddito della moglie del presidente degli Stati
Uniti?”
Reddito(s, i) ∧ Sposati(s, p) ∧ Lavoro(p, P residenteStatiU niti)
• metaragionamento per decidere quale ordine degli atomi
è più vantaggioso
• backtracking guidato dalle dipendenze invece del backtracking cronologico
• intelligent backtracking che ricorda le derivazionni già
fatte evitando di ripeterle
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
17
Dimostratori di teoremi
♦ si basano su metodi deduttivi della logica del primo ordine
(risoluzione e tableau)
♦ considerano il significato delle formule (indipendentemente
dal modo in cui sono scritte)
Applicazioni:
• dimostrazione di teoremi matematici
• sintesi automatica di programmi
• verifica e sintesi di circuiti
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
18
REGOLE
KB ha una rappresentazione del tipo:
A(x)
IF A1(x) ∧ . . . ∧ An(x) T HEN B(x)
cioè un sistema a regole è ≈ un HDB.
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
19
REGOLE di produzione
Ma nei sistemi a regole di produzione
(esempio più famoso OPS5, sviluppato a CMU per applicazioni Digital)
- ricerca di soluzione forward (data driven)
- decisione se regola applicabile: semiunificazione, cioè pattern matching su memoria di lavoro
- decisione su quale regola applicare: algoritmo di scheduling
delle regole
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
20
OPS5 per sommi capi
Struttura:
♦ Data Base di Regole
♦ Memoria di lavoro
♦ Ciclo: Riconosci-Seleziona-Agisci
Memoria di lavoro: memorizza stato iniziale, risultati parziali,
conclusione
Riconosci: pattern matching tra parte sinistra regole e memoria di lavoro, creazione dell’ “insieme dei conflitti”
Insieme dei conflitti: lista di regole applicabili, con relativi
legami per le variabili
Agisci: side effect nella memoria di lavoro, o sul mondo esterno
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
21
Rappresentazione RETE
Opppure, si usa l’approccio RETE (Forgy ‘83). Le regole
vengono compilate in una “rete”, cioè una struttura ad albero
in cui condividono quanto più possibile della parte sinistra:
if f elino ∧ carnivoro ∧ maculato then giaguaro
if f elino ∧ carnivoro ∧ rigato then tigre
Poi, le regole cambiano la working memory di poco: Se una
regola non applicava in un ciclo, è ragionevole che non applichi nel successivo. RETE non fa un matching completo
su tutte le regole, ma mantiene una rete di condizioni e fa
un matching completo solo sulle regole le cui condizioni sono
state influenzate dagli ultimi cambiamenti
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
22
Vantaggi dei sistemi a regole
♦ PATTERN DIRECTED PROCEDURE INVOCATION
il controllo passa dal programmatore all’algoritmo di scheduling, quindi programmazione più dichiarativa, più incrementale
♦ Spiegabilità delle conclusioni e delle linee di ragionamento
seguite
SVANTAGGI:
♦ inefficienza
♦ si possono costruire DB di regole errate, contraddittorie
...
e.g. sia KB:
if piovuto then pratobagnato
if pratobagnato then impiantoirrigazioneacceso
piovuto
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
23
Reti semantiche
RETI
• associative (modello psicologico: più ad alto livello, ma
idea analoga a reti neurali)
• causali (reti bayesiane)
• tassonomie (logiche descrittive)
• semantiche (Quinlan ‘68)
tassonomie: economia cognitiva, ereditarietà
aiuto per retrieval: indicizzazione sul primo argomento P (a, b)
il retrieval fatto su a.
è un O-O limitato
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
24
Reti semantiche
reti semantiche: grafi:
nodi = oggetti o classi
archi: relazioni (in particolare is − a, istance − of , part − of )
Una sottoinsieme particolare: Reti di ereditarietà
Gatti Sottinsieme
M ammif eri
−→
embro Gatti
P allino M−→
Gatti ⊆ M ammif eri
Gatti is − a M ammif eri
∀ x Gatto(x) ⇒ M ammif ero(x)
Gatto(P allino)
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
25
Reti semantiche: inferenza
pallino ∈ Gatti
Gatti ⊆ M ammif eri
M ammif eri ⊆ Esseriviventi
pallino istance − of Gatti
Gatti is − a M ammif eri
M ammif eri is − a Esseriviventi
dalla rete inferisco che:
pallino è un mammifero, pallino è un essere vivente.
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
26
Relazioni nelle reti semantiche
Tipo di legame
Semantica
Esempio
A Sottinsieme
B
−→
embro B
A M−→
R B
A −→
A⊂B
A∈B
R(A, B)
Gatti ⊂ M ammif eri
Bill ∈ Gatti
Età 12
Bill −→
R B
A −→
R
A −→ B
∀x x∈A ⇒
R(x, B)
∀x ∃y x∈A ⇒
y ∈ B ∧ R(x, y)
Intelligenza Artificiale – Daniele Nardi, 2003
U ccelli Zampe
−→ 2
U ccelli
Genitore
−→
U ccelli
Lezione 11
27
Problemi “semantici” delle reti semantiche
♦ limiti di espressività: No disgiunzione, No negazione, Solo
predicati binari
♦ “What is in a link?”
♦ Inferenza descritta in modo procedurale
♦ Gestione delle eccezioni
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
28
Animali
Vivo:
Vola:
T
F
e
Sot
iem
toin
siem
e
s
toin
Sot
Mammiferi
Uccelli
2
Vola:
T
Zampe:
Sottoinsieme
Pinguini
Rel(Vola,Uccelli,T)
Rel(Zampe,Uccelli,2)
Rel(Zampe,Mammiferi,4)
So
tto
in
sie
m
Zampe:
Vola:
Membro
Opus
2
T
Bill
Nome:
Amico:
Pat
Bill
(a) Una base di conoscenza basata su frame
Pinguini
Uccelli
Gatti
Mammiferi
Pipistrelli
Mammiferi
Rel(Vola,Pinguini,F)
Rel(Zampe,Pipistrelli,2)
Rel(Vola,Pipistrelli,T)
Opus Pinguini
Bill Gatti
Pat Pipistrelli
Membro
F
Opus
e
Pipistrelli
Gatti
Membro
Vola:
Uccelli
Animali
Mammiferi
Animali
4
Sottoinsieme
Zampe:
Nome:
Amico:
Rel(Vivo,Animali,T)
Rel(Vola,Animali,F)
Nome:
Pat
Nome(Opus,"Opus")
Nome(Bill,"Bill")
Amico(Opus,Bill)
Amico(Bill,Opus)
Nome(Pat,"Pat")
(b) Traduzione in logica del primo ordine
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
29
Frame
Minsky 75: Tutto quello che è rilevante relativamente ad un
concetto sta in un “frame”.
Un frame è un prototipo degli elementi della classe, ma poiché
i frame sono sono collegati in rete, un insieme di frame risulta
molto simile ad una rete semantica con nodi strutturati.
• KEE
• KRSS
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
30
Definizione di frame
F −→ SuperClasses : H1, . . . , Hh
MemberSlot : S1
ValueClass : E1
Cardinality.Min : nat
Cardinality.Max : nat
...
Sui valori degli slot si possono specificare dei vincoli
E, E1, E2 −→ H |
(IN T ERSECT ION E1 E2) |
(U N ION E1 E2) |
(N OT E)
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
31
Esempio
Frame: Course in KB University
Subclasses: AdvCourse, BasCourse
Memberslot: ENROLLS
ValueClass: Student
Cardinality.Min: 2
Cardinality.Max: 30
Memberslot: TAUGHTBY
ValueClass: (UNION Graduate Professor)
Cardinality.Min: 1
Cardinality.Max: 1
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
32
Ereditarietà
- Proprietà del nodo (own)
- Proprietà che vengono ereditate.
- Ereditarietà multipla
- Valori di Default
- Ereditarietà non monotona
- Esempio del diamante di Nixon
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
33
Description Logics
Una famiglia di formalismi che derivano dalla formalizzazione
in logica di frames e reti semantiche.
♦ Definiscono una semantica precisa delle relazioni rappresentate dai link
♦ Caratterizzano l’espressività del linguaggio
♦ Quantificano l’efficienza delle inferenze usando la complessità computazionale
♦ KL-ONE
♦ Classic, Loom
♦ FACT
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
34
Esempio
—
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
Lezione 11
35
Costruzione di concetti
♦ operatori insiemistici: C u D, C t D, ¬C
person u ¬female
and
female t male.
♦ restrizioni sui ruoli: ∀R.C, ∃R.C
∃haschild.person u ∀haschild.person.
♦ restrizioni numeriche:
(>3haschild) u (62hasfemalerelative)
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
36
Base di conoscenza
TBox:
.
woman = person u female
ABox:
female u person(anna)
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
37
Servizi deduttivi
♦ Sussunzione: C w D
♦ Soddisfacibilità di concetti
♦ Classificazione
♦ Consistenza della base di conoscenza
♦ Verifica di appartenenza
♦ Realizzazione
♦ Ricerca degli individui
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
38
Applicazioni delle logiche descrittive
♦ sistemi esperti in configurazione, ingegneria del software,
medicina, accesso alle informazioni nel Web, pianificazione,
♦ analisi del linguaggio naturale,
♦ costruzione di ontologie,
♦ basi di dati: linguaggi di modellazione, riscrittura di interrogazioni
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
39
Ulteriori aspetti della RC
♦ le ipotesi per il completamento della conoscenza (non
monotonicità)
♦ la revisione delle conoscenze
♦ metodi specifici per trattare il tempo, l’incertezza, la
conoscenza ...
♦ la gestione del cambiamento (situazioni, eventi)
Intelligenza Artificiale – Daniele Nardi, 2003
Lezione 11
40