Artificial intelligence

A.A. 2024/2025
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Inglese
Obiettivi formativi
L'insegnamento si propone di fornire i fondamenti teorici, le metodologie e le tecniche dell'intelligenza artificiale per l'elaborazione di informazioni e conoscenza, con specifico riferimento alle reti neurali, ai sistemi fuzzy e alla computazione evolutiva.
Risultati apprendimento attesi
Comprensione dei fondamenti teorici, delle metodologie e delle tecniche dell'intelligenza artificiale, con specifico riferimento alle reti neurali, ai sistemi fuzzy e alla computazione evolutiva.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Primo semestre

Programma
1. Introduzione all'Intelligenza Artificiale:
Tecnologie, metodologie basate sulla natura, sistemi intelligenti.

2. Reti Neurali:
Fondamenti biologici. Unità logiche a soglia, definizione, interpretazione geometrica, reti di unità logiche a soglia, apprendimento.
Reti neurali generalizzate, struttura delle reti neurali, operatività delle reti neurali, apprendimento delle reti neurali.
Percettroni a molti-livelli, definizione, approssimazione di funzioni, regressione, discesa del gradiente, retropropagazione dell'errore, varianti della discesa del gradiente, apprendimento Manhattan, lifting, momento, retropropagazione auto-adattativa dell'errore, retropropagazione resiliente dell'errore, retropropagazione veloce, decadimento dei pesi, numero di neuroni nascosti, deep learning, analisi di sensitività.
Reti Radial Basis Function, definizioni, approssimazione di funzioni, inizializzazione dei parametri, apprendimento, forma generalizzata.
Mappe auto-organizzanti, definizione, Learning Vector Quantization, intorno dei neuroni di uscita.
Reti di Hopfield, definizioni, convergenza della computazione, memoria associative, problemi di ottimizzazione, Simulated Annealing, macchine di Boltzmann.
Reti ricorrenti, rappresentazione di equazioni differenziali, reti neurali vettoriali, retropropagazione dell'errore nel tempo.

3. Sistemi Fuzzy:
Introduzione agli insiemi fuzzy e alla logica fuzzy, linguaggio naturale e modelli formali, insiemi fuzzy, interpretazione degli insiemi fuzzy, insiemi fuzzy per modellare la somiglianza, insiemi fuzzy per modellare la preferenza, insiemi fuzzy per modellare la possibilità.
Rappresentazione degli insiemi fuzzy, definizioni basate sulle funzioni.
Logica fuzzy, proposizioni e valori di verità, t-Norme e t-Conorme, funzioni di aggregazione, assunzioni di base, operazioni sugli insiemi fuzzy, intersezione, unione, complemento, modificatori linguistici.
Principio di estensione, mappaggio degli insiemi fuzzy, prodotto cartesiano ed estensione cilindrica.
Relazioni fuzzy, relazioni booleane, relazioni e deduzione, catene di deduzioni, relazioni fuzzy semplici, composizione di relazioni fuzzy, equazioni relazionali fuzzy.
Relazioni di somiglianza, insiemi fuzzy e corpi estensionali, concetti di scalamento, insiemi fuzzy e relazioni di somiglianza.
Controllo fuzzy, controllori di Mamdani, controllori di Takagi-Sugeno-Kang, progetto di controllori fuzzy, metodi di defuzzificazione, costruzione di un controllore, controllori basati sulla logica, controllori basati sulle equazioni relazionali fuzzy, controllori neuro-fuzzy.
Analisi fuzzy dei dati e analisi dei dati fuzzy, modelli fuzzy per analisi dati, clusterizzazione fuzzy, clusterizzazione c-means, fuzzificazione mediante trasformazione della membership, fuzzificazione mediante regolarizzazione della membership, analisi di dati imprecisi usando insiemi random, teoria della possibilità e misure generalizzate, variabili random fuzzy.

4. Algoritmi Evolutivi:
Motivazioni, Metaeuristiche, evoluzione biologica, evoluzione simulate, problemi di ottimizzazione.
Nozioni e concetti di base, blocchi elementari degli algoritmi evolutivi, tecniche di ottimizzazione, gradiente ascendente o discendente, Hill Climbing, Simulated Annealing, accettazione a soglia, algoritmo del grande diluvio.
Elementi degli algoritmi evolutivi, codifica dei candidati soluzione, epistasi, fitness e selezione, selezione proporzionale alla fitness, il problema della dominanza, diminuzione della pressione selettiva, adattamento della funzione di fitness, problema della varianza, selezione basata sul grado, selezione basata sul torneo, elitismo, tecniche di nicchia, operatori genetici, operatori di mutazione, operatori di cross-over, operatori con genitori multipli, operatori di ricombinazione, ricombinazione interpolante ed extrapolante.
Fondamenti degli algoritmi evolutivi, algoritmi genetici, teorema dello schema.
Strategie evolutive, selezione, adattamento globale della varianza, adattamento locale della varianza, covarianze, operatori di ricombinazione.
Programmazione genetica, inizializzazione, operatori genetici, introni.
Ottimizzazione a molti criteri, combinazione pesata dei criteri, soluzioni Pareto ottimali, trovare le frontiere di Pareto con algoritmi evolutivi, parallelizzazione.
Particle Swarm Optimization, influenza dei parametri, Particle Swarm Optimization a molti obiettivi.
Ant Colony Optimization.
Prerequisiti
Sono richieste conoscenze relative a concetti di base di informatica, programmazione, e matematica del continuo e discreta.
Metodi didattici
Lezioni frontali in aula.
Materiale di riferimento
R. Kruse, C. Borgelt, C. Braune, S. Mostaghim, M. Steinbrecher, Computational Intelligence: A Methodological Introduction, Springer, 2016
Slide e registrazioni delle lezioni sono disponibili sul sito web dell'insegnamento: https://myariel.unimi.it/course/view.php?id=1197
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame consiste in una prova scritta volta ad accertare la preparazione e la comprensione della materia. La prova consiste in domande di teoria. La durata della prova è 2:00h. La valutazione espressa in trentesimi terrà conto della correttezza, completezza e chiarezza espositiva delle risposte alle domande. L'esame non è sufficiente se una o più risposte non sono sufficienti. Durante la prova scritta non è consentito l'utilizzo di alcun materiale.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
Docente: Genovese Angelo
Turni:
Turno
Docente: Genovese Angelo
Docente/i
Ricevimento:
Su appuntamento via email
Ufficio 6002 (6 piano)