Abstract
The objective of this paper is to provide a concise introduction to the maxplus algebra and to maxplus linear discreteevent systems. We present the basic concepts of the maxplus algebra and explain how it can be used to model a specific class of discreteevent systems with synchronization but no concurrency. Such systems are called maxplus linear discreteevent systems because they can be described by a model that is “linear” in the maxplus algebra. We discuss some key properties of the maxplus algebra and indicate how these properties can be used to analyze the behavior of maxplus linear discreteevent systems. Next, some control approaches for maxplus linear discreteevent systems, including residuationbased control and model predictive control, are presented briefly. Finally, we discuss some extensions of the maxplus algebra and of maxplus linear systems.
Introduction
In recent years both industry and the academic world have become more and more interested in techniques to model, analyze, and control complex discreteevent systems (DESs) such as flexible manufacturing systems, telecommunication networks, multiprocessor operating systems, railway networks, traffic control systems, logistic systems, intelligent transportation systems, computer networks, multilevel monitoring and control systems, and so on. Although in general DESs lead to a nonlinear description in conventional algebra, there exists a subclass of DESs for which this model becomes “linear” when it is formulated in the maxplus algebra (Baccelli et al. 1992; CuninghameGreen 1979; Heidergott et al. 2006; Butkovič 2010), which has maximization and addition as its basic operations. More specifically, DESs in which only synchronization and no concurrency or choice occur can be modeled using the operations maximization (corresponding to synchronization: a new operation starts as soon as all preceding operations have been finished) and addition (corresponding to the duration of activities: the finishing time of an operation equals the starting time plus the duration). This leads to a description that is “linear” in the maxplus algebra. Therefore, DESs with synchronization but no concurrency are called maxplus linear DESs.
In the early sixties the fact that certain classes of DESs can be described by maxlinear models was discovered independently by a number of researchers, among whom CuninghameGreen (1961) and CuninghameGreen (1962) and Giffler (1960), Giffler (1963), and Giffler (1968). An account of the pioneering work of CuninghameGreen on maxplusalgebraic system theory for DESs has been given in (CuninghameGreen 1979). Related work on dioid theory and its applications has been undertaken by Gondran and Minoux (1976), Gondran and Minoux (1984b), and Gondran and Minoux (1987). In the late eighties and early nineties the topic attracted new interest due to the research of Cohen et al. (1985), Cohen et al. (1989), Olsder (1986), Olsder and Roos (1988), and Olsder et al. (1990a), and Gaubert (1990, 1992, 1993), which resulted in the publication of Baccelli et al. (1992). Since then, several other researchers have entered the field.
The class of DESs that can be described by a maxplus linear timeinvariant model is only a small subclass of the class of all DESs. However, for maxplus linear DESs there are many efficient analytic methods available to assess the characteristics and the performance of the system since one can use the properties of the maxplus algebra to analyze maxplus linear models in a very efficient way (as opposed to, e.g., computer simulation where, before being able to determine the steadystate behavior of a given DES, one may first have to simulate the transient behavior, which in some cases might require a large amount of computation time).
As will be illustrated later on in the paper, there exists a remarkable analogy between the basic operations of the maxplus algebra (maximization and addition) on the one hand, and the basic operations of conventional algebra (addition and multiplication) on the other hand. As a consequence, many concepts and properties of conventional algebra also have a maxplus analogue. This analogy also allows to translate many concepts, properties, and techniques from conventional linear system theory to system theory for maxplus linear DESs. However, there are also some major differences that prevent a straightforward translation of properties, concepts, and algorithms from conventional linear algebra and linear system theory to maxplus algebra and maxplus linear system theory for DESs. Hence, there is a need for a dedicated theory and dedicated methods for maxplus linear DESs.
In this paper we give an introduction to the maxplus algebra and to maxplus linear systems. We highlight the most important properties and analysis methods of the maxplus algebra, discuss some important characteristics of maxplus linear DES, and give a concise overview of performance analysis and control methods for maxplus linear DESs. More extensive overviews of the maxplus algebra and maxplus linear systems can be found in Baccelli et al. (1992), CuninghameGreen (1979), Gaubert (1992), Heidergott et al. (2006), and Hardouin et al. (2018). The history of how maxplus algebra became an important tool in discrete event systems since the late seventies is described in Komenda et al. (2018).
The main feature of the current survey compared to these previous works is its compactness and its focus on analysis and modelbased control for maxplus linear systems, in particular residuationbased control and model predictive control. We also include an extensive qualitative comparison between residuationbased control and model predictive control for maxplus linear systems. In addition, we provide several worked examples for basic maxplus concepts, we include several references to recent literature, and we present some results not included in previous surveys (such as, e.g., twosided systems of linear maxplus equations, systems of maxplusalgebraic polynomial equations and inequalities, and modelbased predictive control for maxplus linear systems).
Maxplus algebra
Basic operations of the maxplus algebra
The basic operations of the maxplus algebra (Baccelli et al. 1992; CuninghameGreen 1979; Heidergott et al. 2006) are maximization and addition, which will be represented by ⊕ and ⊗ respectively:
for \(x,y \in \mathbb {R}_{\varepsilon } \stackrel {\text {def}}{=} \mathbb {R} \cup \{ \infty \}\). The reason for using these symbols is that there is a remarkable analogy between ⊕ and conventional addition, and between ⊗ and conventional multiplication: many concepts and properties from linear algebra (such as the CayleyHamilton theorem, eigenvectors and eigenvalues, and Cramer’s rule) can be translated to the maxplus algebra by replacing + by ⊕ and × by ⊗ (see, e.g., Baccelli et al. (1992, Chapters 2, 3); Heidergott et al. (2006; Chapters 2, 5) CuninghameGreen (1979), Gaubert (1992), and Olsder and Roos (1988)). Therefore, we also call ⊕ the maxplusalgebraic addition, and ⊗ the maxplusalgebraic multiplication. Note however that one of the major differences between conventional algebra and maxplus algebra is that in general there do not exist inverse elements with respect to ⊕ in \(\mathbb {R}_{\varepsilon }\). The zero element for ⊕ is \(\varepsilon \stackrel {\text {def}}{=} \infty \): we have x ⊕ ε = x = ε ⊕ x and x ⊗ ε = ε = ε ⊗ x for all \(x \in \mathbb {R}_{\varepsilon }\). The structure \((\mathbb {R}_{\varepsilon },\oplus ,\otimes )\) is called the maxplus algebra.
In the sequel we denote the set of nonnegative integers by \(\mathbb {N}=\{0,1,2,\ldots \}\). Let \(r \in \mathbb {R}\). The r th maxplusalgebraic power of \(x \in \mathbb {R}\) is denoted by \({x}^{{\scriptscriptstyle \otimes }^{\scriptstyle {r}}}\) and corresponds to rx in conventional algebra. If \(x \in \mathbb {R}\) then \({x}^{{\scriptscriptstyle \otimes }^{\scriptstyle {0}}} = 0\) and the inverse element of x w.r.t. ⊗ is \({x}^{{\scriptscriptstyle \otimes }^{\scriptstyle {1}}} = x\). There is no inverse element for ε w.r.t. ⊗ since ε is absorbing for ⊗. If r > 0 then \({\varepsilon }^{{\scriptscriptstyle \otimes }^{\scriptstyle {r}}} = \varepsilon \). If r < 0 then \({\varepsilon }^{{\scriptscriptstyle \otimes }^{\scriptstyle {r}}}\) is not defined. In this paper we have \({\varepsilon }^{{\scriptscriptstyle \otimes }^{\scriptstyle {0}}} = 0\) by definition.
The rules for the order of evaluation of the maxplusalgebraic operators correspond to those of conventional algebra. So maxplusalgebraic power has the highest priority, and maxplusalgebraic multiplication has a higher priority than maxplusalgebraic addition.
Maxplusalgebraic matrix operations
The basic maxplusalgebraic operations are extended to matrices as follows. If \(A, B \in \mathbb {R}_{\varepsilon }^{m \times n}\) and \(C \in \mathbb {R}_{\varepsilon }^{n \times p}\) then
for all i, j. Note the analogy between (1)–(2) and the definitions of matrix sum and product in conventional linear algebra.
Example 1
Consider \(A = \left [\begin {array}{lll} 2 & 3 & \varepsilon \\ 1 & \varepsilon & 0 \\ 2 & 1 & 3 \end {array}\right ]\) and \(B = \left [\begin {array}{lll} \varepsilon & 5 & 1 \\ 3 & \varepsilon & 2 \\ \varepsilon & 4 & 7 \end {array}\right ]\). Following (1)–(2), we have:
The matrix ε_{m×n} is the m × n maxplusalgebraic zero matrix: (ε_{m×n})_{ij} = ε for all i, j; and the matrix E_{n} is the n × n maxplusalgebraic identity matrix: (E_{n})_{ii} = 0 for all i and (E_{n})_{ij} = ε for all i, j with i≠j. If the size of the maxplusalgebraic identity matrix or the maxplusalgebraic zero matrix is not specified, it should be clear from the context. The maxplusalgebraic matrix power of \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) is defined as follows: \({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {0}}} = E_{n}\) and \({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}} = A \otimes {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k1}}}\) for \(k\in \mathbb {N} \setminus \{0\}\).
Connection with conventional algebra via exponentials
Olsder and Roos (1988) have introduced a link between conventional algebra and the maxplus algebra based on asymptotic equivalences that allows to establish an analogy between the basic operations of the maxplus algebra (\(\max \limits \) and + ) on the one hand, and the basic operations of conventional algebra (addition and multiplication) on the other hand. As a result, many concepts and properties of conventional algebra also have a maxplus analogue. In particular, Olsder and Roos (1988) used this link to show that every matrix has at least one maxplusalgebraic eigenvalue and to prove a maxplusalgebraic version of Cramer’s rule and of the CayleyHamilton theorem. In addition, this analogy allows to translate many concepts, properties, and techniques from conventional linear system theory to system theory for maxplus linear DESs.
In De Schutter and De Moor (1997) the link introduced by Olsder and Roos (1988) has been extended and formalized. Now we recapitulate the reasoning of De Schutter and De Moor (1997) but in a slightly different form that is mathematically more rigorous.
First we extend the conventional definition of asymptotic equivalence such that we can also allow asymptotically equivalence to 0. Recall that f is asymptotically equivalent to g in the neighborhood of \(\infty \), denoted by \({f(s)} \sim {g(s)} , {s\rightarrow \infty }\), if \(\displaystyle \lim _{s \rightarrow \infty } \frac { f(s) }{g(s)} = 1\). This definition in principle requires that there is no real number K such that g is identically zero in \([K,\infty )\). However, we also say a function f is asymptotically equivalent to 0 in the neighborhood of \(\infty \): \({f(s)} \sim {0} , {s\rightarrow \infty }\) if there exists a real number L such that f(s) = 0 for all \(s \geqslant L\).
In this section we consider exponentials of the form e^{νs} with s > 0. Since we want to allow exponents that are equal to ε, we set e^{εs} equal to 0 for all positive real values of s by definition. For all \(x, y, z \in \mathbb {R}_{\varepsilon }\) we now have
where δ_{x=y} = 0 if x≠y and δ_{x=y} = 1 if x = y. The relations (3) and (4) show that there exists a connection between the operations ⊕ and ⊗ performed on elements of \(\mathbb {R}_{\varepsilon }\) and the operations + and × performed on exponentials.
Connection with graph theory
There exists a close relation between maxplus algebra (and related structures) and graphs (see, e.g., Baccelli et al. (1992 Chapter 2); Gondran and Minoux (1976, 1984a)).
Definition 1 (Precedence graph)
Consider \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\). The precedence graph of A, denoted by \(\mathcal {G}(A)\), is a weighted directed graph with vertices 1, 2, …, n and an arc (j, i) with weight a_{ij} for each a_{ij}≠ε.
It easy to verify that every weighted directed graph corresponds to the precedence graph of an appropriately defined matrix with entries in \(\mathbb {R}_{\varepsilon }\).
Now we can give a graphtheoretic interpretation of the maxplusalgebraic matrix power. Let \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\). If \(k \in \mathbb {N} \setminus \{0\}\) then we have
for all i, j. Hence, \(({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}})_{i j}\) is the maximal weight^{Footnote 1} of all paths of \(\mathcal {G}(A)\) of length k that have j as their initial vertex and i as their final vertex — where we assume that if there does not exist a path of length k from j to i, then the maximal weight is equal to ε by definition.
Example 2
Consider matrix A defined in Example 1. The precedence graph \(\mathcal {G}(A)\) of A is given in Fig. 1. Let k = 2. By direct computation (cf. Example 1), we get
Now we can check that \(({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {2}}})_{i j}\) is the maximal weight of all paths of \(\mathcal {G}(A)\) of length 2 that have j as their initial vertex and i as their final vertex. These paths and their corresponding weights are shown in Table 1. As one can see, the maximum weights are equal to the entries of \({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {2}}}\).□
A directed graph \(\mathcal {G}\) is called strongly connected if for any two different vertices i, j of the graph, there exists a path from i to j.
Definition 2 (Irreducible matrix)
A matrix \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) is called irreducible if its precedence graph \(\mathcal {G}(A)\) is strongly connected.
If we reformulate this in the maxplus algebra then a matrix \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) is irreducible if
since this condition means that for two arbitrary vertices i and j of \(\mathcal {G}(A)\) with i≠j there exists at least one path (of length 1,2,… or n − 1) from j to i.
Example 3
Let A be defined as in Example 1. The precedence graph \(\mathcal {G}(A)\) of A is given in Fig. 1. Clearly, \(\mathcal {G}(A)\) is strongly connected as there exists a path from any node in \(\mathcal {G}(A)\) to any other node, and hence A is irreducible.□
Some basic problems in the maxplus algebra
In this section we present some basic maxplusalgebraic problems and some methods to solve them.
Maxplusalgebraic eigenvalue problem
Definition 3 (Maxplusalgebraic eigenvalue)
Let \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\). If there exist \(\lambda \in \mathbb {R}_{\varepsilon }\) and \(v \in \mathbb {R}_{\varepsilon }^{n}\) with v≠ε_{n×1} such that A ⊗ v = λ ⊗ v then we say that λ is a maxplusalgebraic eigenvalue of A and that v is a corresponding maxplusalgebraic eigenvector of A.
It can be shown that matrix \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) has at least one maxplusalgebraic eigenvalue (Baccelli et al. 1992, Section 3.2.4). However, in contrast to linear algebra, the total number (multiplicities taking into account) of maxplusalgebraic eigenvalues of an n by n matrix is in general less than n. Moreover, if a matrix is irreducible, it has only one maxplusalgebraic eigenvalue (see, e.g., Cohen et al. 1985).
The maxplusalgebraic eigenvalue has the following graphtheoretic interpretation. If \(\lambda _{\max \limits }\) is the maximal average weight^{Footnote 2} over all elementary circuits of \(\mathcal {G}(A)\), then \(\lambda _{\max \limits }\) is a maxplusalgebraic eigenvalue of A. An elementary circuit is a circuit in which no vertex appears more than once, except for the initial vertex which appears exactly twice.
There exist several efficient algorithms to determine maxplusalgebraic eigenvalues such as the Karp’s algorithm (Karp 1978; Cohen et al. 1985) or the power algorithm of CochetTerrasson et al. (1998).
To determine the maxplusalgebraic eigenvectors corresponding to a given maxplusalgebraic eigenvalue, the following procedure can be applied (Karp 1978; Cohen et al. 1985).
First we introduce the Kleene star operator^{Footnote 3} of the matrix A:
The entries of A^{⋆} have the following meaning: (A^{⋆})_{ij} is the maximal weight of any path of arbitrary length in \(\mathcal {G}(A)\) between node j and node i. We also define
Let λ be^{Footnote 4} a nonε maxplusalgebraic eigenvalue of \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\). Now consider the matrix A_{λ} defined by (A_{λ})_{ij} = a_{ij} − λ. Since all paths in \(\mathcal {G}(A_{\lambda })\) will have a nonpositive weight, the matrix \(A_{\lambda }^{+}\) will have entries in \(\mathbb {R}_{\varepsilon }\). Now if \((A_{\lambda }^{+})_{ii} = 0\) for some i then \((A_{\lambda }^{+})_{\cdot i}\), the i th column of \(A_{\lambda }^{+}\), will be a maxplusalgebraic eigenvector of A for the eigenvalue λ. This can be verified as follows: Note that in general A^{⋆} = E_{n} ⊕ A^{+}. Since \((A_{\lambda }^{+})_{ii} = 0\) this implies that \((A_{\lambda }^{\star })_{\cdot i} = (A_{\lambda }^{+})_{\cdot i} \) or equivalently \(A_{\lambda } \otimes (A_{\lambda }^{+})_{\cdot i} = (A_{\lambda }^{+})_{\cdot i}\) or, since A_{λ} = A − λ or A = A_{λ} + λ = λ ⊗ A, also \(A \otimes (A_{\lambda }^{+})_{\cdot i} = \lambda \otimes (A_{\lambda }^{+})_{\cdot i}\). Hence, the i th column of \(A_{\lambda }^{+}\) is indeed a maxplusalgebraic eigenvector of A.
Example 4
Consider the (irreducible) matrix A of Examples 1 and 3. The elementary circuits of \(\mathcal {G}(A)\) are listed in Table 2. The maximum average weight is 3. Hence, λ = 3 is a maxplusalgebraic eigenvalue of A. We have \(A_{\lambda } = \left [\begin {array}{lll} 1 & 0 & \varepsilon \\ 2 & \varepsilon & 3 \\ 1 & 4 & 0 \end {array}\right ]\) and \(A_{\lambda }^{+} = \left [\begin {array}{lll} 1 & 0 & 3 \\ 2 & 2 & 3 \\ 1 & 1 & 0 \end {array}\right ]\). Since \((A_{\lambda }^{+})_{33}=0\), the third column of \(A_{\lambda }^{+}\) is a maxplusalgebraic eigenvector of A. Indeed, with \(v=\left [\begin {array}{lll} 3 & 3 & 0 \end {array}\right ]^{\mathrm {T}}\), we find \(A \otimes v = 3 \otimes v = \left [\begin {array}{lll} 0 & 0 & 3 \end {array}\right ]^{T}\).□
We also have the following property (see, e.g., Baccelli et al. (1992, Chapter 3) Cohen et al. (1985) and Gaubert (1994)):
Theorem 1
If\(A \in \mathbb {R}_{\varepsilon }\)is irreducible, then
where λis the (unique) maxplusalgebraic eigenvalue of A.
In the case where A is not irreducible the behavior of \({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\) is more complex (see, e.g., Baccelli et al. ((Baccelli et al. 1992), Chapter 3); Heidergott et al. (2006, Chapters 3, 4); De Schutter (2000)).
Example 5
For the matrix A of Example 1 we have
It can be verified that for \(k \geqslant 5\) we have \(\big ({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k+1}}}\big )_{i j} = \big ({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\big )_{i j} + 3 = 3 \otimes \big ({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\big )_{i j}\) for all i, j ∈{1,2,3}. So \({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k+1}}} = 3 \otimes {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\) for c = 1, k_{0} = 5andk = 5,6,…□
For given matrices \(A, B \in \mathbb {R}_{\varepsilon }^{n \times n}\) the generalized or twosided maxplusalgebraic eigenproblem (CuninghameGreen and Butkovič 2008; Gaubert and Sergeev 2013; Butkovič and Jones 2016) consists in finding \(\lambda \in \mathbb {R}_{\varepsilon }\) and a vector \(v \in \mathbb {R}_{\varepsilon }^{n}\) with nonε entries such that A ⊗ v = λ ⊗ B ⊗ v.
Another generalized eigenvalue problem is considered by CochetTerrasson et al. (1998), who define the generalized maxplusalgebraic eigenproblem for \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) as finding λ and v such that \(\bigoplus _{t \in \mathbb {N}} A_{t} \otimes {\lambda }^{{\scriptscriptstyle \otimes }^{\scriptstyle {t}}} \otimes v = v\).
Heidergott et al. (2006, Chapter 3) use the concept of generalized eigenmode of a regular matrix A, which is defined by the pair of vectors (η, v) with \(\eta ,v \in \mathbb {R}^{n}\) such that A ⊗ (k ⋅ η + v) = (k + 1) ⋅ η + v for all \(k \in \mathbb {N}\). The vector η coincides with the cycle time vector and can be seen as an extended eigenvalue, where v still remains the eigenvector. In Subiono and van der Woude (2017) a generalized power algorithm has been presented that computes the generalized eigenmode.
Systems of maxplus linear equations
In this section we consider three types of systems of maxplus linear equations, namely A ⊗ x = b, x = A ⊗ x ⊕ b, and A ⊗ x ⊕ b = C ⊗ x ⊕ d.
A ⊗ x = b
Let \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) and \(b \in \mathbb {R}_{\varepsilon }^{n}\). In general, the system of maxplus linear equations A ⊗ x = b will not always have a solution, even if A is square or if it has more columns than rows. Therefore, the concept of subsolution has been introduced (see CuninghameGreen(1979, Chapter 14), Baccelli et al. (1992, Section 3.2.3)).
Definition 4 (Subsolution)
Let \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) and \(b \in \mathbb {R}_{\varepsilon }^{n}\). We say that \(x \in \mathbb {R}_{\varepsilon }^{n}\) is a subsolution of the system of maxplus linear equations A ⊗ x = b if \(A \otimes x \leqslant b\).
Although the system A ⊗ x = b does not always have a solution, it always possible to determine the largest subsolution if we allow components that are equal to \(\infty \) in the solution and if we assume that \(\varepsilon \otimes \infty = \infty \otimes \varepsilon = \varepsilon \) by definition.^{Footnote 5} The largest subsolution \(\hat {x}\) of A ⊗ x = b is then given by
or equivalently,
Example 6
Consider the matrix A of Example 1 and let \(b = \left [\begin {array}{lll} 1 & 2 & 3 \end {array}\right ]^{\mathrm {T}}\). The system of equations A ⊗ x = b does not have a solution. However, the largest subsolution is given by \(\hat {x}= \left [\begin {array}{lll} 1 & 2 & 0 \end {array}\right ]^{\mathrm {T}}\), and we have \(A \otimes \hat {x} = \left [\begin {array}{lll} 1 & 0 & 3 \end {array}\right ]^{\mathrm {T}}\protect \rule {0mm}{2.6ex}\leqslant b\).□
Note that for the largest subsolution \(\hat {x}\) we have \(A \otimes \hat {x} \leqslant b\). In some cases, one may want to minimize the difference between A ⊗ x and b, i.e., to find x such that \(\smash [b]{{\displaystyle \max \limits _{i}} }  b_{i}  (A \otimes x)_{i} \) is minimized. A solution \(\tilde {x}\) of this problem is given by
We then have \({\displaystyle \max \limits _{i}}  b_{i}  (A \otimes \tilde {x})_{i}  = \frac {\delta }{2}\).
x = A ⊗ x ⊕ b
Let \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\) and \(b \in \mathbb {R}_{\varepsilon }^{n}\). Since the operation ⊕ is not invertible, an equation of the form x = A ⊗ x ⊕ b can in general not be recast into the form \(\tilde {A} \otimes x = b\) for some matrix \(\tilde {A}\).
If the entries of A^{⋆} (see (5)) all belong to \(\mathbb {R}_{\varepsilon }\), then the least solution of x = A ⊗ x ⊕ b is given by Baccelli et al. (1992, Section 3.2.3.1):
A ⊗ x ⊕ b = C ⊗ x ⊕ d
A system of twosided maxplus linear equations can be formulated as follows Walkup and Borriello (1998):
with \(A, C \in \mathbb {R}_{\varepsilon }^{m \times n}\), \(b,d \in \mathbb {R}_{\varepsilon }^{m \times 1}\), and \(x \in \mathbb {R}_{\varepsilon }^{n \times 1}\). Note that the i th equation in Eq. (8) can be expanded as
The maximum solution to an arbitrary system of linear maxplus equation can be obtained using the following three steps:
translate each linear maxplus equation into a small set of upper bound constraints, each of which bounds the values of a single variable from above (see Walkup and Borriello 1998, Section 2.1).
employ the maxplus closure operation to find the maximum solution to a special subset of the upper bound constraints (see Walkup and Borriello 1998, Section 2.2).
use that subset’s maximum solution to guide the choice of a new constraint subset which will have a smaller maximum solution (see Walkup and Borriello 1998, Section 2.3).
The last two steps are repeated until either the process converges upon a solution which meets all the upper bound constraints, or it is found that the systems is infeasible since some variable has a maximum solution of ε.
The specific case A ⊗ x = C ⊗ x has been considered in CuninghameGreen and Butkovic (2003).
Systems of maxplusalgebraic multivariate polynomial equations and inequalities
A system of multivariate polynomial equations and inequalities in the maxplus algebra is defined as follows:
Given a set of integers \(\{m_{k}\}_{k\in \mathcal {K}}\) and sets of coefficients \(\{a_{k i}\}_{k\in \mathcal {K}, i\in \mathcal {I}}, \{b_{k}\}_{k\in \mathcal {K}}\) and set of exponents \(\{c_{k i j}\}_{k\in \mathcal {K}, i\in \mathcal {I}, j\in \mathcal {J}}\) where \(\mathcal {I} = \{{1},\dots ,{m_{k}}\}, \mathcal {J} = \{{1},\dots ,{n}\}\) and \(\mathcal {K} = \{1,\ldots ,p_{\text {eq}},p_{\text {eq}}+1,\ldots ,p_{\text {eq}}+p_{\text {ineq}}\}\), find \(x \in \mathbb {R}^{n}\) such that
$$ \begin{array}{@{}rcl@{}} && \bigoplus\limits_{i=1}^{m_{k}} a_{k i} \otimes \bigotimes\limits_{j=1}^{n} {x}_{j}^{{\otimes}^{{c}_{k i j}}} = b_{k} \text{for } k=1,2,\ldots,p_{\text{eq}}, \\ && {\bigoplus}_{i=1}^{m_{k}} a_{k i} \otimes {\bigotimes}_{j=1}^{n} {x}_{j}^{{\otimes}^{{c}_{k i j}}} \leqslant b_{k} \text{for } k=p_{\text{eq}}+1,\ldots,p_{\text{eq}}+p_{\text{ineq}}. \end{array} $$
Note that the exponents c_{kij} can be negative or real. In conventional algebra the above equations can be written as
In De Schutter and De Moor (1996), De Schutter (1996), and De Schutter and De Moor (1998) it has been shown that the above problem and related maxplus problems such as computing maxplus matrix decompositions, transformation of maxplus linear state space models, state space realization of maxplus linear systems, construction of matrices with a given maxplus characteristic polynomial, and solving systems of maxminplus equations can be recast as a socalled extended linear complementarity problem (ELCP), which is defined as follows:
Given \(A \in \mathbb {R}^{p\times n}\), \(B \in \mathbb {R}^{q \times n}\), \(c \in \mathbb {R}^{p}\), \(d \in \mathbb {R}^{q}\) and m subsets ϕ_{j} of \(\{{1,2},\dots ,{p}\}\), find \(x \in \mathbb {R}^{n}\) such that
$$ \begin{array}{@{}rcl@{}} {\displaystyle\sum\limits_{j=1}^{m}} {\displaystyle{\prod}_{i \in \phi_{j}}^{}} (A x  c)_{i} = 0 \end{array} $$(9)subject to \(A x \geqslant c\) and Bx = d.
Algorithms for solving ELCPs can be found in De Schutter and De Moor (1995) (for computing the entire solution set) and in De Schutter et al. (2002) (for finding only one solution).
Maxplus linear state space models
DESs with only synchronization and no concurrency can be modeled by a maxplusalgebraic model of the following form Baccelli et al. (1992), CuninghameGreen (1979), and Heidergott et al. (2006):
with \(A \in \mathbb {R}_{\varepsilon }^{n \times n}\), \(B \in \mathbb {R}_{\varepsilon }^{n \times m}\), and \(C \in \mathbb {R}_{\varepsilon }^{l \times n}\), where m is the number of inputs and l the number of outputs. The vector x represents the state, u is the input vector, and y is the output vector of the system. It is important to note that in (10)–(11) the components of the input, the output, and the state are event times, and that the counter k in (10)–(11) is an event counter. For a manufacturing system (see also Example 7 below), u(k) typically represents the time instants at which raw material is fed to the system for the k th time, x(k) the time instants at which the machines start processing the k th batch of intermediate products, and y(k) the time instants at which the k th batch of finished products leaves the system.
Due to the analogy with conventional linear timeinvariant systems, a DES that can be modeled by (10)–(11) will be called a maxplus linear timeinvariant DES.
Typical examples of systems that can be modeled as maxplus linear DESs are production systems, railroad networks, urban traffic networks, queuing systems, and legged robots (Baccelli et al. 1992; CuninghameGreen 1979; Heidergott et al. 2006; Lopes et al. 2014). We will now illustrate in detail how the behavior of a simple manufacturing system can be described by a maxplus linear model of the form (10)–(11).
Example 7
Consider the system of Fig. 2. This production system consists of three processing units: P_{1}, P_{2}, and P_{3}. Raw material is fed to P_{1} and P_{2}, processed, and sent to P_{3} where assembly takes place. The processing times for P_{1}, P_{2}, and P_{3} are respectively d_{1} = 12, d_{2} = 11, and d_{3} = 7 time units. We assume that it takes t_{2} = 2 time units for the raw material to get from the input source to P_{2} and that it takes t_{4} = 1 time unit for the finished products of processing unit P_{2} to reach P_{3}. The other transportation times (t_{1}, t_{3}, and t_{5}) are assumed to be negligible. We assume that at the input of the system and between the processing units there are buffers with a capacity that is large enough to ensure that no buffer overflow will occur. We consider the situation where initially all buffers are empty and none of the processing units contains raw material or intermediate products. This corresponds to in fact to the case where x(0) = ε_{3×1}; if initially, some buffers or some processing units are nonempty, then we will have x(0)≠ε_{3×1}.
A processing unit can only start working on a new product if it has finished processing the previous product. We assume that each processing unit starts working as soon as all parts are available. Define
u(k): time instant at which raw material is fed to the system for the k th time,
x_{i}(k): time instant at which the i th processing unit starts working for the k th time,
y(k): time instant at which the k th finished product leaves the system.
Let us now determine the time instant at which processing unit P_{1} starts working for the k th time. If we feed raw material to the system for the k th time, then this raw material is available at the input of processing unit P_{1} at time t = u(k) + 0. However, P_{1} can only start working on the new batch of raw material as soon as it has finished processing the previous, i.e., the (k − 1)st, batch. Since the processing time on P_{1} is d_{1} = 12 time units, the (k − 1)st intermediate product will leave P_{1} at time t = x_{1}(k − 1) + 12. Since P_{1} starts working on a batch of raw material as soon as the raw material is available and the current batch has left the processing unit, this implies that we have
for \(k =1, 2, \dots \) The condition that initially processing unit P_{1} is empty and idle corresponds to the initial condition x_{1}(0) = ε since then it follows from (12) that x_{1}(1) = u(1), i.e., the first batch of raw material that is fed to the system will be processed immediately.
Using a similar reasoning we find the following expressions for the time instants at which P_{2} and P_{3} start working for the (k + 1)st time and for the time instant at which the k th finished product leaves the system:
for \(k=1,2,\dots \) The condition that initially all buffers are empty corresponds to the initial condition x_{1}(0) = x_{2}(0) = x_{3}(0) = ε.
Let us now rewrite the evolution equations of the production system using the symbols ⊕ and ⊗. It is easy to verify that (12) can be rewritten as
If we also do this for (13)–(15) and if we rewrite the resulting equations in maxplusalgebraic matrix notation, we obtain
where \(x(k) = \left [\begin {array}{lll} x_{1}(k) & x_{2}(k) & x_{3}(k) \end {array}\right ]^{\mathrm {T}}\). Note that this is a model of the form (10)–(11).
In the next section we shall use this production system to illustrate some of the maxplusalgebraic techniques that can be used to analyze maxplus linear timeinvariant DESs.
Performance analysis and control of maxplus linear systems
Analysis of maxplus linear systems
Now we present some analysis techniques for maxplus linear DESs that can be described by a model of the form (10)–(11).
First we determine the inputoutput behavior of the maxplus linear DES. We have
etc., which yields \( x(k) = {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}} \otimes x(0) \oplus {\displaystyle \bigoplus _{i=1}^{k}} {A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {ki}}} \otimes B \otimes u(i) \) for k = 1,2,… Hence,
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 u_{1} (with initial condition x_{1}(0) = x_{1,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 u_{2} (with initial condition x_{2}(0) = x_{2,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 α ⊗ x_{1,0} ⊕ β ⊗ x_{2,0}) is given by α ⊗ y_{1} ⊕ β ⊗ y_{2}. This explains why DESs that can be described by a model of the form (10)–(11) are called maxplus linear.
Let \(p \in \mathbb {N} \setminus \{0\}\). If we define
then (16) results in
with
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
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
□
Now we consider the autonomous maxplus linear DES described by
with x(0) = x_{0}. 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 x_{0}≠ε_{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 maxplusalgebraic 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
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 form^{Footnote 6} (18). In fact, it can be verified that A has three eigenvalues λ_{1} = 12, λ_{2} = 11, and λ_{3} = 7, with corresponding eigenvectors
Now consider x(0) = [012]^{T} and compute x(k + 1) = A ⊗ x(k) for \(k=0,\dots ,4\). This yields
So by choosing k_{0} = 1, we see that for k ≥ k_{0} the first and the third element of x satisfies x_{i}(k + c) − x_{i}(k) = cλ_{1} for i = 1or3 with c = 1, but the second element of x satisfies x_{2}(k + c) − x_{2}(k) = cλ_{2} with c = 1, which means that (18) does not hold in this case.
Control of maxplus linear DES
The basic control problem for maxplus 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 maxplus 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 singleinput singleoutput (SISO) systems in this section. Note however that MPC can very easily be extended to multiinput multioutput (MIMO) systems.
Residuationbased control
The basic control problem for maxplus 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 maxplus 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 justintime 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
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 residuationbased 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 multivariable 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 transformbased 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 maxplus 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 closedloop systems, the authors proposed another closedloop control structure consisting in applying an openloop 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 justintime optimal control for a firstin firstout (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 DavidHenriet et al. (2017) residuationbased control is applied for maxplus linear systems arising in the context of manufacturing systems and of highthroughput screening (e.g., for the pharmaceutical industry).
Note that the sequence \(u(1),u(2),\dots ,u(N)\) of the feeding times should be nondecreasing as it corresponds to a sequence of consecutive feeding times. However, in general a residuationbased solution does not always satisfy this property. This problem can be overcome by projection onto the set of nonincreasing 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 minplus algebra, which is the dual of the maxplus 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):
where U_{0} and S are respectively a vector with p components and a p by p matrix defined as^{Footnote 7}
Model predictive control
A somewhat more advanced control approach for maxplus linear DESs has been developed by De Schutter and van den Boom (2001). This approach is an extension to maxplus linear DESs of the modelbased predictive control approach called Model Predictive Control (MPC) (Camacho and Bordons 1995; Maciejowski 2002; Rawlings and Mayne 2009) that has originally been developed for timedriven 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 maxplus linear DES, is that it allows to include general linear inequality constraints on the inputs, states, and outputs of the system.
In MPC for maxplus 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 N_{p} event steps, where N_{p} is called the prediction horizon, subject to various constraints on the inputs, states, and outputs of the system. Typically, the performance criterion
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 (justintime production) where λ ∈ (0,1) is a weighting factor. A typical choice for the output cost function is
and for the input criterion function a typical choice is
Note that J_{out} penalizes late delivery and J_{in} penalizes early feeding times (i.e., it favors justintime 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 N_{c} is introduced with N_{c} < N_{p} and it is assumed that the feeding rate (Δu(k + j) = u(k + j) − u(k + j − 1)) is constant after event step k + N_{c}, i.e., u(k + N_{c} + ℓ) = u(k + N_{c} − 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 A_{c}(k), B_{c}(k), C_{c}(k), and d_{c}(k), and where
Hence, at event step k the following optimization problem has to be solved:
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 measured^{Footnote 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 maxpluslinear 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 maxpluslinear systems with partial synchronization is proposed in (DavidHenriet et al. 2016).
Comparison of residuationbased control and MPC for maxpluslinear 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 = N_{p} in a receding horizon setting. If we also take constraint (26) into account, we obtain the result from Menguy et al. (2000a) with a nondecreasing 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 maxplus 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 = J_{out} + λJ_{in} where J_{out} and J_{in} are given by (21) and (22), respectively. This performance criterion results in a justintime control strategy, which is comparable to the ones in residuationbased 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
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
where (31) minimizes the maximum holding time of products in the system, and (32) balances the input rates.
Computation time
An important advantage of residuationbased control w.r.t. MPC is that of the constraint (28) is not present residuationbased 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 online 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 B_{c} in constraint (28) satisfies [B_{c}]_{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 residuationbased controllers and controllers based on MPC is the complexity in implementation.
The control law of a residuationbased 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 microprocessorbased 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 residuationbased 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:
 Residuation1 :

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 {res1}}(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 {res1}}(j)\}_{j=0}^{15}= 21, 33, 50, 62, 74, 86, 97, 108, 126, 140, 154, 168,\) 182,196,210, 224.
 Residuation2 :

Where we use (20) to compute the optimal, nondecreasing input sequence. For event step k = 1 the optimal sequence is given by \(\{u_{\text {opt}}^{\text {res2}}(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 {res2}}(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 N_{p} = 10, N_{c} = 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 = J_{out,1} + λJ_{in} 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 residuation1 method decreases to zero, while the residuation2 method as well as the MPC method still face a tracking error. This is due to the fact that the residuation1 solution allows a decreasing input signal (note that \(u_{\text {opt}}^{\text {res1}}(1) = 12 < 15 =u_{\text {opt}}^{\text {res1}}(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 {res1}}(k) = \tilde {r}(k)\), where \(y_{\text {opt}}^{\text {res1}}\) is the obtained output sequence and \(\tilde {r}\) is the desired one, which cannot be met using a nondecreasing input sequence \(u_{\text {opt}}^{\text {res1}}\). 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 residuation2 method (Libeaut and Loiseau 1995; Menguy et al. 1997) includes the nondecreasing input constraint and it yields a nondecreasing — and thus feasible — input sequence. Note that the residuation2 approach is equivalent to solving MPC problem (23)–(26) for N_{p} = 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.
Related work in modeling, performance analysis, identification, and control
Modeling and performance analysis
Addad et al. (2010) present an approach to evaluate the response time in networked automation systems that use a client/server protocol. The developments introduced are derived from modeling the entire architecture in the form of timed event graphs, as well as from the resulting state space representation in maxplus algebra. Another method for deriving a maxplus linear state space representation for repetitive FIFO systems is presented in Goto and Masuda (2008).
An interesting topic is the use of network calculus as a tool to analyze the performance in communication networks and queuing networks, in particular to obtain deterministic bounds. Although network calculus is originally based on minplus algebra, alternative formulations can be developed based on maxplus algebra (Liebeherr 2017). In Bouillard and Thierry (2008) some efficient algorithms, implementing network calculus operations for some classical functions, have been provided as well as the analysis of their computational complexity.
Other related work on modeling and analysis different types of systems using maxplus algebra can be found in Declerck (2011), Shang and Sain (2009), Tao et al. (2013), Addad et al. (2012), Lu et al. (2012), Goto and Takahashi (2012), NaitSidiMoh et al. (2009), Addad et al. (2011), Su and Woeginger (2011), Ferreira Cândido et al. (2018), and Adzkiya et al. (2015).
In (van den Boom and De Schutter 2006; 2012) switching maxplus linear systems were introduced as an extension of maxplus linear systems. The system can switch between different modes, where in each mode the system is described by a maxpluslinear state equation and a maxpluslinear output equation, with different system matrices for each mode.
Identification and verification
In Schullerus et al. (2006) the problem of designing adequate input signals for state space identification of maxplus linear systems is addressed. This work constitutes an improvement compared to the existing methods by adding additional constraints due to safety or performance requirements on input and output signals besides reducing the computational burden of the already existing models.
Observer design for maxplus linear systems is considered in Hardouin et al. (2010) and Hardouin et al. (2017). Stochastic filtering of maxplus linear systems with bounded disturbances is discussed in SantosMendes et al. (2019).
Adzkiya et al. (2013) develop a method to generate finite abstractions (i.e., simplified representations that still capture a given behavior or feature of the original system) of maxpluslinear models. This approach enables the study — in a computationally efficient way — of general properties of the original maxpluslinear model by verifying (via model checking) equivalent logical specifications over the finite abstraction. Related work is reported in Esmaeil Zadeh Soudjani et al. (2016).
Control
In Katz (2007) the extension of the geometric approach to linear systems over the maxplus algebra is presented. This approach is based on the state space representation rather than using residuation methods; however, it is still different from the MPC approach. The aim is to compute the set of initial states for which there exists a sequence of control vectors that makes the state of system (10) converge in the given space. Related work is described in Shang (2013) and Shang et al. (2016).
An important topic in the study of control for maxplus linear system is the incorporation of uncertainty in the system parameters. Note that noise and parameter uncertainty in maxplus linear systems will appear in a maxplusmultiplicative way as perturbations of the system parameters (Olsder et al. 1990b), usually leading to delays in the system, even if the uncertainty has a zero mean. This perturbation can have a bounded character or it can be modeled in a stochastic way. The bounded case has been studied in Lahaye et al. (1999), Lhommeau et al. (2004), van den Boom and De Schutter (2002b), and Necoara et al. (2009b). In (van den Boom and De Schutter 2004) it is shown that the stochastic MPC problem can be recast into a convex optimization problem. To reduce the complexity of the stochastic MPC optimization problem Farahani et al. (2016) use the moments of a random variable to obtain approximate solution using less computation time. Xu et al. (2019) introduced chance constraints in the MPC problem for stochastic maxplus linear systems.
Related work on control of maxplus DESs can be found in Amari et al. (2012), Başar and Bernhard (1995), Commault (1998), Declerck and Alaoui (2010), Hruz and Zhou (2007), Maia et al. (2011), McEneaney (2004), Kordonis et al. (2018), Gonçalves et al. (2017), and Wang et al. (2017).
Summary
This paper has presented a survey of the basic notions of the maxplus algebra and maxplus linear discreteevent systems (DESs). We have introduced the basic operations of the maxplus algebra and presented some of the main definitions, theorems, and properties of the maxplus algebra. Next, we have given an introduction to maxplus linear DES, and discussed some elementary analysis and control methods for maxplus linear DESs including worked examples.
Notes
The weight of a path is defined as the sum of the weights of the arcs in the path.
The average weight of a path is the weight of the path divided by the length of the path.
Note the analogy between the definition of A^{⋆} and the Taylor series expansion of (I − A)^{− 1} in conventional algebra. This is related to solution of linear equations of the form x = A ⊗ x ⊕ b, see Section 3.2.2.
If λ = ε then any vector v such that v_{i} = ε if the i th column of A contains a nonε entry will be a maxplusalgebraic eigenvector of A.
Accordingly, ε − ε = ε.
Due to the structure of the system matrix A it is easy to verify that \(\big ({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\big )_{11}{12}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\) and \(\big ({A}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\big )_{22}={11}^{{\scriptscriptstyle \otimes }^{\scriptstyle {k}}}\) for all \(k \geqslant 1\). Hence, the relation given in Theorem 1 does not hold in this case.
Recall that in this section we consider SISO systems (cf. Remark 1).
See van den Boom and De Schutter (2002a) for a discussion of causality issues that arise in this context for maxplus linear DESs and that do not play a role for conventional timedriven systems.
References
Addad B, Amari S, Lesage JJ (2010) Analytic calculus of response time in networked automation systems. IEEE Trans Autom Sci Eng 7(4):858–869
Addad B, Amari S, Lesage JJ (2011) Clientserver networked automation systems reactivity: Deterministic and probabilistic analysis. IEEE Trans Autom Sci Eng 8(3):540–548
Addad B, Amari S, Lesage JJ (2012) Networked conflicting timed event graphs representation in (max, plus) algebra. Discrete Event Dyn Syst Theory Appl 22 (4):429–449
Adzkiya D, De Schutter B, Abate A (2013) Finite abstractions of maxpluslinear systems. IEEE Trans Autom Control 58(12):3039–3053
Adzkiya D, De Schutter B, Abate A (2015) Computational techniques for reachability analysis of maxpluslinear systems. Automatica 53:293–302
Amari S, Demongodin I, Loiseau JJ, Martinez C (2012) Maxplus control design for temporal constraints meeting in timed event graphs. IEEE Trans Autom Control 57(2):462–467
Baccelli F, Cohen G, Olsder G, Quadrat J (1992) Synchronization and Linearity. Wiley, New York
Başar T, Bernhard P (1995) \(\mathrm {H}_{\infty }\)optimal Control and Related Minimax Design Problems, 2nd edn. Birkhauser, Boston
Bemporad A, Morari M (1999) Control of systems integrating logic, dynamics, and constraints. Automatica 35(3):407–427
Blyth T, Janowitz M (1972) Residuation Theory. Pergamon Press, Oxford
Boimond J, Ferrier J (1996) Internal model control and maxalgebra: Controller design. IEEE Trans Autom Control 41(3):457–461
Bouillard A, Thierry E (2008) An algorithmic toolbox for network calculus. Discrete Event Dyn Syst 18(1):3–49
Brunsch T, Raisch J (2012) Modeling and control of highthroughput screening systems in a maxplus algebraic setting. Eng Appl of Artif Intell 25(4):720–727
Brunsch T, Raisch J, Hardouin L (2012) Modeling and control of highthroughput screening systems. Control Eng Practice 20(1):14–23
Butkovič P (2010) MaxLinear Systems: Theory and algorithms. Springer Monographs in Mathematics. Springer, Berlin
Butkovič P, Jones D (2016) On special cases of the generalized maxplus eigenproblem. SIAM J Matrix Anal Appl 37(3):1002–1021
Camacho E, Bordons C (1995) Model Predictive Control in the Process Industry. Springer, Berlin
CochetTerrasson J, Cohen G, Gaubert S, McGettrick M, Quadrat J (1998) Numerical computation of spectral elements in maxplus algebra. In: Proceedings of the IFAC Conference on System Structure and Control (SSC’98), Nantes, France, pp 699–706
Cohen G, Dubois D, Quadrat J, Viot M (1985) A linearsystemtheoretic view of discreteevent processes and its use for performance evaluation in manufacturing. IEEE Trans Autom Control 30(3):210–220
Cohen G, Moller P, Quadrat J, Viot M (1989) Algebraic tools for the performance evaluation of discrete event systems. Proc IEEE 77(1):39–58
Commault C (1998) Feedback stabilization of some event graph models. IEEE Trans Autom Control 43(10):1419–1423
Cottenceau B, Hardouin L, Boimond JL, Ferrier JL (2001) Model reference control for timed event graphs in dioids. Automatica 37(9):1451–1458
CuninghameGreen R (1961) Process synchronisation in a steelworks – a problem of feasibility. In: Banbury J, Maitland J (eds) Proceedings of the 2nd International Conference on Operational Research (AixenProvence, France 1960). English Universities Press, London, pp 323–328
CuninghameGreen R (1962) Describing industrial processes with interference and approximating their steadystate behaviour. Oper Res Q 13(1):95–100
CuninghameGreen R (1979) Minimax Algebra, Lecture Notes in Economics and Mathematical Systems, vol 166. Springer, Berlin
CuninghameGreen R, Butkovic P (2003) The equation a × x = b ⊗ y over \((\max \limits ,+)\). Theor Comput Sci 293:3–12
CuninghameGreen R, Butkovič P (2008) Generalised eigenproblem in max algebra. In: Proceedings of the 9th International Workshop on Discrete Event Systems (WODES’08), Göteborg, Sweden, pp 236–241
DavidHenriet X, Hardouin L, Raisch JBC (2016) Model predictive control for discrete event systems with partial synchronization. Automatica 70:9–13
DavidHenriet X, Hardouin L, Raisch J (2017) Maxpluslinear systems for modeling and control of manufacturing problems. In: Ghezzi L, Hömberg D, Landry C (eds) Math for the Digital Factory, Mathematics in Industry, vol 27. Springer, Berlin, pp 37–60
De Schutter B (1996) Maxalgebraic system theory for discrete event systems. PhD thesis, Faculty of Applied Sciences K.U.Leuven, Leuven, Belgium
De Schutter B (2000) On the ultimate behavior of the sequence of consecutive powers of a matrix in the maxplus algebra. Linear Algebra Appl 307(1–3):103–117
De Schutter B, De Moor B (1995) The extended linear complementarity problem. Math Program 71(3):289–325
De Schutter B, De Moor B (1996) A method to find all solutions of a system of multivariate polynomial equalities and inequalities in the max algebra. Discrete Event Dyn Syst: Theory Appl 6(2):115–138
De Schutter B, De Moor B (1997) The singular value decomposition in the extended max algebra. Linear Algebra Appl 250:143–176
De Schutter B, De Moor B (1998) The QR decomposition and the singular value decomposition in the symmetrized maxplus algebra. SIAM J Matrix Anal Appl 19 (2):378–406
De Schutter B, van den Boom T (2001) Model predictive control for maxpluslinear discrete event systems. Automatica 37(7):1049–1056
De Schutter B, Heemels W, Bemporad A (2002) On the equivalence of linear complementarity problems. Oper Res Lett 30(4):211–222
Declerck P (2011) From extremal trajectories to token deaths in ptime event graphs. IEEE Trans Autom Control 56(2):463–467
Declerck P, Alaoui MKD (2010) Optimal control synthesis of timed event graphs with interval model specifications. IEEE Trans Autom Control 55(2):518–523
Esmaeil Zadeh Soudjani S, Adzkiya D, Abate A (2016) Formal verification of stochastic maxpluslinear systems. IEEE Trans Automat Control 61(10):2861–2876
Subiono FK, van der Woude J (2017) On a generalization of power algorithms over maxplus algebra. Discrete Event Dyn Syst 27:181–203
Farahani SS, van den Boom TJ, van der Weide H, De Schutter B (2016) An approximation method for computing the expected value of maxaffine expressions. Eur J Control 27:17–27
Ferreira Cândido R, Hardouin L, Lhommeau M, Santos Mendes R (2018) Conditional reachability of uncertain max plus linear systems. Automatica 94:426–435
Garcia CE, Morari M (1982) Internal model control: a unifying review and some new results. Ind Eng Chem Process Des Dev 21(2):308–323
Gaubert S (1990) An algebraic method for optimizing resources in timed event graphs. In: Bensoussan A, Lions J (eds) Proceedings of the 9th International Conference on Analysis and Optimization of Systems (Antibes, France, Jun. 1990), Berlin, Germany: SpringerVerlag, Lecture Notes in Control and Information Sciences, vol 144, pp 957–966
Gaubert S (1992) Théorie des systèmes linéaires dans les dioïdes PhD thesis. Ecole Nationale Supérieure des Mines de, Paris, France
Gaubert S (1993)
Gaubert S (1994) On rational series in one variable over certain dioids. Tech. Rep. 2162 INRIA, Le Chesnay, France
Gaubert S, Sergeev S (2013) The level set method for the twosided eigenproblem
Giffler B (1960) Mathematical solution of production planning and scheduling problems. Tech. rep., IBM ASDD
Giffler B (1963) Scheduling general production systems using schedule algebra. Nav Res Logist Quart 10(3):237–255
Giffler B (1968) Schedule algebra: a progress report. Nav Res Logist Quart 15 (2):255–280
Gonçalves V, Maia C, Hardouin L (2017) On maxplus linear dynamical system theory: The regulation problem. Automatica 75:202–209
Gondran M, Minoux M (1976) Eigenvalues and eigenvectors in semimodules and their interpretation in graph theory. In: Proceedings of the 9th International Mathematical Programming Symposium, Budapest, Hungary, pp 333–348
Gondran M, Minoux M (1984a) Graphs and Algorithms. Wiley, Chichester
Gondran M, Minoux M (1984b) Linear algebra in dioids: A survey of recent results. Annals of Discrete Mathematics 19:147–163
Gondran M, Minoux M (1987) Dioïd theory and its applications. In: Algèbres exotiques et systèmes à evénements discrets, CNRS/CNET/INRIA seminar, CNET, IssylesMoulineaux, France, pp 57–75
Goto H (2008) Dual representation and its online scheduling method for eventvarying DESs with capacity constraints. Int J Control 81(4):651–660
Goto H (2009) Robust MPL scheduling considering the number of inprocess jobs. Eng Appl Artif Intell 22(4–5):603–607
Goto H, Masuda S (2008) Monitoring and scheduling methods for MIMOFIFO systems utilizing maxplus linear representation. Industrial Engineering & Management Systems 7(1):23–33
Goto H, Takahashi H (2012) Efficient representation of the state equation in maxplus linear systems with interval constrained parameters. IEICE Transactions on Fundamentals of Electronics Communications and Computer Sciences E95A(2):608–612
Hardouin L, Cottenceau B, Lhommeau M, Corronc EL (2009) Interval systems over idempotent semiring. Linear Algebra Appl 431(57):855–862
Hardouin L, Maia CA, Cottenceau B, Lhommeau M (2010) Observer design for (max,+) linear systems. IEEE Trans Autom Control 55(2):538–543
Hardouin L, Shang Y, Maia CA, Cottenceau B (2017) Observerbased controllers for maxplus linear systems. IEEE Trans Autom Control 62(5):2153–2165
Hardouin L, Cottenceau B, Shang Y, Raisch J (2018) Control and state estimation for maxplus linear systems. Foundations and Trends in Systems and Control 6(1):1–116
Heemels W, De Schutter B, Bemporad A (2001) Equivalence of hybrid dynamical models. Automatica 37(7):1085–1091
Heidergott B, Olsder G, van der Woude J (2006) Max Plus at Work. Princeton University Press, Princeton
Houssin L, Lahaye S, Boimond JL (2013) Control of (max,+)linear systems minimizing delays. Discrete Event Dyn Syst 23(3):261–276
Hruz B, Zhou M (2007) Modeling and Control of Discreteevent Dynamic Systems, 1st edn. Springer, London
Ilchmann A (1989) Timevarying control systems : a geometric approach. IMA J Math Control Inf 6:411–440
Karp R (1978) A characterization of the minimum cycle mean in a digraph. Discret Math 23:309–311
Katz R (2007) Maxplus (a, B)invariant spaces and control of timed discreteevent systems. IEEE Trans Autom Control 52(2):229–241
Komenda J, Lahaye S, Boimond JL, van den Boom T (2018) Maxplus algebra in the history of discrete event systems. Annu Rev Control 45:240–249
Kordonis I, Maragos P, Papavassilopoulos G (2018) Stochastic stability in maxproduct and maxplus systems with Markovian jumps. Automatica 92:123–132
Lahaye S, Boimond JL, Hardouin L (1999) Timed event graphs with variable resources: asymptotic behavior, representation in (min,+) algebra. Journal Europé,en des Systèmes Automatisés 33:1015–1032
Lahaye S, Boimond JL, Ferrier JL (2008) Justintime control of timevarying discrete event dynamic systems in (max,+) algebra. Int J Prod Res 46(19):5337–5348
Lhommeau M, Hardouin L, Cottenceau B, Jaulin L (2004) Interval analysis and dioid: application to robust controller design for timed event graphs. Automatica 40(11):1923–1930
Libeaut L, Loiseau J (1995) Admissible initial conditions and control of timed event graphs. In: Proceedings of the 34th IEEE Conference on Decision and Control, New Orleans, Louisiana, pp 2011–2016
Liebeherr J (2017) Duality of the maxplus and minplus network calculus. Foundations and Trends in Networking 11(3–4):139–282
Lopes G, Kersbergen B, van den Boom T, De Schutter B, Babuška R (2014) Modeling and control of legged locomotion via switching maxplus models. IEEE Trans Robot 30(3):652–665
Lu Q, Madsen M, Milata M, Ravn S, Fahrenberg U, Larsen KG (2012) Reachability analysis for timed automata using maxplus algebra. J Logic and Algebr Progr 81(3):298–313
Maciejowski J (2002) Predictive Control with Constraints. Prentice Hall, Harlow
Maia C, Hardouin L, SantosMendes R, Cottenceau B (2003) Optimal closedloop control of timed event graphs in dioids. IEEE Trans Autom Control 48 (12):2284–2287
Maia C, Andrade C, Hardouin L (2011) On the control of maxplus linear system subject to state restriction. Automatica 47(5):988–992
McEneaney W (2004) Maxplus eigenvector methods for nonlinear hinfinity problems: Error analysis. SIAM J Control Optim 43:379–412
Menguy E, Boimond J, Hardouin L (1997) A feedback control in maxalgebra. In: Proceedings of the European Control Conference (ECC’97), Brussels, Belgium, paper 487
Menguy E, Boimond J, Hardouin L (1998) Adaptive control for linear systems in maxalgebra. In: Proceedings of the International Workshop on Discrete Event Systems (WODES’98), Cagliari, Italy, pp 481–488
Menguy E, Boimond J, Hardouin L, Ferrier J (2000a) A first step towards adaptive control for linear systems in max algebra. Discrete Event Dyn Syst: Theory and Applications 10(4):347–367
Menguy E, Boimond J, Hardouin L, Ferrier J (2000b) Justintime control of timed event graphs: Update of reference input, presence of uncontrollable input. IEEE Trans Automat Control 45(11):2155–2158
NaitSidiMoh A, Manier MA, EI Moudni A (2009) Spectral analysis for performance evaluation in a bus network. Eur J Oper Res 193(1):289–302
Necoara I, De Schutter B, van den Boom T, Hellendoorn H (2007) Stable model predictive control for constrained maxpluslinear systems. Discrete Event Dyn Syst: Theory and Applications 17(3):329–354
Necoara I, De Schutter B, van den Boom T, Hellendoorn H (2009a) Robust control of constrained maxpluslinear systems. Int J Robust Nonlin Control 19 (2):218–242
Necoara I, De Schutter B, van den Boom T, Hellendoorn H (2009b) Robust control of constrained maxpluslinear systems. Int J Robust Nonlin Control 19 (2):218–242
Olsder G (1986) On the characteristic equation and minimal realizations for discreteevent dynamic systems. In: Bensoussan A, Lions J (eds) Proceedings of the 7th International Conference on Analysis and Optimization of Systems (Antibes, France), Berlin, Germany: SpringerVerlag, Lecture Notes in Control and Information Sciences, vol 83, pp 189–201
Olsder G, Roos C (1988) Cramer and cayleyHamilton in the max algebra. Linear Algebra Appl 101:87–108
Olsder G, Resing J, de Vries R, Keane M, Hooghiemstra G (1990a) Discrete event systems with stochastic processing times. IEEE Trans Automat Contr 35(3):299–302
Olsder G, Resing J, de Vries R, Keane M, Hooghiemstra G (1990b) Discrete event systems with stochastic processing times. IEEE Transactions on Automatic Control, pp 299–302
Rawlings J, Mayne D (2009) Model predictive control: Theory and design nob hill publishing. Madison, Wisconsin
SantosMendes R, Hardouin L, Lhommeau M (2019) Stochastic filtering of maxplus linear systems with bounded disturbances. IEEE Transactions on Automatic Control To appear. https://doi.org/10.1109/TAC.2018.2887353
Schullerus G, Krebs V, De Schutter B, van den Boom T (2006) Input signal design for identification of maxpluslinear systems. Automatica 42(6):937–943
Shang Y (2013) Towards geometric control of maxplus linear systems with applications to queueing networks. Int J Syst Sci 44(1):34–49
Shang Y, Sain MK (2009) Fixed poles in the model matching problem for systems over semirings. Linear Algebra Appl 430(8):2368–2388
Shang Y, Hardouin L, Lhommeau M, Maia C (2016) An integrated control strategy to solve the disturbance decoupling problem for maxplus linear systems with applications to a high throughput screening system. Automatica 63:338–348
Su R, Woeginger G (2011) String execution time for finite languages: Max is easy, min is hard. Automatica 47(10):2326–2329
Tao TG, Liu GP, Mu XW (2013) Maxplus matrix method and cycle time assignability and feedback stabilizability for minmaxplus systems. Math Control Signal Syst 25(2):197–229
van den Boom T, De Schutter B (2002a) Properties of MPC for maxpluslinear systems. Eur J Control 8(5):453–462
van den Boom T, De Schutter B (2006) Modelling and control of discrete event systems using switching maxpluslinear systems. Control Engineering Practice 14(10):1199–1211
van den Boom T, De Schutter B (2012) Modeling and control of switching maxpluslinear systems with random and deterministic switching. Discrete Event Dynamic Systems 12(3):293–332
van den Boom T, De Schutter B (2014) Model predictive control of manufacturing systems with maxplus algebra Campos J, Seatzu C, Xie X (eds), vol 12, CRC Press, Chap
van den Boom TJ, De Schutter B (2002b) MPC for perturbed maxpluslinear systems. Systems & Control Letters 45(1):21–33
van den Boom TJ, De Schutter B (2004) Model predictive control for perturbed maxpluslinear systems: a stochastic approach. Int J Control 77(3):302–309
Walkup E, Borriello G (1998) A general linear maxplus solution technique. In: Gunawardena J, Atiyah M, Taylor J (eds) Idempotency Proceedings of the Workshop on Idempotency, Bristol, UK, Oct 1994. Cambridge University Press, Cambridge
Wang C, Tao Y, Yang P, Liu Z (2017) Dimension reduction and feedback stabilization for maxplus linear systems and applications in VLSI array processors. IEEE Trans Autom Control 62(12):6353–6368
Xu J, De Schutter B, van den Boom T (2014) Model predictive control for maxpluslinear systems via optimistic optimization. In: Proceedings of the 12th IFACIEEE International Workshop on Discrete Event Systems (WODES’14), Cachan, France, pp 111–116
Xu J, van den Boom T, De Schutter B (2019) Model predictive control for stochastic maxplus linear systems with chance constraints. IEEE Trans Autom Control 64(1):337–342
Author information
Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Cite this article
De Schutter, B., van den Boom, T., Xu, J. et al. Analysis and control of maxplus linear discreteevent systems: An introduction. Discrete Event Dyn Syst 30, 25–54 (2020). https://doi.org/10.1007/s1062601900294w
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s1062601900294w
Keywords
 Maxplus linear systems
 Maxplus algebra
 Analysis of discreteevent systems
 Modelbased control of maxplus linear systems
 Residuationbased control
 Model predictive control
 Survey