ID:
61817
Tipo Insegnamento:
Opzionale
Durata (ore):
0
CFU:
3
Url:
INGEGNERIA INFORMATICA E DELL’AUTOMAZIONE/Percorso Comune Anno: 2
Anno:
2024
Dati Generali
Periodo di attività
Primo Semestre (19/09/2024 - 17/12/2024)
Syllabus
Obiettivi Formativi
Saper progettare e poi realizzare un'applicazione di Intelligenza Artificiale.
Le principali conoscenze acquisite saranno:
- strutturazione di un progetto e relative fasi di sviluppo;
- definizione dell'architettura di sistema e dell'applicazione
- tecnologie software per lo sviluppo dei componenti
- verifica e debug dell'applicazione.
Le principali abilità (ossia la capacità di applicare le conoscenze acquisite) saranno:
- analizzare i requisiti di progetto da soddisfare;
- identificare i vincoli di progetto che determinano la scelta di modelli, architetture, paradigmi, più adatti per il contesto applicativo di interesse;
- saper sviluppare un'applicazione che compie ragionamento automatico e/o apprendimento automatico usando sistemi e linguaggi di Intelligenza Artificiale (tra i quali il linguaggio Prolog, eventualmente esteso con probabilità o vincoli, linguaggi a regole e relativi motori inferenziali, linguaggi descrittivi e ragionatori ontologici, reti neurali anche deep).
Le principali conoscenze acquisite saranno:
- strutturazione di un progetto e relative fasi di sviluppo;
- definizione dell'architettura di sistema e dell'applicazione
- tecnologie software per lo sviluppo dei componenti
- verifica e debug dell'applicazione.
Le principali abilità (ossia la capacità di applicare le conoscenze acquisite) saranno:
- analizzare i requisiti di progetto da soddisfare;
- identificare i vincoli di progetto che determinano la scelta di modelli, architetture, paradigmi, più adatti per il contesto applicativo di interesse;
- saper sviluppare un'applicazione che compie ragionamento automatico e/o apprendimento automatico usando sistemi e linguaggi di Intelligenza Artificiale (tra i quali il linguaggio Prolog, eventualmente esteso con probabilità o vincoli, linguaggi a regole e relativi motori inferenziali, linguaggi descrittivi e ragionatori ontologici, reti neurali anche deep).
Prerequisiti
Si suggerisce agli studenti di sostenere l'esame del Laboratorio di Intelligenza Artificiale dopo almeno uno fra Fondamenti di intelligenza artificiale (prof. Lamma), Data mining e analytics oppure Machine Learning e data mining (prof. Bellodi), Intelligenza Artificiale per l'ottimizzazione vincolata (prof. Gavanelli), o Deep learning (prof. Zese)
Metodi didattici
L'attività è priva di didattica frontale da parte del docente titolare, ma gli studenti possono (e sono invitati a) interagire con il docente titolare e i docenti degli altri due insegnamenti interessati per concordare il progetto e svolgerlo con adeguato supporto e suggerimenti.
I crediti sono da acquisire nel lavoro individuale e/o di gruppo di sviluppo progettuale.
I crediti sono da acquisire nel lavoro individuale e/o di gruppo di sviluppo progettuale.
Verifica Apprendimento
Obiettivo della prova d’esame consiste nel verificare il livello di raggiungimento degli obiettivi formativi precedentemente indicati.
L’esame è costituito dalla presentazione del progetto che sarà fatta dal singolo studente (in caso di attività individuale) o dal gruppo di studenti nel suo insieme. Ogni studente dovrà avere la responsabilità di una parte del progetto chiaramente identificata, dimostrare di avere compreso l'architettura applicativa e le funzioni di tutti i principali componenti software, oltre alla presentazione dettagliata dei componenti realizzati.
L’esame è costituito dalla presentazione del progetto che sarà fatta dal singolo studente (in caso di attività individuale) o dal gruppo di studenti nel suo insieme. Ogni studente dovrà avere la responsabilità di una parte del progetto chiaramente identificata, dimostrare di avere compreso l'architettura applicativa e le funzioni di tutti i principali componenti software, oltre alla presentazione dettagliata dei componenti realizzati.
Testi
Su Intelligenza Artificiale:
S. Russell e P. Norvig, "Intelligenza artificiale. Un approccio moderno", volume 1, Pearson Education-Prentice Hall, Ultima Edizione, oppure qualsiasi edizione precedente.
Sul linguaggio Prolog:
L.Console, E.Lamma, P.Mello, M. Milano: "Programmazione Logica e Prolog", UTET, Seconda Edizione, 1997.
Sull’apprendimento automatico
Fabrizio Riguzzi. Foundations of Probabilistic Logic Programming. River Publishers, 2018.
I. Goodfellow, Y. Bengio, A. Courville, and Y. Bengio. Deep learning, volume 1. MIT Press, 2016.
Sulla programmazione a vincoli
ECLiPSe documentation: http://eclipseclp.org/doc/
MiniZinc documentation: http://www.minizinc.org/resources.html
Potassco documentation: http://potassco.sourceforge.net/
Testi consigliati per approfondimento:
Luc De Raedt, “Logical and Relational Learning”, Springer, Series: Cognitive Technologies, 2008
Luc De Raedt, Kristian Kersting, Sriraam Natarajan, and David Poole, “Statistical Relational Artificial Intelligence: Logic, Probability, and Computation”, Morgan & Claypool, 2016
Daphne Koller, Nir Friedman, “Probabilistic graphical models: principles and techniques”, MIT Press, 2009
N. Lavrac and S. Dzeroski, “Inductive Logic Programming Techniques and Applications”, Ellis Horwood, 1994, http://www-ai.ijs.si/SasoDzeroski/ILPBook/
K. Apt, M. Wallace: Constraint Logic Programming using Eclipse. Cambridge University Press, 2007.
Materiale e link aggiuntivi saranno segnalati al sito dell'insegnamento:
http://www.unife.it/ing/lm.infoauto/lab-ia/
S. Russell e P. Norvig, "Intelligenza artificiale. Un approccio moderno", volume 1, Pearson Education-Prentice Hall, Ultima Edizione, oppure qualsiasi edizione precedente.
Sul linguaggio Prolog:
L.Console, E.Lamma, P.Mello, M. Milano: "Programmazione Logica e Prolog", UTET, Seconda Edizione, 1997.
Sull’apprendimento automatico
Fabrizio Riguzzi. Foundations of Probabilistic Logic Programming. River Publishers, 2018.
I. Goodfellow, Y. Bengio, A. Courville, and Y. Bengio. Deep learning, volume 1. MIT Press, 2016.
Sulla programmazione a vincoli
ECLiPSe documentation: http://eclipseclp.org/doc/
MiniZinc documentation: http://www.minizinc.org/resources.html
Potassco documentation: http://potassco.sourceforge.net/
Testi consigliati per approfondimento:
Luc De Raedt, “Logical and Relational Learning”, Springer, Series: Cognitive Technologies, 2008
Luc De Raedt, Kristian Kersting, Sriraam Natarajan, and David Poole, “Statistical Relational Artificial Intelligence: Logic, Probability, and Computation”, Morgan & Claypool, 2016
Daphne Koller, Nir Friedman, “Probabilistic graphical models: principles and techniques”, MIT Press, 2009
N. Lavrac and S. Dzeroski, “Inductive Logic Programming Techniques and Applications”, Ellis Horwood, 1994, http://www-ai.ijs.si/SasoDzeroski/ILPBook/
K. Apt, M. Wallace: Constraint Logic Programming using Eclipse. Cambridge University Press, 2007.
Materiale e link aggiuntivi saranno segnalati al sito dell'insegnamento:
http://www.unife.it/ing/lm.infoauto/lab-ia/
Contenuti
Sarà proposto un progetto - da svolgere individualmente o in piccoli gruppi di 2 persone al massimo - riguardante uno o più tra i seguenti argomenti:
- strategie di ricerca euristiche
- ragionamento automatico
- apprendimento automatico
- constraint processing
usando sistemi e linguaggi di Intelligenza Artificiale (tra i quali il linguaggio Prolog, eventualmente esteso con probabilità o vincoli, linguaggi a regole e relativi motori inferenziali, linguaggi descrittivi e ragionatori ontologici, sistemi di classificazione automatica e di data mining e clustering, neural e deep network).
- strategie di ricerca euristiche
- ragionamento automatico
- apprendimento automatico
- constraint processing
usando sistemi e linguaggi di Intelligenza Artificiale (tra i quali il linguaggio Prolog, eventualmente esteso con probabilità o vincoli, linguaggi a regole e relativi motori inferenziali, linguaggi descrittivi e ragionatori ontologici, sistemi di classificazione automatica e di data mining e clustering, neural e deep network).
Lingua Insegnamento
ITALIANO
Altre informazioni
ITALIANO
Corsi
Corsi
INGEGNERIA INFORMATICA E DELL’AUTOMAZIONE
Laurea Magistrale
2 anni
No Results Found