• Tidak ada hasil yang ditemukan

State Estimation in Discrete Event Systems Modeled as Petri NetsNets

Conclusions, Future Directions, and Possible Extensions

7.2 Future Directions and Possible Extensions

7.2.1 State Estimation in Discrete Event Systems Modeled as Petri NetsNets

A discrete event system is a transition system whose state changes are driven by events.

We do not give the details on discrete event system models in this chapter, and the interested reader is referred to [16]. Petri net models are an alternative to automata for representing the dynamics of a discrete event system. They are often used to model manufacturing environments, and they are well suited for representing causal relationships, process syn- chronization, resource allocation, and concurrency. We define the Petri net model in the following section.

7.2.1.1 Petri Net Model

Like an automaton, a Petri net is a device that manipulates events according to certain rules. One of its features is that it includes explicit conditions under which an event can be enabled; this allows the representation of very general discrete even systems whose evolution depends on potentially complex control schemes. This representation is described graphically, resulting in Petri net graphs. Any automaton can always be represented as a Petri net, but not all Petri nets can be represented as automatons. Consequently, Petri nets represent a larger class of languages than regular languages.

In Petri nets, events are associated with transitions. In order for a transition to occur, several conditions may have to be satisfied. The information about these conditions is contained in places. Some such places are viewed as an “input” to a transition, and they contain the information related to the condition for the transition to occur. Other places are viewed as “output” to a transition as they are affected by the transition occurrence. The transitions and places are the basic components of a Petri net graph. In particular, a Petri net graph has two kinds of nodes, places and transitions, and arcs connecting these. It is a

bipartite graph as no two nodes of the same kind can be connected by arcs.

Formally, a Petri net is a weighted bipartite graph (P,T,A, ω,s) (see [9] for details on graph theory), in which P = {p1, ...,pn} is a set of places, T = {t1, ...,tm} is a set of transitions, and AP ×TT × P is a set of arcs from places to transitions and from transitions to places. ω: A → {1,2,3...}is a weight function on the arcs, s: P→ Nis the function that assigns to the set of places a states= (s(p1), ...,s(pn))∈Nn.

Definition 7.2.1. The input and output places of a transition tj are denoted In(tj) and Out(tj), respectively, and are defined as

In(tj) := {piP|(pi,tj)∈A}

Out(tj) := {piP|(tj,pi)∈A}.

In a similar way, the input and output transitions of a placepiare denoted In(pi) and Out(pi), respectively, and are defined as

In(pi) := {tjT |(tj,pi)∈A}

Out(pi) := {tjT |(pi,tj)∈A}.

The weight functionω : A → {1,2,3...}is such that if pi < In(tj) or tj < Out(pi) then ω(pi,tj)=0. If pi <Out(tj) ortj <In(pi) thenω(tj,pi)=0.

The state transition function f :Nn× P(T)→Nn that updates the statesis defined for transitiontjif and only iftj is enabled ats. The set of enabled transitions atsis given by

E(s)={tj |s(pi)≥ ω(pi,tj)∀ pi ∈In(tj)}. (7.1) Not all enabled transitions necessarily fire. Then, we denoteF(s) ⊆ E(s) to be the set of firing transitions that in fact fire at s. We assume that the set of firing transitions is such that |F(s)∩ Out(pi)| ≤ 1. This means that if two transitions are enabled and share the same input place, they cannot fire at the same time. Then, the state transition function f is

Figure 7.1: In the picture, we haveP= {p1,p2},T ={t1},A={(p1,t1),(t1,p2)},ω(p1,t1) = 2, andω(t1,p2) = 1. Moreover, In(t1)= {p1}, Out(t1) = {p2}. The state of the net is given bys= (2,0), and in this state, transitiont1 is enabled.

defined according to

s0(pi)= s(pi)− X

j|tj∈F(s)

ω(pi,tj)+ X

j|tj∈F(s)

ω(tj,pi). (7.2)

An example of a Petri net with two places is represented in Figure 7.1.

Let sk denote the state of the net at step k and F(sk) the set of transitions fired at sk. An execution of the system (P,T,A, ω,s) is the sequence of statesσ = {sk}kNwithsk+1 = f(sk,F(sk)). The state lives inU = Nn. Since we assume to measure the transitions that fire, F(sk), the output sequence is the sequence y = {F(sk)}kN where yk = F(sk). The set in which the output lives is then Y ⊆ P(T). The output function gis then defined as g(sk)= F(sk). Given a firing sequence enabled atsk,F(sk)F(sk+1)...F(sk+p), we define the notation

f(sk,F(sk)F(sk+1)...F(sk+p)) := f(...f(f(sk,F(sk)),F(sk+1))...,F(sk+p)).

The set of all possible states compatible with an observed firing is said to be the output set and it is defined in the following definition.

Definition 7.2.2. (Output set) Given the setykT of fired transitions at stepk, theoutput setat stepkis the set of all statessthat enable all of the transitions inyk, i.e.,

Oy(k) :={s∈Nn | E(s)⊇yk}.

The system isobservableif whenever two state sequences are different, the correspond-

ing firing sequences are also different. In the following section, we show that the state of a Petri net naturally evolves on a partial order and that the system and such a partial order are interval compatible.

7.2.1.2 State Estimation on a Partial Order

In this section, we introduce the partial order (χ,≤) to use for the estimator. The system specified by (7.1) and (7.2) naturally evolves on a partial order, the output set is an interval sublattice on such a partial order, and the dynamics is order isomorphic on the output set.

In particular, we establishU =χ= Nnwith component-wise order. As a consequence, we have a particular case of the general theory developed in Chapters 3-4, in whichΣ = Σ˜.

The following propositions show that the systemΣ = (U,Y, f,g) specified in the pre- vious section and the partial order (χ,≤) are interval compatible. First, we assume that the state of each place is bounded, that is,s(pi)≤ uiandsuforu= (u1, ...,un).

Proposition 7.2.1. The output set corresponding to the set of firing transitions yk is an interval sublattice, that is

Oy(k)=[^Oy(k),_Oy(k)]

for all k, in whichVOy(k)=ly(k)= (ly,1(k), ...,ly,n(k))and ly,i(k)= ω(pi,tj)for the transition tjsuch that tjykOut(pi)and ly,i =0if ykOut(pi)=∅. Also,WOy(k)=u.

Proof. We show that each element of the first set belongs to the second one andvice versa.

Let us show first that if sOy(k) thens ∈ [ly(k),u]. If sOy(k), then yk ⊆ E(s) by the definition of output set. This, along with the definition of enabled transitions (7.1), implies that for any pi s(pi) ∈ [ω(pi,tj),ui] fortjyk ∩Out(pi). Also, note that ifyk ∩Out(pi) is not empty, there is by assumption only onetjyk∩Out(pi). Ifyk∩Out(pi) =∅, it means either that pi does not enable any transition in Out(pi) or that it does but such transition does not fire. As a consequence, ifyk∩Out(pi)=∅it follows thats(pi)∈[0,ui]. Then, we have showed that ifsOy(k), thens∈[ly(k),u].

Assume now that s ∈ [ly(k),u]; we want to show that sOy(k). To show this, it is enough to show that the set of enabled transitions atsincludes all of the transitionsyk, that

is,E(s) ⊇ yk. Sinces ∈ [ly(k),u], we have that s(pi) ≥ ω(pi,tj) if tjyk ∩Out(pi). As a consequencetj ∈ E(s). This holds for anytjyk and thusE(s)⊇yk. Proposition 7.2.2. The state transition function f : ([VOy(k),WOy(k)],yk)→[f(VOy(k),yk),

f(WOy(k),yk)]is order isomorphic.

Proof. By definition of order isomorphic function, and by the wayVOy(k) andWOy(k) have been defined, we have to show that f : ([ly(k),u],yk) → [f(ly(k),yk), f(u,yk)] is order embedding and onto.

Let us show first that it is order embedding, that is, for any a,b ∈ [ly(k),u] we have ab, if and only if f(a,yk) ≤ f(b,yk). Leta = (a1, ...,an) andb = (b1, ...,bn). It follows from equations (7.2) that ifaibithena0ib0i since the same quantity is added to bothai andbi as the set of firing transitionsyk is the same for both of them. Similarly, ifa0ib0i thenaibifor the same reasoning.

Let us show that it is onto. We show that if a0 ∈ [f(ly(k),yk), f(u,yk)] then there is a∈[ly(k),u] such thata0 = f(a,yk). Ifa0 ∈[f(ly(k),yk), f(u,yk)] then

ly,i(k)− X

j:tjyk

ω(pi,tj)+ X

j:tjyk

ω(tj,pi)≤a0i

and

a0iui− X

j:tjyk

ω(pi,tj)+ X

j:tjyk

ω(tj,pi).

Defineai such thata0i = ai−P

j:tjykω(pi,tj)+P

j:tjykω(tj,pi), thenly,i(k)≤ aiui. As a consequence of Propositions 7.2.1 and 7.2.2, the systemΣ modeled as a Petri net and the partial order (χ,≤) are interval compatible. Note that since U = χ, we have that L(k) = sk andU(k) = sk for kk0 for somek0 > 0. This way, the computable quantity

|[U(k)− L(k)]| gives a measure of the estimation error, which goes to zero if the system is observable. The opposite statement is also true, that is, if |[U(k) − L(k)]| does not go to zero then the system with initial conditions in [0,u] is not observable. In fact, the set [L(k),U(k)] is by construction the set of all possible states that are consistent with the out- put observation and with the system dynamics.

If the state of each place is not upper bounded, or such a bound is not known, the previous two propositions transform to the following.

Proposition 7.2.3. The output set is af-semilattice, that is Oy(k)=[^Oy(k),∞)

where VOy(k) = ly(k) = (ly,1(k), ...,ly,n(k)), and ly,i(k) = ω(pi,tj) for the transition tj such that tjykOut(pi)and ly,i =0if ykOut(pi)=∅.

Proposition 7.2.4. The state transition function f : ([VOy(k),∞),yk)→[f(VOy(k),yk),∞) is order isomorphic.

In the case in which the places are not upper bounded, we haveU(k) = ∞in Theorem 3.3.1, and the estimator therein can be constructed with the properties

(i) skL(k) for allk;

(ii) |[L(k+1),sk+1]| ≤ |[L(k),sk]|for allk;

(iii’) there isk0> 0 such that for anykk0we have thatL(k)= sk.

Note that the resulting estimator for this case is the same as the one derived by other means in [30]. This shows that the kinds of estimators for Petri nets as developed in [30] can be naturally re-derived as a particular instance of the partial order based state estimation approach developed in this thesis. The computational complexity of the proposed estimator is proportional to the number of plates as opposed to the dimension of the state space (that is combinatorial in the number of plates). Note that if an upper bound on the state of a place is not known, we do not have a way of computing the estimation error that scales with the number of places as in the case in which such a bound is known.