AWS Community Day CPH - Three problems of Terraform
Packetized Predictive Control for Rate-Limited Networks via Sparse Representation
1. Packetized Predictive Control for Rate-Limited Networks
via Sparse Representation
Masaaki Nagahara1 Daniel E. Quevedo2 Jan Østergaard3
1 Kyoto University
2 The University of Newcastle
3 Aalborg University
2012 Dec. 10
IEEE CDC 2012
1 / 33
2. Motivation
Networked Control
Packet dropouts
Bit-rate limitation
Plant
unreliable and
rate-limited network
Controller
2 / 33
3. Motivation
Networked Control
Packet dropouts → Packetized Predictive Control
Bit-rate limitation
Plant
unreliable and
rate-limited network
Controller
3 / 33
4. Motivation
Networked Control
Packet dropouts → Packetized Predictive Control
Bit-rate limitation → Sparse Representation
Plant
unreliable and
rate-limited network
Controller
4 / 33
5. Table of Contents
1 Packetized predictive control (PPC)
2 Sparsity optimization in PPC
3 Stability theorem
4 Optimization via Orthogonal Matching Pursuit (OMP)
5 Simulation results
6 Conclusion
5 / 33
6. Table of Contents
1 Packetized predictive control (PPC)
2 Sparsity optimization in PPC
3 Stability theorem
4 Optimization via Orthogonal Matching Pursuit (OMP)
5 Simulation results
6 Conclusion
6 / 33
7. Packetized Predictive Control
Suppose the plant is modeled by
x(k + 1) = Ax(k) + Bu(k), k = 0, 1, . . . , x(0) = x0 ∈ Rn .
Compute a tentative control sequence u0 , u1 , . . . , uN −1 for a finite
horizon (length N ) of future time instants based on state observation
x(k) and state prediction x0|k := x(k), x1|k , . . . , xN −1|k .
Transmit the control sequence as a packet u = [u0 , u1 , . . . , uN −1 ]
to a buffer.
If a packet is dropped out, use a ”future” control ui (i ≥ 2)
stemming from a previously received packet stored in the buffer.
x(k) u(x(k)) u(k) x(k)
Controller Buffer Plant
7 / 33
8. Packetized Predictive Control
At time k=0, compute the control packet u(x(0))
using the observation x(0).
u(x(0))
u0 u2
u1 u3
x(0) u(x(0)) u(0) x(0)
Controller Buffer Plant
8 / 33
9. Packetized Predictive Control
The control packet u(x(0)) is successfully transmitted,
and then the packet is stored in the buffer.
u(x(0))
u0 u2
u1 u3
x(0) u(x(0)) u(0) x(0)
Controller Buffer Plant
9 / 33
10. Packetized Predictive Control
Use the first element u0 in the buffer as the control input u(0).
u(x(0))
u0 u2
u1 u3
x(0) u(x(0)) u(0) x(0)
Controller Buffer Plant
10 / 33
11. Packetized Predictive Control
At time k=1, compute the control packet u(x(1))
using the observation x(1).
u(x(1))
u0 u2
u1 u3
x(1) u(x(1)) x(1)
Controller Buffer Plant
11 / 33
12. Packetized Predictive Control
The control packet u(x(1)) is transmitted to the buffer.
u(x(1))
u0 u2
u1 u3
x(1) u(x(1)) x(1)
Controller Buffer Plant
12 / 33
13. Packetized Predictive Control
The control packet u(x(1)) is transmitted to the buffer.
u(x(1))
u0 u2 Packet dropout occurs!
u1 u3
x(1) u(x(1)) x(1)
Controller Buffer Plant
13 / 33
14. Packetized Predictive Control
Use the second element of u(x(0)) stored in the buffer
as the control u(1) at k=1.
u(x(1)) u(x(0))
u0 u2 u0 u2
u1 u3 u1 u3
x(1) u(x(1)) u(1) x(1)
Controller Buffer Plant
14 / 33
15. Quadratic Packetized Predictive Control
In a standard PPC, we minimize the following quadratic (or 2) cost
function for the control packet u(x(k)), k = 0, 1, 2, . . . :
N
2 2
J(u) = xN |k P + xi|k Q
+ λ u 2,
2
i=0
where u = [u0 , . . . , uN −1 ] ∈ RN and
x0|k = x(k), xi+1|k = Axi|k + Bui , i = 0, 1, . . . , N − 1.
15 / 33
16. Quadratic Packetized Predictive Control
In a standard PPC, we minimize the following quadratic (or 2) cost
function for the control packet u(x(k)), k = 0, 1, 2, . . . :
N
2 2
J(u) = xN |k P + xi|k Q
+ λ u 2,
2
i=0
where u = [u0 , . . . , uN −1 ] ∈ RN and
x0|k = x(k), xi+1|k = Axi|k + Bui , i = 0, 1, . . . , N − 1.
A large horizon length N leads to robustness against packet dropouts,
but it increases the size of the packet, which should be avoided for
rate-limited networks.
16 / 33
17. Quadratic Packetized Predictive Control
In a standard PPC, we minimize the following quadratic (or 2) cost
function for the control packet u(x(k)), k = 0, 1, 2, . . . :
N
2 2
J(u) = xN |k P + xi|k Q
+ λ u 2,
2
i=0
where u = [u0 , . . . , uN −1 ] ∈ RN and
x0|k = x(k), xi+1|k = Axi|k + Bui , i = 0, 1, . . . , N − 1.
A large horizon length N leads to robustness against packet dropouts,
but it increases the size of the packet, which should be avoided for
rate-limited networks.
Can we reduce the data size of the packet without reducing the
horizon length N ?
17 / 33
18. Quadratic Packetized Predictive Control
In a standard PPC, we minimize the following quadratic (or 2) cost
function for the control packet u(x(k)), k = 0, 1, 2, . . . :
N
2 2
J(u) = xN |k P + xi|k Q
+ λ u 2,
2
i=0
where u = [u0 , . . . , uN −1 ] ∈ RN and
x0|k = x(k), xi+1|k = Axi|k + Bui , i = 0, 1, . . . , N − 1.
A large horizon length N leads to robustness against packet dropouts,
but it increases the size of the packet, which should be avoided for
rate-limited networks.
Can we reduce the data size of the packet without reducing the
horizon length N ?
Use sparse representation of the packet.
18 / 33
19. Sparse Control Packet Design
Idea
Sparsify the control packet (vector) with the sparsity-promoting
optimization:
u(x(k)) arg min u 0
u∈RN
subject to
N −1
xN |k 2
P + xi|k 2
Q ≤ x(k) W x(k).
i=0
Sparsity index u 0
u 0 is the number of nonzero elements in u = [u0 , u1 , . . . , uN −1 ] .
Trade-off parameter W
W is a positive semi-definite matrix specifying the trade-off between the
sparsity and control performance.
19 / 33
20. Sparse Control Packet Design
Sparse vectors can be effectively encoded by simple means.
Assume memoryless uniform scalar quantizer for encoding u.
For dense vector
u0 u1 u2 u3 u4 u5 u6 u7
Q
û0 û1 û2 û3 û4 û5 û6 û7 8 ⇥ 8 = 64 bit
8bit 8bit 8bit 8bit 8bit 8bit 8bit 8bit
For sparse vector
u0 0 0 u3 0 u5 u6 0
Q
û0 û3 û5 û6 8 ⇥ 4 = 32 bit
8bit 8bit 8bit 8bit
40 bit
+ location data
1 0 0 1 0 1 1 0 8 bit
20 / 33
21. Sparse Control Packet Design
In general, assume
Sampling frequency : fs > 0 [Hz]
Horizon length: N ≥ 1
Packet sparsity: S = u 0 < N
Quantizer precision: b ≥ 1 [bit]
For dense vectors (obtained by e.g., 2 optimization), one needs
N · b · fs [bit/sec]
For sparse vectors, quantizing the values and the location of the
nonzero elements requires
S · b · fs + N · fs = (Sb + N )fs [bit/sec]
for values for location
If N b > Sb + N , or
S < 1 − b−1 N
then sparse vectors can reduce the bit rate for transmission by
(1 − b−1 )N − S bfs [bit/sec]. 21 / 33
22. Stability result
Assumption
The number of consecutive packet-dropouts is uniformly bounded by the
horizon length N . In other words, a packet will never be dropped out
when the buffer is empty.
x(k) u(x(k)) u(k) x(k)
Controller Buffer Plant
22 / 33
23. Stability result
Theorem
For every Q > 0, there exist matrices P > 0 and W > 0 in the
optimization
N −1
2 2
u(x(k)) = arg min u 0 , s.t. xN |k P + xi|k Q ≤ x(k) W x(k)
u∈RN i=0
such that the networked control system is asymptotically stable, i.e.,
limk→∞ x(k) = 0. The procedure to obtain such P and W is shown in
the article.
x(k) u(x(k)) u(k) x(k)
Controller Buffer Plant
23 / 33
24. How to solve it?
The optimization
N −1
u(x(k)) arg min u 0 , s.t. xN |k 2 +
P xi|k 2
Q ≤ x(k) W x(k)
u∈RN i=0
can be rewritten as
2
u(x(k)) = arg min u 0 , s.t. Gu − Hx(k) 2 ≤ x(k) W x(k)
u∈RN
for some matrices G and H.
The optimization is combinatorial, and hence hard to solve.
24 / 33
25. How to solve it?
The optimization
N −1
u(x(k)) arg min u 0 , s.t. xN |k 2 +
P xi|k 2
Q ≤ x(k) W x(k)
u∈RN i=0
can be rewritten as
2
u(x(k)) = arg min u 0 , s.t. Gu − Hx(k) 2 ≤ x(k) W x(k)
u∈RN
for some matrices G and H.
The optimization is combinatorial, and hence hard to solve.
A greedy algorithm called Orthogonal Matching Pursuit (OMP) can
be used.
25 / 33
26. How to solve it?
The optimization
N −1
u(x(k)) arg min u 0 , s.t. xN |k 2 +
P xi|k 2
Q ≤ x(k) W x(k)
u∈RN i=0
can be rewritten as
2
u(x(k)) = arg min u 0 , s.t. Gu − Hx(k) 2 ≤ x(k) W x(k)
u∈RN
for some matrices G and H.
The optimization is combinatorial, and hence hard to solve.
A greedy algorithm called Orthogonal Matching Pursuit (OMP) can
be used.
OMP may give a local minimum, but it always gives a feasible
solution, and hence leads to asymptotic stability.
26 / 33
27. Simulation Results
Controlled plant (unstable): a linearized model of an aircraft
[Maciejowski, Predictive Control with Constraints]
˙
xc = Ac xc + Bc u,
−1.2822 0 0.98 0 −0.3
0 0 1 0 0
Ac =
−5.4293
, Bc =
−17 .
0 −1.8366 0
−128.2 128.2 0 0 0
poles: 0, 0, −1.5594 ± j2.2900
Discrete-time model is obtained via zero-order-hold discretization with
sampling time 0.5 (sec).
Horizon length (= packet size): N = 10
Packet-dropout probability: 50%
if there have been N − 1 = 9 consecutive dropouts, we set the next
dropout probability to be 0.
27 / 33
28. Simulation Results
Comparison:
1 OMP for the optimization (proposed)
2
u(x(k)) = arg min u 0 s.t. Gu − Hx(k) 2 ≤ x(k) W x(k)
u∈RN
1 2
2 - optimization [Nagahara & Quevedo, IFAC, 2011], [Gallieri & Maciejovski, ACC, 2012]
1 2
u(x(k)) = arg min µ u 1 + Gu − Hx(k) 2
u∈RN 2
2
3 optimization (conventional)
2 1 2
u(x(k)) = arg min µ u 2 + Gu − Hx(k) 2
u∈RN 2
28 / 33
29. Simulation Results
Sparsity ||u||0
14
OMP
Ideal
L2
12 L1/L2 (i)
L1/L2 (ii)
10
8
||u||0 6
4
2
0
0 10 20 30 40 50 60 70 80 90 100
k
(OMP): arg minu u 0 s.t. Gu − Hx(k) 2 ≤ x(k) W x(k).
2
(L1/L2): arg minu µ u 1 + (1/2) Gu − Hx(k) 2
2
with (i) µ = 5.3 × 103 and (ii) µ = 5.3
(L2): arg minu µ u 2 + (1/2) Gu − Hx(k) 2
2 2
with µ = 3.1 × 102 (reg) and µ = 0 (ideal).
29 / 33
30. Simulation Results
[log plot] 2−norm of the state x(k)
0
10
log10 ||x(k)||2
−20 OMP
10
Ideal
L2
L1/L2 (i)
L1/L2 (ii)
−40
10
0 10 20 30 40 50 60 70 80 90 100
k
[linear plot] 2−norm of the state x(k)
5
OMP
4 Ideal
L2
3 L1/L2 (i)
||x(k)||2
L1/L2 (ii)
2
1
0
0 10 20 30 40 50 60 70 80 90 100
k
(OMP): arg minu u 0 s.t. Gu − Hx(k) 2 ≤ x(k) W x(k).
2
(L1/L2): arg minu µ u 1 + (1/2) Gu − Hx(k) 2
2
with (i) µ = 5.3 × 103 and (ii) µ = 5.3
(L2): arg minu µ u 2 + (1/2) Gu − Hx(k) 2
2 2
with µ = 3.1 × 102 (reg) and µ = 0 (ideal).
30 / 33
31. Simulation Results
Computational time
OMP
Ideal
L2
−2
10 L1/L2 (i)
L1/L2 (ii)
−3
10
Time (sec) −4
10
−5
10
−6
10
0 10 20 30 40 50 60 70 80 90 100
k
(OMP): arg minu u 0 s.t. Gu − Hx(k) 2 ≤ x(k) W x(k).
2
(L1/L2): arg minu µ u 1 + (1/2) Gu − Hx(k) 2
2
with (i) µ = 5.3 × 103 and (ii) µ = 5.3
(L2): arg minu µ u 2 + (1/2) Gu − Hx(k) 2
2 2
with µ = 3.1 × 102 (reg) and µ = 0 (ideal).
31 / 33
32. Conclusion
We have proposed Packetized predictive control for packet dropouts
with sparse representation for rate-limited networks
The control system is asymptotically stable.
The optimization can be effectively solved via Orthogonal Matching
Pursuit (OMP).
Simulation results show effectiveness of the proposed method.
32 / 33
33. Conclusion
We have proposed Packetized predictive control for packet dropouts
with sparse representation for rate-limited networks
The control system is asymptotically stable.
The optimization can be effectively solved via Orthogonal Matching
Pursuit (OMP).
Simulation results show effectiveness of the proposed method.
Mahalo!
33 / 33