Document not found! Please try again

The Distributed Command Governor Approach in a Nutshell - Springer

1 downloads 0 Views 447KB Size Report
Nov 11, 2013 - Author Affiliations. 4. Università degli Studi della Calabria, DEIS, Rende (CS), Calabria, Italy; 5. Universite Libre de Bruxelles, Bruxelles, ...
Chapter 16

The Distributed Command Governor Approach in a Nutshell A. Casavola, E. Garone and F. Tedesco

Abstract The term Command Governor (CG) refers to a particular class of Model Predictive Control (MPC) strategies designed to manage the reference of a precompensated system in such a way that set-membership constraints on relevant system variables are not violated. More precisely, a CG unit is added to a primal compensated plant, which has supposedly been designed so as to exhibit stability and good tracking performance in the absence of constraints, and is in charge of modifying the prescribed reference signal whenever its direct application would lead to constraint violations. This chapter describes a distributed CG strategy for the supervision of a network of interconnected, possibly dynamically coupled, subsystems. Such an approach could be useful in situations where the use of a centralized coordination unit may be impracticable because requiring unrealistic or unavailable communication infrastructures.

16.1 Short Introduction The problem of interest here is the design of distributed supervision strategies for large-scale multi-agent systems in situations where the use of centralized solutions might be impracticable. To this end, a distributed Command Governor (CG) approach will be presented. A. Casavola (B) · F. Tedesco Università degli Studi della Calabria, DEIS, Rende (CS), Calabria, Italy e-mail: [email protected] F. Tedesco e-mail: [email protected] E. Garone Universite Libre de Bruxelles, Bruxelles, Belgium e-mail: [email protected]

J. M. Maestre and R. R. Negenborn (eds.), Distributed Model Predictive Control 259 Made Easy, Intelligent Systems, Control and Automation: Science and Engineering 69, DOI: 10.1007/978-94-007-7006-5_16, © Springer Science+Business Media Dordrecht 2014

260

A. Casavola et al. Disturbances

Pre-Compensated System

Desired Reference

Command Governor

Primal Controller

Input

Constrained Variables

Plant Output

Measurements

Fig. 16.1 Command governor control scheme

A CG is a non-linear device that outputs a reference trajectory rather than a control input and that it is superimposed to a primal compensated control system, as depicted in Fig. 16.1. The main requirement is the presence of a primal controller, (e.g. PID) designed to stabilize the plant and provide good tracking and disturbance attenuation properties regardless of any constraints fulfillment. This latter task is in fact accomplished by CG that, whenever necessary, modifies the reference supplied to the primal control system in order to avoid constraint violations. As in MPC schemes, a modified reference sequence is computed at each sampling instant and, according to a receding horizon control (RHC) policy, only the first sample of such a sequence is applied. The entire procedure is repeated at the next time instant. One of the advantages of CG usage over the more general MPC approach lies in its simplicity in addressing constrained tracking problems. For such reason, the CG strategy seems to be very suitable in the supervision of large-scale networked systems where constraints fulfillment is a crucial task. Indeed, in such a case a centralized control architecture could not be an adequate choice because the corresponding computational burdens could be prohibitive and the required communication infrastructures not available. All these reasons call for distributed CG approaches, as the one described in this chapter. The distributed context under consideration is depicted in Fig. 16.2, where the supervisory task is distributed amongst many agents which are assumed to be able to communicate each other through a communication network. There, each agent is in charge of supervising and coordinating one specific subsystem. In particular, ri , gi , xi , yi and ci represent respectively: the nominal reference, the applied reference, the state, the performance-related and the coordination-related output vectors of the i−th subsystem. In such a context, supervision can be expressed as the task of satisfying some tracking performance, viz. yi ≈ ri while ensuring set-membership constraints ci ∈ C i and/or f (c1 , c2 , . . . , c|N | ) ∈ C on each subsystem and/or on the overall network evolutions. To do so, each i−th supervising node is in charge of modifying its local desired reference ri into the applied one gi , ensuring that their joint application would not produce constraint violations and hence loss of coordination. In this chapter a parallel distributed approach able to locally compute applied reference while ensuring global constraints satisfaction is presented. The main technical expedient behind such a scheme is the on-line determination of a suitable Cartesian

16 The Distributed Command Governor Approach in a Nutshell

261

Fig. 16.2 Multi-agent architectures

Inner Approximation of the global constraint set, which allows the agents to optimize independently and simultaneously their reference signals while ensuring the fulfillment of the global constraints.

16.2 Boundary Conditions 16.2.1 System Model Consider a set N of subsystems, each one being a LTI closed-loop dynamical system regulated by a local controller which ensures stability and good closed-loop properties within linear regimes (when the constraints are not active). Let the ith closed-loop subsystem be described by the following discrete-time model ⎧  ⎪ xi (k +1) = Aii xi (k)+Bigi (k)+ Ai j x j (k) ⎪ ⎨ ⎪ y (k) ⎪ ⎩ i ci (k)

= Ci xi (k) = Hic x(k) + Li g(k)

j∈N −{i}

(16.1)

262

A. Casavola et al.

where: k ∈ Z+ , xi is the state vector (which includes the controller states under dynamic regulation), gi the manipulable reference vector which, if no constraints (and no CG) were present, would coincide with the desired reference ri and yi the output vector which is required to track ri . Finally, ci represents the local constrained vector which has to fulfill the set-membership constraint ci (k) ∈ Ci , ∀k ∈ Z+ ,

(16.2)

Ci being a convex and compact polytopic set. It is worth pointing out that, in order to possibly characterize global (coupling) constraints amongst states of different subsystems, the vector ci in (16.1) is allowed to depend on the aggregate state and manipulable reference vectors x = [x1T , . . . , x|TN | ]T , and g = [g1T , . . . , g|TN | ]T . Moreover, we denote by r = [r1T , . . . , r|TN | ]T , y = [y1T , . . . , y|TN | ]T and c = [c1T , . . . , c|TN | ]T , the other relevant aggregate vectors. The overall system arising by the composition of the above |N | subsystems can be described as ⎧ ⎨ x(k + 1) = Ax(k) + Bg(k) y(k) = Cx(k) ⎩ c(k) = Hc x(k) + Lg(k) where

(16.3)

⎛ ⎞ ⎞ B1 . . . 0 A11 . . . A1|N | ⎜ .. ⎟ , B = ⎜ .. . . . ⎟ A = ⎝ ... . . . ⎝. . .. ⎠ . ⎠ A|N |1 . . . A|N ||N | 0 . . . B |N | ⎛

⎛ y C1 . . . ⎜.. . . C = ⎝. . 0 ...

0 .. .

⎞ y

C|N |

⎛ c ⎞ ⎛ ⎞ H L1 ⎟ c ⎝. . 1. ⎠ , L = ⎝ . . . ⎠, ⎠,H = Hc|N | L |N |

and subject to c(k) ∈ C, ∀k ∈ ZZ+ ,

(16.4)

where C = C1 × . . . × C|N | . It is further assumed that system (16.3) satisfies the following Assumptions. A1. The overall system (16.3) is asymptotically stable, i.e., eigenvalues of A have a magnitude strictly smaller than 1. A2. System (16.3) is offset free, that is lim y(k) = g¯ if a constant g(k) = g¯ is k→∞

applied. The first assumption captures the fact that the system is pre-compensated. The second assumption, which is dictated only by practical reasons, represents the fact that this controller is built in such a way that there is not static tracking error for a constant reference.

16 The Distributed Command Governor Approach in a Nutshell

263

16.2.2 Communication Assumptions It is assumed that the agents are connected via a communication network. Such a network may be modeled by a communication graph defined as follows: Definition 16.1 (Communication Graph) Let a set of |N | dynamically interconnected subsystems be given. Then, a Communication Graph is an undirected graph  = (N , B), where (i) N denotes the set of the |N | subsystems; (ii) B ⊆ N × N the set of edges representing the existing communication links amongst agents in the Communication Graph, i.e., the edge (i, j) belongs to B if and only if the agents governing the ith and the jth subsystems are able to directly share information within one sampling time; (iii)  is assumed to be connected, i.e., for each couple of agents i ∈ N , j ∈ N there exists at least one sequence of edges connecting i and j, with the minimum number of edges connecting the two agents denoted by di, j . (iv) The set of all agents with a direct connection with the ith agent represents the Neighborhood of the ith agent |N |i = { j ∈ N : di, j = 1}. It is hereafter assumed that  is a Hamiltonian graph and, without loss of generality, that the sequence H = {1, 2, . . . , |N | − 1, |N |} is a Hamiltonian cycle, i.e, a graph cycle through  that visits each node exactly once. Moreover, it is also assumed that each agent communicates with its neighbors once per sampling time and that each of them may act as a gateway in redistributing data amongst the other, no directly connected, agents. As a consequence, at each time instant k, the most recent information on the local state measurements and on the applied commands available to the ith agent is represented by the following Local Information vectors: pi (k) = [g1T (k − di,1 ), . . . , giT (k − 1), . . . , g|TN | (k − di,|N | )]T si (k) = [x1T (k − di,1 ), . . . , xiT (k), . . . , x|TN | (k − di,|N | )]T

(16.5)

while the Common Information shared by all agents at each time k is given by p(k) = [g1T (k − d1 ), . . . , giT (k − 1), . . . , g|TN | (k − d|N | )]T s(k) = [x1T (k − d1 ), . . . , xiT (k), . . . , x|TN | (k − d|N | )]T

(16.6)

with di the maximum amongst all distances di, j from the ith agent to any other in the graph, i.e., di = max j∈|N | di, j . Finally, the latest complete state measurement available to all agents at time k is

T x(k − dmax ) = x1T (k − dmax ) , . . . , x|TN | (k − dmax ) where dmax = max j d j .

(16.7)

264

A. Casavola et al.

16.2.3 Problem Statement Problem 16.1 Consider a network of |N | pre-compensated, possibly coupled, subsystems N = {1, . . . , |N |} where each subsystem (16.1) is subject to local and global constraints (16.2). Moreover, let the overall aggregated system (16.3) fulfill assumptions A1 and A2 and denote with ri (k) the desired reference signal. Then at each time step k, the CG design problem is that of determining, for each agent i ∈ N and on the basis of the available information, a suitable reference signal gi (k) such that: • its application never produces constraints violation, i.e., ci (k) ∈ Ci , ∀k ∈ Z+ , i ∈ N. • gi (k) approximates as close as possible ri (k).

16.3 Description of the Approach 16.3.1 A Recall of the Centralized CG Design Approach Before detailing the decentralized CG approach, let us briefly recall how the centralized CG works. The main idea behind the CG approach is that of applying at each time step a command g(k) = w chosen in such a way that, if constantly applied over a semi-infinite horizon l ∈ [0, ∞), it would never produce constraints violation. Two main technical expedients are used: 1. The applied command w is chosen in such a way that the corresponding equilibrium point xw := (In − A)−1 Bw satisfies constraints with margin δ > 0, i.e., g ∈ W δ := {w : cw ∈ C ∼ B} where cw := Hc xw + Lw, Bδ is the ball of radius δ centered at the origin, δ is an arbitrarily small scalar and ∼ denotes the Pontryagin set difference defined as A ∼ E := {a : a + e ∈ A, ∀e ∈ E}. Being C closed and convex, W δ is a closed and convex set as well. Hereafter W δ is assumed to be non-empty. 2. The applied command w is chosen in such a way that the future predictions (virtual evolutions) of the c-variable along the virtual time k under a constant virtual command g(l) ≡ w from the initial state x (at virtual time l = 0)  c(l, x, w) = Hc Al x +

l−1 

 Al−i−1 Bw + Lw

(16.8)

i=0

do not violate constraints. This is obtained by selecting the applied command as follows   (16.9) w ∈ V(x) := w ∈ W δ : c¯ (l, x, w) ∈ C, ∀l ∈ Z+

16 The Distributed Command Governor Approach in a Nutshell

265

It is worth remarking that the set V(x), ∀x ∈ Rnx , is convex and finitely determined, viz. there exists an a priori known integer l0 (see [10]) such that if c(l, x, g) ∈ C, l ∈ {0, 1, . . . l0 }, then c(l, x, w) ∈ C, ∀l ∈ Z+ . Finally, the centralized CG problem is solved by choosing at each time instant k a command g(k) which is the solution of the following convex optimization problem g(k) = arg

min

w∈V (x(k))

w − r(k) 2R

(16.10)

The following Theorem, proved in [1] and [7], summarizes the properties of the described CG Algorithm: Theorem 16.1 Let assumptions A1-A2 be fulfilled. Consider system (16.3)–(16.4) along with the CG selection rule (16.10) and let V(x(0)) be non-empty. Then: 1. Problem (16.10) is feasible and at each decision time k, viz. the minimizer of (16.10) always uniquely exists; 2. The system never violates the constraints, i.e., c(k) ∈ C, ∀k ∈ Z+ ; 3. The overall system is asymptotically stable. Moreover, whenever r(k) ≡ r, with r a constant set-point, the sequence of g(k) converges in finite time either to r or to its best admissible steady-state approximation rˆ: ∃ks > 0 k.c. g(k) = rˆ := arg min w − r 2R , ∀k ≥ ks w∈Wδ

and limk→∞ xˆ (k) = xrˆ ,

limk→∞ yˆ (k) = yrˆ = rˆ ,

(16.11)

limk→∞ cˆ (k) = cr .

16.3.2 Distributed Command Governor: The Philosophy The approach adopted to develop the proposed distributed CG strategy is based on the following two key ideas • On the basis of the information available to all agents (the Common Information), they locally compute the same family of local artificial constraints {V1 (k), V2 (k), . . . , V|N | (k)}. This family of sets is computed to ensure that for any choice of the local reference such that gi (k) − gi (k − 1) ∈ Vi (k), i = 1, . . . , |N |

(16.12)

the global constraints (16.9) are not violated. In order to ensure feasibility and computability Vi (k) ⊆ Rn gi , i ∈ N have to be convex and compact sets containing 0m i as an internal point. • On the basis of the Local Information each agent computes the command to be applied minimizing its local cost function wi − ri 2Ri , with Ri > 0, and complying with the above mentioned local artificial constraint.

266

A. Casavola et al.

16.3.3 State and Command Predictions In order to be able to compute the collection of sets {V1 (k), V2 (k), . . ., V|N | (k)}, the first step is the determination of the set of all possible commands and states compatible with the common information available to all agents of the networks. To this end, we assume that each agent, at time k, is provided with a collection dmax , ∀i ∈ N of sets computed at the previous step. Such information, {Vi (k − l)}l=1 together with the common information vector p(k), can be exploited to define the set of all possible feasible values which g(k) could have been assumed in the last dmax time steps, gˆ i (k − l|k) = gi (k − l) if l ≥ di gˆ i (k − l|k) = gi (k − di ) ⊕ Vi (k − di + 1) ⊕ . . . ⊕ Vi (k − l) if l < di . (16.13) where ⊕ denotes Pontryagin—Minkowski set sum, i.e., A ⊕ B := {a + b|a ∈ A, b ∈ B}. The set of all possible values for g(k − l) is then given by ˆ − l|k) = gˆ 1 (k − l|k)×, . . . , ׈g|N | (k − l|k). G(k

(16.14)

Moreover, the set of all possible state predictions at time k, computed on the basis of the measured state x(k − dmax ) available to all agents of the network is given by Xˆ (k) := Admax x(k − dmax )+

dmax −1 

ˆ − dmax + j|k) Admax −1− jBG(k

(16.15)

j=0

By following the same lines, for each ith agent one can define the predictions of the commands computed on the basis of the information available if l ≥ di, j gˆ j (k − l|k, i) = g j (k − l) gˆ j (k − l|k, i) = g j (k − di, j ) ⊕ V j (k − di, j + 1) ⊕ . . . ⊕ V j (k − l) if l < di, j (16.16) and the corresponding prediction sets: Gˆi (k − l|k) = gˆ 1 (k − l|k, i)×, . . . , ׈g|N | (k − l|k, i), Xˆi (k) := Adi x(k − di )+

d i −1 k=0

Adi −1−lBGˆi (k − di + l|k).

(16.17)

(16.18)

16 The Distributed Command Governor Approach in a Nutshell Fig. 16.3 Cartesian decomposition of the set V (Gˆ , Xˆ ) in the case where two agents are operating in a bi-dimensional decision space

Δg2

267 ΔV xΔV

ΔV ΔV( , ) ^ ^

Δg1 ΔV

16.3.4 Computation of {V 1 (k), V2 (k), . . . , V|N | (k)} The core of the distributed CG approach is the computation of a set of orthogonal artificial constraints {V1 (k), V2 (k), . . . , V|N | (k)} such that for any choice of the local reference variation complying with them, global constraints (16.9) are not violated. In principle, there are several ways to build such kind of sets. The two main approaches are • Maximal Volume Set Cartesian Decomposition (see Fig. 16.3); • Decomposition along the ith direction; which are detailed hereafter.

16.3.4.1 Maximal Volume Set Cartesian Decomposition Based on the sets introduced in Sect. 16.3.3 we may compute the set of admissible aggregate command variations computed on the basis of the common information as follows:   ˆ Xˆ ) := w : (w + w) ∈ V(x), ∀w ∈ G, ˆ ∀x ∈ Xˆ V(G, (16.19) The Maximal Volume Set Cartesian Decomposition determines the maximum volume inner box approximation of (16.19). It can be computed independently and locally by each agent by solving the following optimization problem: max

V olume(V1 (k) × . . . × V|N | (k))

Vi (k),i=1,...,|N |

subject to ˆ − 1|k), Xˆ (k)), V1 (k) × . . . × V|N | (k) ⊆ V(G(k 01 ∈ I n(V1 (k)), . . . , 0|N | ∈ I n(V|N | (k))

(16.20)

Efficient exact solutions for the case m i = 1, i = 1, . . . , |N | and approximated solutions for the other cases can be found in [2]. For notational com-

268

A. Casavola et al.

Algorithm 16.1 Distributed-CG Algorithm (D-CG), for Time k, Agent ith 1: 2: 3: 4: 5:

Receive p j (k − 1), s j (k − 1) from the neighbors Compute {V1 (k), V2 (k), . . . , V|N | (k)} using a predefined policy Solve gi (k) = arg minwi ∈Vi ||wi − ri ||2Ri Apply gi (k) Send pi (k), si (k), gi (k) to the neighbors

pactness we will denote this decomposition as : {V1 (k) × . . . × V|N | (k)} = ˆ − 1|k), Xˆ (k))). maxVol(V(G(k

16.3.4.2 Decomposition Along the ith Direction The idea is to compute a decomposition where all agents but the ith one are forced to hold their previously applied references. The latter corresponds to considering the following local artificial constraints:   Vi (k) = wi |[01T , . . . , wiT , . . . , 0|TN | ]T ∈ V(Gˆi (k − 1|k), Xˆi (k)) , V j (k) = {0 j }, ∀ j = i. (16.21) For notational compactness we will denote this decomposition as : {V1 (k) × . . . × ˆ − 1|k), Xˆ (k))). V|N | (k)} = maxDir(i, V(G(k In practical uses, the direction of the decomposition is a time-varying function of the time chosen so as to ensure that in a certain period all the directions have been chosen. Hereafter, we will always make use of i = k mod |N | where mod is the remainder of the integer division of k by |N |.

16.3.5 Distributed Command Governor: The Algorithm Once that a policy to determine the sets {V1 (k), V2 (k), . . . , V|N | (k)} is selected, the distributed CG algorithm can be defined as in Algorithm 16.1. In the previous Section, two decomposition policies have been defined. Preliminary works [8, 9] have shown that each one of them has pros and cons and in particular: • Maximal Volume Set Cartesian Decomposition works well when the possible ˆ − 1|k) are far from the borders of W δ while it becomes applied commands G(k very slow close to them. ˆ − 1|k) • Decomposition along the i = k mod |N |-th direction is slow when G(k is far from the borders of W δ while works well close to them. In order to overcome the above limitations, it is convenient to use the Maximal Volume Set Cartesian Decomposition when the last command is far from the borders

16 The Distributed Command Governor Approach in a Nutshell

269

Algorithm 16.2 Improved Distributed-CG Algorithm (D-CG), for Agent ith 1: Initialization 1.1 compute W δ after choosing δ 1.2 compute l0 for set V (x) (see [10]) 1.3 provide each agent with x j (0) and g j (0),∀ j ∈ N \ {i} 2: On-line phase, repeated at each time k 2.1. receive p j (k − 1), s j (k − 1) from all neighbors j ∈ Ni 2.2. solve μ= min

w − w

w∈Gˆ (k−1|k),w ∈∂(W δ )

(16.22)

2.3. if (μ ≤  S ) O R (0 < counter ≤ |N | S ) 2.3.1. (V1 (k) × . . . × V|N | (k)) = maxDir(kmod|N |, V (Gˆi (k − 1|k), Xˆi (k))) 2.3.2. counter + +; 2.4. else 2.4.1. (V1 (k) × . . . × V|N | (k)) = maxVol(V (Gˆ (k − 1|k), Xˆ (k))) 2.4.2. counter = 0; 2.5. Solve gi (k) = arg minwi ∈Vi ||wi − ri ||2Ri 2.6. apply gi (k) 2.7. transmit pi (k), si (k), gi (k) to neighborhood Ni

of W δ and the Decomposition along the ith direction when, on the contrary, is near to them. This leads to the definition of the improved scheme Algorithm 16.2, presented for the first time in [8]. In Algorithm 16.2, μ computed in (16.22) represents the ˆ − 1|k) and the border of W δ . When μ is smaller than the distance between G(k threshold maxDir will be used instead of maxVol. Notice that counter is an integer initialized at zero and used to force the system to use the decomposition along the i = k mod |N |-th direction for at least |N | S ≥ |N | consecutive steps before switching back to maxVol. The threshold  S > 0 and the minimum number of sequential actions |N | S ≥ |N | are design parameters that can be tuned accordingly to the specific plant.

16.4 Theoretical Results Availability The described distributed CG scheme has been analyzed in several works. In [5] and [4] a complete liveliness analysis was presented. There it has been shown that, unlike the centralized case, Algorithm 16.2 could remain stuck in certain pathological configurations. To avoid that, a geometrical Constraints Qualification (CQ) condition on the prescribed constrained set is proposed whose fulfillment avoids the occurrence of deadlock situations and always ensures viable solutions. Such a condition can be easily checked from the outset via a numerical procedure provided in [4] where an

270

A. Casavola et al.

algorithm to compute Constrained Qualified (CD) arbitrarily accurate inner approximations of the original constraint set is also presented for systems where each local reference is scalar, i.e., gi ∈ R, i = 1, . . . , |N |. Under CQ, the properties of the D-CG scheme can be summarized in the following Theorem whose proof is detailed in [13], Theorem 16.2 Let assumptions A1-A2 be fulfilled for the system arising from the composition of |N | subsystems (16.1) and let CQ condition hold true. Consider the distributed D-CG Algorithm 16.1 and let V(x(k)) be non empty at time k = 0. Then 1. for each agent i ∈ |N |, at each time k, the minimizer related the optimization problem in Algorithms 16.1-16.2, to be solved ∀i ∈ N , uniquely exists and can be obtained by solving a convex constrained optimization problem; 2. The overall system acted by agents implementing the D-CG supervisory policy never violates the constraints, i.e., c(k) ∈ C for all k ∈ Z+ . 3. Whenever ri (k) ≡ ri , ∀i ∈ N , with ri a constant set-point the sequence of g(k) = [g1T (k), . . . , g|TN | (k)]T asymptotically converges either to r = [r1T (k), . . . , r|TN | (k)]T if r ∈ W δ or to a point rˆ that is Pareto-Optimal. For the details concerning the above stated properties and Constraints Qualification algorithms, please refer to [12].

16.5 Application Results Availability In recent years, a few interesting application examples making use of the distributed CG scheme here presented have been published. Amongst them it is worth mentioning that: • Sequential and parallel non-iterative FF-CG schemes with application to networks of autonomous vehicles have been presented in [8, 9]. • Non-iterative CG schemes with application to networks of pumps and water tanks appeared in [6, 14, 13]. • A sequential non-iterative CG scheme applied to Load/Frequency control problems in multi-area power systems appeared in [3]. • A mixed-integer distributed CG formulation for collision avoidance in autonomous vehicle supervision problems appeared in [15].

16.6 Some Hints for the Implementation In what follows we present the computational details related to the implementation of the strategy presented in this chapter. The main difficulty in implementing Algorithms ˆ Xˆ ) in (16.19) that has to be 16.1-16.2 relies in the computation of the set V(G,

16 The Distributed Command Governor Approach in a Nutshell

271

Fig. 16.4 Some points (w(∗j) , x(∗j) ) computed by means of (16.25) Kw+Hx