Teaching

Sistemi multiagente

Corso di studio: Laurea Magistrale in Ingegneria Informatica

Semestere: secondo

Anno: secondo

CFU: 9

Link alla pagina Unisannio dell'insegnamento

Obiettivi

Il corso è diviso in due parti. Nella prima parte sono affrontati sistemi multiagente hardware attraverso applicazioni d’integrazione di un microcontrollore per la gestione e monitoraggio di un processo. Si intende introdurre gli studenti alla programmazione dei controllori digitali per applicazioni di controllo dei processi, utilizzando elementi fondamentali relativi ai problemi di identificazione parametrica, risposta in frequenza, controllo in retroazione, discretizzazione e campionamento, sistemi discreti misto logico-dinamico. L’attività principale del corso è di tipo laboratoriale. Nella seconda parte del corso sono affrontati sistemi multiagente software attraverso lo studio delle reti sociali. Sono introdotti concetti base di modellistica e analisi delle reti sociali, sia statiche che dinamiche, si dirette che indirette, attraverso la teoria dei grafi.


Prerequisiti

Elementi di automatica, algebra lineare e matrici. Elementi di programmazione.

Contenuti

Richiami di Matlab/Simulink per la gestione dei segnali. Utilizzo di Matlab/Simulink per l'analisi dei segnali. Componenti per la realizzazione di un controllo digitale. Schede a microcontrollore. Interfacciamento delle schede a microcontrollore con unità di programmazione. Programmazione di un microcontrollore mediante Matlab/Simulink. Uso di Matlab/Simulink per la visualizzazione di dati sperimentali. Casi d'uso.

Sistemi ad aventi. Evoluzione di un sistema a partire da eventi esogeni. Generazione di eventi mediante interfacciamento con unità di programmazione. Prove sperimentali con scheda a microcontrollore.

Guadagno statico e risposta in frequenza di un sistema dinamico. Programmazione di una campagna di prove per la rilevazione sperimentale della funzione di trasferimento attraverso l’uso di schede a microcontrollore e un processo di tipo elettrico RLC. Banda passante e risposta ad onda quadra.

Introduzione all’uso di Arduino. Ingressi e uscite digitali. Ingressi analogici. Uscite PWM. Connessione al bus I2C. Realizzazione di un sistema di controllo con Arduino. Prove sperimentali di un controllo a ciclo chiuso con processo di tipo elettronico, elettrico, meccanico o digitale. Report tecnico di sintesi delle prove realizzate e analisi dei risultati ottenuti.

Analisi di reti sociali. Principi di modellistica; concetti di sistema, feedback e modello; modelli strutturali e modelli funzionali; il ruolo del feedback per l’apprendimento e il controllo. Modellistica di reti sociali attraverso grafi; grafo non diretto, grado, densità, diametro, componenti, ponti; matrice di adiacenza. Grafi non connessi: componenti, ponti, collegamenti deboli. Cricca, cluster, ego network, coefficiente di clustering. Reti small-world e scale-free: presentazione da esperti di alcuni casi di studio. Modello di Hegselmann-Krause e consenso. Analisi numerica del modello di consenso. Condizioni di convergenza e clustering del modello di consenso

Metodi didattici

Lezioni frontali ed esercitazioni con l’uso del calcolatore utilizzando il software Matlab e la realizzazione in aula di prototipi di sistemi di controllo digitale.


Modalità di verifica dell’apprendimento

L’esame è un orale che consiste nella discussione di un report tecnico relativo alla identificazione sperimentale della risposta in frequenza, e di un report tecnico con i risultati delle prove sperimentali dei sistemi di controllo realizzati con Arduino.


Testi di riferimento

- D. Luenberger, “Intorduction to dynamic systems”, John Wiley and Sons, 1979.

- A. M. K. Cheng, “Real-Time Systems”, Wiley, 2002

- G. C. Buttazzo, “Hard Real-Time Computing Systems”, Springer, 2005.

- A. Cavallo, R. Setola, F. Vasca, "La nuovaguida a Matlab, Simulink e Control Toolbox", LiguoriEditore.

- F. Vasca, Appunti disponibili in file sul sito del corso

- Mark Newman, “Networks: An Introduction”, Oxford University Press, 2010, ISBN: 978-0-199-20665-0.

- P. Bonacich, P. Lu, Introduction to Mathematical Sociology, Princeton University Press, 2012

- F. Bullo, Lectures on Network Systems, Kindle Direct Publishing, 2019, ISBN 978-1-986425-64-3, http://motion.me.ucsb.edu/book-lns/


Appunti sull'analisi di rete


English version

Objectives

The course consists of two parts. The first part aims to introduce students to hardware multiagent systems consisting of the integration of aa microcontroller for the supervision and monitoring of a process. Programming of digital controllers for process control applications, using basic elements relevant for parameter identification problems, frequency response, feedback control, discretization and sampling, discrete systems mixed logical dynamic. Most of the course is based on practical lab activities. In the second part of the course the students are introduced to the software multiagent systems consisting of social networks. Basic concepts of modeling and analysis of social networks, both static and dynamic, directed and undirected, through the graph theory.

Prerequisites

Basics of systems theory, linear algebra and matrices. Elements of programming.

Contents

Elements of Matlab and Simulink for signals handling. Using Matlab and Simulink for signal analysis. Components for the realization of a digital control. Microcontroller boards. Interfacing of microcontroller boards with programming unit. Programming a microcontroller by using Matlab and Simulink. Using Matlab and Simulink for displaying experimental data. Use cases.

Discrete-event systems. Evolution of a system from external events. Generation of events by means of interfacing with the programming unit. Experimental tests with microcontroller board.

DC gain and frequency response of a dynamic system. Programming of a campaign of tests for the experimental detection of the transfer function through the use of microcontroller boards with an electric RLC circuit as load. Bandwidth and square wave response.

Introduction to the Arduino microcontroller board. Digital inputs, digital outputs, analog inputs, PWM outputs. Connection to the bus I2C. Realization of a control system with Arduino. Experimental tests of an open loop system and a closed loop system with an electronic, electrical, mechanical or digital process. Technical report with the presentation of the tests carried out and the analysis of the results obtained.

Analysis of social networks. Principles of modeling. Concepts of system, feedback and model; Structural and functionalmodels; the role of feedback for learning and control. Modeling of social networks through graphs; undirected graph, degree, density, diameter, components, bridges; adjacency matrix. Components, bridges, weaklinks. Clique, cluster, ego network, clusteringcoefficient. Small-world and scale-free networks. Hegselmann-Krause model and consensus. Numerical analysis of the consensus model. Conditions of convergence and clustering of consensus model.

Teaching methods

Lectures and exercises with the use of the computer using the Matlab software and achievement in the classroom of digital controllers prototypes.

Final exam

The exam is an oral one consisting in the discussion of a technical report related to the experimental identification of the frequency response, and a technical report with the results of the experimental tests of the control systems made with Arduino.