<span> **** </span>

#### Abstract.

We address a specific but recurring problem related to sampled linear systems. In particular, we provide a numerical method for the rigorous verification of constraint satisfaction for linear continuous-time systems between sampling instances. The proposed algorithm combines elements of classical branch and bound schemes from global optimization with a recently published procedure to bound the exponential of interval matrices.

#### Keywords.

Sampled linear system, state and input constraints, branch and bound, interval arithmetic, matrix exponential.

Introduction and Problem Statement {#sec:problemStatement}
==================================

We consider the continuous-time linear system

$$\label{eq:sysCont}
\dot{x}(t) = A \, x(t) + B \, u(t), \qquad x(0)=x_0
\vspace{-0.5mm}$$

with state and input constraints of the form

$$\label{eq:constraintsCont}
x(t) \in {\mathcal{X}}\quad \text{and} \quad u(t) \in {\mathcal{U}}\quad \text{for every} \,\, t \in {{\mathbb R}}_0
  \vspace{-0.5mm}$$

under piecewise constant control

$$\label{eq:uZOH}
u(t) = u(t_k)  \quad \text{for every} \,\, t \in [k\,\Delta t, (k+1)\,\Delta t),
\vspace{-0.5mm}$$

where $\Delta t >0$ denotes the sampling time and where $t_k := k\,\Delta t$ for every $k \in {\mathbb{N}}$. The sets ${\mathcal{X}}\subset {{\mathbb R}}^n$ and ${\mathcal{U}}\subset {{\mathbb R}}^m$ are assumed to be convex and compact polytopes containing the origin as an interior point. During controller design (and controller evaluation), system  is usually replaced by the discrete-time system

$$\label{eq:sysDisc}
x(t_{k+1}) = \widehat{A}\,x(t_k)+\widehat{B}\,u(t_k), \qquad x(0)=x_0
\vspace{-0.5mm}$$

with $\widehat{A} := \exp(A\,\Delta t)$ and $\widehat{B}:=\int_{0}^{\Delta t} \exp(A\,\tau)  \, \mathrm{d}\tau \,B$. While the discretized system and the continuous-time system coincide at all sampling instances, it is well-known that the continuous-time trajectory may violate the state constraints even though the discrete-time counterpart does not (see, e.g., the motivating example in @Sopasakis2014). This potential problem can be prevented by computing adapted constraints for the discretized system such that constraint satisfaction of  w.r.t. the adapted constraints implies constraints satisfaction of  w.r.t. the original constraints  (see, e.g.,@Sopasakis2014 [@Beradi2001_ECC; @SchulzeDarup2015_CDC1]).

Comparing the methods for the computation of adapted constraints in @Sopasakis2014 [@Beradi2001_ECC; @SchulzeDarup2015_CDC1], it is peculiar that the procedures in @Beradi2001_ECC and @SchulzeDarup2015_CDC1 both rely on similar non-convex optimization problems (cf. @Beradi2001_ECC [Thm. 5] and @SchulzeDarup2015_CDC1 [Eq. (15)]). Roughly speaking, the underlying problem reads as follows. For a given state $x_0 \in {\mathcal{X}}$ and input $u_0 \in {\mathcal{U}}$ such that $\widehat{A} x_0 + \widehat{B} u_0 \in {\mathcal{X}}$ (i.e., the discretized systems satisfies the constraints), we are interested in checking whether the trajectory of the continuous-time systems violates the state constrains for some $t \in (0,\Delta t)$.

More formally, the problem of interest can be described along the following lines. First note that the polytope ${\mathcal{X}}$ can be written in the form $${\mathcal{X}}= \{ x \in {{\mathbb R}}^n \,|\, H x \leq \mathbf{1} \},$$ where $H \in {{\mathbb R}}^{p \times n}$ and where $\mathbf{1} \in {{\mathbb R}}^p$ is a vector with all entries equal to 1. Now, let $\varphi(t,x_0,u_0)$ denote the solution of  at time $t \in [0,\Delta t]$ for an initial condition $x_0 \in {\mathcal{X}}$ and a control action $u_0 \in {\mathcal{U}}$. Then, the trajectory of the continuous-time system does obviously not violate the state constraints for any $t \in [0,\Delta t]$ if $$\label{eq:conditionMaxSets}
  \max_{j\in {\mathbb{N}}_{[1,p]}} \max_{t\in[0,\Delta t]} e_j^T  H \, \varphi(t,x_0,u_0) \leq 1,$$ where $e_j \in {{\mathbb R}}^p$ is the $j$-th Euclidean unit vector. Taking into account that $\varphi(t,x_0,u_0) $ reads $$\label{eq:phiTX0U0}
\varphi(t,x_0,u_0) = \exp(A\,t)\,x_0+ \int_{0}^{t} \exp(A\,\tau)  \, \mathrm{d}\tau \,B \, u_0
$$ for every $t \in [0, \Delta t]$, it is easy to see that $e_j^T H \varphi(t,x_0,u_0)$ is in general not concave (nor convex) in $t$. Hence, verifying whether  holds (or not) is a multivariate non-convex optimization problem (OP). Fortunately, the l.h.s. in  can be easily decomposed into $p$ univariate OPs of the form $$\label{eq:maxF}
f^\ast := \max_{t \in [0,\Delta t]} f(t),$$ where $f: [0,\Delta t] \rightarrow {{\mathbb R}}$ is given by $$\label{eq:f}
f(t):= h^T \left(\exp(A\,t)\,x_0+ \int_{0}^{t} \exp(A\,\tau)  \, \mathrm{d}\tau \,B \, u_0\right)$$ with $h\in {{\mathbb R}}^n$. Clearly,  holds if $f^\ast \leq 1$ results from  for every $h \in \{ H^T e_1, \dots, H^T e_P\}$.

Following the argumentation in @Beradi2001_ECC (and @SchulzeDarup2015_CDC1), although  is non-convex, it can be solved reliable since it is the search of the maximum of a scalar function on a scalar compact domain. While this observation is true, we can provide more elaborated solution strategies for  based on the special structure of the objective function in . In this paper, we address the rigorous (or global) solution of  using interval arithmetic (IA). More precisely, we intend to identify non-decreasing, non-increasing, convex and concave segments of $f(t)$ on $[0,\Delta t]$ based on interval inclusions for the first and second time-derivative of $f(t)$. Clearly, for such segments, local maxima can be easily computed and subsequently finding the global maximum is straightforward.

The paper is organized as follows. We state basic notation and preliminaries in Sect. \[sec:notation\]. The main result of the paper, i.e., a tailored branch and bound algorithm for the rigorous solution of  is presented in Sect. \[sec:computation\]. Finally, the proposed method is illustrated with some examples in Sect. \[sec:example\] before giving conclusions in Sect. \[sec:Conclusion\].

Notation and Preliminaries {#sec:notation}
==========================

As mentioned in the introduction, we exploit IA to provide interval inclusions for $f(t)$ and its derivatives $$\frac{ \mathrm{d} f(t)}{\mathrm{d} t}  :=f^\prime(t) \qquad  \text{and} \qquad 
  \frac{ \mathrm{d}^2 f(t)}{\mathrm{d} t^2}  :=f^{\prime\prime}(t).$$ IA can be understood as the extension of operations associated with real numbers, like addition or multiplication, to intervals (see, e.g., @Moore1979 [Sect. 2.2]). In this paper, we only require a few interval operations summarized in the following lemma.

\[<span>@Moore1979 [Eqs. (2.14) and (2.19)]</span>\] \[lem:IA\] Let $[c]\!=\![{\underline{c}},{\overline{c}}]$ $\subset {{\mathbb R}}$ and $[d]=[{\underline{d}},{\overline{d}}]\subset {{\mathbb R}}$ be intervals with ${\underline{c}}\leq {\overline{c}}$ and ${\underline{d}}\leq {\overline{d}}$. Define the intervals $$\begin{aligned}
\nonumber
[c]+[d] &:= [{\underline{c}}+{\underline{d}},{\overline{c}}+{\overline{d}}] \quad \text{and} \\
\nonumber
[c]\times [d] &:= [\min\{{\underline{c}}\, {\underline{d}},{\underline{c}} \,{\overline{d}},{\overline{c}}\, {\underline{d}},{\overline{c}}\, {\overline{d}}\},\max\{{\underline{c}}\, {\underline{d}},{\underline{c}} \,{\overline{d}},{\overline{c}}\, {\underline{d}},{\overline{c}}\, {\overline{d}}\}].\end{aligned}$$ Then, $c+d \in [c]+[d]$ and $c \, d \in [c] \times [d]$ for every $c \in [c]$ and every $d \in [d]$.

The rules in Lem. \[lem:IA\] can also be applied to compute the sum (or the multiplication) of an interval $[c]$ and a real number $d\in {{\mathbb R}}$. In this case, $[d]$ can be construed as a degenerated interval with ${\underline{d}}={\overline{d}}=d$. Moreover, by setting $[d]=[c]$, the interval multiplication can be used to evaluate $[c]$ raised to the power of $\kappa \in {\mathbb{N}}$. However, tighter inclusions result for the calculation rule given in @Moore1979 [Eq. (3.10)]. In fact, we find $c^\kappa \in [c]^\kappa$ for every $c \in  [c]$, where $$[c]^\kappa := \left\{ \begin{array}{ll@{\,\,}l}
\,[{\underline{c}}^\kappa, {\overline{c}}^\kappa] & \text{if} \,\,\, {\underline{c}}>0 & \text{or} \,\,\, \kappa \,\, \text{is odd},\\
\,[{\overline{c}}^\kappa,{\underline{c}}^\kappa] &\text{if} \,\,\, {\overline{c}}<0 & \text{and} \,\,\, \kappa \,\, \text{is even}, \\
 \,[0, |[c]|^\kappa] & \text{if} \,\,\, 0\in[c] & \text{and} \,\,\, \kappa \,\, \text{is even},
  \end{array} \right.$$ and where the magnitude of $[c]$ is defined as $|[c]|:=\max \{ |{\underline{c}}|, |{\overline{c}}|\}$. In addition, we define the width of an interval as $w([c]):={\overline{c}}-{\underline{c}}$. IA can be easily extended to interval vectors and interval matrices. For two interval matrices $[C]=[{\underline{C}},{\overline{C}}]$ and $[D]=[{\underline{D}},{\overline{D}}]$ of appropriate size, the sum $[C]+[D]$ and the multiplication $[C]\,[D]$ are understood component-wise. Analogously, the magnitude $|[C]|$ is defined component-wise, i.e., $(|[C]|)_{ij}:=|[{\underline{C}}_{ij},{\overline{C}}_{ij}]|$. Finally, the infinity norm of an interval matrix is defined as the maximum of the norms of the contained real matrices, i.e., $\| [C] \|_\infty := \max_{C \in [C]} \| C \|_\infty$. It is easy to see, that this definition implies $\| [C] \|_\infty =  \left\| |[C]| \right\|_\infty$. Computing interval inclusions for  will mainly build on interval inclusions for matrix exponentials, which can be calculated as follows.

\[<span>@Goldsztejn2014 [Thm. 4.3]</span>\] \[thm:intervalExp\] Let $[C]=[{\underline{C}},{\overline{C}}]$ be an interval matrix with ${\underline{C}},{\overline{C}} \in {{\mathbb R}}^{q \times q}$. Let $k,l \in {\mathbb{N}}$ be such that $2^l \,(k +2) > \| [C]\|_\infty$. Define $[C^\ast]:= \frac{1}{2^l}[C]$, $$\begin{aligned}
\nonumber
[D^\ast] &:=  I_q + \frac{[C^\ast]}{1}\,\left( I_q + \frac{[C^\ast]}{2} \left(  \dots \left( I_q + \frac{[C^\ast]}{k} \right) \dots\right)\right) \\
\nonumber
& \quad + \frac{\| [C^\ast] \|_\infty^{k+1}}{(k+1)! \,(1-\frac{\| [C^\ast] \|_\infty}{k+2})} \, [-I_q,I_q],\end{aligned}$$ and $[D]:=[D^\ast]^{2^l}$. Then $\exp(C) \in [D]$ for every $C \!\in [C]$.

Note that there exist many ways to evaluate $[D^\ast]^{2^l}$ as occurring in Thm. \[thm:intervalExp\]. In @Goldsztejn2014 [p. 61], the authors propose to use $l$ successive interval square operations, i.e., $$[D^\ast]^{2^l} = \left( \dots \left( [D^\ast]^2 \right)^2 \dots\right)^2\!.$$ An efficient procedure for the computation of the square of an interval matrix is presented in @Kosheleva2005 [Sect. 6].

Rigorous Solution via Interval Arithmetic {#sec:computation}
=========================================

In the following, we present a tailored method for the rigorous solution of the non-convex OP . Before describing the algorithm, we have to stress that there exists a number of situations where  can be solved analytically. In this context, note that  can be rewritten as $$\label{eq:fForANotInvertible}
f(t) = h^T \left( \int_{0}^{t} \!\exp(A\,\tau)  \, \mathrm{d}\tau \,(A\,x_0+B\,u_0)+x_0 \right)$$ using the identity $\int_{0}^{t} \exp(A\,\tau)  \, \mathrm{d}\tau \,A + I_n= \exp(A\,t)$. Obviously, trivial solutions result if $A\,x_0+B\,u_0=0$, $A=0$, or $h=0$. In addition, an analytical solution of  is straightforward if $h$ is an eigenvector of $A^T$, i.e., if $h^T A = \lambda \, h^T$ for some $\lambda \in {{\mathbb R}}$. To see this, note that the time-derivatives of  are given by $$\begin{aligned}
\label{eq:f1ForGeneralA}
f^\prime(t) &= h^T \exp(A\,t) \,(A\,x_0+B\,u_0) \quad \text{and} \\
\label{eq:f2ForGeneralA}
f^{\prime\prime}(t) &= h^T A \exp(A\,t) \,(A\,x_0+B\,u_0).\end{aligned}$$ Thus, $h$ being an eigenvector implies $f^{\prime\prime}(t)=\lambda f^\prime(t)$ for every $t \in [0,\Delta t]$, which eventually leads to a monotone function $f$. Consequently, we obtain $f^\ast = \max \{h^T\! x_0, f(\Delta t)\}$. Finally, the solution of  may be trivial if $A$ is nilpotent, i.e., if there exists an $r \in {\mathbb{N}}$ (with $1 \leq r \leq n$) such that $A^k \neq 0$ for $k \in \{0,\dots,r-1\}$ and $A^k = 0$ for $k\geq r$. In this case, $f$ can be rewritten as the polynomial $$\label{eq:fNilpotent}
\!f(t)=  h^T \left( x_0  \!+\!\!\sum_{k=1}^{r-1}\! \frac{A^k x_0 + A^{k-1} B u_0}{k!} t^k + \!\frac{A^{r-1} B u_0}{r!} t^r\right). \!\!\!\!$$

If an analytical solution is not obvious, a numerical procedure to solve  may be required. We propose Alg. \[alg:fMaxBranchAndBound\] further below to compute $\epsilon$-optimal solutions to  according to Def. \[defn:epsOpt\].

\[defn:epsOpt\] Let $\epsilon\geq 0$. We call ${\overline{f}}^\ast \in {{\mathbb R}}$ an *$\epsilon$-optimal solution* to  if $0 \leq {\overline{f}}^\ast - f^\ast \leq \epsilon$.

As mentioned in the introduction, Alg. \[alg:fMaxBranchAndBound\] relies on identifying non-decreasing, non-increasing, convex and concave segments of $f(t)$ on $[0,\Delta t]$ based on interval inclusions for the derivatives  and . As stated in the following proposition, such inclusions can be easily computed based on Thm. \[thm:intervalExp\].

\[prop:IntervalInclusions\] Let $[t] \subseteq [0, \Delta t]$ with $|[t]|>0$ and consider the interval matrix $[C]=A \,[t]$. Let $k,l \in {\mathbb{N}}$ be such that $2^l \,(k +2) > \| [C]\|_\infty$ and define $[D]$ as in Thm. \[thm:intervalExp\]. Then, the interval inclusions $$\begin{aligned}
\label{eq:f1Interval}
  [f^\prime] &=[{\underline{f}}^\prime,{\overline{f}}^\prime] & \!\!\!\!\! = \,\,& h^T [D] \, (A x_0 + B \,u_0), \quad \text{and}\\
\label{eq:f2Interval}
   [f^{\prime\prime}] & =[{\underline{f}}^{\prime\prime},{\overline{f}}^{\prime\prime}] & \!\!\!\!\! = \,\, & h^T A \, [D] \, (A x_0 + B \,u_0),\end{aligned}$$ are such that $$\label{eq:inclusionF1andF2}
f^\prime(t) \in [f^\prime]\,\,\,   \text{and} \,\,\,
f^{\prime\prime}(t) \in [f^{\prime\prime}] \quad \text{for every} \,\,\,t\in [t].\!$$

According to Thm. \[thm:intervalExp\], we have $\exp(A t) \in [D]$ for every $t \in [t]$. Thus, and  contain the r.h.s. in  and for every $t \in [t]$, respectively. Consequently, holds.

Clearly, if ${\underline{f}}^\prime \geq 0$ results from , then $f(t)$ is non-decreasing on the time-interval $[t]$. Analogously, ${\overline{f}}^\prime \leq 0$, ${\underline{f}}^{\prime\prime} \geq 0$, or ${\overline{f}}^{\prime\prime} \leq 0$ guarantees $f(t)$ to be non-increasing, convex, or concave on $[t]$, respectively. In each of these cases, it is easy to compute the local maximum of $f(t)$ on $[t]$, i.e., $$\label{eq:fMaxLocal}
f^\dagger := \max_{t\in[t]} f(t)$$ In fact, $f(t)$ being convex, non-decreasing, or non-increasing implies $f^\dagger = \max \{ f({\underline{t}}), f({\overline{t}})\}$, $f^\dagger = f({\underline{t}})$, or $f^\dagger = f({\overline{t}})$. Finally, if $f(t)$ is concave, solving  is a convex OP. In contrast, if ${\underline{f}}^\prime<0<{\overline{f}}^\prime$ and ${\underline{f}}^{\prime\prime} < 0<{\overline{f}}^{\prime\prime}$, a straightforward computation of $f^\dagger$ may not be possible. However, even in this case, the bounds on the derivatives can be used to compute an upper bound for the local maximum according to Def. \[defn:overestimator\] and Lem. \[lem:Overestimators\].

\[defn:overestimator\] Let $[t] \subseteq [0,\Delta t]$ with $w([t])>0$. We call a function $g:[t] \rightarrow {{\mathbb R}}$ a *suitable overestimator* for $f$ on $[t]$ if $f(t) \leq g(t)$ for every $t \in [t]$ and if the optimizer $$\label{eq:tAstOverestimator}
t^\dagger:= \arg \max_{t \in[t]} g(t)$$ can either be computed analytically or by solving a convex optimization problem.

\[lem:Overestimators\] Let $[t] \subseteq [0,\Delta t]$ with $w([t])>0$ and assume $[f^{\prime}]$ and $[f^{\prime\prime}]$ with ${\underline{f}}^\prime<0<{\overline{f}}^\prime$ and ${\overline{f}}^{\prime\prime}>0$ are such that  holds. Then, the following three functions $g:[t] \rightarrow {{\mathbb R}}$ are suitable overestimations for $f$ on $[t]$.

1.  The piecewise affine function $$g(t) := \left\{ \begin{array}{ll}
    f({\underline{t}}) + {\overline{f}}^\prime (t - {\underline{t}}) &\text{if} \,\,\,  t \leq t_c, \\
    f({\overline{t}}) - {\underline{f}}^\prime ({\overline{t}} -t ) & \text{otherwise},
    \end{array} \right.$$ where $t_c= \frac{{\overline{f}}^\prime {\underline{t}} - {\underline{f}}^\prime {\overline{t}}+f({\overline{t}})-f({\underline{t}})}{{\overline{f}}^\prime - {\underline{f}}^\prime}.$

2.  The piecewise quadratic function $$g(t) := \left\{ \begin{array}{ll}
    f({\underline{t}}) + f^\prime({\underline{t}})\,(t - {\underline{t}})+\frac{{\overline{f}}^{\prime\prime}}{2} (t - {\underline{t}})^2  & \text{if} \,\,\, t \leq t_c,\\
    f({\overline{t}}) - f^\prime({\overline{t}})\,({\overline{t}}-t)+ \frac{{\overline{f}}^{\prime\prime}}{2} ({\overline{t}}-t)^2 & \text{otherwise},
    \end{array} \right.$$ where $$\!\!t_c:= \left\{ \!\begin{array}{ll} \frac{0.5\,{\overline{f}}^{\prime\prime} ({\overline{t}}^2-{\underline{t}}^2) +f^\prime({\underline{t}})\, {\underline{t}}-f^\prime({\overline{t}})\,{\overline{t}} +f({\overline{t}})-f({\underline{t}})}{{\overline{f}}^{\prime\prime} ({\overline{t}}-{\underline{t}}) + f^\prime({\underline{t}})  - f^\prime({\overline{t}})} & \text{if} \,\,\,\frac{f^\prime({\overline{t}})- f^\prime({\underline{t}})}{{\overline{t}}-{\underline{t}}} \!< {\overline{f}}^{\prime\prime}\!\!\!,   \\
    {\overline{t}} & \text{otherwise}. \end{array} \right.$$

3.  The concave function $
    g(t) := f(t) + \frac{{\overline{f}}^{\prime\prime}}{2} (t - {\underline{t}})\, ({\overline{t}}-t).
    $

The overestimators listed in Lem. \[lem:Overestimators\] are adopted from @Piyavskii1972, @Breiman1993, and @Maranas1994b [Sect. 4]. In fact, $|[f^\prime]|$ and $|[f^{\prime\prime}]|$ can be understood as local Lipschitz constants for $f(t)$ and $f^\prime(t)$ as exploited in @Piyavskii1972 and @Breiman1993, respectively. We thus omit a detailed proof of Lem. \[lem:Overestimators\] and refer to @Piyavskii1972 [@Breiman1993; @Maranas1994b]. It is, however, important to note that the solution to  reads $t^\dagger = t_c$ for the overestimator $g$ of type 1. For type 2, we find $t^\dagger \in \{{\underline{t}},t_c,{\overline{t}}\}$, which renders  trivial. Finally, for type 3, solving  is a convex OP. Based on Prop. \[prop:IntervalInclusions\] and Lem. \[lem:Overestimators\], we are finally able to formulate an algorithm for the computation of an $\epsilon$-optimal solution to .

\[alg:fMaxBranchAndBound\] Solution of  via branch and bound.

1.  Initialize the lower bound on the global maximum as ${\underline{f}}^\ast \leftarrow h^T x_0$. Initialize the list ${\mathcal{L}}$ of tuples $([t],[f^\dagger])$, each containing a time-interval $[t]$ and bounds $[f^\dagger]$ on the local maximum of $f$ on $[t]$, as ${\mathcal{L}}\leftarrow \{([0,\Delta t], [-\infty,\infty])\}$.

2.  **for each** tuple $([t],[f^\dagger])$ in ${\mathcal{L}}$, for which the bounds on the local maximum read $[f^\dagger]=[-\infty,\infty]$, repeat the following steps.

    1.  Compute $[f^\prime]$ and $[f^{\prime\prime}]$ according to Prop. \[prop:IntervalInclusions\] and define a suitable overestimator $g$ for $f$ on $[t]$ (e.g., according to Lem. \[lem:Overestimators\]).

    2.  **if** ${\underline{f}}^\prime \geq 0$, set $[f^\dagger] \leftarrow [f({\overline{t}}),f({\overline{t}})]$.

        **else if** ${\overline{f}}^\prime \leq 0$, set $[f^\dagger] \leftarrow [f({\underline{t}}),f({\underline{t}})]$.

        **else if** ${\underline{f}}^{\prime\prime}\! \geq  0$, compute $f^\dagger = \max \{f({\underline{t}}),f({\overline{t}})\}$ and set $[f^\dagger] \leftarrow [f^\dagger ,f^\dagger ]$.

        **else if** ${\overline{f}}^{\prime\prime}\! \leq 0$, solve  and set $[f^\dagger] \leftarrow [f^\dagger ,f^\dagger ]$.

        **else**, solve  and set $[f^\dagger] \leftarrow [f(t^\dagger),g(t^\dagger)]$.

    3.  **if** ${\underline{f}}^\dagger > {\underline{f}}^\ast$, set ${\underline{f}}^\ast \leftarrow {\underline{f}}^\dagger$.

3.  Compute the upper bound ${\overline{f}}^\ast$ on the global maximum by taking the maximum of all local upper bounds ${\overline{f}}^\dagger$ of the tuples $([t],[f^\dagger])$ in ${\mathcal{L}}$.

4.  **if** $w([f^\ast]) \leq \epsilon$, **return** ${\overline{f}}^\ast$ and terminate.

5.  **for each** tuple in ${\mathcal{L}}$ repeat the following step.

    1.  **if** ${\overline{f}}^\dagger\! \leq {\underline{f}}^\ast$ and $w([f^\dagger]) \!> \epsilon$, remove tuple from ${\mathcal{L}}$.

6.  Select the tuple $([t],[f^\dagger])$ with the largest width $w([f^\dagger])$ in ${\mathcal{L}}$ and remove it from ${\mathcal{L}}$. Compute $t_m = \frac{{\underline{t}}+{\overline{t}}}{2}$ and insert the tuples $([{\underline{t}},t_m],[-\infty,\infty])$ and $([t_m,{\overline{t}}],[-\infty,\infty])$ in ${\mathcal{L}}$. **go to** step 2.

In principle, Alg. \[alg:fMaxBranchAndBound\] is similar to established branch and bound procedures for global optimization (see, e.g., @Piyavskii1972, @Hansen1979 [Sects. 6 to 13], @Breiman1993 [Sect. 3], @Maranas1994b [Sect. 6], or @Sergeyev1998 [Sect. 3]). The main difference is that Alg. \[alg:fMaxBranchAndBound\] makes use of bounds on the first *and* second derivative. First, this allows to identify a number of segments where the local maximum can be computed exactly. Second, it gives some flexibility w.r.t. the choice of suitable overestimators for the remaining segments. In fact, overestimators of type 1 (in Lem. \[lem:Overestimators\]) depend on $[f^\prime]$ while type 2 and 3 build on $[f^{\prime\prime}]$. Regarding the computational effort, the strategy to compute both interval inclusions may be inefficient in general. Here, however, the simultaneous calculation of $[f^\prime]$ *and* $[f^{\prime\prime}]$ does not significantly increase the computational load compared to solely calculating $[f^\prime]$ *or* $[f^{\prime\prime}]$. In fact, due to the special structure of $f$, we easily evaluate $[f^\prime]=h^T [d]$ and $[f^{\prime\prime}]=h^T \!A\, [d]$ given the interval vector $[d]:=[D]\,(A x_0 + B u_0)$. Obviously, the computational effort to calculate $[d]$ is dominated by the computation of the interval inclusion $[D]$ for the matrix exponential.

As stated in Prop. \[prop:AlgEps\], Alg. \[alg:fMaxBranchAndBound\] is guaranteed to compute an $\epsilon$-optimal solution to  for every $\epsilon>0$. In many cases, however, Alg. \[alg:fMaxBranchAndBound\] is capable to solve exactly, i.e., for $\epsilon=0$ (see Exmps. \[exmp:1\] through \[exmp:3\] in Sect. \[sec:example\]).

\[prop:AlgEps\] Let $\epsilon>0$ and let $k, l \in {\mathbb{N}}$ be such that $2^l \,(k +2) > \| A \,[0,\Delta t] \|_\infty$. Then Alg. \[alg:fMaxBranchAndBound\] terminates after finite time and returns an $\epsilon$-optimal solution to .

It is easy to see that Alg. \[alg:fMaxBranchAndBound\] provides an $\epsilon$-optimal whenever it terminates. Hence, it is sufficient to prove finite termination of the algorithm. Clearly, Alg. \[alg:fMaxBranchAndBound\] terminates if (but not only if) we have $w([f^\dagger])\leq\epsilon$ for every tuple $([t],[f^\dagger])$ in the list ${\mathcal{L}}$. In fact, the upper bound on the global maximum then satisfies $${\overline{f}}^\ast = \max_{([t],[f^\dagger]) \in {\mathcal{L}}} {\overline{f}}^\dagger
\leq \max_{([t],[f^\dagger]) \in {\mathcal{L}}} {\underline{f}}^\dagger + \epsilon = {\underline{f}}^\ast + \epsilon,$$ i.e., $w([f^\ast]) \leq \epsilon$. As a direct consequence, the time-interval $[t]$ of a tuple $([t],[f^\dagger])$ satisfying $w([f^\dagger])\leq\epsilon$ will never be bisected in step 6 of Alg. \[alg:fMaxBranchAndBound\] (since this would contradict reaching step 6 after passing step 4 without termination). In the following, denote by $[f_0^\prime]$ and $[f_0^{\prime\prime}]$ the interval inclusions for $f^\prime$ and $f^{\prime\prime}$ on $[0,\Delta t]$ and let $j \in {\mathbb{N}}$ be such that $$\label{eq:maxLeqEpsilon}
\max \left\{  w([f^\prime_0])\,\Delta \tau, \frac{w([f^{\prime\prime}_0])}{2} \, \Delta \tau^2\!, \frac{{\overline{f}}^{\prime\prime}_0}{8} \Delta \tau^2\right\} \leq \epsilon,$$ where $\Delta \tau := \frac{\Delta t}{2^{j}}$. We obviously have $$\label{eq:bisectionHeightJ}
[0,\Delta t] = \bigcup_{i=0}^{2^j-1} [i,i+1] \Delta \tau$$ by construction. Consider any $i \in \{0,\dots,2^{j}-1\}$, set $[t]=[i,i+1]\,\Delta \tau$, and note that $w([t])=\Delta \tau$. Further note that the inclusions $[f^\prime]$ and $[f^{\prime\prime}]$ on $[t]$ satisfy $[f^\prime] \subseteq [f_0^\prime]$ and $[f^{\prime\prime}] \subseteq [f_0^{\prime\prime}]$ since $[t]\subseteq [0,\Delta t]$ (and since all involved operations are *inclusion increasing*; see @Goldsztejn2014 for details). Now assume an overestimator of type 1 (as in Lem. \[lem:Overestimators\]) is applied. We then find $$\begin{aligned}
g(t^\dagger) - f(t^\dagger) &\leq \max_{t \in [t]} g(t)-f(t) \\
& = \max_{t \in [t]} f({\underline{t}})+ {\overline{f}}^\prime (t - {\underline{t}})-f(t) \\
& \leq \max_{t \in [t]} f({\underline{t}})+ {\overline{f}}^\prime (t - {\underline{t}})-f({\underline{t}})- {\underline{f}}^\prime (t - {\underline{t}}) \\
& = w([f^\prime]) \, w([t]) \leq w([f_0^\prime]) \, \Delta \tau \leq \epsilon,\end{aligned}$$ where the first and second relation hold due to $t^\dagger \in [t]$ and by definition of $g$, respectively. The third relation holds since $$f(t) = f({\underline{t}}) + \int_{{\underline{t}}}^t f^\prime(\tau) \,\mathrm{d} \tau \geq f({\underline{t}})+{\underline{f}}^\prime (t - {\underline{t}})$$ for every $t \in [t]$. Finally, the last relations hold due to $[f^\prime] \subseteq [f_0^\prime]$ and according to . Using analogous arguments, we obtain $g(t^\dagger) - f(t^\dagger) \leq \epsilon$ also for overestimators of type 2 or 3. We thus find $w([f^\dagger])\leq \epsilon$ for the bounds on the local maximum of $f$ on $[t]$ according to step 2.(b) of Alg. \[alg:fMaxBranchAndBound\]. Since $i \in \{0,\dots,2^j-1\}$ was arbitrary, this observation holds for every time interval $[i,i+1]\Delta \tau$ on the r.h.s. of . As a consequence, the number of required bisections in step 6 of Alg. \[alg:fMaxBranchAndBound\] is limited and the algorithm terminates after finite time. To see this, first note that $j$ and $i$ can be understood as the height and the position of a leaf node in a perfect binary tree, respectively. The binary tree can be associated with the bisection procedure. In fact, every inner node can be linked to the bisection of a time-interval. Now, the perfect binary tree with height $j$ refers to the worst-case scenario, where the bisection continues until we obtain the partition on the r.h.s. of . Since this tree contains $\sum_{i=0}^{j-1} 2^i = 2^{j} - 1$ inner nodes, we obtain a maximum of $2^j-1$ bisections.

Numerical Examples {#sec:example}
==================

We analyze four examples in the following. The first two examples address technical systems taken from @Gutman1987 and @Sopasakis2014. In contrast, Exmp. \[exmp:3\] and \[exmp:4\] are of academic nature. In fact, these examples were purely designed to challenge Alg. \[alg:fMaxBranchAndBound\].

The application of Alg. \[alg:fMaxBranchAndBound\] requires to specify an error bound $\epsilon$. Moreover, the underlying computation of interval inclusions for matrix exponentials depends on the parameters $k,l \in {\mathbb{N}}$ (see Thm. \[thm:intervalExp\]). We set $\epsilon = 10^{-6}$ and $k=l=10$ for all examples.

\[c\]\[c\]<span>(a)</span> \[c\]\[c\]<span>(b)</span> \[c\]\[c\]<span>(c)</span> \[c\]\[c\]<span>(d)</span> \[c\]\[c\]<span>(e)</span> \[c\]\[c\]<span>(f)</span> \[c\]\[c\]<span>(g)</span> \[c\]\[c\]<span>(h)</span>

\[c\]\[c\]<span>$t$</span> \[ct\]\[cb\]<span>$f(t)$</span>

\[c\]\[c\]<span>$x_1$</span> \[ct\]\[cb\]<span>$x_2$</span> \[rt\]\[cb\]<span>$x_3$</span> \[c\]\[c\]<span>projection on $x_1$-$x_2$</span>

\[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$0.5$</span> \[c\]\[c\]<span>$1.0$</span>

\[c\]\[c\]<span>$1.000$</span> \[c\]\[c\]<span>$1.005$</span>

\[c\]\[c\]<span>$25.0$</span> \[c\]\[c\]<span>$25.1$</span>

\[c\]\[c\]<span>$-0.5$</span> \[cr\]\[cr\]<span>$0.0$</span> \[cr\]\[cr\]<span>$0.5$</span>

\[c\]\[c\]<span>$0.00$</span> \[c\]\[c\]<span>$0.25$</span> \[c\]\[c\]<span>$0.50$</span>

\[c\]\[c\]<span>$0.94$</span> \[c\]\[c\]<span>$1.00$</span>

\[c\]\[c\]<span>$-1.0$</span> \[c\]\[c\]<span>$-0.5$</span> \[c\]\[c\]<span>$ 0.0$</span>

\[c\]\[c\]<span>$-2.0$</span> \[c\]\[c\]<span>$-1.8$</span>

\[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$0.5$</span> \[c\]\[c\]<span>$1.0$</span>

\[cr\]\[cr\]<span>$-1.0$</span> \[cr\]\[cr\]<span>$1.0$</span>

\[c\]\[c\]<span>$-1.0$</span> \[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$1.0$</span>

\[c\]\[c\]<span>$-1.0$</span> \[cr\]\[cr\]<span>$0.0$</span> \[cr\]\[cr\]<span>$1.0$</span>

\[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$0.1$</span> \[c\]\[c\]<span>$0.2$</span>

\[cr\]\[cr\]<span>$0.5$</span> \[cr\]\[cr\]<span>$1.0$</span>

\[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$2.0$</span> \[c\]\[c\]<span>$4.0$</span>

\[cr\]\[cr\]<span>$0.0$</span> \[cr\]\[cr\]<span>$0.2$</span>

![ Illustration of $f(t)$ (left figures) and $\varphi(t)$ (right figures) for Exmps. \[exmp:1\] through \[exmp:4\] (from top to bottom). In each figure, the point where the maximum $f^\ast$ is attained is marked with a filled circle. Open circles and crosses refer to initial states $x_0$ and final states $\varphi(\Delta t)$, respectively. State constraints are violated outside the gray regions. <span data-label="fig:example1to4"></span>](figExamplesAll.eps){width="0.72\linewidth"}

\[exmp:1\] We first analyze the double integrator in @Gutman1987 with the system matrices $$A = \begin{pmatrix} 0 & 1 \\ 0 & 0  \end{pmatrix} \quad \text{and} \quad
B = \begin{pmatrix} 0 \\ 1  \end{pmatrix}$$ and the constraints ${\mathcal{X}}=\{x \in {{\mathbb R}}^2\,|\, |x_1| \leq 25, \,|x_2| \leq 5\}$ and ${\mathcal{U}}=[-1,1]$. As in @Gutman1987, we consider the sampling time $\Delta t =1$ and obtain the discretized system matrices $$\widehat{A} = \begin{pmatrix} 1 & 1 \\ 0 & 1  \end{pmatrix} \quad \text{and} \quad
\widehat{B} = \begin{pmatrix} 0.5 \\ 1.0  \end{pmatrix}.$$ Obviously, for the initial state $x_0 = (\, 25.0 \,\,\,\, 0.5 \,)^T \in {\mathcal{X}}$, the only input $u_0 \in {\mathcal{U}}$ for which the discretized system satisfies the state constraints at the next sampling instant, i.e., for which $\widehat{A} x_0 + \widehat{B} u_0 \in {\mathcal{X}}$, is $u_0=-1$. In fact, for any $u_0 \in (-1,1]$, the state constraint $x_1 \leq 25$ will be violated. However, even for the choice $u_0=-1$, the continuous-time system may violate the state constraints for some $t \in (0,\Delta t)$. To check whether the constraint $x_1 \leq 25$ will be violated (or not), we set $h = (\, 0.04 \,\,\,\, 0.00 \,)^T$ and solve . Clearly, since $A$ is nilpotent, can be easily solved analytically. We initially ignore this observation and apply Alg. \[alg:fMaxBranchAndBound\].

Following the steps in Alg. \[alg:fMaxBranchAndBound\], we first initialize the lower bound for the global maximum as ${\underline{f}}^\ast = h^T x_0 = 1$ and the list of tuples as ${\mathcal{L}}=\{([0,\Delta t],[-\infty,\infty])\}$. Since $[f^\dagger]=[-\infty,\infty]$, we then evaluate inclusions for $f^\prime$ and $f^{\prime\prime}$ on $[0,\Delta t]$ in step 2.(a) and obtain the (exact) intervals $$[f^\prime]=[-0.02,0.02]  \quad \text{and} \quad [f^{\prime\prime}]=[-0.04,-0.04].$$ Since ${\overline{f}}^{\prime\prime}\leq 0$, the algorithm recognizes that $f$ is concave in step 2.(b), solves the convex OP $f^\dagger = \max_{ t \in [0,\Delta t]} f(t) = 1.005$, and sets $[f^\dagger] = [f^\dagger,f^\dagger]$. Now, due to ${\underline{f}}^\dagger =1.005> {\underline{f}}^\ast$, the lower bound on the global maximum is updated in step 2.(c). Since $([0,\Delta t],[1.005,1.005])$ is the only tuple in ${\mathcal{L}}$, we move to step 3 and set ${\overline{f}}^\ast=1.005$. Finally, the algorithm terminates in step 4 since $w([f^\ast]) = 0 \leq \epsilon$.

For this example, it is easy to verify the computed result by analytically solving . In fact, since $A$ is nilpotent with degree $r=n=2$, we obtain $$\begin{aligned}
\nonumber
f(t) &= h^T x_0 + h^T (A x_0 + B u_0)\,t + 0.5\,h^T \!A B u_0 \, t^2 \\
\nonumber
& =1 + 0.02 \, t -0.02 \,t^2\end{aligned}$$ according to . We thus find $f^\ast=f(0.5)=1.005 = {\overline{f}}^\ast = {\underline{f}}^\ast$. Clearly, since $f^\ast>1$, the continuous-time system will violate the state constraint for some (here all) $t \in (0,\Delta)$. This can also be observed in Figs. \[fig:example1to4\].(a) and \[fig:example1to4\].(b), where $f(t)$ and $\varphi(t)$ are illustrated, respectively.

\[exmp:2\] We consider the example in @Sopasakis2014 with $$A = \begin{pmatrix} -0.7 & \textcolor{white}{+}0.1 \\ \textcolor{white}{+}2.0 & -0.1  \end{pmatrix} \quad \text{and} \quad
B = \begin{pmatrix}  2.0  \\ 1.0  \end{pmatrix}$$ plus ${\mathcal{X}}= \{x \in {{\mathbb R}}^n \,| \, \| x \|_\infty \leq 2 \}$ and ${\mathcal{U}}=[-1,1]$. As in @Sopasakis2014, the sampling time is chosen as $\Delta t = 0.5$. We analyze whether the continuous-time system violates the constraint $x_2 \geq -2$ for the initial state $x_0 = (\, -1.1135  \,\,\,\, -1.8708  \,)^T$ and the input $u_0=0.9355$. To this end, we solve  with $h = (\,0.0  \,\,\,\, -0.5  \,)^T$ and obtain ${\overline{f}}^\ast = {\underline{f}}^\ast = 0.9999$ using Alg. \[alg:fMaxBranchAndBound\]. Thus, the continuous-time system does not violate the state constraint $x_2 \geq -2$ for any $t \in [0,\Delta]$. This observation is important, since $(\,x_0 \,\,\, u_0\,)^T$ marks a vertex of the adapted constraint set $\widehat{{\mathcal{Z}}}$ as computed in @SchulzeDarup2015_CDC1 [Sect. IV]. In other words, $f^\ast \leq 1$ is required to confirm the results in @SchulzeDarup2015_CDC1. An illustration of $f(t)$ and $\varphi(t)$ can be found in Figs. \[fig:example1to4\].(c) and \[fig:example1to4\].(d), respectively.

\[c\]\[c\]<span>$t$</span> \[ct\]\[cb\]<span>$f(t)$</span>

\[c\]\[c\]<span>$0.0$</span> \[c\]\[c\]<span>$0.5$</span> \[c\]\[c\]<span>$1.0$</span>

\[c\]\[c\]<span>$-2$</span> \[cr\]\[cr\]<span>$0$</span> \[cr\]\[cr\]<span>$2$</span> \[cr\]\[cr\]<span>$4$</span> \[cr\]\[cr\]<span>$6$</span>

![ Illustration of some overestimators for $f(t)$ as in Exmp. \[exmp:3\] after three bisections in Alg. \[alg:fMaxBranchAndBound\]. The dashed lines refer to the piecewise linear and quadratic overestimators as introduced in Lem. \[lem:Overestimators\] (type 1 and 2), respectively. The dash-dotted curves show the concave overestimators (type 3). <span data-label="fig:example3Details"></span>](figExample3Details.eps){width="0.75\linewidth"}

\[exmp:3\] We consider the system matrices $$A = \begin{pmatrix} -1 & \textcolor{white}{+}7 \\ -7 & -1  \end{pmatrix} \quad \text{and} \quad
B = \begin{pmatrix}  -1  \\ \textcolor{white}{+}0  \end{pmatrix},$$ the constraints ${\mathcal{X}}= \{x \in {{\mathbb R}}^n \,| \, \| x \|_\infty \leq 1,\,-2x_1+2 x_2 \leq 1 \}$ and ${\mathcal{U}}=[-1,1]$, and the sampling time $\Delta t = 1.0$. To check whether the continuous-time systems violates the constraint $-2x_1+2 x_2 \leq 1$ for $x_0 = (\, 0.6  \,\,\,\, 0.7  \,)^T$ and $u_0=1.0$, we solve  with $h = (\,-2  \,\,\,\, 2  \,)^T$ and obtain ${\overline{f}}^\ast = {\underline{f}}^\ast= 1.5465$ using Alg. \[alg:fMaxBranchAndBound\]. Thus, the continuous-time systems violates the state constraints for some $t \in (0,\Delta t)$ as confirmed in Figs. \[fig:example1to4\].(e) and \[fig:example1to4\].(f). In contrast to Exmps. \[exmp:1\] and \[exmp:2\], Alg. \[alg:fMaxBranchAndBound\] does not terminate without any bisection. In fact, as itemized in Tab. \[tab:1to4\], we require eight bisections and the solution of three convex OP to identify ${\overline{f}}^\ast$ using the second overestimator proposed in Lem. \[lem:Overestimators\]. A snapshot of the computed overestimators after three bisections is shown in Fig. \[fig:example3Details\].

\[exmp:4\] We consider the system matrices $$A = \begin{pmatrix} 0 & 6& 5\\ 5 & 1& 0 \\ 3& 2 &1   \end{pmatrix} \quad \text{and} \quad
B = \begin{pmatrix}  \textcolor{white}{+}1  \\ \textcolor{white}{+}0 \\-2  \end{pmatrix},$$ the constraints ${\mathcal{X}}= \{x \in {{\mathbb R}}^n \,| \, \| x \|_\infty \leq 0.2 \}$ and ${\mathcal{U}}=[-1,1]$, and the sampling time $\Delta t = 0.2$. To check whether the continuous-time systems violates the constraint $x_3 \leq 0.2$ for $x_0 = (\, 2.6724  \,\,\,\, -2.3762 \,\,\,\,0.1105  \,)^T$ and $u_0=1.0$, we solve  with $h = (\,0  \,\,\,\, 0 \,\,\,\,5  \,)^T$ and obtain ${\overline{f}}^\ast = 1.0000$ using Alg. \[alg:fMaxBranchAndBound\]. In contrast to Exmps. \[exmp:1\] through \[exmp:3\], the result ${\overline{f}}^\ast = 1.0000$ is not guaranteed to be exact. In fact, we obtain ${\overline{f}}^\ast-{\underline{f}}^\ast =  0.3123 \cdot 10^{-6}$ using the second overestimator in Lem. \[lem:Overestimators\]. The inexactness can be explained as follows. The example is constructed in such a way that $f^\ast=f(\Delta t)$ and $f^\prime(\Delta t)=f^{\prime\prime}(\Delta t)=0$. In other words, the maximum on $[0,\Delta t]$ is a saddle point of $f(t)$. Thus, for any time-interval containing $\Delta t$, one of the interval inclusions $[f^{\prime}]$ and $[f^{\prime\prime}]$ has to be exact (at least ${\underline{f}}^\prime$ or ${\overline{f}}^{\prime\prime}$) in order to identify $f$ being non-decreasing or concave. However, since interval inclusions are inexact in general and in particular for this example, ${\overline{f}}^\ast$ has to be identified solely by using the overestimators $g$. Consequently, the number of required bisections is high compared to Exmps. \[exmp:1\] through \[exmp:3\] (see Tab. \[tab:1to4\]).

<span>lccrccrcc</span> & $g$ & & & error\
Exmp. 1 & 1–3 & &0& & &1& & 0\

Exmp. 2 & 1–3 & &0& & &1& & 0\
& 1 & &11& & &4& & 0\
Exmp. 3 & 2 & &8& & &3& & 0\
& 3 & &7& & &15& & 0\

& 1 & &109& & &90& & 0.8149\
Exmp. 4 & 2 & &15& & &0& & 0.3123\
& 3 & &14& & &29& & 0.3022\

Conclusion {#sec:Conclusion}
==========

We presented a numerical method for the rigorous verification of constraint satisfaction for sampled linear systems. In particular, we proposed a tailored branch and bound algorithm for the solution of the non-convex OP  (resp. ). The core of the algorithm is a recently published procedure for the inclusion of interval matrix exponentials (see @Goldsztejn2014). Being able to solve  for different $x_0$ and $u_0$ allows us to (offline) compute adapted state and input contstraints according to @Beradi2001_ECC [Prop. 4 and Thm. 5] or @SchulzeDarup2015_CDC1 [Prop. 2]. Satisfying these adapted constraints for the discretized system  finally guarantees constraint satisfaction of the continuous-time system  w.r.t. the original constraints .

The new method was illustrated with four examples. For every example, we were able to compute an $\epsilon$-optimal solution to the non-convex OP  (with $\epsilon=10^{-6}$). For three examples, the OP has even been solved exactly. For the two technical examples taken from @Gutman1987 and @Sopasakis2014, the algorithm terminated instantaneously without branching (i.e., without bisections). In fact, branching (and bounding) was only required for the two academic examples, which were designed to challenge Alg. \[alg:fMaxBranchAndBound\]. Such challenges are unlikely to appear in practice, however, since they were either caused by an inappropriately high sampling time $\Delta t$ (see Fig. \[fig:example1to4\].(f)) or an extremely rare feature of $f$ in terms of a saddle point at the boundary of $[0,\Delta t]$ (see Fig. \[fig:example1to4\].(g)).

Algorithm \[alg:fMaxBranchAndBound\] was particularly designed to solve problems of the form . However, it can be used to solve any univariate OP on a convex domain, for which the objective function $f$ is of class ${\mathcal{C}}^2$ and for which interval inclusions for the first *and* second derivative of $f$ can be computed efficiently. In this context, note that the list of suitable overestimators in Lem. \[lem:Overestimators\] is (by far) not complete. The overestimator of type 2, which performed most successfully for the analyzed examples (see Tab. \[tab:1to4\] and Fig. \[fig:example3Details\]) can for example be further improved using the results in @Sergeyev1998.

Acknowledgments
===============

Financial support by the German Research Foundation (DFG) through the grant SCHU 2094/1-1 is gratefully acknowledged.

References {#references .unnumbered}
==========

<span>10</span>

P. Sopasakis, P. Patrinos, H. Sarimveis, <span>MPC</span> for sampled-data linear systems: Guaranteeing constraint satisfaction in continuous-time, IEEE Trans. Autom. Control 59 (4) (2014) 1088–1093.

L. Berardi, E. De Santis, M. D. Di Benedetto, G. Pola, Controlled safe sets for continuous time systems, in: Proc. of European Control Conference, 2001, pp. 803–808.

M. Schulze Darup, Efficient constraint adaptation for sampled linear systems, in: Proc. of the 54th <span>C</span>onference on <span>D</span>ecision and <span>C</span>ontrol, 2015.

R. E. Moore, Methods and applications of interval analysis, SIAM, 1979.

A. Goldsztejn, A. Neumaier, On the exponentiation of interval matrices, Reliable Computing 20 (2014) 52–72.

O. Kosheleva, V. Kreinovich, G. Mayer, H. T. Nguyen, Computing the cube of an interval matrix is <span>NP</span>-hard., in: Proc. of the 2005 ACM Symposium on Applied Computing, 2005, pp. 1449–1453.

S. A. Piyavskii, An algorithm for finding the absolute extremum of a function, Com. Maths. Math. Phys. 12 (1972) 57–67.

L. Breiman, A. Cutler, A deterministic algorithm for global optimization, Mathematical Programming 58 (1993) 179–199.

C. D. Maranas, C. A. Floudas, Global minimum potential energy conformations of small molecules, Journal of Global Optimization 4 (2) (1994) 135–170.

E. R. Hansen, Global optimization using interval analysis: <span>T</span>he one-dimensional case, J. Optim. Theory Appl. 29 (3) (1979) 251–293.

Y. D. Sergeyev, Global one-dimensional optimization using smooth auxiliary functions, Mathematical Programming 81 (1) (1998) 127–146.

P. O. Gutman, M. Cwikel, <span>An algorithm to find maximal state constraint sets for discrete-time linear dynamical systems with bounded control and states</span>, IEEE Trans. Autom. Control <span>32</span> (<span>3</span>) (<span>1987</span>) <span>251–253</span>.

{'source': 'arXiv_out/1603'}