Corso di laurea

INGEGNERIA INFORMATICA (D.M. 270/04)

Politecnico di Bari · 30 materie · 0 file condivisi

Ecco tutti i dettagli sul corso di laurea selezionato. Sul UniDocs troverai gli appunti condivisi dagli altri studenti del tuo corso di laurea, ordinati per materia. Ricordati che per poter visualizzare il materiale devi essere registrato al sito e possedere un numero di crediti sufficiente.

Sfoglia il materiale didattico

Con UniDocs hai l'opportunità di studiare insieme a tutto il tuo corso di laurea. Guadagna subito dei crediti, carica il materiale del tuo ultimo esame!
Più condividi, più tempo avrai per studiare con tutta la community!

Materie del corso

ADVANCED DATA ACQUISITION AND INTELLIGENT DATA PROCESSING 1° anno · 1° semestre · 6 CFU · IMIS-01/B · 0 file

CONOSCENZA E CAPACITA' DI COMPRENSIONE: Lo studente acquisirà conoscenze relative ai sistemi di test e misura digitali (controllati da PC, embedded), sistemi per l’elaborazione dei dati di misura. CAPACITA’ DI…

Scheda dell'insegnamento

Obiettivi formativi

CONOSCENZA E CAPACITA' DI COMPRENSIONE: Lo studente acquisirà conoscenze relative ai sistemi di test e misura digitali (controllati da PC, embedded), sistemi per l’elaborazione dei dati di misura. CAPACITA’ DI APPLICARE CONOSCENZA E COMPRENSIONE: Lo studente saprà progettare e caratterizzare sistemi per l’acquisizione dati, dall’hardware (integrazione di microcontrollori, strumentazione programmabile di misura, dispositivi DAQ, sensori analogici e digitali) al software. AUTONOMIA DI GIUDIZIO: Lo studente sarà in grado di formulare le specifiche e scegliere sistemi di test e misura digitali. ABILITA’ COMUNICATIVE: Lo studente sarà in grado di: sviluppare interfacce grafiche per il controllo di sistemi digitali di misura e per la presentazione dei dati; discutere le scelte progettuali. CAPACITA' DI APPRENDIMENTO: Lo studente svilupperà: l’attitudine alla verifica in laboratorio dei concetti teorici; la capacità di reperire documentazione tecnica, datasheet, application notes, relativi a dispositivi, componenti, software in applicazioni di misura.

Programma

Sistemi di test e misura programmabili, embedded, modulari (5 h, 0.5 CFU). Standard di comunicazione e programmazione della strumentazione e per la trasmissione dell’informazione di misura, GPIB, SCPI, VISA, IVI (5 h, 0.5 CFU). Dispositivi DAQ, rumore, condizionamento e campionamento del segnale nei dispositivi DAQ (10 h, 1 CFU). Analizzatore di spettro e elaborazione numerica dei dati di misura nel dominio del tempo e della frequenza (10 h, 1 CFU). Software per lo sviluppo di strumentazione digitale (10 h, 1 CFU). Analisi e interpretazione delle specifiche di strumenti e sistemi di acquisizione dati (5 h, 0.5 CFU). Esercitazioni di laboratorio (15 h, 1.5 CFU). Realizzazione di sistemi di misura digitali in LabVIEW e in Python. Controllo di strumentazione programmabile tramite interfacce di comunicazione digitali (GPIB, USB, LXI, seriale). Programmazione di dispositivi per l’acquisizione dati. Introduzione all’uso di Arduino e di schede embedded.

Fondamenti di scienza delle misure, strumentazione analogica e digitale e principali metodi di misurazione.

L’insegnamento prevede 6 CFU, corrispondenti a 150 ore di impegno complessivo dello studente, che includono: 60 ore di didattica assistita, di cui 45 h per lezioni ed esercitazioni in aula e 15 h per esercitazioni di laboratorio guidate condotte da team di studenti; 90 ore di studio individuale, eventuale sviluppo di un progetto, tutoraggio in forma di assistenza individuale. Supporti alla didattica: dispense del corso, Arduino, strumentazione di misura, sensori, PC, software LabVIEW, laboratorio remotizzato, piattaforma istituzionale MS Teams per condivisione materiale e software didattico ed interazione con gli studenti. Gli studenti lavoratori e gli studenti con disabilità o DSA sono invitati a contattare il docente per concordare eventuali misure specifiche di supporto. Si invitano lavoratori e studenti con disabilità o DSA a contattare il docente per concordare eventuali ulteriori misure specifiche. La frequenza in presenza delle attività di laboratorio è fortemente raccomandata, tuttavia a supporto del raggiungimento degli obiettivi formativi gli studenti possono fruire del laboratorio remotizzato a distanza, disponibile in particolare per studenti part-time o in mobilità internazionale.

Modalità d'esame

Lo studente può optare tra due modalità d’esame: una verifica orale sui contenuti del corso e sulle attività di laboratorio; la discussione di un progetto consistente nello sviluppo di un sistema di misura concordato con il docente. La discussione del progetto è finalizzata a valutare aspetti quali: competenza sull’argomento; chiarezza espositiva; comprensione del funzionamento del sistema di misura, sulla base dei fondamenti teorici; consapevolezza delle scelte progettuali; conoscenza delle caratteristiche, dei limiti e dei possibili miglioramenti del sistema. Criteri di graduazione del voto: 18-21, preparazione sufficiente; 22-24, preparazione discreta; 25-27, preparazione buona; 28-29, preparazione ottima; 30-30 e lode, preparazione eccellente. Per gli studenti con disabilità e DSA saranno garantiti gli strumenti compensativi e le misure dispensative previste dalla normativa.

Testi di riferimento

Course lecture notes provided by the teacher trough institutional channels. DAQ’s and instrumentations data-sheets, application notes. F. Attivissimo, N. Giaquinto, “Data Acquisition”, Sciyo, 2010 Keitheley, “Low Level Measurement Handbook”, 2015 J. M. Pipier, “Automatic Measurement Control”, Rodhe & Schwarz, 2001 Steven W. Smith, The Scientist and Engineer's Guide to Digital Signal Processing, California Technical Publishing, 1998 S. L. Brunton and J. N. Kutz, Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control, 2nd ed. Cambridge: Cambridge University Press, 2022.

Codice insegnamento 907280

AGENT-BASED ARTIFICIAL INTELLIGENCE 1° anno · 2° semestre · 6 CFU · IINF-05/A · 0 file
Scheda dell'insegnamento

Modalità d'esame

Tipo esame: Orale - Valutazione: Voto Finale - Frequenza: Non obbligatoria

Codice insegnamento 907271

ARTIFICIAL INTELLIGENCE FOR AUTOMATION 1° anno · 2° semestre · 6 CFU · IINF-04/A · 0 file

Gli studenti dovranno acquisire le tecniche per modellare, analizzare, progettare e gestire sistemi complessi che possono essere modellati come sistemi ad eventi discreti (sistemi automatizzati di produzione, sistemi…

Scheda dell'insegnamento

Obiettivi formativi

Gli studenti dovranno acquisire le tecniche per modellare, analizzare, progettare e gestire sistemi complessi che possono essere modellati come sistemi ad eventi discreti (sistemi automatizzati di produzione, sistemi di trasporto integrati, sistemi lohistici, sistemi sanitari). Inoltre inizieranno ad affrontare problemi di automazione conl’uso dell’intelligenza artificiale. Gli studenti dovranno acquisire le tecniche per modellare, analizzare, progettare e gestire sistemi complessi che possono essere modellati come sistemi ad eventi discreti (sistemi automatizzati di produzione, sistemi di trasporto integrati, sistemi lohistici, sistemi sanitari). Inoltre inizieranno ad affrontare problemi di automazione conl’uso dell’intelligenza artificiale.

Programma

1. Generalità sui sistemi ad eventi discreti (modelli logici e temporizzati) 2 ore 2. Generalità sulla simulazione ad eventi 2 ore 3. Reti di Petri: definizioni, analisi delle proprietà strutturali. 6 ore 4. Determinazione degli invarianti 4 ore 5. Controllo a supervisione mediante reti di Petri. 4 ore 6. Reti di Petri temporizzate e simulazione 2 ore 7. Modelli con le reti di Petri di sistemi complessi (manifatturieri, di trasporto, ecc.) 2ore 8. Le catene di Markov: proprietà 2 ore 9. Ergodicità e probabilità di regime 2 ore 10. Generalità sul reinforcement learning e deep reinforcement learning 4 ore 11. Algoritmi di reinforcement 4 ore 12. Ricerca della politica 4 ore 13. Casi di studio con deep reinforcement learning 2 ore Esercitazioni: 14. Esempi di modelli di sistemi ad eventi con reti di Petri 2 ore 15. Esempi di analisi e di controllo di sistemi ad eventi 2 ore 16. Esempi di modelli con reti di code 2 ore 17. Esempi di simulazione con Matlab e con Arena 4 ore

Conoscenze di algebra lineare, calcolo della probabilità, elementi di teoria dei grafi

Modalità d'esame

Conoscenze di algebra lineare, calcolo della probabilità, elementi di teoria dei grafi

Testi di riferimento

1. Generalità sui sistemi ad eventi discreti (modelli logici e temporizzati) 2 ore 2. Generalità sulla simulazione ad eventi 2 ore 3. Reti di Petri: definizioni, analisi delle proprietà strutturali. 6 ore 4. Determinazione degli invarianti 4 ore 5. Controllo a supervisione mediante reti di Petri. 4 ore 6. Reti di Petri temporizzate e simulazione 2 ore 7. Modelli con le reti di Petri di sistemi complessi (manifatturieri, di trasporto, ecc.) 2ore 8. Le catene di Markov: proprietà 2 ore 9. Ergodicità e probabilità di regime 2 ore 10. Generalità sul reinforcement learning e deep reinforcement learning 4 ore 11. Algoritmi di reinforcement 4 ore 12. Ricerca della politica 4 ore 13. Casi di studio con deep reinforcement learning 2 ore Esercitazioni: 14. Esempi di modelli di sistemi ad eventi con reti di Petri 2 ore 15. Esempi di analisi e di controllo di sistemi ad eventi 2 ore 16. Esempi di modelli con reti di code 2 ore 17. Esempi di simulazione con Matlab e con Arena 4 ore

Codice insegnamento 907281

COMPUTER VISION 1° anno · 1° semestre · 12 CFU · IINF-05/A · 0 file

MODULO 1: CONOSCENZA E COMPRENSIONE dei concetti tipici dell’elaborazione delle immagini e conferire la capacità di progettare un sistema hw/sw di elaborazione delle immagini. Capacità di progettare autonomamente un…

Scheda dell'insegnamento

Obiettivi formativi

MODULO 1: CONOSCENZA E COMPRENSIONE dei concetti tipici dell’elaborazione delle immagini e conferire la capacità di progettare un sistema hw/sw di elaborazione delle immagini. Capacità di progettare autonomamente un sistema di image processing. Individuare autonomamente le metodologie e i tool delle librerie di Image Processing esistenti che meglio risolvono uno specifico problema di elaborazione delle Immagini. Capacità di scrivere relazioni tecniche sui progetti di Image Processing sviluppati. Capacità di studiare e comprendere autonomamente nuovi metodi di elaborazione delle immagini. MODULO 2: Lo studente comprenderà le caratteristiche ottico, elettroniche e fisiche dei principali componenti di un sistema di visione artificiale (telecamere di vario tipo e standard, lenti, illuminatori, video processors) sia per applicazioni 2D che 3D. Lo studente conoscerà parametri e metodi di valutazione di varie tipologie di set-up. Lo studente saprà progettare un sistema completo di visione artificiale in tutte le sue componenti, a partire dalle caratteristiche del caso di studio e dai requisiti attesi, defininendo sia la tipologia del sistema di acquisizione che tutti i valori minimi dei vari parametri eventualmente valutandolo di rapporto costi/prestazioni. Lo studente analizzerà criticamente le prestazioni e le caratteristiche dei componenti di un sistema di visione sapendo valutare autonomamente i migliori dispositivi e configurazioni per un determinato caso di studio. Lo studente sarà capace di presentare le caratteristiche, e le prestazioni ottenibili da un certo sistema di visione utilizzando un linguaggio tecnico appropriato e rigoroso. Lo studente potrà approfondire in autonomia le caratteristiche e i campi di utilizzo di nuovi dispositivi e componenti di un sistema visione attraverso l'analisi dei data sheets forniti dai produttori.

Programma

MODULO 1: Topic 1 (4 h– 0,5 CFU): Sistema visivo e percezione delle immagini Topic 2 (4 h– 0,5 CFU): Fondamenti di immagini digitali: acquisizione delle immagini, caratteristiche e rappresentazione delle immagini digitali, relazioni tra pixel, adiacenza, connettività, regioni, bordi e contorni, operazioni aritmetiche e logiche. Topic 3 (8 h – 1 CFU): Trasformata di Fourier, trasformata discreta del coseno (DCT), trasformata wavelet Topic 4 (16 h– 2 CFU): Tecniche di miglioramento delle immagini, nel dominio dei pixel e nel dominio trasformato, operazioni sui pixel, locali e globali, equalizzazione dell'istogramma, filtri lineari, filtri non lineari. Topic 4 (8 h– 1 CFU): Analisi delle immagini, estrazione di caratteristiche, estrazione di contorni, metodi locali basati sul gradiente di intensità luminosa. Topic 5 (8 h– 1 CFU): Segmentazione delle immagini: metodi basati su soglia, algoritmo Watershed, clustering K-means. MODULO 2: Argomento 0 (1h – 0.125 CFU) Introduzione al corso: obiettivi, programma, materiale didattico e modalità d’esame. Argomento 1 (2h – 0.25 CFU) Rappresentazione, quantizzazione e discretizzazione delle immagini. Percezione della luminosità, fisiologia dell’occhio, fenomeni visivi. Modelli monocromatici e a colori. Fotometria, colorimetria e spazi colore. Argomento 2 (14h – 1.75 CFU) Sistemi di visione: telecamere lineari/matriciali, sensori progressivi, interallacciati e multibanda. Parametri principali (spettro, focale, FOV, guadagno, risoluzione). Proprietà dei sensori e analisi tramite data sheet. Casi di studio industriali e ferroviari con telecamere lineari e matriciali. Sistemi multicamera. Ottica geometrica: parametri, lenti telecentriche, focali fisse/zoom; valutazioni tramite data sheet. Argomento 3 (3h – 0.375 CFU) Sistemi di illuminazione: spot, diffusi, dome, ring, retroilluminati. Illuminazione strutturata. Sicurezza laser e classi di rischio (IEC 60825). Argomento 4 (2h – 0.25 CFU) Filtri ottici: caratteristiche meccaniche/ottiche e valutazioni tramite data sheet. Argomento 5 (8h – 1.0 CFU) Sistemi 3D e profilometri: principi geometrici, accuratezza, sicurezza. Profilometri custom vs industriali; criteri di scelta di laser, camera, ottica e set‑up. Casi di studio industriali e ferroviari. Valutazioni tramite data sheet. Sistemi catadiottrici e relative considerazioni geometriche. Argomento 6 (3h – 0.375 CFU) Sistemi stand‑alone e PC‑based. Protocolli di comunicazione camera/PC, frame grabber, video processor. Architetture di calcolo specializzate e GPU. Argomento 7 (3h – 0.375 CFU) Immagini digitali: proprietà, funzioni 2D, aberrazioni e correzioni. Trasformazioni geometriche, interpolazioni, omografie e tecniche di calibrazione ottica. Argomento 8 (24h – 1.5 CFU) Esercitazioni: dimensionamento di sistemi di visione (matriciali, lineari, multicamera). Progettazione di profilometri custom e configurazione di profilometri industriali. Attività di laboratorio su timing, risoluzione, sensitività, binning, ottica e trigger esterni.

MODULO 1: Indispensabile: Programmazione, trasformate , calcolo vettoriale. Importante Fisica ottica MODULO 2: Indispensabile Conoscenza dei principi base di ottica geometrica e della cinematica, calcolo matriciale e trigonometrico. Importante Competenze di programmazione e di geometria proiettiva Utile Conoscenza dei concetti di elettronica digitale e dei concetti legati ai protocolli di comunicazione.

MODULO 1: Il corso comprende 6 CFU, corrispondenti a 150 ore complessive di impegno dello studente. Le ore di didattica assistita sono 60 ore di lezioni frontali ed esercitazioni. Le restanti 90 ore sono dedicate allo studio individuale ed allo svolgimento di esercizi. Le esercitazioni in aula sono dedicate allo svolgimento guidato dal docente di esercizi su argomenti trattati a lezione. La frequenza delle lezioni e delle esercitazioni non è obbligatoria, ma è fortemente consigliata, La didattica è svolta in presenza. MODULO 2: Il corso comprende 6 CFU, corrispondenti a 150 ore complessive di impegno dello studente. Le ore di didattica assistita sono 60: 36 ore di lezioni frontali e 24 ore di esercitazioni (22 in aula, 2 in laboratorio). Le restanti 90 ore sono dedicate allo studio individuale, allo svolgimento di esercizi, alla preparazione della prova scritta. Le lezioni frontali sono svolte con lavagna elettronica. Le esercitazioni in aula sono dedicate allo svolgimento guidato dal docente di esercizi su vari argomenti come da dettaglio del programma su tracce che vengono precedentemente assegnate agli studenti (di regola nella lezione precedente) per dare modo agli stessi di cimentarsi a casa (in autonomia o in gruppi, a loro discrezione) su tali esercizi prima che questi vengano poi esaminati nella successiva lezione guidata. Nell’esercitazione in laboratorio vengono mostrati in pratica gli effetti che si ottengono configurando in maniera diversa vari parametri del firmware di telecamere industriali (focale, tempo di esposizione, binning) o dispositivi esterni (trigger, illuminatori, ecc.). La frequenza delle lezioni e delle esercitazioni non è obbligatoria, ma è fortemente consigliata, Il materiale didattico è reso disponibile mediante la piattaforma indicata dal docente, di norma Microsoft Teams, e comprende slide (che -si sottolinea- non sostituiscono il testo di riferimento, ma lo integrano su alcune tematiche) ed esercizi risolti. La didattica ordinaria è svolta in presenza. Quando necessario o utile per gli studenti (ad esempio sciopero dei mezzi di trasporto), e conformemente alle disposizioni di Ateneo, alcune attività possono essere svolte anche da remoto mediante Microsoft Teams.

Modalità d'esame

MODULO 1: La valutazione finale è espressa in trentesimi e si basa su una prova scritta e successiva prova orale. La prova scritta comprende domande di teoria ed esercizi analoghi a quelli svolti a lezione e nelle esercitazioni. La prova orale consiste nella presentazione di un progetto di elaborazione delle immagini con discussione delle scelte progettuali e valutazione quantitativa delle prestazioni. Per superare l’esame è necessario svolgere in maniera almeno sufficiente sia la prova scritta che la prova orale. Durante la prova scritta non è consentito l’uso di alcuno strumento o sussidio al di fuori di penne e matite e di una calcolatrice scientifica NON PROGRAMMABILE, a meno degli strumenti compensativi e le misure dispensative previste dalla normativa per gli studenti con disabilità e DSA. Il progetto da discutere nella prova orale può essere realizzato in Matlab o Phyton e deve essere accompagnato da una relazione tecnica. MODULO 2: La valutazione finale è espressa in trentesimi e si basa su una prova scritta, e, quando ritenuto necessario dal docente o richiesto dallo studente, su una verifica orale. La prova scritta a sua volta comprende una sezione obbligatoria, in cui è proposto un esercizio analogo a quelli svolti a lezione e nelle esercitazioni. Esso descrivendo un contesto reale (il più delle volte di diagnostica industriale) e proponendo uno o più datasheets di componenti di un sistema di visione (telecamera lineare o matriciale, eventualmente anche ottica, illuminatori, frame grabber) prevede di progettare in termini di scelta dei componenti e dei parametri geometrici e fisici un set up idoneo al particolare scopo. Lo studente oltre a descrivere e motivare le scelte progettuali e le impostazioni (ad esempio frame rate minimo, working distance, focale scelta ecc) deve fornire stime di alcuni parametri prestazionali che il sistema garantirebbe (risoluzione, massimo blur, minima dimensione di un difetto rilevabile, tempo minimo necessario ad effettuare una certa acquisizione, ecc). Una seconda sezione della prova comprende uno o più quesiti facoltativi, che lo studente decide se affrontare o meno, acquisendo un tempo supplementare per ogni quesito o esercizio facoltativo che decide di svolgere. Essi riguardano o approfondimenti dell’esercizio (ad esempio valutazioni comparative con altri set up) o aspetti di tipo teorico sugli argomenti del programma del corso. Per superare l’esame è necessario svolgere in maniera almeno sufficiente l’esercizio della prima parte, proponendo un set up credibile e rispondendo in maniera esatta ad almeno 2/3 delle domande quantitative sui parametri e sulle prestazioni. Senza lo svolgimento degli esercizi/quesiti facoltativi il massimo voto conseguibile è 25/30. La durata ordinaria della prova è di 90 minuti (comprensive del tempo aggiuntivo in caso di espletamento anche degli esercizi facoltativi). Non è consentito l’uso di alcuno strumento o sussidio al di fuori di penne e matite e di una calcolatrice scientifica NON PROGRAMMABILE, a meno degli strumenti compensativi e le misure dispensative previste dalla normativa per gli studenti con disabilità e DSA. La prova orale non è ordinaria, ma può essere richiesta dal docente quando sia necessario verificare l’effettiva comprensione della prova scritta o dallo studente. Essa tuttavia non sostituisce la prova scritta e di norma non ha luogo in caso di prova scritta ampiamente insufficiente. Una prova orale negativa può comportare una riduzione del voto o il mancato superamento dell’esame; una prova orale positiva può confermare o migliorare il voto finale.

Testi di riferimento

MODULO 1: Optical and Digital Image Processing: Fundamentals and Applications. Editor(s):Dr. Gabriel Cristobal, Prof. Dr. Peter Schelkens, Prof. Hugo Thienpont Image Processing: International Edition, R. C. Gonzalez, R. E. Woods, Prentice Hall. Image Processing with MatLab: Gonzales, Wood, Prentice Hall.. Matlab, Image Processing Toolbox User’s Guide, The Math Works,Inc. MODULO 2: Il materiale didattico è preparato dal docente essenzialmente consistente in slide su argomenti teorici, data sheets di dispositivi industriali, white papers di produttori, ed esercizi tipici svolti e commentati, reso disponibile sulla piattaforma indicata dal docente, di norma Microsoft Teams durante lo svolgimento del corso. Per gli studenti non frequentanti valgono lo stesso programma, le stesse modalità di esame e gli stessi materiali di studio degli studenti frequentanti, con riferimento al programma corrente. Teaching materials are prepared by the instructor and mainly consist of slides covering theoretical topics, datasheets of industrial devices, manufacturers’ white papers, as well as typical exercises that are solved and discussed. These materials are made available through the platform indicated by the instructor, typically Microsoft Teams, during the course delivery. Non-attending students follow the same syllabus, assessment methods, and study materials as attending students, with reference to the current course program.

Codice insegnamento 907269

CONTROL OF NETWORK SYSTEMS 1° anno · 1° semestre · 6 CFU · IINF-04/A · 0 file

Il corso ha l’obiettivo di integrare le conoscenze fornite nel corso di Fondamenti di Automatica con tecniche di controllo di nello spazio degli stati con lo sviluppo di casi di studio sperimentale completi di…

Scheda dell'insegnamento

Obiettivi formativi

Il corso ha l’obiettivo di integrare le conoscenze fornite nel corso di Fondamenti di Automatica con tecniche di controllo di nello spazio degli stati con lo sviluppo di casi di studio sperimentale completi di interesse nel campo delle reti di computer. CONOSCENZE E ABILITA' ATTESE Progettazione nello spazio degli stati Retroazione di stato Osservatori Capacità di affrontare casi studio applicativi

Programma

Descrizione nello spazio degli Stati (0.3CFU). Realizzazione (0.4 CFU). Osservabilità e Controllabilità (0.4 CFU). Forma canonica di Kalman (0.4CFU). Retroazione di stato (0.3CFU). Osservatore di stato (0.4CFU). Retroazione e osservatore: sintesi del regolatore ed esempi (0.6CFU). Sincronizzazione di sistemi caotici e applicazioni alla crittografia con tecniche basate sugli osservatori (0.3CFU). Il controllo di congestione nella rete Internet (0.3CFU). Smith predictor e il controllo di congestione nel TCP (0.3CFU). Controllo rate-base e window based. Il TCP friendly rate control. TCP Reno/NewReno, Vegas, Westwood+. Il controllo di congestione nelle reti a 10Gbps (0.3CFU). Il controllo adattivo in applicazioni di video streaming su http (0.3CFU). PageRank (0.3 CFU). Filtro di kalman (0.6 CFU). Il google congestion control per WebRTC (0.3CFU). ARTICOLAZIONE IN TIPOLOGIE DIDATTICHE 4,5 CFU lezioni teoriche; 1,5 CFU esercitazioni

Fondamenti di Automatica Controllo classico nel dominio della frequenza

Lezioni, esercitazioni e laboratorio. Utilizzo di software per la progettazione (es. matlab) SUPPORTI ALLA DIDTTICA Pagina del corso a: https://c3lab.poliba.it/index.php? ALTRE INFORMAZIONI https://c3lab.poliba.it/index.php?title=Mascolo

Modalità d'esame

Esame scritto per verificare la capacità di progettazione di regolatori nello spazio degli stati. Prova orale per verificare la conoscenza dei casi di studio studiati. Progetto per verificare l'applicazione autonoma delle consocenze acquisite a piccoli progetti di laboratorio.

Testi di riferimento

  • Appunti dalle lezioni -Articoli scientifici a: https://c3lab.poliba.it/index.php?title=C3Lab -J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004 -Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 Sean Meyn, Control techniques for complex networks, Cambridge press, 2008 BOOKS and REFERENCES - lectures notes - papers at: https://c3lab.poliba.it/index.php?title=C3Lab -J. Hellerstein, Y Diao, S. Parekh, D.M. Tilbury, Feedback control of computing systems, John Wiley 2004 -Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 2002 Sean Meyn, Control techniques for complex networks, Cambridge press, 2008

Codice insegnamento 907277

CRYPTOGRAPHY 1° anno · 1° semestre · 6 CFU · MATH-02/B · 0 file

Conoscenza e capacità di comprensione: Acquisizione delle basi teoriche della crittografia (es. crittografia simmetrica/asimmetrica, curve ellittiche, funzioni hash) e dei corrispettivi concetti algebrici e…

Scheda dell'insegnamento

Obiettivi formativi

Conoscenza e capacità di comprensione: Acquisizione delle basi teoriche della crittografia (es. crittografia simmetrica/asimmetrica, curve ellittiche, funzioni hash) e dei corrispettivi concetti algebrici e computazionali. Capacità di applicare conoscenza e comprensione: Abilità nel formalizzare e risolvere problemi di sicurezza informatica e vulnerabilità crittografica traducendoli in modelli matematici rigorosi. Autonomia di giudizio: Capacità di valutare in modo critico quale algoritmo o protocollo crittografico sia più idoneo a garantire l'integrità e la riservatezza. Abilità comunicative: Competenza nel comunicare con un linguaggio tecnico appropriato le vulnerabilità di un sistema o i principi di un protocollo di sicurezza. Capacità di apprendimento: Sviluppo di un metodo di studio finalizzato all'aggiornamento continuo, fondamentale in un settore in rapida evoluzione come la sicurezza digitale e la crittografia.

Programma

Argomento 1 (25 ORE – 2,5 CFU) Aritmetica e Teoria dei numeri: Principio di induzione, Algoritmo di Euclide, Identità di Bézout, Teorema Fondamentale dell'Aritmetica, Numeri perfetti. Aritmetica modulare, Z_n, Piccolo Teorema di Fermat, Congruenze lineari, Phi di Eulero. Teorema di Eulero. Gruppi e Campi: Ordine di un gruppo e di un elemento, gruppi ciclici, sottogruppi, Teorema di Lagrange, Teorema di Cauchy, Campi finiti. Argomento 2 (25 ORE – 2,5 CFU) Crittografia: Crittosistemi classici monoalfabetici (cifrari affini), crittosistemi classici polialfabetici (cifrari matriciali), crittografia simmetrica e asimmetrica, funzioni unidirezionali e funzioni botola, crittografia a chiave pubblica, crittosistema RSA, autenticazione delle firme con RSA, protocollo per lo scambio delle chiavi Diffie-Hellman, crittosistema El-Gamal, autenticazione delle firme El-Gamal. Introduzione alle curve ellittiche, crittosistema El-Gamal con le curve ellittiche, protocollo per lo scambio delle chiavi Diffie-Hellman con le curve ellittiche, autenticazione delle firme El-Gamal con curve ellittiche. Argomento 3 (10 ORE – 1 CFU) Teoria dei codici: codici correttori di errori, lunghezza e grandezza, distanza di Hamming, distanza minima, il problema principale della teoria dei codici, Hamming Bound, codici perfetti. Codici Lineari: peso di una parola, matrice generatrice, codice duale, matrice controllo di parità, laterali e leaders, sindrome, codifica e decodifica per sindrome.

Nozioni fondamentali di Geometria e Algebra, in particolare spazi vettoriali e sistemi lineari.

Le attività formative sono organizzate attraverso una combinazione di lezioni frontali, esercitazioni in aula e attività di tutoraggio. Le lezioni frontali sono finalizzate alla presentazione dei contenuti teorici e metodologici del corso, mentre le esercitazioni consentono l’applicazione pratica delle conoscenze acquisite e lo sviluppo di competenze operative. Il tutoraggio è erogato sia in presenza sia a distanza, mediante assistenza individuale online, per supportare gli studenti nell’approfondimento degli argomenti trattati e nella risoluzione di eventuali difficoltà. Le metodologie didattiche adottate prevedono un approccio integrato che combina l’esposizione teorica, l’apprendimento attraverso esercitazioni guidate e il supporto personalizzato. Eventuali materiali didattici e attività di approfondimento sono resi disponibili anche tramite strumenti digitali e piattaforme online. L’insegnamento prevede 6 CFU, corrispondenti a 150 ore di impegno complessivo dello studente, articolate in 60 ore di didattica assistita e 90 ore di studio individuale. Le 60 ore di didattica assistita comprendono 36 ore di lezioni frontali (delle quali, fino ad un massimo del 20%, erogate a distanza) e 24 ore di esercitazioni.

Modalità d'esame

La verifica dell’apprendimento avviene mediante una prova scritta della durata di 2 ore, composta da 4 esercizi numerici e 2 quesiti teorici. La valutazione è espressa in trentesimi e tiene conto sia della correttezza e completezza dello svolgimento degli esercizi sia della capacità di rispondere in modo rigoroso e coerente ai quesiti teorici. A ciascun esercizio e a ciascun quesito teorico correttamente svolto è attribuito un punteggio pari a 5/30. La valutazione massima è riservata alle prove che evidenzino piena padronanza degli argomenti trattati, capacità di applicazione delle conoscenze acquisite e adeguata proprietà di linguaggio matematico. La Commissione d’esame si riserva la facoltà di convocare lo studente per un colloquio integrativo qualora sia necessario chiarire o approfondire alcuni aspetti dell’elaborato. Criteri di attribuzione del voto: • 30-30 e lode (Eccellente): conoscenza completa e approfondita degli argomenti, eccellente capacità analitica e di applicazione, piena padronanza del linguaggio disciplinare. • 27-29 (Molto buono): conoscenza ampia e sicura degli argomenti, buona capacità di analisi e corretta applicazione delle conoscenze. • 24-26 (Buono): buona conoscenza dei principali contenuti del corso e adeguata capacità applicativa. • 21-23 (Soddisfacente): conoscenza dei contenuti fondamentali e sufficiente capacità di applicazione e argomentazione. • 18-20 (Sufficiente): conoscenza essenziale degli argomenti principali e capacità applicative minime. • Inferiore a 18 (Insufficiente): preparazione non adeguata rispetto agli obiettivi formativi dell’insegnamento. (Per gli studenti con disabilità e DSA saranno garantiti gli strumenti compensativi e le misure dispensative previste dalla normativa)

Testi di riferimento

Materiali didattici forniti dal docente: slide, standard di riferimento e letteratura scientifica, disponibili sulla piattaforma didattica di Ateneo (Teams) e aggiornati durante il corso. Testo di riferimento: Stefano Capparelli, Appunti di Matematica Discreta, Esculapio, ISBN 9788893851053, 2019. (Disponibile in libreria) Teaching materials provided by the teacher: slides, reference standards, and scientific literature, available on the University teaching platform (Teams) and updated during the course. Source text: Stefano Capparelli, Notes on Discrete Math, Esculapio, ISBN 9788893853538, 2023.

Codice insegnamento 906826

DEEP LEARNING 1° anno · 2° semestre · 6 CFU · IINF-05/A · 0 file

The aim of the course it that of allowing the students to understand all the aspects related to DEEP LEARNING problems in their different applications. At the end of the course they will get all the knowledge needed to…

Scheda dell'insegnamento

Obiettivi formativi

The aim of the course it that of allowing the students to understand all the aspects related to DEEP LEARNING problems in their different applications. At the end of the course they will get all the knowledge needed to classify and formalize a problem under an algorithmic perspective and eventually focus on the elements related to the application domain. An implementation for all the algorithms and techniques addressed is shown during the lectures thus allowing the students for a better and deeper understanding of all the aspects associated with their application. The implementation is initially presented independently of a specific programming language in order to leave to the students the choice of the tool they are more comfortable with. • Autonomia di giudizio: Whenever possible and available, different algorithms and techniques are presented to tackle the same problem in order to foster autonomy in judging the right approach to adopt for a given problem. • Abilità comunicative: Lectures are given in a very interactive way in order to favor communication skills of the students. • Capacità di apprendimento: For some very specific topics, the students will be provided with only some initial pointers to scientific literature thus promoting their ability of self-training.

Programma

  • Intro to Deep Learning (2,5 h - 0,25 CFU) - Deep Learning Fundamentals (2,5 h - 0,25 CFU) - Deep Neural Networks (10 h - 1 CFU) How the backpropagation algorithm works, Neural Network training, Architectural Components, Activations, Losses, Improving the way neural networks learn, Examples: Music Generation - Deep Computer Vision (7,5 h - 0,75 CFU) Parameter transformation, CNNs, Computer Vision Applications, Examples: A brief introduction to Neural Style Transfer - Deep Sequence Modeling (5 h - 0,5 CFU) RNNs, GRUs, LSTMs, Attention Mechanisms, Transfer Learning and Transformers - Energy-Based Models (2,5 h - 0,25 CFU) Self supervised learning, Energy-Based Models - Deep Generative Modeling (5 h - 0,5 CFU) Autoencoders, Variational Autoencoders, Generative Adversarial Networks, Examples: De-biasing Facial Recognition Systems - Deep Reinforcement Learning (7,5 h - 0,75 CFU) Policy Gradients, Actor-Critic Algorithms, Value Function Methods, Deep RL with Q-functions, Advanced Policy Gradients, Model-based Planning, Model-based Reinforcement Learning, Model-based Policy Learning, Exploration, Offline Reinforcement Learning, Examples: Learning End-to-End Self-Driving Control, Examples: Autonomous Driving with LiDAR - Deep Learning for Natural Language Processing (5 h - 0,5 CFU) Neural Language Models, Multi-headed attention, Examples: Speech Recognition - Graph Convolutional Networks (5 h - 0,5 CFU) Graph Convolution, Spectral Graph ConvNets, Spatial Graph ConvNets, Anisotropic GCNs - Graphical methods (2,5 h - 0,25 CFU) - Uncertainty in Deep Learning (2,5 h - 0,25 CFU) - Research Directions (2,5 h - 0,25 CFU) AI Ethics, Explainability

Basic Algorithms and Data Structures; Recursive programming; Mathematical Analysis; Probability Theory; Statistics; Foundations of Machine Learning

Modalità d'esame

The final exam consists in a final test with questions and exercises related to all the topics introduced and discussed during the lectures. A final project work contribute to the final evaluation of the student.

Testi di riferimento

Deep Learning by Ian Goodfellow, Yoshua Bengio, Aaron Courville, Francis Bach Dive into Deep Learning Reinforcement Learning: An Introduction by Richard S. Sutton and Andrew G. Barto Lecture Notes Implementation of algorithms in Python

Codice insegnamento 907273

DIGITAL BUSINESS 1° anno · 2° semestre · 6 CFU · IEGE-01/A · 0 file

CONOSCENZA E CAPACITÀ DI COMPRENSIONE - Conoscenza dei principali modelli di business ed e-business e del loro ruolo nei contesti aziendali digitali. - Conoscenza dei fondamenti teorici della Business Intelligence e…

Scheda dell'insegnamento

Obiettivi formativi

CONOSCENZA E CAPACITÀ DI COMPRENSIONE - Conoscenza dei principali modelli di business ed e-business e del loro ruolo nei contesti aziendali digitali. - Conoscenza dei fondamenti teorici della Business Intelligence e del Data Mining. - Conoscenza dei principali modelli quantitativi per l’analisi dei dati, quali regressione, classificazione e regole associative. - Comprensione del ruolo dei dati e delle tecniche di analisi a supporto dei processi decisionali e delle strategie aziendali, con particolare riferimento alla gestione delle relazioni con i clienti (CRM). CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE - Capacità di applicare modelli di business e strumenti di analisi dei dati a casi aziendali reali. - Capacità di svolgere attività di data preparation e data exploration su dataset reali. - Capacità di selezionare e applicare tecniche di Business Intelligence e Data Mining per la risoluzione di problemi aziendali. - Capacità di utilizzare software di Data Mining per l’analisi dei dati e l’interpretazione dei risultati a supporto delle decisioni manageriali. ULTERIORI RISULTATI DI APPRENDIMENTO ATTESI - Autonomia di giudizio: capacità di valutare criticamente la qualità dei dati, l’adeguatezza dei modelli utilizzati e la significatività dei risultati ottenuti. - Abilità comunicative: capacità di utilizzare correttamente il linguaggio tecnico della Business Intelligence e del Data Mining e di presentare in modo chiaro i risultati delle analisi. - Capacità di apprendimento: capacità di comprendere e adottare autonomamente nuovi modelli, strumenti e tecniche di analisi dei dati per il supporto alle decisioni aziendali.

Programma

1.Business models: Canvas, Patterns e Strategia (2 CFU). 2.Principali nozioni di Business intelligence e Data Mining (0,5 CFU). 3.Data preparation e data exploration (1 CFU). 4.Regressioni (0,5 CFU). 5.Classificazione (0,5 CFU). 6.Regole associative (0,5 CFU). 7.Utilizzo del software di data mining software Weka per obiettivi di CRM (1 CFU).

Analisi matematica (importante) Statistica (indispensabile) Economia (utile)

Lezioni frontali ed esercitazioni numeriche in aula, supportate da PC e proiettore. Esercitazioni pratiche svolte mediante l’utilizzo di software di Data Mining e di analisi statistica, con applicazione a casi di studio reali.

Modalità d'esame

La verifica dell’apprendimento riguarda tutti gli argomenti del programma e richiede di dimostrare la conoscenza dei contenuti teorici del corso (primo indicatore di Dublino), la capacità di applicare modelli, strumenti e tecniche di Business Intelligence e Data Mining a problemi aziendali (secondo indicatore di Dublino), nonché la capacità di interpretare criticamente i risultati ottenuti (terzo indicatore di Dublino), utilizzando un adeguato lessico e una corretta terminologia tecnica (quarto indicatore di Dublino). La prova d’esame consta di una prova unica, di durata compresa tra 60 e 90 minuti, da svolgersi di norma in forma scritta. L’apprendimento dei concetti teorici è verificato mediante quesiti a risposta multipla e aperta relativi ai modelli di business, ai fondamenti di Business Intelligence e alle tecniche di Data Mining. La verifica della capacità di applicare le conoscenze acquisite è effettuata mediante la risoluzione di esercizi pratici, riguardanti l’analisi dei dati, l’applicazione di modelli di regressione, classificazione e regole associative, nonché l’interpretazione dei risultati a supporto delle decisioni aziendali. È prevista, ove necessario, una prova orale di approfondimento. Sono previsti otto appelli nel corso dell’anno accademico. I requisiti minimi per il superamento dell’esame sono la conoscenza dei principali modelli di business e delle tecniche di Business Intelligence e Data Mining trattate nel corso, nonché la capacità di applicarle correttamente a semplici casi di studio e dataset di dimensione limitata. Il risultato della valutazione è espresso in trentesimi. Il voto minimo per il superamento dell’esame (18/30) è attribuito a fronte di una conoscenza sufficiente dei contenuti fondamentali e di una capacità minima di applicazione delle tecniche studiate. Il voto massimo (30/30) è attribuito agli studenti che dimostrano una conoscenza completa e approfondita degli argomenti del programma, unitamente a una elevata capacità di applicare e interpretare i modelli analitici. La lode è attribuita agli studenti che dimostrano eccellenti capacità di analisi e interpretazione, nonché la capacità di applicare le conoscenze acquisite anche a contesti e problemi diversi da quelli affrontati durante il corso (quinto indicatore di Dublino). Fasce di valutazione Eccellente (30 – 30 e lode): conoscenza completa e approfondita degli argomenti, ottima padronanza del linguaggio tecnico, elevata capacità analitica e critica; lo/la studente/essa è in grado di applicare in modo autonomo ed efficace i modelli a casi complessi. Molto buono (27 – 29): conoscenza molto buona degli argomenti, buona proprietà di linguaggio e solida capacità analitica; lo/la studente/essa applica correttamente i modelli a casi concreti. Buono (24 – 26): buona conoscenza dei principali argomenti e discreta proprietà di linguaggio; lo/la studente/essa mostra un’adeguata capacità di applicare le tecniche studiate. Soddisfacente (21 – 23): conoscenza di base degli argomenti principali, sufficiente proprietà di linguaggio e capacità applicativa limitata ma adeguata a casi semplici. Sufficiente (18 – 20): conoscenza minima dei contenuti fondamentali e del linguaggio tecnico, limitata capacità di applicare correttamente i modelli. Insufficiente: conoscenza non adeguata dei contenuti del programma e incapacità di applicare le tecniche di analisi richieste.

Testi di riferimento

Lecture notes del docente (disponibili sul canale Teams del corso) Osterwalder A., Pigneur Y., Business Model Generation, 2010 Vercellis C., Business Intelligence: modelli matematici e sistemi per le decisioni, McGraw-Hill, 2006 Witten I.H., Frank E., Data Mining, Morgan Kaufmann, 2005

Codice insegnamento 907272

DIGITAL PROGRAMMABLE SYSTEMS 1° anno · 2° semestre · 6 CFU · IINF-01/A · 0 file

Al termine dell'insegnamento lo studente sarà in grado di descrivere il flusso di progetto di un sistema digitale, le architetture dei dispositivi logici programmabili, con particolare enfasi sui FPGA, i protocolli…

Scheda dell'insegnamento

Obiettivi formativi

Al termine dell'insegnamento lo studente sarà in grado di descrivere il flusso di progetto di un sistema digitale, le architetture dei dispositivi logici programmabili, con particolare enfasi sui FPGA, i protocolli digitali di interfacciamento, i fondamenti del linguaggio VHDL, le tecniche di simulazione, e la sintesi di algoritmi di machine learning su hardware specializzato.

Programma

Modulo 1 - Richiami di elettronica digitale (5 ore - 0.5 CFU) Flusso di progetto di un sistema digitale. Famiglie logiche, porte in logica NMOS e CMOS. Modulo 2 - Logiche programmabili (10 ore - 1 CFU) PLA, PAL, GAL, CPLD e microcontrollori: panoramica concettuale e storica e trade-off architetturali. Focus sulle FPGA: architettura interna, LUT, slice, DSP block, Block RAM, rete di routing, clock region. Modulo 3 - Protocolli digitali e circuiti di interfaccia (10 ore - 1 CFU) UART, USART, RS-232, RS-485, SPI e I2C/IIC per interfacciamento con sensori e trasduttori a basso costo. Circuiti di interfaccia ADC e DAC. Modulo 4 - Il linguaggio VHDL (10 ore - 1 CFU) Generalità e fondamenti del linguaggio. Elementi architetturali di base: finite state machines, contatori, datapath aritmetici, architetture MAC, moltiplicatore-accumulatore. La libreria di IP. Fondamenti di sistemi di clock, clock domain crossing, prevenzione degli slack, e istanziazione di PLL. Modulo 5 - Testing di sistemi digitali su FPGA (5 ore - 0.5 CFU) Simulazione behavioural, testbench, tecniche di analisi avanzate e cenni a tecniche hardware-in-the-loop. Modulo 6 - Sintesi di NN su FPGA (15 ore – 1.5 CFU) Motivazioni del machine learning su FPGA: latenza, potenza e determinismo. Richiami essenziali alle reti neurali: MLP e piccole CNN. Workflow di sintesi usando MATLAB: Quantizzazione con Fixed-Point Designer e perdita di accuratezza. Workflow con Deep Learning HDL Toolbox e HDL Coder: da rete pre-addestrata a IP sintetizzabile in VHDL/Verilog. Architettura del processore di inferenza generato: scheduling, buffer e MAC array. Stima delle risorse hardware necessarie e confronto con le risorse disponibili sulla board target. Modulo 7 - Sviluppo del tema d'anno (5 ore - 0.5 CFU)

Conoscenze di base di elettronica digitale, algebra booleana, circuiti combinatori e sequenziali. Familiarità con linguaggi di programmazione. Elementi di machine learning.

Lezioni teoriche mediante l'ausilio di slide, esempi guidati. Esercitazioni e attività di laboratorio. Una parte delle attività è dedicata allo sviluppo progressivo del tema d'anno, in modo da collegare i moduli teorici alla realizzazione di un sistema digitale completo.

Modalità d'esame

La verifica dell'apprendimento consiste nella discussione di un progetto finale finalizzato all'implementazione pratica e alla verifica di un sistema digitale coerente con gli argomenti del corso. In alternativa, lo studente può chiedere di sostenere un esame orale su tutti gli argomenti del corso. Per gli studenti con disabilità e DSA saranno garantiti gli strumenti compensativi e le misure dispensative previste dalla normativa.

Testi di riferimento

Testi e riferimenti consigliati: - V. A. Pedroni, Circuit Design with VHDL, 3rd ed. Cambridge, MA, USA: The MIT Press, 2020. - V. Sze, Y. H. Chen, T. J. Yang, and J. S. Emer, Efficient Processing of Deep Neural Networks. Cham, Switzerland: Springer Nature, 2020. - A. Omondi and J. C. Rajapakse, FPGA Implementations of Neural Networks. Dordrecht, Netherlands: Springer, 2006. - Materiale didattico fornito dal docente. - Manuali e documentazione dei tool FPGA utilizzati durante il corso. - Documentazione MATLAB, Fixed-Point Designer, HDL Coder e Deep Learning HDL Toolbox. Textbooks and suggested references: - V. A. Pedroni, Circuit Design with VHDL, 3rd ed. Cambridge, MA, USA: The MIT Press, 2020. - V. Sze, Y. H. Chen, T. J. Yang, and J. S. Emer, Efficient Processing of Deep Neural Networks. Cham, Switzerland: Springer Nature, 2020. - A. Omondi and J. C. Rajapakse, FPGA Implementations of Neural Networks. Dordrecht, Netherlands: Springer, 2006. - Teaching material provided by the instructor. - Manuals and documentation of the FPGA tools used during the course. - MATLAB, Fixed-Point Designer, HDL Coder and Deep Learning HDL Toolbox documentation.

Codice insegnamento 906528

ENGINEERED INTELLIGENT SYSTEMS 1° anno · 2° semestre · 6 CFU · IINF-05/A · 0 file

Il corso si propone di fornire strumenti teorici e pratici per la progettazione e l'implementazione di sistemi intelligenti. Partendo dalle definizioni classiche e dai principali modelli di agenti intelligenti, il…

Scheda dell'insegnamento

Obiettivi formativi

Il corso si propone di fornire strumenti teorici e pratici per la progettazione e l'implementazione di sistemi intelligenti. Partendo dalle definizioni classiche e dai principali modelli di agenti intelligenti, il corso affronta approcci moderni per la realizzazione e la messa in produzione di sistemi basati su agenti, offrendo una visione ampia e approfondita. Gli studenti acquisiranno solide basi teoriche e saranno incoraggiati a sviluppare una capacità critica nei confronti degli approcci contemporanei. Uno degli obiettivi principali è sviluppare negli studenti capacità di astrazione, consentendo loro di adattare strategie e soluzioni a diversi problemi e contesti, insieme a competenze concrete di progettazione e implementazione. Gli algoritmi presentati durante il corso saranno introdotti e analizzati indipendentemente dal linguaggio di programmazione, lasciando agli studenti la libertà di sperimentarne l’implementazione secondo le proprie competenze e preferenze. Tuttavia, per ciascun approccio algoritmico verrà proposta un'implementazione in Python, favorendo così una familiarizzazione diretta con gli algoritmi e consentendo l'acquisizione o il rafforzamento di competenze di programmazione. Le lezioni saranno strutturate come un dialogo continuo con gli studenti, alternando la rigorosa esposizione dei contenuti a discussioni critiche e interattive. Questo metodo mira a stimolare il giudizio critico, l’interattività, l’approfondimento concettuale e a rafforzare le capacità argomentative degli studenti. I contenuti del corso saranno allineati, quando possibile, a libri di testo e letteratura scientifica di riferimento, offrendo così agli studenti risorse per un apprendimento autonomo e un approfondimento personale. Infine, gli studenti applicheranno le conoscenze acquisite durante il corso attraverso lo sviluppo autonomo di un progetto finale. Questo permetterà di consolidare la comprensione teorica, rafforzare le capacità progettuali e tecniche dal punto di vista implementativo, nonché sviluppare competenze nella documentazione e nell'esposizione efficace del proprio lavoro.

Programma

  • Fondamenti di AI (2 h - 0,2 CFU) Definizioni di intelligenza e razionalità. Evoluzione storica dell'AI. Il test di Turing. - Agenti intelligenti (2 h - 0,2 CFU) Introduzione agli agenti, definizioni e proprietà degli ambienti e misure di performance, come progettare un agente. - Problemi di ricerca (6 h - 0,6 CFU) Agenti risolutori di problemi, algoritmi di ricerca (Tree Search e Graph Search), strategie di ricerca non informate (breadth-first, uniform-cost, depth-first, depth-limited, iterative deepening, bidirectional), strategie di ricerca informate (greedy, A*). - Ricerca locale (4 h - 0,4 CFU) hill climbing, simulated annealing, local beam search, genetic algorithms. - Ricerca avversaria (3 h - 0,3 CFU) giochi, minimax, alpha-beta pruning, giochi non deterministici. - Problemi di soddisfazione di vincoli (3 h - 0,3 CFU) Modellazione, Backtracking, euristiche, arc-consistency, forward-checking, backjumping, vincoli speciali. - Ambienti non discreti (10 h - 1 CFU) - Sistemi multi-agente (10 h - 1 CFU) - Agenti moderni con LLMs (5 h - 0,5 CFU) - LLMs e robotica (5 h - 0,5 CFU) - MLOps (10 h - 1 CFU)

Algoritmi, Strutture Dati, Programmazione Orientata Agli Oggetti, Analisi Matematica

Lezioni frontali, esercizi e laboratori progettuali, presentazioni da parte degli studenti.

Modalità d'esame

L’esame consiste nella presentazione di un progetto concordato in anticipo e inerente ai temi trattati nel corso. Gli studenti possono lavorare in gruppo, purché il progetto proposto sia proporzionato al numero di partecipanti. Il progetto prevede la progettazione e l’implementazione di quanto concordato, la consegna di un documento finale che ne sintetizzi i dettagli e la presentazione dei risultati. Durante l’esame, verrà inoltre svolta una verifica orale per accertare l’acquisizione delle conoscenze trattate nel corso.

Testi di riferimento

ITA 1. Note fornite dal docente e pubblicate su Team del corso 2. Russell, Stuart J., and Peter Norvig. Artificial intelligence: a modern approach. pearson, 2020. 3. Scardapane, Simone. "Alice's Adventures in a Differentiable Wonderland--Volume I, A Tour of the Land." Open book, 2024 ENG 1. Teacher lecture notes uploaded on course Team 2. Russell, Stuart J., and Peter Norvig. Artificial intelligence: a modern approach. pearson, 2020. 3. Scardapane, Simone. "Alice's Adventures in a Differentiable Wonderland--Volume I, A Tour of the Land." Open book, 2024

Codice insegnamento 906634

FORMAL LANGUAGES AND COMPILERS 1° anno · 2° semestre · 6 CFU · IINF-05/A · 0 file

La disciplina si propone di introdurre ai principali concetti della definizione sintattica dei linguaggi e di fornire conoscenza e pratica delle tecniche di analisi, traduzione e verifica automatiche per i moderni…

Scheda dell'insegnamento

Obiettivi formativi

La disciplina si propone di introdurre ai principali concetti della definizione sintattica dei linguaggi e di fornire conoscenza e pratica delle tecniche di analisi, traduzione e verifica automatiche per i moderni linguaggi di programmazione sia di tipo general purpose sia per applicazioni specifiche. Gli studenti saranno in grado di progettare e sviluppare interpreti e traduttori per linguaggi di programmazione sia di tipo general purpose sia per applicazioni specifiche, e di modellare e verificare progetti di sistemi attraverso tecniche di model checking. Eventuali ulteriori risultati di apprendimento attesi, relativamente a: • Autonomia di giudizio: Abilità di comprendere i problemi ed individuare soluzioni appropriate. • Abilità comunicative: Abilità di comunicare con un linguaggio tecnico appropriato. • Capacità di apprendimento: Abilità di accrescere le competenze e conoscenze con autonomia.

Programma

Linguaggi di programmazione e macchine astratte (2 ore). Traduttori, compilatori e interpreti (4 ore). Alfabeto, stringhe, vocabolario, grammatiche e loro classificazione, automi (8 ore). Grammatiche regolari e libere dal contesto, Backus-Naur Form (5 ore). Compilatori: analisi lessicale, implementazione di scanner, generatori di scanner (6 ore). Analisi sintattica, implementazione di parser, generatori di parser, trattamento errori (10 ore). Analisi semantica, traduzione guidata dalla sintassi, definizione di attributi, tabella dei simboli (7 ore). Rappresentazione intermedia, generazione del codice, elementi di ottimizzazione del codice (5 ore). Elementi di verifica formale dei sistemi, model checking (5 ore). Elementi di computazione quantistica: principi di meccanica quantistica, qubit e porte logiche, circuiti quantistici, algoritmi quantistici elementari (8 ore).

Linguaggi di programmazione, fondamenti di ingegneria del software.

Modalità d'esame

Discussione del project work dello studente ed esame orale.

Testi di riferimento

Libro di testo: Aho, Lam, Sethi, Ullman, “Compilers: principles, techniques & tools”, Pearson Int. Materiali didattici disponibili sul sito Web del docente. Manuali di strumenti software selezionati (Flex, Bison, Uppaal SMC, Qiskit) Textbook: Aho, Lam, Sethi, Ullman, “Compilers: principles, techniques & tools”, Pearson Int. Course materials on the teacher’s website. Manuals of selected software tools (Flex, Bison, Uppaal SMC, Qiskit).

Codice insegnamento 906513

FOUNDATIONS OF MACHINE LEARNING 1° anno · 1° semestre · 6 CFU · IINF-05/A · 0 file

The aim of the course it that of allowing the students to understand all the aspects related to MACHINE LEARNING problems in their different applications. At the end of the course they will get all the knowledge needed…

Scheda dell'insegnamento

Obiettivi formativi

The aim of the course it that of allowing the students to understand all the aspects related to MACHINE LEARNING problems in their different applications. At the end of the course they will get all the knowledge needed to classify and formalize a problem under an algorithmic perspective and eventually focus on the elements related to the application domain.

Programma

  • Learning by example-How to design a Machine Learning system (5 h - 0,5 CFU) - What is Machine Learning (5 h - 0,5 CFU) Supervised Learning, Unsupervised Learning, Recommender Systems, Reinforcement Learning, Generative models, Discriminative Models, Model Representation - Linear regression (10 h - 1 CFU) Linear regression with one variable: Cost function, Gradient Descent, Multiple features [Hypothesis, Batch, Stochastic, Mini-batch], Gradient descent algorithm stopping conditions [Max iteration, Absolute tolerance,Relative tolerance,Gradient Norm tolerance], Features and Polynomial regression, Gradient descent for multiple variables, Normal equations, Proof of Normal equations derivations, Probabilistic Interpretation - Logistic Regression (5 h - 0,5 CFU) Classification, Hypothesis Representation [Sigmoid, Decision boundary, Probabilistic Interpretation, Cost Function,Errors], Gradient descent [Weight update derivation], Multi-class classification One vs all - Python Language (2 h - 0,2 CFU) Overview, Basic Syntax, Data Types, Variables, Operators, Loops, Functions, String manipulation, Array manipulation, Data Frames manipulation, Input Output - Fitting (2,5 h - 0,25 CFU) Just Fit, Overfitting, Underfitting, Generalization Error - Neural Networks (8 h – 0,8 CFU) Non-linear hypotheses [Forward propagation, Non-linear classification example: XOR], Intuition, Cost function, Backpropagation algorithm, Backpropagation intuition, Random initialization, Neural Networks for Classification and Regression, Activation Functions - Support Vector Machines (5 h - 0,5 CFU) Large Margin Classifier [Decision rule, Dual problem], Support Vector Machines-Intuition [SVM cost function], Support Vector Machines-Nonlinear separable data, Cover’s theorem, Kernel trick, Mercer’s Theorem - Regression and Classification Trees (5h – 0,5 CFU) How to build a regression tree, how to build a classification tree, entropy and information gain, Random Forests, Random Forests to handle missing values - How to build a ML System (2 h - 0,2 CFU) Overview [ML system life cycle], What we do first [Data analysis and pre-processing,Boxplot, Normalization, Feature Selection], How to evaluate the hypothesis [Training/testing procedure, Generalization Error, Model selection, Validation set, Cross Validation, Holdout, K-folds Cross validation, Random subsampling], How to choose the next hypothesis [Diagnosing bias/variance, Diagnosing Lambda (regularization), Learning curves, Diagnose High Bias, Diagnose High Variance], How to measure if a ML System works well [MAE, MSE, RMSE, Accuracy, Precision/Recall, ROC], How to measure if the results are significant [paired t test, Coefficient of determination] - Unsupervised Learning-Clustering (6,5 h - 0,65 CFU) K-means, Expectation-Maximization Algorithm (EM), Choosing the value of K, Elbow method, Kullback–Leibler divergence, Information criterion approach, Akaike information criterion (AIC), Bayesian information criterion (BIC), Deviance information criterion (DIC), Silhouette Coefficient, Clustering-K-medoids, Clustering-Gaussian Mixture Models, Univariate/Multivariate Gaussian, Mixture Model, Clustering-Hierarchical Clustering, Hierarchical Clustering: Single Linkage, Hierarchical Clustering: Ward’s Criterion, Cluster distance measures, DBSCAN, HDBSCAN, Stability-based cluster validation, Anomaly Detection - Unsupervised Learning-Dimensionality Reduction (4 h - 0,4 CFU) Principal Component-Analysis, Reconstruction from compressed representation, Choosing the number of Principal Components, Kernel-PCA, ICA, Word2Vec, Autoencoders, Stacked-Autoencoders

Basic Algorithms and Data Structures; Recursive programming; Mathematical Analysis; Probability Theory; Statistics

Theoretical lectures and practical hands-on sessions. An implementation for all the algorithms and techniques addressed is shown during the lectures, thus allowing the students a better and deeper understanding of all the aspects associated with their application. The implementation is initially presented independently of a specific programming language to leave the students the choice of the tool they are more comfortable with.

Modalità d'esame

The final exam consists of a final test with questions and exercises related to all the topics introduced and discussed during the lessons (lectures + hands-on sessions), plus a coding session where the students are asked to solve a Machine Learning problem. The theoretical test is evaluated with a maximum score of 12/30. The coding session is evaluated with a maximum score of 18/30. The two tests can be done on the same day or two different days, subject to the following rules: 1. Students must pass the theoretical test first with a minimum score of 7/12 to move to the coding session. 2. Once students have passed the theoretical test, they can move to the coding session scheduled on the same day or the following one. Please note that the only allowed coding session is the following ONE, not the following ONES. 3. If students do not pass the coding session (or skip the only allowed following session), they must also pass the theoretical test again.

Testi di riferimento

Probabilistic Machine Learning: An Introduction by Kevin Patrick Murphy. MIT Press, March 2022.

Codice insegnamento 907270

INTERNET OF THINGS 1° anno · 1° semestre · 6 CFU · IINF-03/A · 0 file

Scopo dell’insegnamento è quello di descrivere le architetture, le tecnologie abilitanti ed i principi di progettazione delle reti di telecomunicazioni nella Internet of Things. Gli argomenti trattati nelle lezioni…

Scheda dell'insegnamento

Obiettivi formativi

Scopo dell’insegnamento è quello di descrivere le architetture, le tecnologie abilitanti ed i principi di progettazione delle reti di telecomunicazioni nella Internet of Things. Gli argomenti trattati nelle lezioni teoriche saranno riscontrati in laboratorio per ottenere tangibili prove sul campo dell’efficacia delle soluzioni architetturali presentate nel corso. Conoscenze e abilità attese: Conoscenza delle principali architetture IoT Conoscenza dei protocolli IPv6 e 6LoWPAN Capacità di analisi degli elementi di una rete IoT (WPAN e WAN) Capacità di usare un corretto linguaggio tecnico scientifico. Capacità di progettare sistemi IoT complessi

Programma

Fondamenti di Internet (0,5 CFU): concetti di base, reti di telecomunicazioni, architetture protocollari e modello TCP/IP (richiami). Elementi di IoT (1 CFU): requisiti architetturali e di sistema, consumi energetici, tolleranza ai guasti, specifiche di qualità del servizio, domini applicativi. Sistemi Radio Frequency Identification (2 ore): tag, accesso multiplo, applicazioni, standard EPC. Il protocollo IPv6 (1 CFU): indirizzamento, instradamento e formato del pacchetto. Architetture e protocolli di comunicazione per l’Internet of Things (1,5 CFU): 802.15, LP-WAN, ZigBee, Wireless HART, 6LoWPAN, RPL, CoAP, Wireless Sensor Network e IoT industriale. Le reti di telecomunicazioni per applicazioni industriali (1 CFU): tecnologia HART. Standard IEC/ISA SP50. Industrial Ethernet. Foundation Fieldbus, WorldFIP, SERCOS. CAN, TTCAN, FLexray, LIN. Profibus, P-Net, Ethernet power link, Lonworks. Lo standard IEC 61850 ed i sistemi di comunicazione nelle Smart Grid. Power Line Communication. Piattaforme di prototipazione rapida per sistemi IoT (1 CFU).

Conoscenze di base di reti di telecomunicazioni.

Lezioni frontali ed esercitazioni di laboratorio. Informazioni per il ricevimento studenti: Dipartimento di Ingegneria Elettrica e dell'Informazione, Politecnico di Bari ( http://dei.poliba.it) Stanza docente: III piano, DICAR, palazzo strutture.Tel. 0805963911. E-mail: [email protected]. Ricevimento: ogni giorno previo appuntamento via email.

Modalità d'esame

La verifica dell’apprendimento è stabilita tramite una prova orale finalizzata ad accertare il livello di conoscenza e capacità di comprensione raggiunto dallo studente sui contenuti teorici e metodologici indicati nel programma. La prova orale consente inoltre di verificare la capacità di comunicazione dello studente con proprietà di linguaggio ed organizzazione autonoma dell'esposizione. Contenuti minimi: architetture di protocolli a corto a lungo raggio per sistemi IoT. IPv6

Testi di riferimento

O. Hersent et al. The Internet of Things: Key Applications and Protocols, Wiley; 2nd ed, 2012. D. Uckelmann et al. Architecting the Internet of Things, Springer, 1st ed. 2011. Z. Shelby. 6LoWPAN: The Wireless Embedded Internet. Wiley; 1st ed. 2010. L. Yan et al. The Internet of Things: From RFID to the Next-Generation Pervasive Networked Systems. Auerbach Publications. 2008.

Codice insegnamento 906311

SECURE PROGRAMMING LABORATORY 1° anno · 2° semestre · 6 CFU · IINF-05/A · 0 file

Conoscenza delle principali fonti di vulnerabilità che si presentano a livello di programmazione. Conoscenza degli strumenti concettuali necessari per mitigare ed eliminare le principali vulnerabilità. Esperienza pratica…

Scheda dell'insegnamento

Obiettivi formativi

Conoscenza delle principali fonti di vulnerabilità che si presentano a livello di programmazione. Conoscenza degli strumenti concettuali necessari per mitigare ed eliminare le principali vulnerabilità. Esperienza pratica nello sviluppo e nell'analisi di frammenti di codice critici per la sicurezza. Capacità di collocare tecniche in modo appropriato all'interno di una metodologia per sviluppo di sistemi.

Programma

Introduzione generale e esempi motivanti su Secure Programming e problemi di sicurezza del software. (1 CFU) Fondamenti di vulnerabilità del codice: dalla progettazione al codice. Vulnerabilità ed esempi di attacco; comprendere i fondamenti della causa, rivelazione e mitigazione. (2 CFU) Considerazioni sui sistemi operativi e sicurezza: introdurre vulnerabilità e esempi di attacchi. (1 CFU) Strumenti e tecniche per secure programming. (2 CFU)

Linguaggi di programmazione: C, C++ , Java. Nozioni di base riguardo: assembly code (ARM, x86,... ) e organizzazione della memoria (stack, heap).

METODO DI INSEGNAMENTO Lezioni e sessioni pratiche in aula. Ausilio di slide in formato elettronico e computer portatile. SUPPORTI ALLA DIDATTICA: Slides disponibili online: http://sisinflab.poliba.it/nocera/ > Courses > Secure Programming Laboratory. - Gruppo SharePoint del corso: https://politecnicobari.sharepoint.com/sites/SPLSecureProgrammingLaboratoryAA2018-2019

Modalità d'esame

La verifica dell’apprendimento è stabilita tramite una prova comprendente una sessione scritta ed una pratica, finalizzata ad accertare il livello di conoscenza e capacità di comprensione raggiunto dallo studente sui contenuti teorici, metodologici e pratici indicati nel programma.

Testi di riferimento

[1] M. Dowd, J. McDonald and J. Schuh. The Art of Software Security Assessment, Addison-Wesley 2007. [2] Jon Erickson. Hacking, 2nd Edition - The Art of Exploitation,February 2008, 488 pp., w/ CD

Codice insegnamento 906825

SECURITY BY DESIGN 1° anno · 1° semestre · 12 CFU · IINF-03/A · 0 file

** Conoscenza e capacità di comprensione Modulo I, Network Security • Conoscenza delle principali minacce che riguardano la sicurezza nelle reti, • Capacità di comprendere le principali architetture di sicurezza e…

Scheda dell'insegnamento

Obiettivi formativi

** Conoscenza e capacità di comprensione Modulo I, Network Security • Conoscenza delle principali minacce che riguardano la sicurezza nelle reti, • Capacità di comprendere le principali architetture di sicurezza e protocolli per garantire la sicurezza in architetture e reti di telecomunicazioni. Modulo II, Ethical Hacking Laboratory • Conoscenza dei principali attacchi informatici in sistemi e reti di telecomunicazioni, • Conoscenza dei principali strumenti a disposizione di un ethical hacker per effettuare vulnerability assessment, • Capacità di effettuare un penetration test, • Capacità di utilizzare le tecniche di hacking per sistemi e reti di telecomunicazioni eterogenei, cablati e wireless. ** Capacità di applicare conoscenza e comprensione Modulo I, Network Security • Capacità di analisi degli incidenti di sicurezza, • Capacità di risoluzione dei problemi di sicurezza nelle reti e individuare e risolvere eventuali incidenti di sicurezza, • Capacità di progettare reti che soddisfino requisiti di sicurezza e configurare un Next Generation Firewall. Modulo II, Ethical Hacking Laboratory • Capacità di utilizzare tool e strumenti per l’ethical hacking, • Capacità di realizzare un exploitation di sistemi e reti di telecomunicazioni, • Capacità di individuare e correggere le principali vulnerabilità di sistemi e reti di telecomunicazioni ** Autonomia di giudizio • Sviluppo di capacità di giudizio autonomo per valutare la progettazione, l’implementazione e la manutenzione di architetture e protocolli di sicurezza nelle reti di telecomunicazioni, • Sviluppo di capacità di giudizio autonomo per valutare le vulnerabilità di un sistema delle reti di telecomunicazioni, e le migliori tecniche di hacking da utilizzare. ** Abilità comunicative • Sviluppo di abilità comunicative per descrivere architetture, protocolli ed algoritmi di sicurezza per reti di telecomunicazioni, e di architetture e protocolli di comunicazione avanzati, • Sviluppo di abilità di comunicazione riguardanti gli esiti di un penetration test. ** Capacità di apprendimento • Sviluppo di competenze di auto-apprendimento finalizzate all'aggiornamento continuo della conoscenza in un settore caratterizzato da frequenti evoluzioni tecnologiche.

Programma

Modulo I, Network Security • Introduzione generale alla sicurezza nelle reti • Strumenti e metodologie a supporto della sicurezza di architetture di rete e servizi di telecomunicazioni • Sicurezza nella rete Internet: TLS, IPSec, VPN • Autenticazione e autorizzazione: RADIUS; KERBEROS, OAUTH 2.0, ABAC • Firewall e Intrusion Detection System, Next Generation Firewall • Attività di laboratorio Modulo II, Ethical Hacking Laboratory • Introduzione all'hacking, Nozioni di base su Linux, Tecniche di raccolta informazioni • Target Enumeration e tecniche di Port Scanning • Valutazione di Vulnerability • Network Sniffing • Exploitation remoto, Exploitation lato client, Postexploitation • Wireless Hacking

Lezioni frontali Attività di laboratorio

Modalità d'esame

La verifica dell’apprendimento è stabilita tramite una prova orale finalizzata ad accertare il livello di conoscenza e capacità di comprensione raggiunto dallo studente sui contenuti teorici e metodologici indicati nel programma. La prova orale consente inoltre di verificare la capacità di comunicazione dello studente con proprietà di linguaggio ed organizzazione autonoma dell'esposizione. Contenuti minimi Modulo I -Network Security: concetti di base della network security, protocolli di sicurezza, architetture di sicurezza. Contenuti minimi Modulo II – Ethical Hacking Laboratory: utilizzare tool e strumenti per l’ethical hacking.

Testi di riferimento

  • W. Stallings, Network Security Essentials: Applications and Standards, Pearson College Div; 6 edizione, • Materiale didattico fornito dal docente, standard di riferimento, letteratura scientifica fornita dal docente. • Rafay Baloch, Ethical Hacking and Penetration Testing Guide, 2014 • Smith and Morrison, ETHICAL HACKING: A Comprehensive Beginner’s Guide to Learn and Master Ethical Hacking, 2018 • Alan T. Norman, Computer Hacking Beginners Guide • Jon Erickson, Hacking: The Art of Exploitation

Codice insegnamento 907278

SOFTWARE ARCHITECTURE AND PATTERN DESIGN 1° anno · 1° semestre · 6 CFU · IINF-05/A · 0 file

acquisire competenze relative alla progettazione di architetture software acquisire competenze nella pianificazione e progettazione del test del software acquisire competenze nella modellazione e progettazione di…

Scheda dell'insegnamento

Obiettivi formativi

acquisire competenze relative alla progettazione di architetture software acquisire competenze nella pianificazione e progettazione del test del software acquisire competenze nella modellazione e progettazione di architetture software complesse ed ecosistemi software

Programma

architettura software: principali definizioni componenti di una architettura software modellazione di architettura requisiti non funzionali modelli, pattern e stili pattern architetturali design pattern evoluzione del concetto di architettura software architettura per sistemi software complessi, adaptive e future internet applications modellazione e verifica a runtime di software metodi formali verifica formale il test teoria del test modelli di qualità

modellazione e progettazione di software ingegneria dei requisiti categorizzazione di requisiti

presentazione in aula di materiale didattico teorico presentazione di casi di studio esercitazioni di progetto

Modalità d'esame

lavoro progettuale

Testi di riferimento

  • Richard N. Taylor, Nenad Medividovic , Eic M. Dashofy. Software Architecture: Foundations, Theory, and Practice - Len Bass, Paul Clements, Katzam. Software Architecture in Practice . Addison-Wesley. - Design Patterns: Elements of Reusable Object-Oriented Software. 2000 Erich Gamma. -Pattern-Oriented Software Architecture Volume 1: A System of Patterns Volume 1 Edition by Frank Buschman, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal. -Software Testing And Analysis: Process, Principles And Techniques. Mauro Pezze, Michal Young

Codice insegnamento 907279

STATISTICAL AND MATHEMATICAL METHODS FOR ARTIFICIAL INTELLIGENCE 1° anno · 1° semestre · 6 CFU · MATH-05/A · 0 file

Conoscenze e competenze interdisciplinari dell’analisi numerica e della statistica per l’analisi dei dati e la comprensione di tecniche proprie dell’Intelligenza Artificiale Saper applicare modelli…

Scheda dell'insegnamento

Obiettivi formativi

Conoscenze e competenze interdisciplinari dell’analisi numerica e della statistica per l’analisi dei dati e la comprensione di tecniche proprie dell’Intelligenza Artificiale Saper applicare modelli matematico/statistici per la modellazione e la predizione e saperne valutare numericamente la soluzione Autonomia di giudizio: • capacità di sfruttare in modo efficace la propria formazione trasversale e ideare soluzioni innovative in contesti applicativi non convenzionali • assumere decisioni autonome in progetti anche di grandi dimensioni, nonché partecipare attivamente alle responsabilità di decisione in contesti multidisciplinari Abilità comunicative: saper comunicare con chiarezza le metodologie utilizzate e i risultati ottenuti Capacità di apprendimento: • avere le capacità di studiare e valutare autonomamente un problema e le sue possibili soluzioni • avere le capacità di apprendimento per l'accesso a percorsi avanzati, come master di secondo livello e dottorati di ricerca

Programma

Statistica - Cenni di probabilità e statistica - Significatività statistica - K-L divergence Algebra lineare numerica - Fattorizzazione SVD e richiami algebra lineare numerica - Principal Component Analysis - Metodo di discesa del gradiente Ricerca operativa - Metodi di ottimizzazione (lineare e vincolata) - Cenni di Programmazione lineare Teoria dei grafi - Matrice di adiacenza e Laplaciano - Esempi di misure di centralità

Algebra lineare. Analisi.

Lezioni frontali.

Modalità d'esame

L’esame prevede una prova scritta e la discussione di un elaborato progettuale (opzionale) che intendono verificare la capacità di descrivere le metodologie numeriche e statistiche e di risolvere problemi in relazione alla capacità di sintetizzare ed integrare gli argomenti trattati nel corso verificando il livello di comprensione dell’argomento e l’utilizzo della terminologia appropriata. Alle prove non è possibile utilizzare alcun sussidio (libri, appunti personali, etc.).

Testi di riferimento

-Jolliffe I. Principal Component Analysis (2ed., Springer, 2002) -M. P. Deisenroth, A. A. Faisal, and C. S. Ong. Mathematics for Machine Learning, 2019, Cambridge University Press -Hillier F. S., Lieberman G. J. Introduction to operations research, 2021 Mc Graw Hill - S.L. Brunton, J.N. Kutz Data-driven science and engineering: Machine learning, dynamical systems, and control, 2019, Cambridge University Press

Codice insegnamento 907268

AMBIENT INTELLIGENCE 2° anno · 1° semestre · 12 CFU · IINF-05/A · 0 file

MODULO 1 – Cyberphysical Systems (6 CFU) Il modulo del corso introduce i principali concetti relativi ai sistemi distribuiti per ambienti mobili e pervasivi. Esamina aspetti quali l’interoperabilità di piattaforme…

Scheda dell'insegnamento

Obiettivi formativi

MODULO 1 – Cyberphysical Systems (6 CFU) Il modulo del corso introduce i principali concetti relativi ai sistemi distribuiti per ambienti mobili e pervasivi. Esamina aspetti quali l’interoperabilità di piattaforme eterogenee, i paradigmi di calcolo distribuito, l’efficienza computazionale ed energetica, la scalabilità, l’affidabilità e il trust, insieme alle metodologie per la progettazione di soluzioni a tali problematiche. In ultimo, approfondisce gli elementi architetturali e tecnologici di alcune tipologie emergenti di sistemi distribuiti pervasivi, con particolare riferimento ad alcune aree di applicazione maggiormente significative. MODULO 2 – Web Intelligence (6 CFU) Il modulo del corso introduce ai principali linguaggi e tecnologie del World Wide Web. Presenta le problematiche relative al layer applicativo dello stack TCP/IP e dei sistemi Web client/server, incluse le basi teoriche ed applicative di paradigmi emergenti quali Semantic Web, Web of Things, Cloud ed Edge Computing. Fornisce gli strumenti necessari alla progettazione, implementazione e distribuzione di applicazioni rivolte a tali contesti. Gli studenti saranno in grado di progettare e sviluppare applicazioni per il World Wide Web e per ambienti mobili e pervasivi, individuando i modelli di calcolo distribuito più idonei al raggiungimento dei relativi obiettivi di prestazioni, affidabilità e interoperabilità. • Autonomia di giudizio: Abilità di comprendere i problemi ed individuare soluzioni appropriate • Abilità comunicative: Abilità di comunicare con un linguaggio tecnico appropriato. • Capacità di apprendimento: Abilità di accrescere le competenze e conoscenze con autonomia.

Programma

MODULO 1 – Cyberphysical Systems (6 CFU) Introduzione ai sistemi cyberfisici, principali problematiche; modelli di calcolo distribuito client/server e peer-to-peer. (6 ore). Distributed Ledger Technologies: sistemi transazionali distribuiti, blockchain, Merkle tree, grafi diretti aciclici; principali algoritmi di consenso. (8 ore). Smart contract, piattaforma Ethereum, Ethereum Virtual Machine, Solidity; Hyperledger Fabric e Sawtooth; IOTA (8 ore). Sistemi multi-agente, paradigma Belief-Desire-Intention, cooperazione e coordinamento distribuiti, modelli di auto-organizzazione e sistemi emergenti. (14 ore). Sistemi cyberfisici per la domotica: concetti generali, il protocollo KNX, paradigmi di interazione sociale e stigmergica tra agenti per la domotica. (8 ore) Sistemi cyberfisici per la mobilità intelligente: il protocollo On Board Diagnostics (OBD-II), le piattaforme OSEK e AUTOSAR, analisi del contesto in autoveicoli a partire da flussi di dati, fusione dell’informazione in reti veicolari. (8 ore) Sistemi cyberfisici per l’healthcare: assistenti personali su dispositivi mobili, integrazione di Radio Frequency IDentification (RFID) e Near Field Communication (NFC) nei protocolli sanitari, sistemi di supporto alle decisioni per l’healthcare. (8 ore) MODULO 2 – Web Intelligence (6 CFU) Introduzione al WWW e W3C. Architettura di un Web browser. (4 ore). Linguaggi per il Web: richiami di HyperTest Markup Language (HTML), Cascading Style Sheets (CSS), e JavaScript; AJAX, JavaScript Object Notation (JSON), Spring Framework, Angular, PHP HyperText Preprocessor. (18 ore). Tecnologie Web-oriented: Domain Name System (DNS), HyperText Transfer Protocol (HTTP), WebSocket, HTTP/2, Constrained Application Protocol (CoAP); Apache HTTP Server, Nginx Web Server. (18 ore). Cloud e Edge Computing: virtualizzazione, containerizzazione, microservizi, microdata, orchestrazione, applicazioni serverless. (12 ore). Introduzione al Semantic Web; Resource Description Framework (RDF), RDFS, SPARQL Protocol and RDF Query Language, Linked Data, Web Ontology Language (OWL). (8 ore).

Fondamenti di Informatica e dei Sistemi Informativi.

Modalità d'esame

Esame scritto e orale

Testi di riferimento

1) Di Noia, De Virgilio, Di Sciascio, Donini. Semantic Web - Tra ontologie e Open Data, Apogeo, 2013. 2) Materiali didattici disponibili sul sito Web dei docenti. 3) Specifiche standard W3C e IETF selezionate.

Codice insegnamento 907276

FINAL EXAMINATION 2° anno · 2° semestre · 18 CFU · 0 file

Prova finale

Scheda dell'insegnamento

Programma

Prova finale

Modalità d'esame

Tipo esame: Orale - Valutazione: Voto Finale - Frequenza: Non obbligatoria

Codice insegnamento 906524

HUMAN-MACHINE INTERACTION AND DATA VISUALIZATION 2° anno · 1° semestre · 6 CFU · IINF-05/A · 0 file

Conoscenza e capacità di comprensione - conoscenze e competenze relative a metodi e tecniche di Interazione Uomo-Macchina con particolare riferimento all’esperienza utente - conoscenza relativa a tecnologie delle…

Scheda dell'insegnamento

Obiettivi formativi

Conoscenza e capacità di comprensione - conoscenze e competenze relative a metodi e tecniche di Interazione Uomo-Macchina con particolare riferimento all’esperienza utente - conoscenza relativa a tecnologie delle applicazioni 3D Capacità di applicare conoscenza e comprensione - saper impiegare tecniche e strumenti propri dell’Interazione Uomo-Macchina nella progettazione di applicazioni interattive - saper creare applicazioni 3D attraverso l’uso di strumenti di programmazione avanzati e professionali Autonomia di giudizio - capacità di gestione delle problematiche relative alla creazione di applicazioni interattive Abilità comunicative: - saper redigere report e relazioni tecniche - saper lavorare in gruppo - saper comunicare con chiarezza le metodologie utilizzate nella realizzazione di applicazioni 3D e i risultati ottenuti Capacità di apprendimento: - avere le capacità di apprendere nuove conoscenze scientifiche nell'area delle tecnologie digitali - avere le capacità di studiare e valutare autonomamente un problema e le sue possibili soluzioni

Programma

Fondamenti dell'interazione uomo-computer Interaction Design e Human-Centred Design User experience Modello di interazione Norman Principi di dialogo Analisi dei requisiti Prototipi Valutazione euristica Studi sull'utente Visualizzazione delle informazioni Intelligenza Artificiale Centrata sull'Uomo Brain-Computer Interfaces Modellazione 3d con Unity Scripting C# Shader, materiali e texture Fisionomia negli ambienti 3D Rigging e skinning Animazioni Interfacce utente 3D Introduzione all'AR/VR Compilazione di applicazioni 3D

L'insegnamento è strutturato in lezioni frontali, che incoraggiano l'interazione e la partecipazione attiva degli studenti. Sono previste anche attività di laboratorio. È previsto l'uso di tecnologie digitali per lo svolgimento delle lezioni e delle esercitazioni.

Modalità d'esame

Le date degli appelli sono rese disponibili su Esse3 non appena il docente viene abilitato a farlo. Il periodo di prenotazione termina una settimana prima. L’esame consiste di una prova di verifica della teoria e di una prova pratica (caso di studio) da svolgere in gruppi di 2-4 studenti. Prova teorica La prova di verifica della teoria consisterà in un’interrogazione orale (o, in caso di molti iscritti all’appello, di una traccia contenente domande a cui rispondere per iscritto). La prova di verifica della teoria riceve un voto espresso in trentesimi. Prova pratica Durante il corso, il docente propone un elenco di casi di studio. Anche se fortemente sconsigliato, gli studenti possono proporre un caso di studio diverso da quelli proposti in cui dimostrano di essere in grado di applicare correttamente il processo Human-Centred a un caso di studio (per esempio, progettazione user-centred di un sistema interattivo, valutazione di un sito web, etc). Il caso di studio verrà presentato da tutti i componenti del gruppo nell’appello in cui sosterrà la prova di verifica della teoria il primo componente del gruppo. La presentazione avrà una durata di circa 15 minuti e sarà coadiuvata dall’uso di slides (una decina circa). La documentazione che descrive il caso di studio va consegnata (usando un qualunque canale: email, WeTransfer, link dropbox, etc) non più tardi di 3 giorni prima la data dell’appello. La prova di verifica della teoria riceve un voto espresso in trentesimi. A seconda della difficoltà o della qualità della realizzazione, i casi di studio proposti dal docente permettono di guadagnare eventuali punti bonus (da 0 a 3). Calcolo del voto finale Il voto finale dell’esame, espresso in trentesimi, è calcolato secondo la seguente formula: voto finale = media(voto tema d’anno + voto orale) + punti bonus Per gli studenti del Dottorato di Ricerca, l’esame consiste nella presentazione di un seminario, della durata massima di 30 minuti, in cui presentano la loro ricerca e come tenere in considerazione l’HCI. Bisogna preparare una breve tesina e una presentazione powerpoint.

Testi di riferimento

Dispense fornite dal docente. Roberto Polillo. FACILE DA USARE – Una moderna introduzione alla ingegneria dell’usabilità. Edizioni Apogeo.

Codice insegnamento 907282

INFORMATION RETRIEVAL AND PERSONALIZATION 2° anno · 1° semestre · 6 CFU · IINF-05/A · 0 file

The aim of the course is to introduce to the fundamentals of Information Retrieval systems for indexing and retrieve information within documents and Information Filtering / Recommendation systems for recommending…

Scheda dell'insegnamento

Obiettivi formativi

The aim of the course is to introduce to the fundamentals of Information Retrieval systems for indexing and retrieve information within documents and Information Filtering / Recommendation systems for recommending personalized information to users (e.g., books or movies). At the end of the course, the students will be able to formalize, design, and evaluate Information Retrieval and Information Filtering systems. The students will deal with techniques for designing and building Information Retrieval systems and personalized recommendation systems. They will design mathematical models, implement some of them using the preferred programming language, and perform experimental evaluations. Eventuali ulteriori risultati di apprendimento attesi, relativamente a: • Autonomia di giudizio: Whenever possible and available, different algorithms and techniques are presented to tackle the same problem in order to foster autonomy in judging the right approach to adopt for a given problem. • Abilità comunicative: Lectures are given in a very interactive way in order to favor communication skills of the students. • Capacità di apprendimento: For some very specific topics, the students will be provided with only some initial pointers to scientific literature thus promoting their ability of self-training.

Programma

  • Introduction to Information Retrieval (IR) and Information Filtering (IF) (2,5 h, 0,25 CFU) - Techniques for text preprocessing and indexing (2,5 h, 0,25 CFU) - Models of IR systems (Boolean, vectorial, probabilistic models) (5 h, 0,5 CFU) - Web Search and search personalization (crawling, link analysis, webpage relevance estimation) (2,5 h, 0,25 CFU) - Introduction to Recommender Systems (taxonomy, ratings and feedback, relevance, error/accuracy/ranking) (2,5 h, 0,5 CFU) - Collaborative filtering recommender systems (kNN, dimensionality reduction, SVD, MF, Probabilistic MF) (10 h, 1 CFU) - Content-based filtering and hybrid recommender systems (similarity, user profiles, TF-IDF, side information, factorization machines) (7,5 h, 0,75 CFU)

Basic Algorithms and Data Structures; Recursive programming; Mathematical Analysis; Probability Theory; Statistics; Foundations of Machine Learning

Modalità d'esame

The final exam consists in a final test with questions and exercises related to all the topics introduced and discussed during the lectures. A final project work contribute to the final evaluation of the student.

Testi di riferimento

Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze. Introduction to Information Retrieval. Cambridge University Press, 2008. R Francesco Ricci, Lior Rokach, Bracha Shapira, Paul B. Kantor. Recommender Systems Handbook. 2022. Lecture Notes Implementation of algorithms in Python

Codice insegnamento 907274

INFORMATION SYSTEMS DESIGN AND BIG DATA 2° anno · 1° semestre · 12 CFU · IINF-05/A · 0 file

La disciplina si propone di introdurre alle principali metodologie di progettazione di sistemi informativi di tipo enterprise e distribuito. Particolare attenzione sarà data alle Service Oriented Architecture di tipo…

Scheda dell'insegnamento

Obiettivi formativi

La disciplina si propone di introdurre alle principali metodologie di progettazione di sistemi informativi di tipo enterprise e distribuito. Particolare attenzione sarà data alle Service Oriented Architecture di tipo classico e ai loro più recenti sviluppi, alle metodologie che vanno sotto il nome di DevOps, ai sistemi informativi per Big Data e ai sistemi NoSQL. Ogni argomento è affrontato coniugando gli aspetti concettuali e metodologici con esempi applicativi per mezzo dei più rilevanti strumenti ed ambienti allo stato dell’arte. Gli studenti saranno in grado di progettare e sviluppare sistemi informativi complessi e distribuiti per architetture orientate ai servizi, per l’elaborazione di flussi di eventi e per l’analisi di Big Data • Autonomia di giudizio: Abilità di comprendere i problemi ed individuare soluzioni appropriate. • Abilità comunicative: Abilità di comunicare con un linguaggio tecnico appropriato. Abilità di accrescere le competenze e conoscenze con autonomia.

Programma

Progettazione di sistemi informativi: principi fondamentali, modelli del ciclo di vita dei sistemi informativi; evoluzione delle metodologie di progettazione. (8 ore). Progettazione di sistemi informativi distribuiti: layer e tier; middleware per Remote Procedure Call (RPC); sistemi transazionali distribuiti; message-oriented middleware, paradigma publish/subscribe; Enterprise Application Integration e message broker; workflow management system; application server; sistemi di elaborazione di data stream e event stream. (22 ore). DevOps: principi fondamentali; la pipeline del software, build system, controllo di versione distribuito; continuous integration, continuous delivery, continuous deployment; telemetria nei sistemi informativi; DevOps e sicurezza, DevSecOps. (25 ore). Service-Oriented Architecture: paradigma REST; Simple Object Access Protocol (SOAP), Web Service Description Language (WSDL), Universal Description, Discovery and Integration (UDDI), Business Process Execution Language (BPEL4WS). (18 ore). Big Data: concetti principali; infrastrutture e paradigmi di programmazione per Big Data, MapReduce e Hadoop; elaborazione di Big Data, Hive, Spark. (32 ore) Sistemi NoSQL: modelli dei dati, sharding, replicazione e consistenza. (15 ore).

Linguaggi di programmazione, fondamenti di ingegneria del software.

Modalità d'esame

Esame scritto e orale

Testi di riferimento

Materiali didattici disponibili sul sito Web del docente. Manuali di strumenti software selezionati.

Codice insegnamento 907275

INFORMATION SYSTEMS SECURITY AND PRIVACY 2° anno · 1° semestre · 6 CFU · IINF-05/A · 0 file

Il corso mira a fornire agli studenti una solida comprensione delle minacce alla sicurezza e privacy dei sistemi informativi e delle relative contromisure. Gli obiettivi includono l'approfondimento di concetti di…

Scheda dell'insegnamento

Obiettivi formativi

Il corso mira a fornire agli studenti una solida comprensione delle minacce alla sicurezza e privacy dei sistemi informativi e delle relative contromisure. Gli obiettivi includono l'approfondimento di concetti di sicurezza, malware, crittografia, autenticazione e controllo accessi, insieme alle best-practice per la sicurezza del software e la mitigazione delle vulnerabilità.

Programma

  • Introduzione alla sicurezza dei sistemi informativi - Concetti fondamentali - Minacce, attacchi e contromisure - Principi e strategie di design - Incidenti di cybersecurity noti * Strumenti crittografici - Cifratura simmetrica - Autenticazione dei messaggi e funzioni hash - Cifratura asimmetrica - Scambio di chiavi - Firma digitale - Certificati a chiave pubblica * Generatori di numeri casuali - Casualità e imprevedibilità - Generatori di numeri pseudocasuali (PRNG) - Generatori di numeri casuali reali (TRNG) - Generatori di numeri casuali crittograficamente sicuri (CPRNG) - Debolezze, attacchi e difese * Software malevolo (Malware) - Tipi di software malevolo - Tecniche di propagazione - Tipi di payload - Tecniche di persistenza - Contromisure * Autenticazione - Principi e problematiche - Autenticazione basata su password - Autenticazione basata su token - Autenticazione biometrica - Autenticazione utente remota * Controllo degli accessi - Principi e concetti - Soggetti, oggetti e diritti di accesso - Controllo degli accessi discrezionale (DAC) - Controllo degli accessi obbligatorio (MAC) - Controllo degli accessi basato sui ruoli (RBAC) - Controllo degli accessi basato sugli attributi (ABAC) * Sicurezza nella programmazione di sistema - Principi e problematiche - Il linguaggio di programmazione C e le sue insidie - Comportamento indefinito (undefined behavior) e i suoi rischi - Indirizzi, puntatori, array e la loro sicurezza - Allocazione dinamica della memoria e i relativi problemi di sicurezza * Sicurezza del software a basso livello - Introduzione, layout della memoria, stack frame - Corruzione dello stack (buffer overflow, stack smashing, format strings, conversione di interi, ecc.) - Corruzione dell'heap (use-after-free, double-free, heap overflow, ecc.) - Tecniche avanzate (return-to-libc, return oriented programming, ecc.) - Mitigazioni (write xor execute, stack canaries, ASLR, autenticazione dei puntatori, ecc.)

Buona conoscenza delle nozioni di base riguardanti: - Fondamenti della programmazione strutturata - Moduli fondamentali di un sistema operativo - Reti di telecomunicazioni

  • Lezioni ed esercitazioni in aula supportate da videoproiettore e/o lavagna multimediale. - Esercitazioni di supporto mirate alla comprensione dei principali strumenti e tecniche relativi alla sicurezza informatica nei sistemi informativi.

Modalità d'esame

Esame scritto composto da quesiti di natura teorica e pratica.

Testi di riferimento

  • Computer security - Principles and practice. William Stallings, Lawrie Brown. Pearson, Jul 2023. - Computer security. David Wagner, Nicholas Weaver, Peyrin Kao, Fuzail Shakir, Andrew Law, and Nicholas Ngai. 2024 ( https://textbook.cs161.org)

Codice insegnamento 906827

INTERNSHIP 2° anno · 2° semestre · 6 CFU · 0 file

Stage interno

Scheda dell'insegnamento

Programma

Stage interno

Modalità d'esame

Tipo esame: Orale - Valutazione: Voto Finale - Frequenza: Non obbligatoria

Codice insegnamento 906523

ADVANCED NETWORKING AND QUANTUM INTERNET 6 CFU · 0 file
DIRITTO AMMINISTRATIVO DIGITALE, PRIVACY E PROTEZIONE DEI DATI 6 CFU · 0 file

conoscenze e competenze sui principi giuridici inerenti alla privacy e al trattamento dei dati personali, con particolare riferimento al diritto di Internet • trattare dati in accordo con la normativa sulla privacy e…

Scheda dell'insegnamento

Scheda dell'a.a. 2025/2026, ripresa da un altro corso di laurea dello stesso ateneo.

Obiettivi formativi

  • conoscenze e competenze sui principi giuridici inerenti alla privacy e al trattamento dei dati personali, con particolare riferimento al diritto di Internet • trattare dati in accordo con la normativa sulla privacy e accesso ai documenti amministrativi • assumere decisioni consapevoli in progetti, anche di grandi dimensioni, nonché di partecipare attivamente alle responsabilità di decisione in contesti multidisciplinari • capacità di interagire su argomenti e tematiche disciplinari e interdisciplinari, anche a livelli avanzati di conoscenza

Programma

Le fonti del diritto. L’atto amministrativo globale (informatizzato). Nozione di dato “trattabile”, espressione del consenso e accessibilità dell’atto. Profilazione del dato personale e pseudonimizzazione: le forme di trattamento c.d. automatizzato. Responsabile della protezione dei dati personali e ruolo assolto nella interlocuzione con il Garante. DPO e posizione assunta nei gangli di Amministrazioni pubbliche e aziende. Gli accessi declinati dalla legge 241 nelle più recenti riscritture. Strumentalità dell’accesso e tutela del dato personale (anche reddituale). Dati sanitari, diritto alla riservatezza e nuove tematiche legate alla pandemia: l’attuale “esibizione del “green pass”. La nuova amministrazione digitale, la circolazione dei dati e la ostensione degli stessi. Privacy, dati sensibili e “super sensibili”. I rapporti tra privacy e situazioni giuridiche soggettive. Accesso civico e accesso “generalizzato”: rapporti e interazioni con la riservatezza. Tutele costituzionali e diritto all’oblio nella vigenza della trasparenza dell’azione amministrativa. nessuno Lezioni frontali, seminari di approfondimento e anali di casi.

Modalità d'esame

L’esame è svolto in forma orale e prevede circa 3 o 4 domande, e dura complessivamente 20 minuti. Le domande saranno rivolte a verificare i risultati dell’apprendimento. In tutti i casi è valutata sia la comprensione delle singole parti del programma, sia la capacità di analisi e di sintesi, nonché la chiarezza espositiva e l’abilità nell’uso del linguaggio tecnico giuridico.

Testi di riferimento

Intelligenza artificiale e diritto: una rivoluzione?, a cura di A. Pajno - F. Donati - A. Perrucci, Il Mulino, 2022. Limitatamente alle seguenti parti del testo: parte I - capitoli I; parte II - capitolo III; parte III - capitolo VIII, X e XIV.

Codice insegnamento 907134

MARKETING E CUSTOMER ANALYTICS 6 CFU · 0 file

Attraverso il corso gli studenti acquisiranno la conoscenza dei principali temi del marketing strategico, la conoscenza approfondita di alcuni modelli quantitativi di marketing, in particolare la scomposizione della…

Scheda dell'insegnamento

Scheda ripresa da un altro corso di laurea dello stesso ateneo.

Obiettivi formativi

Attraverso il corso gli studenti acquisiranno la conoscenza dei principali temi del marketing strategico, la conoscenza approfondita di alcuni modelli quantitativi di marketing, in particolare la scomposizione della quote di mercato, gli algoritmi e le metriche per la segmentazione il targeting e per il posizionamento, le metriche di fedeltà, consumo e awareness, i modelli di regressione per studiare il comportamento dei consumatori.

Programma

Marketing Introduzione. Mercato e orientamenti strategici; processi decisionali. Cap. 1: Misurare i risultati. Quote di mercato assolute. Scomposizione delle quote di mercato: brand e market penetration, share of wallet, sole usage, heavy usage index, penetration share. Brand e category development index. Quote di mercato relative. Leve per aumentare la quota di mercato. Cap. 2: Rappresentare e segmentare il mercato. Richiami di statistica descrittiva. Segmentazione: processo e variabili. Cluster analysis. Metriche di similarità. Valutare e profilare i segmenti: richiami di statistica inferenziale, intervallo di confidenza, profilazione, misure di omogeneità ed eterogeneità. Analisi del comportamento del consumatore: processo di acquisto e classificazione. Targeting, misurare l’attrattività di un mercato. Dimensione e tasso di crescita. Approcci all’ingresso nel mercato. Cap. 3: Posizionamento. Differenziazione. Analisi di posizionamento attraverso perceptual map, mappe attribute-based, mappe similarity-based, rappresentazione di preferenze e segmenti. Previsioni di vendita. Positioning claim. Branding. Cap. 4: Azioni di marketing. Decisioni di prodotto: struttura, ciclo di vita, strategie, previsioni di vendita. Decisioni di comunicazione: mix della comunicazione, obiettivi, metriche, canali. Decisioni di prezzo: pricing, obiettivi, metodi. Customer analytics Introduzione. Cap. 5: Customer metrics: Metriche di fedeltà: frequenza, recency, churn rate, retention rate, customer lifetime value; Metriche di consumo: scontrino e spesa medi, ratio spend score, reservation price, market basket variance, sensibilità a sconto; Metriche di esperienza: percezioni, customer satisfaction, willingeness to recommend, rating Metriche di brand awareness, attitude (tempo speso, bounce rate, intenzioni di acquisto, click-through rate), adoption (conversion e redemption rate, trial e repeat rate, acquisition rate) Cap. 6: Regression analysis Richiami di statistica: correlazione e covarianza Metodo dei minimi quadrati Costruzione di modelli di regressione Analisi del comportamento nel tempo Sensibilità al prezzo Funzione utilità: reservation price e conjoint analysis Modulo1 Cap.1. 1 cfu Cap.2. 1,5 cfu Cap.3. 1 cfu Cap.4. 1 cfu Esercitazioni 1,5 cfu Modulo2 Cap.5. 2 cfu Cap.6. 2,5 cfu Esercitazioni 1,5 cfu

Analisi matematica, statistica, economia, gestione aziendale.

Lezioni ed esercitazioni numeriche in aula supportate da PC portatile e proiettore.

Modalità d'esame

Uno scritto a fine corso ed esami orali durante l'anno per un totale di otto appelli. La prova scritta prevede, di norma, 30 quesiti per una durata di 60 minuti. La prova orale dura, di norma, 30 minuti ed è articolata in tre domande che coprono l'intero programma. Si applicano le seguenti fasce di voto: 30 - 30 e lode: ottima conoscenza degli argomenti, ottima proprietà̀ di linguaggio, ottima capacità analitica; 27 - 29: buona conoscenza degli argomenti, notevole proprietà̀ di linguaggio, buona capacità analitica; 24-26: buona conoscenza dei principali argomenti, discreta proprietà̀ di linguaggio; 21-23: la padronanza degli argomenti principali non è completa, pur possedendo le conoscenze fondamentali; 18-20: minima conoscenza degli argomenti principali; Insufficiente: la conoscenza è troppo scarsa.

Testi di riferimento

Testo di riferimento: Gorgoglione M., Marketing strategico e consumer analytics, McGraw Hill, 2026. Altri testi per approfondimenti Cap. 1 Farris P.W., Bendle N.T., Pfeifer P.E., Reibstein D.J., Marketing Metrics: 50+ Metrics Every Executive Should Master, Wharton School Publishing – Pearson, 2006 Cap. 2 e Cap. 3 Lilien G.L. e Rangaswamy A., Marketing Engineering, Prentice-Hall, 2002 Myers J.H., Segmentation & Positioning for Strategic Marketing Decisions, South-Western Educational, 1996 Cap. 4 Kotler P., Keller K.L., Chernev A., Marketing Management, Pearson, 2022 Lambin J., Marketing driven management, McGrawHill, 2021 Cap. 5 Gorgoglione M., Personalizzare le relazioni con i clienti. Guida per imprenditori e manager alle frontiere del business, Franco Angeli, 2011 Cap. 6 Malhotra N.K., Birks D.F., Wills P., Marketing Research, Pearson, 2010

Codice insegnamento 906928

RISK MANAGEMENT 6 CFU · 0 file

Obiettivi formativi Conoscenza e capacità di comprensione • Descrivere il concetto di rischio e le caratteristiche del processo di Risk Management. • Distinguere le principali metodologie di identificazione, analisi,…

Scheda dell'insegnamento

Scheda ripresa da un altro corso di laurea dello stesso ateneo.

Obiettivi formativi

Obiettivi formativi Conoscenza e capacità di comprensione • Descrivere il concetto di rischio e le caratteristiche del processo di Risk Management. • Distinguere le principali metodologie di identificazione, analisi, valutazione e trattamento dei rischi. • Illustrare i principali modelli quantitativi di misurazione del rischio. • Conoscere i principi fondamentali della normativa e degli standard di riferimento per la gestione dei rischi. Capacità di applicare conoscenza e comprensione • Applicare il processo di Risk Management a contesti organizzativi e progettuali. • Identificare, analizzare e valutare i rischi associati a progetti e organizzazioni. • Selezionare appropriate strategie di trattamento e mitigazione del rischio. • Utilizzare strumenti quantitativi per l'analisi del rischio, inclusa la simulazione Monte Carlo. Autonomia di giudizio • Valutare criticamente il livello di esposizione al rischio di un progetto o di un'organizzazione. • Formulare giudizi autonomi sulle priorità di intervento e sulle strategie di gestione dei rischi. Abilità comunicative • Utilizzare correttamente la terminologia specialistica del Risk Management. • Comunicare risultati di analisi e valutazioni del rischio in modo chiaro, rigoroso e tecnicamente appropriato. Capacità di apprendimento • Approfondire autonomamente modelli, metodologie e strumenti avanzati di analisi e gestione dei rischi. • Aggiornarsi in relazione all'evoluzione delle pratiche e degli standard di Risk Management.

Programma

Modulo I) Introduzione al Risk Management (4 ORE – 0.4 CFU) Evoluzione storica del Risk Management Definizione di rischio Terminologia di base Importanza della gestione dei rischi Modulo II) Identificazione e valutazione dei rischi (20 ORE – 2 CFU) Tipologie di rischio Processo di valutazione del rischio Tecniche di identificazione e assessment Modulo III) Corporate Risk Management (10 ORE – 1 CFU) Obiettivi, concetti e strutture organizzative Processi di gestione dei rischi Ruoli e responsabilità Business continuity e crisis management Modulo IV) Project Risk Management (6 ORE – 0.6 CFU) Rischi di progetto Obiettivi della gestione dei rischi di progetto Processi di Project Risk Management Modulo V) Analisi quantitativa del rischio (20 ORE – 2 CFU) Simulazione Monte Carlo Costruzione di modelli di analisi Definizione dei dati di input Interpretazione dei risultati

Conoscenza richiesta / Livello Algebra ☒ Utile Geometria ☒ Utile Analisi matematica ☒ Importante Probabilità e Statistica ☒ Importante

L’insegnamento prevede lezioni frontali supportate da slide, dispense e materiale integrativo. Le attività formative sono orientate all’acquisizione delle conoscenze teoriche e delle competenze metodologiche necessarie per l’identificazione, l’analisi, la valutazione e il trattamento dei rischi in ambito aziendale e progettuale. Durante il corso vengono presentati esempi applicativi e casi di studio relativi al Risk Management e al Cyber Risk Management. L’attività didattica può essere inoltre arricchita da seminari e testimonianze aziendali tenuti da esperti e professionisti del settore, al fine di favorire il collegamento tra i contenuti teorici e le applicazioni operative. Le attività didattiche comprendono: lezioni frontali in aula; esercitazioni in aula; lezioni ed esercitazioni in modalità interattiva e/o a distanza (asincrona o sincrona) mediante videolezioni, laboratori e analisi e discussione di casi studio. La frequenza è facoltativa ma fortemente consigliata. Il materiale didattico (libri consigliati riportati in bibliografia, appunti del corso, esercizi consigliati e materiale integrativo) è reso disponibile tramite la piattaforma Microsoft Teams. Organizzazione della didattica e carico di lavoro: • CFU totali: 6 • ore totali di impegno dello studente: 150 • ore di didattica erogata: 60 • ore di didattica in presenza: 50 • ore di didattica interattiva e/o a distanza (sincrona o asincrona): 10 • ore di attività pratiche/esercitazioni incluse nella didattica erogata: 10 • ore di studio individuale: 90

Modalità d'esame

L’apprendimento è verificato con una prova scritta, di durata media 45-60 minuti, basato su domande sia teoriche che numeriche sul processo di gestione dei rischi e principali tecniche impiegate nelle diverse fasi, per verificare il grado di conoscenza e la capacità metodologica acquisita nei diversi argomenti, nonché nelle relative applicazioni. Il risultato della valutazione è espresso in trentesimi; il voto minimo per il superamento dell’esame è 18/30 corrispondente ad un livello e qualità sufficienti di conoscenza dei requisiti minimi di seguito illustrati. Gli studenti che raggiungano il voto massimo di 32/30 saranno meritevoli di lode. I requisiti minimi per il superamento dell’esame riguardano la conoscenza di: concetti di base relativi al Risk management (terminologia, finalità) illustrati nel Modulo 1 e le fasi del processo di Risk Management e metodologie impiegate nelle stesse illustrate nel Modulo 2. Per la valutazione finale si applicano i seguenti criteri: Voto: 18 Soddisfacimento dei requisiti minimi di apprendimento Voti: 19-22 Conoscenza di base degli argomenti trattati e comprensione sufficiente dei concetti fondamentali. Capacità di risolvere problemi semplici e di applicare le conoscenze acquisite in contesti noti. Capacità di formulare giudizi autonomi su argomenti semplici. Capacità di esprimere concetti utilizzando un linguaggio tecnico adeguato. Voti: 23-26 Buona conoscenza degli argomenti trattati e comprensione approfondita dei concetti. Capacità di risolvere problemi complessi e di applicare le conoscenze in contesti nuovi. Capacità di formulare giudizi autonomi e critici su argomenti complessi. Capacità di esprimere concetti utilizzando un linguaggio tecnico di buon livello ed in modo chiaro e coerente. Voti: 27-30 Ottima conoscenza degli argomenti trattati e comprensione completa e approfondita dei concetti. Capacità di risolvere problemi molto complessi e di applicare le conoscenze in contesti innovativi. Ottima capacità di formulare giudizi autonomi, critici e originali. Ottima capacità di esprimere concetti utilizzando un linguaggio tecnico di alto livello ed in modo chiaro, coerente e persuasivo. Voto 30 e lode Conoscenza eccezionale e completa degli argomenti trattati, con capacità di collegare i concetti in modo innovativo. Capacità di risolvere problemi estremamente complessi e di applicare le conoscenze in contesti interdisciplinari. Eccellente capacità di formulare giudizi autonomi, critici e originali, con un alto grado di approfondimento. Elevata capacità di esprimere concetti utilizzando un linguaggio tecnico di alto livello in modo chiaro, coerente e con un alto livello di precisione. Per gli studenti con disabilità e DSA saranno garantiti gli strumenti compensativi e le misure dispensative previste dalla normativa vigente.

Testi di riferimento

o Lecture notes e materiale didattico distribuito durante il corso. o Sadgrove, K. (2016). The Complete Guide to Business Risk Management. Routledge. o Vose, D. (2008). Risk Analysis: A Quantitative Guide. John Wiley & Sons. o Materiale integrativo fornito dal docente.

Codice insegnamento 906829

ROBOTICS 1° semestre · 12 CFU · 0 file
SATELLITE SYSTEMS FOR REMOTE SENSING AND GEOLOCATION 1° semestre · 6 CFU · FIS/01 · 0 file

Il corso mira a fornire solide competenze teoriche di base nel campo delle tecnologie satellitari per l’Osservazione della Terra, il Telerilevamento, sia attivo che passivo, e la Localizzazione mediante sistemi GNSS.

Scheda dell'insegnamento

Scheda dell'a.a. 2025/2026, ripresa da un'altra coorte dello stesso corso.

Obiettivi formativi

Il corso mira a fornire solide competenze teoriche di base nel campo delle tecnologie satellitari per l’Osservazione della Terra, il Telerilevamento, sia attivo che passivo, e la Localizzazione mediante sistemi GNSS.

Programma

Introduzione al telerilevamento: definizioni, storia, applicazioni, potenzialità e limiti, sistemi satellitari (segmento terra, segmento spazio) Meccanica orbitale • Orbite ellittiche e circolari • Parametri orbitali: sistemi di riferimento, altitudine, inclinazione, periodo orbitale • Perturbazioni: oblazione terrestre (precessione), effetto di un terzo corpo, resistenza atmosferica, radiazione solare • Tipi di orbite: geosincrona, geostazionaria, Molniya, polare, sincrona al sole, orbita di radar altimetro • Caratteristiche orbitali: traccia sulla Terra, orbite ripetute, swath • Lancio del satellite • Introduzione allo strumento STK per la progettazione di orbite satellitari (Lab. I) Principi fisici del telerilevamento • Onde Elettromagnetiche (EM): onda, polarizzazione, trasformata di Fourier, effetto Doppler, diffrazione, spettro EM • Radiometria: irradianza, emittanza, radianza, legge di Planck, approssimazione di Rayleigh-Jeans, legge di Stefan-Boltzmann, legge di Wien, emissività, temperatura di brillanza, radiazione solare • Interazione della radiazione EM con la materia (Propagazione, Assorbimento, Scattering, Emissione): propagazione (costante dielettrica, dispersione, rifrazione, riflessione), scattering da superfici ruvide (distribuzione bidirezionale della riflettanza, riflettività, albedo diffusa, criterio di Rayleigh, scattering lambertiano, microonde backscattering), assorbimento e diffusione da particelle (Rayleigh, Mie), equazione del trasferimento radiativo • Interazione della radiazione EM con il mondo reale: VIS / NIR, emissività TIR, emissività MW, pioggia e neve su MW, retrodiffusione MW • Interazione con l'atmosfera terrestre Sensori passivi • Ottico (fotografico) / elettro-ottico: ottiche (lunghezza focale, copertura, FOV / IFOV, risoluzione spaziale, numero f, contrasto, funzione di trasferimento modulare, risoluzione spettrale), rivelatori (film, fotomoltiplicatore, fotodiodo, CCD, rivelatore termico per TIR), modalità di acquisizione (step-stare, push-broom, whisk-broom, spin-scan), metodi di dispersione (filtro, prisma, reticolo di diffrazione, interferometro), effetti atmosferici (contrasto e risoluzione decrescente, calibrazione [modelli fisici, calibrazione obiettivo, sottrazione pixel scuri, tecniche a finestra divisa e doppio aspetto]), foto / stereo-grammetria, imager VNIR (caratteristiche, missioni, applicazioni), imager TIR (caratteristiche, missioni, applicazioni), esempio Landsat TM • Microonde: temperatura dell'antenna, modello dell'antenna, applicazioni oceaniche e terrestri, missione SMOS Sensori attivi • Radar altimetro: principi di base, applicazioni, missioni satellitari, Sentinel-6 • Scatterometro a microonde: equazione radar, modalità di acquisizione, scattering, applicazioni • Introduzione al sistema RADAR ad apertura sintetica (SAR): portata e risoluzione azimutale, focalizzazione SAR, meccanismi di diffusione, rumore speckle, layover, effetti di scorcio e ombra, modalità di acquisizione, missioni satellitari, applicazioni. • Basi teoriche dell'interferometria SAR (InSAR): configurazioni di acquisizione InSAR, contenuto di fase InSAR (altezza, spostamenti) e rumore (coerenza e sorgenti di errore), srotolamento di fase, esempio di elaborazione InSAR tramite ESA SENTINEL-1 Toolbox (Lab. II ), Interferometria SAR differenziale (spostamento, artefatti atmosferici, errori di elaborazione, applicazioni), Interferometria SAR multi-temporale (MTI), precisione e limitazioni di misura, applicazioni.

Conoscenze di base di Cinematica, Dinamica, Elettromagnetismo, Ottica Geometrica e Fisica, Elaborazione numerica dei segnali.

Lezioni e laboratori in aula supportate da diapositive, video-proiettore e lavagna.

Modalità d'esame

Esame orale e relazioni sulle attività di laboratorio

Testi di riferimento

Introduction to Remote Sensing • W. G. Rees, “Physical Principles of Remote Sensing”, Cambridge University Press, 2011. Chapter 2 (EM waves) W. Eremy and A. Camps, “Introduction to Satellite Remote Sensing.”, Elesevier, 2017. Capter 1 - The History of Satellite Remote Sensing (History) http://dx.doi.org/10.1016/B978-0-12-809254-5.00001-4 • G. Trianni, “Introduzione al Telerilevamento per l’Osservazione della Terra”, 2006 (Space / Ground Systems) Elements of Orbital Mechanics • W. G. Rees, “Physical Principles of Remote Sensing”, Cambridge University Press, 2011. Chapter 10 (pp. 325-345) • R. E. Deakin, "Satellite Orbits," School of Mathematical & Geospatial Sciences, RMIT University, August 2007. Physical Principles of Remote Sensing • W. G. Rees, “Physical Principles of Remote Sensing”, Cambridge University Press, 2011. Chapter 2, Chapter 3 (EM waves, radiation theory) Passire Sensors • W. G. Rees, “Physical Principles of Remote Sensing”, Cambridge University Press, 2011. Chapter 5, Chapter 6, Chapter 7 Active Sensors • W. G. Rees, “Physical Principles of Remote Sensing”, Cambridge University Press, 2011. Chapter 8, Chapter 9 (Radar altimeter, Microwave scatterometer) • Notes on SAR / InSAR by F. Bovenga (SAR / SAR Interferometry) • InSAR Principles: Guidelines for SAR Interferometry Processing and Interpretation, ESA Publications (TM-19, February 2007) ISBN: 92-9092-233-8 (SAR / SAR Interferometry)

Codice insegnamento 906635

Recensioni del corso

Studi qui? Accedi per lasciare la tua recensione e aiutare altri studenti a scegliere.

★

Nessuna recensione per ora — e la prima è la più preziosa. Condividi la tua esperienza e orienta le future matricole.