Analysis of max-plus linear systems
Now we present some analysis techniques for max-plus linear DESs that can be described by a model of the form (10)–(11).
First we determine the input-output behavior of the max-plus linear DES. We have
$$ \begin{array}{@{}rcl@{}} x(1) & =& A \otimes x(0) \oplus B \otimes u(1) \\ x(2) & =& A \otimes x(1) \oplus B \otimes u(2) \\ & =& {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{2}}} \otimes x(0) \oplus A \otimes B \otimes u(1) \oplus B \otimes u(2) \end{array} $$
etc., which yields \( x(k) = {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}} \otimes x(0) \oplus {\displaystyle \bigoplus _{i=1}^{k}} {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k-i}}} \otimes B \otimes u(i) \) for k = 1,2,… Hence,
$$ \begin{array}{@{}rcl@{}} y(k) = C \otimes {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{k}}} \otimes x(0) \oplus {\displaystyle\bigoplus_{i=1}^{k}} C \otimes {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{k-i}}} \otimes B \otimes u(i) \end{array} $$
(16)
for k = 1,2,…
Consider two input sequences \(u_{1} = \{ u_{1}(k) \}_{k=1}^{\infty \protect \rule [-0.25mm]{0mm}{0mm}}\protect \rule [-1.5mm]{0mm}{0mm}\) and \(u_{2} = \{ u_{2}(k) \}_{k=1}^{\infty \protect \rule [-0.25mm]{0mm}{0mm}}\protect \rule [-1.5mm]{0mm}{0mm}\). Let \(y_{1} = \{ y_{1}(k) \}_{k=1}^{\infty \protect \rule [-0.25mm]{0mm}{0mm}}\protect \rule [-1.6mm]{0mm}{0mm}\) be the output sequence that corresponds to the input sequence u1 (with initial condition x1(0) = x1,0) and let \(y_{2} = \{ y_{2}(k) \}_{k=1}^{\infty \protect \rule [-0.25mm]{0mm}{0mm}}\protect \rule [-1.6mm]{0mm}{0mm}\) be the output sequence that corresponds to the input sequence u2 (with initial condition x2(0) = x2,0). Let \(\alpha , \beta \in \mathbb {R}_{\varepsilon }\). From (16) it follows that the output sequence that corresponds to the input sequence \(\alpha \otimes u_{1} \oplus \beta \otimes u_{2} = \{ \alpha \otimes u_{1}(k) \oplus \beta \otimes u_{2}(k) \}_{k=1}^{\infty \protect \rule [-0.25mm]{0mm}{0mm}}\protect \rule [-1.75mm]{0mm}{0mm}\) (with initial condition α ⊗ x1,0 ⊕ β ⊗ x2,0) is given by α ⊗ y1 ⊕ β ⊗ y2. This explains why DESs that can be described by a model of the form (10)–(11) are called max-plus linear.
Let \(p \in \mathbb {N} \setminus \{0\}\). If we define
$$ \begin{array}{@{}rcl@{}} Y & =& \left[\begin{array}{llll} y^{\mathrm{T}}(1) & y^{\mathrm{T}}(2) & {\ldots} & y^{\mathrm{T}}(p) \end{array}\right]^{\mathrm{T}} \\ U & =& \left[\begin{array}{llll} u^{\mathrm{T}}(1) & u^{\mathrm{T}}(2) & {\ldots} & u^{\mathrm{T}}(p) \end{array}\right]^{\mathrm{T}} \enspace , \end{array} $$
then (16) results in
$$ \begin{array}{@{}rcl@{}} Y = H \otimes U \oplus G \otimes x(0) \end{array} $$
(17)
with
$$ \begin{array}{@{}rcl@{}} H = \left[\begin{array}{cccc} C \otimes B & \varepsilon & {\ldots} & \varepsilon \\ C \otimes A \otimes B & C \otimes B & {\ldots} & \varepsilon \\ {\vdots} & {\vdots} & {\ddots} & {\vdots} \\ C \otimes {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{p-1}}} \otimes B & C \otimes {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{p-2}}} \otimes B & \ldots & C \otimes B \end{array}\right] , {\kern.7cm} G = \left[\begin{array}{c} C \\ C \otimes A \\ {\vdots} \\ C \otimes {A}^{{\scriptscriptstyle\otimes}^{\scriptstyle{p-1}}} \end{array}\right] . \end{array} $$
For the production system of Example 7 this means that if we know the time instants at which raw material is fed to the system and we know the initial state x(0), we can compute the time instants at which the finished products will leave the system. Often we assume that x(0) = εn×1. For the simple production system of Example 7 this would mean that all the buffers are initially empty.
Example 8
Consider the production system of Example 7. Define \(Y = \left [\begin {array}{llll} y(1) & y(2) & y(3) & y(4) \end {array}\right ]^{\mathrm {T}}\) and \(U = \left [\begin {array}{llll} u(1) & u(2) & u(3) & u(4) \end {array}\right ]^{\mathrm {T}}\). If x(0) = ε3×1 then we have Y = H ⊗ U with
$$ \begin{array}{@{}rcl@{}} H = \left[\begin{array}{rrrr} 21 & \varepsilon & \varepsilon & \varepsilon \\ 32 & 21 & \varepsilon & \varepsilon \\ 43 & 32 & 21 & \varepsilon \\ 55 & 43 & 32 & 21 \end{array}\right] \enspace . \end{array} $$
If we feed raw material to the system at time instants u(1) = 1, u(2) = 8, u(3) = 15, u(4) = 19, the finished products will leave the system at time instants y(1) = 22, y(2) = 33, y(3) = 44, and y(4) = 56 since
$$ H \otimes \left[\begin{array}{r} 1 \\ 8 \\ 15 \\ 19 \end{array}\right] = \left[\begin{array}{r} 22 \\ 33 \\ 44 \\ 56 \end{array}\right] \enspace . $$
□
Now we consider the autonomous max-plus linear DES described by
$$ \begin{array}{@{}rcl@{}} x(k+1) & =& A \otimes x(k) \\ y(k) & =& C \otimes x(k) \end{array} $$
with x(0) = x0. For the production system of Example 7 this would mean that we start from a situation in which some internal buffers and all the input buffer are not initially empty (if x0≠εn×1) and that afterwards the raw material is fed to the system at such a rate that the input buffers never become empty.
If the system matrix A of the autonomous DES is irreducible, then we can compute the “ultimate” behavior of the autonomous DES by solving the max-plus-algebraic eigenvalue problem A ⊗ v = λ ⊗ v. By Theorem 1 there exist integers \(k_{0} \in \mathbb {N}\) and \(c \in \mathbb {N} \setminus \{0\}\) such that \(x(k+c) = {\lambda }^{{\scriptscriptstyle \otimes }^{\scriptstyle {c}}} \otimes x(k)\) for all \(k \geqslant k_{0}\). This means that
$$ \begin{array}{@{}rcl@{}} x_{i}(k+c) - x_{i}(k) = c \lambda \end{array} $$
(18)
for i = 1,2,…, n and for all \(k \geqslant k_{0}\). From this relation it follows that for a production system the average time duration of a cycle of the production process when the system has reached its cyclic behavior will be given by λ. The average production rate will then be equal to \(\frac {1}{\lambda }\). This also enables us to calculate the utilization levels of the various machines in the production process. Furthermore, some algorithms to compute the eigenvalue also yield the critical paths of the production process and the bottleneck machines (Cohen et al. 1985).
Example 9
The system matrix A of the production system of Example 7 is not irreducible and it does not lead to a behavior of the formFootnote 6 (18). In fact, it can be verified that A has three eigenvalues λ1 = 12, λ2 = 11, and λ3 = 7, with corresponding eigenvectors
$$ v_{1} = \left[\begin{array}{r} 0 \\ \varepsilon \\ 12 \end{array}\right], v_{2}= \left[\begin{array}{r} \varepsilon \\ 0 \\ 12 \end{array}\right], \text{ and } v_{3} = \left[\begin{array}{r} \varepsilon \\ \varepsilon \\ 0 \end{array}\right]. $$
Now consider x(0) = [012]T and compute x(k + 1) = A ⊗ x(k) for \(k=0,\dots ,4\). This yields
$$ x(1) = \left[\begin{array}{r} 12 \\ 12 \\ 24 \end{array}\right], x(2) = \left[\begin{array}{r} 24 \\ 23 \\ 36 \end{array}\right], x(3) = \left[\begin{array}{r} 36 \\ 34 \\ 48 \end{array}\right], x(4) = \left[\begin{array}{r} 48 \\ 45 \\ 60 \end{array}\right], \text{ and } x(5) = \left[\begin{array}{r} 60 \\ 56 \\ 72 \end{array}\right]. $$
So by choosing k0 = 1, we see that for k ≥ k0 the first and the third element of x satisfies xi(k + c) − xi(k) = cλ1 for i = 1or3 with c = 1, but the second element of x satisfies x2(k + c) − x2(k) = cλ2 with c = 1, which means that (18) does not hold in this case.
Control of max-plus linear DES
The basic control problem for max-plus linear DESs consists in determining the optimal input times (e.g., feeding times of raw material or starting times of processes or activities) for a given reference signal (e.g., due dates for the finished products or completion dates for processes or activities). In the literature many different approaches are described to solve this problem. Among these the most common ones are based on residuation and on model predictive control (MPC). Residuation essentially consists in finding the largest solution to a system of max-plus inequalities with the input times as variables and the due dates as upper bounds. The MPC approach is essentially based on the minimization of the error between the actual output times and the due dates, possibly subject to additional constraints on the inputs and the outputs.
Remark 1
For simplicity, we only consider single-input single-output (SISO) systems in this section. Note however that MPC can very easily be extended to multi-input multi-output (MIMO) systems.
Residuation-based control
The basic control problem for max-plus linear DESs consists in determining the optimal feeding times of raw material to the system and/or the optimal starting times of the (internal) processes.
Consider (17) with x(0) = εn×1. If we know the vector Y of latest times at which the finished products have to leave the system, we can compute the vector U of (latest) time instants at which raw material has to be fed to the system by solving the system of max-plus linear equations H ⊗ U = Y, if this system has a solution, or by determining the largest subsolution of H ⊗ U = Y, i.e., determining the largest U such that \(H \otimes U \leqslant Y\). This approach is also based on residuation (Blyth and Janowitz 1972).
Note that the method above corresponds to just-in-time production. However, if we have perishable goods it is sometimes better to minimize the maximal deviation between the desired and the actual finishing times. In that case we have to solve the problem
$$ {\displaystyle\min_{U}} {\displaystyle\max_{i}} | (Y - H \otimes U )_{i} |. $$
(19)
This problem can be solved using formula (7).
Example 10
Let us again consider the production system of Example 7 and the matrix H and the vectors U and Y as defined in Example 8. If the finished parts should leave the system before time instants 21, 32, 48, and 55 and if we want to feed the raw material to the system as late as possible, then we should feed raw material to the system at time instants 0, 11, 23, 34 since the largest subsolution of \( H \otimes U = Y = \left [\begin {array}{llll} 21 & 32 & 48 & 55 \end {array}\right ]^{\mathrm {T}} \) is \(\hat {U} = \left [\begin {array}{llll} 0 & 11 & 23 & 34 \end {array}\right ]^{\mathrm {T}}\). The actual output times \(\hat {Y}\) are given by \(\hat {Y} = H \otimes \hat {U} = \left [\begin {array}{llll} 21 & 32 & 44 & 55 \end {array}\right ]^{\mathrm {T}}\). Note that \(\hat {Y}\leq Y\). The largest deviation δ between the desired and the actual output times is equal to 4. The input times that minimize this deviation are given by \( \tilde {U} = \hat {U} \otimes \frac {\delta }{ 2 } = \hat {U} \otimes 2 = \left [\begin {array}{llll} 2 & 13 & 25 & 36 \end {array}\right ]^{\mathrm {T}}\). The corresponding output times are given by \(\tilde {Y} = \left [\begin {array}{llll} 23 & 34 & 46 & 57 \end {array}\right ]^{\mathrm {T}}\). Note that the largest deviation between the desired finishing and the actual finishing times is now equal to \(\frac {\delta }{ 2 }=2\), which means that the maximal deviation between the desired (Y) and the actual (\(\tilde {Y}\)) finishing times is minimized.
The residuation-based approach for computing the optimal feeding times is used in one form or another in Boimond and Ferrier (1996); Cottenceau et al. (2001); Goto (2008); Hardouin et al. (2009); Houssin et al. (2013); Lahaye et al. (2008); Maia et al. (2003); Menguy et al. (1997, 2000a, b); Menguy and Boimond (1998).
In particular, Libeaut and Loiseau (1995) have applied the geometric approach and residuation theory in order to find the optimal input. The geometric approach is a collection of mathematical concepts developed to achieve a better and neater insight into the most important features of multi-variable linear dynamical systems in connection with compensator and regulator synthesis problems. It is based on the state space representation and it also easily links SISO and MIMO systems and clarifies in a concise and elegant way some common properties that cannot be obtained by the transform-based techniques usually adopted in the SISO case. Related work can be found in Ilchmann (1989). Using these results, in Libeaut and Loiseau (1995) the set of admissible initial conditions of a linear system is defined and characterized geometrically and the optimal input is computed by applying residuation theory. In Boimond and Ferrier (1996) the Internal Model Control (IMC) structure used in conventional control theory is extended to deterministic max-plus linear DESs. The IMC philosophy relies on the internal model principle, which states that control can be achieved only if the control system encapsulates, either implicitly or explicitly, some representation of the process to be controlled; a comprehensive explanation can be found in Garcia and Morari (1982). The controller design raises the problem of model inversion, where the residuation approach also plays an important role. In Menguy et al. (1997), a feedback control structure is proposed to be able to take into account a possible mismatch between the system and its model. Instead of adopting the commonly used IMC approach for closed-loop systems, the authors proposed another closed-loop control structure consisting in applying an open-loop control approach that is modified by using the system output behavior. In fact, the model is initially supposed to be exact; subsequently, the control structure is modified by using the system output in order to be as close as possible to the optimal system control. The optimization problem is solved using residuation. The method of Menguy et al. (1998) is also based on inverting a dynamic system and applying residuation theory. The proposed control structure is based on adaptive control and encompasses both identification and inversion of a dynamic system. In Lahaye et al. (2008), a just-in-time optimal control for a first-in first-out (FIFO) time event graph is proposed based on residuation theory. The aim is to compute the largest control u such that the firing dates of output transitions (or simply the output signals) occur at the latest before the desired ones. In Brunsch et al. (2012), Brunsch and Raisch (2012), and David-Henriet et al. (2017) residuation-based control is applied for max-plus linear systems arising in the context of manufacturing systems and of high-throughput screening (e.g., for the pharmaceutical industry).
Note that the sequence \(u(1),u(2),\dots ,u(N)\) of the feeding times should be non-decreasing as it corresponds to a sequence of consecutive feeding times. However, in general a residuation-based solution does not always satisfy this property. This problem can be overcome by projection onto the set of non-increasing sequences as in the approach proposed by Menguy et al. (2000a). In addition, an initial state x(0) that is not necessarily equal to εn×1 can be included and an explicit form can be derived for the residuation controller. The resulting expression involves the operations minimization and addition from the min-plus algebra, which is the dual of the max-plus algebra and which has minimization (\(\oplus ^{\prime }\)) and addition (\(\otimes ^{\prime }\)) as basic operations with the zero element \(\varepsilon ^{\prime }=\infty \). More specifically, the residuation controller is now given by the following expression (van den Boom and De Schutter 2014):
$$ \hat{U} = S \otimes^{\prime} (-H^{T}) \otimes^{\prime} \left( G \otimes x(0) \oplus H \otimes U_{0} \oplus Y\right) $$
(20)
where U0 and S are respectively a vector with p components and a p by p matrix defined asFootnote 7
$$ \begin{array}{@{}rcl@{}} U_{0} & =& \left[\begin{array}{rrrr} u(0) & u(0) & {\cdots} & u(0) \end{array}\right]^{\mathrm{T}} \\ S & =& \left[\begin{array}{cccc} 0 & & {\cdots} & 0 \\ \varepsilon^{\prime} & {\ddots} & {\ddots} & {\vdots} \\ {\vdots} & {\ddots} & {\ddots} & \\ \varepsilon^{\prime} & {\cdots} & \varepsilon^{\prime} & 0 \end{array}\right] \enspace . \end{array} $$
Model predictive control
A somewhat more advanced control approach for max-plus linear DESs has been developed by De Schutter and van den Boom (2001). This approach is an extension to max-plus linear DESs of the model-based predictive control approach called Model Predictive Control (MPC) (Camacho and Bordons 1995; Maciejowski 2002; Rawlings and Mayne 2009) that has originally been developed for time-driven systems.
The main advantage of the MPC method of De Schutter and van den Boom (2001), comparing to other available methods for control design in max-plus linear DES, is that it allows to include general linear inequality constraints on the inputs, states, and outputs of the system.
In MPC for max-plus linear DESs at each event step k the controller computes the input sequence \(u(k),\dots ,u(k+N_{\mathrm {p}}-1)\) that optimizes a performance criterion J over the next Np event steps, where Np is called the prediction horizon, subject to various constraints on the inputs, states, and outputs of the system. Typically, the performance criterion
$$ J = J_{\text{out}} + \lambda J_{\text{in}} $$
aims at minimizing the difference or the tardiness with respect to a due date signal r(⋅), while at the same time making the inputs as large as possible (just-in-time production) where λ ∈ (0,1) is a weighting factor. A typical choice for the output cost function is
$$ \begin{array}{@{}rcl@{}} J_{\text{out}} = \sum\limits_{j=0}^{N_{\mathrm{p}}-1} \sum\limits_{i=1}^{n_{y}} \max(y_{i}(k+j)-r_{i}(k+j),0) \end{array} $$
(21)
and for the input criterion function a typical choice is
$$ \begin{array}{@{}rcl@{}} J_{\text{in}} = -\sum\limits_{j=0}^{N_{\mathrm{p}}-1} \sum\limits_{l=1}^{n_{u}} u_{l}(k+j). \end{array} $$
(22)
Note that Jout penalizes late delivery and Jin penalizes early feeding times (i.e., it favors just-in-time feeding).
This results in an optimization problem that has to be solved at each event step k. In order to reduce the computational complexity, often a control horizon Nc is introduced with Nc < Np and it is assumed that the feeding rate (Δu(k + j) = u(k + j) − u(k + j − 1)) is constant after event step k + Nc, i.e., u(k + Nc + ℓ) = u(k + Nc − 1) for \(\ell =0,\dots ,N_{\mathrm {p}}-N_{\mathrm {c}}-1\). Moreover, we can also have lower and upper bound constraints on Δx(k + j), Δy(k + j), y(k + j), or linear constraints on x(k + j), y(k + j), and u(k + j). In general, this leads to a system of linear inequalities \(A_{\mathrm {c}}(k) \tilde {x}(k) + B_{\mathrm {c}}(k) \tilde {y}(k) + C_{\mathrm {c}}(k) \tilde {u}(k) \leqslant d_{\mathrm {c}}(k)\), for properly defined matrices and vectors Ac(k), Bc(k), Cc(k), and dc(k), and where
$$ \begin{array}{@{}rcl@{}} \tilde{u}(k) & =& \left[\begin{array}{lll}u(k) & {\dots} & u(k+N_{\mathrm{p}}-1) \end{array}\right]^{\text{T}} \\ \tilde{x}(k) & =& \left[\begin{array}{lll}x(k) & {\dots} & x(k+N_{\mathrm{p}}-1) \end{array}\right]^{\text{T}} \\ \tilde{y}(k) & =& \left[\begin{array}{lll}y(k) & {\dots} & y(k+N_{\mathrm{p}}-1) \end{array}\right]^{\text{T}} \enspace . \end{array} $$
Hence, at event step k the following optimization problem has to be solved:
$$ \begin{array}{@{}rcl@{}} && \min_{\tilde{u}(k),\tilde{x}(k), \tilde{y}(k)} J \end{array} $$
(23)
$$ \begin{array}{@{}rcl@{}} && \text{subject to} \\ && \quad x(k+j) = A \otimes x(k+j-1) \oplus B \otimes u(k+j-1) \quad \text{for } j=0,\dots,N_{\mathrm{p}}-1 \end{array} $$
(24)
$$ \begin{array}{@{}rcl@{}} && \quad y(k+j) = C \otimes x(k+j) ~~~\quad\qquad\qquad\qquad\qquad\qquad \text{for } j=0,\dots,N_{\mathrm{p}}-1 \end{array} $$
(25)
$$ \begin{array}{@{}rcl@{}} &&\quad {\Delta} u(k+j) \geq 0 \qquad\qquad\qquad\qquad\qquad\qquad\qquad\qquad \text{for } j=0,\dots,N_{\mathrm{c}}-1 \end{array} $$
(26)
$$ \begin{array}{@{}rcl@{}} && \quad u(k+N_{\mathrm{c}}+j) = u(k+N_{\mathrm{c}}-1) \qquad\qquad\qquad\quad\qquad \text{for } j=0,\dots,N_{\mathrm{p}}-N_{\mathrm{c}}-1 \end{array} $$
(27)
$$ \begin{array}{@{}rcl@{}} && \quad A_{\mathrm{c}}(k) \tilde{x}(k) + B_{\mathrm{c}}(k) \tilde{y}(k) + C_{\mathrm{c}}(k) \tilde{u}(k) \leqslant d_{\mathrm{c}}(k) \enspace . \end{array} $$
(28)
MPC uses a receding horizon approach. This means that once the optimal input sequence has been determined only the input for the first event step is applied to the system. Next, at event step k + 1 the new state of the system is determined or measuredFootnote 8, the prediction window is shifted, and the whole process is repeated again. This receding horizon approach introduces a feedback mechanism, which allows to reduce the effects of possible disturbances and model mismatch errors.
More information on MPC for max-plus-linear systems can be found in De Schutter and van den Boom (2001); Goto (2009); Necoara et al. (2007, 2009a); van den Boom and De Schutter (2002a). MPC for max-plus-linear systems with partial synchronization is proposed in (David-Henriet et al. 2016).
Comparison of residuation-based control and MPC for max-plus-linear systems
In this section we compare the control methods based on residuation with the ones based on MPC. We discuss four items: constraint handling, cost functions, computation time, and implementation. We end the section with a worked example.
Constraint handling
First note that the problem of solving the problem (23)–(25) with output criterion (21) and input criterion (22), but without constraints (26)–(28), is equivalent to solving the residuation problem with p = Np in a receding horizon setting. If we also take constraint (26) into account, we obtain the result from Menguy et al. (2000a) with a non-decreasing input signal, for which the explicit solution is given by (20).
As was already mentioned in the previous section, the main advantage of the MPC, compared to other available methods for control design for max-plus linear DES, is that it allows to include general linear inequality constraints on the inputs, states, and outputs of the system. This is done by writing the control law as the result of a constrained optimization problem (23)–(28). MPC is until so far the only known method to handle the constraint (28).
Different cost functions
In Section 5.2.2 we have discussed MPC with the performance criterion J = Jout + λJin where Jout and Jin are given by (21) and (22), respectively. This performance criterion results in a just-in-time control strategy, which is comparable to the ones in residuation-based control.
However, in (De Schutter and van den Boom 2001) it has been shown that MPC can handle a broad range of other performance criteria. Some alternative output criteria are
$$ \begin{array}{@{}rcl@{}} J_{\text{out},1} &=& \sum\limits_{j=1}^{N_{\mathrm{p}}} \sum\limits_{i=1}^{n_{y}} \Big| \>y_{i}(k+j)-r_{i}(k+j) \Big| \end{array} $$
(29)
$$ \begin{array}{@{}rcl@{}} J_{\text{out},2} &= &\sum\limits_{j=1}^{N_{\mathrm{p}}} \sum\limits_{i=1}^{n_{y}} \Big| {\Delta}^{2} y_{i}(k+j) \Big| \end{array} $$
(30)
where (29) does not only penalize late delivery but also any deviation from the due date, and (30) can be used if we want to balance the output rates. Some alternative input criteria are
$$ \begin{array}{@{}rcl@{}} J_{\text{in},1} &=& {\sum}_{j=1}^{N_{\mathrm{p}}} \sum\limits_{i=1,\ldots,n_{y},\>l=1,\ldots,n_{u}} \Bigl| \>y_{i}(k+j)-u_{l}(k+j-1) \Bigr| \end{array} $$
(31)
$$ \begin{array}{@{}rcl@{}} J_{\text{in},2} &=& \sum\limits_{j=1}^{N_{\mathrm{p}}-1} \sum\limits_{l=1}^{n_{u}} \Bigl| {\Delta}^{2} u_{l}(k+j) \Bigr| \end{array} $$
(32)
where (31) minimizes the maximum holding time of products in the system, and (32) balances the input rates.
Computation time
An important advantage of residuation-based control w.r.t. MPC is that of the constraint (28) is not present residuation-based control offers an analytic solution that can be computed very efficiently, while in MPC at every event step an optimization problem has to be solved numerically.
In some cases (De Schutter and van den Boom 2001) the MPC optimization will result in a linear programming problem, which can to be solved numerically and on-line in a finite number of iterative steps using reliable and fast algorithms. This is the case if we, e.g., solve the problem (23)–(28) with output criterion (21) and input criterion (22), and if the matrix Bc in constraint (28) satisfies [Bc]ij ≥ 0 for all i, j.
If the performance criterion is not convex the problem has to be solved with other optimization techniques, such as an ELCP algorithm (De Schutter and De Moor 1995), a mixed integer linear programming problem (Heemels et al. 2001; Bemporad and Morari 1999), or a optimistic programming algorithm (Xu et al. 2014).
The time required for the optimization makes model predictive control not always suitable for fast systems and/or complex problems.
Implementation
Another difference between residuation-based controllers and controllers based on MPC is the complexity in implementation.
The control law of a residuation-based controller can be written as an analytic expression, which can be implemented on a programmable logic controller (PLC), a distributed control system (DCS), or a programmable automation controller (PAC) in a straightforward way.
Most MPC controllers in industry use personal computers or dedicated microprocessor-based systems to manipulate the data and to perform the calculations, usually needing dedicated optimization software. This means that the final step in the controller design (implementation) is more complex for MPC controllers than for residuation-based controllers.
For application in industry it is important that controllers are cheap and therefore the additional performance and scope of the MPC controller should weigh up against the higher implementation costs.
Worked example
To make the above explanations more tangible, let us compare the residuation methods (19) and (20) with the MPC method (23)–(28). We assign u(0) = 15 as the initial input value and x(0) = [0214]T as the initial state. The reference signal is given as \(\{r(k)\}_{k=0}^{15}= 14, 33, 57, 76, 85, 108, 108, 108, 126, 140,\) 154,168,182,196,210,224. We compare three controller implementations:
-
Residuation-1
:
-
Here we use (19) to compute the optimal input sequence. For event step k = 1 the optimal sequence is given by \(\{u_{\text {opt}}^{\text {res-1}}(j)\}_{j=0}^{15}= 15, 12, 29, 41, 53, 65, 76,\) 87,105,119,133,147,161,175,189,203. The corresponding output sequence is given by: \(\{y_{\text {opt}}^{\text {res-1}}(j)\}_{j=0}^{15}= 21, 33, 50, 62, 74, 86, 97, 108, 126, 140, 154, 168,\) 182,196,210, 224.
-
Residuation-2
:
-
Where we use (20) to compute the optimal, non-decreasing input sequence. For event step k = 1 the optimal sequence is given by \(\{u_{\text {opt}}^{\text {res-2}}(j)\}_{j=0}^{15}= 15,\) 15,29,41,53,65,76,87, 105,119,133,147,161,175,189,203. The corresponding output sequence is given by: \(\{y_{\text {opt}}^{\text {res-2}}(j)\}_{j=0}^{15}= 21,\) 36,50,62,74,86, 97,108,126,140,154,168,182,196,210, 224.
-
Model predictive control
:
-
We solve the MPC problem (23)–(28) for Np = 10, Nc = 5 where (28) is a constraint on the increment input: Δu(k + j) ≤ 15, j = 0,…,15. Considering (21) and (22), the performance criterion is defined as J = Jout,1 + λJin with λ = 0.05. The optimal input sequence obtained for event step k = 1 is \(\{u_{\text {opt}}^{\text {MPC}}(j)\}_{j=0}^{15}= 15, 15, 29, 41, 53, 65, 76, 87, 102, 117, 132, 147, 161, 175, 189, 203\). The corresponding output sequence is given by: \(\{y_{\text {opt}}^{\text {MPC}}(j)\}_{j=0}^{15}= 21, 36, 50, 62, 74, 86,\) 97,108, 123,138,153,168,182,196,210,224.
In Fig. 3 the tracking error y(k) − r(k), k = 0,…,15 is given for the two residuation approaches and the MPC approach. All start with a tracking error of y(0) − r(0) = 7. For k = 1 the tracking error of the residuation-1 method decreases to zero, while the residuation-2 method as well as the MPC method still face a tracking error. This is due to the fact that the residuation-1 solution allows a decreasing input signal (note that \(u_{\text {opt}}^{\text {res-1}}(1) = 12 < 15 =u_{\text {opt}}^{\text {res-1}}(0)\)) and is therefore infeasible in reality. This infeasibility is caused by the fact that the solution intends to fulfill the constraint \(\tilde {y}_{\text {opt}}^{\text {res-1}}(k) = \tilde {r}(k)\), where \(y_{\text {opt}}^{\text {res-1}}\) is the obtained output sequence and \(\tilde {r}\) is the desired one, which cannot be met using a non-decreasing input sequence \(u_{\text {opt}}^{\text {res-1}}\). This is due to the fact the output obtained from an autonomous system is always less that or equal to the one obtained from (10)–(11). So, if the output of the autonomous system is not less than or equal to the reference signal, it is impossible for the real system to satisfy this condition.
The residuation-2 method (Libeaut and Loiseau 1995; Menguy et al. 1997) includes the non-decreasing input constraint and it yields a non-decreasing — and thus feasible — input sequence. Note that the residuation-2 approach is equivalent to solving MPC problem (23)–(26) for Np = 15.
For k ∈{8,9,10} we see observe that the tracking error in the MPC approach is negative. This due to the fact that the increment input signal hits the constraint Δu(k) ≤ 15. The residuation methods both show input signals with an increment larger than 15, which thus do not satisfy all the imposed constraints.