Dettaglio insegnamento

VALUTAZIONE DELLE PRESTAZIONI E SIMULAZIONE

MF0647

Insegnamento
VALUTAZIONE DELLE PRESTAZIONI E SIMULAZIONE
Codice
MF0647
Anno Accademico
2026/2027
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
A013 - Tecnologico-Informatico
Responsabile didattico
CFU
9
Ore di lezione
72
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ - Opzionale
Anno
2
Periodo
Primo Semestre
Sede
ALESSANDRIA
Lingua insegnamento
Italiano
Contenuti
Il corso definisce una serie di requisiti non funzionali che caratterizzano vari tipi di sistemi con particolare attenzione ai sistemi di calcolo e alle reti di calcolatori. Vengono presentati alcuni modelli matematici e metodi di analisi per la valutazione di prestazioni e affidabilità a partire dai modelli, utilizzabili in fase di progettazione o in momenti successivi quando il sistema oggetto di studio è operativo. Il corso prevede la sperimentazione di alcuni pacchetti software per la creazione di modelli di sistemi e la loro analisi con metodi analitici, numerici o simulativi. Vengono inoltre evidenziati possibili collegamenti con modelli usati nell’ambito dell’Intelligenza Artificiale, in particolare i modelli grafico probabilistici.
Testi di riferimento
J. Banks, J. S. Carson II, B. L. Nelson, David M. Nicol, Discrete-Event System Simulation , Fifth edition, Pearson Education 2010
K. Trivedi, A. Bobbio, "Reliability and Availability: Modeling, Analysis and Applications" - Cambridge University Press, 2017
Dispense o articoli scientifici scaricabili da DIR
Obiettivi formativi
Conoscenza e capacità di comprensione: Conoscere alcuni formalismi per la rappresentazione di modelli matematici (esprimibili anche in forma grafica) utili all’analisi dell’affidabilità e delle prestazioni di sistemi. Conoscere i principali metodi computazionali per l’analisi dei modelli (soluzione in forma chiusa, oppure soluzione con metodi di calcolo numerico, o tramite simulazione). Conoscere alcuni modelli di base e saper fare esempi di ambiti applicativi in cui tali modelli si possono efficacemente utilizzare.
Capacità di applicare conoscenza e comprensione: Capacità di interpretare un modello ed i risultati ricavabili dalla sua analisi. Capacità di costruire il modello di un sistema tramite un determinato formalismo, definire gli indici di prestazione interessanti, calcolare questi ultimi utilizzando uno strumento software esistente o implementandone uno ad-hoc. Capacità di validare un modello confrontando i risultati della sua analisi con quelli calcolati tramite modelli alternativi o con misure effettuate su sistemi reali.
Gli studenti e le studentesse dovranno raggiungere l'autonomia di giudizio rispetto al formalismo e ai metodi di analisi più adatti per affrontare un determinato problema. Dovranno saper scegliere il livello di dettaglio corretto per la descrizione del modello e degli indici di prestazione e scegliere gli strumenti software più adatti in base al formalismo e al metodo di analisi individuati. Gli studenti e le studentesse dovranno essere in grado di comunicare e spiegare le basi matematiche su cui si fondano i modelli e i relativi algoritmi di analisi. Dovranno inoltre essere in grado di descrivere i modelli sviluppati, giustificare le scelte fatte e illustrare l’interpretazione dei risultati ottenuti dall’analisi dei modelli. Gli studenti e le studentesse dovranno acquisire le conoscenze metodologiche necessarie per apprendere nuovi formalismi o metodi di analisi proposti nella letteratura scientifica e per implementare i relativi algoritmi.
Prerequisiti
Corso di base in probabilità e statistica
Metodi didattici
Lezioni frontali, esercitazioni in aula e in laboratorio anche tramite diversi pacchetti software per la progettazione, simulazione e soluzione di modelli. Vengono assegnati esercizi o approfondimenti su letteratura scientifica da svolgere in autonomia.
Altre informazioni
Sulla piattaforma DIR sono disponibili: la copia elettronica delle slide utilizzate a lezione, esempi di testi d’esame, quiz di autovalutazione, informazioni generali sul corso e avvisi relativi allo svolgimento del corso e sugli esami. A complemento dei testi di riferimento vengono indicati articoli scientifici in lingua inglese per approfondire alcuni argomenti trattati durante il corso.

Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati, rivolgendosi allo "Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti" e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa. Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Modalità di verifica dell'apprendimento
La verifica dell'apprendimento viene effettuata mediante compiti scritti o colloqui orali svolti dopo la fine del corso che comprenderanno circa cinque domande (che possono essere articolate in più punti ed includere lo svolgimento di esercizi) sugli argomenti trattati nel corso.
L’esame comprende anche una seconda parte (obbligatoria) che consiste o nello svolgimento in autonomia di un esercizio pratico di modellazione di un caso di studio e relativa analisi tramite strumenti software disponibili o codice sviluppato dallo studente, o in alternativa l’approfondimento in autonomia di un argomento teorico. In entrambi i casi è previsto un colloquio finale di verifica.
Nella valutazione finale viene dato maggior peso alla parte teorica: il voto della parte teorica può essere incrementato sulla base della qualità del lavoro svolto nella parte pratica.
Per raggiungere la sufficienza (18-21) ) è necessario saper enunciare le definizioni di base dei formalismi trattati, definire gli elementi che caratterizzano un modello di simulazione e l’algoritmo generico di simulazione ad eventi discreti. Inoltre occorre conoscere le regole operazionali che sottendono alla semantica dei formalismi presentati nel corso e saperle applicare almeno ad un livello di complessità basilare. È inoltre necessario svolgere l’esercizio pratico nella sua versione minima, spiegare come è stato realizzato e ricavare alcuni risultati. Per raggiungere una buona valutazione (22-25) occorre saper applicare le regole operazionali ad un livello di complessità intermedio, interpretare un modello dato e ricavarne alcune proprietà qualitative e/o quantitative a partire dai dati forniti. Inoltre è necessario fare un’analisi più approfondita dei risultati ricavabili dall’esercizio pratico. Per raggiungere una valutazione ottima (26-29), occorre anche dimostrare di saper sviluppare in autonomia un modello (o una parte di esso) e/o alcune funzioni di gestione degli eventi di un simulatore ad eventi discreti. Inoltre, si bisogna saper svolgere in modo completo e dettagliato gli esercizi di calcolo delle proprietà dei modelli proposti. Per quanto riguarda l’esercizio pratico è necessario curare nel dettaglio quanto richiesto nella consegna, svolgere un’analisi completa dei risultati (giustificando anche la scelta dei parametri), saper commentare nei dettagli quanto sviluppato ed essere in grado di rispondere a domande su possibili ampliamenti o relative a collegamenti con altri argomenti trattati nel corso. La valutazione eccellente (30-30 e lode) si raggiunge dimostrando una completa assimilazione dei concetti di base, linguaggio tecnico appropriato, precisione nell’esecuzione degli esercizi con dettaglio dei passaggi, completa padronanza della materia dimostrata da un livello di approfondimento adeguato in tutte le risposte sulla parte teorica e nello svolgimento dell’esercizio pratico oltre alla capacità di valutare criticità e proporre metodi per superarle.
Programma esteso
Ripasso delle basi di calcolo delle probabilità e statistica necessarie per comprendere i modelli matematici proposti nel corso. Definizione di requisiti non funzionali di sistemi: indici di prestazione e affidabilità.
La simulazione ad eventi discreti: principi di base, generazione di numeri casuali realizzazione di variabili casuali, studio in transitorio e a regime di indici di prestazione o affidabilità, prove ripetute e metodo batch, analisi dell’output della simulazione tramite metodi statistici. Validazione di un modello di simulazione.
Formalismi:
* Formalismi per la descrizione del comportamento di modelli dinamici e stocastici (reti di code, reti di Petri con e senza rappresentazione del tempo, catene di Markov)
* Formalismi per lo studio dell’affidabilità dei sistemi, in particolare i Fault tree e loro estensioni.
* Definizione di indici di prestazione e affidabilità tramite funzioni di reward.
Metodi di analisi:
* Catene di Markov: metodi analitici e numerici, simulazione.
* Reti di code: analisi operazionale e simulazione.
* Reti di Petri (stocastiche): analisi basata sullo spazio degli stati per lo studio qualitativo e quantitativo del comportamento del modello; analisi quantitativa e catene di Markov; simulazione.
* Fault tree: analisi basata su metodi combinatori o sullo spazio degli stati (anche per estensioni del formalismo base)
Cenni sulla relazione tra Fault Tree e modelli grafico-probabilistici (Reti Bayesiane).
* Dimostrazione e sperimentazione in laboratorio di vari strumenti software e sviluppo di un programma simulatore.
Risultati di apprendimento attesi
Conoscenze:
Conoscere i principali formalismi per la rappresentazione di modelli matematici utilizzati all’analisi dell’affidabilità e delle prestazioni di sistemi.
Conoscere i principali metodi computazionali per l’analisi dei modelli
Conoscere alcuni modelli di base
Capacità’ e abilità’
Saper spiegare il concetto di modello e uso dell’astrazione per focalizzare l’attenzione sui soli aspetti rilevanti rispetto ad uno specifico problema.
Ideare un (semplice) modello matematico di un dato sistema e mostrare come ricreare il suo comportamento dinamico tramite la simulazione.
Costruire il modello di un sistema utilizzando uno specifico formalismo (proposto nel corso) e implementarlo tramite un linguaggio di programmazione o tramite uno strumento software. Valutare l’adeguatezza di un formalismo (tra quelli proposti nel corso) per la modellazione di uno specifico sistema. Spiegare l’utilità dell’uso di modelli e della simulazione in vari domini applicativi. Spiegare i concetti di verifica e validazione di un modello, anche attraverso esempi concreti. Presentare i risultati dell’analisi (anche tramite simulazione) di un modello. Fornire una interpretazione dei risultati quantitativi ottenuti analizzando o simulando un modello e trarre opportune conclusioni sul comportamento del sistema modellato ed eventualmente indicare possibili modifiche al modello, e di conseguenza al sistema, per migliorarne le prestazioni o l’affidabilità.
Ultimo aggiornamento:09-09-2026 00:14:31