Math 2.0

Systems theory; control Definition

Model predictive control

Builds on Optimal controlControl system

Definition

Let f ⁣:ℝn×ℝm→ℝnf \colon \R^n \times \R^m \to \R^n define the discrete-time control system xk+1=f(xk,uk)x_{k+1} = f(x_k, u_k). Let 𝕏⊆ℝn\mathbb{X} \subseteq \R^n, 𝕌⊆ℝm\mathbb{U} \subseteq \R^m and 𝕏f⊆𝕏\mathbb{X}_f \subseteq \mathbb{X} be constraint sets. Let ℓ ⁣:ℝn×ℝm→ℝ\ell \colon \R^n \times \R^m \to \R be a stage cost, let Vf ⁣:ℝn→ℝV_f \colon \R^n \to \R be a terminal cost, and let N≥1N \ge 1 be the horizon. For x∈ℝnx \in \R^n, let PN(x)P_N(x) be the problem: minimise ∑i=0N−1ℓ(zi,vi)+Vf(zN)\sum_{i=0}^{N-1} \ell(z_i, v_i) + V_f(z_N) over v0,…,vN−1∈𝕌v_0, \dots, v_{N-1} \in \mathbb{U}, subject to z0=xz_0 = x, zi+1=f(zi,vi)z_{i+1} = f(z_i, v_i), zi∈𝕏z_i \in \mathbb{X} for i<Ni < N, and zN∈𝕏fz_N \in \mathbb{X}_f. Assume that PN(x)P_N(x) has a minimiser (v0∗(x),…,vN−1∗(x))(v_0^*(x), \dots, v_{N-1}^*(x)) for each xx in a set 𝒳N\mathcal{X}_N, and fix a choice of it. The model predictive control law is κN(x)=v0∗(x)\kappa_N(x) = v_0^*(x) for x∈𝒳Nx \in \mathcal{X}_N. Model predictive control operates the system in closed loop by uk=κN(xk)u_k = \kappa_N(x_k): at each time kk it solves PN(xk)P_N(x_k) and applies only the first control.

Remarks

The problem PN(x)P_N(x) is a finite-horizon optimal control problem, and the horizon moves forward with time, hence the name receding-horizon control. Stability of the closed loop is not automatic. Standard sufficient conditions ask for a terminal set 𝕏f\mathbb{X}_f that is invariant under some local controller. They also ask for a terminal cost VfV_f that decreases along this controller by at least the stage cost. Then the optimal value of PNP_N is a Lyapunov function of the closed loop.

Example: n=m=1n = m = 1, f(x,u)=x+uf(x, u) = x + u, no constraints, ℓ(x,u)=x2+u2\ell(x, u) = x^2 + u^2, N=1N = 1 and Vf(z)=z2V_f(z) = z^2. Then P1(x)P_1(x) minimises x2+v2+(x+v)2x^2 + v^2 + (x + v)^2, whose minimiser is v=−x/2v = -x/2. So κ1(x)=−x/2\kappa_1(x) = -x/2, and the closed loop xk+1=xk/2x_{k+1} = x_k / 2 converges to 00.

Non-example of a stabilising choice: in the same setting with Vf=0V_f = 0, the problem minimises x2+v2x^2 + v^2, so κ1(x)=0\kappa_1(x) = 0. The closed loop is xk+1=xkx_{k+1} = x_k, which does not converge to 00, although each step is optimal for the short horizon.

Reading path

To understand this page from the ground up, read these 3 pages in order. The foundations come first.

Show the path as a graph
Each page uses the pages above it. The colour of the bar on a box shows how strong the evidence is, and the box also gives it as text. The list has the same pages.
  • no evidence level
  1. Control system concept
  2. Optimal control concept
  3. Model predictive control definition

Further reading

  1. Web https://en.wikipedia.org/wiki/Model_predictive_control
About this page
TagSAH0W43RMW
URIm2://SAH0W43RMW
Kinddefinition
WritingW0 stub
MSC93B45, 49N35, 93C55
DefinesModel predictive control
UsesOptimal control, Control system

Markdown · JSON · Edit on GitHub

What this page needs for W1

  • an inventory row: the row of the inventory that the node accounts for (0 of 1)
  • a source with a locator (0 of 1)

The writing levels say how complete the text of a page is. They do not measure its truth.

What links here

No page links to this page yet.