elaborato nale in controlli automatici modellistica ... · scuola politecnica e delle scienze di...
TRANSCRIPT
Scuola Politecnica e delle Scienze di BaseCorso di Laurea in Ingegneria Informatica
Elaborato finale in Controlli Automatici
Modellistica, analisi a ciclo apertoe sintesi di un sistema di controllo
a retroazione per il consenso diuna rete di agenti dinamici
Anno Accademico 2014/2015
Relatore: Ch.mo prof. Mario di Bernardo
Correlatore: Ing. Francesco Scafuti
Candidato: Mirko Molinarimatr. N46/1307
Indice
1 Introduzione 1
1.1 Applicazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Struttura della tesi . . . . . . . . . . . . . . . . . . . . . . . 3
2 Teoria Algebrica dei Grafi 4
2.1 Grafi e proprieta . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Matrice di Adiacenza e Matrice Laplaciana . . . . . . . . . 5
2.3 Caso generale: grafo pesato e tempo-variante . . . . . . . . 6
2.4 Proprieta delle matrici non negative . . . . . . . . . . . . . 7
3 Il problema del consenso 8
3.1 Average-Consensus nelle reti indirette . . . . . . . . . . . . 8
3.2 Consenso nelle reti dirette . . . . . . . . . . . . . . . . . . . 10
3.3 Consenso nelle reti complesse a tempo-discreto . . . . . . . 11
3.4 Performance degli algoritmi di consenso . . . . . . . . . . . 13
4 Edge Snapping 14
4.1 Definizione della strategia di edge snapping . . . . . . . . . 15
4.2 Edge snapping indiretto . . . . . . . . . . . . . . . . . . . . 16
4.3 Edge snapping ibrido . . . . . . . . . . . . . . . . . . . . . . 17
4.4 Edge snapping diretto . . . . . . . . . . . . . . . . . . . . . 19
4.5 Edge snapping con target . . . . . . . . . . . . . . . . . . . 19
5 Risultati numerici 21
5.1 Simulazione Edge Snapping ibrido . . . . . . . . . . . . . . 21
5.2 Simulazione Edge Snapping con target . . . . . . . . . . . . 23
6 Conclusioni e sviluppi futuri 25
Bibliografia 27
i
Capitolo 1
Introduzione
Alla base degli argomenti affrontati in questa tesi risiede il concetto di
sistema dinamico, quindi e bene darne una breve introduzione prima di
scendere in dettaglio nell’argomento. Un sistema dinamico descrive l’evo-
luzione nel tempo di una o piu grandezze fisiche secondo opportune leggi
che vanno a definire proprio la cosiddetta dinamica del sistema. Un si-
stema dinamico e tipicamente descritto da un’equazione differenziale del
tipo dx(t)/dt = f(x(t),u(t), t) dove x(t) rappresenta il vettore degli stati
del sistema, f e il vettore delle funzioni che caratterizzano la dinamica del
sistema, u(t) e il vettore degli ingressi e t e la variabile tempo. Una rete di
agenti dinamici, o anche rete complessa, e un Sistema Multi-Agente(MAS),
costituito cioe da piu entita dinamiche autonome, che collaborano grazie
alla presenza di interconnessioni che permettono loro di scambiarsi infor-
mazioni di controllo in modo tale da raggiungere obiettivi comuni. Il fatto
che ci sia questa interconnessione tra gli agenti, permette di applicare su di
essi degli algoritmi distribuiti che generano un comportamento collettivo
della rete.
In molti campi scientifici uno dei problemi piu affrontati oggi riguardo
i MAS e quello del consenso; nella forma piu generale, “consensus” in-
dica il raggiungimento di un accordo da parte di tutti gli agenti di una
rete riguardo una certa grandezza di interesse che dipende dagli stati degli
agenti stessi. Un algoritmo (o protocollo) di consenso regola lo scambio
di informazioni tra gli agenti del sistema che evolvono di conseguenza fino
a raggiungere un accordo. In letteratura si trovano svariati algoritmi che
permettono il raggiungimento del consenso; in particolare troviamo sia al-
1
Capitolo 1. Introduzione
goritmi che risolvono un problema di consenso vincolato (dove l’obiettivo
da raggiungere e specificato da una determinata funzione f , e per questo
si parla di f-consensus) sia quelli che risolvono un problema di consenso
non vincolato, anche detto problema di allineamento (dove importa sol-
tanto raggiungere un accordo tra tutti gli stati). A seconda dell’obiettivo
raggiunto alla fine da tutti gli agenti, il consenso viene denominato anche
average-consensus, max-consensus, min-consensus ecc.
1.1 Applicazioni
Il problema del consenso ha attratto studiosi facenti parte non solo
dell’ambito ingegneristico, ma anche di quello fisico, biologico, militare e
tanti altri. Vengono riportati brevemente alcuni dei campi applicativi in
cui si tenta di risolvere un problema di consenso:
• Flocking: la teoria del Flocking e sicuramente ispirata da fenomeni
biologici quali il movimento in “stormi” di alcuni animali. E dimo-
strato che i flock sono una rete di sistemi dinamici con una topologia
dinamica descritta da un grafo di prossimita che dipende dallo stato
di tutti gli agenti. In pratica ogni agente decide il proprio compor-
tamento in base a quello dei propri vicini (proprio come avviene ad
esempio in uno stormo di uccelli). In particolare il ruolo del consenso
nel flocking consiste nell’ottenere un coordinamento di velocita tra
tutti gli agenti.
• Rendezvous nello spazio: il consenso in questo ambito consi-
ste nel far raggiungere una determinata posizione di accordo ai vari
agenti. Si applica quindi a reti basate su una topologia dipenden-
te dalla posizione degli agenti stessi. Puo sembrare molto simile al
Flocking, anche se il Flocking e piu complesso da un certo punto di
vista poiche richiede anche di risolvere ulteriori problematiche quali
la collision-avoidance.
• Controllo di Formazione Distribuito: e un tipo di controllo che
si applica principalmente a sistemi multi-veicolo, quindi suscita forte
interesse in campo militare. Lo scopo di tale controllo e quello di po-
sizionare gli agenti del sistema secondo una precisa formazione e fare
2
Capitolo 1. Introduzione
in modo che la mantengano anche durante un eventuale spostamen-
to. Tale obiettivo si puo raggiungere grazie ad una rappresentazione
delle formazioni basata sui vettori delle posizioni relative dei veicoli
limitrofi e grazie all’uso dei controllori basati su consenso con input
di polarizzazione.
1.2 Struttura della tesi
Scopo della tesi e innanzitutto presentare una descrizione del proble-
ma del consenso, e fornire una serie di algoritmi in grado di risolverlo;
dopodiche verra effettuata una simulazione, utilizzando un meccanismo
presentato in [2], per mostrare l’efficacia di tale algoritmo di consenso.
Una rete di agenti viene tipicamente descritta tramite un grafo, dove
ogni nodo rappresenta un agente ed ogni arco le interconnessioni tra due
agenti. A loro volta i grafi vengono studiati tramite un’analisi spettrale,
ovvero un’analisi che si basa sulle proprieta delle matrici associate ai gra-
fi (ad esempio la matrice di adiacenza o quella Laplaciana). Percio nel
successivo capitolo verranno ripresi i preliminari geometrici ed algebrici
necessari. Nel Capitolo 3 sara invece ampiamente discusso il problema del
consenso, dandone una precisa definizione e mostrando i protocolli classici
che sono stati ricavati da Olfati-Saber e Murray. Ci soffermeremo prima
sul caso semplificato di reti non orientate, poi estenderemo la trattazione
anche alle reti orientate; in particolare discuteremo l’analisi di convergen-
za e la performance di un algoritmo di consenso, sia a tempo-continuo
che a tempo-discreto. L’Edge Snapping e un protocollo di consenso che
controlla adattativamente la dinamica di una rete complessa tramite l’at-
tivazione/disattivazione dei suoi collegamenti; fu presentato in passato ed
e stato ripreso in [2] per essere cosı ampliato. Nel Capitolo 4 di questa tesi
viene mostrato proprio il meccanismo di Edge Snapping, nelle varie forme
discusse in [2] (in piu viene introdotta una versione sviluppata personal-
mente che porta il nome di Edge Snapping con target), e nel Capitolo 5
viene applicato praticamente attraverso una simulazione in ambiente MA-
TLAB per mostrarne l’efficacia. La tesi si chiude infine con un capitolo
conclusivo che riepiloga i concetti emersi in questo elaborato.
3
Capitolo 2
Teoria Algebrica dei Grafi
Per caratterizzare la topologia di una rete complessa, quest’ultima vie-
ne rappresentata tramite un grafo. Dobbiamo quindi dare preliminarmente
una definizione di grafo ed esaminarne le proprieta.
2.1 Grafi e proprieta
Definizione 2.1. Un grafo G e definito come la coppia G = (V,E) dove
V e l’insieme dei nodi e E ⊆ V × V e l’insieme degli archi.
Graficamente ogni nodo viene rappresentato con un cerchio ed ogni
arco con una freccia che va da un nodo all’altro. Nel caso di una rete
complessa, ogni nodo del grafo corrisponde ad un agente mentre ogni arco
corrisponde ad un’interconnessione tra due agenti. Riprendiamo adesso
particolari tipologie e proprieta dei grafi.
Definizione 2.2. Un grafo si dice orientato (o diretto) se, per ogni i, j ∈V , si ha che (i, j) 6= (j, i). Nel caso opposto in cui (i, j) = (j, i), ∀i, j ∈ V ,
allora il grafo si dice non orientato (o indiretto).
Definizione 2.3. In un grafo G un cammino e dato da una sequenza di
archi {e1, e2, . . . , eN} con e1, e2, . . . , eN ∈ E dove ogni arco e formato da
una coppia di nodi di cui uno appartiene all’arco precedente.
Definizione 2.4. Un grafo G e connesso se, presa una coppia qualsiasi
di nodi i, j ∈ V esiste sempre un cammino che collega il nodo i al nodo j.
In caso contrario, il grafo si dice non connesso.
4
Capitolo 2. Teoria Algebrica dei Grafi
Definizione 2.5. Un grafo G e fortemente connesso (SC - Strongly
Connected) se, presa una coppia qualsiasi di nodi i, j ∈ V esiste sempre
un cammino orientato che collega il nodo i al nodo j.
E chiaro che se G e un grafo non orientato fortemente connesso allora
e connesso.
Definizione 2.6. Dato un grafo G = (V,E) l’insieme dei vicini Ni di un
nodo vi ∈ V e il sottoinsieme di V cosı definito:
Ni = {j ∈ V : ∃(i, j) ∈ E} con V = {1, . . . , n}.
Definizione 2.7. Un grafo G orientato si dice bilanciato se per ogni
nodo vi ∈ V la somma degli archi entranti e pari alla somma di quelli
uscenti.
Definizione 2.8. Dato un nodo vi si definisce grado di vi e si indca con
dg(vi), il numero di nodi ad esso adiacenti (il numero dei vicini, spesso
indicato anche come |Ni|, dove Ni e l’insieme dei vicini di vi).
Descriviamo ora le due matrici fondamentali per lo studio di questa
tesi: la matrice di adiacenza e la matrice Laplaciana.
2.2 Matrice di Adiacenza e Matrice Laplaciana
Definizione 2.9. Dato un grafo G con N nodi la sua matrice di adia-
cenza A e una matrice N ×N il cui generico elemento e:
aij =
{1 se (i, j) ∈ E0 se (i, j) 6∈ E
(2.1)
Nota che in un grafo non orientato la matrice di adiacenza A e simme-
trica.
Definizione 2.10. La matrice Laplaciana L di un grafo G = (V,E) e
una matrice N ×N definita come L=D-A, dove D e la matrice diagonale
dei gradi di ciascun nodo dg(vi), con vi ∈ V , e A e la matrice di adiacenza
5
Capitolo 2. Teoria Algebrica dei Grafi
di G. Quindi il generico elemento lij di L e:
lij =
−1 se j ∈ Ni
|Ni| se j = i
0 altrove
(2.2)
Secondo la definizione di matrice Laplaciana, la somma di tutti gli
elementi di una riga di L e nulla, ovvero∑N
j=0 lij = 0. Percio L avra
sempre almeno un autovalore nullo λ = 0 (detto autovalore banale) corri-
spondente all’autovettore destro 1 = (1, 1, 1, . . . )T poiche L1 = 0. Altra
proprieta fondamentale di L e che nel caso di grafo bilanciato, 1 e anche
un autovettore sinistro (cioe 1TL = 0).
2.3 Caso generale: grafo pesato e tempo-variante
In realta fino ad ora ci siamo sempre riferiti a dei grafi non pesati,
dove conta solo la presenza o l’assenza di un arco tra due nodi. In generale
pero possiamo anche imbatterci in grafi pesati, dove ad ogni arco viene
associato un peso numerico (o costo). Nota che le reti non pesate possono
essere considerate come reti a pesi 0-1 (dove il peso 0 corrisponde al caso di
arco assente, e il peso 1 al caso di arco presente). Per le reti pesate alcune
delle definizioni viste prima andrebbero rivisitate: ad esempio il grado
di un nodo dg(vi) non sara piu pari semplicemente al numero degli archi
uscenti da nodo vi, ma sara pari alla somma dei pesi degli archi uscenti dal
nodo vi. In ogni caso basta tener conto che le definizioni precedenti sono
state scritte per un caso particolare di grafi pesati dove il peso massimo e
1.
Infine un grafo G non e necessariamente definito in modo statico come
fatto finora. Nel corso della tesi avremo a che fare anche con grafi dinamici :
Definizione 2.11. Un grafo dinamico e un grafo G = (V,E(t)) nel
quale l’insieme degli archi E(t) e la matrice di adiacenza A(t) sono tempo-
varianti. Chiaramente l’insieme dei vicini di un nodo Ni(t) e anch’esso
tempo variante, cosı come la matrice Laplaciana L(t).
6
Capitolo 2. Teoria Algebrica dei Grafi
2.4 Proprieta delle matrici non negative
Definiamo brevemente alcune delle proprieta delle matrici non negative
(i cui elementi sono non negativi) e i risultati di Perron-Frobenius relativi
ad esse che utilizzeremo in seguito per enunciare dei teoremi.
Definizione 2.12. Una matrice A e irriducibile se il suo grafo associato
e fortemente connesso.
Definizione 2.13. Una matrice non negativa viene detta riga (o colonna)
stocastica se tutte le sue row-sums ( o column-sums) valgono 1. Se questa
proprieta vale sia per le righe che per le colonne, la matrice viene definita
doppiamente stocastica.
Definizione 2.14. Una matrice P irriducibile stocastica e primitiva se
ha un solo autovalore col modulo massimo.
Lemma 2.1 (Perron-Frobenius). Sia P una matrice primitiva non nega-
tiva con autovettori sinistro e destro w e v rispettivamente che soddisfano
le relazioni Pv = v, wTP = wT , e vTw = 1. Allora limk→∞ Pk = vwT .
7
Capitolo 3
Il problema del consenso
Come e stato gia anticipato nel Capitolo 1, il problema del consenso
assume un ruolo fondamentale in svariati ambiti applicativi. Risolvere
un problema di consenso significa cooperare per il raggiungimento di un
obiettivo comune. Tramite lo scambio di informazioni locale guidato da
un adeguato protocollo, i nodi della rete possono accordarsi riguardo una
certa quantita di interesse che dipende dallo stato di tutti gli agenti. Ma
definiamo formalmente quanto detto.
3.1 Average-Consensus nelle reti indirette
Consideriamo una rete di n agenti integratori, ovvero sistemi con dina-
mica xi = ui. La topologia della rete e descritta da un grafo G = (V,E):
se un nodo i e collegato ad un nodo j della rete tramite un arco, i e j
si dicono vicini. Sfruttando la comunicazione locale tra un nodo e il suo
vicinato, la rete puo raggiungere un consenso, cioe il sistema multi-agente
puo convergere asintoticamente ad uno spazio di accordo definito come
x1 = x2 = · · · = xn
Questo spazio di accordo puo essere riscritto equivalentemente come x =
α1, dove α ∈ R viene chiamata decisione collettiva. Un algoritmo di
consenso (o protocollo) e una legge che regola lo scambio di informazioni
tra i nodi vicini in modo tale che la rete giunga allo spazio di accordo.
Ogni agente segue lo stesso algoritmo condiviso e distribuito e modifica il
suo stato in base alle informazioni proprie e a quelle ricevute dai vicini.
8
Capitolo 3. Il problema del consenso
In particolare, in [1] e nei suoi riferimenti interni, viene trattato il
seguente algoritmo di consenso:
xi(t) =∑j∈Ni
aij(xj(t)− xi(t)) (3.1)
dove aij sono gli elementi della matrice di adiacenza A ed Ni e l’insieme
dei vicini del nodo i. La dinamica del sistema che segue questo protocollo
puo essere riscritta in maniera compatta come:
x = −Lx (3.2)
dove L e la matrice Laplaciana della rete. Per definizione L ha un autova-
lore nullo corrispondente all’autovettore unitario; in altre parole il sistema
(3.2) ha un punto di equilibrio x∗ = (α, . . . , α)T = α1, cioe un punto in
cui si raggiunge un accordo tra tutti gli stati.
Questo algoritmo risolve un problema di average-consensus. Un
average-consensus viene raggiunto quando tutti gli stati degli agenti con-
vergono asintoticamente ad un valore che e pari alla media delle condizio-
ni iniziali xi(0). Infatti, considerando la (3.1) applicata ad un grafo non
orientato (dove cioe aij = aji), possiamo affermare che la somma degli stati
degli agenti e una quantita che resta invariata nel tempo, cioe∑
i xi = 0.
Se allora applichiamo questa condizione al tempo t = 0 e al tempo t = +∞otteniamo:
α =1
n
∑i
xi(0) (3.3)
Quindi la decisione collettiva α alla quale convergono tutti gli agenti e
data dalla media delle condizioni iniziali del sistema.
Come facciamo pero ad essere sicuri che tale algoritmo converga a que-
sta decisione collettiva? Ponendoci sempre nel caso di grafo non orientato,
la matrice L gode di una proprieta SOS (Sum Of Squares):
xTLx =1
2
∑(i,j)∈E
aij(xj − xi)2 (3.4)
Se definiamo una funzione disaccordo
ϕ(x) =1
2xTLx (3.5)
9
Capitolo 3. Il problema del consenso
allora il sistema puo essere riscritto come
x = −∇ϕ(x)
che e un algoritmo a gradiente discendente, il quale converge globalmente
asintoticamente allo spazio di accordo se pero vengono rispettate due con-
dizioni: i) L e semidefinita positiva; ii) α1 e l’unico punto di equilibrio
del sistema. Entrambe le condizioni valgono in una rete connessa e non
orientata. Il seguente lemma riassume il risultato ottenuto.
Lemma 3.1. Sia G un grafo connesso non orientato. Allora l’algoritmo
(3.1) risolve asintoticamente un problema di average-consensus per ogni
condizione iniziale.
La matrice Laplaciana offre ancora altre informazioni riguardo l’algo-
ritmo di consenso. Se restringiamo ancora la nostra osservazione al caso
di grafi non orientati, ci accorgiamo che L ha autovalori reali che possono
essere cosı ordinati:
0 = λ1 ≤ λ2 ≤ · · · ≤ λn ≤ 2∆ (3.6)
dove ∆ = maxidi (il massimo grado dei nodi). Il fatto che tutti gli au-
tovalori siano minori di 2∆ deriva dal teorema di Gershgorin per il quale
e possibile affermare che gli autovalori di L sono contenuti in una circon-
ferenza di centro ∆ + 0j e raggio ∆. Il secondo autovalore piu piccolo
della matrice Laplaciana (in questo caso λ2) e chiamato connettivita al-
gebrica ed e una misura della velocita di convergenza degli algoritmi di
consenso.
3.2 Consenso nelle reti dirette
Spostiamo adesso la nostra attenzione verso un punto di vista piu
ampio, rimuovendo l’ipotesi di grafo non orientato. Ridiscutiamo quin-
di l’analisi di convergenza dell’algoritmo di consenso (3.1) facendo stavol-
ta riferimento al caso generico di grafi diretti o orientati (tutto cio che
verra enunciato sara facilmente adattabile al caso particolare di grafi non
orientati).
Prima di passare all’analisi e necessario enunciare il seguente lemma:
10
Capitolo 3. Il problema del consenso
Lemma 3.2 (Localizzazione spettrale). Sia G un grafo fortemente con-
nesso di n nodi. Allora la matrice Laplaciana L ha rango n− 1 e tutti gli
autovalori non banali hanno parte reale positiva.
A questo punto e valido il seguente teorema che dimostra la conver-
genza dell’algoritmo (3.1) per reti orientate.
Teorema 1. Consideriamo una rete di n agenti con topologia G che
seguono il protocollo di consenso
xi(t) =∑j∈Ni
aij(xj(t)− xi(t)), con x(0) = z (3.7)
Supponiamo che G sia fortemente connesso. Sia L la matrice Laplaciana
di G e sia γ = (γ1, γ2, . . . , γn) un suo autovettore sinistro tale che γTL = 0.
Allora:
• viene asintoticamente raggiunto un consenso a partire da qualsiasi
condizione iniziale;
• l’algoritmo risolve il problema di f-consensus con f(z) = (γT z)/(γT1)
e la decisione collettiva e α =∑
iwizi con∑
iwi = 1;
• se G e bilanciato, viene raggiunto un average-consensus con decisio-
ne collettiva α = (∑
i xi(0))/n.
3.3 Consenso nelle reti complesse a tempo-discreto
Finora ci siamo concentrati solo sul problema di consenso a tempo-
continuo (TC). Nel caso tempo-discreto (TD) viene usata una forma ite-
rativa dell’algoritmo di consenso:
xi(k + 1) = xi(k) + ε∑j∈Ni
aij(xj(k)− xi(k)) (3.8)
La dinamica del sistema a TD puo essere quindi riscritta in maniera
compatta come
x(k + 1) = Px(k) (3.9)
dove ε > 0 e la dimensione del passo (step-size) e P e chiamata matrice
di Perron di un grafo G con parametro ε, definita come P = I − εL.
11
Capitolo 3. Il problema del consenso
Prima di passare al teorema che dimostra la convergenza di tale algo-
ritmo di consenso a TD, bisogna enunciare il seguente lemma:
Lemma 3.3. Sia G un grafo con n nodi e massimo grado ∆ = maxi(∑
j 6=i aij).
Allora la matrice di Perron P con parametro ε ∈ (0, 1/∆] soddisfa le
seguenti proprieta:
• P e una matrice riga stocastica non negativa con un autovalore banale
pari a 1;
• tutti gli autovalori di P sono collocati in una circonferenza unitaria;
• se G e un grafo bilanciato allora P e una matrice doppiamente sto-
castica;
• se G e fortemente connesso e 0 < ε < 1/∆, allora P e una matrice
primitiva.
Sfruttando il lemma appena descritto e quello di Perron-Frobenius,
vale il seguente teorema:
Teorema 2. Consideriamo una rete di agenti con dinamica xi(k + 1) =
xj(k) + ui(k) la cui disposizione e rappresentata da un grafo G. Sup-
poniamo che tali agenti seguano l’algoritmo di consenso distribuito (3.8)
dove 0 < ε < 1/∆ e ∆ e il massimo grado della rete. Sia G fortemente
connesso. Allora:
• viene asintoticamente raggiunto un consenso per qualsiasi condizione
iniziale;
• la decisione collettiva vale α =∑
iwixi(0) con∑
iwi = 1;
• se G e bilanciato (o P e doppiamente stocastica) viene asintotica-
mente raggiunto un average-consensus e la decisione collettiva vale
α = (∑
i xi(0))/n.
Come si puo facilmente notare, i risultati ottenuti a TD sono molto
simili a quelli a TC. La differenza principale e data dalle due matrici
chiave: la matrice Laplaciana L nel caso TC, la matrice di Perron P nel
caso TD.
12
Capitolo 3. Il problema del consenso
3.4 Performance degli algoritmi di consenso
E stato gia accennato nei paragrafi precedenti che il secondo autovalore
piu piccolo della matrice Laplaciana (solitamente indicato con λ2) viene
chiamato connettivita algebrica ed e una misura della velocita di conver-
genza degli algoritmi di consenso. In [1] viene enunciato il Teorema della
connettivita algebrica dei grafi che dimostra il legame esatto che c’e tra le
matrici chiave L e P di un grafo bilanciato e l’autovalore λ2. Le perfor-
mance di un algoritmo di consenso vengono quindi formalizzate tramite i
seguenti corollari che discendono dal Teorema citato:
Corollario 1. In una rete orientata bilanciata e fortemente connessa a
TC viene globalmente esponenzialmente raggiunto un consenso con una
velocita superiore o pari a λ2 = λ2(Ls) dove Ls = (L+ LT )/2.
Corollario 2. In una rete connessa non orientata a TD viene globalmente
esponenzialmente raggiunto un consenso con una velocita superiore o pari
a µ2 = 1− ελ2(L).
13
Capitolo 4
Edge Snapping
Negli ultimi anni e stata rivolta una grande attenzione allo studio di
approcci adattativi (o evolutivi) che risolvono il problema del consenso
nelle reti di agenti dinamici. Con “adattativi” si intendono quegli approcci
che modificano la legge di interazione tra gli agenti in base all’evoluzione
della rete. Ad esempio, nei sistemi multiveicolo, nel Flocking e in altre
applicazioni simili, la topologia della rete non e stabile ma puo evolversi
secondo la dinamica degli agenti. Percio e necessario controllare questa
topologia, nel senso che il protocollo di consenso deve sapersi evolvere
adeguandosi alle evoluzioni della rete.
Ci concentriamo ancora su reti di integratori, e discutiamo gli algoritmi
necessari al raggiungimento non solo dell’average-consensus, ma anche del
min-consensus e del max-consensus. Obiettivo di questo capitolo e quello
di illustrare in dettaglio uno degli approcci evolutivi piu studiati negli
ultimi tempi: l’edge snapping.
Questo meccanismo per la risoluzione dei problemi di consenso consiste
principalmente nella attivazione/disattivazione dinamica delle interconnes-
sioni della rete. Tipicamente, all’inizio dell’evoluzione tutti i nodi sono
disconnessi, non ci sono collegamenti. Utilizzando poi questo meccanismo,
non solo si raggiunge uno spazio di accordo ma emerge anche una topolo-
gia di rete le cui caratteristiche dipendono da alcuni fattori dell’algoritmo
e anche dal tipo stesso di edge snapping utilizzato. Esistono infatti diverse
forme di edge snapping che saranno tutte presentate in questo Capitolo.
14
Capitolo 4. Edge Snapping
4.1 Definizione della strategia di edge snapping
Consideriamo una rete di n agenti integratori la cui topologia e descrit-
ta da un grafo dinamico G = (V,E(t)). Ogni agente si comporta secondo
l’algoritmo di consenso distribuito
xi =
n∑j=1
j 6=i
σij(xj − xi), i = 1, . . . , n (4.1)
dove σij(t) ∈ R e il coefficiente (o guadagno) di accoppiamento tra il nodo
i e il nodo j. In pratica σij corrisponde al peso dell’arco tra i e j (se e
maggiore di 0 allora esiste un arco che va da i a j, altrimenti non c’e alcun
arco). Il sistema puo ovviamente essere riscritto come
x = −Lx (4.2)
dove L e la matrice Laplaciana i cui elementi lij sono:
lij(t) =
−σij i 6= j
−∑r=1r 6=i
lir i = j (4.3)
Si noti che la matrice L(t) in questo caso e tempo-variante, a causa della
tempo-varianza dei guadagni σij .
Come variano pero i coefficienti σij(t)? L’edge snapping si basa sull’i-
dea di assegnare ai coefficienti di accoppiamento una dinamica del secondo
ordine dipendente da un potenziale bistabile V : R→ R e da una funzione
guida g(eij) dove eij = xj − xi e l’errore tra i nodi i e j. In particolare la
dinamica puo essere cosı descritta:
sij + dsij +∂
∂sijV (sij) = g(eij) (4.4)
σij = h(sij) (4.5)
dove sij ∈ R, d e lo smorzamento, h e una funzione di output. Osservando
le equazioni (4.4) e (4.5) si capisce che la variazione dei coefficienti σij viene
forzata dall’errore eij , ovvero dalla differenza che c’e tra gli stati di due
nodi, in modo da guidare l’evoluzione della rete verso lo spazio di accordo
15
Capitolo 4. Edge Snapping
in cui non ci sara piu differenza tra gli stati dei vari nodi. Cioe possiamo
dire che, definito χ(x(0)) : Rn × R come il valore di consenso desiderato,
allora l’errore ei = χ(x(0)) − xi tendera a 0, ovvero limt→∞ ei(t) = 0,
∀i = 1, . . . , n. Non e solo l’errore a guidare l’evoluzione dei σij ; anche
il potenziale bistabile V fa la sua parte in quanto tutti i coefficienti σij
si assesteranno in uno degli stati stabili di V . Dato che tipicamente gli
stati stabili di V si hanno nei punti 0 e 1, da questo meccanismo emergono
topologie di reti non pesate (o con pesi 0-1).
Tipici valori di consenso sono:
• l’average-consensus
χave(x(0)) =1
n
n∑i=1
xi(0)
• il max-consensus
χ(x(0)) = maxi=1,...,n
xi(0)
• il min-consensus
χ(x(0)) = mini=1,...,n
xi(0)
Scegliendo in maniera appropriata il potenziale V , la funzione g e la fun-
zione h si puo controllare l’evoluzione della rete in modo che si raggiunga
uno dei valori di consenso mostrati sopra e in modo che emergano varie
tipologie di rete.
4.2 Edge snapping indiretto
La prima forma di edge snapping studiata e quella che prende il nome
di edge snapping indiretto. Viene chiamato in questo modo perche
genera una rete indiretta non pesata. Questa caratteristica e dovuta al
fatto che la funzione guida viene scelta come g(xj−xi) = G(|xj −xi|), con
G presa dall’insieme delle funzioni di classe k∞ (continue, definite positive,
strettamente crescenti e non limitate). Guidare la dinamica dei coefficienti
di accoppiamento in base al valore assoluto dell’errore eij = xj−xi significa
che σij = σji, con i, j = 1, . . . , n, cioe se esiste un arco che va da i a j
che possiede un certo peso, ce ne sara uno che va da j a i col medesimo
16
Capitolo 4. Edge Snapping
peso, percio la rete e indiretta. Nell’edge snapping indiretto il potenziale
V viene scelto nel seguente modo:
V (sij) = bs2ij(sij − 1)2 (4.6)
dove b rappresenta l’altezza della barriera tra i due stati stabili di V che
corrispondono ai punti di minimo per sij = 0 e sij = 1. Per maggiore
chiarezza l’andamento del potenziale V e stato rappresentato in Fig. 1.
Infine la funzione di output viene scelta come h(sij) = s2ij cosicche le
−1 −0.5 0 0.5 1 1.5 20
0.5
1
1.5
2
2.5
3
σij
V(σ
ij)
Fig. 1: Potenziale bistabile V con parametro b = 5
topologie risultanti siano sicuramente stabili.
Con questo meccanismo di edge snapping la rete raggiunge un average-
consensus e tutti i coefficienti σij convergono a 0 o 1. Emerge percio una
rete non orientata e non pesata la cui topologia dipende da d, b e x(0).
4.3 Edge snapping ibrido
L’edge snapping ibrido e un meccanismo adatto alla risoluzione di
problemi di χ-consensus con χ 6= χave. Inoltre con questa tecnica viene
fuori una topologia di rete diretta, diversamente dal caso precedente. Per
ora soffermiamoci sul problema di max-consensus. L’edge snapping ibrido
e caratterizzato dalla seguente regola ibrida:
lij(t) =
−|σij | xj ≥ xi, i 6= j
0 xj < xi, i 6= j
−n∑
r=1r 6=i
lir i = j(4.7)
17
Capitolo 4. Edge Snapping
basata sull’idea di inserire archi nella rete che vanno dai nodi con valori
di stato piu alti verso quelli con valori di stato piu bassi. Le altre funzioni
vengono scelte in questo modo:
V (σij) = bσij2(σij − 1)2(σij + 1)2 (4.8)
g(xj − xi) = xj − xi (4.9)
h(sij) = sij (4.10)
Nota che il potenziale V adesso ha tre stati stabili (in 0, 1 e -1) come
mostrato in Fig. 2. Inoltre poiche la h e definita secondo la (4.10), da
−1.5 −1 −0.5 0 0.5 1 1.50
0.5
1
1.5
2
2.5
3
σij
V(σ
ij)
Fig. 2: Potenziale tristabile V con parametro b = 5
ora in poi sara equivalente parlare di sij o σij . Come dimostrato in [2] la
regola dell’edge snapping ibrido garantisce che l’errore ei = χ(x(0))−xi sia
limitato e che l’unico valore di consenso possibile sia il max-consensus (per
questa particolare configurazione) il quale viene asintoticamente raggiunto.
Inoltre tutti i coefficienti di accoppiamento si assestano in 1, 0 o -1.
Apportando semplici modifiche alla regola ibrida (4.7) si puo ottenere
una regola che vada bene per il problema di min-consensus:
lij(t) =
−|σij | xj < xi, i 6= j
0 xj ≥ xi, i 6= j
−n∑
r=1r 6=i
lir i = j(4.11)
Nel Capitolo successivo saranno mostrate delle simulazioni che sfrut-
tano la tecnica dell’edge snapping ibrido.
18
Capitolo 4. Edge Snapping
4.4 Edge snapping diretto
Come variante dell’edge snapping ibrido, viene mostrata un’altra tecni-
ca per il raggiungimento del consenso e l’affermazione di una rete diretta:
l’edge snapping diretto. In particolare le funzioni V , g e h sono scel-
te allo stesso modo del caso precedente mentre la regola con la quale si
aggiornano gli elementi lij questa volta e:
lij(t) =
−σij σij ≥ 0, i 6= j
0 σij < 0, i 6= j
−n∑
r=1r 6=i
lij i = j(4.12)
Una discussione approfondita di questa strategia, della sua stabilita e
convergenza e ancora in fase di studio.
Lo scopo di tale regola e quello di favorire l’attivazione di un arco che
va dal nodo j al nodo i nel caso in cui xj > xi, oppure dal nodo i al
nodo j nel caso opposto. Ancora una volta a regime i coefficienti σij si
assesteranno in 1, 0 o -1, lasciando emergere una rete diretta. Il sistema
risolve asintoticamente un max-consensus, ma questa qualita non e valida
per tutte le condizioni iniziali. Se ad esempio un nodo viene fissato ad
un valore iniziale molto piu piccolo rispetto a quelli degli altri nodi, allora
tutti gli stati convergeranno ad un valore di consenso leggermente minore
di maxi xi(0), con i = 1, . . . , n.
Per guidare la dinamica dei nodi verso il valore minimo piuttosto che
quello massimo basta cambiare segno alla funzione guida g scelta prima.
4.5 Edge snapping con target
Il problema del consenso si riscontra, come gia accennato, anche in
applicazioni quali il controllo di formazione, il Flocking, il rendezvous nello
spazio. Immaginiamo di avere una rete di robot, o una squadra di UAV
o piu in generale un sistema multiveicolo dove lo stato di ogni agente
rappresenta la sua posizione. Puo essere utile avere una forma di controllo
che permetta ai veicoli di raggiungere un determinato punto dello spazio
o, in particolare, un altro nodo della rete che possiamo chiamare target.
E partendo da queste idee che ho personalmente ideato una strategia che
19
Capitolo 4. Edge Snapping
ho definito come Edge Snapping con target, la quale nasce come semplice
variante della versione ibrida. Introduciamo quindi una semplice modifica
alla regola di edge snapping ibrido per fare in modo che tutti gli agenti
della rete facciano convergere il loro stato verso quello di un nodo scelto
a priori come target, risolvendo cosı il problema del consenso; possiamo
semplicemente immaginare che tutti gli altri nodi conoscano il valore del
target perche informati da un sistema centralizzato o perche tale valore e
precaricato in ognuno degli agenti. Chiamato xt il nodo target, e possibile
scegliere la funzione g(ei) = xt−xi come funzione per guidare la dinamica
dei guadagni di accoppiamento. Scegliamo V e h allo stesso modo di come
era stato fatto per l’edge snaping ibrido. Cambiamo infine la regola con
la quale si definiscono gli elementi della matrice Laplaciana:
lij(t) =
−|σij | xi 6= xt, i 6= j
0 xi = xt, i 6= j
−n∑
r=1r 6=i
lir i = j(4.13)
In questo modo viene favorita l’attivazione di archi che collegano il nodo
target a tutti gli altri nodi della rete e il consenso viene asintoticamen-
te raggiunto nel valore xt(0). I guadagni di accoppiamento, con questa
strategia, convergono tutti a 0 e 1 oppure a 0 e -1.
Nel Capitolo successivo sara presentata una simulazione di questa stra-
tegia per mostrarne l’efficacia.
20
Capitolo 5
Risultati numerici
In questo capitolo viene mostrata attraverso una simulazione in am-
biente MATLAB l’efficacia della regola di edge snapping di cui si e discusso.
In particolare viene messo in pratica l’edge snapping ibrido sotto diverse
condizioni ed anche l’edge snapping con target.
5.1 Simulazione Edge Snapping ibrido
Consideriamo una rete di n = 50 agenti integratori. Ricordiamo che
le formule che caratterizzano principalmente la tecnica dell’edge snapping
ibrido sono la (4.4) e la (4.7) le quali sono state implementate tramite un
modello Simulink. La rete comincia la sua evoluzione da uno stato com-
pletamente disconnesso, quindi all’inizio tutti i σij sono nulli (ricordiamo
che parlare dei coefficienti σij o di sij e equivalente poiche h(sij) = sij).
Scegliamo i valori iniziali degli agenti xi(0) prendendoli da una distribu-
zione normale con media nulla e deviazione standard pari a 15. Fissiamo i
parametri dell’algoritmo a valori tipici: b = 16, d = 5 e facciamo partire la
simulazione. Dopo poco tempo otteniamo i risultati mostrati in Fig. 3. Il
max-consensus viene raggiunto e tutti i σij convergono in uno degli stati
stabili del potenziale V , lasciando emergere una rete orientata (per σij = 1
si ha un arco dal nodo i al nodo j, per σij = 0 non si ha alcun arco, per
σij = −1 si ha un arco dal nodo j al nodo i). Quindi la tecnica funziona
correttamente e anche nel caso di condizioni iniziali xi(0) molto variegate
(per esempio per un valore iniziale di un nodo molto piu grande o molto
piu piccolo rispetto agli altri) il consenso viene raggiunto ugualmente.
21
Capitolo 5. Risultati numerici
1 2 3 4 5 60−60−40−20
0204060
t
Xi(t)
(a) Andamento degli stati degli agenti
1 2 3 4 5 60−1.5
−1−0.5
00.5
11.5
t
σij
(b) Andamento dei guadagni di accop-piamento
Fig. 3: Evoluzione di una rete di 50 integratori con edge snapping ibrido (b = 16,d = 5)
Cosa succede se variamo i valori di b e d? Al crescere di b gli agenti
impiegano molto piu tempo per giungere allo spazio di accordo e i gua-
dagni di accoppiamento tendono a convergere tutti in 0. Ad esempio per
b = 170 si ottengono i risultati mostrati in Fig. 4. Come si evince, dopo
50 100 150 2000−40
−20
0
20
40
t
Xi(t)
(a) Andamento degli stati degli agenti
50 100 150 2000−0.2
−0.1
0
0.1
0.2
t
σij
(b) Andamento dei guadagni di accop-piamento
Fig. 4: Evoluzione di una rete di 50 integratori con edge snapping ibrido (b = 170,d = 5)
200 secondi gli stati ancora non hanno raggiunto perfettamente il valore
massimo delle condizioni iniziali. Analogamente, osserviamo il comporta-
mento del sistema al variare di d. Per valori bassi dello smorzamento (ad
esempio d = 1), gli stati raggiungono il consenso velocemente e i guadagni
σij convergono verso -1, 0 o 1 con forti oscillazioni. Al crescere dello smor-
zamento, gli stati impiegano sempre piu tempo per raggiungere un accordo
e i guadagni di accoppiamento tendono a convergere tutti a 0 (le oscillazio-
ni spariscono quasi completamente). Come si vede dalla Fig. 5(b) infatti
22
Capitolo 5. Risultati numerici
solo pochi guadagni σij finiscono in -1 e 1 per uno smorzamento d = 50.
2 4 6 8 10 120−40
−20
0
20
40
t
Xi(t)
(a) Andamento degli stati degli agenti
20 40 60 80 100 120−2
−1
0
1
2
t
σij
(b) Andamento dei guadagni di accop-piamento
Fig. 5: Evoluzione di una rete di 50 integratori con edge snapping ibrido (b = 16,d = 50)
Anche per condizioni iniziali σij 6= 0, ∀i 6= j, il consenso viene raggiunto
e i guadagni si assestano nei soliti tre punti anche se impiegano un po’ piu
tempo per farlo.
Cambiando la regola secondo la (4.11) il min-consensus viene perfet-
tamente raggiunto come mostrato in Fig. 6.
10 2 3 4 5 6−40
−20
0
20
40
t
Xi(t)
(a) Andamento degli stati degli agenti
1 2 3 4 5 60−2
−1
0
1
2
t
σij
(b) Andamento dei guadagni di accop-piamento
Fig. 6: Evoluzione di una rete di 50 integratori con edge snapping ibrido per ilproblema di min-consensus (b = 16, d = 5)
5.2 Simulazione Edge Snapping con target
Passiamo a fare una simulazione dell’edge snapping con target per una
rete inizialmente disconnessa di 50 integratori le cui condizioni iniziali sono
scelte da una distribuzione normale con media nulla e deviazione standard
23
Capitolo 5. Risultati numerici
pari a 15. Fissiamo i parametri b = 16 e d = 5. Scegliamo come target uno
a caso tra i 50 agenti della rete, ad esempio il 32◦ nodo che ha valore iniziale
xt(0) = x32(0) = −23.47. Simulando l’evoluzione del sistema si ottengono
i risultati mostrati in Fig. 7. Tutti gli stati convergono asintoticamente al
0 1 2 3 4−40
−20
0
20
40
t
Xi(t)
(a) Andamento degli stati degli agenti
0 1 2 3 4−1.5
−1
−0.5
0
0.5
t
σij
(b) Andamento dei guadagni di accop-piamento
Fig. 7: Evoluzione di una rete di 50 integratori con targeted edge snapping(b = 16, d = 5)
valore −23.47. I guadagni σij con questa regola convergono tipicamente
o solo a 0 e 1, o solo a 0 e -1 a seconda che il target abbia valore iniziale
rispettivamente maggiore o minore della media delle condizioni iniziali.
24
Capitolo 6
Conclusioni e sviluppi futuri
In questo elaborato e stato descritto il problema del consenso all’in-
terno di una rete di agenti integratori. Dopo aver definito il consenso in
generale, si e discusso di alcune tipologie di consenso fortemente utilizzate
quali l’average-consensus, il max-consensus e il min-consensus. Sia a TC
che a TD e stata dimostrata l’efficacia dell’algoritmo (3.1), e si e visto
come molte proprieta degli algoritmi di controllo dipendano dalle matrici
chiave Laplaciana (TC) e di Perron (TD). Proprio dal secondo autova-
lore piu piccolo della matrice Laplaciana chiamato connettivita algebrica
si ricavano informazioni sulle performance degli algoritmi. L’analisi della
convergenza di tale algoritmo e stata fatta formalmente per il caso di reti
orientate, ma e stata prima affrontata in maniera semplificata per il caso
di reti non orientate. E stato introdotto un meccanismo adattativo per
la risoluzione di un problema di consenso nelle reti dinamiche, cioe l’edge
snapping. Tramite un sistema di attivazione/disattivazione degli archi del-
la rete questo meccanismo assicura che gli stati giungano ad una decisione
collettiva e permette l’affermazione di configurazioni di rete sia orientate
che non. Con delle simulazioni effettuate grazie all’ausilio di MATLAB
e Simulink e stato messo in pratica l’edge snapping ibrido mostrando in
particolare come sia adattabile a varie esigenze; si possono ottenere infatti
risultati diversi solo cambiando valore ai parametri che caratterizzano la
regola o anche applicando leggere modifiche alla regola stessa per ottenere
nuove forme di consenso.
Sono stati brevemente introdotti alcuni dei campi applicativi piu caldi
che riguardano il problema del consenso, il che ci permette facilmente
25
Capitolo 6. Conclusioni e sviluppi futuri
di immaginare il perche questo argomento sia al centro delle ricerche di
numeriosi studiosi provenienti dai piu svariati settori scientifici e non solo.
Molte altre applicazioni che sfruttano controllori per il raggiungimento
di un consenso sono in fase di sviluppo; si cerca non solo di estendere
il concetto di consenso a contesti ben piu vasti, come e stato fatto da
Kuramoto che ha ideato un modello di controllo capace di sincronizzare
una rete di oscillatori, ma anche di migliorare le prestazioni degli algoritmi,
obiettivo raggiunto ad esempio con le reti Small-World di Olfati-Saber.
26
Bibliografia
[1] Olfati-Saber R., Consensus and Cooperation in NetworkedMulti-Agent Systems, Proceedings of the IEEE, 95, 215-226,2007.
[2] P. De Lillis, M. di Bernardo, F. Scafuti, Consensus via adap-tation of the network structure, 52nd IEEE Conference onDecision and Control, Florence, Italy, 660-665, 2013.
27