RAPPRESENTAZIONE DELLA CONOSCENZA
Prof.ssa Stefania Bandini
Dott. Matteo Palmonari
Modulo del Corso Rappresentazione dell’Informazione e
della Conoscenza
Dipartimento di Informatica, Sistemistica e Comunicazione
Università di Milano-Bicocca
www.lintar.disco.unimib.it
[email protected]
[email protected]
tel.
02 6448 7835
Tempi e luoghi
Mercoledì
15:30

18:30
Aula.
U6 - 23
Venerdì
13:30

15:30
Aula.
U6 - 23
Finalità del corso
Il corso si propone di introdurre le caratteristiche principali della disciplina che va sotto il nome
di Rappresentazione della Conoscenza (in breve KR – dall’inglese “Knowledge Representation”).
Verrà fornita agli studenti la capacità di modellare e rappresentare conoscenza di dominio, di
utilizzare strumenti formali e computazionali che permettano di ragionare sulla conoscenza
rappresentata, e di utilizzare strumenti di rappresentazione semantica che permettano di
condividere le conoscenze attraverso il Web.
Per questi motivi verranno affrontati diversi aspetti relativi alla KR, come...
(1)
Problematiche concettuali di modellazione.
(2)
Linguaggi formali per la rappresentazione;
(3)
Linguaggi computazionali e/o utilizzabili attraverso il Web e alle tecniche di
ragionamento automatico che questi supportano
(4)
Tool e strumenti esistenti a supporto della creazione di applicazioni che sfruttino i modelli, i
linguaggi le tecniche di Rappresentazione della Conoscenza introdotte
Finalità del corso
Il corso si propone di introdurre le caratteristiche principali della disciplina che va sotto il nome
di Rappresentazione della Conoscenza (in breve KR – dall’inglese “Knowledge Representation”).
Verrà fornita agli studenti la capacità di modellare e rappresentare conoscenza di dominio, di
utilizzare strumenti formali e computazionali che permettano di ragionare sulla conoscenza
rappresentata, e di utilizzare strumenti di rappresentazione semantica che permettano di
condividere le conoscenze attraverso il Web.
Nel corso verrà dato un significato preciso a termini quali...
inferenza
Inferenza non
monotona
ontologia
semantica
Knowledge
Base
Semantic
Web
Ragionamento
Automatico
Calcolo logico
rdf
Articolazione del corso
Il corso prevedrà tre unità tematiche principali:
• Introduzione alla Rappresentazione della Conoscenza, Logica del
Primo Ordine e Decidibilità
• Programmazione Logica
• Ontologie: Modelli Concettuali e Tecnologie per il Web Semantico
Per ciascuna di queste tematiche verranno proposte durante la
lezione del Mercoledì:
–
analisi di esperienze dirette di aplicazione delle tecniche
proposte a problemi reali, con intervento di esperti di dominio
(ad sempio nell’ambito di Archeologia, Progettazione di
oggetti composti, Erogazione di Servizi).
–
esercitazioni in aula
Parte I
•
La Logica rappresenta il più noto e studiato strumento di rappresentazione della conoscenza.
Essendo una strumento di rappresentazione della conoscenza caratterizzato da una grande
generalità ed espressività, la logica può pertanto essere applicata ad un insieme di dominii molto
vasto.
•
Verrà fornita un’introduzione della logica proposizionale e predicativa e verranno affrontate in
questo primo modulo diverse tematiche e concetti che ritorneranno poi in altre parti del
programma. In particolare si insisterà sul rapporto fra linguaggio/semantica/calcolo. Tenendo
presente la centralità che lo studio di questo rapporto assume nella disciplina della KR, verranno
introdotti, per lo più mediante esempi pratici, altri strumenti di rappresentazione della conoscenza
diversi dalla Logica (ad es. Conceptual Graph, Rules, Frames, ...).
•
Verrà introdotta la questione della decidibilità e della complessità computazionale come elemento
centrale per l’utilizzo di linguaggi logici nell’ambito della rappresentazione della Conoscenza e a
supporto di tecniche di ragionamento automatico
Parte II
•
Dalla logica predicativa al Logic Programming: il ProLog. Verrà presentato il percorso che porta
dalla logica predicativa al ProLog, affrontando argomenti quali trasformazione in clausole e basi di
Herbrand ma, soprattutto presentando il calcolo attraverso la regola di risoluzione, implementata
da ProLog.
•
Dalle logiche non monotone alla programmazione logica: AnswerSet Prolog e DLV come sua
implementazione.
AnswerSet rappresenta il punto di convergenza di diversi studi passati sul ragionamento non
monotono e costituisce lo stato dell’arte nel campo. Viene spesso presentato come valido
strumento di rappresentazione della conoscenza all’interno del paradigma del Logic
Programming. DLV è un database relazionale deduttivo che implementa gran parte delle inferenze
tipiche di AnswerProlog
Parte III
•
L’Ontologia è tradizionalmente una disciplina filosofica che si occupa dello studio delle entità
(astratte e concrete) che popolano il nostro mondo. Nella sua accezione informatica, il termine è
stato recentemente assunto per indicare una vasta area di ricerca che concerne lo studio di
linguaggi formali per la rappresentazione delle “ontologie”, ovvero della nostra conoscenza circa
le entità che popolano uno o più dominii di interesse (J. Sowa, Knowledge Representation:
Logical, Philosophical and Computational Foundations, Pacific Grove, CA 2000).
•
Le aree dell’Informatica che hanno sviluppato intersezioni con il tema della rappresentazione delle
ontologie vanno dal Semantic Web al Natural Language Processing, dalla Computer Vision ai
Biological Information Systems. Ad oggi, esiste un numero consistente di formalismi per la
rappresentazione di ontologie e per la loro implementazione (quali, ad esempio, Description
Logics, XML, OWL, RDF); il loro impiego nella risoluzione di problemi reali è supportato dallo
sviluppo di specifici editor (vedi, Protegè, Rice, OilEd ) e da sistemi per il ragionamento
automatico (RACER, FaCT++, KAON2).
•
Le lezioni di questo modulo si occuperanno di introdurre il tema dell’Ontologia e delle ontologie,
indagando le varie accezioni con cui tali termini sono attualmente impiegati in Computer Science.
Una parte consistente del modulo riguarderà un approfondimento della Description Logic (o,
Logica Terminologica), non trascurando un confronto fra questa logica e i più noti formalismi “nonlogici” per la rappresentazione di ontologie.
Modalità d’esame
La prova finale per il corso di Rappresentazione della Conoscenza consiste nello svolgimento
di un tema d’esame scritto ed di un colloquio orale, che verterà sui principali argomenti
trattati a lezione e comprenderà la discussione di un progetto (*) da consegnarsi come prova
di ammissione all’esame stesso.
Il “progetto” potrà consistere (a) nella realizzazione di un prototipo progettato e realizzato secondo le
tecniche proprie della Rappresentazione della Conoscenza introdotte nel corso delle lezioni o, in alternativa,
(b) nella stesura di una tesina di approfondimento di temi inerenti al tema del corso.
(*)
Qualora se ne diano i presupposti è possibile che la componente “progetto” dell’esame sia integrata in progetti
per altri corsi, in particolar modo di Intelligenza Artificiale complementi (la parte di KR dev’essere realmente
funzionale alla realizzazione dell’altro progetto).
Materiale didattico
Una parte del materiale verrà segnalato e distribuito di volta in volta a lezione.
I testi di riferimento sono:
BRACHMAN, R. e LEVESQUE, H.
Knowledge Representation and Reasoning.
The Morgan Kaufman Series in Artificial Intelligence, Los Altos, CA. (2004)
CHITTA BARAL.
Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University
Press. (2003)
STEFFEN STABB, RUDI STUDER (Eds.)
Handbook on Ontologies
International Handbooks on Information Systems Springer, 2004
Approfondimenti:
J. Sowa. Knowledge Representation: Logical, Philosophical and Computational Foundations.
Pacific Grove, CA 2000
Ed. by F. Baader, D. Calvanese, D. McGuinness, D. Nardi, P. Patel-Schneider. The Description Logic
Handbook. Theory, Implementation and Applications. Cambridge University Press 2003
Scarica

Apertura - L.Int.Ar.