Intro alla Rappresentazione della Conoscenza

Rappresentazione della conoscenza
(Knowledge Representation - KR)
A cura di
Ing. Tommaso Di Noia e Ing. Azzurra Ragone
Cosa è una Rappresentazione della
Conoscenza?
(Davis-Shrobe-Szolovits)
E’ un surrogato.
1.
•
Un sostituto usato per permettere ad una entità di determinare
conseguenze pensando piuttosto che agendo; ragionando sul mondo
piuttosto che operando delle azioni in esso.
E’ un insieme di “impegni” ontologici.
2.
•
È una risposta alla domanda: quali sono i termini in cui dovrei
ragionare sulle cose del mondo?
E’ una teoria frammentaria sul ragionamento intelligente.
3.
•
Espressa in termini di inferenze che la rappresentazione permette e
quelle che raccomanda
E’ un mezzo per una computazione efficiente.
4.
•
Deve guidare l’organizzazione dell’informazione in modo da facilitare
l’esecuzione delle inferenze raccomandate.
E’ un mezzo di espressione umana.
5.
•
Un linguaggio con il quale diciamo cose sul mondo.
Una KR è un SURROGATO (1/3)
• Il ragionamento è un processo interno, mentre la
maggior parte delle cose su cui si ragiona sono
esterne rispetto all’ente che esegue il
ragionamento (uomo – macchina – software)
• Operazioni su e con le rappresentazioni,
sostituiscono le operazioni con le cose del
mondo reale.
• In questa ottica il ragionamento stesso è un
surrogato per le azioni nel modo esterno.
Una KR è un SURROGATO (2/3)
•
Per cosa è un surrogato?
–
–
•
Ci deve essere una corrispondenza tra il surrogato
e il suo referente nel mondo.
Tale corrispondenza è la SEMANTICA (il significato
del surrogato)
Quanto è vicino il surrogato al modo reale?
–
–
Una rappresentazione perfetta è impossibile sia in
pratica che in principio.
L’unica rappresentazione completa e accurata di un
oggetto è l’oggetto stesso. Tutte le sue
rappresentazioni sono inaccurate perché
contengono inevitabilmente delle assunzioni
semplificative.
Una KR è un SURROGATO (3/3)
• Surrogati imperfetti significano
inevitabilmente inferenze non corrette
– Nella descrizione del mondo reale dobbiamo
necessariamente mentire.
• Al minimo dobbiamo omettere una parte della illimitata
complessità del mondo naturale.
• Le nostre descrizioni possono introdurre artefatti non
presenti nel mondo reale.
– Ragionare sul mondo deve portare necessariamente
a delle conclusioni incorrette indipendentemente dal
processo di ragionamento e dalla rappresentazione.
– Lo sforzo maggiore in una KR è trovarne una che
minimizzi gli errori nel suo uso.
Una KR è un insieme di “impegni”
ontologici (1/2)
• In ogni rappresentazione facciamo
inevitabilmente un insieme di affermazioni circa
cosa e come guardare il mondo.
• Una selezione accurata di affermazioni permette
di focalizzarsi su aspetti del mondo ritenuti
rilevanti.
• Uno stesso micro-dominio del modo può essere
visto sotto diversi punti di vista.
– Ex. La spiegazione dei fenomeni naturali può essere
vista in termini matematico-scientifici o filosofico
scientifici. Dipende da come vogliamo vedere il
dominio in esame.
Una KR è un insieme di “impegni”
ontologici (2/2)
• Le scelte iniziali sono fondamentali
– Ogni formalismo di rappresentazione della
conoscenza ha già in sé degli iniziali punti di
vista sul mondo (logica dei predicati, sistemi a
frame, sistemi probabilistici,…)
• Gli “impegni” si stratificano ed
accumulano.
– Una volta scelta la tecnologia, vengono fatte
delle ulteriori assunzioni nel suo utilizzo.
Una KR è una teoria frammentaria sul
ragionamento intelligente (1/4)
•
•
•
Una KR nasce con la volontà di rappresentare
come gli esseri umani ragionano
intelligentemente.
Una teoria della rappresentazione del
ragionamento intelligente è spesso implicita.
Può essere resa evidente esaminando le sue
tre componenti:
1. La concezione fondamentale di inferenza
intelligente.
2. L’insieme di inferenze che la rappresentazione
permette.
3. L’insieme di inferenze che la rappresentazione
consiglia.
Una KR è una teoria frammentaria sul
ragionamento intelligente (2/4)
•
Le tre componenti precedenti possono
essere viste come le risposte alle
rispettive domande:
1. Cosa significa ragionare intelligentemente?
2. Cosa possiamo inferire da quello che
sappiamo?
3. Cosa sarebbe opportuno inferire da quello
che sappiamo?
Una KR è una teoria frammentaria sul
ragionamento intelligente (3/4)
• Cosa è un ragionamento intelligente?
• Esistono differenti punti di vista sulla
questione:
– logica matematica, psicologia, biologia,
statistica, economia
Una KR è una teoria frammentaria sul
ragionamento intelligente (4/4)
• Il punto di vista che deriva dalla logica
matematica, vede il ragionamento come un tipo
di calcolo formale (logica dei predicati).
– Tipicamente si parla di DEDUZIONE.
• Il punto di vista tipicamente psicologico, vede il
ragionamento come un comportamento umano.
– Human problem solving, sistemi basati su
conoscenza
Una KR è un mezzo per una
computazione efficiente
• Il ragionamento automatico è un processo
computazionale.
• Le rappresentazioni, tipicamente
suggeriscono delle modalità su come
organizzare l’informazione in modo da
facilitare i servizi di inferenza per essa
raccomandati.
Una KR è un mezzo di espressione
umana
• La KR è il mezzo con cui “raccontiamo” ai
calcolatori qualcosa sul mondo.
• Un problema che sorge a questo punto è:
– Quanto bene funziona come mezzo di
comunicazione?
– Quanto è semplice per noi descrivere o
pensare utilizzando un simile linguaggio?
Conclusioni
• Rappresentazione e Ragionamento sono
strettamente correlati tra loro
• Potrebbe essere utile combinare diverse
rappresentazioni
• Alcuni formalismi possono risultare
equivalenti
Requisiti di un linguaggio per la
Rappresentazione della Conoscenza
Un linguaggio di Knowledge Representation (KR)
deve essere in grado di:
 rappresentare in maniera adeguata fatti
complessi, in modo chiaro, preciso e naturale
 dedurre nuovi fatti a partire dalla conoscenza
esistente (adeguatezza inferenziale)
Adeguatezza di Rappresentazione
Alcuni fatti sono difficili da rappresentare in modo
che sia possibile “ragionarci”
“Paolo crede che a nessuno piacciano i film dell’orrore”
“Paolo crede che ad Anna non piacciano i film dell’orrore”
Alcuni linguaggi di KR permettono di rappresentare fatti
complessi in maniera strutturata, in modo che sia
possibile il ragionamento su tali fatti
Sintassi e semantica ben definite
Per rappresentare fatti in modo chiaro e preciso, è necessario che il
linguaggio di KR abbia una sintassi e una semantica ben definite.
Occorre conoscere quali sono le espressioni che possono essere usate nel
linguaggio (sintassi) e qual è il significato di tali espressioni (semantica).
Avere una sintassi ed una semantica ben definite è essenziale, sia per
poter rappresentare la conoscenza del mondo reale, che per poter poi
trarre nuovi conclusioni attraverso il ragionamento.
nokia(paolo-cellulare) è OK!
cellulare-paolo(nokia&siemens) non è OK!
Naturalezza
Un linguaggio di KR dovrebbe essere ragionevolmente naturale e facile da
“usare”, cioè rappresentare i “fatti” del mondo in modo intuitivo e di facile
comprensione.
È importante scegliere nomi per i simboli che siano significativi
“Se si ha mal di testa si deve prendere un’aspirina”
if(x,h,a) poco chiaro!!!
IF sintomo(X, mal_di_testa) THEN cura (X, aspirina) molto meglio!!!
Adeguatezza inferenziale
Deve essere possibile dedurre nuovi fatti dalla conoscenza esistente.
Un linguaggio di KR “DEVE” supportare meccanismi di inferenza, non è,
infatti, pensabile rappresentare esplicitamente TUTTA la conoscenza,
qualcosa dovrebbe essere lasciata implicita e dovrebbe essere dedotta dal
sistema nel momento in cui è necessario.
esempio: un sistema in cui è rappresentata conoscenza relativa a 100
studenti. Ogni studente seguirà le lezioni, darà esami, alla fine del percorso
di studi prenderà il diploma. Non è necessario specificare ciò per ciascuno dei
100 studenti!
Antonio è uno studente
Antonio segue le lezioni, dà esami, prende il
diploma!
Esempio di inferenza
Supponiamo di voler scoprire se Antonio è il Presidente della Repubblica.
Sappiamo che:
•Il Presidente della Repubblica è uno e uno solo
•Il Presidente della Repubblica italiano è Carlo Azeglio Ciampi
Antonio non può essere il Presidente della Repubblica!!!
Necessità del Trade-off
Effettuare una qualsiasi deduzione partendo da una conoscenza esistente può
rivelarsi un processo estremamente complesso.
Più complesse sono le deduzioni che si vogliono effettuare, maggiore sarà il
tempo richiesto per effettuarle!
Occorre perciò trovare un trade-off tra adeguatezza inferenziale (ciò che
possiamo inferire) ed efficienza inferenziale (quanto velocemente possiamo
inferirlo).
Naturalmente nessun linguaggio di rappresentazione della conoscenza
soddisfa in pieno tutti i requisiti che abbiamo appena descritto, la scelta di
un linguaggio, piuttosto che un altro, dipenderà dalle operazioni di
ragionamento che si vorranno effettuare
Linguaggi di programmazione vs
linguaggi naturali
I linguaggi di programmazione sono
utili per la descrizione di algoritmi e
strutture dati concrete.
L’istruzione: “Mondo[2,2]papero”
permette di specificare che in una
determinata posizione c’è un papero.
Più difficile dire:
“c’è un papero in [2,2] o in [3,4]”
Oppure anche:
“c’è un papero in qualche quadrato”
4
3
2
1
1
2
3
4
Linguaggi di programmazione
Un linguaggio di programmazione è progettato
per la descrizione completa dello stato
dell’elaboratore e dei suoi cambiamenti durante
l’esecuzione del programma.
Un linguaggio di rappresentazione della
conoscenza dovrebbe supportare il caso di
informazioni incomplete!
I linguaggi di programmazione non sono
abbastanza espressivi!
Linguaggio naturale (1/2)
I linguaggi naturali sono espressivi, ma soddisfano più i bisogni della
comunicazione che della rappresentazione.
“Guarda!”
La frase “Guarda” non codifica il fatto che
c’è un animale volante!
Il significato dipende:
dalla frase stessa
dal contesto in cui è pronunciata
Linguaggio naturale (1/2)
I linguaggi naturali, al contrario di quelli di
programmazione, sono ambigui
Ad esempio:
“piccoli cani e gatti”
“-d+c”
i gatti sono piccoli?
Linguaggi di KR
Un buon linguaggio di KR dovrebbe combinare i vantaggi dei linguaggi
naturali e dei linguaggi formali.
Espressivo
Conciso
Non ambiguo
Indipendente dal contesto
Efficace
Si analizzeranno la logica proposizionale e la logica del primo ordine
Semantica (1/3)
Il significato di una formula è ciò che questa asserisce sul mondo:
“il mondo è in questo e non in quel modo”
Come si fa a stabilire una corrispondenza tra formule e fatti, tra
formule e loro significato?
Bisogna fornire un’interpretazione della formula, per dire a quale
fatto corrisponda, ad esempio:
Microfilm  Viviana
Valigia  Bari
Viviana è a Bari  il microfilm
è nella valigia
Semantica (2/3)
Tutti i linguaggi di rappresentazione impongono una relazione
sistematica tra formule e fatti.
Linguaggi composizionali: il significato di una formula è una funzione
dei significati delle sue parti.
x2+y2
4
“S1,4 e S2,2”
3
S1,4= c’è un gallo in [1,4]
S2,2= c’è un papero in [2,2]
2
1
1
2
3
4
Semantica (3/3)
Data un’interpretazione ad una formula, grazie ad una semantica, la
formula dice che il mondo è in QUESTO modo e non in QUELLO.
(Dunque può essere vero o falso)
Una formula è vera, secondo una 4
particolare interpretazione, se lo
stato delle cose che rappresenta
è vero.
3
La verità dipende:
•dall’interpretazione
2
•dall’effettivo stato del mondo
1
S2,2= “C’è un papero in 2,2”
1
2
3
4
Inferenza
Processo che porta al raggiungimento di conclusioni
Inferenza logica o deduzione: ragionamenti corretti, che realizzano la
relazione di implicazioni tra formule.
Formula valida (necessariamente vera): se e solo se è vera secondo
TUTTE le possibili interpretazioni in TUTTI i mondi possibili,
Indipendentemente:
•da cosa dovrebbe significare
•dallo stato delle cose nell’universo che si sta descrivendo
Formule valide
Una affermazione è valida se e solo se è vera indipendentemente da cosa
dovrebbe significare e dallo stato delle cose nell’universo che si sta
descrivendo
1. “C’è fuoco in [3,3] o non c’è fuoco
in [3,3]“
2. “C’è un’aria libera nel quadrato di
fronte a me oppure vi è fuoco nel
quadrato di fronte a me”
4
3
2
3. “Se ogni quadrato ha o fuoco o
un’aria libera, allora c’è o fuoco
nel quadrato di fronte a me o c’è
un’aria libera nel quadrato di
fronte a me”
1
1
2
3
4
Formule soddisfacibili
Una formula è soddisfacibile se e solo se esiste una QUALCHE
interpretazione in QUALCHE mondo per la quale sia vera
“C’è una rosa in [2,3]”
È soddisfacibile
Una formula che non è
soddisfacibile si dice:
insoddisfacibile, ad esempio
formule autocontraddittorie:
4
3
2
1
“C’è una rosa in [3,3] e non c’è una
rosa in [3,3]”
1
2
3
4
Le Logiche

Una logica consta di tre ingredienti:
1.
Un linguaggio: una collezione di espressioni benformate alle quali può essere assegnato un significato.
•
I simboli del linguaggio e le regole formali per
comporre tali simboli sono la sintassi del linguaggio.
2.
Una semantica dice come interpretare le espressioni
ben formate come affermazioni sul mondo
3.
Un sistema deduttivo ossia un insieme di regole che
possono essere applicate per derivare, con una
procedura automatizzabile, fatti rilevanti sulle
relazioni tra significati (oggetti semantici)
Logica Proposizionale
Espressività limitata
Semplice
Utile come base di partenza per logiche
più espressive
Logica Proposizionale
sintassi
• I simboli della logica proposizionale sono:
– Costanti logiche VERO e FALSO
– Simboli proposizionali, ex. P, Q
– Connettivi logici ,,,,,(,)
• Tutte le formule ben formate in logica
proposizionale sono costruite unendo i
precedenti simboli.
Regole di composizione e
formule valide
1.
Le costanti logiche VERO o FALSO sono formule
2. Un simbolo proposizionale è una formula ex. P, Q
3. Una formula tra parentesi è una formula
ex. (P  Q)
4. Una formula può essere formata combinando
formule più semplici con uno dei connettivi logici
permessi.
Connettivi logici
  (AND) date due formule f1 ed f2, la formula f1f2
è detta congiunzione; f1 ed f2 sono detti congiunti
  (OR) date due formule f1 ed f2, la formula f1f2 è
detta disgiunzione; f1 ed f2 sono detti disgiunti
  (IMPLICA) date due formule f1 ed f2, la formula
f1f2 è detta implicazione; f1 è detta premessa o
antecedente, f2 è detta conclusione o conseguente
  (EQUIVALENZA) date due formule f1 ed f2, la
formula f1  f2 è detta equivalenza
  (NOT) data la formula f1, f1 è detta negazione di
f1
Esempi di formule ben formate








,,,,,(,)
PQ
piove  faFreddo
PQ
piove  aproOmbrello
piove  faFreddo  restoACasa
(piove  faFreddo)  nuvoloso  portoOmbrello
piove  da40GiorniE40Notti  diluvia
Esempio di formula non ben formata
 piove  faFreddo  
Semantica
• Un simbolo proposizionale può significare qualsiasi
cosa si voglia ed assumere valore VERO (V) o
FALSO (F).
– La sua interpretazione può essere un fatto arbitrario
– Una formula contenente solo un simbolo proposizionale è
soddisfacibile ma non valida:
• È vera solo quando il fatto cui si riferisce si verifica.
• Le costanti logiche hanno un significato ben
definito.
– La formula VERO ha sempre come interpretazione il fatto
vero:il modo in cui il mondo è realmente
– La formula FALSO ha sempre come interpretazione il fatto
falso: il modo in cui il mondo non è.
Semantica
• Il significato di una formula complessa
dipende dal significato delle sue parti.
• Il valore di una formula dipende dal valore dei
simboli che la compongono.
• I valori possibili per i simboli proposizionali e
per le costanti logiche sono soltanto VERO e
FALSO.
– E’ possibile costruire delle tabelle di verità per le
formule ben formate.
Tabelle di Verità
P
Q
P
PQ
PQ
PQ PQ
falso
falso
vero
falso
falso
vero
vero
falso
vero
vero
falso
vero
vero
falso
vero
falso
falso
falso
vero
falso
falso
vero
vero
falso
vero
vero
vero
vero
Validità e Inferenza
• Le tavole di verità possono essere utilizzate
per provare la validità delle formule.
• Se ogni riga della colonna risultato della
tabella ha valore vero, la formula è valida
• Ex. ((PH)H)P
P
H
PH
((PH)H
((PH)H)P
falso
falso
falso
falso
vero
falso
vero
vero
falso
vero
vero
falso
vero
vero
vero
vero
vero
vero
falso
vero
Esercizi
Si usino le tavole di verità per mostrare che le seguenti formule
sono valide (e quindi che l’equivalenza è ben posta)
1) P(QR)  (PQ)R
[Associatività della congiunzione]
2) P(QR)  (PQ)R
[Associatività della disgiunzione]
3) PQ  QP
[Commutatività della congiunzione]
4) PQ  QP
[Commutatività della disgiunzione]
5) P(QR)  (PQ)(PR) [Distributività di  su ]
6) P (QR)  (PQ)(PR) [Distributività di  su ]
Esercizi
7) ( PQ)  P Q
[Legge di De Morgan]
8) ( PQ)  P Q
[Legge di De Morgan]
9) PQ  Q  P
[Contrapposizione]
10)P  P
[Doppia negazione]
11)PQ  PQ
12)PQ  (PQ) (Q P)
13)PQ  (PQ)( P Q)
14)PP  falso
15)PP  vero
Modelli
• Qualsiasi mondo in cui una formula sia vera secondo
una particolare interpretazione è chiamato modello
4
S2,2= “C’è un fuoco in 3,3”
3
2
1
1
2
3
4
Implicazione
•Sulla base dei modelli è possibile
ridefinire l’implicazione:
–Una formula a è implicata da un set di
formule KB se i modelli di KB sono tutti
modelli di a.
–Se ciò avviene, allora tutte le volte che KB è
vera, deve essere vera anche a
Regole di inferenza
Vi sono alcuni meccanismi di inferenza
che si ripresentano regolarmente, la loro
correttezza può essere dimostrata una
volta per tutte.
Si può cioè catturare questo meccanismo
in una regola di inferenza.
Regole di inferenza per la
logica proposizionale
• Modus Ponens
A  B, A
• Eliminazione degli and
B
ABCD … C
• Introduzione di and A,B,C,D, …
• Introduzione di or A
ABCD …
AvBCD …
• Eliminazione delle doppie negazioni A
• Risoluzione unitaria
• Risoluzione
AvB, B
AvB, BC
A C
A
A
Esempio
• Assumendo vere le seguenti proposizioni:
– se è vacanza sto a casa o vado in montagna
– oggi sono al lavoro
• dimostrare che oggi è un giorno
lavorativo.
• Il problema può essere formalizzato come
segue:
v=oggi è vacanza c=stare a casa m=andare in montagna
Esempio
• Ip1 :v
cm
• Ip2 : c  m
• Th: v
DIM
c  m  v
c  m
v (Modus Ponens)
Esempio
• Ip1: a  b
• Ip2 c  b
• Th: c  a
DIM
b  a
b  a
(c  b)  (b  a)
((c  b)  (b  a))  (c  a)
(c  a)
Logica del Primo Ordine
(o dei Predicati)
• Il mondo consiste di oggetti, cioè cose
con identità individuali e proprietà che li
distinguono gli uni dagli altri.
• Fra questi oggetti valgono diverse
relazioni.
– Alcune di queste sono funzioni
Logica del Primo Ordine
• Oggetti: persone, case, numeri, teorie, James
Bond, colori, partite di calcio, guerre, secoli …
• Relazioni: fratello di, più grande di, dentro,
parte di, ha colori, avvenuto dopo, possiede …
• Proprietà: rosso, tondo, finto, primo, a più
piani…
• Funzioni: padre di, miglior amico, secondo
tempo di, uno più di …
Esempio
• Tutti i fatti possono esser pensati in
riferimento ad oggetti e proprietà o
relazioni.
– Ex. “Il diabolico Re Giovanni regnò in
Inghilterra nel 1200”
• Oggetti: Giovanni, Inghilterra, 1200
• Relazioni: regnò
• Proprietà: diabolico, Re
Esempio
“I quadrati intorno al
fuoco sono vuoti”
4
3
Oggetti: fuoco, quadrato
Proprietà: vuoti
Relazioni: intorno
2
1
1
2
3
4
Sintassi e Semantica (1/11)
• Nella logica proposizionale ogni espressione è una
formula che rappresenta un fatto
• La logica del primo ordine ha formule, ma ha
anche termini, che rappresentano gli oggetti.
• Simboli di costante, variabili e simboli di
funzione sono utilizzati per costruire termini.
• Quantificatori e simboli di predicati sono
utilizzati per costruire frasi.
Sintassi e Semantica (2/11)
• Simboli di costante: A, B, C, Giovanni…
– Una interpretazione deve specificare a quale
oggetto del mondo si riferisce ogni simbolo di
costante.
– Non tutti gli oggetti devono avere necessariamente
un nome ed alcuni possono avere più nomi
• Simboli di predicato: Tondo, Fratello, …
– Un simbolo di predicato si riferisce ad una
particolare relazione nel modello.
– I predicati possono essere unari (Tondo), binari
(Fratello) …
Sintassi e Semantica (3/11)
• Simboli di funzione: PadreDi,
GambaSinistraDi …
– Alcune relazioni sono funzionali: dato un
qualsiasi oggetto, questo è in relazione
esattamente con un altro oggetto.
– Ogni persona ha esattamente un’altra
persona che ne è il padre biologico.
Sintassi e Semantica (4/11)
• Termini: un termine è un’espressione
logica che si riferisce ad un oggetto.
– I simboli di costante sono quindi termini
– Un simbolo di funzione seguito da una lista
di Termini tra parentesi
• Ex. GambaSinistraDi(Giovanni)
– Il significato dei termini è l’oggetto cui si
fa riferimento
Sintassi e Semantica (5/11)
• Formule Atomiche: mettono in relazione
oggetti del mondo
– Una formula atomica è formata da un simbolo di
predicato seguito da una lista di termini tra
parentesi
• Ex1. Fratello(Riccardo,Giovanni)
• Ex2. Sposati(PadreDi(Riccardo),MadreDi(Giovanni))
– Una formula atomica è vera se la relazione a cui si
riferisce il simbolo di predicato lega gli oggetti a
cui si riferiscono gli argomenti
Sintassi e semantica(6/11)
• Formule complesse: possiamo usare gli operatori della
logica proposizionale per costruire formule più
complesse.
– La semantica è la stessa della logica proposizionale.
Ex.
• Fratello(Riccardo,Giovanni)Fratello(Giovanni,Riccardo)
• PiùGrande(Giovanni,30)  PiùGiovane(Giovanni,30)
•  Fratello(Robin,Giovanni)
Sintassi e Semantica (7/11)
• Quantificatori
– Trattando oggetti si rende necessario esprimere
proprietà di collezioni di oggetti, piuttosto che
enumerare tutti gli oggetti per nome.
– Per rappresentare tali classi vengono utilizzati
come simboli le variabili
– La logica del primo ordine contiene due
quantificatori standard:
• UNIVERSALE
• ESISTENZIALE
Sintassi e Semantica (8/11)
• Quantificazione Universale: permette di
esprimere qualcosa su tutti gli oggetti
apparteneti ad una classe.
– x Gatto(x)  Mammifero(x)
• E’ una forma equivalente per:
Gatto(Pallino)  Mammifero(Pallino) 
Gatto(Pinco)  Mammifero(Pinco) 
Gatto(Felix)  Mammifero(Felix) 
Gatto(Tom)  Mammifero(Tom) 
Gatto(Silvestro)  Mammifero(Silvestro)  …
Sintassi e Semantica (9/11)
• Quantificazione Esistenziale: permette di
esprimere qualcosa su alcuni degli oggetti
appartenenti ad una classe senza specificare
quali.
– x Sorella(x,Pallino)  Gatto(x)
• E’ una forma equivalente per:
(Sorella(Pallino,Pallino)  Gatto(Pallino))
(Sorella(Rebecca,Pallino)  Gatto(Rebecca))
(Sorella(Felix,Pallino)  Gatto(Felix))
(Sorella(Riccardo,Pallino)  Gatto(Riccardo))
(Sorella(Giovanni,Pallino)  Gatto(Giovanni)) …
Sintassi e Semantica (10/11)
• Quantificatori annidati:
–
–
–
–
x,y Genitore(x,y) Figlio(x,y)
x y Ama(x,y) [Tutti amano qualcuno]
y x Ama(x,y) [C’è qualcuno che è amato da tutti]
x (P(x) (x Q(A,x))
Ogni variabile deve essere introdotta da un
quantificatore prima di essere usata!
Sintassi e semantica (11/11)
• Relazioni tra quantificatori (Leggi di De
Morgan per i quantificatori)
–
–
–
–
–
–
x P è equivalente a x P
x Amano(x,Cattivi)  x Amano(x,Cattivi)
x P è equivalente a x P
x P è equivalente a x P
x Piace(x,Gelato)  x Piace(x,Gelato)
x P è equivalente a x P
Reti Semantiche
• Inizialmente sviluppate per rappresentare il
significato delle parole.
• La conoscenza è rappresentata per mezzo di
un grafo, in cui ogni nodo rappresenta un
concetto e i collegamenti le relazioni tra
questi.
• Le relazioni più importanti tra i concetti sono
le relazioni di sottoclasse e la relazione di
istanza.
• Altre relazioni sono comunque ammesse tra i
nodi delle rete
Esempio
sottoclasse
animale
sottoclasse
ha_parte
mammifero
rettile
testa
sottoclasse
largo
istanza
Clyde
dimensione
elefante
colore
grigio
istanza
Nellie
adora
mele
Reti Semantiche
• Problema :
Non esiste una semantica esplicita delle
relazioni tra i nodi della rete.
Frames
• Possono essere visti come una variante
delle reti semantiche.
• Piuttosto che rappresentare la
conoscenza in una struttura
rappresentata come un grafo, vengono
usati dei Frame (cornici)
Esempio
Mammifero:
sottoclasse:
Animale
ha_parte:
testa
Elefante:
sottoclasse:
Mammifero
colore:
Grigio
dimensione:
Largo
istanza:
Elefante
adora:
mele
Nellie:
Riferimenti bibliografici
•
R. Davis, H. Shrobe, and P. Szolovits. “What is a Knowledge
Representation?”, AI Magazine, 14(1):17-33, 1993.
•
Alison Cawsey, The Essence of Artificial Intelligence, Prentice Hall, 1998.
•
Russel S.J., Norvig P. Intelligenza Artificiale, Prentice Hall, 1998.