# Robust Tube-Based MPC with Piecewise Affine Control Laws

Authors: Meng Zhao; Xiaoming Tang
Journal: Abstract and Applied Analysis
 (2014)

---

## Abstract

This paper presents a tube-based model predictive control (MPC) algorithm
with piecewise affine control laws for discrete-time linear systems in the presence of
bounded disturbances. By solving the standard multiparametric quadratic programming
(mp-QP), the explicit piecewise affine control laws for tube-based MPC are obtained.
Each control law is piecewise affine with respect to the corresponding region
(one of the partitions of the feasible set). Due to the fact that the above-mentioned procedures
are totally offline, the online computation time is short enough for stabilizing those
systems with fast dynamics. In this paper, all the involved constraint sets are assumed
to be polytopes. An illustrative example is utilized to verify the feasibility
and efficiency of the proposed algorithm.


---

## Body

## 1. Introduction

The concept of “tube” in model predictive control (MPC) is proposed by [1] for linear discrete-time systems with bounded additive disturbance. The core idea is to design a robust invariant set for the corresponding nominal system, and then the optimization problem with tightening constraints is solved to get the optimal control action [2]. Since all the predictions of state and control variables are confined to the tighten constraint set, the real dynamics of controlled systems will never deviate the constraints under the impaction of external disturbances. After the proposition of the algorithm, it has been greatly developed. In [3], the tube-based MPC algorithm is extended to the case of linear sampled-data systems, and in [4] the tracking problem is considered. In [5], the tuning parameter is incorporated into the basic MPC strategy which enables us to move smoothly from the existing controller to a better MPC strategy, and the methodology is applied to the tube-based output-feedback MPC case. A probabilistic tube for linear systems with probabilistic disturbances is designed in [6], which avoids the computation burden in traditional stochastic MPC. A homothetic tube MPC synthesis method is proposed by [7], which utilizes a more general parameterization of the state and control tubes based on homothety and invariance. The tube-based MPC algorithms for nonlinear systems are presented in [8–10]. In [8], a general nonlinear finite horizon optimization problem with terminal zero constraints is resolved offline once, and the optimal sequence of states and inputs are taken as the reference trajectories, then the on-line optimization problem is designed to tracking these trajectories with constraints satisfaction. In [9], the nonlinear models are locally linearized, and the errors between the linearized models and the true models are confined to lie in the predesigned robust tubes. In [10], a tube-based MPC algorithm for continuous-time nonlinear systems, which satisfies the Lipschitz condition, is proposed. Although the theory of robust tube-based MPC has been stimulated a lot, but far from perfect.The optimization problems in standard MPC algorithms are in general the linear programming (LP) or linear quadratic programming (QP), and the computation time for LP/QP can not be neglected when the controlled systems have fast dynamics. The explicit MPC takes the LP or QP in standard MPC as multiparametric linear programming (mp-LP) or multiparametric quadratic programming (mp-QP) and solves these optimization problems absolutely offline. The basic results and development on multiparametric programming can be found in [11–14] for mp-LP and [15–19] for mp-QP. In this paper, we mainly consider the mp-QP, which is the most general form of optimization we faced in the regular MPC. In [20], the theoretical perspectives of multiparametric programming and explicit MPC are introduced. In [21], the authors present a method to compute the explicit state-feedback control laws for both the MPC algorithm and the constrained linear quadratic regulation problem with guaranteed feasibility, stability, and optimality, in which the explicit feedback control laws are piecewise affine and continuous. In [22], the approximated explicit control laws for MPC are obtained, which utilizes the inner/outer polytopic approximation technique and the implicit double-description algorithm. In [23], the systematical procedures for the analytical expression of explicit control laws of linear MPC via piecewise affine function are given, which saves the online computation time and memory requirements. There are many works which have been published on finding ways to resolve the mp-QP. In [17], an efficient mp-QP solver which avoids unnecessary partitioning of the parameter space by directly exploring the neighborhood of initial partition is presented. In [18], an mp-QP solver with a new partitioning method of the parametric (state vector) space is proposed, which avoids the unnecessary partitioning and improves the efficiency. In [19], an algorithm is proposed to revise the existing algorithms in order to make them satisfy the facet-to-facet property in general and guarantee that the entire parameter space is explored. Because the partitions of feasible sets are increasing exponentially with respect to the prediction horizon, the complexity reduction methods are presented by [24–26] to remove the unnecessary partitions. The only online calculation for mp-QP in MPC is the point location problem (to confirm which region contains the current parameter). In [27–29], different efficient methodologies have been proposed to resolve this problem.This paper considers the constrained discrete-time linear systems with additive disturbances. The disturbances are assumed to be confined in a polytope. First, the standard tube-based MPC algorithm, which solves the quadratic programming (QP) online and takes initial state in the optimization as an optimized variable, is designed. Then, by transforming the optimization problem in standard tube-based MPC into the mp-QP form, the optimization can be solved through mp-QP solvers, which separate the parameter space into finite partitions and get a piecewise affine linear optimal solution for each partition. In this paper, the standard tube-based MPC algorithm is solved absolutely offline, and the only online calculations are to confirm which partition the current state lies in.The remainder of this paper is structured as follows. In Section2, the basic formulation of the controlled systems and basic definitions on polytope and polyhedron are introduced. The multiparametric programming is described in Section 3. In Section 4, the tube-based MPC algorithm with piecewise affine state feedback control laws is presented. In Section 5, the simulation results are provided to show the effectiveness of the proposed algorithm.


## 2. Problem Statement and Preliminaries

Consider the following discrete-time linear systems with additive disturbances:(1)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
+
w
(
k
)
,
k
≥
0
,
where x
(
k
)
∈
ℜ
n, u
(
k
)
∈
ℜ
m, and w
(
k
)
∈
ℜ
n are the state, input, and disturbance vector at sampling time k, respectively. The system states and inputs are constrained by
(2)
x
(
k
)
∈
𝕏
⊆
ℜ
n
,
u
(
k
)
∈
𝕌
⊆
ℜ
m
and the disturbance w
(
k
) is bounded by
(3)
w
(
k
)
∈
𝕎
⊆
ℜ
n
.
The corresponding nominal model of (1) is given as
(4)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
.
The system (1) is supposed to satisfy the following assumptions throughout the paper.Assumption 1.
The pair(
A
,
B
) of system (1) is stabilizable.Assumption 2.
The statesx
(
k
) of system (1) are measureable.Assumption 3.
𝕏
⊆
ℜ
n, 𝕌
⊆
ℜ
m, and 𝕎
⊆
ℜ
n are compact and convex and contain the origin as interior point, respectively.Since all the involved constraint sets in this note are confined as the convex and bounded region, that is, the polytope, the basic definitions related to polyhedron and polytope are shown to make the paper more complete and concise. For more knowledge about the polyhedron and polytope, readers can refer to [30–32].Definition 4.
A polyhedronℝ
⊆
ℜ
n is a convex set which originates from the intersection of a finite number of half-spaces
(5)
ℝ
≜
{
x
∈
ℜ
n
∣
H
x
≤
K
}
,
where H
∈
ℜ
r
×
n and K
∈
ℜ
r and r is a finite integer.Definition 5.
A polytopeℙ
⊆
ℜ
n is the bounded polyhedron
(6)
ℙ
≜
{
x
∈
ℜ
n
∣
H
x
≤
K
}
.Definition 6.
Theℋ-representation of a polytope ℙ, as in (6), is to depict the polytope ℙ as an intersection region of a finite number of half-spaces. The other way of statement is that the ℋ-representation of a polytope is the region described by a finite number of linear inequalities H
x
≤
K; that is, the dimensions of H and K are not infinite.Definition 7.
The𝒱-representation of a polytope ℙ is to describe the polytope as a convex hull of its vertices:
(7)
ℙ
≜
{
x
∈
ℜ
n
∣
x
=
∑
i
=
1
p
‍
λ
i
x
i
,
λ
i
∈
[
0,1
]
,
∑
i
=
1
p
‍
λ
i
=
1
}
,
where x
1
,
x
2
,
…
,
x
p are the vertices and p is the total number of vertices.After the basic definitions of polytope have been depicted, the related operations involved in the remaining part of the paper are listed below.Definition 8.
The Minkowski sum of two given sets𝔸 and 𝔹 is defined as 𝔸
⊕
𝔹
≜
{
a
+
b
∣
a
∈
𝔸
,
b
∈
𝔹
}, and the Minkowski difference is 𝔸
⊖
𝔹
≜
{
a
∣
a
⊕
𝔹
⊆
𝔸
}.Definition 9.
The set difference of two sets𝔸 and 𝔹 is defined as
(8)
𝔸
∖
𝔹
≜
{
a
∈
ℜ
n
∣
a
∈
𝔸
,
a
∉
𝔹
}
.Definition 10.
Given a set𝔸, the affine map of 𝔸 by the mapping Γ
:
a
↦
A
a
+
c, where Γ
:
ℜ
n
→
ℜ
m, to a set 𝔹, then 𝔹 is defined as
(9)
𝔹
≜
{
A
a
+
c
∈
ℜ
m
∣
a
∈
𝔸
}
,
where A
∈
ℜ
m
×
n and b
∈
ℜ
m are constant matrix and vector, respectively.Remark 11.
Another problem we often faced is to find a polytope𝔸 satisfying
(10)
𝔸
≜
{
a
∈
ℜ
n
∣
A
a
+
c
∈
𝔹
}
,
that is, to compute a polytope 𝔸 which is a map to 𝔹. It is the inverse problem of Definition 10 and can be easily computed by using the affine map in Definition 10. A function “range” is provided by Matlab toolbox called MPT [31] to compute the 𝔹 in Definition 10 and a function “domain” for calculating 𝔸 in (10).Due to the fact that all the variables in this paper are bounded by the polytopes, the state, input, and disturbance constraint sets are assumed to have the following form:(11)
𝕏
≜
{
x
∈
ℜ
n
∣
H
x
x
≤
K
x
}
,
𝕌
≜
{
u
∈
ℜ
m
∣
H
u
u
≤
K
u
}
,
𝕎
≜
{
w
∈
ℜ
m
∣
H
w
w
≤
K
w
}
,
where H
x
∈
ℜ
n
h
x
×
n, K
x
∈
ℜ
n
h
x, H
u
∈
ℜ
n
h
u
×
m, K
u
∈
ℜ
n
h
u, H
w
∈
ℜ
n
h
w
×
n, and K
w
∈
ℜ
n
h
w.


## 3. Multiparametric Quadratic Programming (mp-QP)

The multiparametric programming is the linear or nonlinear programming with parameters in the objective function or/and constraints. The semi-infinite programming and multilevel programming can be cast as special multiparametric programming. The main advantage of multiparametric programming is that the explicit piecewise affine solutions with respect to the parameters can be calculated. In this section, the general formulation of multiparametric programming is introduced. We refer the readers to [11–19] and the references therein for the basic definitions and results of the multiparametric programming used in this paper.The general formulation of multiparametric programming is as follows:(12a)
min
⁡
X
f
(
X
,
Y
)
,
(12b)
s
.
t
.
c
i
(
X
,
Y
)
≤
0
,
∀
i
=
1
,
…
,
p
,
(12c)
c
j
(
X
,
Y
)
=
0
,
∀
j
=
1
,
…
,
q
,
(12d)
Y
∈
𝕐
⊆
ℜ
n
y
,where X
∈
ℜ
n
x is the optimization variable and Y
∈
ℜ
n
y is the parameter variable.Define the Lagrangian as(13)
ℒ
(
X
,
Y
,
λ
,
γ
)
=
f
(
X
,
Y
)
-
∑
i
=
1
n
‍
λ
i
c
i
(
X
,
Y
)
-
∑
j
=
1
m
‍
γ
j
c
j
(
X
,
Y
)
,
where λ
∈
ℜ
p and γ
∈
ℜ
q are the Lagrange multipliers.The first-order Karush-Kuhn-Tucker (KKT) optimality conditions are(14a)
∇
X
ℒ
(
X
,
Y
,
λ
,
γ
)
=
0
,
(14b)
c
i
(
X
,
Y
)
≤
0
,
i
=
1
,
…
,
p
,
(14c)
c
j
(
X
,
Y
)
=
0
,
j
=
1
,
…
,
q
,
(14d)
λ
i
≥
0
,
i
=
1
,
…
,
p
,
(14e)
γ
j
≥
0
,
j
=
1
,
…
,
q
,
(14f)
λ
i
c
i
(
X
,
Y
)
=
0
,
i
=
1
,
…
,
p
,
(14g)
γ
j
c
j
(
X
,
Y
)
=
0
,
j
=
1
,
…
,
q
,where the gradient function ∇
X
ℒ
(
X
,
Y
,
λ
,
γ
) is defined as
(15)
∇
X
ℒ
(
X
,
Y
,
λ
,
γ
)
=
∇
f
(
X
,
Y
)
-
∑
i
=
1
n
‍
λ
i
∇
c
i
(
X
,
Y
)
-
∑
j
=
1
m
‍
γ
j
∇
c
j
(
X
,
Y
)
.Remark 12.
The first-order KKT condition is a necessary condition for a solution in constrained programming to be optimal. That is to say, the solution which satisfies the first-order KKT condition may not be the global optimal point for the constrained programming. If we want to determine whether the calculated point is global optimal point or not, the second-order optimality condition is needed.Although the solution satisfying the first-order KKT condition may not be the optimal one, for the case in the following theorem, the solution is optimal.Theorem 13.
For a fixedY, X
* satisfying the first-order KKT conditions (14a)–(14g) is the global optimal solution of (12a), if the objective function f
(
X
,
Y
) and inequality constraint functions c
i, i
=
1
,
…
,
p, in optimization problem (12a), (12b), (12c), and (12d) are convex functions and the equality constraint functions c
j, j
=
1
,
…
,
q, are linear functions. In this case, the first-order KKT condition is the necessary and also the sufficient condition for optimality.Proof.
The proof can be found in [33].Most of the optimization problems involved in linear control theory can be transformed into the mp-LP or mp-QP. The mp-LP and mp-QP correspond to the case of linear systems with linear performance cost functions and linear systems with quadratic performance cost functions, respectively. In general MPC algorithms, the mp-QP is the most common optimization problem we utilized.In this paper, we consider the following form of mp-QP problem [17, 18, 21]:(16a)
V
X
(
Y
)
=
min
⁡
X
1
2
X
T
H
X
(16b)
s
.
t
.
G
X
≤
W
+
S
Y
,where H
>
0, X
∈
𝕏
⊆
ℜ
n
x, Y
∈
𝕐
⊆
ℜ
n
y, H
∈
ℜ
n
x
×
n
x, G
∈
ℜ
p
×
n
x, W
∈
ℜ
p, and S
∈
ℜ
p
×
n
y.Then, from (14a), (14b), (14c), (14d), (14e), (14f), and (14g) the first-order KKT conditions of (16a) and (16b) are(17a)
H
X
+
G
T
λ
=
0
,
(17b)
G
X
-
W
-
S
Y
≤
0
,
(17c)
λ
i
≥
0
,
i
=
1
,
…
,
p
,
(17d)
λ
i
(
G
i
X
-
W
i
-
S
i
Y
)
=
0
,
i
=
1
,
…
,
p
,where G
=
[
G
1
T
,
G
2
T
,
…
,
G
p
T
]
T, W
=
[
W
1
T
,
W
2
T
,
…
,
W
p
T
]
T, S
=
[
S
1
T
,
S
2
T
,
…
,
S
p
T
]
T, and λ
∈
ℜ
p.DefineI
≜
{
1,2
,
…
,
p
}. By analyzing the KKT conditions (17a), (17b), (17c), and (17d), the explicit solution at a given Y is given by [18]
(18)
X
=
H
-
1
(
G
𝒜
)
T
(
G
𝒜
H
-
1
(
G
𝒜
)
T
)
-
1
(
W
𝒜
+
S
𝒜
Y
)
,
where 𝒜
≜
{
G
i
X
-
W
i
-
S
i
Y
∣
G
i
X
-
W
i
-
S
i
Y
=
0
,
i
∈
E
} denotes the set of active constraints in (16b), E
≜
{
i
∣
G
i
X
-
W
i
-
S
i
Y
=
0
,
i
∈
I
}
=
{
i
1
,
i
2
,
…
,
i
n
}, and G
𝒜
=
[
G
i
1
T
,
G
i
2
T
,
…
,
G
i
n
T
]
T, W
𝒜
=
[
W
i
1
T
,
W
i
2
T
,
…
,
W
i
n
T
]
T, and S
𝒜
=
[
S
i
1
T
,
S
i
2
T
,
…
,
S
i
n
T
]
T. Since the X in (18) is the function of Y, define 𝕐
0 as the region of Y in which the equation of X in (18) remains optimal. The region 𝕐
0 is a polytope and its ℋ-representation is as follows [18]:
(19)
𝕐
0
≜
{
Y
∈
ℜ
n
y
∣
H
y
0
Y
≤
K
y
0
}
,
where
(20)
H
y
0
=
[
G
H
-
1
(
G
𝒜
)
T
(
G
𝒜
H
-
1
(
G
𝒜
)
T
)
-
1
S
𝒜
-
S
-
(
G
𝒜
H
-
1
(
G
𝒜
)
T
)
-
1
S
𝒜
]
,
K
y
0
=
[
W
-
G
H
-
1
(
G
𝒜
)
T
(
G
𝒜
H
-
1
(
G
𝒜
)
T
)
-
1
W
𝒜
-
(
G
𝒜
H
-
1
(
G
𝒜
)
T
)
-
1
W
𝒜
]
.To solve the mp-QP problem (16a) and (16b), the feasible region 𝕐
F of Y needs to be confirmed firstly. Assume that the region 𝕐
F
≜
{
H
y
Y
≤
K
y
} and is the largest ball contained in 𝕐; then it can be calculated by solving the following LP problem [21]:(21a)
max
⁡
X
,
Y
,
ϵ
ϵ
(21b)
s
.
t
.
H
y
i
Y
+
ϵ
∥
H
y
i
∥
≤
K
y
i
(21c)
G
X
-
S
Y
≤
W
.In order to get the explicit piecewise affine solutions on the whole feasible set𝕐
F, the feasible set needs to be partitioned into a finite number of polytopes. Suppose 𝕐
F is partitioned into r partitions; then the partitions ℙ
i, i
∈
{
1,2
,
…
,
r
}, have to satisfy(i)
⋃
i
=
1
r
‍
ℙ
i
=
𝕐
F;
(ii)
(
ℙ
i
∖
𝔻
i
)
∩
(
ℙ
j
∖
𝔻
j
)
=
⌀, ∀
i
≠
j, where 𝔻
i denotes the border of partition ℙ
i.Remark 14.
The partitionsℙ
i, i
∈
{
1,2
,
…
,
r
}, are determined by finding the region 𝕐
0 defined in (19) on the whole 𝕐
F. There now exist many methods to determine the partitions ℙ
i, such as the method by exploiting the facet-to-facet property [19, 21] and adding/withdrawing constraints from active set [18].Theorem 15.
Consider the mp-QP of (16a) and (16b) and let 𝕐 be a polytope. Then the feasible set 𝕐
F
⊆
𝕐 is convex, the optimizer X is continuous and piecewise affine in each partition ℙ
i, and the value function V
X
(
Y
) is continuous, convex, and piecewise quadratic.Proof.
The proof is in [21].Remark 16.
The convexity and continuous properties in Theorem15 are critical for the optimality of mp-QP. From Theorem 25, since all the involved sets are convex, the inequality constraints in (16b) and the objective function are convex functions in each partition ℙ
i; then the optimizer X is the optimal solution of (16a) and (16b) in the whole region of each partition ℙ
i.


## 4. Tube-Based MPC with Piecewise Affine Control Laws

In this section, a robust tube-based MPC algorithm with piecewise affine solutions is proposed. For the basic definitions and researching development on the general tube-based MPC algorithm, readers can refer to [1, 2].For clarity, the linear nominal model of (1) is rewritten as
(22)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
.Since the system (22) satisfies Assumption 1, then there exists a feedback gain matrix K, such that closed-loop system x
(
k
+
1
)
=
A
K
x
(
k
), where A
K
=
A
+
B
K, is stable.In the sequel, the basic definition of robust invariant set is introduced by referring to [34].Definition 17.
The setℤ is said to be a robust invariant set for uncertain linear system x
(
k
+
1
)
=
A
K
x
(
k
)
+
w
(
k
), if for any x
(
0
)
∈
ℤ and any sequence of disturbances w
(
k
)
∈
𝕎, the solution of x
(
k
+
1
)
=
A
K
x
(
k
)
+
w
(
k
) satisfies x
(
k
)
∈
ℤ for all k
≥
0.Remark 18.
In [2], a concise description of the condition is presented as A
K
ℤ
⊕
𝕎
⊆
ℤ, where ⊕ denotes the Minkowski sum defined in Definition 8.By assuming that the set𝕎 is a polytope, that is, 𝕎
≜
{
w
∈
ℜ
m
∣
f
i
w
≤
g
i
,
[
f
1
T
,
f
2
T
,
…
,
f
n
h
w
T
]
T
=
H
w
,
[
g
1
,
g
2
,
…
,
g
n
h
w
]
T
=
K
w
,
i
=
1,2
,
…
,
n
h
w
}, the robust invariant set is chosen as the minimal robust positive invariant (mRPI) set F
∞ for uncertain linear system x
(
k
+
1
)
=
A
K
x
(
k
)
+
w
(
k
) by the outer ɛ-approximation approaches in [35]. The main procedures are listed as follows.Algorithm 19 (the procedures for findingℤ).
Step
0. Given A
K, 𝕎, ɛ
>
0 and let s
=
0.
Step
1. Set s
=
s
+
1.
Step
2. Compute α
o
(
s
) by the following equation:
(23)
α
o
(
s
)
=
max
⁡
i
∈
{
1,2
,
…
,
n
h
w
}
h
𝕎
(
(
A
K
s
)
T
f
i
T
)
g
i
,
where h
𝕎
(
a
)
≜
sup
⁡
w
∈
𝕎
a
T
w and e
j is the standard basis vector in ℜ
n. Set α
=
α
o
(
s
).
Step
3. Compute M
(
s
) as
(24)
M
(
s
)
=
max
⁡
j
∈
{
1
,
…
,
n
}
{
∑
i
=
0
s
-
1
‍
h
𝕎
(
(
A
K
i
)
T
e
j
)
,
∑
i
=
0
s
-
1
‍
h
𝕎
(
-
(
A
K
i
)
T
e
j
)
}
.
Step
4. If α
>
ɛ
/
(
ɛ
+
M
(
s
)
), go back to Step 1.
Step
5. Compute 𝔽
s as the Minkowski sum
(25)
𝔽
s
=
⨁
s
-
1
i
=
0
A
K
i
𝕎
,
𝔽
0
≜
{
0
}
and let 𝔽
(
α
,
s
)
=
(
1
-
α
)
-
1
𝔽
s be the outer ɛ-approximation of robust invariant set ℤ.Proposition 20.
Given a disturbance invariant setℤ for x
(
k
+
1
)
=
A
K
x
(
k
)
+
w
(
k
), let (
x
¯
(
k
)
,
u
¯
(
k
)
) and (
x
(
k
)
,
u
(
k
)
) be the state and input pair of the system x
¯
(
k
+
1
)
=
A
x
¯
(
k
)
+
B
u
¯
(
k
) and x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
+
w
(
k
), respectively. If x
(
k
)
∈
x
¯
(
k
)
⊕
ℤ and u
(
k
)
=
u
¯
(
k
)
+
K
(
x
(
k
)
-
x
¯
(
k
)
), then x
(
k
+
1
)
∈
x
¯
(
k
+
1
)
⊕
ℤ for all w
(
k
)
∈
𝕎.Proof.
The proof is in [1].For the purpose of proving the stability of tube-based MPC, the general robust MPC algorithm with tighten constraints is described as follows:(26a)
V
N
1
(
x
(
k
)
)
=
min
⁡
u
(
k
∣
k
)
,
…
,
u
(
k
+
N
-
1
k
)
J
(
x
(
k
)
,
u
(
·
)
)
,
(26b)
s
.
t
.
x
(
k
+
i
+
1
∣
k
)
=
A
x
(
k
+
i
∣
k
)
+
B
u
(
k
+
i
∣
k
)
,
(26c)
x
(
k
+
i
∣
k
)
∈
𝕏
¯
,
i
=
0
,
…
,
N
-
1
,
(26d)
u
(
k
+
i
∣
k
)
∈
𝕌
¯
,
i
=
0
,
…
,
N
-
1
,
(26e)
x
(
k
+
N
∣
k
)
∈
𝕏
f
,with the objective function
(27)
J
(
x
(
k
)
,
u
(
·
)
)
=
∑
i
=
0
N
-
1
‍
{
∥
x
(
k
+
i
∣
k
)
∥
Q
2
+
∥
u
(
k
+
i
∣
k
)
∥
R
2
}
+
∥
x
(
k
+
N
∣
k
)
∥
P
2
,
where x
(
k
+
i
∣
k
) is the prediction of x at the future time k
+
i, predicted at time k, and x
(
k
∣
k
) equals the current state x
(
k
). The corresponding weighting matrices Q, P, and R in (27) are chosen to be positive definite. The tighten constraint set 𝕏
¯, 𝕌
¯ is defined as 𝕏
¯
≜
𝕏
⊖
ℤ, 𝕌
¯
≜
𝕌
⊖
K
ℤ. The terminal constraint set 𝕏
f satisfies 𝕏
f
⊆
𝕏
⊖
ℤ and contains the equilibrium point in its interior. The optimization (26a), (26b), (26c), (26d), and (26e) can easily be transformed into the QP problem, the solvers for which are fast and efficient in most cases.Let the terminal cost functionV
L
(
k
)
=
x
(
k
)
T
P
x
(
k
) be a Lyapunov function; then the terminal constraints are chosen to satisfy the following stability conditions [2, 36]:C.1:A
K
𝕏
f
⊆
𝕏
f, 𝕏
f
⊆
𝕏
⊖
ℤ, K
𝕏
f
⊆
𝕌
⊖
K
ℤ,
C.2:V
L
(
A
K
x
(
k
)
)
-
V
L
(
x
(
k
)
)
≤
-
∥
x
(
k
+
i
k
)
∥
Q
2
-
∥
u
(
k
+
i
∣
k
)
∥
R
2, ∀
x
(
k
)
∈
𝕏
f.The principle for choosing𝕏
f is to satisfy condition C.1. Then, the terminal region 𝕏
f can be chosen as the maximum output admissible set O
∞, as in [37]. Consider the linear autonomous system x
(
k
+
1
)
=
A
K
x
(
k
) with the output constraint (state constraint) 𝕏
¯
=
{
x
∈
ℜ
n
∣
Ψ
i
x
≤
ψ
i
,
i
=
1,2
,
…
,
q
}, where [
ψ
1
T
,
ψ
2
T
,
…
,
ψ
q
T
]
T
=
Ψ
∈
ℜ
q
×
n, [
ψ
1
,
ψ
2
,
…
,
ψ
q
]
T
=
ψ
∈
ℜ
q. The main procedures to determine 𝕏
f are listed as follows [37, 38].Algorithm 21 (the procedures for finding𝕏
f).
Step
0. Set j
=
0.
Step
1. Solve the following linear programming problem for i
=
1,2
,
…
,
q:
(28)
J
i
=
max
⁡
y
Ψ
i
A
K
j
+
1
y
s
.
t
.
Ψ
l
A
K
k
y
≤
ψ
l
,
l
=
1,2
,
…
,
q
,
k
=
0,1
,
…
,
j
,
where Ψ
i denotes the ith row of the matrix Ψ.
Step
2. If J
i
≤
ψ
i, ∀
i
=
1,2
,
…
,
q, stop. Set
(29)
𝕏
f
=
O
∞
=
{
x
∣
Ψ
A
K
k
x
≤
ψ
,
∀
k
=
0,1
,
2
,
…
,
j
}
.
Otherwise, continue.
Step
3. Set j
=
j
+
1. Go back to Step 1.By solving the optimization (26a), (26b), (26c), (26d), and (26e), the optimal control sequence is U
*
(
k
)
=
[
u
*
(
k
∣
k
)
,
u
*
(
k
+
1
∣
k
)
,
…
,
u
*
(
N
-
1
∣
k
)
]. The control input u
(
k
), applied to the system (1), is the first element of U
*
(
k
). Then, define
(30)
u
*
(
x
(
k
)
)
=
u
tc
*
(
x
(
k
)
)
=
u
*
(
k
∣
k
)
,
where the symbol u
tc
* is defined to make differences between the solution of (26a), (26b), (26c), (26d), and (26e) and other optimizations which will be described later.TheN-step feasible set 𝕏
N
1 for (26a), (26b), (26c), (26d), and (26e) is defined as
(31)
𝕏
N
1
=
{
x
(
k
)
∈
ℜ
n
∣
∃
u
(
k
+
i
∣
k
)
∈
𝕌
¯
,
h
h
h
i
=
0,1
,
…
,
N
-
1
,
such
that
h
h
h
x
(
k
+
i
∣
k
)
∈
𝕏
¯
,
x
(
k
+
N
∣
k
)
∈
𝕏
f
}
.Remark 22.
TheN-step feasible set for optimization (26a), (26b), (26c), (26d), and (26e), which is also called the N-step controllable set, is the set of initial states which can be stabilized to the target set in N steps. The procedures for computing the N-step feasible set can be found in [32].The robust tube-based MPC algorithm, proposed by [1, 2], is to solve the following optimization:(32a)
V
N
2
(
x
(
k
)
)
=
min
⁡
x
(
k
∣
k
)
,
u
(
k
∣
k
)
,
…
,
u
(
k
+
N
-
1
∣
k
)
J
(
x
(
k
)
,
u
(
·
)
)
,
(32b)
s
.
t
.
x
(
k
+
i
+
1
∣
k
)
=
A
x
(
k
+
i
∣
k
)
+
B
u
(
k
+
i
∣
k
)
,
(32c)
x
(
k
+
i
∣
k
)
∈
𝕏
¯
,
i
=
0
,
…
,
N
-
1
,
(32d)
u
(
k
+
i
∣
k
)
∈
𝕌
¯
,
i
=
0
,
…
,
N
-
1
,
(32e)
x
(
k
)
∈
x
(
k
∣
k
)
⊕
ℤ
,
(32f)
x
(
k
+
N
∣
k
)
∈
𝕏
f
,where the parameters Q, R, P, 𝕏, 𝕌, and 𝕏
f and the objective function J
(
x
(
k
)
,
u
(
·
)
) are the same as in optimization (26a), (26b), (26c), (26d), and (26e). In this optimization, the current state x
(
k
) does not equal x
(
k
∣
k
), which is the prediction of current state x
(
k
) at time k. ℤ is the robust invariant set solved by Algorithm 19.Remark 23.
The optimization (32a), (32b), (32c), (32d), (32e), and (32f) can also be transformed into the QP form. The significant difference between the tube-based MPC (32a), (32b), (32c), (32d), (32e), and (32f) and the general constraint tightening MPC (26a), (26b), (26c), (26d), and (26e) is that x
(
k
∣
k
) is taken as an optimization variable in (32a), (32b), (32c), (32d), (32e), and (32f), which does not equal x
(
k
) but satisfies the constraint x
(
k
)
∈
x
(
k
∣
k
)
⊕
ℤ. Moreover, the constraint x
(
k
)
∈
x
(
k
∣
k
)
⊕
ℤ is equivalent to x
(
k
)
-
x
(
k
∣
k
)
∈
ℤ. And in particular x
(
k
∣
k
)
∈
x
(
k
)
⊕
ℤ, when ℤ is symmetric. In Remark 11, the way of computing the constraint set of variable x
(
k
∣
k
) by affine map is shown.Then, theN-step feasible set 𝕏
N
2 for (32a), (32b), (32c), (32d), (32e), and (32f) is defined as
(33)
𝕏
N
2
=
{
x
(
k
)
∈
ℜ
n
∣
∃
u
(
k
+
i
∣
k
)
∈
𝕌
¯
,
h
h
.
h
i
=
0,1
,
…
,
N
-
1
,
such
that
x
(
k
+
i
∣
k
)
∈
𝕏
¯
,
h
h
h
x
(
k
+
N
∣
k
)
∈
𝕏
f
,
x
(
k
)
∈
x
(
k
∣
k
)
⊕
ℤ
}
.Remark 24.
TheN-step feasible set 𝕏
N
2 can also be computed using the method in [32].The robust tube-based MPC solves the optimization (32a), (32b), (32c), (32d), (32e), and (32f) repeatedly at each time instant k. The optimal solutions are U
*
(
k
)
=
{
u
*
(
k
∣
k
)
,
u
*
(
k
+
1
∣
k
)
,
…
,
u
*
(
k
+
N
-
1
∣
k
)
}, and x
*
(
k
∣
k
), which related to the real initial state x
(
k
). The control law to be applied is chosen as
(34)
u
*
(
x
(
k
)
)
=
u
tb
*
(
x
(
k
)
)
=
u
*
(
k
∣
k
)
+
K
(
x
(
k
)
-
x
*
(
k
∣
k
)
)
.Theorem 25 (stability results).
The system dynamics of (1) under control input u
t
b
*
(
x
(
k
)
) satisfies V
N
2
(
x
(
k
+
1
)
)
-
V
N
2
(
x
(
k
)
)
≤
-
∥
x
*
(
k
∣
k
)
∥
Q
2
-
∥
u
t
c
*
(
x
*
(
k
∣
k
)
)
∥
R
2, ∀
w
(
k
)
∈
𝕎, and the robust invariant set ℤ is robustly exponentially stable for system x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
t
b
*
(
x
(
k
)
)
+
w
(
k
), ∀
w
(
k
)
∈
𝕎, in the region of 𝕏
N
2.Proof.
The proof is in [2].In the sequel, we define𝕏
¯
≜
{
x
∈
ℜ
n
∣
H
x
¯
x
≤
K
x
¯
}, 𝕌
¯
≜
{
u
∈
ℜ
m
∣
H
u
¯
u
≤
K
u
¯
}, 𝕏
f
≜
{
x
∈
ℜ
n
∣
H
x
f
x
≤
K
x
f
}, ℤ
≜
{
x
∈
ℜ
n
∣
H
z
x
≤
K
z
}, and x
(
k
)
∈
x
(
k
∣
k
)
⊕
ℤ
⇒
{
x
(
k
∣
k
)
∈
ℜ
n
∣
H
x
z
x
(
k
∣
k
)
≤
K
x
z
+
K
z
a
*
x
(
k
)
}, where we can get H
x
z
=
K
z
a
=
H
z
*
inv
(
-
eye
(
n
)
) and K
x
z
=
K
z from Remark 11. The symbol inv
(
A
) denotes the inverse of matrix A and eye
(
n
) produces an n
×
n identity matrix.In spite of the fact that the QP problem can be solved efficiently by the existing solvers, for systems with fast dynamics, the computational burden is still too huge to control these systems well. Even worse, the long computation time may make the controlled systems unstable. A viable way to tackle this problem is to use the offline approach, which solves the related optimization totally offline. The explicit regulator together with multiparametric programming is an alternative way to give a control strategy with less computation time.Since the initial statex
(
k
∣
k
) in the optimization (32a), (32b), (32c), (32d), (32e), and (32f) is as an optimization variable, let
(35)
U
˘
=
[
u
(
k
∣
k
)
T
,
u
(
k
+
1
∣
k
)
T
,
…
,
h
h
h
u
(
k
+
N
-
1
∣
k
)
T
,
x
(
k
∣
k
)
T
]
T
be the augmented vector of optimization variables u
(
k
+
i
∣
k
) and x
(
k
∣
k
).Then, the optimization problem (32a), (32b), (32c), (32d), (32e), and (32f) can be transformed into the following mp-QP:(36a)
V
N
3
(
x
(
k
)
)
=
min
⁡
U
˘
U
˘
T
H
U
˘
(36b)
s
.
t
.
G
U
˘
≤
W
+
S
x
(
k
)
,where x
(
k
)
∈
𝕏. The matrices H
>
0, G, W, and S are defined as
(37)
H
=
blkdiag
(
ℬ
T
𝒬
ℬ
+
ℛ
,
zeros
(
n
)
)
+
blkdiag
(
zeros
(
N
m
,
N
m
)
,
𝒜
T
𝒬
𝒜
)
+
2
×
[
zeros
(
n
,
m
)
zeros
(
n
,
n
)
𝒜
T
𝒬
ℬ
zeros
(
n
,
m
)
]
,
G
=
[
H
G
1
H
G
2
]
,
W
=
[
K
W
1
K
W
2
]
,
S
=
[
0
K
z
a
]
,
0
∈
ℜ
{
size
(
G
,
1
)
-
size
(
H
Z
,
1
)
}
×
length
(
x
)
,
with
(38)
𝒜
=
[
I
A
A
2
⋮
A
N
-
1
A
N
]
,
I
=
eye
(
n
)
,
ℬ
=
[
0
0
0
…
0
B
0
0
…
0
A
B
B
0
…
0
⋮
⋱
⋱
⋱
⋮
A
N
-
2
B
…
A
B
B
0
A
N
-
1
B
…
A
2
B
A
B
B
]
,
0
∈
ℜ
n
×
m
,
𝒬
=
blkdiag
(
Q
,
Q
,
…
,
Q
︸
N
,
P
)
,
ℛ
=
blkdiag
(
R
,
R
,
…
,
R
︸
N
)
,
H
X
=
blkdiag
(
H
x
¯
,
H
x
¯
,
…
,
H
x
¯
︸
N
,
H
x
f
)
,
K
X
=
[
K
x
¯
T
,
K
x
¯
T
,
…
,
K
x
¯
T
︸
N
,
K
x
f
T
]
T
,
H
U
=
blkdiag
(
H
u
¯
,
H
u
¯
,
…
,
H
u
¯
︸
N
)
,
K
U
=
[
K
u
¯
T
,
K
u
¯
T
,
…
,
K
u
¯
T
︸
N
]
T
,
H
G
1
=
[
H
X
×
ℬ
,
H
X
×
𝒜
]
,
H
G
2
=
blkdiag
(
H
U
,
H
x
z
)
,
K
W
1
=
K
X
,
K
W
2
=
[
K
U
K
x
z
]
.By applying the algorithm in (21a), (21b), and (21c), the feasible set 𝕏
N
3 of x
(
k
) is calculated, and we have
(39)
x
(
k
)
∈
𝕏
N
3
.Remark 26.
Since the optimization problems (32a), (32b), (32c), (32d), (32e), and (32f) and (36a) and (36b) are the same one with different forms, the feasible set 𝕏
N
3 equals the feasible set 𝕏
N
2.By solving the mp-QP (36a) and (36b) through algorithms in [18, 19, 21], the feasible region 𝕏
N
3 is assumed to be partitioned into r partitions and each partition ℙ
i
≜
{
H
p
i
x
≤
K
p
i
}, i
=
1,2
,
…
,
r, is a polytope. The explicit piecewise affine solution with respect to ℙ
i is defined as
(40)
U
˘
1
*
=
Γ
1
x
(
k
)
+
η
1
,
x
(
k
)
∈
ℙ
1
≜
{
H
p
1
x
≤
K
p
1
}
U
˘
2
*
=
Γ
2
x
(
k
)
+
η
2
,
x
(
k
)
∈
ℙ
2
≜
{
H
p
2
x
≤
K
p
2
}
⋮
U
˘
r
*
=
Γ
r
x
(
k
)
+
η
r
,
x
(
k
)
∈
ℙ
r
≜
{
H
p
r
x
≤
K
p
r
}
,
where U
˘
i
*
∈
ℜ
N
m
+
n denotes the piecewise affine function of U
˘
* in partition ℙ
i, Γ
i
∈
ℜ
(
N
m
+
n
)
×
n, i
=
1
,
…
,
r, and η
i
∈
ℜ
N
m
+
n, i
=
1
,
…
,
r.Due to the fact that the optimization sequenceU
˘ is the combination of u
(
k
+
i
∣
k
) and x
(
k
∣
k
), the decomposition procedures are needed to get the explicit solutions for (32a), (32b), (32c), (32d), (32e), and (32f). Define
(41)
Γ
i
=
[
Γ
i
1
Γ
i
2
⋮
Γ
i
N
Γ
i
N
+
1
]
,
η
i
=
[
η
i
1
η
i
2
⋮
η
i
N
η
i
N
+
1
]
,
i
=
1
,
…
,
r
,
where Γ
i
j
∈
ℜ
m
×
n, ∀
j
=
1,2
,
…
,
N, Γ
i
N
+
1
∈
ℜ
n
×
n, η
i
j
∈
ℜ
m, ∀
j
=
1,2
,
…
,
N, and η
i
N
+
1
∈
ℜ
n, for all i
=
1,2
,
…
,
r.Then, the piecewise affine state feedback control lawsu
i
* in (32a), (32b), (32c), (32d), (32e), and (32f) are
(42)
u
1
*
(
k
∣
k
)
=
Γ
1
1
x
(
k
)
+
η
1
1
,
x
(
k
)
∈
ℙ
1
u
2
*
(
k
∣
k
)
=
Γ
2
1
x
(
k
)
+
η
2
1
,
x
(
k
)
∈
ℙ
2
⋮
u
r
*
(
k
∣
k
)
=
Γ
r
1
x
(
k
)
+
η
r
1
,
x
(
k
)
∈
ℙ
r
and the corresponding piecewise affine linear x
i
*
(
k
∣
k
) is calculated by
(43)
x
1
*
(
k
∣
k
)
=
Γ
1
N
+
1
x
(
k
)
+
η
1
N
+
1
,
x
(
k
)
∈
ℙ
1
x
2
*
(
k
∣
k
)
=
Γ
2
N
+
1
x
(
k
)
+
η
2
N
+
1
,
x
(
k
)
∈
ℙ
2
⋮
x
r
*
(
k
∣
k
)
=
Γ
r
N
+
1
x
(
k
)
+
η
r
N
+
1
,
x
(
k
)
∈
ℙ
r
,
where u
i
*
(
k
∣
k
) and x
i
*
(
k
∣
k
) denote the piecewise affine function of u
*
(
k
∣
k
) and x
*
(
k
∣
k
) with respect to x
(
k
) in partition ℙ
i, respectively.The explicit piecewise affine linear control law for robust tube-based MPC at the initial pointx
(
k
)
∈
ℙ
i is defined as
(44)
u
pa
*
(
x
(
k
)
)
=
{
u
1
*
(
k
∣
k
)
+
K
(
x
(
k
)
-
x
1
*
(
k
∣
k
)
)
,
x
(
k
)
∈
ℙ
1
u
2
*
(
k
∣
k
)
+
K
(
x
(
k
)
-
x
2
*
(
k
∣
k
)
)
,
x
(
k
)
∈
ℙ
2
⋮
u
r
*
(
k
∣
k
)
+
K
(
x
(
k
)
-
x
r
*
(
k
∣
k
)
)
,
x
(
k
)
∈
ℙ
r
.Remark 27.
Comparing (44) with (34), the control law (44) is explicit piecewise affine linear with respect to the initial state x
(
k
) and can be computed totally offline. The piecewise affine linear control laws are prestored in the memory of computer, and when these control laws are needed to be applied online, the only measure to take is finding the partition ℙ
i which contains x
(
k
) by searching in a lookup table. So the computation time has been extremely decreased, and the algorithm is fit for controlling those systems with fast dynamics.Substituting (42) and (43) into (44) yields the concise form of (44) as
(45)
u
pa
*
(
x
(
k
)
)
=
{
(
Γ
1
1
+
K
-
K
Γ
1
N
+
1
)
x
(
k
)
+
(
η
1
1
-
K
η
1
N
+
1
)
,
x
(
k
)
∈
ℙ
1
(
Γ
2
1
+
K
-
K
Γ
2
N
+
1
)
x
(
k
)
+
(
η
2
1
-
K
η
2
N
+
1
)
,
x
(
k
)
∈
ℙ
2
⋮
(
Γ
r
1
+
K
-
K
Γ
r
N
+
1
)
x
(
k
)
+
(
η
r
1
-
K
η
r
N
+
1
)
,
x
(
k
)
∈
ℙ
r
.Since the explicit piecewise affine state feedback control laws are stored in a lookup table, certain searching methods are needed to confirm which partition contains the current statex
(
k
). The related procedures are referred to as the well-known “point location” problem. There already exist many viable and efficient methods to figure out these point location problems, such as the binary search tree utilized in [27], the subdivision walking method in [28], and the hash tables in [29].Theorem 28.
Consider the mp-QP of (36a) and (36b) with piecewise affine solutions (44); then one has the following. (i)
The feasible set𝕏
N
3
⊆
𝕏 is convex, the optimizer U
˘ is continuous and piecewise affine in each partition ℙ
i, and the value function V
N
3
(
x
(
k
)
) is continuous, convex, and piecewise quadratic.
(ii)
The piecewise affine linear control lawu
p
a
*
(
x
(
k
)
) in (44) for tube-based MPC algorithm is continuous and piecewise affine in each partition ℙ
i.Proof.
Since (ii) in the theorem is deeply involved with (i), (i) and (ii) will be proven separately and orderly. We first prove (i). It is obvious that (i) in Theorem28 is the direct conclusion of Theorem 15; then (i) is proven. We then prove (ii). From (i), U
˘ is continuous and piecewise affine in ℙ
i. Also by (18), U
˘ is linear with respect to x
(
k
) in ℙ
i. Since u
i
*
(
k
∣
k
)
=
[
I
1
,
0
,
…
,
0
]
U
˘
i, where I
1
∈
ℜ
m
×
m is the identify matrix, and x
i
*
(
k
∣
k
)
=
[
0
,
…
,
0
,
I
2
]
U
˘
i, where I
2
∈
ℜ
n
×
n is the identify matrix, u
i
*
(
k
∣
k
) and x
i
*
(
k
∣
k
) are the combinations of U
˘
i; then u
i
*
(
k
∣
k
) and x
i
*
(
k
∣
k
) are continuous piecewise linear in ℙ
i. Also u
pa
*
(
x
(
k
)
) is the combination of u
i
*
(
k
∣
k
) and x
i
*
(
k
∣
k
); then u
pa
*
(
x
(
k
)
) is continuous and piecewise affine in each ℙ
i.In the sequel, the robust stability of the disturbed linear system (1) under explicit piecewise affine control law (44) is analyzed.Theorem 29 (stability results).
The system dynamics of (1) under control input u
p
a
*
(
x
(
k
)
) satisfies V
N
2
(
x
(
k
+
1
)
)
-
V
N
2
(
x
(
k
)
)
≤
-
∥
x
i
*
(
k
∣
k
)
∥
Q
2
-
∥
u
t
c
*
(
x
i
*
(
k
∣
k
)
)
∥
R
2, ∀
w
(
k
)
∈
𝕎, x
(
k
)
∈
ℙ
i, i
=
1,2
,
…
,
r, and the robust invariant set ℤ is robustly exponentially stable for system x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
p
a
*
(
x
(
k
)
)
+
w
(
k
), ∀
w
(
k
)
∈
𝕎, in the region of 𝕏
N
3.Proof.
In this proof, we discard the traditional idea as in [39, 40], which takes the system (1) under piecewise affine control law u
pa
*
(
x
(
k
)
) as a switched linear system. To prove the stability of these switched linear systems, we need to construct and then prove the asymptotical decreasing property of a series of piecewise Lyapunov functions for each separate subsystem, which is fairly complex. So we changed the way to prove that the piecewise affine control law u
pa
*
(
x
(
k
)
) is equivalent to u
tb
*
(
x
(
k
)
) for all x
(
k
)
∈
ℙ
i, ∀
i
∈
{
1,2
,
…
,
r
}. Since all the constraints in (36b) are linear functions for each fixed x
(
k
) and the objective function is a quadratic function, then both of them are convex functions. From Theorem 25, we can see that U
˘
i
* which satisfies the first-order KKT condition is the optimal solution of (36a) and (36b) at x
(
k
)
∈
ℙ
i; then it means u
i
*
(
k
∣
k
) and x
i
*
(
k
∣
k
) are also optimal at x
(
k
)
∈
ℙ
i, ∀
i
∈
{
1,2
,
…
,
r
}; then u
pa
*
(
x
(
k
)
) is optimal in ℙ
i, ∀
i
∈
{
1,2
,
…
,
r
}. If x
(
k
)
∈
ℙ
i, ∀
i
∈
{
1,2
,
…
,
r
}, the corresponding optimal solutions of (32a), (32b), (32c), (32d), (32e), and (32f) are u
*
(
k
∣
k
) and x
*
(
k
∣
k
). Since the optimizations (36a) and (36b) and (32a), (32b), (32c), (32d), (32e), and (32f) are the same optimization with different forms and V
N
2
(
x
(
k
)
) equals V
N
3
(
x
(
k
)
), combined with Theorem 28, we conclude that the piecewise affine control laws u
pa
*
(
x
(
k
)
) in (44) equal the control law u
tb
*
(
x
(
k
)
) for all x
(
k
)
∈
𝕏
N
2
/
𝕏
N
3. Then, by virtue of the robust stability results in Theorem 25, Theorem 29 is proven.


## 5. Illustrative Example

In order to verify the efficiency of the control strategy, the proposed algorithm is applied to a disturbed linear system, which is borrowed from [2]. For simplicity and comparison, the related parameters are mostly the same as [2]. The system model is described as follows:
(46)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
+
w
(
k
)
,
where
(47)
A
=
[
1
1
0
1
]
,
B
=
[
0.5
1
]
.The bounds on the state, control, and disturbance are(48)
x
(
k
)
∈
𝕏
≜
{
x
∣
[
01
]
x
(
k
)
≤
2
}
,
u
(
k
)
∈
𝕌
≜
{
u
∣
|
u
(
k
)
|
≤
1
}
,
w
(
k
)
∈
𝕎
≜
{
w
∣
∥
w
(
k
)
∥
∞
≤
0.1
}
.The corresponding nominal model is(49)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
u
(
k
)
.Choose(50)
Q
=
[
1
0
0
1
]
,
R
=
0.01
.For the nominal model (49), the optimal state-feedback gain K is calculated by solving the discrete-time LQR problem. By applying the Matlab function “dlqr,” K is calculated as
(51)
K
=
[
-
0.6609
-
1.3261
]
and the corresponding positive symmetric matrix P is
(52)
P
=
[
2.0066
0.5099
0.5099
1.2682
]
.The robust invariant setℤ for (1) under u
(
k
)
=
K
x
(
k
) can be computed from Algorithm 19. ℤ is a polytope and its ℋ-representation is
(53)
ℤ
=
{
x
∈
R
n
∣
H
z
x
≤
K
z
}
,
where
(54)
H
z
=
[
0
-
1
0.70249
0.71169
0.69544
0.71858
0
1
-
0.70926
-
0.70495
-
1
0
-
0.709
-
0.7052
-
0.70249
-
0.71169
-
0.69544
-
0.71858
0.709
0.7052
0.70926
0.70495
1
0
]
,
K
z
=
[
0.23307
0.14236
0.14328
0.23307
0.16326
0.23482
0.14321
0.14236
0.14328
0.14321
0.14326
0.23482
]
.Similarly, the terminal region𝕏
f can be calculated from Algorithm 21. The ℋ-representation of 𝕏
f is
(55)
𝕏
f
=
{
x
∈
R
n
∣
H
x
f
x
≤
K
x
f
}
,
where
(56)
H
x
f
=
[
0
-
1
-
0.44605
-
0.89501
0.44605
0.89501
0.90033
0.43521
-
0.90033
-
0.43521
]
,
K
x
f
=
[
1.7669
0.48182
0.48132
1.4813
1.4813
]
.ChooseN
=
9 and initial state x
(
0
)
=
(
-
5
,
-
2
). By utilizing the algorithm proposed in this paper, the feasible sets 𝕏
9
1, 𝕏
9
2, and 𝕏
9
3 are plotted in Figure 1, the partitions of 𝕏
9
3 are shown in Figure 2, and the phase trajectory with embedded robust invariant sets ℤ from the starting point x
(
0
)
=
(
-
5
,
-
2
) is plotted in Figure 3. In order to test whether the constraints on state and input are violated or not, the Monte Carlo method is utilized and the results are shown in Figures 4 and 5. Also to verify the feasibility in the whole feasible set 𝕏
9
3, different representative initial points are simulated and the corresponding phase trajectories are plotted in Figure 6. Moreover, for comparison, the partitions of the feasible sets 𝕏
N
3, N
=
1,3
,
5,7, are plotted in Figures 7, 8, 9, and 10. The total number of partitions of 𝕏
N
3, N
=
1,2
,
…
,
9, is shown in Table 1. And the comparison of online computation time between the method in [2] and the proposed method in this paper for each control step is given in Table 2. For simplicity, the representative partitions of 𝕏
1
3 and corresponding piecewise affine control laws are listed in Table 3.Table 1
Number of partitions.
N
1
2
3
4
5
6
7
8
9
Partitions
77
118
173
241
298
380
477
557
657Table 2
Mean online computation time for each control step.
N
Method in [2]
Proposed method
1
0.0125 s
5.1377
×
1
0
-
4 s
2
0.0131 s
6.0158
×
1
0
-
4 s
3
0.0140 s
7.3339
×
1
0
-
4 s
4
0.0158 s
7.7544
×
1
0
-
4 s
5
0.0162 s
9.6099
×
1
0
-
4 s
6
0.0183 s
1.0000
×
1
0
-
3 s
7
0.0191 s
1.3000
×
1
0
-
3 s
8
0.0204 s
1.6000
×
1
0
-
3 s
9
0.0215 s
1.8000
×
1
0
-
3 sTable 3
Representative partitions ofX
1
3.
Regions
Corresponding control law
R1
u
=
[
-
0.6609
-
1.3261
]
x
R2
u
=
[
-
0.6609
-
1.3208
]
x
-
0.0012
R3
u
=
[
-
0.6580
-
1.3203
]
x
-
0.0013
R4
u
=
[
-
0.0000
-
0.0000
]
x
-
1.0000
R5
u
=
[
-
0.6609
-
0.4151
]
x
-
0.7481
R6
u
=
[
-
0.0000
-
0.0000
]
x
-
0.8678
R7
u
=
[
-
0.6580
-
1.3203
]
x
-
0.0007
R8
u
=
[
-
0.3990
-
1.1995
]
x
+
0.4629
R9
u
=
[
-
0.6522
-
1.3261
]
x
-
0.4373
R10
u
=
[
-
0.4411
-
1.3261
]
x
+
0.4527
R11
u
=
[
-
0.4312
-
1.3261
]
x
+
0.4783
R12
u
=
[
-
0.6593
-
1.3261
]
x
+
0.0004
R13
u
=
[
-
0.6580
-
1.3203
]
x
+
0.0005
R14
u
=
[
-
0.0000
-
0.0000
]
x
+
0.8253
R15
u
=
[
0.1908
-
0.4635
]
x
+
0.7536
R16
u
=
[
-
0.6563
-
1.3215
]
x
+
0.0009
R17
u
=
[
-
0.6563
-
1.3215
]
x
-
0.0009
R18
u
=
[
0.1908
-
0.4635
]
x
-
0.7536
R19
u
=
[
-
0.0000
-
0.0000
]
x
-
0.8253
R20
u
=
[
-
0.6580
-
1.3203
]
x
-
0.0005
R21
u
=
[
-
0.6593
-
1.3261
]
x
-
0.0004
R22
u
=
[
-
0.6609
-
1.3208
]
x
+
0.0012
R23
u
=
[
-
0.0000
-
0.0000
]
x
+
1.0000
R24
u
=
[
-
0.6609
-
0.4151
]
x
+
0.7481
R25
u
=
[
-
0.0000
-
0.0000
]
x
+
0.8678
R26
u
=
[
-
0.6580
-
1.3203
]
x
+
0.0007
R27
u
=
[
-
0.4312
-
1.3261
]
x
-
0.4783
R28
u
=
[
-
0.4411
-
1.3261
]
x
-
0.4527
R29
u
=
[
-
0.3990
-
1.1995
]
x
-
0.4629
R30
u
=
[
-
0.6522
-
1.3261
]
x
+
0.4293Figure 1
The feasible regions𝕏
9
1, 𝕏
9
2, and 𝕏
9
3 (N
=
9).Figure 2
The partitions of feasible set𝕏
9
3 (N
=
9).Figure 3
The phase trajectories from(
-
5
,
-
2
) (N
=
9).Figure 4
The state trajectories ofx
1 and x
2 (N
=
9).Figure 5
The control inputu (N
=
9).Figure 6
The phase trajectories starting from different initial points (N
=
9).Figure 7
The partitions of feasible set𝕏
1
3 (N
=
1).Figure 8
The partitions of feasible set𝕏
3
3 (N
=
3).Figure 9
The partitions of feasible set𝕏
5
3 (N
=
5).Figure 10
The partitions of feasible set𝕏
7
3 (N
=
7).Figure1 shows that 𝕏
N
1
⊂
𝕏
N
2
=
𝕏
N
3. Figure 2 combined with Figures 7–10, or directly Table 1, shows that the number of partitions ℙ
i is exponentially increased with respect to the prediction horizon N. It can also be seen from Figure 4 that the system (46), under the piecewise affine control laws (44), is asymptotic stable to region 0
⊕
ℤ, and all the hard constraints on state and input are not violated at all. Figure 7 illustrates that the state in the obtained feasible set 𝕏
9
3 is feasible. The total simulations are achieved using Matlab 7.6a and the MPT [31] on our laptop with a 2.67 GHz Intel Core i5 processor and 4 GB RAM.


## 6. Conclusion

In this paper, a robust tube-based MPC algorithm with piecewise affine control laws is proposed to control the disturbed linear systems. The main advantage of the proposed algorithm is that the explicit control laws, which are piecewise affine to the partition of feasible set, are obtained totally offline by transforming the optimization of the general tube-based MPC into the mp-QP. Since the involved functions are convex and all the sets are polytopes, the piecewise affine control laws are optimal. By applying these control laws to the controlled system, the stability and robustness properties still hold. The simulation results illustrate the effectiveness.



---

*Source: 358148-2014-03-11.xml*