Control Hierarchies and Tropical Algebras Jörg Raisch 1,2, Xavier David-Henriet 1,2,3, Tom Brunsch 1,3, Laurent Hardouin 3 1 Fachgebiet Regelungssysteme Fakultät Elektrotechnik und Informatik, TU Berlin 2 Fachgruppe System- und Regelungstheorie Max-Planck-Institut für Dynamik komplexer technischer Systeme 3 Laboratoire d Ingénierie des Systèmes Automatisés Université d Angers
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Motivation and Aims Motivation Want to address large-scale/complex control problems Too many degrees of freedom for monolithic controller design Need to impose structure to reduce degrees of freedom Hierarchical control architecture particularly intuitive Heuristically designed hierarchical control ubiquituos in industry Aims Want a formal framework that guarantees proper interaction of control layers to minimize trial and error during design Hierarchical structures need not be rigid ; may be embedded into consensus-type distributed systems, with top-level functionality temporarily assigned to a node
Motivation and Aims Motivation Want to address large-scale/complex control problems Too many degrees of freedom for monolithic controller design Need to impose structure to reduce degrees of freedom Hierarchical control architecture particularly intuitive Heuristically designed hierarchical control ubiquituos in industry Aims Want a formal framework that guarantees proper interaction of control layers to minimize trial and error during design Hierarchical structures need not be rigid ; may be embedded into consensus-type distributed systems, with top-level functionality temporarily assigned to a node
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Abstraction and Refinement Have been investigated in different scenarios Behavioural point of view allows conceptionally (and notationally) simple explanation of main ingredients Dynamical system with input/output structure: Σ = (T ), U Y, B (U Y ) T Abstractions and refinements: Σ a = (T, U Y, B a ) is an abstraction of Σ if B B a Σ r = (T, U Y, B r ) is a refinement of Σ if B r B Interpretation: abstraction (refinement) corresponds to adding (removing) uncertainty
Abstraction and Refinement Have been investigated in different scenarios Behavioural point of view allows conceptionally (and notationally) simple explanation of main ingredients Dynamical system with input/output structure: u(t) U t T y(t) Y Σ = (T ), U Y, B (U Y ) T Abstractions and refinements: Σ a = (T, U Y, B a ) is an abstraction of Σ if B B a Σ r = (T, U Y, B r ) is a refinement of Σ if B r B Interpretation: abstraction (refinement) corresponds to adding (removing) uncertainty
Abstraction and Refinement Have been investigated in different scenarios Behavioural point of view allows conceptionally (and notationally) simple explanation of main ingredients Dynamical system with input/output structure: u(t) U t T y(t) Y Σ = (T ), U Y, B (U Y ) T Abstractions and refinements: Σ a = (T, U Y, B a ) is an abstraction of Σ if B B a Σ r = (T, U Y, B r ) is a refinement of Σ if B r B Interpretation: abstraction (refinement) corresponds to adding (removing) uncertainty
Abstraction and Refinement Have been investigated in different scenarios Behavioural point of view allows conceptionally (and notationally) simple explanation of main ingredients Dynamical system with input/output structure: u(t) U t T y(t) Y Σ = (T ), U Y, B (U Y ) T Abstractions and refinements: Σ a = (T, U Y, B a ) is an abstraction of Σ if B B a Σ r = (T, U Y, B r ) is a refinement of Σ if B r B Interpretation: abstraction (refinement) corresponds to adding (removing) uncertainty
Generic Two-Level Control Structure B L sup B H sup: high-level supervisor u H y H u L B ım: aggregation & low-level control B L p: low-level plant model y L B H p... can be extended to arbitrary number of control layers... Low-level signal space: W L = U L Y L. Low-level process model: B L p... behaviour on W L. Inclusion-type specification: B L spec... defined on W L. High-level signal space: W H = U H Y H. High-level supervisor: B H sup... behaviour on W H. Low-level control: B ım... behaviour on W H W L.
Generic Two-Level Control Structure B L sup B H sup: high-level supervisor u H y H u L B ım: aggregation & low-level control B L p: low-level plant model y L B H p... can be extended to arbitrary number of control layers... Low-level signal space: W L = U L Y L. Low-level process model: B L p... behaviour on W L. Inclusion-type specification: B L spec... defined on W L. High-level signal space: W H = U H Y H. High-level supervisor: B H sup... behaviour on W H. Low-level control: B ım... behaviour on W H W L.
Design Procedure Define high-level signal space (assumed given in this talk). Low-level control: Define (inclusion-type) specs B HL spec for lower control layer intended relation between high-level and low-level signals. Design low-level control B ım enforcing specs B HL spec. High-level control: Synthesise B H sup for B H p = B H ım[b L p]. Can be done abstraction-based! Use high-level proj. P H (B HL spec) of B HL spec as abstraction of B H p. Define high-level spec. B H spec such that B HL spec[b H spec] B L spec. Find high-level control B H sup such that P H (B HL spec) B H sup B H spec. = B L p B L ım[b H sup] B L spec }{{} B L sup
Design Procedure Define high-level signal space (assumed given in this talk). Low-level control: Define (inclusion-type) specs B HL spec for lower control layer intended relation between high-level and low-level signals. Design low-level control B ım enforcing specs B HL spec. High-level control: Synthesise B H sup for B H p = B H ım[b L p]. Can be done abstraction-based! Use high-level proj. P H (B HL spec) of B HL spec as abstraction of B H p. Define high-level spec. B H spec such that B HL spec[b H spec] B L spec. Find high-level control B H sup such that P H (B HL spec) B H sup B H spec. = B L p B L ım[b H sup] B L spec }{{} B L sup
Design Procedure Define high-level signal space (assumed given in this talk). Low-level control: Define (inclusion-type) specs B HL spec for lower control layer intended relation between high-level and low-level signals. Design low-level control B ım enforcing specs B HL spec. High-level control: Synthesise B H sup for B H p = B H ım[b L p]. Can be done abstraction-based! Use high-level proj. P H (B HL spec) of B HL spec as abstraction of B H p. Define high-level spec. B H spec such that B HL spec[b H spec] B L spec. Find high-level control B H sup such that P H (B HL spec) B H sup B H spec. = B L p B L ım[b H sup] B L spec }{{} B L sup
Where Can Things Go Wrong? Low-level specification B HL spec too demanding: I.e., we cannot find appropriate low-level control. Need to relax low-level specifications and replace B HL spec by an abstraction B HL spec,a such that B HL spec B HL spec,a. Illustration: robot moving in a restricted area: ẋ 1 (t) = v(t) cos θ(t) ẋ 2 (t) = v(t) sin θ(t) θ(t) = u 1 (t) v(t) = u 2 (t) u L = (u 1, u 2 ) low-level inputs y L = (x 1, x 2 ) low-level outputs u H {go up,...} high-level input y H = quant(x 1, x 2 ) high-lev. outp.
Where Can Things Go Wrong? Low-level specification B HL spec too demanding: I.e., we cannot find appropriate low-level control. Need to relax low-level specifications and replace B HL spec by an abstraction B HL spec,a such that B HL spec B HL spec,a. Illustration: robot moving in a restricted area: ẋ 1 (t) = v(t) cos θ(t) ẋ 2 (t) = v(t) sin θ(t) θ(t) = u 1 (t) v(t) = u 2 (t) u L = (u 1, u 2 ) low-level inputs y L = (x 1, x 2 ) low-level outputs u H {go up,...} high-level input y H = quant(x 1, x 2 ) high-lev. outp. x 2 v θ x 1
Where Can Things Go Wrong? Low-level specification B HL spec too demanding: I.e., we cannot find appropriate low-level control. Need to relax low-level specifications and replace B HL spec by an abstraction B HL spec,a such that B HL spec B HL spec,a. Illustration: robot moving in a restricted area: ẋ 1 (t) = v(t) cos θ(t) ẋ 2 (t) = v(t) sin θ(t) θ(t) = u 1 (t) v(t) = u 2 (t) u L = (u 1, u 2 ) low-level inputs y L = (x 1, x 2 ) low-level outputs u H {go up,...} high-level input y H = quant(x 1, x 2 ) high-lev. outp. x 2 v θ x 1 Ex.: go right is too demanding.
What Else Can Go Wrong? Low-level specification B HL spec too coarse: P H (B HL spec) serves as abstraction of plant under low-level control. We cannot find appropriate high-level control. Need to refine low-level specifications by B HL spec,r B HL spec. Example: Recap: choice of low-level specs B HL spec depends on engineering intuition often involves trade-off between control layers key advantage: solution of low- & high-level control problems will provide a solution for the overall problem (guaranteed!)
What Else Can Go Wrong? Low-level specification B HL spec too coarse: P H (B HL spec) serves as abstraction of plant under low-level control. We cannot find appropriate high-level control. Need to refine low-level specifications by B HL spec,r B HL spec. Example: go right Recap: choice of low-level specs B HL spec depends on engineering intuition often involves trade-off between control layers key advantage: solution of low- & high-level control problems will provide a solution for the overall problem (guaranteed!)
What Else Can Go Wrong? Low-level specification B HL spec too coarse: P H (B HL spec) serves as abstraction of plant under low-level control. We cannot find appropriate high-level control. Need to refine low-level specifications by B HL spec,r B HL spec. Example: go right Recap: choice of low-level specs B HL spec depends on engineering intuition often involves trade-off between control layers key advantage: solution of low- & high-level control problems will provide a solution for the overall problem (guaranteed!)
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Specific Scenario top layer decides on timing (not ordering!) of discrete events synthesis based on TEG abstraction of plant + low-level control TEG (Timed Event Graph)... specific timed Petri net Example: want to compute earliest times of k-th occurrences of events doable, but time relations (non-benevolently) non-linear x 7 (k) = max{x 4 (k) + 1, x 2 (k) + 6, x 2 (k + 1), x 8 (k 1)} time relations become linear in certain dioid (tropical) algebras...
Specific Scenario top layer decides on timing (not ordering!) of discrete events synthesis based on TEG abstraction of plant + low-level control TEG (Timed Event Graph)... specific timed Petri net Example: x3 x1 3 x2 1 x4 1 6 x7 x5 4 1 x6 x8 want to compute earliest times of k-th occurrences of events doable, but time relations (non-benevolently) non-linear x 7 (k) = max{x 4 (k) + 1, x 2 (k) + 6, x 2 (k + 1), x 8 (k 1)} time relations become linear in certain dioid (tropical) algebras...
Specific Scenario top layer decides on timing (not ordering!) of discrete events synthesis based on TEG abstraction of plant + low-level control TEG (Timed Event Graph)... specific timed Petri net Example: x3 x1 3 x2 1 x4 1 6 x7 x5 4 1 x6 x8 want to compute earliest times of k-th occurrences of events doable, but time relations (non-benevolently) non-linear x 7 (k) = max{x 4 (k) + 1, x 2 (k) + 6, x 2 (k + 1), x 8 (k 1)} time relations become linear in certain dioid (tropical) algebras...
Specific Scenario top layer decides on timing (not ordering!) of discrete events synthesis based on TEG abstraction of plant + low-level control TEG (Timed Event Graph)... specific timed Petri net Example: x3 x1 3 x2 1 x4 1 6 x7 x5 4 1 x6 x8 want to compute earliest times of k-th occurrences of events doable, but time relations (non-benevolently) non-linear x 7 (k) = max{x 4 (k) + 1, x 2 (k) + 6, x 2 (k + 1), x 8 (k 1)} time relations become linear in certain dioid (tropical) algebras...
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Dioid Algebras A dioid is an algebraic structure with two binary operations ( addition ) and ( multiplication ) defined on a set D, such that is associative, commutative & idempotent (a a = a a D) is associative and is distributive w.r.t. zero element ε, unit element e ε is absorbing for, i.e., ε a = a ε = ε a D Remarks a dioid is complete if it is closed for infinite sums and distributes over infinite sums dioids are equipped with a natural order: a b = a a b addition and multiplication can be easiliy extended to matrices
Dioid Algebras A dioid is an algebraic structure with two binary operations ( addition ) and ( multiplication ) defined on a set D, such that is associative, commutative & idempotent (a a = a a D) is associative and is distributive w.r.t. zero element ε, unit element e ε is absorbing for, i.e., ε a = a ε = ε a D Remarks a dioid is complete if it is closed for infinite sums and distributes over infinite sums dioids are equipped with a natural order: a b = a a b addition and multiplication can be easiliy extended to matrices
Example: The Max-Plus Algebra Defined on Z = Z { } {+ } resp. R = R { } {+ }: addition: a b := max(a, b), zero element: ε := multiplication: a b := a + b, unit element: e := Time relations for TEGs described by linear implicit difference eqns. For our example x 7 (k) = 1 x 4 (k) 6 x 2 (k) x 2 (k + 1) x 8 (k 1)
Example: The Max-Plus Algebra Defined on Z = Z { } {+ } resp. R = R { } {+ }: addition: a b := max(a, b), zero element: ε := multiplication: a b := a + b, unit element: e := Time relations for TEGs described by linear implicit difference eqns. For our example x 7 (k) = 1 x 4 (k) 6 x 2 (k) x 2 (k + 1) x 8 (k 1)
Example: The Max-Plus Algebra Defined on Z = Z { } {+ } resp. R = R { } {+ }: addition: a b := max(a, b), zero element: ε := multiplication: a b := a + b, unit element: e := Time relations for TEGs described by linear implicit difference eqns. For our example x 3 1 x 4 x 5 1 x 6 1 6 x 7 (k) = 1 x 4 (k) 6 x 2 (k) x 2 (k + 1) x 8 (k 1) x 1 3 x 2 x 7 4 x 8
The Dioid M ax in M ax in [[γ, δ]] [γ, δ ]... a quotient dioid in the set of 2-dim. formal power series (in γ, δ), with Boolean coefficients and integer exponents interpretation of monomial γ k δ t : - kth occurrence of event is at time t at the earliest - equivalently: at time t, event has occurred at most k times have to consider south-east cones (instead of points) in Z 2 Example: s = γ 1 δ 1 γ 3 δ 2 γ 4 δ 5 Properties: γ k δ t γ l δ t = γ min(k,l) δ t γ k δ t γ k δ τ = γ k δ max(t,τ) γ k δ t γ l δ τ = γ (k+l) δ (t+τ) Zero element: ε = γ + δ Unit element: e = γ δ interpretation of partial order: inclusion in Z 2
The Dioid M ax in M ax in [[γ, δ]] [γ, δ ]... a quotient dioid in the set of 2-dim. formal power series (in γ, δ), with Boolean coefficients and integer exponents interpretation of monomial γ k δ t : - kth occurrence of event is at time t at the earliest - equivalently: at time t, event has occurred at most k times have to consider south-east cones (instead of points) in Z 2 Example: s = γ 1 δ 1 γ 3 δ 2 γ 4 δ 5 Properties: γ k δ t γ l δ t = γ min(k,l) δ t γ k δ t γ k δ τ = γ k δ max(t,τ) γ k δ t γ l δ τ = γ (k+l) δ (t+τ) Zero element: ε = γ + δ Unit element: e = γ δ interpretation of partial order: inclusion in Z 2
The Dioid M ax in M ax in [[γ, δ]] [γ, δ ]... a quotient dioid in the set of 2-dim. formal power series (in γ, δ), with Boolean coefficients and integer exponents interpretation of monomial γ k δ t : - kth occurrence of event is at time t at the earliest - equivalently: at time t, event has occurred at most k times have to consider south-east cones (instead of points) in Z 2 Example: s = γ 1 δ 1 γ 3 δ 2 γ 4 δ 5 δ 6 5 4 3 2 1 111111 111111 11111111 11111111111 1 11111111111 11111111111 2 3 4 5 γ 11111111111 11111111111 Properties: γ k δ t γ l δ t = γ min(k,l) δ t γ k δ t γ k δ τ = γ k δ max(t,τ) γ k δ t γ l δ τ = γ (k+l) δ (t+τ) Zero element: ε = γ + δ Unit element: e = γ δ interpretation of partial order: inclusion in Z 2
The Dioid M ax in M ax in [[γ, δ]] [γ, δ ]... a quotient dioid in the set of 2-dim. formal power series (in γ, δ), with Boolean coefficients and integer exponents interpretation of monomial γ k δ t : - kth occurrence of event is at time t at the earliest - equivalently: at time t, event has occurred at most k times have to consider south-east cones (instead of points) in Z 2 Example: s = γ 1 δ 1 γ 3 δ 2 γ 4 δ 5 δ 6 5 4 3 2 1 111111 111111 11111111 11111111111 1 11111111111 11111111111 2 3 4 5 γ 11111111111 11111111111 Properties: γ k δ t γ l δ t = γ min(k,l) δ t γ k δ t γ k δ τ = γ k δ max(t,τ) γ k δ t γ l δ τ = γ (k+l) δ (t+τ) Zero element: ε = γ + δ Unit element: e = γ δ interpretation of partial order: inclusion in Z 2
The Dioid M ax in [[γ, δ]] ctd. Time relations for TEGs become linear algebraic eqns. in M ax in [γ, δ ] For our example x3 1 x4 x5 1 x6 x1 3 x2 6 1 x7 4 x8 x 7 = δ 1 γ x 4 (δ 6 γ δ γ 1 )x 2 δ γ 1 x 8 In general, with input & output trans. (triggered resp. seen externally): x = Ax Bu y = Cx
The Dioid M ax in [[γ, δ]] ctd. Time relations for TEGs become linear algebraic eqns. in M ax in [γ, δ ] For our example u2 2 x3 1 x4 x5 1 x6 1 6 u1 x1 3 x2 x7 4 x8 1 y x 7 = δ 1 γ x 4 (δ 6 γ δ γ 1 )x 2 δ γ 1 x 8 In general, with input & output trans. (triggered resp. seen externally): x = Ax Bu y = Cx
Control in the Dioid M ax in [[γ, δ]] Plant: state model x = Ax Bu, y = Cx i/o rel. y = CA Bu, with A := i N A i... Kleene star operator Output feedback: u = Ky v y = CA BKy CA Bv y = (CA BK ) CA B v }{{} H cl Aim: just-in-time policy find greatest K s.t. H ref H cl, with H ref a given reference model greatest and in the sense of natural order in M ax in [γ, δ ] Solution: desired feedback K can be obtained using residuation theory : K opt = (CA B) \H ref (CA B)
Control in the Dioid M ax in [[γ, δ]] Plant: state model x = Ax Bu, y = Cx i/o rel. y = CA Bu, with A := i N A i... Kleene star operator Output feedback: u = Ky v y = CA BKy CA Bv y = (CA BK ) CA B v }{{} H cl Aim: just-in-time policy find greatest K s.t. H ref H cl, with H ref a given reference model greatest and in the sense of natural order in M ax in [γ, δ ] Solution: desired feedback K can be obtained using residuation theory : K opt = (CA B) \H ref (CA B)
Control in the Dioid M ax in [[γ, δ]] Plant: state model x = Ax Bu, y = Cx i/o rel. y = CA Bu, with A := i N A i... Kleene star operator Output feedback: u = Ky v y = CA BKy CA Bv y = (CA BK ) CA B v }{{} H cl Aim: just-in-time policy find greatest K s.t. H ref H cl, with H ref a given reference model greatest and in the sense of natural order in M ax in [γ, δ ] Solution: desired feedback K can be obtained using residuation theory : K opt = (CA B) \H ref (CA B)
Control in the Dioid M ax in [[γ, δ]] Plant: state model x = Ax Bu, y = Cx i/o rel. y = CA Bu, with A := i N A i... Kleene star operator Output feedback: u = Ky v y = CA BKy CA Bv y = (CA BK ) CA B v }{{} H cl Aim: just-in-time policy find greatest K s.t. H ref H cl, with H ref a given reference model greatest and in the sense of natural order in M ax in [γ, δ ] Solution: desired feedback K can be obtained using residuation theory : K opt = (CA B) \H ref (CA B)
Outline 1 Motivation 2 A Behavioural View on Control Hierarchies 3 A Specific Scenario 4 A Few Essentials of Dioid (Tropical) Algebras 5 Specific Scenario Revisited
Tradeoff Between Control Layers K opt K opt... greatest feedback K s.t. (H spec K ) H spec G spec H spec for a given overall spec. G spec H spec... low-level spec., i.e., abstraction for plant under low-level control Result: Given overall specification G spec Given low-level specifications H spec1, H spec2, with H spec1 H spec2 (and some natural restrictions in place) Compute corresponding optimal feedback control K opt1, K opt2 Can show that K opt1 K opt2 ( stricter low-level specs allow for more relaxed high-level control )
Tradeoff Between Control Layers K opt K opt... greatest feedback K s.t. (H spec K ) H spec G spec H spec for a given overall spec. G spec H spec... low-level spec., i.e., abstraction for plant under low-level control Result: Given overall specification G spec Given low-level specifications H spec1, H spec2, with H spec1 H spec2 (and some natural restrictions in place) Compute corresponding optimal feedback control K opt1, K opt2 Can show that K opt1 K opt2 ( stricter low-level specs allow for more relaxed high-level control )
Tradeoff Between Control Layers K opt K opt... greatest feedback K s.t. (H spec K ) H spec G spec H spec for a given overall spec. G spec H spec... low-level spec., i.e., abstraction for plant under low-level control Result: Given overall specification G spec Given low-level specifications H spec1, H spec2, with H spec1 H spec2 (and some natural restrictions in place) Compute corresponding optimal feedback control K opt1, K opt2 Can show that K opt1 K opt2 ( stricter low-level specs allow for more relaxed high-level control )
Conclusions Interpreted trade-off between layers in a hierarchical control system from a behavioural point of view Formally investigated this trade-off for a specific scenario where top layer is responsible for timing of discrete events Resulting setup conveniently described in the dioid M ax in [γ, δ ] Verified that stricter low-level specs indeed allow for more relaxed high-level control
More Details [1] J. Willems: Models for dynamics, in Dynamics Reported, vol. 2, 1989, pp. 172 269. [2] J. Raisch and T. Moor: Hierarchical Hybrid Control of a Multiproduct Batch Plant, Lecture Notes in Control and Information Sciences. Springer-Verlag, 25, vol. 322, p. 199 216. [3] F. Baccelli, G. Cohen, G.J. Olsder, and J.-P. Quadrat: Synchronization and Linearity An Algebra for Discrete Event Systems. Wiley, 1992. [4] B. Cottenceau, L. Hardouin, J.-L. Boimond, and J.-L. Ferrier: Model reference control for timed event graphs in dioids, Automatica, vol. 37, no. 9, pp. 1451 1458, 21. [5] M. Lhommeau, L. Hardouin, R. Santos Mendes and B. Cottenceau: On the model reference control for max-plus linear systems. Proc. 44th IEEE CDC, pp. 7799 783, 25.
More Details (ctd.) [6] X. David-Henriet, J. Raisch, and L. Hardouin: Consistent control hierarchies with top layers represented by timed event graphs. Proc. MMAR 212 17th Int. Conf. on Methods and Models in Automation and Robotics, 212. [7] T. Brunsch, L. Hardouin, C. A. Maia and J. Raisch. Duality and interval analysis over idempotent semirings, Linear Algebra and its Applications, vol. 437, no. 1, pp. 2436 2454, 212. [8] T. Brunsch, J. Raisch, L. Hardouin and O. Boutin. Discrete-Event Systems in a Dioid Framework: Modeling and Analysis, Lecture Notes in Control and Information Sciences, vol. 433, pp. 431 45, Springer-Verlag, 212. [9] L. Hardouin, O. Boutin, B. Cottenceau, T. Brunsch, and J. Raisch. Discrete-Event Systems in a Dioid Framework: Control Theory, Lecture Notes in Control and Information Sciences, vol. 433, pp. 451 469, Springer-Verlag, 212.