This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Set-based state estimation and fault diagnosis of linear discrete-time descriptor systems using constrained zonotopes

Brenner S. Rego    Davide M. Raimondo    Guilherme V. Raffo Graduate Program in Electrical Engineering, Federal University of Minas Gerais, Belo Horizonte, Brazil (e-mail: [email protected]) Department of Electrical, Computer and Biomedical Engineering, University of Pavia, Pavia, Italy (e-mail: [email protected]) Department of Electronics Engineering, Federal University of Minas Gerais, Belo Horizonte, Brazil (e-mail: [email protected])
Abstract

This paper presents new methods for set-valued state estimation and active fault diagnosis of linear descriptor systems. The algorithms are based on constrained zonotopes, a generalization of zonotopes capable of describing strongly asymmetric convex sets, while retaining the computational advantages of zonotopes. Additionally, unlike other set representations like intervals, zonotopes, ellipsoids, paralletopes, among others, linear static constraints on the state variables, typical of descriptor systems, can be directly incorporated in the mathematical description of constrained zonotopes. Therefore, the proposed methods lead to more accurate results in state estimation in comparison to existing methods based on the previous sets without requiring rank assumptions on the structure of the descriptor system and with a fair trade-off between accuracy and efficiency. These advantages are highlighted in two numerical examples.

keywords:
Set-based estimation, fault diagnosis, constrained zonotopes, descriptor systems.
thanks: This work has been supported by the Italian Ministry for Research in the framework of the 2017 PRIN, Grant no. 2017YKXYXJ, the brazilian project INCT under the grant CNPq 465755/2014-3, FAPESP 2014/50851-0, and also by the brazilian agencies CAPES under the grants 001 and 88887.136349/2017-00, and FAPEMIG. ©2020 the authors. This work has been accepted to IFAC for publication under a Creative Commons Licence CC-BY-NC-ND.

1 Introduction

Many physical processes such as battery packs, robotic systems with holonomic and nonholonomic constraints, and socioeconomic systems (Janschek, 2011; Yang et al., 2019), exhibit static relations between their internal variables. These processes are known as descriptor systems (or implicit systems), which have generalized dynamic and static behaviors described through differential and algebraic equations, respectively (Wang et al., 2018a). Descriptor systems appear in several contexts, such as linear control (Bender and Laub, 1987), fault-tolerant control (Shi and Patton, 2014), and fault diagnosis (Wang et al., 2019). However, few strategies can deal effectively with state estimation and fault diagnosis of descriptor systems when uncertainties with unknown probability distribution are present (Hamdi et al., 2012).

Set-based strategies for state estimation of discrete-time descriptor systems with unknown-but-bounded uncertainties is a recent subject, often addressed using intervals, zonotopes and ellipsoids (Efimov et al., 2015; Wang et al., 2018a, b; Merhy et al., 2019). Interval methods are used in Efimov et al. (2015) to design a state estimator for time-delay descriptor systems based on linear matrix inequalities and the Luenberger structure. However, interval arithmetics can lead to conservative enclosures due to the wrapping effect. A few methods are proposed in Wang et al. (2018a) for set-valued state estimation of linear descriptor systems by enclosing the intersection of two consistent sets with a zonotope bound. Nevertheless, since the intersection cannot be computed exactly, the resulting bound can be conservative. These strategies are extended in Wang et al. (2018b) for linear parameter-varying descriptor systems, but conservative enclosures are still present since the intersection method is maintained. Ellipsoids are used in Merhy et al. (2019) for state estimation of linear descriptor systems based on Luenberger type observers. Despite being able to provide stable bounds, the ellipsoidal estimation can be conservative since the complexity of the set is fixed and static relations are not directly incorporated. In addition, as in Wang et al. (2018a), restrictive assumptions on the rank of the system matrices are required to be able to design the proposed estimator. Moreover, due to the static constraints, the reachable sets of models of a descriptor system may be asymmetric even if the initial set is symmetric, and therefore methods based on the sets above can provide conservative enclosures.

Fault diagnosis aims to determine exactly which fault a process is subject to. For the case of descriptor systems, this problem has been considered in recent works using zonotopes (Yang et al., 2019; Wang et al., 2019). While Wang et al. (2019) explores the use of unknown input observers for robust passive fault diagnosis limited to additive faults, Yang et al. (2019) proposes a zonotope-based method for active fault diagnosis (AFD) of descriptor systems. The latter is based on the design of an input sequence for separation of the reachable sets. Unfortunately, the generator representation of zonotopes cannot incorporate exactly static relations between the state variables in general linear descriptor systems. Consequently, in practice, this may lead to a more difficult diagnosis.

This manuscript proposes strategies for set-based state estimation and AFD of linear descriptor systems based on constrained zonotopes (CZs), aiming to reduce the conservativeness described above through this asymmetric set representation. In contrast to the aforementioned sets, it is worth noting that linear static constraints, typical of descriptor systems, can be directly incorporated in the mathematical description of CZs. Thanks to this feature, set-valued methods based on CZs can provide less conservative enclosures. The proposed methods extensively explore the basic properties of CZs (Scott et al., 2016). In addition, efficient complexity reduction methods for CZs, available in the literature (Scott et al., 2016; Yang and Scott, 2018), are used in the proposed strategies allowing a direct trade-off between accuracy and computational efficiency. The superiority of the proposed approaches with respect to zonotope-based methods is highlighted in numerical examples.

1.1 Problem formulation and preliminaries

Consider a linear discrete-time descriptor system with time kk, state 𝐱kn{\mathbf{x}}_{k}\in\mathbb{R}^{n}, input 𝐮knu{\mathbf{u}}_{k}\in\mathbb{R}^{n_{u}}, process uncertainty 𝐰knw{\mathbf{w}}_{k}\in\mathbb{R}^{n_{w}}, measured output 𝐲kny{\mathbf{y}}_{k}\in\mathbb{R}^{n_{y}}, and measurement uncertainty 𝐯knv{\mathbf{v}}_{k}\in\mathbb{R}^{n_{v}}. In each time interval [k1,k][k-1,k], k=1,2,k=1,2,\ldots, the system evolves according to the model

𝐄𝐱k\displaystyle{\mathbf{E}}{\mathbf{x}}_{k} =𝐀𝐱k1+𝐁𝐮k1+𝐁w𝐰k1,\displaystyle={\mathbf{A}}{\mathbf{x}}_{k-1}+{\mathbf{B}}{\mathbf{u}}_{k-1}+{\mathbf{B}}_{w}{\mathbf{w}}_{k-1}, (1)
𝐲k\displaystyle{\mathbf{y}}_{k} =𝐂𝐱k+𝐃𝐮k+𝐃v𝐯k,\displaystyle={\mathbf{C}}{\mathbf{x}}_{k}+{\mathbf{D}}{\mathbf{u}}_{k}+{\mathbf{D}}_{v}{\mathbf{v}}_{k},

with 𝐄n×n{\mathbf{E}}\in\mathbb{R}^{n\times n}, 𝐀n×n{\mathbf{A}}\in\mathbb{R}^{n\times n}, 𝐁n×nu{\mathbf{B}}\in\mathbb{R}^{n\times n_{u}}, 𝐁wn×nw{\mathbf{B}}_{w}\in\mathbb{R}^{n\times n_{w}}, 𝐂ny×n{\mathbf{C}}\in\mathbb{R}^{n_{y}\times n}, 𝐃ny×nu{\mathbf{D}}\in\mathbb{R}^{n_{y}\times n_{u}}, and 𝐃vny×nv{\mathbf{D}}_{v}\in\mathbb{R}^{n_{y}\times n_{v}}. In the following, it is assumed that rank(𝐄)n\text{rank}({\mathbf{E}})\leq n. Note that when 𝐄{\mathbf{E}} is singular, one has nrank(𝐄)n-\text{rank}({\mathbf{E}}) purely static constraints. It is assumed that the initial state 𝐱0X0{\mathbf{x}}_{0}\in X_{0} and (𝐰k,𝐯k)W×V({\mathbf{w}}_{k},{\mathbf{v}}_{k})\in W\times V for all k0k\geq 0, where X0X_{0}, WW and VV are known polytopic sets. Moreover, the initial condition (𝐱0,𝐮0,𝐰0,𝐯0)({\mathbf{x}}_{0},{\mathbf{u}}_{0},{\mathbf{w}}_{0},{\mathbf{v}}_{0}) is assumed to be feasible, i.e., consistent with the static relations in (1), and the output 𝐲0{\mathbf{y}}_{0} is computed as 𝐲0=𝐂𝐱0+𝐃𝐮0+𝐃v𝐯0{\mathbf{y}}_{0}={\mathbf{C}}{\mathbf{x}}_{0}+{\mathbf{D}}{\mathbf{u}}_{0}+{\mathbf{D}}_{v}{\mathbf{v}}_{0}.

Constrained zonotopes are an extension of zonotopes, proposed in Scott et al. (2016), capable of describing also asymmetric convex polytopes, while maintaining the well-known computational benefits of zonotopes.

Definition 1

A set ZnZ\subset\mathbb{R}^{n} is a constrained zonotope if (𝐆z,𝐜z,𝐀z,𝐛z)n×ng×n×nc×ng×nc\exists({\mathbf{G}}_{z},{\mathbf{c}}_{z},{\mathbf{A}}_{z},{\mathbf{b}}_{z})\in\mathbb{R}^{n\times n_{g}}\times\mathbb{R}^{n}\times\mathbb{R}^{n_{c}\times n_{g}}\times\mathbb{R}^{n_{c}} such that

Z={𝐜z+𝐆z𝝃:𝝃1,𝐀z𝝃=𝐛z}.Z=\left\{{\mathbf{c}}_{z}+{\mathbf{G}}_{z}\bm{\xi}:\|\bm{\xi}\|_{\infty}\leq 1,{\mathbf{A}}_{z}\bm{\xi}={\mathbf{b}}_{z}\right\}. (2)

Equation (2) is referred as constrained generator representation (CG-rep). Each column of 𝐆z{\mathbf{G}}_{z} is a generator, 𝐜z{\mathbf{c}}_{z} is the center, and 𝐀z𝝃=𝐛z{\mathbf{A}}_{z}\bm{\xi}={\mathbf{b}}_{z} are the constraints. Differently from zonotopes, the linear equality constraints in (2) permit a CZ to describe general convex polytopes (Scott et al., 2016). In the following, we use the shorthand notation Z={𝐆z,𝐜z,𝐀z,𝐛z}Z=\{{\mathbf{G}}_{z},{\mathbf{c}}_{z},{\mathbf{A}}_{z},{\mathbf{b}}_{z}\} for CZs, Z={𝐆z,𝐜z}Z=\{{\mathbf{G}}_{z},{\mathbf{c}}_{z}\} for zonotopes. In addition, B(𝐀z,𝐛z)={𝝃ng:𝝃1,𝐀z𝝃=𝐛z}B_{\infty}({\mathbf{A}}_{z},{\mathbf{b}}_{z})=\{\bm{\xi}\in\mathbb{R}^{n_{g}}:\|{\bm{\xi}}\|_{\infty}\leq 1,\,{\mathbf{A}}_{z}\bm{\xi}={\mathbf{b}}_{z}\} and Bng={𝝃ng:𝝃1}B_{\infty}^{n_{g}}=\{\bm{\xi}\in\mathbb{R}^{n_{g}}:\|{\bm{\xi}}\|_{\infty}\leq 1\} denote, respectively, the ngn_{g}-dimensional constrained unitary hypercube and the unitary hypercube111The superscript ngn_{g} is omitted in B(𝐀z,𝐛z)B_{\infty}({\mathbf{A}}_{z},{\mathbf{b}}_{z}) for simplicity.. A few common set operations can be computed using CZs in a trivial manner. Let Z,WnZ,W\subset\mathbb{R}^{n}, 𝐑m×n{\mathbf{R}}\in\mathbb{R}^{m\times n}, and YmY\subset\mathbb{R}^{m}. Define the linear mapping, Minkowski sum, and generalized intersection as

𝐑Z\displaystyle{\mathbf{R}}Z {𝐑𝐳:𝐳Z},\displaystyle\triangleq\{{\mathbf{R}}{\mathbf{z}}:{\mathbf{z}}\in Z\}, (3)
ZW\displaystyle Z\oplus W {𝐳+𝐰:𝐳Z,𝐰W},\displaystyle\triangleq\{{\mathbf{z}}+{\mathbf{w}}:{\mathbf{z}}\in Z,\,{\mathbf{w}}\in W\}, (4)
Z𝐑Y\displaystyle Z\cap_{{\mathbf{R}}}Y {𝐳Z:𝐑𝐳Y}.\displaystyle\triangleq\{{\mathbf{z}}\in Z:{\mathbf{R}}{\mathbf{z}}\in Y\}. (5)

If ZZ, WW, YY are in CG-rep, then (3)–(5) are CZs given by

𝐑Z\displaystyle{\mathbf{R}}Z ={𝐑𝐆z,𝐑𝐜z,𝐀z,𝐛z},\displaystyle\!=\!\left\{{\mathbf{R}}{\mathbf{G}}_{z},{\mathbf{R}}{\mathbf{c}}_{z},{\mathbf{A}}_{z},{\mathbf{b}}_{z}\right\}\!, (6)
ZW\displaystyle Z\oplus W ={[𝐆z𝐆w],𝐜z+𝐜w,[𝐀z𝟎𝟎𝐀w],[𝐛z𝐛w]},\displaystyle\!=\!\left\{\begin{bmatrix}{\mathbf{G}}_{z}\,\;{\mathbf{G}}_{w}\end{bmatrix},{\mathbf{c}}_{z}+{\mathbf{c}}_{w},\begin{bmatrix}{\mathbf{A}}_{z}&\bm{0}\\ \bm{0}&{\mathbf{A}}_{w}\end{bmatrix},\begin{bmatrix}{\mathbf{b}}_{z}\\ {\mathbf{b}}_{w}\end{bmatrix}\right\}\!, (7)
Z𝐑Y\displaystyle Z\cap_{{\mathbf{R}}}Y ={[𝐆z 0],𝐜z,[𝐀z𝟎𝟎𝐀y𝐑𝐆z𝐆y],[𝐛z𝐛y𝐜y𝐑𝐜z]}.\displaystyle\!=\!\left\{\begin{bmatrix}{\mathbf{G}}_{z}\;\bm{0}\end{bmatrix},{\mathbf{c}}_{z},\begin{bmatrix}{\mathbf{A}}_{z}&\bm{0}\\ \bm{0}&{\mathbf{A}}_{y}\\ {\mathbf{R}}{\mathbf{G}}_{z}&-{\mathbf{G}}_{y}\end{bmatrix},\begin{bmatrix}{\mathbf{b}}_{z}\\ {\mathbf{b}}_{y}\\ {\mathbf{c}}_{y}-{\mathbf{R}}{\mathbf{c}}_{z}\end{bmatrix}\right\}\!. (8)

With zonotopes, (3) and (4) are computed efficiently, but (5) is conservative and difficult to compute in the general case (Bravo et al., 2006). Operations (3) and (4) are computed trivially with polytopes in vertex representation, and (5) is computed efficiently in half-space representation, but conversions between representations are extremely expensive (Hagemann, 2015). On the other hand, operations (3)–(5) are computed trivially with CZs by (6)–(8) resulting only in a mild increase in the complexity of the CG-rep (2). Efficient methods for complexity reduction (to enclose a CZ with another one with fewer generators and constraints) are available, see Scott et al. (2016).

2 State estimation of descriptor systems

This section presents a new method for set-based state estimation of system (1). For the sake of clarity, the prediction-update algorithm for standard discrete-time systems is first recalled. Consider (1) with 𝐄=𝐈{\mathbf{E}}={\mathbf{I}}. Given an initial condition X0X_{0} and an input 𝐮k{\mathbf{u}}_{k} with k0k\geq 0, let

X^0={𝐱X0:𝐂𝐱+𝐃𝐮0+𝐃v𝐯=𝐲0,𝐯V}.\hat{X}_{0}=\{\mathbf{x}\in X_{0}:{\mathbf{C}}{\mathbf{x}}+{\mathbf{D}}{\mathbf{u}}_{0}+{\mathbf{D}}_{v}{\mathbf{v}}={\mathbf{y}}_{0},\,\mathbf{v}\in V\}. (9)

Then, for k1k\geq 1 the prediction-update algorithm consists in computing sets X¯k\bar{X}_{k} and X^k\hat{X}_{k} satisfying (Scott et al., 2016)

X¯k\displaystyle\bar{X}_{k} ={𝐀𝐱+𝐁𝐮k1+𝐁w𝐰:𝐱X^k1,𝐰W},\displaystyle=\{{\mathbf{A}}{\mathbf{x}}+{\mathbf{B}}{\mathbf{u}}_{k-1}+{\mathbf{B}}_{w}{\mathbf{w}}:\mathbf{x}\in\hat{X}_{k-1},\,\mathbf{w}\in W\}, (10)
X^k\displaystyle\hat{X}_{k} ={𝐱X¯k:𝐂𝐱+𝐃𝐮k+𝐃v𝐯=𝐲k,𝐯V},\displaystyle=\{\mathbf{x}\in\bar{X}_{k}:{\mathbf{C}}{\mathbf{x}}+{\mathbf{D}}{\mathbf{u}}_{k}+{\mathbf{D}}_{v}{\mathbf{v}}={\mathbf{y}}_{k},\,\mathbf{v}\in V\}, (11)

in which (10) is referred to as the prediction step, and (11) as the update step. The prediction step (10) must be reformulated when 𝐄{\mathbf{E}} is not invertible. We first consider the following assumption.

Assumption 1

There exists a known CZ Xa={𝐆a,𝐜aX_{\text{a}}=\{{\mathbf{G}}_{\text{a}},{\mathbf{c}}_{\text{a}}, 𝐀a{\mathbf{A}}_{\text{a}}, 𝐛a}n{\mathbf{b}}_{\text{a}}\}\subset\mathbb{R}^{n} such that 𝐱kXa{\mathbf{x}}_{k}\in X_{\text{a}} for all k0k\geq 0.

Remark 1

Even though XaX_{\text{a}} can be arbitrarily large, Assumption 1 is restrictive in the sense that the descriptor system (1) must be stable. Unstable systems are out of the scope of this paper and will be considered in future work.

The set estimation in Scott et al. (2016) relied on (6)–(8) to compute the steps (10)–(11). In order to extend this method to the case of descriptor systems, when computing X¯k\bar{X}_{k} it is necessary to take into account the static constraints arising from the possible singularity of 𝐄{\mathbf{E}}. The proposed method is based on singular value decomposition (SVD). Let 𝐄=𝐔𝚺𝐕T{\mathbf{E}}={\mathbf{U}}{\mathbf{\Sigma}}{\mathbf{V}}^{T}, where 𝐔{\mathbf{U}} and 𝐕{\mathbf{V}} are invertible by construction. Since 𝐄{\mathbf{E}} is square, then 𝚺{\mathbf{\Sigma}} is also square. Without loss of generality, let 𝚺{\mathbf{\Sigma}} be arranged as 𝚺=blkdiag(𝚺~,𝟎){\mathbf{\Sigma}}=\text{blkdiag}(\tilde{{\mathbf{\Sigma}}},{\mathbf{0}}), where 𝚺~nz×nz\tilde{{\mathbf{\Sigma}}}\in\mathbb{R}^{n_{z}\times n_{z}} is diagonal with all the nz=rank(𝐄)n_{z}=\text{rank}({\mathbf{E}}) nonzero singular values of 𝐄{\mathbf{E}}. Moreover, let 𝐳k=(𝐳~k,𝐳ˇk)=𝐓1𝐱k,𝐳~knz,𝐳ˇknnz{\mathbf{z}}_{k}=(\tilde{{\mathbf{z}}}_{k},\check{{\mathbf{z}}}_{k})={{\mathbf{T}}}{\,\!}^{-1}{\mathbf{x}}_{k},\;\tilde{{\mathbf{z}}}_{k}\in\mathbb{R}^{n_{z}},\check{{\mathbf{z}}}_{k}\in\mathbb{R}^{n-n_{z}},

[𝐀~𝐀ˇ]\displaystyle\begin{bmatrix}\tilde{{\mathbf{A}}}\\ \check{{\mathbf{A}}}\end{bmatrix} =[𝚺~1𝟎𝟎𝐈]𝐔1𝐀𝐓,\displaystyle=\begin{bmatrix}\tilde{{\mathbf{\Sigma}}}^{-1}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{I}}\end{bmatrix}{{\mathbf{U}}}{\,\!}^{-1}{\mathbf{A}}{\mathbf{T}}, (12)
[𝐁~𝐁ˇ]\displaystyle\begin{bmatrix}\tilde{{\mathbf{B}}}\\ \check{{\mathbf{B}}}\end{bmatrix} =[𝚺~1𝟎𝟎𝐈]𝐔1𝐁,[𝐁~w𝐁ˇw]=[𝚺~1𝟎𝟎𝐈]𝐔1𝐁w,\displaystyle=\begin{bmatrix}\tilde{{\mathbf{\Sigma}}}^{-1}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{I}}\end{bmatrix}{{\mathbf{U}}}{\,\!}^{-1}{\mathbf{B}},\begin{bmatrix}\tilde{{\mathbf{B}}}_{w}\\ \check{{\mathbf{B}}}_{w}\end{bmatrix}=\begin{bmatrix}\tilde{{\mathbf{\Sigma}}}^{-1}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{I}}\end{bmatrix}{{\mathbf{U}}}{\,\!}^{-1}{\mathbf{B}}_{w},

with 𝐓=(𝐕T)1{\mathbf{T}}={({\mathbf{V}}^{T})}{\,\!}^{-1}, 𝐀~nz×n\tilde{{\mathbf{A}}}\in\mathbb{R}^{n_{z}\times n}, 𝐁~nz×nu\tilde{{\mathbf{B}}}\in\mathbb{R}^{n_{z}\times n_{u}}, 𝐁~wnz×nw\tilde{{\mathbf{B}}}_{w}\in\mathbb{R}^{n_{z}\times n_{w}}. Then, system (1) can be rewritten with decoupled dynamics given by (Jonchkeere, 1988)

𝐳~k\displaystyle\tilde{{\mathbf{z}}}_{k} =𝐀~𝐳k1+𝐁~𝐮k1+𝐁~w𝐰k1,\displaystyle=\tilde{{\mathbf{A}}}{\mathbf{z}}_{k-1}+\tilde{{\mathbf{B}}}{\mathbf{u}}_{k-1}+\tilde{{\mathbf{B}}}_{w}{\mathbf{w}}_{k-1}, (13a)
𝟎\displaystyle{\mathbf{0}} =𝐀ˇ𝐳k1+𝐁ˇ𝐮k1+𝐁ˇw𝐰k1,\displaystyle=\check{{\mathbf{A}}}{\mathbf{z}}_{k-1}+\check{{\mathbf{B}}}{\mathbf{u}}_{k-1}+\check{{\mathbf{B}}}_{w}{\mathbf{w}}_{k-1}, (13b)
𝐲k\displaystyle{\mathbf{y}}_{k} =𝐂𝐓𝐳k+𝐃𝐮k+𝐃v𝐯k.\displaystyle={\mathbf{C}}{\mathbf{T}}{\mathbf{z}}_{k}+{\mathbf{D}}{\mathbf{u}}_{k}+{\mathbf{D}}_{v}{\mathbf{v}}_{k}. (13c)

Consider W={𝐆w,𝐜w,𝐀w,𝐛w}W=\{{\mathbf{G}}_{w},{\mathbf{c}}_{w},{\mathbf{A}}_{w},{\mathbf{b}}_{w}\}, and X^0\hat{X}_{0} given by (9). From (13b), the state 𝐳0{\mathbf{z}}_{0} must satisfy 𝐀ˇ𝐳0+𝐁ˇ𝐮0+𝐁ˇw𝐰0=𝟎\check{{\mathbf{A}}}{\mathbf{z}}_{0}+\check{{\mathbf{B}}}{\mathbf{u}}_{0}+\check{{\mathbf{B}}}_{w}{\mathbf{w}}_{0}={\mathbf{0}}. This constraint can be incorporated in the CG-rep of the initial set Z^0\hat{Z}_{0} as follows. Let 𝐓1X^0{𝐆0,𝐜0,𝐀0,𝐛0}{{\mathbf{T}}}{\,\!}^{-1}\hat{X}_{0}\triangleq\{{\mathbf{G}}_{0},{\mathbf{c}}_{0},{\mathbf{A}}_{0},{\mathbf{b}}_{0}\}. Then, Z^0{𝐆^0,𝐜^0,𝐀^0,𝐛^0}\hat{Z}_{0}\triangleq\{\hat{{\mathbf{G}}}_{0},\hat{{\mathbf{c}}}_{0},\hat{{\mathbf{A}}}_{0},\hat{{\mathbf{b}}}_{0}\}, with 𝐆^0=[𝐆0  0]\hat{{\mathbf{G}}}_{0}=[{\mathbf{G}}_{0}\,\;{\mathbf{0}}], 𝐜^0=𝐜0\hat{{\mathbf{c}}}_{0}={\mathbf{c}}_{0},

𝐀^0=[𝐀0𝟎𝐀ˇ𝐆0𝐁ˇw𝐆w],𝐛^0=[𝐛0𝐀ˇ𝐜0𝐁ˇw𝐜w𝐁ˇ𝐮0].\displaystyle\hat{{\mathbf{A}}}_{0}=\begin{bmatrix}{\mathbf{A}}_{0}&{\mathbf{0}}\\ \check{{\mathbf{A}}}{\mathbf{G}}_{0}&\check{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\end{bmatrix},\;\hat{{\mathbf{b}}}_{0}=\begin{bmatrix}{\mathbf{b}}_{0}\\ -\check{{\mathbf{A}}}{\mathbf{c}}_{0}-\check{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}-\check{{\mathbf{B}}}{\mathbf{u}}_{0}\end{bmatrix}.

Note that the extra columns in 𝐆^0\hat{{\mathbf{G}}}_{0} and 𝐀^0\hat{{\mathbf{A}}}_{0} come from 𝐰0W{\mathbf{w}}_{0}\in W. Having defined Z^0\hat{Z}_{0}, for the purpose of state estimation the static relation (13b) can be shifted forward to time kk without loss of information. By doing so, from (13), the variables 𝐳~k\tilde{{\mathbf{z}}}_{k} are fully determined by (13a), while 𝐳ˇk\check{{\mathbf{z}}}_{k} are obtained a posteriori by 𝐀ˇ𝐳k+𝐁ˇ𝐮k+𝐁ˇw𝐰k=𝟎\check{{\mathbf{A}}}{\mathbf{z}}_{k}+\check{{\mathbf{B}}}{\mathbf{u}}_{k}+\check{{\mathbf{B}}}_{w}{\mathbf{w}}_{k}={\mathbf{0}}.

Consider the set Za=𝐓1Xa={𝐓1𝐆a,𝐓1𝐜a,𝐀a,𝐛a}Z_{\text{a}}={{\mathbf{T}}}{\,\!}^{-1}X_{\text{a}}=\{{{\mathbf{T}}}{\,\!}^{-1}{\mathbf{G}}_{\text{a}},{{\mathbf{T}}}{\,\!}^{-1}{\mathbf{c}}_{\text{a}},{\mathbf{A}}_{\text{a}},{\mathbf{b}}_{\text{a}}\}, and let 𝐓1𝐜a=[𝐜~aT𝐜ˇaT]T{{\mathbf{T}}}{\,\!}^{-1}{\mathbf{c}}_{\text{a}}=[\tilde{{\mathbf{c}}}_{\text{a}}^{T}\,\;\check{{\mathbf{c}}}_{\text{a}}^{T}]^{T}, 𝐓1𝐆a=[𝐆~aT𝐆ˇaT]T{{\mathbf{T}}}{\,\!}^{-1}{\mathbf{G}}_{\text{a}}=[\tilde{{\mathbf{G}}}_{\text{a}}^{T}\,\;\check{{\mathbf{G}}}_{\text{a}}^{T}]^{T}. An effective enclosure of the prediction step for the descriptor system (13) can be obtained in CG-rep as follows.

Lemma 1

For k1k\geq 1, assume 𝐳k1Z^k1={𝐆^k1,𝐜^k1{\mathbf{z}}_{k-1}\in\hat{Z}_{k-1}=\{\hat{{\mathbf{G}}}_{k-1},\hat{{\mathbf{c}}}_{k-1}, 𝐀^k1,𝐛^k1}\hat{{\mathbf{A}}}_{k-1},\hat{{\mathbf{b}}}_{k-1}\} and 𝐰k1,𝐰kW={𝐆w,𝐜w,𝐀w,𝐛w}{\mathbf{w}}_{k-1},{\mathbf{w}}_{k}\in W=\{{\mathbf{G}}_{w},{\mathbf{c}}_{w},{\mathbf{A}}_{w},{\mathbf{b}}_{w}\}. Consider (13). If Assumption 1 holds, then 𝐳kZ¯k={𝐆¯k,𝐜¯k,𝐀¯k,𝐛¯k}{\mathbf{z}}_{k}\in\bar{Z}_{k}=\{\bar{{\mathbf{G}}}_{k},\bar{{\mathbf{c}}}_{k},\bar{{\mathbf{A}}}_{k},\bar{{\mathbf{b}}}_{k}\}, with

𝐆¯k\displaystyle\bar{{\mathbf{G}}}_{k} =[𝐀~𝐆^k1𝐁~w𝐆w𝟎𝟎𝟎𝟎𝐆ˇa𝟎],𝐜¯k=[𝐀~𝐜^k1+𝐁~𝐮k1+𝐁~w𝐜w𝐜ˇa],\displaystyle{=}\!\!\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{G}}}_{k-1}&\!\tilde{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\!&{\mathbf{0}}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{0}}&\check{{\mathbf{G}}}_{\text{a}}&{\mathbf{0}}\end{bmatrix}\!\!,\bar{{\mathbf{c}}}_{k}{=}\!\!\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{c}}}_{k-1}{+}\tilde{{\mathbf{B}}}{\mathbf{u}}_{k-1}{+}\tilde{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}\\ \check{{\mathbf{c}}}_{\text{a}}\end{bmatrix}\!\!,
𝐀¯k\displaystyle\bar{{\mathbf{A}}}_{k} =[blkdiag(𝐀^k1,𝐀w,𝐀a,𝐀w)𝐀ˇ[𝐀~𝐆^k1𝟎]𝐀ˇ[𝐁~w𝐆w𝟎]𝐀ˇ[𝟎𝐆ˇa]𝐁ˇw𝐆w],\displaystyle=\begin{bmatrix}\lx@intercol\hfil\text{blkdiag}(\hat{{\mathbf{A}}}_{k-1},{\mathbf{A}}_{w},{\mathbf{A}}_{\text{a}},{\mathbf{A}}_{w})\hfil\lx@intercol\\ \check{{\mathbf{A}}}\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{G}}}_{k-1}\\ {\mathbf{0}}\end{bmatrix}&\check{{\mathbf{A}}}\begin{bmatrix}\tilde{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\\ {\mathbf{0}}\end{bmatrix}&\check{{\mathbf{A}}}\begin{bmatrix}{\mathbf{0}}\\ \check{{\mathbf{G}}}_{\text{a}}\end{bmatrix}&\check{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\end{bmatrix},
𝐛¯k\displaystyle\bar{{\mathbf{b}}}_{k} =[[𝐛^k1T𝐛wT𝐛aT𝐛wT]T𝐀ˇ[𝐀~𝐜^k1+𝐁~𝐮k1+𝐁~w𝐜w𝐜ˇa]𝐁ˇ𝐮k𝐁ˇw𝐜w].\displaystyle=\begin{bmatrix}[\hat{{\mathbf{b}}}_{k-1}^{T}\,\;{\mathbf{b}}_{w}^{T}\,\;{\mathbf{b}}_{\text{a}}^{T}\,\;{\mathbf{b}}_{w}^{T}]^{T}\\ -\check{{\mathbf{A}}}\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{c}}}_{k-1}+\tilde{{\mathbf{B}}}{\mathbf{u}}_{k-1}+\tilde{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}\\ \check{{\mathbf{c}}}_{\text{a}}\end{bmatrix}-\check{{\mathbf{B}}}{\mathbf{u}}_{k}-\check{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}\end{bmatrix}.
{pf}

Since by assumption (𝐳k1,𝐰k1,𝐰k)Z^k1×W×W({\mathbf{z}}_{k-1},{\mathbf{w}}_{k-1},{\mathbf{w}}_{k})\in\hat{Z}_{k-1}\times W\times W, there exists (𝝃k1,𝜹k1,𝜹k)B(𝐀^k1,𝐛^k1)×B(𝐀w,𝐛w)×B(𝐀w,𝐛w)(\bm{\xi}_{k-1},\bm{\delta}_{k-1},\bm{\delta}_{k})\in B_{\infty}(\hat{{\mathbf{A}}}_{k-1},\hat{{\mathbf{b}}}_{k-1})\times B_{\infty}({\mathbf{A}}_{w},{\mathbf{b}}_{w})\times B_{\infty}({\mathbf{A}}_{w},{\mathbf{b}}_{w}) such that 𝐳k1=𝐜^k1+𝐆^k1𝝃k1{\mathbf{z}}_{k-1}=\hat{{\mathbf{c}}}_{k-1}+\hat{{\mathbf{G}}}_{k-1}\bm{\xi}_{k-1}, 𝐰k1=𝐜w+𝐆w𝜹k1{\mathbf{w}}_{k-1}={\mathbf{c}}_{w}+{\mathbf{G}}_{w}\bm{\delta}_{k-1}, and 𝐰k=𝐜w+𝐆w𝜹k{\mathbf{w}}_{k}={\mathbf{c}}_{w}+{\mathbf{G}}_{w}\bm{\delta}_{k}. Moreover, Assumption 1 implies that 𝐳kZa{\mathbf{z}}_{k}\in Z_{\text{a}}. Thus there must exist 𝝃aB(𝐀a,𝐛a)\bm{\xi}_{\text{a}}\in B_{\infty}({\mathbf{A}}_{\text{a}},{\mathbf{b}}_{\text{a}}) such that 𝐳ˇk=𝐜ˇa+𝐆ˇa𝝃a\check{{\mathbf{z}}}_{k}=\check{{\mathbf{c}}}_{\text{a}}+\check{{\mathbf{G}}}_{\text{a}}\bm{\xi}_{\text{a}}. Therefore, substituting these equalities in (13a) leads to

(𝐳~k,𝐳ˇk)=\displaystyle(\tilde{{\mathbf{z}}}_{k},\check{{\mathbf{z}}}_{k})= (𝐀~𝐜^k1+𝐁~𝐮k1+𝐁~w𝐜w\displaystyle(\tilde{{\mathbf{A}}}\hat{{\mathbf{c}}}_{k-1}{+}\tilde{{\mathbf{B}}}{\mathbf{u}}_{k-1}{+}\tilde{{\mathbf{B}}}_{w}{\mathbf{c}}_{w} (14)
+𝐀~𝐆^k1𝝃k1+𝐁~w𝐆w𝜹k1,𝐜ˇa+𝐆ˇa𝝃a).\displaystyle{+}\tilde{{\mathbf{A}}}\hat{{\mathbf{G}}}_{k-1}\bm{\xi}_{k-1}{+}\tilde{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\bm{\delta}_{k-1},\check{{\mathbf{c}}}_{\text{a}}+\check{{\mathbf{G}}}_{\text{a}}\bm{\xi}_{\text{a}}).

From the constraint (13b) shifted to time kk, we have that

𝐁ˇw𝐜w+𝐁ˇw𝐆w𝜹k+𝐀ˇ[𝐀~𝐜^k1+𝐁~𝐮k1+𝐁~w𝐜w𝐜ˇa]\displaystyle\check{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}+\check{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}\bm{\delta}_{k}+\check{{\mathbf{A}}}\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{c}}}_{k-1}+\tilde{{\mathbf{B}}}{\mathbf{u}}_{k-1}+\tilde{{\mathbf{B}}}_{w}{\mathbf{c}}_{w}\\ \check{{\mathbf{c}}}_{\text{a}}\end{bmatrix} (15)
+𝐀ˇ[𝐀~𝐆^k1𝐁~w𝐆w𝟎𝟎𝟎𝐆ˇa][𝝃k1𝜹k1𝝃a]+𝐁ˇ𝐮k=𝟎.\displaystyle+\check{{\mathbf{A}}}\begin{bmatrix}\tilde{{\mathbf{A}}}\hat{{\mathbf{G}}}_{k-1}&\tilde{{\mathbf{B}}}_{w}{\mathbf{G}}_{w}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{0}}&\check{{\mathbf{G}}}_{\text{a}}\end{bmatrix}\begin{bmatrix}\bm{\xi}_{k-1}\\ \bm{\delta}_{k-1}\\ \bm{\xi}_{\text{a}}\end{bmatrix}+\check{{\mathbf{B}}}{\mathbf{u}}_{k}={\mathbf{0}}.

Rearranging (14) and (15), grouping (𝝃k1,𝜹k1,𝝃a,(\bm{\xi}_{k-1},\bm{\delta}_{k-1},\bm{\xi}_{\text{a}}, 𝜹k)\bm{\delta}_{k}), and writing in the CG-rep (2) proves the lemma. ∎

Lemma 1 provides a predicted enclosure of the state 𝐳k{\mathbf{z}}_{k} in which the equality constraints (13b), shifted to time kk, are directly taken into account. This is possible thanks to the fact that CZs incorporate equality constraints (see (2)). Finally, the prediction-update algorithm proposed for descriptor systems consists in the computation of CZs Z¯k\bar{Z}_{k}, Z^k\hat{Z}_{k}, and X^k\hat{X}_{k}, such that

Z¯k\displaystyle\bar{Z}_{k} ={𝐆¯k,𝐜¯k,𝐀¯k,𝐛¯k},\displaystyle=\{\bar{{\mathbf{G}}}_{k},\bar{{\mathbf{c}}}_{k},\bar{{\mathbf{A}}}_{k},\bar{{\mathbf{b}}}_{k}\}, (16)
Z^k\displaystyle\hat{Z}_{k} =Z¯k𝐂𝐓((𝐲k𝐃u𝐮k)(𝐃vVk)),\displaystyle=\bar{Z}_{k}\cap_{{\mathbf{C}}{\mathbf{T}}}(({\mathbf{y}}_{k}-{\mathbf{D}}_{u}{\mathbf{u}}_{k})\oplus(-{\mathbf{D}}_{v}V_{k})), (17)
X^k\displaystyle\hat{X}_{k} =𝐓Z^k.\displaystyle={\mathbf{T}}\hat{Z}_{k}. (18)

For this algorithm, the initial set is Z^0\hat{Z}_{0}. The algorithm (16)–(18) operates recursively with Z¯k\bar{Z}_{k} and Z^k\hat{Z}_{k} for k1k\geq 1 in the transformed state-space (13), while the estimated enclosure in the original state-space (1) is given by X^k\hat{X}_{k}.

Remark 2

The set ZaZ_{\text{a}} is used only to predict an enclosure for the components 𝐳ˇk\check{{\mathbf{z}}}_{k}. This way, the static relation (13b) is incorporated as constraints to the variables 𝛏a\bm{\xi}_{\text{a}} in ZaZ_{\text{a}}.

Remark 3

By construction, the CG-rep (16) corresponds to the exact feasible state set of (13) at kk for the known state and uncertainty bounds. In addition, (17)–(18) can be computed exactly. However, in practice, in order to limit the complexity of the resulting sets these are outer approximated by using order reduction algorithms. In this case, equalities (16)-(18) are replaced by the relation \supset.

3 Active fault diagnosis

The previous section presented a method to address the problem of the set-based estimation of descriptor systems. In the following, this tool is used in the design of an AFD method accounting for a finite number of possible abrupt faults. Consider a linear discrete-time descriptor system whose dynamics obeys one of possible nmn_{m} known models

𝐄[i]𝐱k[i]\displaystyle{\mathbf{E}}^{[i]}{\mathbf{x}}_{k}^{[i]} =𝐀[i]𝐱k1[i]+𝐁[i]𝐮k1+𝐁w[i]𝐰k1,\displaystyle={\mathbf{A}}^{[i]}{\mathbf{x}}_{k-1}^{[i]}+{\mathbf{B}}^{[i]}{\mathbf{u}}_{k-1}+{\mathbf{B}}_{w}^{[i]}{\mathbf{w}}_{k-1}, (19)
𝐲k[i]\displaystyle{\mathbf{y}}_{k}^{[i]} =𝐂[i]𝐱k[i]+𝐃[i]𝐮k+𝐃v[i]𝐯k,\displaystyle={\mathbf{C}}^{[i]}{\mathbf{x}}_{k}^{[i]}+{\mathbf{D}}^{[i]}{\mathbf{u}}_{k}+{\mathbf{D}}_{v}^{[i]}{\mathbf{v}}_{k},

for k1k\geq 1, with 𝐄[i]n×n{\mathbf{E}}^{[i]}\in\mathbb{R}^{n\times n}, 𝐀[i]n×n{\mathbf{A}}^{[i]}\in\mathbb{R}^{n\times n}, 𝐁[i]n×nu{\mathbf{B}}^{[i]}\in\mathbb{R}^{n\times n_{u}}, 𝐁w[i]n×nw{\mathbf{B}}_{w}^{[i]}\in\mathbb{R}^{n\times n_{w}}, 𝐂[i]ny×n{\mathbf{C}}^{[i]}\in\mathbb{R}^{n_{y}\times n}, 𝐃[i]ny×nu{\mathbf{D}}^{[i]}\in\mathbb{R}^{n_{y}\times n_{u}}, and 𝐃v[i]ny×nv{\mathbf{D}}_{v}^{[i]}\in\mathbb{R}^{n_{y}\times n_{v}}, i𝕀={1,2,,nm}i\in\mathbb{I}=\{1,2,\ldots,n_{m}\}. Moreover, rank(𝐄[i])n\text{rank}({\mathbf{E}}^{[i]})\leq n, and let 𝐱0[i]X0{\mathbf{x}}_{0}^{[i]}\in X_{0}, (𝐰k,𝐯k)W×V({\mathbf{w}}_{k},{\mathbf{v}}_{k})\in W\times V, and 𝐮kU{\mathbf{u}}_{k}\in U, with X0X_{0}, WW, VV and UU being known polytopic sets.

The goal of AFD is to find which model describes the process behaviour. In the following, the dynamics are assumed to not change during the diagnosis procedure, i.e. the AFD is fast enough to avoid the switching between models. In this sense, a sequence (𝐮0,𝐮1,,𝐮N)({\mathbf{u}}_{0},{\mathbf{u}}_{1},...,{\mathbf{u}}_{N}) of minimal length NN is designed such that any output 𝐲N[i]{\mathbf{y}}_{N}^{[i]} is consistent with only one i𝕀i\in\mathbb{I}. If feasible, this problem may admit multiple solutions. For this reason, we introduce a cost function and select among the feasible input sequences the optimal one.

Let 𝐮=(𝐮0,,𝐮N)(N+1)nu{\overset{\to}{{\mathbf{u}}}}=({\mathbf{u}}_{0},...,{\mathbf{u}}_{N})\in\mathbb{R}^{(N+1)n_{u}}, 𝐰=(𝐰0,{\overset{\to}{{\mathbf{w}}}}=({\mathbf{w}}_{0},\ldots, 𝐰N)(N+1)nw{\mathbf{w}}_{N})\in\mathbb{R}^{(N+1)n_{w}}, and W=W××W{\overset{\to}{W}}=W\times\ldots\times W. Consider a variable transformation similar to the one used in the previous section. With a slight abuse of notation, let 𝐳k=(𝐳~k,𝐳ˇk)=(𝐓1𝐱k,𝐰k),{\mathbf{z}}_{k}=(\tilde{{\mathbf{z}}}_{k},\check{{\mathbf{z}}}_{k})=({{\mathbf{T}}}{\,\!}^{-1}{\mathbf{x}}_{k},{\mathbf{w}}_{k}), 𝐳~knz\tilde{{\mathbf{z}}}_{k}\in\mathbb{R}^{n_{z}}, 𝐳ˇkn+nwnz\check{{\mathbf{z}}}_{k}\in\mathbb{R}^{n+n_{w}-n_{z}}, with 𝐓[i]=((𝐕[i])T)1{\mathbf{T}}^{[i]}={(({\mathbf{V}}^{[i]})^{T})}{\,\!}^{-1}, 𝐕[i]{\mathbf{V}}^{[i]} being obtained from the SVD 𝐄[i]=𝐔[i]𝚺[i](𝐕[i])T{\mathbf{E}}^{[i]}={\mathbf{U}}^{[i]}{\mathbf{\Sigma}}^{[i]}({\mathbf{V}}^{[i]})^{T}. Then, (19) can be rewritten as

𝐳~k[i]\displaystyle\tilde{{\mathbf{z}}}_{k}^{[i]} =𝐀~z[i]𝐳k1[i]+𝐁~[i]𝐮k1,\displaystyle=\tilde{{\mathbf{A}}}_{z}^{[i]}{\mathbf{z}}_{k-1}^{[i]}+\tilde{{\mathbf{B}}}^{[i]}{\mathbf{u}}_{k-1}, (20a)
𝟎\displaystyle{\mathbf{0}} =𝐀ˇz[i]𝐳k[i]+𝐁ˇ[i]𝐮k,\displaystyle=\check{{\mathbf{A}}}_{z}^{[i]}{\mathbf{z}}_{k}^{[i]}+\check{{\mathbf{B}}}^{[i]}{\mathbf{u}}_{k}, (20b)
𝐲k[i]\displaystyle{\mathbf{y}}_{k}^{[i]} =𝐅[i]𝐳k[i]+𝐃[i]𝐮k+𝐃v[i]𝐯k,\displaystyle={\mathbf{F}}^{[i]}{\mathbf{z}}_{k}^{[i]}+{\mathbf{D}}^{[i]}{\mathbf{u}}_{k}+{\mathbf{D}}_{v}^{[i]}{\mathbf{v}}_{k}, (20c)

with 𝐅[i]=𝐂[i]𝐓[i]𝐏{\mathbf{F}}^{[i]}={\mathbf{C}}^{[i]}{\mathbf{T}}^{[i]}{\mathbf{P}}, where 𝐏=[𝐈n  0n×nw]{\mathbf{P}}=[{\mathbf{I}}_{n}\,\;\bm{0}_{n\times n_{w}}], 𝐀~z[i]=[𝐀~[i]𝐁~w[i]]\tilde{{\mathbf{A}}}_{z}^{[i]}=[\tilde{{\mathbf{A}}}^{[i]}\,\;\tilde{{\mathbf{B}}}_{w}^{[i]}], and 𝐀ˇz[i]=[𝐀ˇ[i]𝐁ˇw[i]]\check{{\mathbf{A}}}_{z}^{[i]}=[\check{{\mathbf{A}}}^{[i]}\,\;\check{{\mathbf{B}}}_{w}^{[i]}]. Note that the ()~\tilde{(\cdot)} and ()ˇ\check{(\cdot)} variables are defined according to (12) for each ii, and equation (20b) has been already shifted to time kk.

For each model ii, consider the CZ Za[i]=(𝐓[i])1Xa×W={𝐆a[i],𝐜a[i],𝐀a[i],𝐛a[i]}Z_{\text{a}}^{[i]}={({\mathbf{T}}^{[i]})}{\,\!}^{-1}X_{\text{a}}\times W=\{{\mathbf{G}}_{\text{a}}^{[i]},{\mathbf{c}}_{\text{a}}^{[i]},{\mathbf{A}}_{\text{a}}^{[i]},{\mathbf{b}}_{\text{a}}^{[i]}\}, where XaX_{\text{a}} satisfies Assumption 1, the set {𝐆z[i],𝐜z[i],𝐀z[i],𝐛z[i]}=(𝐓[i])1X0×W\{{\mathbf{G}}_{z}^{[i]},{\mathbf{c}}_{z}^{[i]},{\mathbf{A}}_{z}^{[i]},{\mathbf{b}}_{z}^{[i]}\}={({\mathbf{T}}^{[i]})}{\,\!}^{-1}X_{0}\times W, and define the initial feasible set Z0[i](𝐮0)={𝐳(𝐓[i])1X0×W:(20b) holds for k=0}Z_{0}^{[i]}({\mathbf{u}}_{0})=\{{\mathbf{z}}\in{({\mathbf{T}}^{[i]})}{\,\!}^{-1}X_{0}\times W:\eqref{eq:systemSVDfaultconstraints}\text{ holds for }k=0\}. This set is given by Z0[i](𝐮0)={𝐆0[i],𝐜0[i],𝐀0[i],Z_{0}^{[i]}({\mathbf{u}}_{0})=\{{\mathbf{G}}_{0}^{[i]},{\mathbf{c}}_{0}^{[i]},{\mathbf{A}}_{0}^{[i]}, 𝐛0[i](𝐮0)}{\mathbf{b}}_{0}^{[i]}({\mathbf{u}}_{0})\}, where 𝐆0[i]=𝐆z[i]{\mathbf{G}}_{0}^{[i]}={\mathbf{G}}_{z}^{[i]}, 𝐜0[i]=𝐜z[i]{\mathbf{c}}_{0}^{[i]}={\mathbf{c}}_{z}^{[i]},

𝐀0[i]=[𝐀z[i]𝐀ˇz[i]𝐆0[i]],𝐛0[i](𝐮0)=[𝐛z[i]𝐀ˇz[i]𝐜0[i]𝐁ˇ[i]𝐮0].{\mathbf{A}}_{0}^{[i]}=\begin{bmatrix}{\mathbf{A}}_{z}^{[i]}\\ \check{{\mathbf{A}}}_{z}^{[i]}{\mathbf{G}}_{0}^{[i]}\end{bmatrix},\;{\mathbf{b}}_{0}^{[i]}({\mathbf{u}}_{0})=\begin{bmatrix}{\mathbf{b}}_{z}^{[i]}\\ -\check{{\mathbf{A}}}_{z}^{[i]}{\mathbf{c}}_{0}^{[i]}-\check{{\mathbf{B}}}^{[i]}{\mathbf{u}}_{0}\end{bmatrix}. (21)

In addition, define the solution mappings (ϕk[i],𝝍k[i]):(k+1)nu×n×(k+1)nw×nvn+nw×ny(\bm{\phi}_{k}^{[i]},\bm{\psi}_{k}^{[i]}):\mathbb{R}^{(k+1)n_{u}}\times\mathbb{R}^{n}\times\mathbb{R}^{(k+1)n_{w}}\times\mathbb{R}^{n_{v}}\to\mathbb{R}^{n+n_{w}}\times\mathbb{R}^{n_{y}} such that ϕk[i](𝐮,𝐳0,𝐰)\bm{\phi}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}},{\mathbf{z}}_{0},{\overset{\to}{{\mathbf{w}}}}) and 𝝍k[i](𝐮,𝐳0,𝐰,𝐯k)\bm{\psi}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}},{\mathbf{z}}_{0},{\overset{\to}{{\mathbf{w}}}},{\mathbf{v}}_{k}) are the state and output of (20) at kk, respectively. Then, for each i𝕀i\in\mathbb{I}, define state and output reachable sets at time kk as

Zk[i](𝐮)=\displaystyle Z_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}}){=} {ϕk[i](𝐮,𝐳0,𝐰):(𝐳0[i],𝐰)Z0[i](𝐮0)×W},\displaystyle\{\bm{\phi}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}},{\mathbf{z}}_{0},{\overset{\to}{{\mathbf{w}}}}):({\mathbf{z}}_{0}^{[i]},{\overset{\to}{{\mathbf{w}}}})\in Z_{0}^{[i]}({\mathbf{u}}_{0})\times{\overset{\to}{W}}\},
Yk[i](𝐮)=\displaystyle Y_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}}){=} {𝝍k[i](𝐮,𝐳0,𝐰,𝐯k):(𝐳0,𝐰,𝐯k)Z0[i](𝐮0)×W×V}.\displaystyle\{\bm{\psi}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}},{\mathbf{z}}_{0},{\overset{\to}{{\mathbf{w}}}},{\mathbf{v}}_{k})\!:\!({\mathbf{z}}_{0},{\overset{\to}{{\mathbf{w}}}},{\mathbf{v}}_{k})\!\in\!Z_{0}^{[i]}({\mathbf{u}}_{0}){\times}{\overset{\to}{W}}{\times}V\}.

Using (6)–(7), and taking note that by assumption 𝐳k[i]Za[i]n×W{\mathbf{z}}_{k}^{[i]}\in Z_{\text{a}}^{[i]}\subset\mathbb{R}^{n}\times W for every k0k\geq 0, the set ZN[i](𝐮)Z_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) is given by the CZ {𝐆N[i],𝐜N[i](𝐮),𝐀N[i],𝐛N[i](𝐮)},\{{\mathbf{G}}_{N}^{[i]},{\mathbf{c}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}),{\mathbf{A}}_{N}^{[i]},{\mathbf{b}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})\}, where 𝐆N[i]{\mathbf{G}}_{N}^{[i]}, 𝐜N[i](𝐮){\mathbf{c}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}), 𝐀N[i]{\mathbf{A}}_{N}^{[i]}, and 𝐛N[i](𝐮){\mathbf{b}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) are obtained by the recursive relations

𝐜k[i](𝐮)=[𝐀~z[i]𝐜k1[i](𝐮)+𝐁~[i]𝐮k1𝐜ˇa[i]],𝐆k[i]=[𝐀~z[i]𝐆k1[i]𝟎𝟎𝐆ˇa[i]],\displaystyle{\mathbf{c}}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}}){=}\!\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}{\mathbf{c}}_{k-1}^{[i]}({\overset{\to}{{\mathbf{u}}}})+\tilde{{\mathbf{B}}}^{[i]}{\mathbf{u}}_{k-1}\\ \check{{\mathbf{c}}}_{\text{a}}^{[i]}\end{bmatrix}\!,{\mathbf{G}}_{k}^{[i]}{=}\!\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}{\mathbf{G}}_{k-1}^{[i]}\!\!&{\mathbf{0}}\\ {\mathbf{0}}&\check{{\mathbf{G}}}_{\text{a}}^{[i]}\end{bmatrix}\!,
𝐀k[i]=[𝐀k1[i]𝟎𝟎𝐀a[i]𝐀ˇz[i]𝐆k[i]],𝐛k[i](𝐮)=[𝐛k1[i](𝐮)𝐛a[i]𝐀ˇz[i]𝐜k[i](𝐮)𝐁ˇ[i]𝐮k],\displaystyle{\mathbf{A}}_{k}^{[i]}=\begin{bmatrix}{\mathbf{A}}_{k-1}^{[i]}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{A}}_{\text{a}}^{[i]}\\ \lx@intercol\hfil\check{{\mathbf{A}}}_{z}^{[i]}{\mathbf{G}}_{k}^{[i]}\hfil\lx@intercol\end{bmatrix},{\mathbf{b}}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}})=\begin{bmatrix}{\mathbf{b}}_{k-1}^{[i]}({\overset{\to}{{\mathbf{u}}}})\\ {\mathbf{b}}_{\text{a}}^{[i]}\\ -\check{{\mathbf{A}}}_{z}^{[i]}{\mathbf{c}}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}})-\check{{\mathbf{B}}}^{[i]}{\mathbf{u}}_{k}\end{bmatrix},

for k=1,2,,Nk=1,2,\ldots,N. Note that the third constraint in 𝐀k[i]{\mathbf{A}}_{k}^{[i]}, 𝐛k[i](𝐮){\mathbf{b}}_{k}^{[i]}({\overset{\to}{{\mathbf{u}}}}), comes from the fact that (20b) must hold. Using the initial values (21), the variables 𝐜N[i](𝐮){\mathbf{c}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) and 𝐛N[i](𝐮){\mathbf{b}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) can be written as explicit functions of the input sequence 𝐮{\overset{\to}{{\mathbf{u}}}} as

𝐜N[i](𝐮)\displaystyle{\mathbf{c}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) =[𝐀~z[i]𝟎]N𝐜z[i]+m=1N([𝐀~z[i]𝟎]m1[𝟎𝐜ˇa[i]])+𝐇N[i]𝐮,\displaystyle{=}\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}\\ {\mathbf{0}}\end{bmatrix}^{N}\!\!\!\!{\mathbf{c}}_{z}^{[i]}{+}\!\!\sum_{m=1}^{N}\!\!\bigg{(}\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}\\ {\mathbf{0}}\end{bmatrix}^{m\!-\!1}\!\!\begin{bmatrix}{\mathbf{0}}\\ \check{{\mathbf{c}}}_{\text{a}}^{[i]}\end{bmatrix}\bigg{)}{+}{\mathbf{H}}_{N}^{[i]}{\overset{\to}{{\mathbf{u}}}}, (22)
𝐛N[i](𝐮)\displaystyle{\mathbf{b}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) =𝜶N[i]+𝚲N[i]𝐜z[i]+𝛀N[i]𝐮,\displaystyle=\bm{\alpha}_{N}^{[i]}+\bm{\Lambda}_{N}^{[i]}{\mathbf{c}}_{z}^{[i]}+\bm{\Omega}_{N}^{[i]}{\overset{\to}{{\mathbf{u}}}}, (23)

where 𝜶N[i]=𝜷N[i]+𝚼N[i]𝐩N[i]\bm{\alpha}_{N}^{[i]}=\bm{\beta}_{N}^{[i]}+\bm{\Upsilon}_{N}^{[i]}{\mathbf{p}}_{N}^{[i]}, 𝚲N[i]=𝚼N[i]𝐐N[i]\bm{\Lambda}_{N}^{[i]}=\bm{\Upsilon}_{N}^{[i]}{\mathbf{Q}}_{N}^{[i]}, 𝛀N[i]=𝚪N[i]+𝚼N[i]𝐇[i]\bm{\Omega}_{N}^{[i]}=\bm{\Gamma}_{N}^{[i]}+\bm{\Upsilon}_{N}^{[i]}{\overset{\to}{{\mathbf{H}}}}{\,\!}^{[i]}, 𝜷N[i]=[[(𝐛z[i])T 0][(𝐛a[i])T 0][(𝐛a[i])T 0]]T,\bm{\beta}_{N}^{[i]}=\begin{bmatrix}[({\mathbf{b}}_{z}^{[i]})^{T}\;{\mathbf{0}}]&[({\mathbf{b}}_{\text{a}}^{[i]})^{T}\;{\mathbf{0}}]&\cdots&[({\mathbf{b}}_{\text{a}}^{[i]})^{T}\;{\mathbf{0}}]\end{bmatrix}^{T},

𝐩N[i]=[[𝟎𝟎]T[𝟎𝐜ˇa[i]]Tm=1N([𝐀~z[i]𝟎]m1[𝟎𝐜ˇa[i]])T]T,\displaystyle{\mathbf{p}}_{N}^{[i]}=\bigg{[}\begin{matrix}\begin{bmatrix}{\mathbf{0}}\\ {\mathbf{0}}\end{bmatrix}^{T}&\begin{bmatrix}{\mathbf{0}}\\ \check{{\mathbf{c}}}_{\text{a}}^{[i]}\end{bmatrix}^{T}&\cdots&\sum_{m=1}^{N}\bigg{(}\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}\\ {\mathbf{0}}\end{bmatrix}^{m-1}\begin{bmatrix}{\mathbf{0}}\\ \check{{\mathbf{c}}}_{\text{a}}^{[i]}\end{bmatrix}\bigg{)}^{T}\end{matrix}\bigg{]}^{T},
𝚼N[i]=blkdiag([𝟎(𝐀ˇz[i])T]T,,[𝟎(𝐀ˇz[i])T]T),\displaystyle\bm{\Upsilon}_{N}^{[i]}=\text{blkdiag}\big{(}\big{[}{\mathbf{0}}\,\;(-\check{{\mathbf{A}}}_{z}^{[i]})^{T}\big{]}^{T},\ldots,\big{[}{\mathbf{0}}\,\;(-\check{{\mathbf{A}}}_{z}^{[i]})^{T}\big{]}^{T}\big{)},
𝚪N[i]=blkdiag([𝟎(𝐁ˇ[i])T]T,,[𝟎(𝐁ˇ[i])T]T),\displaystyle\bm{\Gamma}_{N}^{[i]}=\text{blkdiag}\big{(}\big{[}{\mathbf{0}}\,\;(-\check{{\mathbf{B}}}^{[i]})^{T}\big{]}^{T},\ldots,\big{[}{\mathbf{0}}\,\;(-\check{{\mathbf{B}}}^{[i]})^{T}\big{]}^{T}\big{)},
𝐐N[i]=[([𝐀~z[i]𝟎])T]T,𝐇[i]=[(𝐇[i])T]T,\displaystyle{\mathbf{Q}}_{N}^{[i]}=\bigg{[}\begin{matrix}\cdots&\bigg{(}\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}\\ {\mathbf{0}}\end{bmatrix}^{\ell}\bigg{)}^{T}&\cdots\end{matrix}\bigg{]}^{T}\!\!,\;{\overset{\to}{{\mathbf{H}}}}{\,\!}^{[i]}=\big{[}\begin{matrix}\cdots&({\mathbf{H}}_{\ell}^{[i]})^{T}&\cdots\end{matrix}\big{]}^{T}\!\!,
𝐇h[i]=[[𝐀~z[i]𝟎]hm[𝐁~[i]𝟎]m=1,2,,h[𝟎𝟎]Nh+1 terms],\displaystyle{\mathbf{H}}_{h}^{[i]}=\left[\begin{matrix}\cdots&\underbrace{\begin{bmatrix}\tilde{{\mathbf{A}}}_{z}^{[i]}\\ {\mathbf{0}}\end{bmatrix}^{h-m}\begin{bmatrix}\tilde{{\mathbf{B}}}^{[i]}\\ {\mathbf{0}}\end{bmatrix}}_{m=1,2,\ldots,h}&\cdots&\underbrace{\begin{bmatrix}{\mathbf{0}}\\ {\mathbf{0}}\end{bmatrix}}_{N-h+1\text{ terms}}&\cdots\end{matrix}\right],

with =0,,N\ell=0,\ldots,N. The variables 𝜷N\bm{\beta}_{N}, 𝐩N{\mathbf{p}}_{N}, 𝚼N\bm{\Upsilon}_{N}, and 𝚪N\bm{\Gamma}_{N} have N+1N+1 block matrices. In addition, the expression 𝐇h[i]{\mathbf{H}}_{h}^{[i]} holds for h=1,,Nh=1,\ldots,N, while 𝐇0[i]=𝟎n×(N+1)nu{\mathbf{H}}_{0}^{[i]}=\bm{0}_{n\times(N{+}1)n_{u}}.

Since ZN[i](𝐮)Z_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) is a CZ, the output reachable set YN[i](𝐮)Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) is then a CZ obtained in accordance with (20c) as YN[i](𝐮)=𝐅[i]ZN[i](𝐮)𝐃[i]𝐮N𝐃v[i]V.Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})={\mathbf{F}}^{[i]}Z_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})\oplus{\mathbf{D}}^{[i]}{\mathbf{u}}_{N}\oplus{\mathbf{D}}_{v}^{[i]}V. Using properties (6) and (7), and letting V={𝐆v,𝐜v,𝐀v,V=\{{\mathbf{G}}_{v},{\mathbf{c}}_{v},{\mathbf{A}}_{v}, 𝐛v}{\mathbf{b}}_{v}\}, this set is YN[i](𝐮)={𝐆NY[i],𝐜NY[i](𝐮)Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})=\{{\mathbf{G}}_{N}^{Y[i]},{\mathbf{c}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}}), 𝐀NY[i],{\mathbf{A}}_{N}^{Y[i]}, 𝐛NY[i](𝐮)}{\mathbf{b}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})\}, with

𝐜NY[i](𝐮)=𝐅[i]𝐜N[i](𝐮)+𝐃[i]𝐮N+𝐃v[i]𝐜v,\displaystyle{\mathbf{c}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})={\mathbf{F}}^{[i]}{\mathbf{c}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})+{\mathbf{D}}^{[i]}{\mathbf{u}}_{N}+{\mathbf{D}}_{v}^{[i]}{\mathbf{c}}_{v}, (24a)
𝐆NY[i]=[𝐅[i]𝐆N[i]𝐆v],𝐀NY[i]=blkdiag(𝐀N[i],𝐀v),\displaystyle{\mathbf{G}}_{N}^{Y[i]}=[{\mathbf{F}}^{[i]}{\mathbf{G}}_{N}^{[i]}\,\;{\mathbf{G}}_{v}],\;{\mathbf{A}}_{N}^{Y[i]}=\text{blkdiag}({\mathbf{A}}_{N}^{[i]},{\mathbf{A}}_{v}), (24b)
𝐛NY[i](𝐮)=[(𝐛N[i](𝐮))T𝐛vT]T.\displaystyle{\mathbf{b}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})=[({\mathbf{b}}_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}))^{T}\,\;{\mathbf{b}}_{v}^{T}]^{T}. (24c)

Consider an input sequence 𝐮U{\overset{\to}{{\mathbf{u}}}}\in{\overset{\to}{U}} to be injected into the set of models (20), and let 𝐲N[i]{\mathbf{y}}^{[i]}_{N} denote the observed output. We are interested in the design of an input sequence such that the relation 𝐲N[i]YN[i](𝐮){\mathbf{y}}_{N}^{[i]}\in Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) is valid for only one i𝕀i\in\mathbb{I}.

Definition 2

An input sequence 𝐮{\overset{\to}{{\mathbf{u}}}} is said to be a separating input on k[0,N]k\in[0,N] if, for every i,j𝕀i,j\in\mathbb{I}, iji\neq j,

YN[i](𝐮)YN[j](𝐮)=.Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}})\cap Y_{N}^{[j]}({\overset{\to}{{\mathbf{u}}}})=\emptyset. (25)

Clearly, if (25) holds for all i,j𝕀i,j\in\mathbb{I}, iji\neq j, then 𝐲N[i]YN[i](𝐮){\mathbf{y}}_{N}^{[i]}\in Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) must hold only for one ii. In the case that this is not valid for any i𝕀i\in\mathbb{I}, one concludes that the real dynamics does not belong to the set of models (20). The following theorem is based on the computation of YN[i](𝐮)Y_{N}^{[i]}({\overset{\to}{{\mathbf{u}}}}) expressed by (24) and the results in Raimondo et al. (2016).

Theorem 1

An input 𝐮U{\overset{\to}{{\mathbf{u}}}}\in{\overset{\to}{U}} is a separating input iff

[𝐍(i,j)𝛀(i,j)]𝐮𝒴(i,j)={[𝐆NY(i,j)𝐀NY(i,j)],[𝐜NY(i,j)𝐛NY(i,j)]},\begin{bmatrix}{\mathbf{N}}(i,j)\\ \bm{\Omega}(i,j)\end{bmatrix}{\overset{\to}{{\mathbf{u}}}}\!\notin\!\mathcal{Y}(i,j)\!=\!\left\{\begin{bmatrix}{\mathbf{G}}^{Y}_{N}(i,j)\\ {\mathbf{A}}^{Y}_{N}(i,j)\end{bmatrix},\begin{bmatrix}{\mathbf{c}}^{Y}_{N}(i,j)\\ -{\mathbf{b}}^{Y}_{N}(i,j)\end{bmatrix}\right\}, (26)

i,j𝕀\forall i,j\in\mathbb{I}, iji\neq j, where 𝐍(i,j)=𝐅[j]𝐇[j]𝐅[i]𝐇[i]+[𝟎(𝐃[j]𝐃[i])]{\mathbf{N}}(i,j)={\mathbf{F}}^{[j]}{\overset{\to}{{\mathbf{H}}}}{\,\!}^{[j]}-{\mathbf{F}}^{[i]}{\overset{\to}{{\mathbf{H}}}}{\,\!}^{[i]}+[{\mathbf{0}}\,\;({\mathbf{D}}^{[j]}-{\mathbf{D}}^{[i]})], 𝛀(i,j)=[(𝛀N[i])T 0(𝛀N[j])T 0]T\bm{\Omega}(i,j)=[(\bm{\Omega}_{N}^{[i]})^{T}\;{\mathbf{0}}\;(\bm{\Omega}_{N}^{[j]})^{T}\;{\mathbf{0}}]^{T}, and

𝐆NY(i,j)=[𝐆NY[i]𝐆NY[j]],𝐜NY(i,j)=𝐜NY[i](𝟎)𝐜NY[j](𝟎),\displaystyle{\mathbf{G}}^{Y}_{N}(i,j)=[{\mathbf{G}}^{Y[i]}_{N}\;{-}{\mathbf{G}}^{Y[j]}_{N}],\,{\mathbf{c}}^{Y}_{N}(i,j)={\mathbf{c}}^{Y[i]}_{N}({\overset{\to}{{\mathbf{0}}}})-{\mathbf{c}}^{Y[j]}_{N}({\overset{\to}{{\mathbf{0}}}}),
𝐀NY(i,j)=[𝐀NY[i]𝟎𝟎𝐀NY[j]],𝐛NY(i,j)=[𝐛NY[i](𝟎)𝐛NY[j](𝟎)],\displaystyle{\mathbf{A}}^{Y}_{N}(i,j)=\begin{bmatrix}{\mathbf{A}}_{N}^{Y[i]}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{A}}_{N}^{Y[j]}\end{bmatrix},\;{\mathbf{b}}^{Y}_{N}(i,j)=\begin{bmatrix}{\mathbf{b}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{0}}}})\\ {\mathbf{b}}_{N}^{Y[j]}({\overset{\to}{{\mathbf{0}}}})\end{bmatrix},

where 𝟎{\overset{\to}{{\mathbf{0}}}} denotes the zero input sequence.

{pf}

The relations below follow from (22)–(24a), (24c):

𝐜NY[i](𝐮)\displaystyle{\mathbf{c}}^{Y[i]}_{N}({\overset{\to}{{\mathbf{u}}}}) =𝐜NY[i](𝟎)+𝐅[i]𝐇N[i]𝐮+𝐃[i]𝐮N,\displaystyle={\mathbf{c}}^{Y[i]}_{N}({\overset{\to}{{\mathbf{0}}}})+{\mathbf{F}}^{[i]}{\mathbf{H}}_{N}^{[i]}{\overset{\to}{{\mathbf{u}}}}+{\mathbf{D}}^{[i]}{\mathbf{u}}_{N}, (27)
𝐛NY[i](𝐮)\displaystyle{\mathbf{b}}^{Y[i]}_{N}({\overset{\to}{{\mathbf{u}}}}) =𝐛NY[i](𝟎)+[(𝛀N[i])T 0]T𝐮.\displaystyle={\mathbf{b}}^{Y[i]}_{N}({\overset{\to}{{\mathbf{0}}}})+[(\bm{\Omega}_{N}^{[i]})^{T}\;{\mathbf{0}}]^{T}{\overset{\to}{{\mathbf{u}}}}. (28)

From (8) with 𝐑=𝐈{\mathbf{R}}={\mathbf{I}}, (25) is true iff 𝝃B\nexists\bm{\xi}\in B_{\infty} such that

[𝐀NY[i]𝟎𝟎𝐀NY[j]𝐆NY[i]𝐆NY[j]]𝝃=[𝐛NY[i](𝐮)𝐛NY[j](𝐮)𝐜NY[j](𝐮)𝐜NY[i](𝐮)].\begin{bmatrix}{\mathbf{A}}_{N}^{Y[i]}&{\mathbf{0}}\\ {\mathbf{0}}&{\mathbf{A}}_{N}^{Y[j]}\\ {\mathbf{G}}_{N}^{Y[i]}&-{\mathbf{G}}_{N}^{Y[j]}\end{bmatrix}\bm{\xi}=\begin{bmatrix}{\mathbf{b}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})\\ {\mathbf{b}}_{N}^{Y[j]}({\overset{\to}{{\mathbf{u}}}})\\ {\mathbf{c}}_{N}^{Y[j]}({\overset{\to}{{\mathbf{u}}}})-{\mathbf{c}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})\end{bmatrix}.

According to (27)–(28) one has 𝐜NY[j](𝐮)𝐜NY[i](𝐮)=𝐜NY(i,j)+𝐍(i,j)𝐮{\mathbf{c}}_{N}^{Y[j]}({\overset{\to}{{\mathbf{u}}}})-{\mathbf{c}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}})=-{\mathbf{c}}^{Y}_{N}(i,j)+{\mathbf{N}}(i,j){\overset{\to}{{\mathbf{u}}}}, [(𝐛NY[i](𝐮))T(𝐛NY[j](𝐮))T]T[({\mathbf{b}}_{N}^{Y[i]}({\overset{\to}{{\mathbf{u}}}}))^{T}\;({\mathbf{b}}_{N}^{Y[j]}({\overset{\to}{{\mathbf{u}}}}))^{T}]^{T} =𝐛NY(i,j)\!=\!{\mathbf{b}}^{Y}_{N}(i,j) +𝛀(i,j)𝐮+\bm{\Omega}(i,j){\overset{\to}{{\mathbf{u}}}}, with 𝐜NY(i,j){\mathbf{c}}^{Y}_{N}(i,j), 𝐛NY(i,j){\mathbf{b}}^{Y}_{N}(i,j), 𝐍(i,j){\mathbf{N}}(i,j), and 𝛀(i,j)\bm{\Omega}(i,j) defined as in the statement of the theorem. Then, (25) holds iff 𝝃B\nexists\bm{\xi}\in B_{\infty} such that 𝐆NY(i,j)𝝃=𝐜NY(i,j)+𝐍(i,j)𝐮{\mathbf{G}}^{Y}_{N}(i,j)\bm{\xi}=-{\mathbf{c}}^{Y}_{N}(i,j)+{\mathbf{N}}(i,j){\overset{\to}{{\mathbf{u}}}}, and 𝐀NY(i,j)𝝃=𝐛NY(i,j)+𝛀(i,j)𝐮{\mathbf{A}}^{Y}_{N}(i,j)\bm{\xi}={\mathbf{b}}^{Y}_{N}(i,j)+\bm{\Omega}(i,j){\overset{\to}{{\mathbf{u}}}}. This is equivalent to

𝝃B:[𝐆NY(i,j)𝐀NY(i,j)]𝝃+[𝐜NY(i,j)𝐛NY(i,j)]=[𝐍(i,j)𝛀(i,j)]𝐮,\displaystyle\nexists\bm{\xi}\in B_{\infty}:\begin{bmatrix}{\mathbf{G}}^{Y}_{N}(i,j)\\ {\mathbf{A}}^{Y}_{N}(i,j)\end{bmatrix}\bm{\xi}+\begin{bmatrix}{\mathbf{c}}^{Y}_{N}(i,j)\\ -{\mathbf{b}}^{Y}_{N}(i,j)\end{bmatrix}=\begin{bmatrix}{\mathbf{N}}(i,j)\\ \bm{\Omega}(i,j)\end{bmatrix}{\overset{\to}{{\mathbf{u}}}},

which in turn holds iff (26) is satisfied, with 𝐆NY(i,j){\mathbf{G}}^{Y}_{N}(i,j) and 𝐀NY(i,j){\mathbf{A}}^{Y}_{N}(i,j) defined as in the statement of the theorem. ∎

Let nqn_{q} denote the number of all possible combinations of i,j𝕀i,j\in\mathbb{I}, iji\neq j, and define 𝐍𝒴[q]=[𝐍T(i,j)𝛀T(i,j)]T{\mathbf{N}}^{\mathcal{Y}[q]}=[{\mathbf{N}}^{T}(i,j)\;\bm{\Omega}^{T}(i,j)]^{T}, 𝒴[q]=𝒴(i,j)={𝐆𝒴[q],𝐜𝒴[q]}\mathcal{Y}^{[q]}=\mathcal{Y}(i,j)=\{{\mathbf{G}}^{\mathcal{Y}[q]},{\mathbf{c}}^{\mathcal{Y}[q]}\}, for each q{1,2,,nq}q\in\{1,2,\ldots,n_{q}\}, with {𝐆𝒴[q]\{{\mathbf{G}}^{\mathcal{Y}[q]}, 𝐜𝒴[q]}{\mathbf{c}}^{\mathcal{Y}[q]}\} being the right hand side of (26). As it can be noticed, 𝒴[q]\mathcal{Y}^{[q]} is a zonotope. Then, the relation 𝐍𝒴[q]𝐮𝒴[q]{\mathbf{N}}^{\mathcal{Y}[q]}{\overset{\to}{{\mathbf{u}}}}\notin\mathcal{Y}^{[q]} can be verified by solving a linear program (LP) similar to what proposed in Scott et al. (2014). In this sense, the following lemma provides an effective way to verify if a given input sequence is a separating input according to Theorem 1, consequently satisfying (25).

Lemma 2

Let 𝒴[q]={𝐆𝒴[q],𝐜𝒴[q]}\mathcal{Y}^{[q]}=\{{\mathbf{G}}^{\mathcal{Y}[q]},{\mathbf{c}}^{\mathcal{Y}[q]}\}. For each 𝐮U{\overset{\to}{{\mathbf{u}}}}\in{\overset{\to}{U}} and q{1,2,,nq}q\in\{1,2,\ldots,n_{q}\}, define δ^[q](𝐮)=minδ[q],𝝃[q]δ[q]\hat{\delta}^{[q]}({\overset{\to}{{\mathbf{u}}}})=\underset{\delta^{[q]},\bm{\xi}^{[q]}}{\min}\delta^{[q]}, subject to

𝐍𝒴[q]𝐮=𝐆𝒴[q]𝝃[q]+𝐜𝒴[q],𝝃1+δ[q].{\mathbf{N}}^{\mathcal{Y}[q]}{\overset{\to}{{\mathbf{u}}}}={\mathbf{G}}^{\mathcal{Y}[q]}\bm{\xi}^{[q]}+{\mathbf{c}}^{\mathcal{Y}[q]},\quad\|{\bm{\xi}}\|_{\infty}\leq 1+\delta^{[q]}.

Then 𝐍𝒴[q]𝐮𝒴[q]δ^[q](𝐮)>0{\mathbf{N}}^{\mathcal{Y}[q]}{\overset{\to}{{\mathbf{u}}}}\notin\mathcal{Y}^{[q]}\iff\hat{\delta}^{[q]}({\overset{\to}{{\mathbf{u}}}})>0.

{pf}

See Lemma 4 in Scott et al. (2014).

For the AFD of the nmn_{m} models in (20) of the descriptor system, we consider the design of a separating input of minimum length according to the optimization problem

min𝐮U{J(𝐮):𝐍𝒴[q]𝐮𝒴[q],q=1,2,,nq},\underset{{\overset{\to}{{\mathbf{u}}}}\in{\overset{\to}{U}}}{\min}~{}\{J({\overset{\to}{{\mathbf{u}}}}):{\mathbf{N}}^{\mathcal{Y}[q]}{\overset{\to}{{\mathbf{u}}}}\notin\mathcal{Y}^{[q]},~{}\forall q=1,2,\ldots,n_{q}\}, (29)

with J(𝐮)J({\overset{\to}{{\mathbf{u}}}}) chosen to minimize any harmful effects caused by injecting 𝐮{\overset{\to}{{\mathbf{u}}}} into (20). For simplicity we may choose J(𝐮)=j=0N𝐮jT𝐑𝐮jJ({\overset{\to}{{\mathbf{u}}}})=\sum_{j=0}^{N}{\mathbf{u}}_{j}^{T}{\mathbf{R}}{\mathbf{u}}_{j}, where 𝐑{\mathbf{R}} is a weighting matrix. As in Scott et al. (2014), this is a bilevel optimization problem and can be rewritten as a mixed-integer quadratic program by defining a minimum separation threshold ε>0\varepsilon>0 such that εδ^[q](𝐮)\varepsilon\leq\hat{\delta}^{[q]}({\overset{\to}{{\mathbf{u}}}}), for all q=1,2,,nqq=1,2,\ldots,n_{q}.

4 Numerical examples

This section first evaluates the accuracy of the state estimation method proposed in Section 2 for descriptor systems using CZs. Consider system (1) with matrices 𝐄=diag(1,1,0){\mathbf{E}}=\text{diag}(1,1,0), 𝐁w=diag(0.1,1.5,0.6){\mathbf{B}}_{w}=\text{diag}(0.1,1.5,0.6), 𝐃v=diag(0.5,1.5){\mathbf{D}}_{v}=\text{diag}(0.5,1.5),

𝐀=[0.5000.80.95010.51],𝐁=[100100],𝐂=[101110],{\mathbf{A}}=\begin{bmatrix}0.5&0&0\\ 0.8&0.95&0\\ -1&0.5&1\end{bmatrix},\;{\mathbf{B}}=\begin{bmatrix}1&0\\ 0&1\\ 0&0\end{bmatrix},\;{\mathbf{C}}=\begin{bmatrix}1&0&1\\ 1&-1&0\end{bmatrix},

and 𝐃=𝟎{\mathbf{D}}={\mathbf{0}}. The initial state 𝐱0{\mathbf{x}}_{0} is bounded by the zonotope

X0={diag(0.1,1.5,0.6),[0.5 0.5 0.25]T},X_{0}=\left\{\text{diag}(0.1,1.5,0.6),\,[0.5\;0.5\;0.25]^{T}\right\}, (30)

and the uncertainties are random uniform noises bounded by 𝐰k1\|{\mathbf{w}}_{k}\|_{\infty}\leq 1, 𝐯k1\|{\mathbf{v}}_{k}\|_{\infty}\leq 1. The CZ in Assumption 1 is Xa={50𝐈3,𝟎}X_{\text{a}}=\{50{\cdot}{\mathbf{I}}_{3},{\mathbf{0}}\}. The simulation is conducted for 𝐱0=[0.5 0.5 0.25]T{\mathbf{x}}_{0}=[0.5\;0.5\;0.25]^{T}, and the complexity of the CZs is limited to 15 generators and 5 constraints using the constraint elimination algorithm in Scott et al. (2016) and Method 4 in Yang and Scott (2018).

Refer to captionkk

Volume

Refer to caption0102030405060708090100Refer to caption0102030405060Refer to captionZonotopeRefer to captionCZRefer to caption8090100Refer to caption01Refer to caption
Refer to captionkk

x3x_{3}

Refer to caption0102030405060708090100Refer to caption-30-20-1001020Refer to captionx3x_{3}Refer to captionZonotopeRefer to captionCZRefer to caption
Figure 1: The volumes of X^k\hat{X}_{k} obtained using the estimation method in Section 2 and the zonotope method (top), as well as the projections of X^k\hat{X}_{k} onto x3x_{3} (bottom).

Fig. 1 shows the volumes of the CZs X^k\hat{X}_{k} for k[0,100]k\in[0,100] obtained using the algorithm (16)–(18). Results obtained using the zonotope method in Wang et al. (2018a) are presented for comparison222Specifically, this is the set-membership approach proposed in Wang et al. (2018a) with Kalman correction matrix.. Note that the computation of the volumes was possible because this example has few states, otherwise the radii (half the length of the longest edge of the interval hull) can be used instead. The complexity of the zonotopes is limited to 15 generators using Method 4 in Yang and Scott (2018). Fig. 1 shows also the projections of X^k\hat{X}_{k} onto x3x_{3}. As it can be noticed, CZs provide substantially sharper bounds in comparison to zonotopes. This is possible since the enclosure in Lemma 1 takes into account the static constraints explicitly, while zonotopes provide only a conservative bound of the corresponding feasible region. However, this improved accuracy comes with an increase in computational time due to the higher set complexity (see Scott et al. (2016) for a discussion). This experiment was run 500 times consecutively on a laptop with an Intel Core i7-9750H processor, resulting in an average execution time of 3.34 ms for CZs, and of 0.33 ms for zonotopes.

𝐂[i]X0𝐃[i]𝐮0𝐃v[i]V{\mathbf{C}}^{[i]}X_{0}\oplus{\mathbf{D}}^{[i]}{\mathbf{u}}_{0}\oplus{\mathbf{D}}_{v}^{[i]}VY0[i]Y_{0}^{[i]}Y4[i]Y_{4}^{[i]}Refer to captiony1y_{1}

y2y_{2}

Refer to caption-3-2-1012Refer to caption-8-6-4-202Refer to captiony1y_{1}Refer to caption-3-2-1012Refer to caption-8-6-4-202Refer to captiony1y_{1}Refer to caption-3-2-1012Refer to caption-8-6-4-202Refer to captiony1y_{1}Refer to caption-3-2-1012Refer to caption-8-6-4-202Refer to caption𝐲4[i]{\mathbf{y}}_{4}^{[i]}
Figure 2: The sets 𝐂[i]X0𝐃[i]𝐮0𝐃v[i]V{\mathbf{C}}^{[i]}X_{0}\oplus{\mathbf{D}}^{[i]}{\mathbf{u}}_{0}\oplus{\mathbf{D}}_{v}^{[i]}V, the output reachable sets Y0[i]Y_{0}^{[i]}, Y4[i]Y_{4}^{[i]}, and 2000 samples for 𝐲4[i]{\mathbf{y}}^{[i]}_{4}, with i=1i=1 (yellow), i=2i=2 (red), i=3i=3 (blue), and i=4i=4 (magenta), obtained by the injection of the input sequence 𝐮{\overset{\to}{{\mathbf{u}}}}.

We now evaluate the effectiveness of the AFD method proposed in Section 3. Consider the set of models (19) with model i=1i=1 described in the previous example, and

𝐀[2]=[0.5000.80.6010.51],𝐁[3]=[100010],𝐂[4]=[10.11110.1],\displaystyle{\mathbf{A}}^{[2]}=\begin{bmatrix}0.5&0&0\\ 0.8&0.6&0\\ -1&0.5&1\end{bmatrix},\;{\mathbf{B}}^{[3]}=\begin{bmatrix}1&0\\ 0&0\\ -1&0\end{bmatrix},\;{\mathbf{C}}^{[4]}=\begin{bmatrix}1&0.1&1\\ 1&-1&0.1\end{bmatrix},

𝐄[i]=𝐄[1]{\mathbf{E}}^{[i]}={\mathbf{E}}^{[1]}, 𝐁[2]=𝐁[4]=𝐁[1]{\mathbf{B}}^{[2]}={\mathbf{B}}^{[4]}={\mathbf{B}}^{[1]}, 𝐂[2]=𝐂[3]=𝐂[1]{\mathbf{C}}^{[2]}={\mathbf{C}}^{[3]}={\mathbf{C}}^{[1]}, 𝐁w[i]=𝐁w[1]{\mathbf{B}}_{w}^{[i]}={\mathbf{B}}_{w}^{[1]}, and 𝐃v[i]=𝐃v[1]{\mathbf{D}}_{v}^{[i]}={\mathbf{D}}_{v}^{[1]}, 𝐃[i]=𝐃[1]{\mathbf{D}}^{[i]}={\mathbf{D}}^{[1]}, i{2,3,4}i\in\{2,3,4\}. The initial state 𝐱0[i]{\mathbf{x}}_{0}^{[i]} is bounded by (30), the uncertainties are bounded by 𝐰k0.1\|{\mathbf{w}}_{k}\|_{\infty}\leq 0.1, 𝐯k0.1\|{\mathbf{v}}_{k}\|_{\infty}\leq 0.1, and the input is limited by 𝐮k1\|{\mathbf{u}}_{k}\|_{\infty}\leq 1. Let Xa={50𝐈3,𝟎}X_{\text{a}}=\{50{\cdot}{\mathbf{I}}_{3},{\mathbf{0}}\} and ε=0.01\varepsilon=0.01. All the models i𝕀i\in\mathbb{I} are considered to be faulty and must be separated. The number of generators of 𝒴(i,j)\mathcal{Y}(i,j) was limited to two times its dimension using Method 4 in Yang and Scott (2018). The minimum length optimal input sequence that solves (29) was obtained using CPLEX 12.8 and MATLAB 9.1, with J(𝐮)=𝐮T𝐮J({\overset{\to}{{\mathbf{u}}}})={\overset{\to}{{\mathbf{u}}}}{\,\!}^{T}{\overset{\to}{{\mathbf{u}}}}, and is

𝐮=([11],[0.731],[00.92],[00],[0.450]).{\overset{\to}{{\mathbf{u}}}}=\left(\begin{bmatrix}1\\ 1\end{bmatrix},\begin{bmatrix}0.73\\ 1\end{bmatrix},\begin{bmatrix}0\\ 0.92\end{bmatrix},\begin{bmatrix}0\\ 0\end{bmatrix},\begin{bmatrix}-0.45\\ 0\end{bmatrix}\right).

Fig. 2 shows the output reachable sets Y0[i]Y_{0}^{[i]} and Y4[i]Y_{4}^{[i]} for i=1,2,3,4i=1,2,3,4, resulting by the injection of the designed 𝐮{\overset{\to}{{\mathbf{u}}}}. We also show the sets defined by 𝐂[i]X0𝐃[i]𝐮0𝐃v[i]V{\mathbf{C}}^{[i]}X_{0}\oplus{\mathbf{D}}^{[i]}{\mathbf{u}}_{0}\oplus{\mathbf{D}}_{v}^{[i]}V, which do not take into account the equality constraint (20b). Note that these sets are completely overlapped for i{1,2,3,4}i\in\{1,2,3,4\}, and Y0[i]Y_{0}^{[i]} are completely overlapped for i{1,2,4}i\in\{1,2,4\}. On the other hand, Y4[i]Y_{4}^{[i]} are disjoint for every i𝕀i\in\mathbb{I}, showing that the injection of 𝐮{\overset{\to}{{\mathbf{u}}}} guarantees fault diagnosis at k=4k=4. Fig. 2 also shows clouds containing 2000 samples of the output 𝐲4[i]{\mathbf{y}}^{[i]}_{4} for each model ii, demonstrating that the outputs of the models (19) are in fact separated.

5 Conclusion

This paper proposes novel algorithms for set-valued state estimation and AFD of linear descriptor systems with unknown-but-bounded uncertainties. The methods use CZs, a generalization of zonotopes capable of describing strongly asymmetric convex sets. This leads to significantly tighter results than zonotope approaches. In addition, AFD was enabled without assuming rank properties on the structure of the system. The effectiveness of the new methods was corroborated by numerical examples.

References

  • Bender and Laub (1987) Bender, D.J. and Laub, A.J. (1987). The linear-quadratic optimal regulator for descriptor systems: Discrete-time case. Automatica, 23, 71–85.
  • Bravo et al. (2006) Bravo, J.M., Alamo, T., and Camacho, E.F. (2006). Bounded error identification of systems with time-varying parameters. IEEE Transactions on Automatic Control, 51(7), 1144–1150.
  • Efimov et al. (2015) Efimov, D., Polyakov, A., and Richard, J.P. (2015). Interval observer design for estimation and control of time-delay descriptor systems. European Journal of Control, 23, 26–35.
  • Hagemann (2015) Hagemann, W. (2015). Efficient geometric operations on convex polyhedra, with an application to reachability analysis of hybrid systems. Mathematics in Computer Science, 9(3), 283–325.
  • Hamdi et al. (2012) Hamdi, H., Rodrigues, M., Mechmeche, C., and Braiek, N.B. (2012). Robust fault detection and estimation for descriptor systems based on multi-models concept. International Journal of Control, Automation, and Systems, 10(6), 1260–1266.
  • Janschek (2011) Janschek, K. (2011). Mechatronic systems design: methods, models, concepts. Springer Science & Business Media.
  • Jonchkeere (1988) Jonchkeere, E. (1988). Variational calculus for descriptor systems. IEEE Transactions on Automatic Control, 33(5), 491–495.
  • Merhy et al. (2019) Merhy, D., Maniu, C.S., Alamo, T., and Camacho, E.F. (2019). Ellipsoidal set-membership state estimation for descriptor systems. In Proc. of the 23rd International Conference on System Theory, Control and Computing, 1–6.
  • Raimondo et al. (2016) Raimondo, D.M., Marseglia, G.R., Braatz, R.D., and Scott, J.K. (2016). Closed-loop input design for guaranteed fault diagnosis using set-valued observers. Automatica, 74, 107–117.
  • Scott et al. (2014) Scott, J.K., Findeisen, R., Braatz, R.D., and Raimondo, D.M. (2014). Input design for guaranteed fault diagnosis using zonotopes. Automatica, 50(6), 1580–1589.
  • Scott et al. (2016) Scott, J.K., Raimondo, D.M., Marseglia, G.R., and Braatz, R.D. (2016). Constrained zonotopes: a new tool for set-based estimation and fault detection. Automatica, 69, 126–136.
  • Shi and Patton (2014) Shi, F. and Patton, R. (2014). Active fault tolerant control of lpv descriptor systems based on extended state observers. In Proc. of the 2014 American Control Conference, 4458–4463.
  • Wang et al. (2018a) Wang, Y., Puig, V., and Cembrano, G. (2018a). Set-membership approach and kalman observer based on zonotopes for discrete-time descriptor systems. Automatica, 93, 435–443.
  • Wang et al. (2019) Wang, Y., Puig, V., Xu, F., and Cembrano, G. (2019). Robust fault detection and isolation based on zonotopic unknown input observers for discrete-time descriptor systems. Journal of the Franklin Institute, 356, 5293–5314.
  • Wang et al. (2018b) Wang, Y., Wang, Z., Puig, V., and Cembrano, G. (2018b). Zonotopic set-membership state estimation for discrete-time descriptor LPV systems. IEEE Transactions on Automatic Control, 64(5), 2092–2099.
  • Yang et al. (2019) Yang, S., Xu, F., Wang, X., Yang, J., and Liang, B. (2019). Set-based active fault diagnosis for discrete-time linear descriptor systems. In Proc. of the 2019 American Control Conference, 5045–5051.
  • Yang and Scott (2018) Yang, X. and Scott, J.K. (2018). A comparison of zonotope order reduction techniques. Automatica, 95, 378–384.