Observer synthe

1 downloads 0 Views 657KB Size Report
Jul 13, 2017 - C. Renato Vázquez, D. Gómez-Gutiérrez and A. Ramírez-Treviño ... Tecnologico de Monterrey, Campus GDA, Av. Ramón Corona 2514, 45201, ...
This is the author’s version of the paper C. Renato Vázquez, D. Gómez-Gutiérrez and A. Ramírez-Treviño “Observer synthesis for linear hybrid systems with constrained discrete dynamics”, Nonlinear Analysis: Hybrid Systems 26C (2017) pp. 254-273, ISSN: 1751-570X. DOI information: ​10.1016/j.nahs.2017.06.006 The publisher version and the full citation details can be found at: http://dx.doi.org/10.1016/j.nahs.2017.06.006

Observer synthesis for Linear Hybrid Systems with constrained discrete dynamics C. Renato V´azquez∗, David G´omez-Guti´errez Tecnologico de Monterrey, Campus GDA, Av. Ram´on Corona 2514, 45201, Zapopan, Jalisco, Mexico.

Antonio Ram´ırez-Tevi˜no CINVESTAV, Unidad Guadalajara, Av. del Bosque 1145, Zapopan, Jalisco, Mexico.

Abstract A Linear Hybrid System (LHS ) is defined as a collection of Linear Systems (LS ’s) and a switching signal determining, at each time, the LS structure that rules the behavior of the LHS . These systems are being used to successfully represent different kinds of engineering systems. This work proposes an observer scheme for Linear Hybrid Systems (LHS ’s) where the switching signal is unknown but it can be represented by a discrete event machine like automata, Petri nets, etc. The proposed observer structure takes advantage of the general observability characterization presented in [1], where neither the observability of the discrete event machine nor the observabilities of the linear systems are required. First, the observer scheme estimates the discrete location, which is also named discrete state, by combining information from the continuous and discrete outputs. Next, the observer structure estimates the continuous state based on the knowledge of the visited locations, i.e., the discrete state trajectory. The observer scheme is flexible, allowing the use of different types of observers for the continuous and discrete states. Keywords: Hybrid systems; Observers; Petri nets.

1. Introduction

5

10

15

A Linear Hybrid System (LHS ) can be defined as a collection of Linear Systems (LS ’s) and a switching signal determining, at each time, the LS structure that rules the behavior of the LHS . These systems are being used to successfully represent different kinds of systems. For instance, in electrical power systems, the different operation modes (normal and different faulty behaviours) are modeled as a family of linear systems switching among them; in power electronics, switched power suppliers exhibit different operation modes that may be represented as a LHS ; in process systems and other nonlinear systems (NLS ), their state spaces are frequently partitioned such that the behaviour of a system at each partition is approximated by a linear system, leading to a LHS . The study of the fundamental properties of LHS ’s has received great attention during the last years. In particular, the observability property allows to estimate the switching signal and the continuous state by using the knowledge of the system’s input and output signals. This property has been broadly studied due its importance in different real applications. For instance, the knowledge of the switching signal and the continuous state allows to detect faults and their magnitude in electrical power systems; to determine the most appropriated linear representation in NLS approximated by LHS ’s, among many other applications. The observability in LHS ’s has been studied assuming different hypotheses. For instance, in [2] and [3] the switching signal is designed to improve the observability. On the other hand, in [4–6] it is assumed that the switching ∗ Corresponding

author. Email addresses: [email protected] (C. Renato V´azquez ), [email protected] (David G´omez-Guti´errez), [email protected] (Antonio Ram´ırez-Tevi˜no) Preprint submitted to Elsevier

July 13, 2017

20

25

30

35

40

45

50

55

60

65

signal is known, in this setting the continuous state of the LHS is estimated by the combination of partial observations obtained when visiting each LS . In [7–10] it is considered that the switching signal is unknown, allowing the switching from any LS to any other LS . In [11] necessary conditions for the observability of piece-wise affine hybrid system were presented, in which the switching signal is unknown but the switching is state dependent. Without any information about the switching sequence, the conditions required for observability are quite restrictive. In general, it is required that each LS is observable and each pair of LS ’s is distinguishable [7, 12, 13], i.e., two different LS’s must not produce the same output trajectory in order to be able to determine the discrete location from the information provided by the continuous output. For this case, different works have addressed the synthesis of the location observer, for instance, [14–16]. Most of the observability and observer synthesis works consider that the LHS can switch from any LS to any other LS , however there are interesting cases where such switching assumption does not hold. For instance, in process systems it frequently occurs that discrete actuators, leading to operation modes (i.e., LS ’s), must be activated according to certain sequence, see for instance, [17–19]. Moreover, nonlinear models are frequently approximated by LS ’s operating at different operation points, leading to autonomous switchings as a piecewise affine system, where a LS can only switch to its neighbors, see for instance, [20], [21]. In power electronic systems, it is frequently found that some semiconductors are controlled but others are autonomously driven, see for instance [22, 23]. Thus, switchings from some LS ’s operation modes to others may be impossible to occur or must be avoided for stability reasons. In traffic systems in urban areas, when considering a fluid flow approach for the traffic behavior, traffic lights lead to hybrid models (for instance, [24–27]), in which the discrete modes, induced by traffic lights, evolve according to a predefined sequence. In chaos-based secure communications in which the information is modulated by using a chaotic attractor generated by a LHS , the demodulation problem involves an observer synthesis in which the knowledge on the switching structure can be used [28]. There are few works in the literature addressing the case in which the switching is constrained. In [29] there is defined a hybrid system of which the switching signal is generated by a Petri net (PN), in which some places and transitions are measurable. The goal there is to developed an observer for the discrete state and for the continuous state. Nevertheless, in [29] it is assumed that the continuous systems are observable. Moreover, the PN must be observable after each switching just by using the discrete measurements. In fact, all the events are distinguishable from each other. Closely related works have been reported in [30, 31]. In [30] the observer synthesis problem is addressed considering that the switching signal is produced by a finite automaton. There, the discrete location is determined by computing residuals from Luenberger observers. Thus, a discrete observer is proposed as a finite automaton, whose states are defined as sets of currently possible locations (explanations), leading to an exponential number of states in the discrete observer. In [31], the observability of LHS where the discrete dynamic is determined by a Moore automaton is addressed. In this setting, each pair of states with the same discrete output are required to be distinguishable, which requires their associate LS to be observable. Such conditions can be relaxed in the eventual observability case [1], where neither the observability of the continuous states nor the observability of the discrete system are required. Furthermore, the observer synthesis problem was not addressed in [31]. The work introduced here is based on the eventual observability analysis presented in [1]. In that work, it was found that the information provided by the continuous output can be used together with the information provided by discrete sensors and the structure of the underlying discrete event system, but not its state, to estimate both the discrete and continuous states of a LHS , greatly relaxing the observability conditions. In fact, the observability of each LS is not a necessary condition for eventually determining, after a certain number of switchings, which is the evolving LS . Furthermore, the observability of the underlying discrete event system, by only using discrete measurements, is not required. The contribution of this work is the introduction of an observer scheme for eventually observable LHS ’s. Our approach uses a PN for capturing how the LS ’s switch with each other. In our observer scheme, a couple of algorithms are firstly used to combine the information from the continuous and the discrete outputs for the estimation of the discrete location. By using such information, a Petri net observer estimates the discrete location, i.e., the marking of the PN. Next, based on the knowledge of the visited locations, i.e., the PN’s marking evolution, a continuous observer estimates the continuous state. The conditions on the LHS required for our observer scheme are more relaxed than those required in [29], as mentioned in the previous paragraph. Comparing to [30, 31], the use of a PN allows to have a compact representation for the discrete observer. Furthermore, we distinguish between the information from the continuous state that is useful to determine for the first time the current state and the information useful for 2

70

75

determining the location after the first estimation, obtaining thus more relaxed conditions for observability. This paper is organized as follows. In Section 2 some basic definitions and results about LHS ’s and PN’s are provided. In Section 3, some observability results are recalled from [1], explaining how to translate the modal information of the LS , that may help to distinguish between them, into the PN framework. The observer scheme is introduced in Section 4. Such observer scheme estimates both the discrete state and the continuous state of the LHS . The application of the observer is illustrated in Section 5. Finally, some conclusions and future work are presented in Section 6. 2. Basic Concepts and Definitions 2.1. Linear Hybrid Systems

80

Definition 1. A Linear Hybrid System (LHS) Σα(τ) is a collection of linear systems (LS’s) F = {Σ1 , . . . , Σm }, each one defined in the state space X = Rn , and a switching signal α(τ), taking values in {1, . . . , m}, that determines the evolving linear system. Σα(τ) evolves according to x˙(τ) = Aα(τ) x(τ), y(τ) = Cα(τ) x(τ) α(τ) ∈ {1, . . . , m}.

85

90

95

100

105

x(τ0 ) = x0 (1)

where y ∈ Rr is the continuous output signal. The evolving LS at a discrete mode i ∈ {1, . . . , m}, i.e. when α(τ) = i, is represented by Σi (Ai , Ci ) or simply by Σi , where Ai and Ci are matrices of appropriate dimensions. The initial mode is assumed to be fixed but unknown. Neither resets nor state-jumps are considered in this work, thus, if a switching occurs at time τi then x(τ−i ) = x(τ+i ). In this work, the evolution of the switching signal α(τ) is generated by a discrete event system, in particular, an Interpreted Petri net system. This will be detailed in Definition 4. Definition 2. A Petri net (PN) structure N = ⟨P, T, Pre, Post⟩ is a bipartite directed graph where places (P) and transitions (T ) are disjoint sets of nodes and incidence matrices Post and Pre are natural valued with dimension |P| × |T |, describing the arcs from nodes in T to nodes in P, and from nodes in P to nodes in T , respectively. Thus, if there exists an arc connecting a place p to a transition t then Pre[p, t] > 0, similarly Post[p, t] > 0 indicates the existence of an arc connecting transition t to place p. In this work, we consider strongly connected PN’s, i.e., for each node a ∈ P ∪ T and any other node b ∈ P ∪ T there is a directed path from a to b. Moreover, we consider ordinary PN’s in which arcs have not weights, i.e., Pre[p, t] ∈ {0, 1} and Post[p, t] ∈ {0, 1} for any p ∈ P, t ∈ T . Furthermore, we assume that each transition has one input arc and one output arc, thus the PN belongs to the class of state machine. Definition 3. An Interpreted Petri net (IPN) system is a discrete event system described by the tuple ⟨N, M0 , Σo , Φ⟩, where N is a PN structure, M0 ∈ N|P| is a vector, named initial marking, that has the information about the number of marks or tokens that are initially residing in the places of the net, Σo is an alphabet of observable labels and Φ : P → 2Σo is a mapping that associates a subset of labels to each place. A label can be associated to different places. The state in a PN system is defined as the distribution of marks in the places, codified in the marking vector M ∈ N|P| . The evolution of the IPN system is described as follows: 1. A transition t ∈ T is said to be enabled at the marking M ∈ N|P| if M[p] ≥ Pre[p, t] ∀p ∈ P. 2. The occurrence or firing of an enabled transition ti leads to a new marking distribution M ′ ∈ N|P| that is computed by using M ′ = M + W[P, ti ] = M + W · et , where W = Post − Pre is named the incidence matrix and ei denotes the i-th column vector of the identity matrix of dimension |T |. 3. If there is a token at place p j ∈ P and the set of labels {li , ..., lk } ∈ 2Σo are associated to p j then all the labels li , .., lk will be concurrently observed by an external observer. 3

In this work we consider IPN systems having initially one token. Then, since the PN is a strongly connected ordinary state machine, at any time there will be only one token in the net. Consequently, the output of the IPN can be characterized by a matrix Φ, whose entries are defined as follows: Φ[i, j] = 1 if there is a label li ∈ Σo associated to the place p j ∈ P, and Φ[i, j] = 0 otherwise. Thus, the discrete output vector yd can be computed as yd = Φ · M

110

115

120

where yd [i] = 1 iff the label li is observed, otherwise yd [i] = 0. Thus, observing labels is equivalent to observing yd . Nevertheless, notice that observing labels does not necessarily allow the determination of the marking, for instance, if all the places are associated to the unique label l1 , an external observer will observe l1 at any time, thus being unable to determine the current marking. Definition 4. The underlying IPN of a given LHS as described in Definition 1 is a strongly connected ordinary state machine IPN as described in Definition 3, having m places and one token at the initial marking. Thus, the switching signal α(τ) of the LHS is determined by the marking at the IPN system in such a way that α(τ) = i if there is a token at place pi at time τ. In the proposed setting, two extreme cases may appear. In a first case, the observation of the labels at the IPN places are enough to determine the state of the IPN. Thus, the state estimation problem reduces to estimate the continuous state from the continuous output assuming that the discrete state is known, as in [4–6]. In a second case, there are no labels associated to places and each place is connected through a transition to any other place. Then, the IPN does not provide any information and the state estimation must be performed by using only the continuous output as in [7–10]. A sequence of transitions σ = t1 ...tk is said to be a firable sequence from a marking M1 if there are markings t1 t2 M2 , ...Mk+1 such that ti is enabled at Mi and its firing leads to the marking Mi+1 , which is denoted as M1 → M2 → tk σ ... → Mk+1 or simply as M1 → Mk+1 . The length of a sequence σ, denoted as |σ|, is defined as the number of transition firings in σ. The marking reached after the firing of σ is given by the so called fundamental equation M′ = M + W · σ

125

130

135

140

(2)

! where σ = i∈{1,...,k} ei is called the firing count vector of σ (notice σ is a sequence while σ is a vector). In the sequel, the column of W related to the transition ti is denoted as W(•, ti ). Given a transition ti ∈ T , the pre-set and post-set of ti are defined as • ti = {p ∈ P|Pre[p, ti] ! 0} and ti• = {p ∈ P|Post[ti , p] ! 0}, respectively. Two transitions ti and t j are called a conflict if • ti =• t j . Definition 5. Given a PN, a T-semiflow is a vector X with non-negative integer entries such that W · X = 0 and X ! 0. The PN is said to be consistent if there exists a T-semiflow X > 0 (comparison is component-wise). Given a T-semiflow X, the set of transitions related to the non-null entries of X is denoted as ||X|| and is named a T-component. T-semiflows and T-components are referred as invariants, since the firing from a marking M of a sequence σX , such that σ X is equal to a T-semiflow X, will lead to the same marking M. In such case, we will say that the sequence σX describes the T-semiflow X. Resuming, the T-semiflow X is a vector, the T-component ||X|| is a set of transitions and σX is a fireable sequence of transitions. A T-semiflow X is said to be minimal if there does not exist another T-semiflow Y ! X such that Y ≤ X. In strongly connected ordinary state machines, having one token at the initial marking, the length of any sequence σX describing a minimal T-semiflow X is lower or equal than |T |. See [32] for computation methods of minimal T-semiflows. Now, let us introduce the observability concept considered in this paper. Definition 6. A Linear Hybrid System Σα(τ) is said to be eventually-observable if there exists a finite integer k such that, after the occurrence of k switchings from the initial state, the current continuous state x and the current marking of the underlying IPN M can be exactly determined by using the knowledge of the continuous output y(τ) and the discrete output yd (τ) during the evolution of the system (i.e., from the initial time until the k-th switching), and the 4

145

150

future continuous and discrete states can be exactly determined based on the output information. In particular, the discrete location of Σα(τ) is said to be eventually-observable if, after the occurrence of a finite number of switchings k from the initial state, the current marking M of the underlying IPN can be exactly determined from the knowledge of y and yd during the evolution of the system, and the future marking M can be exactly determined based on the output information. Remark 1. The choice for a state machine IPN as the model for the underlying discrete event system allows us to use existing concepts and results for the observability analysis (that consider the possibility of measuring some states) and an efficient observer construction. Nevertheless, the key idea of the paper about using distinguishable continuous dynamics together with discrete measurements to determine the discrete location can also be addressed using other discrete event system, like finite state automata. The following result, presented in [6], determines when a sequence of discrete states allows the computation of the continuous state of a LHS . This result will be used to determine when the transitions sequences describing T-semiflows of the IPN allow the computation of the continuous state of the LHS . Lemma 1. ([6, Corollary 1]) Let τ1 , . . . , τ j be a sequence of switching times such that τ1 < . . . < τ j and α(τ) = qi ∈ {1, . . . , m} for all τ ∈ [τi−1 , τi ), qj i.e. the switching signal α(τ) produces the mode sequence q1 , . . . , q j and let N q1 be the sequence-unobservable subspace recursively computed according to the following rules: qj

N q j := ker Gq j " qj qj # N qi := Aqi | ker Gqi ∩ N qi+1 155

160

where Gqi is the observability matrix of the qi -th LS and ⟨A|V⟩ denotes the smallest A-invariant subspace containing V. Then, if the mode sequence is known the continuous state of the hybrid system is observable for all switching qj signals α(τ) (with possible different switching times) producing the mode sequence q1 , . . . , q j if N q1 = {0}. 2.2. Distinguishability and Jordan blocks An important concept in the observability of LHS is the distinguishability property [7, 12] which deals with determining the currently evolving LS from the continuous output evolution of the LHS. This is of particular importance when the discrete state is unknown and cannot be determined from the discrete output. Definition 7. A LS Σi is said to be indistinguishable, based on the continuous output, from the LS Σ j , for i, j ∈ {1, ..., m}, if ∀x0 ∈ X, ∃x′0 ∈ X such that (3) ∀τ ≥ 0, Ci eAi τ x0 = C j eA j τ x′0 . Under this situation it is impossible to determine, from the continuous output only, if the evolving LS is Σi or Σ j . If condition (3) is not fulfilled then the LS ’s Σi and Σ j are said to be distinguishable [9]. Jordan canonical forms will be used through this work to analyze the distinguishability between LS ’s. Consider a LS Σi and its transformation T i into the Jordan canonical form. The output of such system can be represented as Ai τ Ji τ −1 y=C $ i x = C i e x0 = C i T i e T i x0 % 1 2 y = [Ci T i ] [Ci T i ] ... [Ci T i ]ri · ⎡ [Ji ]1 τ ⎤ ⎡ $ −1 % ⎤ ⎢⎢⎢ e 1 0 ... 0 ⎥⎥⎥ ⎢⎢⎢⎢ $T i %1 ⎥⎥⎥⎥ ⎥ ⎢⎢⎢ ⎥⎢ 2 e[Ji ]2 τ ... 0 ⎥⎥⎥⎥ ⎢⎢⎢⎢ T i−1 2 ⎥⎥⎥⎥ ⎢⎢⎢ 0 ⎥⎥⎥ x ⎢ ⎥ (4) ⎥⎥⎥ ⎢⎢⎢ · ⎢⎢⎢⎢ . .. .. .. ⎥⎥⎥ 0 ⎥⎥⎥ ⎢⎢⎢ ⎢⎢⎢ .. . . ⎥ . ⎥ ⎢ ⎥ ⎢⎣ ⎥⎦ ⎢⎢ $ % ⎥⎥ ri 0 0 ... e[Ji ]ri τ ⎣ T −1 ⎦ i

y=

ri !

k [Ji ]kk τ

[Ci T i ] e

k=1

[T i−1 ]k x0 5

ri

165

where [Ji ]kk corresponds to the k-th block of the Jordan form matrix, [•]k (resp. [•]k ) denotes the matrix built with the rows (resp. columns) of the argument matrix (vector) that corresponds to the k-th block of the Jordan matrix, and the Jordan matrix of the i-th system has ri blocks. The Jordan blocks are related to eigenvalues. In fact, the diagonal entries of a Jordan block are the associated eigenvalue. For instance, a Jordan block or order ok > 4 associated to a real repeated eigenvalue λk can be expressed as ⎤ ⎡ ⎢⎢⎢ λk 1 0 .... 0 ⎥⎥⎥ ⎢⎢⎢⎢ 0 λk 1 ... 0 ⎥⎥⎥⎥ ⎥ [Ji ]kk = ⎢⎢⎢⎢⎢ . .. ⎥⎥⎥⎥ .. .. ⎥⎥⎥ ⎢⎢⎢ .. . . . ⎦ ⎣ 0 0 0 ... λk and its exponential matrix is expressed as

k

e[Ji ]k τ

170

⎡ λk τ ⎢⎢⎢ e ⎢⎢⎢ ⎢⎢ 0 = ⎢⎢⎢⎢ . ⎢⎢⎢ .. ⎢⎣ 0

τeλk τ eλ k τ .. . 0

1 2 λk τ 2τ e λk τ

τe .. . 0

.... ...

1 ok −1 λk τ e (ok −1)! τ 1 ok −2 λk τ τ e (ok −2)!

.. .

...

eλ k τ

⎤ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎦

(5)

Thus, considering (4) and (5) it is evident that the continuous output of a LS is the sum of exponential terms with the eigenvalues of the corresponding state matrix as exponents. Consequently, if the state matrix of a LS Σi has an eigenvalue λk and the state matrices of all of the other LS ’s in the collection do not have the same eigenvalue, then the continuous output of the LHS will exhibit an exponential term having λk as an exponent iff the LHS evolves in Σi and the product [Ci T i ]k is not null, assuming the product [T i−1 ]k x0 ! 0. Therefore, the evolution of the exponential term related to such unique eigenvalue can help an external observer to determine whether the system is in mode Σi or not. Motivated by the previous reasoning, the distinguishability concept is applied to Jordan blocks.

180

Definition 8. Consider a LHS . Consider two Jordan blocks, k and l, of two LS of the collection, Σi and Σ j , respectively. If the blocks are associated to different eigenvalues, λk and λl , respectively, and [Ci T i ]k ! 0 then the Jordan block k of Σi is said to be distinguishable from the block l of Σ j . If the block k of Σi is distinguishable from any other Jordan block of any other LS in the collection, then such Jort dan block is simply said to be distinguishable, and the related continuous output block [Ci T i ]k e[Ji ]k τ is said to be a characteristic dynamic.

185

Notice that Σi is distinguishable from Σ j , based on the continuous output, for any initial condition iff each block k of Σi is distinguishable from any block l of Σ j . Nevertheless, if we assume that [T i ]−1 k x0 ! 0 for any block k of Σi , then Σi is distinguishable from Σ j iff there exists a block k of Σi that is distinguishable from any block l of Σ j , i.e., the condition is relaxed. The distinguishability concept is also applied to sequences of firings in IPN.

175

Definition 9. Given an IPN system, two firing sequences σ1 and σ2 with the same length n are said indistinguishable, based on the discrete output, if they produce the same sequence of discrete outputs, i.e., Φ(σi [k]) = Φ(σ j [k])

∀k ∈ {1, ..., n}

2.3. Assumptions In the rest of the paper, the following assumptions will be made.

190

1. The IPN that models the switching behavior of the LHS is a strongly connected ordinary consistent state machine having only one token at the initial state. 2. The firing of each transition in the IPN produces a change in the discrete output, however, such output information may not be enough to determine the fired transition. 3. The firing of the transitions (switchings) of the IPN are neither controllable nor known (measured). 6

195

200

205

4. There are no continuous state jumps at switchings , i.e., for each switching time τ it holds x(τ− ) = x(τ+ ). 5. There exists a fixed maximum dwell time τmax and a fixed minimum dwell time τmin at each discrete mode, i.e., for every consecutive switching times τi and τi+1 it holds that τi+1 − τi ≤ τmax and τi+1 − τi ≥ τmin . Thus, Zeno behavior is excluded. The minimum dwell time is assumed to be known. 6. The initial continuous state x0 has non null projections over all the linear invariants of all the LS ’s, i.e., ∀Σi , ∀k of Σi it holds [T i−1 ]k x0 ! 0 where T i is the linear transformation leading the system Σi to its Jordan form and [T i−1 ]k represents the matrix built with the rows of T i−1 that correspond to the k-th block of the Jordan form. We refer to this property as considering a generic initial condition since, in terms of algebraic geometry [33, Section 1.2], the exceptional set is an algebraic set defined as the union of the affine varieties V([T i−1 ]k x0 = 0), having dimension lower than n. 2.4. Example In order to illustrate the definitions and concepts introduced in this section, consider the LHS that consists of the IPN of fig. 2(a) (which appears in Section 5 where it is mainly required) and the collection of the following LS ’s. Each place pi of the IPN is associated with the continuous system Σi = (Ai , Ci ). ⎡ ⎤ ⎢⎢⎢ −2 0 0 ⎥⎥⎥ $ % ⎢⎢⎢ ⎥ Σ1 : A1 = ⎢⎢ 0 1 0 ⎥⎥⎥⎥ C1 = 1 0 0 ⎣ ⎦ ⎡ 0 0 −1 ⎤ ⎢⎢⎢ −1 0 0 ⎥⎥⎥ $ % ⎢ ⎥ Σ2 : A2 = ⎢⎢⎢⎢ 0 1 0 ⎥⎥⎥⎥ C2 = 0 1 1 ⎣ ⎦ ⎡ 0 0 −1 ⎤ ⎢⎢⎢ 1 0 0 ⎥⎥⎥ $ % ⎥ ⎢ C3 = 0 0 1 Σ3 : A3 = ⎢⎢⎢⎢ 0 −2 0 ⎥⎥⎥⎥ ⎦ ⎣ 0 0 −3 Σ4 : A4 = A2 C4 = C2 Σ5 : A5 = A2 C5 = 2 · C2 The incidence matrix, output matrix and initial marking of the IPN system are given by: ⎡ ⎢⎢⎢ ⎢⎢⎢ ⎢⎢ W = ⎢⎢⎢⎢⎢ ⎢⎢⎢ ⎢⎣

−1 0 0 1 −1 0 0 1 −1 0 0 1 0 0 0

1 −1 1 0 0 0 0 0 0 −1 0 0 0 1 −1

⎤ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎦

Φ=

,

0 1

1 0

0 1 1 0

1 0

-

⎡ ⎢⎢⎢ ⎢⎢⎢ ⎢⎢ M0 = ⎢⎢⎢⎢⎢ ⎢⎢⎢ ⎢⎣

1 0 0 0 0

⎤ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎦

The LS ’s are already in the Jordan form to simplify the analysis, thus T 1 = T 2 = T 3 = T 4 = T 5 = I. The continuous outputs of the LS ’s Σ1 and Σ3 can be expressed, respectively, as yΣ1 = e−2τ [1 0 0] x0 yΣ3 = e−3τ [0 0 1] x0 210

215

220

In the first system, only the first eigenvalue results in an exponential term in the output expression, because of the particular structure of C1 . Similarly, the third eigenvalue of the third system produces a term in the output. The exponential term e−2τ will appear only in the output of Σ1 , if [1, 0, 0]x0 ! 0. Thus, e−2τ produces a characteristic dynamic that will not be produced by any other term of any other system, and thus the block [−2] of Σ1 is said to be distinguishable from any other block. The condition [1, 0, 0]x0 ! 0 holds because of assumption 6 (in fact, in this example assumption 6 holds if every entry of x0 is not null). The same occurs for the block [−3] of Σ3 , i.e., it is distinguishable from any other block. On the contrary, the block [1] of Σ2 will produce an exponential term in the output expression similar to that produced by the blocks [1] of Σ4 and Σ5 , thus those blocks are indistinguishable. On the other hand, notice that, since the IPN structure belongs to the class of ordinary state machine and the system initially has one token, at every future time only one place will have a token. At the initial time, the discrete output vector is yd = ΦM0 = [0, 1]T , which is equivalent to indicate the output label b. By definition, in IPNs a place 7

225

230

may have more than one label, for instance, in the IPN of fig. 3(a), if p1 is initially marked, an external observer will concurrently observe both symbols b and l1 . If t1 is fired, the output symbols will change to a and l3 , simultaneously. The IPN of fig. 2(a) has two minimal T-semiflows X1 = [1, 1, 1, 1, 0, 0]T and X2 = [0, 0, 0, 0, 1, 1]T , related to the T-components ||X1 || = {t1 , t2 , t3 , t4 } and ||X2 || = {t5 , t6 }. Notice that a vector Y = [0.5, 0.5, 0.5, 0.5, 0, 0]T fulfills with WY = 0 and Y ≥ 0, however Y is not a T-semiflow because it has non-integer entries. On the other hand, Z = [2, 2, 2, 2, 0, 0] is a T-semiflow but it is non minimal, since the T-semiflow X1 ! Z fulfills X1 ≤ Z. Thus, X1 and X2 are the only minimal T-semiflows in this net. Every firing sequence of length larger than |T | = 6 will include the firing of at least one minimal T-semiflow. Notice that the sequences σ1 = t1 t2 t3 t4 and σ2 = t3 t4 t1 t2 , which describe the same T-semiflow X1 , produce the same output sequence baba, thus both sequences are indistinguishable based on the discrete output. 3. Observability analysis The goal in this work is to provide an observer scheme for LHS ’s. This scheme is based on the observability analysis presented in [1] that is explained in the sequel.

235

240

245

250

3.1. Observability strategy The observability strategy proposed in [1] consists of two stages. In the first stage, information about the eigenstructure of the LS ’s is firstly captured as labels that are added to the associated places of the IPN. Roughly speaking, if a LS has an eigenvalue and its corresponding eigenvector such that they produce a characteristic dynamic, different from any other LS , such characteristic dynamic can be represented as a label that is added to the corresponding place at the IPN. If such characteristic dynamic is shared by a set of LS ’s, a common label is added to the corresponding places. Thus, the continuous information that may help to distinguish the evolving LS is codified in the IPN. Such codification is implemented in the forthcoming algorithm Labelling.I. Having this information, the observability of the IPN can be investigated by using previous results. Furthermore, existing observer algorithms for the IPN can be used to compute the marking. Once the evolving LS is identified (i.e., once the marking of the IPN has been estimated), the continuous state can be recovered. This task is equivalent to the estimation of the continuous state under known switching signals (see [2, 4, 6]). In particular, the switching signals to consider are given by the sequences of LS ’s associated to the places described by the T-components of the IPN (i.e., each possible switching sequence that can infinitely occur), which must fulfill Lemma 1. Let us remark that the observability of each LS in the collection is not required. Once the discrete and the continuous states have been determined, in the second stage both states are determined for the subsequent time. Nevertheless, in this case it can be assumed that both states are known at the previous switching. Under such assumption, the forthcoming algorithm Labelling.II codifies the distinguishable dynamics of the LS ’s into a labelling pattern for the IPN in order to provide additional information for its observability. 3.2. Labelling places based on distinguishable Jordan blocks

255

Jordan canonical forms of LS ’s are used to detect characteristic dynamics that allow us to distinguish between LS ’s based on the continuous output information. The following algorithm is applied to translate characteristic dynamics of the LS ’s into the IPN’s paradigm as a labelling pattern added to the corresponding places. This algorithm is used during the first stage of the observability strategy, when neither the continuous state nor the discrete state have been estimated.

260

Algorithm 1: Labelling Generic.I

1. A unique label is added to place pi if ∃k ∈ {1, .., ri }, ∃xi ∈ X such that ∀p j ∈ P \ {pi }, ∀m ∈ {1, .., r j }, ∀x j ∈ X it holds k m ∃τ ≥ 0, [Ci T i ]k e[Ji ]k τ [T i−1 ]k xi ! [C j T j ]m e[J j ]m τ [T −1 j ]m x j 8

2. A shared label is added to places {pi , p j , ..., pq} if ∃k ∈ {1, .., ri }, ∃xi ∈ X such that ∀pl " {pi , p j , ..., pq}, ∀v ∈ {1, .., rl }, ∀xl ∈ X it holds k v ∃τ ≥ 0, [Ci T i ]k e[Ji ]k τ [T i−1 ]k xi ! [Cl T l ]v e[Jl ]v τ [T l−1 ]v xl but ∃m ∈ {1, .., r j }, ..., s ∈ {1, .., rq }, ∃x j , ..., xq ∈ X such that k m s [Jq ]ss τ ∀τ ≥ 0, [Ci T i ]k e[Ji ]k τ [T i−1 ]k xi = [C j T j ]m e[J j ]m τ [T −1 [T q−1 ] s xq j ]m x j = ... = [Cq T q ] e 265

k

270

275

m

Notice that if [Ci T i ]k e[Ji ]k τ [T i−1 ]k xi ! [C j T j ]m e[J j ]m τ [T −1 j ]m x j for some time τa ≥ 0 then there exists a proper finite time interval [τa , τb ] ⊂ R such that ∀τ ∈ [τa , τb ] the inequality holds, since each of the terms are continuous k functions of time. To check the inequalities of the previous algorithm, note that the blocks [Ci T i ]k e[Ji ]k τ can be easily computed keeping τ as a parameter, since the exponential matrix is applied to a Jordan block. An alternative is to k compare observability matrices, i.e., using Obs([Ji ]kk , [Ci T i ]k ) instead of [Ci T i ]k e[Ji ]k τ , where Obs(A, C) denotes the observability matrix of the system (A, C). The following algorithm is applied to translate the characteristic dynamic of the LS ’s into the IPN’s paradigm as a labelling pattern, assuming that both the discrete state and the continuous state are known at the last switching. This algorithm is used for the second stage of the observability strategy, when the state has been recovered but it is still required to uniquely determine the discrete location for subsequent time. Algorithm 2: Labelling Generic.II

280

For each place po with more than one output transition do: 1. A unique label is added to place pi ∈ p•• o if ∀p j ∈ p•• o \ {pi } it holds ∃τ ≥ 0, Ci eAi τ ! C j eA j τ 2. A shared label is added to places {pi , p j , ..., pr } ⊂ p•• o if ∀pl ∈ p•• o \ {pi , p j , ..., pr } it holds ∃τ ≥ 0, Ci eAi τ ! Cl eAl τ but ∀τ ≥ 0, Ci eAi τ = C j eA j τ = ... = Cr eAr τ

285

Previous labelling algorithm is only applied at choice places, because only at choice places the knowledge of the discrete state can be lost after the firing of some transition. Proposition 3 in [1] advanced sufficient conditions for the marking observability of the underlying IPN, without a formal proof. Such proposition is extended in the following theorem to provide sufficient conditions for the eventual observability of LHS ’s. Theorem 1. Consider a LHS . Consider the assumptions enumerated in Subsection 2.3. The system is eventuallyobservable (Definition 6) if the following conditions hold:

290

295

1. Distinguishability of sequences describing minimal T-semiflows: in the IPN obtained after the algorithm Labelling.I is applied, each firing sequence describing a minimal T-semiflow, which are known to have a length lower or equal than |T |, produces an output trajectory that is different from that produced by any other firing sequence describing a T-semiflow. In other words, given two firing sequences σ1 = t11 , t21 ...tn1 and σ2 = t12 , t22 ...tn2 that describe minimal T-semiflows (i.e., Wσ1 = Wσ2 = 0), it holds ΦG1 W(•, t1j ) ! ΦG1 W(•, t2j ) for some j ∈ {1, .., n}, where ΦG1 is the output matrix of the IPN obtained after applying algorithm Labelling.I. 2. Unique estimation of the continuous state: the continuous state can be determined after the firing of any sequence describing a minimal T-semiflow of the underlying IPN, which are known to have a length lower or equal than |T |, by using the continuous output trajectory, assuming the switching signal is known. This condition can be verified by applying Lemma 1 to all the sequences describing minimal T-semiflows. 9

300

3. Preservation of the unique estimation of the discrete state after further discrete dynamics: in the IPN obtained after the algorithm Labelling.II is applied, it holds ∀ti , t j ∈ T with • ti = • t j , ΦG2 C(•, ti ) ! ΦG2C(•, t j ), where ΦG2 is the output matrix of the IPN obtained after algorithm Labelling.II. Proof. Proposition 2 of [1] states that two LS Σi and Σ j are distinguishable with unknown generic initial condition iff ∃k ∈ {1, ..., ri }, ∃xi ∈ X such that ∀m ∈ {1, ..., r j }, ∀x j ∈ X it holds k

m

[Ci T i ]k e[Ji ]k τ [T i−1 ]k xi ! [C j T j ]m e[J j ]m τ [T −1 j ]m x j

305

310

315

320

325

330

335

340

(6)

during a proper time interval. Notice that (6) is the condition required by Algorithm Labelling.I to add a label to place pi , but in such case the condition must hold for every Σ j with j ! i. Therefore, if (6) holds for Σi then the Algorithm Labelling.I will add a label to the corresponding place pi , allowing to detect the evolving system if such label is observed, which agrees with the possibility to distinguish Σi from any Σ j such that j ! i by using the continuous output as stated in Proposition 2 of [1]. Furthermore, as a generalization, a shared label is added by the Algorithm k Labelling.I to a set of places {pi , p j , ..., pr } if they share a common block-dynamic [Ci T i ]k e[Ji ]k τ [T i−1 ]k xi that is different to the block-dynamics of all the blocks of all of the other LS ’s. Thus, if the common block-dynamic is detected from the continuous output, it can be claimed that the LHS system is evolving in a LS related to one of the commonly labelled places. Therefore, the IPN obtained after the Algorithm Labelling.I is applied, captures the information that can be used from the discrete and the continuous outputs to distinguish which of the LS ’s is generating the output. According to Condition 1, in the IPN obtained after the Algorithm Labelling.I is applied, i.e., after blending the discrete and output information, the firing of any sequence that describes a minimal T-semiflow will be detected, thus determining the sequence that has occurred and the marking sequence, since a firing sequence corresponds to a unique marking sequence in safe state machines (safe means that at most one token resides in every place at every time, in state machines safeness implies that there is only one token in the net at every time). Now, a well-known fact in ordinary state machine PN’s is that any firing sequence of length larger than the number of transitions in the PN must contain minimal T-semiflows. That is, the only possible way to fire sequences in which some transitions are repeatedly fired is by firing T-semiflows. Therefore, by considering a number of switchings k large enough such that a minimal T-semiflow has been fired (thus, larger or equal than the number of transitions), Condition 1 guarantees that enough information is obtained from the discrete and continuous output trajectories in order to uniquely determined the discrete marking and the fired sequence. Condition 2 states that, when the firing of a T-semiflow has occurred, the continuous state can be calculated (reconstructed) by using the continuous output trajectory and the switching sequence (which will be known by the previous discussion). Therefore, after the firing of any sequence containing any minimal T-semiflow, enough information will be available from the discrete and the continuous output trajectories to compute the last part of the firing sequence (that involves the T-semiflow), the marking sequence corresponding to such firing sequence, and then it will be possible to compute the continuous trajectory. Since the LHS is deterministic, once the continuous state is calculated, it is possible to determine the continuous state for the future time if the discrete state is known during the future firings. Nevertheless, even if the discrete state is known, it can be lost after a firing of a transition in conflict (choice). Condition 3 is required to avoid this situation. In detail, Proposition 3 of [1] states that two LS Σi and Σ j are distinguishable with known initial condition iff it holds C i e Ai τ ! C j e A j τ (7) during a proper time interval. Notice that (7) is the condition required by Algorithm Labelling.II to add a label to •• place pi , but in such case the condition must hold for every Σ j such that p j ∈ p•• pi , i.e., for any o , where po ∈ other place reached from a choice. Therefore, if (7) holds for Σi then the Algorithm Labelling.II will add a label to the corresponding place pi , allowing to detect the evolving system if such label is observed, which agrees with the possibility to distinguish Σi from Σ j by using the continuous output as stated in Proposition 3 of [1]. Algorithm Labelling.II is only applied to output places of transitions in conflict, since only there the marking sequence can be lost. Moreover, as a generalization, a shared label is added by the Algorithm Labelling.II to a set of places {pi , p j , ..., pr } if they share the output dynamic Ci eAi τ , but this is different to the dynamics of all of the other LS s. Therefore, the IPN obtained after the Algorithm Labelling.II is applied captures the possible discrimination that can be obtained, regarding what is the evolving LS after the firing of a transition in conflict, from the blend of the 10

345

350

355

360

discrete and continuous outputs. Therefore, Condition 3 guarantees that once the discrete marking has been uniquely determined, the marking sequence will not be lost in future firings. Consequently, the continuous state will not be lost in the future evolution. ! Remark 2. Condition 1 of the Theorem 1 guarantees that the firing of a sequence describing a minimal T-semiflow can be detected, which implies the eventual observability of the firing sequence and the marking sequence. Condition 2 implies that, once a sequence describing a minimal T-semiflow has been detected, the continuous state can be determined. Conditions 1 and 2 are applied to sequences describing minimal T-semiflows, which are known to have a length lower or equal than |T |, thus the continuous and discrete state determinations can occur with any sequence lower or equal than |T |. Condition 3 guarantees that once the continuous and discrete states are known, the discrete state will not be lost at choice (conflict) places. If Conditions 1 and 2 hold but Condition 3 does not hold, it is still possible to determine the continuous and discrete states after the firing of a sequence that involves a T-semiflow. Nevertheless, the discrete state may be lost after the firing of a transition in conflict. Even in such scenario, the discrete and continuous states could be determined after the firing of a new sequence that describes a T-semiflow. The verification of Condition 1, once the Algorithm Labelling.I has been applied, can be achieved by using the Algorithms 18 and 19 of [34]. In order to verify the Condition 2, for each minimal T-semiflow, the Lemma 1 can be tested by using one particular sequence describing such T-semiflow. The verification of Lemma 1 is detailed in [6]. The verification of Condition 3, once the Algorithm Labelling.II has been applied, is straight forward, by locating choice places and verifying if their output transitions lead to places with different labelling patterns. For an illustrative example of the previous definitions and results, see the first part of the Section 5. 4. Observer scheme

Figure 1: Observer scheme. Distinguishable evolving Jordan blocks are detected from the continuous output by the “Translation” algorithms, applied after n samplings from the last switching. At the first stage, the discrete state is estimated by a PN observer, applied n + 1 samplings after the last switching. When a T-semiflow is detected, the continuous state is computed for the first time and the observer changes to stage 2. At stage 2, the PN observer determines the discrete state, which is used by the continuous observer to determine the continuous state.

365

In this section, the problem of observer synthesis for eventually observable LHS ’s is addressed. The proposed observer scheme operates in two stages (see fig. 1). At the first stage, explained in Subsection 4.1, the discrete state is eventually determined. Once a T-semiflow is detected, the continuous state is also estimated. The goal of the second stage, explained at Subsection 4.2, is to exactly determine the continuous and discrete states for subsequent time. For simplicity, the algorithms that compose the observer scheme run in discrete-time, considering a small enough sampling ∆τ so at least n + 2 samplings occur before the next switching, where n is the continuous state-space dimension. Such sampling availability can be guaranteed under the assumption that a minimum dwell time exists and it is known. For a continuous time implementation, differentiators should be implemented for the evolving LS identification, but such approach is beyond this work. For the time discretization, exact time-discretizations of linear 11

systems and Jordan blocks will be considered, i.e., given a LS Σi , the discrete-time state and output matrices are computed as Adi = eAi ∆τ Cdi = Ci 4.1. Stage 1: Detecting discrete locations and estimating the continuous state for the first time. 370

375

380

After n time samplings from a switching, the algorithm “Translation.I” is used for detecting, from the continuous output, the evolution of distinguishable Jordan blocks of the LS ’s and for translating this information into an augmented discrete output yda for the IPN. By using this output, at the next sampling the algorithm “Petri net observer” computes the possible marking sequences that could have occurred in the IPN. This algorithm will uniquely determine the marking M after some switchings. The execution of a T-semiflow will be eventually detected as well, in accordance to the first condition of Theorem 1. After this, the algorithm “Computation of continuous state” estimates (in one sampling) the evolution of the continuous state during the execution of the T-semiflow, in accordance to the second condition of Theorem 1. Thus, at the end of this stage, both the discrete state and the continuous state are estimated. Algorithm 3: Translation.I Off-line:

385

1. Apply the algorithm Labelling.I, defining tuples (l, k, i) when a label l is added to place pi because of the Jordan block k is distinguishable. Let S be the set of all tuples generated by the algorithm. 2. For each (l, k, i) ∈ S , compute the observability matrix of order n: ⎡ ⎤ ([Ci T i ]k ) ⎢⎢⎢ ⎥ ⎢⎢⎢ ([C T ]k ) · ([J ]k ) ⎥⎥⎥⎥⎥ i i di ⎢ k ⎥ ⎥⎥⎥ Obsn (l, k, i) = ⎢⎢⎢⎢⎢ .. ⎥⎥⎥ ⎢⎢⎢ . ⎥⎥⎦ ⎣ ([Ci T i ]k ) · ([Jdi ]kk )n−1 where [Jdi ]kk denotes the time-discretization of [Ji ]kk . 3. Build a matrix MD by using the columns of the observability matrices, i.e., MD = [Obsn (l1 , k1 , i1 ), .., Obsn(lr , kr , ir )]

390

where {(l1 , k1 , i1 ), ..., (lr , kr , ir )} = S . Eliminate from MD the null and repeated columns (keeping only one column when repeated). For each added label l, define a set of indices ind(l) indicating the columns of MD related to observability matrices associated with such label. 4. Build a matrix MD by using the columns of the observability matrices defined for the rest of blocks and subsystems that are not in S , i.e., MD = [Obsn (kh , ih ), .., Obsn (k j , i j )] where ∀l {(l, kh , ih ), ..., (l, k j, i j )} ∩ S = ∅. Eliminate from MD the null and repeated columns. 5. Compute the left pseudo-inverse $ M −1 = ( MD

395

MD

%T $

MD

% $ MD )−1 MD

MD

%T

On-line: 1. Let n s be the number of samplings taken since the occurrence of the last switching. 12

400

2. If n s = 0 do (a) Initialize the column vector of new labels v = 0, having dimension equal to the total number of labels defined in algorithm “Labelling.I”. 3. If n s = n do (a) Compute ⎡ ⎤ ⎢⎢⎢y1 ⎥⎥⎥ ⎢⎢⎢y ⎥⎥⎥ , ⎢ 2⎥ x M −1 ⎢⎢⎢⎢⎢ . ⎥⎥⎥⎥⎥ = I (8) xI ⎢⎢⎢ .. ⎥⎥⎥ ⎣ ⎦ yn where yi denotes the continuous output at i samplings after the last switching. (b) For each non-null entry j of xI do:

405

• Find the label li such that j ∈ ind(li ). • Incorporate li to the labels vector, vi = 1. 4. Else (a) Keep the value of v as in the previous sampling. 5. Define the augmented discrete output as yda =

, yd v

410

Remark 3. For the undisturbed case considered in this work, (8) provides exact information about the evolution of distinguishable blocks. For systems with noise, a robust estimation should be used (for instance, a linear regressor or a Kalman filter) instead of (8), but the same translation scheme could be used. 415

420

The following algorithm is a Petri net observer that, using the augmented discrete output, computes the possible marking sequences that explain the observations, represented as a matrix E x in which each row corresponds to a marking sequence and the entries of such row correspond to the indices of the marked places in the marking sequence (since the Petri net is a state machine, only one place is marked at each moment, then a marking sequence can be characterized by the sequence of marked places). Furthermore, the algorithm provides a vector of estimated markings ˜ and detects the occurrence of a T-semiflow. M Algorithm 4: Petri net observer

425

Initialize the explanations for the marking sequences: 1. Define the matrix of markings sequences that explain the discrete output as an empty matrix: E x = [ ] 2. For each place pi do: if Φ · ei = yd , where ei is the i-th column vector of the unity matrix, then add i as a row to E x , i.e., , E Ex = x i 3. Initialize the vector of detected markings, if E x has only one entry (only one marked place explains the output), then M˜ = E x , otherwise M˜ = [0].

430

On line: Let n s be the number of samplings taken since the occurrence of the last switching. 1. If n s = n + 1 do (a) Initialize the new explanations matrix E xn = [ ]. (b) For each explanation s (row vector) in E x do 13

• Denoting as pi the marked place indicated at the last entry in s, compute the enabled transitions T s from pi as T s = {t j |[PreT ei ] j > 0} 435

• For each transition t j ∈ T s do – Compute the reachable marking M ′ = ei + We j . Let pk be the marked place at M ′ . $ % – If ΦG1 · M ′ = yda then add the sequence s k as a row to E xn , i.e., E xn

, E xn % $ = s k

(c) Update the explanation matrix E x = E xn

440

(d) For each column j of E x do • If all the entries of such column are equal to some value i (i.e., pi is marked at the j − th marking in ˜ j = i, otherwise set M˜ j = 0 (a 0 means that a marking has not been all the explanations), then set M uniquely determined at the j − th marking). ˜ then a T-semiflow is detected. (e) If the last value i ! 0 in M˜ appears more than once (in M), 2. Else ˜ as in the previous sampling. (a) Maintain the values of E x and M

445

450

455

460

The IPN observer follows the same principle as that presented in ([35], Algorithm 4), but considering here that labels are associated to places. Since here the IPN has only one token, the number of possible markings (sequences) is limited by the number of minimal T-semiflows. Once the discrete state and a T-semiflow have been detected, the continuous state can be reconstructed based on the knowledge of the marking sequence (given by the detected T-semiflow), the switching times and the continuous output. The following algorithm estimates the continuous state by using n discrete-time samplings between each pair of consecutive switchings. Algorithm 5: Computation of continuous state

1. Initialize the estimated state x˜ = 0. 2. Let s be the marking sequence that corresponds to the T-semiflow (without the last repeated entry) and let τ be the switching times of the sequence, being Σ si the linear active system during the time interval [τi , τi+1 ). 3. For i = 1 to |s| do (a) Consider a similarity transformation T osi that transforms the system into the Jordan form and splits the estimated state into its observable-nonobservable parts, thus , x˜o −1 = T os x˜ i x˜no −1 where J si = T os A si T osi = diagonal(Josi , Jnosi ) and blocks Josi and Jnosi correspond to the observable and i unobservable parts, respectively. Furthermore, C si T osi = [Cosi 0]. (b) Consider an exact discretization of the observable part (Josi , Cosi ), resulting in the pair (Jdosi , Cosi ). (c) Compute the observability matrix of order n of the discrete-time version of the observable part as ⎡ ⎤ ⎢⎢⎢ Cosi ⎥⎥⎥ ⎢⎢ ⎥⎥⎥⎥ .. Obso = ⎢⎢⎢⎢⎢ ⎥⎥⎥ . ⎢⎣ ⎥ n−1 ⎦ Cosi Jdosi

14

(d) Estimate the observable part of the state at the i − th switching ⎤ ⎡ ⎢⎢⎢ y0 ⎥⎥⎥ ⎢⎢⎢ y ⎥⎥⎥ ⎢ 1 ⎥ x˜o = (ObsTo Obso )−1 ObsTo ⎢⎢⎢⎢⎢ . ⎥⎥⎥⎥⎥ ⎢⎢⎢ .. ⎥⎥⎥ ⎦ ⎣ yn−1

465

(9)

where y0 is the continuous output just after the i−th switching and y1 , .., yn−1 are the outputs after 1, ..., n − 1 samplings, respectively. (e) Estimate the continuous state (in continuous time) at the next switching , , x˜ x˜o = e Jsi (τi+1 −τi ) o x˜no x˜no (f) Transform the state into the original state variables x˜ = T osi

470

,

x˜o x˜no

-

Proposition 1. Consider a LHS fulfilling the conditions of Theorem 1. By applying the stage 1 of the observer scheme, the discrete state is determined and the firing of a sequence describing a minimal T-semiflow is detected after a finite number of switchings lower than |T |. After that, the continuous state is determined. The proof of previous proposition is presented in the Appendix A.

475

480

4.2. Stage 2: Determining the discrete and continuous state after the first estimation. Since switchings are detected by changes at the discrete output, once the marking has been detected in stage 1, it can be lost only at choice places, if the firing of two transitions in conflict produce the same output change. To avoid this confusion, the algorithm “Translation.II” is used for detecting the distinguishable dynamics of the LS ’s, from the continuous output, and translating this information into an augmented output for the IPN, considering that the continuous state is known. The following algorithm runs in discrete-time, considering a small enough sampling ∆τ, so at least n samplings occur between consecutive switchings. The algorithm is applied after the occurrence of a switching from a choice place. Algorithm 6: Translation.II

485

Off-line:

490

1. Let ph be the base choice place. Apply the algorithm Labelling.II for the places p ∈ {p•h }• , defining tuples (l, i) when a label l is added to place pi because Σi is distinguishable with known continuous initial state. Let S h be the set of all tuples generated by the algorithm. 2. For each (l, i) ∈ S h compute the observability matrix of order n: ⎡ ⎤ ⎢⎢⎢ Ci ⎥⎥⎥ ⎢⎢⎢ C · A ⎥⎥⎥ ⎢ i di ⎥⎥⎥ Obsn (l, i) = ⎢⎢⎢⎢⎢ ⎥⎥⎥ .. ⎢⎢⎢ ⎥⎥⎥ . ⎣ n−1 ⎦ Ci · Adi where Adi denotes the exact discretization of Ai . 15

495

On-line: After n samplings taken since the occurrence of a switching from ph (detected by a change in the discrete output) do: 1. For each label l ∈ {l1 , ..., lr } appearing in S h compute its residual $ Res(l) = || y0

y1

...

yn−1

%T

− Obsn (l, i) x˜0 ||2

where x˜0 is the state estimation just after the last switching. 2. Determine the active label la as la = argmin(Res(l1 ), ..., Res(lr ))

(10)

(11)

3. Set the augmented discrete output as v = ea , where ea is the a-th column vector of the unity matrix of dimension equal to Σ ph ∈Pch |S h |, where Pch is the set of choice places. 4. Define the augmented discrete output as , y yda = d v 500

505

510

The Petri net observer of the previous subsection can determine the discrete state after the first estimation by using the augmented output provided by algorithm Translation.II. Finally, a trivial possibility to exactly determine the future continuous state is to simulate the hybrid system from the detection of the T-semiflow, since the continuous state is known at that time instant and the future discrete state can be exactly determined. A robust possibility is to construct partial observers. The following algorithm gives a possibility for this option, running in discrete-time. This is applied after the Petri net observer, i.e., after n + 2 samplings taken since the occurrence of the last switching (remember that after the switching, Algorithm Translation.II is executed requiring the information of n samplings and the Petri net observer is executed in one sampling after Algorithm Translation.II). Algorithm 7: Continuous observer

515

Initialize x˜ at the detection of the T-semiflow being equal to the estimation provided by algorithm “Computation of continuous state”. Let n s be the number of samplings taken since the occurrence of the last switching. Let i be the estimated discrete state provided by the Petri net observer.

520

525

1. If n s < n + 2, maintain the state estimation as in the previous sampling. 2. If n s = n + 2 do: (a) Consider the transformation T oi that splits the system Σi into its observable/unobservable parts and transform it into the Jordan form, thus, Ji = T oi−1 Ai T oi = diagonal(Joi, Jnoi ) and CT oi = [Coi , 0]. (b) Split the state into its observable/unobservable parts and update the state estimation from the last switching to the current sampling time n + 2, i.e., , x˜o n+2 −1 = Jdi T oi x˜ x˜no where the matrix Jdi denotes the exact discretization of Ji . 3. For n s > n + 2 do: (a) Estimate the observable part of the continuous state x˜o , for the current sampling, by using a finite-time observer (for instance, [15, 16]). (b) For the current sampling, update the non-observable part of the continuous state using: x˜no = Jdnoi x˜no where the matrix Jdnoi denotes the exact discretization of Jnoi . 16

4. When a new switching is detected do: (a) Transform the state into the original state variables x˜ = T oi

,

x˜o x˜no

-

530

535

540

Notice that the sampling time can be settled as small as desired. Furthermore, the finite-time observers used in [16] can be adjusted to be as fast as desired. In this way, it is always possible to estimate the observable part before the next switching. Nevertheless, for practical reasons, it is convenient to consider a minimum dwell-time, so there will be enough samplings for the discrete observer to detect the current marking and for the continuous observer to estimate the continuous state before the next switching. Proposition 2. Consider a LHS fulfilling the conditions of Theorem 1. Suppose that the stage 1 of the observer scheme has been applied, so both the discrete and the continuous states have been determined. By applying the stage 2 of the observer scheme, the future discrete locations will be exactly determined. Furthermore, the future continuous state can be exactly determined if the observer algorithm used at the “Continuous observer” converges between switchings. The proof of previous proposition is presented in the Appendix B. 5. Example

t5

t5 t4

p1

p5

p4

a

b

a

t1

t6

a

a

t1

t6

t3

t2

a

b p2

p4

b

a

t3

t2

t4

p1

p5

p3

b p2

(a)

p3 (b)

Figure 2: In the net (a), the firing sequences t5 t6 t5 t6 and t1 t2 t3 t4 produce the same output babab, i.e., the sequences are indistinguishable based on the discrete output even if the initial marking is known. Moreover, the same output is produced by the sequence t3 t4 t1 t2 from the initial marking of the net (b), thus sequences t5 t6 t5 t6 , t1 t2 t3 t4 and t1 t2 t3 t4 are indistinguishable based on the discrete output if the initial marking is unknown.

545

550

Let us illustrate the use of previous results with a simple example. Consider a LHS that consists of the IPN of fig. 2(a) and the collection of the LS ’s described in Subsection 2.4. 5.1. Analyzing observability In this LHS , none of the LS ’s is observable, in fact, the rank of the observability matrices is one for Σ1 and Σ3 , and two for Σ2 , Σ4 and Σ5 . Notice also that Σ2 and Σ4 are identical, thus they are indistinguishable based on the continuous output. Similarly, Σ5 is indistinguishable from both Σ2 and Σ4 based on the continuous output. Therefore, it is not possible to determine the evolving system (location) by observing only the continuous output. Consequently, the results of [7–10] could not be used to determine the location! 17

t5 p5

t4

b

p4

p1

a l2

a t1

t6

t3

t2

a l1

b p2

(a)

p3

(b)

Figure 3: IPN obtained after the application of algorithm Labelling.I (a) and Labelling.II (b).

555

On the other hand, the underlying IPN is not marking-observable. The firing sequences t5 t6 t5 t6 , t1 t2 t3 t4 and t3 t4 t1 t1 could infinitely occur (they are associated to T-semiflows), but they produce the same output sequence babab. Therefore, it is not possible to determine the evolving system (the current marking) by observing only the discrete output (consequently, the results of [29] could not be used to determine the location)! In this case, it is required to combine the information provided by the continuous output and the discrete output in order to determine the evolving system. Let us apply the algorithm Labelling Generic.I. Since all the LS ’s are already in the Jordan form then T 1 = T 2 = T 3 = T 4 = T 5 = I. Thus, the output provided by each LS can be represented as in (4) as: .$ % / y1 (τ) = e−2τ , 0, 0 + [0, 0, 0] + [0, 0, 0] x0 0 1 23 y2 (τ) = .[0, 0, 0] + [0, eτ , 0] +$ 0, 0, e−τ %/ x0 y3 (τ) = [0, 0, 0] + [0, 0, 0] + 0, 0, e−3τ x0 0 1 23 y4 (τ) = [0, 0, 0] + [0, eτ , 0] + 0, 0, e−τ x0 0 1 23 y5 (τ) = [0, 0, 0] + [0, 2eτ, 0] + 0, 0, 2e−τ x0

By the first step of$ algorithm % Labelling.I, a unique label is assigned to p1 because it has the unique block 1 [C1 T 1 ]1 e[J1 ]1 τ [T 1−1 ]1 = e−2τ , 0, 0 , let l1 be such label. Similarly, a unique label is assigned to p3 because it has $ % the unique block 0, 0, e−3τ , let l2 be such label. By the second step of the algorithm, a shared label l3 is added to 1 2 1 2 1 2 places p2 , p4 , p5 because they have the blocks 0, 0, e−τ , 0, 0, e−τ and 0, 0, 2e−τ , respectively. Those blocks are indistinguishable between them, based on the continuous output, if the initial condition is unknown. The labeling that results after the application of algorithm Labelling.I is shown in fig. 3(a). The output mapping is given by:

ΦG1

560

⎡ ⎢⎢⎢ ⎢⎢⎢ ⎢⎢ = ⎢⎢⎢⎢⎢ ⎢⎢⎢ ⎢⎣

0 1 1 0 0

1 0 0 0 1

0 1 0 1 0

1 0 0 0 1

1 0 0 0 1

⎤ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎦

→a →b → l1 → l2 → l3

In the original net (fig. 2) there exist indistinguishable sequences, based on the discrete output, related to the T-semiflows X1 = [0, 0, 0, 0, 2, 2]T and X2 = [1, 1, 1, 1, 0, 0]T . In fact, the sequences σ1 = t5 t6 t5 t6 , σ2 = t1 t2 t3 t4 and σ3 = t3 t4 t1 t2 fulfills σ1 = X1 , σ2 = X2 and σ3 = X2 and produce the same output change. However, in the IPN obtained after algorithm Labelling.I (fig. 3(a)) the firing sequences σ1 , σ2 and σ3 produce different output changes. In fact, the IPN with the labels added with algorithm Labelling.I fulfills the first condition 18

Location 5 4 3 2 1 0

Detection of T−component 0

0.5

1

1.5

time Figure 4: Active LS (continuous line) and its estimation provided by the Petri net observer (dash line).

565

570

575

of Theorem 1 and thus the firing of any T-component would be distinguishable. Nevertheless, observability is still not guaranteed. In particular, if the mark is known to be at p1 , the firing of t5 will produce the same output change than the firing of t1 . Then, the knowledge of the discrete state of the LHS will be lost. This concerns the third condition of Theorem 1. In fact, for the choice place p1 =• t1 =• t5 it holds ΦW(•, t1 ) = ΦW(•, t5 ), moreover, ΦG1 W(•, t1 ) = ΦG1 W(•, t5 ). In order to deal with this problem, the algorithm Labelling.II is used to translate information from the continuous output of the LHS to the IPN, but now assume the continuous state x′ is known at the previous switching. In this case, there are only two transitions in conflict, t1 and t5 , whose output places are p2 and p5 , respectively. The continuous output can be computed in those discrete states as follows. $ % y2 (τ) = C2 eA2 τ x′ = 0 eτ e−τ x′ $ % y5 (τ) = C5 eA5 τ x′ = 0 2eτ 2e−τ x′ Since the blocks are different, by the first step of algorithm Labelling.II a unique label is added, to the original IPN, to place p2 . Let l1 be such label. Similarly, a unique label is added to place p5 , let us denote it as l2. The net resulting after applying algorithm Labelling.II is shown in fig. 3(b). The resulting IPN fulfills the third condition of Theorem 1. The output mapping is given by,

ΦG2

5.2. Building the observer 580

585

590

⎡ ⎢⎢⎢ 0 1 ⎢⎢⎢ 1 0 = ⎢⎢⎢⎢ ⎢⎢⎣ 0 1 0 0

0 1 0 0

1 0 0 0

1 0 0 1

⎤ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎥⎥⎥ ⎦

By applying the observer scheme proposed in the previous section to the LHS , the results shown in figs. 4 and 5 are obtained. At the initial time, the active LS is Σ4 , i.e., p4 is marked. The initial continuous state is x0 = [100, 1, 100]T . The applied firing sequence is t4 t1 t2 t3 t4 t5 t6 t5 t6 t1 t2 t3 t4 , at times (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1, 1.2, 1.3, 1.4, 1.5, 1.6), leading to the LS sequence shown in fig. 4. At the first stage of the observer scheme, the algorithms “Translation.I” and “Petri net observer” are applied, after n and n + 1 samplings from each switching, respectively. The sampling used was ∆τ = 0.0001. As it can be observed from fig. 4, the Petri net observer cannot determine the initial marking. Then, a switching occurs at time 0.1. After applying both algorithms, the marking is determined, the active LS is Σ1 (p1 is marked). However, after the second switching at time 0.2, the marking is lost. This occurs because, given the discrete outputs together with the info. provided by algorithm “Translation.I” is not sufficient to distinguish between the modes Σ2 and Σ5 , reachable from the previous “choice” LS Σ1 (as pointed out in Subsection 5, Σ2 and Σ5 are not distinguishable even with the augmented output mapping ΦG1 ). The marking is recovered at the next switching and maintained during the following switchings. 19

595

600

605

At time 0.5, the system visits Σ1 for the second time. After applying the algorithm “Translation.I”, the Petri net observer detects the active LS Σ1 , thus the observer detects the occurrence of a T-component, since Σ1 was already detected in the past. Then, the algorithm “Computation of continuous state” is called, with the information of the sequence s = [1, 2, 3, 4] (because of the marking sequence p1 p2 p3 p4 of the detected T-component, this information is ˜ the switching times τ = [0.1, 0.2, 0.3, 0.4, 0.5] and n samples of the continuous output after provided by the vector M), each switching in the T-component. After the application of the algorithm, achieved in one sampling, the continuous state is computed. This is illustrated in fig. 5. At this moment, the observer scheme switches to stage 2. At stage 2, the algorithm “Translation.II” is applied after n samplings from the switching from p1 , the only choice place in the net, in order to be able to distinguish between p2 and p5 . In any case, after n + 1 samplings from the last switching, the “Petri net observer” is applied to exactly determine the marking after the first estimation, thus the active LS . At this stage, if the last switching was not occurred from p1 , none of the Translation algorithms are applied, thus the discrete output yd is used by the Petri net observer instead of the augmented discrete output yda . Notice at fig. 4 that the marking is maintained after any transition firing. After the active LS is detected, the continuous state is updated just by simulating, in discrete time, the state system (1) from the switching time until the next switching detection. Thus, in this example, since no disturbances are considered, the algorithm “Continuous observer” was not used (no continuous observers are used). Notice at fig. 5 that such continuous state updating is enough to successfully determines the continuous state. 6. Conclusions and Future Work

610

615

In this work, an observer scheme has been introduced for eventually observable LHS ’s, based on the observability analysis advanced in [1], which determines both the discrete state and the continuous state after the occurrence of a T-component (circuit of the discrete event system). The application of the observer has been illustrated through an example in which all the LS ’s are unobservable and the discrete IPN is unobservable as well, but the blend of information provided by the discrete and continuous outputs allows to successfully recover the state of the LHS . It is left for future work the analysis of non-autonomous systems and systems with unknown perturbations. Acknowledgements This work was supported by program Conacyt SNI. References

620

625

630

635

640

[1] C. R. V´azquez, D. G´omez-Guti´errez, A. Ram´ırez-Trevi˜no, M. Navarro, Eventual generic observability in linear hybrid systems with discrete dynamic modeled by Petri nets, in: IFAC Conference on Analysis and Design of Hybrid Systems, 2015, pp. 47–53. [2] Z. Sun, S. S. Ge, T. H. Lee, Controllability and reachability criteria for switched linear systems, Automatica 38 (2002) 775–786. [3] S. Mart´ınez-Mart´ınez, N. Messai, F. Hamelin, N. Manamanni, T. Boukhobza, Graphic approach for the determination of the existence of sequences guaranteeing observability of switched linear systems, Automatica 50 (2014) 584–590. [4] E. D. Santis, M. D. D. Benedetto, Design of luenberger-like observers for detectable switching systems, in: 2005 IEEE International Symposium on Intelligent Control, 2005, pp. 30––35. [5] A. Tanwani, H. Shim, D. Liberzon, Observability implies observer design for switched linear systems, in: Hybrid systems: Computation and Control, 2011, pp. 3––12. [6] A. Tanwani, H. Shim, D. Liberzon, Observability for switched linear systems: Characterization and observer design, IEEE Transactions on Automatic Control 58 (2013) 891––904. [7] R. Vidal, A. Chiuso, S. Soatto, S. Sastry, Observability of linear hybrid systems, in: Hybrid systems: Computation and Control, 2003, pp. 526––539. [8] E. D. Santis, M. D. D. Benedetto, G. Pola, On observability and detectability of continuous-time linear switching systems, in: 42nd IEEE Conference on Decisions and Control, 2003, pp. 5777—-5782. [9] M. Babaali, G. J. Pappas, Observability of switched linear systems in continuous time, in: Hybrid systems: Computation and Control, 2005, pp. 103––117. [10] D. G´omez-Guti´errez, G. Ram´ırez-Prado, A. Ram´ırez, J. Ruiz-Le´on, Observability of switched linear systems, IEEE Transactions on Industrial Informatics 6 (2010) 127–135. [11] M. Petreczky, J. H. van Schuppen, Observability reduction of piecewise-affine hybrid systems, in: Proceedings of the 19th International Symposium on Mathematical Theory of Networks and Systems, 2010, pp. 203–210. [12] D. G´omez-Guti´errez, A. Ram´ırez, J. Ruiz-Le´on, S. D. Gennaro, On the observability of continuous-time switched linear systems under partially unknown inputs, IEEE Transactions on Automatic Control 57 (2012) 732—-738.

20

State variable x1 100 Continuous state computation 75 50 25 0

0

0.5

1

1.5

time

(a) State variable x2 4 3 2 1 0

Continuous state computation 0

0.5

1

1.5

time

(b) State variable x3 100 75 Continuous state computation 50 25 0

0

0.5

1

1.5

time

(c) Figure 5: Continuous state (continuous lines) and its estimation (dash lines).

645

650

655

660

[13] E. De Santis, On location observability notions for switching systems, Systems & Control Letters 60 (10) (2011) 807–814. [14] J. Barbot, H. Saadaoui, M. Djema¨ı, N. Manamanni, Nonlinear observer for autonomous switching systems with jumps, Nonlinear Analysis: Hybrid Systems 1 (2007) 537–547. [15] F. J. Bejarano, L. Fridman, State exact reconstruction for switched linear systems via a super-twisting algorithm, International Journal Systems Sciense 42 (2011) 717—-724. ˇ [16] D. G´omez-Guti´errez, S. Celikovsk´ y, A. Ram´ırez, B. Castillo-Toledo, On the observer design problem for continuous-time switched linear systems with unknown switchings, Journal of the Franklin Institute 352 (2015) 1595–1612. [17] R. Alur, C. Courcoubetis, N. Halbwachs, T. A. Henzinger, P. H. Ho, X. Nicollin, A. Olivero, J. Sifakis, S. Yovine, The algorithmic analysis of hybrid systems, Theoretical Computer Science 138 (1995) 3–34. [18] S. Kowalewski, O. Stursberg, N. Bauer, An experimental batch plant as a test case for the verification of hybrid systems, European Journal of Control 7 (2001) 366–381. [19] A. Balluchi, L. Benvenutti, S. Engell, T. Geyer, K. H. Johansson, F. Lamnabhi-Lagarrigue, J. Lygeros, M. Morari, G. Papafotiou, A. L. Sangiovanni-Vicentelli, F. Santucci, O. Stursberg, Hybrid control of networked embedded systems, European Journal of Control 11 (2005) 478–508. [20] N. N. Nandola, S. Bhartiya, A multiple model approach for predictive control of nonlinear hybrid systems, Journal of Process Control 18 (2008) 131–148. [21] C. Song, B. Wu, J. Zhao, P. Li, An integrated state space partition and optimal control method of multi-model for nonlinear systems based on hybrid systems, Journal of Process Control 25 (2015) 59–69. [22] G. Escobar, A. J. van der Schaft, R. Ortega, A hamiltonia viewpoint in the modelling of switching power converters, Automatica 35 (1999)

21

665

670

675

680

685

445–452. [23] T. A. F. Theunisse, J. Chai, R. G. Sanfelice, W. P. M. H. Heemels, Robust global stabilization of the DC-DC boost converter via hybrid control, IEEE Transactions on Circuits and Systems - I 62 (2015) 1052–1061. [24] F. Basile, C. Carbone, P. Chiacchio, R. K. Boel, C. C. Avram, A hybrid model for urban traffic control, in: IEEE International Conference on Systems, Man and Cybernetics, 2004, pp. 1795–1800. [25] A. D. Febbraro, D. Giglio, N. Sacco, Urban traffic control structure based on hybrid Petri nets, IEEE Transactions on Intelligent Transportation Systems 5 (2004) 224–237. [26] C. R. V´azquez, H. Y. Sutarto, R. Boel, M. Silva, Hybrid Petri net model of a traffic intersection in an urban network, in: IEEE International Conference on Control Applications, 2010, pp. 658–664. [27] J. J´ulvez, R. K. Boel, A continuous Petri net approach for model predictive control of traffic systems, IEEE Transactions on Systems, Man and Cybernetics - Part A 40 (2010) 686–697. ˇ [28] D. G´omez-Guti´errez, C. R. V´azquez, S. Celikovsk´ y, A. Ram´ırez-Trevi˜no, B. Castillo-Toledo, On the distinguishability and observer design for single-input single-output continuous-time switched affine systems under bounded disturbances with application to chaos-based modulation, European Journal of Control (2016) –doi:http://dx.doi.org/10.1016/j.ejcon.2016.12.005. [29] F. Arichi, J. van Gorp, M. Djemai, M. Defoort, B. Cherki, Hybrid state estimation for a class of switched system using Petri nets, in: European Control Conference, 2014, pp. 2534—–2539. [30] A. Balluchi, L. Benvenuti, M. D. D. Benedetto, A. L. Sangiovannivincentelli, Design of observers for hybrid systems, in: Hybrid systems: Computation and Control, 2002, pp. 76—-89. [31] M. Petreczky, J. H. van Schuppen, Realization theory for linear hybrid systems, IEEE Transactions on Automatic Control 55 (10) (2010) 2282–2297. [32] J. M. Colom, M. Silva, Convex geometry and semiflows in p/t nets, in: K. Voss, H. Genrich, G. Rozenberg (Eds.), Concurrency and Nets, Advances in Petri Nets, Springer-Verlag, Berlin, 1987, pp. 435–460. [33] D. A. Cox, J. B. Little, D. O’Shea, Ideals, varieties, algorithms: An introduction to computational algebraic geometry and commutative algebra, Undergraduate Texts in Mathematics, Springer, Berlin, 1992. [34] S. A. Nu˜no-S´anchez, A. Ram´ırez-Trevi˜no, J. Ruiz-Le´on, Structural sequence detectability in free choice interpreted Petri nets, IEEE Transactions on Automatic Control 16 (2015) 198–203. [35] A. Giua, D. Corona, C. Seatzu, State estimation of λ-free labeled Petri nets with contact free nondeterministic transitions, Discrete Event Dynamic Systems 15 (2005) 85–108.

Appendix A. Proof of Proposition 1 Proof. Part I. First, let us demonstrate that Algorithm “Translation.I” detects the evolution of all distinguishable systems labelled with Algorithm “Labelling.I”. Given the i-th LS in the Jordan form (Jdi ,Ci T i ), in discrete time, it follows that $ y1

y2

...

yn

%T

= Obsn (Jdi , Ci T i ) · x1

where x1 is the state at the first sampling since the last switching. By blocks, the construction is equivalent to ⎡ ⎤ ⎡ ⎤ [Ci T i ]1 ... [Ci T i ]ri ⎢⎢⎢y1 ⎥⎥⎥ ⎢⎢⎢ ⎥⎥⎥ ⎢⎢⎢⎢y2 ⎥⎥⎥⎥ ⎢⎢⎢⎢ [Ci T i ]1 [Jdi ]11 ... [Ci T i ]ri [Jdi ]rrii ⎥⎥⎥⎥ ⎢⎢⎢ ⎥⎥⎥ = ⎢⎢⎢ ⎥⎥⎥ x .. .. ⎢⎢⎢ .. ⎥⎥⎥ ⎢⎢⎢ ⎥⎥⎥ 1 . . . ⎢⎢⎣ ⎥⎥⎦ ⎢⎢⎣ ⎥⎥⎦ r yn [Ci T i ]1 ([Jdi ]11 )n−1 ... [Ci T i ]ri ([Jdi ]rii )n−1 $ % = Obsn ([Jdi ]11 , [Ci T i ]1 ) ... Obsn ([Jdi ]rrii , [Ci T i ]ri ) x1 Considering all the blocks of all the LS ’s in the collection which are classified in those associated to labels (in set S ) and those non-associated to labels, from previous equation it follows that the output can be written as % , xI %T $ $ y1 y2 ... yn = MD MD xI 690

695

for some vectors xI and xI , whose entries are those of x1 . By construction, the combined matrix [MD , MD ] is nonsingular, thus the pseudo-inverse M −1 exists. Notice that the repeated columns (that were eliminated) during the construction of MD must correspond to shared labels. Therefore, in order to detect the evolution of labelled blocks associated to columns of MD , it is enough to estimate the state xI from the output information, what is done in (8). If an entry of xI is not null, then it means that the corresponding block is affecting the output and thus the associated label must be captured in yda . 22

700

705

Part II. Next, since “Algorithm Translation.I” detects the evolution of distinguishable blocks based on the continuous output labelled with Algorithm “Labelling.I” and the IPN with the additional labels has not indistinguishable sequences (first condition of Theorem 1), the execution of any minimal T-component will be detected (remember that any infinite sequence in an IPN must contain minimal T-components), consequently, the marking will be detected after the firing of a sequence describing a minimal T-component, which are known to have a length lower than |T |. This can be achieved by using different kinds of IPN observers, considering the additional labels. Here, for simplicity, we consider a scheme similar to that of [35] (Algorithm 4). Part III. Finally, let us demonstrate that, after a T-component is detected, the Algorithm “Computation of continuous state” estimates the state. First, notice that during the evolution in a LS (9) gives an exact estimate of the observable part since the system is undisturbed. Thus, if the true initial state x0 (initial at the start of the sequence) is used as an initial estimate for the Algorithm “Computation of continuous state”, the state will be exactly estimated at the switching times during the rest of the iterations. Now, let us show that if Algorithm “Computation of continuous state” is initialized with two different estimates x11 ! x12 , the same final estimate will be computed. Consequently, such estimate must be equal to the true value. 1 During the first iteration, consider the transformation T os1 = [T o1 , T no ] that leads the system into the Jordan form J s1 and the observable-unobservable decomposition (the superindices denote the number of the iteration), thus , 1 T o,inv 1 −1 1 T os x = x1 1 1 1 T no,inv 1 1 for some matrices T o,inv and T no,inv . Next, the observable part x˜o 1 is exactly estimated by (9). Then, considering the blocks Jos1 and Jnos1 of the Jordan form, the estimate of the state after the first iteration (i.e., at the first switching), is given by 1 Jnos1 (τ2 −τ1 ) 1 e T no,inv x11 x21 = T o1 e Jos1 (τ2 −τ1 ) x˜o 1 + T no

Since the estimate of the observable part is the same for both initializations, i.e., x˜o 1 = x˜o 2 , then after at first switching (at the end of the first iteration) the differences between the estimates initialized at x11 and x12 is given by 1 Jnos1 (τ2 −τ1 ) 1 (x21 − x22 ) = T no e T no,inv (x11 − x12 )

This equation implies that (x21 − x22 ) is in the unobservable invariants of A s1 , thus it belongs to the unobservable subspace of Σ s1 . Furthermore, the following iteration gives 2 Jnos2 (τ3 −τ3 ) 2 (x31 − x32 ) = T no e T no,inv (x21 − x22 )

710

715

Thus, (x31 − x32 ) belongs to the unobservable subspace of the second LS in the sequence Σ s2 . Furthermore, since (x21 − x22 ) is in the unobservable subspace of Σ s1 , the previous expression also implies that (x31 − x32 ) is in the (minimal) A s2 -invariant that includes the unobservable subspace of Σ s1 . In other words, (x31 − x32 ) belongs to the intersection of the kernel of Obs2 and the minimal A s2 -invariant containing the kernel of Obs1 . Following this reasoning for all the iterations until completing the T-component and considering the observability |s| conditions of Corollary 1, it follows that (x|s| 1 − x2 ) = 0, i.e., the Algorithm with both initial estimates lead to the same final estimate, which must be equal to the state value at the last switching of the sequence. ! Appendix B. Proof of Proposition 2 Proof. Part I. First, let us demonstrate that Algorithm “Translation.II” detects the evolution of all distinguishable blocks labelled with Algorithm “Labelling.II”. Suppose that the last switching has occurred from a choice place to place pi . Let li be the label added to pi . Considering the continuous state at the last switching x˜0 , then it must hold $

y0

y1

... yn−1

%T

23

= Obsn (li , i) x˜0

720

725

Thus, the computation of la in (11) will lead to la = li . This label is added to the augmented output. Part II. Next, since Algorithm “Translation.II” detects the evolution of distinguishable LS systems, based on the continuous output, labelled with Algorithm “Labelling.II”, the marking is initially (at this stage) known and the IPN with the additional labels has not choice places leading to places producing the same discrete output (third condition of Theorem 1), thus, the future marking will be exactly determined. Part III. Finally, since the current discrete location is known and the continuous state is known at the previous switching, from the discussion of the Part III of the proof of Proposition 1 it follows that Algorithm “Continuous observer” will determine the future continuous state if the observer used for the observable part converges before the next switching. !

24