UNIVERSITÀ DEL SALENTO
Department of Innovation Engineering
Master’s degree in Computer Engineering
Advanced Control Techniques
Advanced Control Techniques
Dott. Marco Chiarelli
Academic Year 2015/2016 1
Quest’opera è stata rilasciata con licenza Creative Commons Attribuzione - Non commerciale
- Condividi allo stesso modo 3.0 Unported. Per leggere una copia della licenza visita il sito web
http://creativecommons.org/licenses/by-nc-sa/3.0/ o spedisci una lettera a Creative Commons,
171 Second Street, Suite 300, San Francisco, California, 94105, USA.
cbea
Questi appunti sono stati scritti utilizzando L TEX tramite la distribuzione MiKTeX
A http:
//miktex.org/
Come editor è stato usato TeXMaker 4.4.1 http://www.xm1math.net/texmaker/
Dei contenuti rielaborati in questa opera, salvo esplicitamente scritto il contrario, il prof.
Giuseppe Notarstefano non se ne assume alcuna responsabilità.
2
Sommario
Le seguenti dispense vogliono essere un resoconto didattico del corso di Advanced
Control Techniques, il quale docente è il prof. Giuseppe Notarstefano, presso il CdL
in Ingegneria Informatica at Unisalento. Il programma copre tre macro-argomenti:
la Stabilità dei Sistemi Non Lineari, i Sistemi Distribuiti ed Algoritmi di Ottimiz-
zazione (distribuiti), più un piccolo capitolo circa delle Esercitazioni. Il seguente
lavoro non ha la pretesa di sistematizzare in maniera esatta ciò che è stato fatto
a lezione, sebbene l’impostazione di base cerca di seguire fedelmente ogni singola
lezione che è stata erogata. Piuttosto cerca di raccogliere in maniera sintetica ma
al contempo esaustiva gli aspetti chiave della Teoria del Controllo Avanzato, di fare
ordine tra una quantità non indifferente di nozioni, e soprattutto di dare un sus-
sidio alla preparazione di un eventuale esame didattico che richieda la conoscenza
di queste nozioni e relativa applicazione per quanto concerne il lato pratico.
3
Abstract
The following work want to be a report about the Advanced Control Techniques
course, whose teacher is the prof. Giuseppe Notarstefano, at. Computer Engineer-
ing @ Unisalento. The program covers three macro-topics: Non-Linear Systems’
Stability, Distributed Systems, and (Distributed) Optimization Algorithms plus a
little chapter that treats some Exercises. It won’t systematize the entire work done
at lessons in an exact manner, despite the base setting tries to follow each lessons
that has been delivered to us. It tries to gather the key aspects of the Advanced
Control Theory, and to reorder some difficult notions. Moreover it tries to give an
help for the preparation of an eventual didactic exam that requires the knowledge
about these notions and the related practical applications/homework/exercises.
4
Indice
Introduzione ii
1 Systems’ Theory 1
1.1 Systems’ Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 TIME-VARYING vs TIME-INVARIANT SYSTEMS . . . . . . . . . . . . 3
1.1.2 NONLINEAR (NL) vs LINEAR (L) . . . . . . . . . . . . . . . . . . . . . 4
1.1.3 PROPER vs STRICTLY PROPER . . . . . . . . . . . . . . . . . . . . . 5
1.1.4 FORCED vs UNFORCED . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 TRAJECTORIES and EQUILIBRIA . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 TRAJECTORIES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.2 State-Space FRAMEWORK examples . . . . . . . . . . . . . . . . . . . . 10
1.2.3 EQUILIBRIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Systems’ Stability 14
2.1 INTERNAL STABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1 Equilibria Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2 counterexamples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.3 Trajectories Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.4 Lyapunov’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.5 Instability and Inverse Theorem’s . . . . . . . . . . . . . . . . . . . . . . . 29
2.1.6 STABILITY OF DISCRETE TIME SYSTEMS . . . . . . . . . . . . . . . 31
2.1.7 LINEARIZATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.1.8 STABILITY OF LTI SYSTEMS (T.INV) (RECAP) . . . . . . . . . . . . 32
2.1.9 DESIGN OF A FEEDBACK ASYMPT. STABILIZER SYSTEM FOR
AN EQUILIBRIUM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.1.10 LINEARIZATION OF A NONLINEAR FORCED SYSTEM . . . . . . . 36
2.1.11 LINEARIZATION AT THE EQ. PAIR . . . . . . . . . . . . . . . . . . . 37
2.1.12 STABILITY OF TIME-VARYING SYSTEMS . . . . . . . . . . . . . . . 39
2.1.13 EXPONENTIAL STABILITY . . . . . . . . . . . . . . . . . . . . . . . . 41
2.1.14 FEEDBACK LINEARIZATION . . . . . . . . . . . . . . . . . . . . . . . 48
3 Distributed Systems 63
3.1 Starting Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.1.1 SCENARIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.1.2 Proprietà e definizioni dei grafi . . . . . . . . . . . . . . . . . . . . . . . . 65
3.1.3 NETWORK OF A PROCESSOR for a distributed algorithm . . . . . . . 67
3.1.4 DISCRETE-TIME DYNAMICAL SYSTEMS . . . . . . . . . . . . . . . . 68
3.2 LINEAR DISTRIBUTED ALGORITHM . . . . . . . . . . . . . . . . . . . . . . 70
5
4 (Distributed) Optimization’s Algorithms 85
4.1 Starting Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.1.1 NECESSARY CONDITIONS OF OPTIMALITY . . . . . . . . . . . . . . 86
4.2 ITERATIVE ALGORITHMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.2.1 DESCENT ALGORITHMS . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.2.2 EQUALITY CONSTRAINED OPTIMIZATION . . . . . . . . . . . . . . 96
4.2.3 (INEQUALITY CONSTRAINTS) . . . . . . . . . . . . . . . . . . . . . . 101
4.2.4 COMPUTATION METHODS FOR EQUALITY AND INEQUALITY
CONSTRAINED PROBLEMS . . . . . . . . . . . . . . . . . . . . . . . . 104
4.3 Problemi di Controllo Ottimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.3.1 DISCRETE-TIME OPTIMAL CONTROL . . . . . . . . . . . . . . . . . 114
4.3.2 CONTINUOS-TIME OPTIMAL CONTROL . . . . . . . . . . . . . . . . 129
4.4 DUALITY (FOR PARALLEL AND DISTRIBUTED OPTIMIZATION) . . . . . 132
4.4.1 DUAL ALGORITHMS: DUAL ASCENT . . . . . . . . . . . . . . . . . . 135
4.4.2 DISTRIBUTED OPTIMIZATION . . . . . . . . . . . . . . . . . . . . . . 139
5 Training Facility 143
5.1 EXERCISE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.1.1 SISTEMA TEMPO-VARIANTE . . . . . . . . . . . . . . . . . . . . . . . 148
5.2 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.2.1 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
5.2.2 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5.3 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
5.4 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
5.5 EXERCISE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6
Ringraziamenti
Un grazie particolare va ai miei compagni
d’università, Dino Sbarro, Gabriele Accarino, Giampiero D’Autilia, Matteo Settembrini, Paolo
Panarese ed Emanuele Costa Cesari.
Introduzione
I Sistemi di Controllo Cyber ormai sono presenti massivamente. Progetti, Applicazioni con-
crete degli algoritmi, sviluppare nuovi metodi. Si chiede che quando si sviluppi qualcosa, questa
funzioni in ogni scenario. Il corso sarà sostanzialmente strutturato in 3 tematiche principali:
• Proprietà Strutturali dei Sistemi Dinamici Non Lineari: (Stabilità, Tracking (tra-
iettorie)) e Controlli di questi Strumenti; Lyapunov, invarianza di La Salle. Strumenti che
ci permetteranno di disegnare un’azione di retroazione (feedback); applicazione a sistemi
concreti (robot mobili, robot aerei, etc...). Data una particolare Dinamica, si applichino
delle apposite Leggi di Controllo;
• Controllo di questi sistemi (ci concentreremo su alcune tematiche): ad esempio come
l’Ottimizzazione può venirci in aiuto per designare e sviluppare queste leggi (Ottimizzazio-
ne Vincolata); proporre delle tecniche di controllo per sistemi dinamici (Controllo OTTI-
MO), ovvero leggi di controllo che minimizzano una certa funzione di costo; si propongono
di risolvere particolari task di controllo in meno tempo possibile, ad esempio;
• Nuova area dei controlli: tematica enunciata nel lontano 2003. Sistemi Complessi
Multi-Agente, cooperanti. Tanti sistemi di controllo che, per raggiungere un task com-
plesso, devono cooperare assieme; in maniera cooperativa questi sistemi decidono cosa fare
ed attuano un certo sforzo di controllo di conseguenza;
Si supponga di avere un impianto (drone, veicolo mobile, etc.). Poi abbiamo le leggi di
controllo che risiede nella COMPUTING UNIT (relativa implementazione del codice finale).
La Teoria del Controllo cerca di sviluppare delle metodologie per alcune classi di problemi
matematici. Il contesto di applicazione è abbastanza eterogeneo. Metodologie/tecniche che
sono applicabili in variegati contesti. Il nostro Sistema può essere ad esempio un drone (au-
tonomo), braccio robotico, ma allo stesso tempo può anche essere un processo chimico, un
sistema biologico, insieme di individui (popolazione), etc. È necessario comunque un inter-
facciamento con figure professionali. (Biological System) BIOLOGY SYSTEM. Molecole viste
nell’insieme come un sistema biologico. Percezione dei fenomeni con cui interagire per analiz-
zare comportamenti che non hanno una matematica immediatamente chiara. Si isolino queste
{ACT }:
due parti, U AT ORS, P LAN T /SY ST EM ci andiamo a concentrare su una parte che
contiene l’architettura HW + SW + tutta la parte di Sensoristica. Parte estremamente im-
portante è la SENSORISTICA! La parte isolata è ormai diventata preponderante nella vita
di tutti i giorni. Tablet, smartphone, cellulari. Potenza spaventosa. La potenza di Sensing
di cui adesso disponiamo è impensabile se confrontata con la tecnologia di circa 10 anni fa.
RIVOLUZIONE TECNOLOGICA =⇒ RIVOLUZIONE METODOLOGICA. Prima si neces-
sitava di workstation dedicate. Adesso ”c’è in giro” della potenza di calcolo, pronta per essere
utilizzata. SENSING: avere dati a disposizione, poterli processare efficacemente. Prendere la
struttura di un drone (quadri-rotore), [Heli + Structure + Scheda]; questa architettura costa
poco. Si potrebbe persino controllare un tale drone con un banale smartphone. Necessitiamo
ii
{Accelerometro, ⊂
di: Giroscopio, GP S} (Smartphones). Disponiamo di potenza di calcolo e
capacità di Sensing in quantità maggiore di quanto possa essere fisicamente presente nel singolo
{Sensing,
agente di controllo. computing, dynamics and communications}. Gli elementi prin-
cipali sono: Potenza di Calcolo e Sensing. Robot mobili, autonomi =⇒ Teoria del Controllo.
Mentre prima il Sistema di Controllo era concentrato in un posto, adesso la sua localizzazione
fisica NON è più chiara! Ora i Sistemi non sono più essi stessi concentrati in un singolo po-
sto. (es. più robot). Es. AMAZON LOGISTICS (KIVA System). Non abbiamo più sistemi
localizzati, ma vi è un sistema complesso costituito da tanti sottosistemi capaci di interagire
perfettamente tra di loro. Gli stessi smartphone sono dei Sistemi di Controllo. Sensing. Quan-
tità misurate con una certa dinamica ed eventualmente controllabili. Sistemi comunicanti, con
certe regole. Ma posti in una stanza, ci saranno delle interazioni parziali tra un robot ed i
suoi vicini. Componente fondamentale: COMUNICAZIONE. Oramai quantomeno necessario.
Nuova classe di sistemi. Robot mobili, reti elettriche distribuite e non più concentrate. Microge-
neratori sui quali potremo avere dell’intelligenza. Paradigma che stravolge praticamente l’intera
Teoria del Controllo. Vi sono delle unità di produzione che tra di loro devono per forza inte-
ragire. Aziende informatiche che ormai sono diventate qualcosa di diverso dalla loro principale
essenza originaria. [BOSTON DYNAMICS]; proprio perché c’è questa necessità delle capacità
tecnologiche, c’è la possibilità di fare tanto. Robotica, teoria del Controllo ed Automazione.
Rendere autonomi sistemi che prima erano esclusivamente controllati dall’uomo. Questi sistemi
di controllo rompono le tradizionali regole del passato. Interazione mutua è la chiave.
Attività importanti, con molte delle quali andremo probabilmente ad interfacciarci. Con-
trollo di veicoli/velivoli autonomi. Se si vogliono progettare delle leggi di controllo ci deve essere
una previa fase di modellizzazione dinamica di questi sistemi. Classi di sistemi con nuove ar-
chitetture che stanno venendo fuori. Obiettivo: far lavorare robot in scenari concreti. Modelli
tipo UAV (tilt rotor e quad rotor); ala fissa / sistemi a rotore; -) Controllo Ottimo. Area del
controllo non lineare che ci permetterà di gestire non linearità molto concentrate. In situazioni
non molto complesse potrebbero andare bene delle Linearizzazioni. In passato quest’ultima
utilizzata esclusivamente nell’Industria di Processo. Dinamiche di Processo molto lento (es.
reattore chimico). Attualmente si può provare ad implementare tecniche di controllo del genere
su altri settori. Strumenti tecnologici a disposizione degli Ingegneri Meccanici. Si porta avanti
tutto in Virtuale, finché poi si è abbastanza sicuri della correttezza della scelta. Riduzione del
TTM (time-to-market). Controllori di queste dinamiche virtuali. Tecniche di Controllo Otti-
mo (Virtual Prototyping Technique); Tecniche di Ottimizzazione applicate ai sistemi dinamici
⇐⇒ tecniche di Controllo Ottimo applicate ad esempio in un veicolo.
Squadre di Sistemi di Controllo. L’idea è che abbiamo una serie di sistemi dinamici che
possono comunicare tra di loro e svolgere compiti anche complessi. SENZA affidarsi ad un
coordinatore generale, onde evitare un antipattern SPoF (single point of failure). Calcoli non
più banali in questo contesto. Caratteristiche tipiche di questi sistemi:
−)
Calcolo locale;
−)
M emoria locale;
(1)
−) Comunicazione locale;
−) N etwork;
Questo è qualcosa di diverso dal calcolo parallelo. Poter eseguire dei compiti non più in
maniera centralizzata. Le leggi/algoritmi dovranno funzionare sotto questo tipo di controllo.
Nel calcolo parallelo siamo noi stessi responsabili del progetto dell’architettura invece.
Sistema di Motion Capture all’infrarosso. Recuperare informazioni sulla posizione / grado di
angolazione. STATE-FEEDBACK. Ci concentreremo sulle leggi di controllo senza preoccuparci
degli Stimatori, mettendo temporaneamente da parte i problemi di Stima. Parte più o meno
iii
nuova. Es. Progetto OPT4SMART. L’idea è: per risolvere tanti dei problemi di controllo è
necessario utilizzare delle tecniche di Ottimizzazione che devono essere ripensate in funzione
di un contesto del tipo di quello descritto. Non è più la logica del calcolo parallelo, ma è un
contesto ove Sensing e Computing Unit sono distribuite (locali).
Progettare un sistema di controllo / Design a control system. The main step that we need
in order to design such a control system. Control Engineers have the possibility to work in
different area. The model is as general as possible. Apply this model to the specific example.
Aerospace Engingeering, Electrical Engineering, etc. Biology, Psychology, Economy. Those are
different context in which is possible to work with Control. Evolution of Dynamical System.
INPUT. What are the steps in order to develop control system?
• EXTRACT A MODEL of the ACTUAL SYSTEM: the first very important step.
Depending on the area on which we work, this is a very CRYTICAL STEP, because
this model needs to meet two objectives that are somehow in contrast between them.
SIMPLE. The more simple, the more chance to develop the controller. (even if too simple
it needs to
may be useless); vs CAPTURE MAIN FEATURES OF ACTUAL SYSTEM:
be sufficiently complex such to capture the main features. Something we’ll gain with
experience. Interact with expert of other area.
Once extracted the model, once you have the mathematical model (math feedback law),
you have to:
• DESIGN CONTROL LAW AND PROVE ITS CORRECTNESS: you’ll need
that at least the model is correct. Not just simulations. We will try to identify a class
{LINEAR
of mathematical models. SYSTEMS T.I. (LTI)}. We’ll study classes of law to
control those class of systems. If already exists;
• RUN SIMULATIONS: we have two substeps:
– Run Simulation with the model used for design;
– COMPLEX MODEL;
The first is now the simulation on a model used for design + Complex Model that contains
the previous model laws. Virtual Prototypes.
• EXPERIMENTS; iv
Capitolo 1
Systems’ Theory
1.1 Systems’ Classes
We will identify a class of systems. The SETUP we will play with is the so-called State-Space
FRAMEWORK. ( −
CON T IN U OS T IM E SY ST EM S (1.1)
−
DISCRET E T IM E SY ST EM S
, where for the CONTINUOS-TIME SYSTEMS we have this settings:
( ODE : ẋ(t) = f (x(t), u(t), t) (1.2)
OU T P U T : y(t) = h(x(t), u(t), t) n
≥ ∈
∈ typically with (t t ) (in some situation we could have t < 0), x(t)
, with t R
R, 0 m p
∈ ∈
as the STATE OF THE SYSTEM, u(t) as the INPUT OF THE SYSTEM, y(t) as
R R
the OUTPUT OF THE SYSTEM, and let x(t ) = x be the initial condition at the initial time
0 0 ≤
instant t . Typically we have UNDER-ACTUATED systems, in the sense that m n, as there
0
are also OVER-ACTUATED systems: m > n. The input is something that can modify the
behavior of the system. u := DECISION V ARIABLE. x(t) is instead something that will
be used to describe the behavior of the system. Concerning output, e could have two types:
(
M EASU RED OU T P U T S (1.3)
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Advanced programming techniques
-
Appunti del Corso Advanced Measurement Techniques
-
Appunti Advanced Management control and Sustainable Development
-
Advanced Microeconomics