Intelligenza artificiale
Numero di crediti ECTS: 5 (48 ore frontali)
SSD di riferimento: INF/01
Docente: N. Leone
Prerequisiti
Obiettivi
Dopo un’introduzione generale al campo dell’Intelligenza Artificiale, il corso presenta la programmazione dichiarativa. Vengono presentati metodi formali e tecniche per la rappresentazione della conoscenza, per la deduzione automatica, per la risoluzione automatica di problemi. Viene presentata e applicata anche in laboratorio l’Answer Set Programming.
Programma
- Introduzione: Intelligenza computazionale, agenti intelligenti, basi di conoscenza.
- Linguaggi Basati sulla Logica
- Datalog: regole, valutazione generale delle regole, programmi datalog, potere espressivo del datalog, datalog e algebra relazionale, negazione stratificata, negazione non stratificata, modelli stratificati, monotonicità.
- Programmazione Logica Disgiuntiva (PLD):
- Basi teoriche: Semantica formale, proprietà dei programmi, complessità computazionale
- Estensioni: Weak constraints, aggregati
- Rappresentazione della Conoscenza e Applicazioni: Paradigma di programmazione dichiarativa (Guess/Check/Optimize), applicazioni a problemi teorici sui grafi, scheduling, e problemi di ottimizzazione
- Sistemi: DLV
- Laboratorio: Uso del sistema DLV per la rappresentazione e la risoluzione di problemi di rappresentazione della conoscenza.
Bibliografia
- C. Baral, Knowledge Representation, Reasoning and Declarative Problem Solving, Cambridge, 2003.
- D. Poole, A. Mackworth and R. Goebel, Computational Intelligence, a logical approach, Oxford, 1998.
- J. Ullman and J. Widom, A First course in Database Systems, Prentice-Hall, 1997.
Tipologia di attività didattiche
Letture e computer laboratory.
Metodi di valutazione
Esame scritto, implementazione di un semplice sistema di intellinza.