<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Fault diagnosis of discrete event systems using Petri nets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Carla Seatzu</string-name>
          <email>seatzu@diee.unica.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>C. Seatzu is with the Department of Electrical and Electronic Engineering, University of Cagliari</institution>
          ,
          <addr-line>Piazza D'Armi, 09123 Cagliari</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <fpage>12</fpage>
      <lpage>15</lpage>
      <abstract>
        <p>- This talk focuses on on-line fault diagnosis of discrete event systems based on Petri nets. In particular a diagnosis approach based on the notion of basis markings and justifications is discussed. This concept allows us to represent the reachability space in a compact manner, i.e., it requires to enumerate only a subset of the reachability space. Arbitrary labeled Petri nets are considered as the reference model. Some results on diagnosability analysis are finally recalled.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Failure detection and isolation in industrial systems is
a subject that has received a lot of attention in the past
few decades. A failure is defined to be any deviation of a
system from its normal or intended behavior. Diagnosis is the
process of detecting an abnormality in the system behavior
and isolating the cause or the source of this abnormality.</p>
      <p>
        The first contributions in the discrete event systems
framework have been proposed in the context of automata by
Sampath et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] who proposed an approach to failure
diagnosis where the system is modeled as a nondeterministic
automaton in which failures are treated as unobservable
events.
      </p>
      <p>
        More recently, Petri net (PN) models have been used in
the context of diagnosis [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Indeed, the use of
PNs offers significant advantages because of their twofold
representation: graphical and mathematical. Moreover, the
intrinsically distributed nature of PNs where the notion of
state (i.e., marking) and action (i.e., transition) is local
reduces the computational complexity involved in solving
a diagnosis problem.
      </p>
      <p>
        In this talk we recall an approach we proposed in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], that
is a generalization of [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The main difference between the
diagnosis approach presented here and the approaches cited
above is the concept of basis marking. This concept allows
us to represent the reachability space in a compact manner,
i.e., it requires to enumerate only a subset of the reachability
space. In particular, we deal with arbitrary labeled PNs
where there is an association between sensors and observable
events, while no sensor is available for certain activities —
such as faults or other unobservable but regular transitions
— due to budget constraints or technology limitations. It
is assumed that several different transitions might share the
same sensor in order to reduce cost or power consumption. If
two transitions are simultaneously enabled and one of them
fires, it is impossible to distinguish which one has fired, thus
they are called undistinguishable. The diagnosis approach
here presented is based on the definition of four diagnosis
states modeling different degrees of alarm and it applies to
all systems whose unobservable subnet is acyclic.
      </p>
      <p>Note that the approach here presented, as most of the
approaches dealing with diagnosis of discrete event systems,
assumes that the faulty behavior is completely known, thus
a fault model is available.</p>
      <p>The last part of the talk is devoted to briefly recall some
results on diagnosability analysis that may also be applied
to unbounded nets.</p>
    </sec>
    <sec id="sec-2">
      <title>II. BACKGROUND ON LABELED PETRI NETS</title>
      <p>A Place/Transition net (P/T net) is a structure N =
(P, T, P re, P ost), where P is a set of m places; T is a set
of n transitions; P re : P × T → N and P ost : P × T → N
are the pre– and post– incidence functions that specify the
arcs; C = P ost − P re is the incidence matrix.</p>
      <p>A marking is a vector M : P → N that assigns to each
place of a P/T net a nonnegative integer number of tokens,
represented by black dots. The marking of place p is denoted
as M (p). A P/T system or net system ⟨N, M0⟩ is a net
N with an initial marking M0. A transition t is enabled at
M iff M ≥ P re(· , t) and may fire yielding the marking
M ′ = M + C(· , t). One writes M [σ⟩ to denote that the
sequence of transitions σ = tj1 · · · tjk is enabled at M , and
M [σ⟩ M ′ to denote that the firing of σ yields M ′. One
writes t ∈ σ to denote that a transition t is contained in σ.</p>
      <p>The set of all sequences that are enabled at the initial
marking M0 is denoted L(N, M0), i.e., L(N, M0) = {σ ∈
T ∗ | M0[σ⟩}.</p>
      <p>Given a sequence σ ∈ T ∗, let π : T ∗ → Nn be the function
that associates to σ a vector y ∈ Nn, called the firing vector
of σ. In particular, y = π(σ) is such that y(t) = k if the
transition t is contained k times in σ.</p>
      <p>A marking M is reachable in ⟨N, M0⟩ iff there exists
a firing sequence σ such that M0 [σ⟩ M . The set of all
markings reachable from M0 defines the reachability set of
⟨N, M0⟩ and is denoted R(N, M0).</p>
      <p>A PN having no directed circuits is called acyclic. A net
system ⟨N, M0⟩ is bounded if there exists a positive constant
k such that, for M ∈ R(N, M0), M (p) ≤ k.</p>
      <p>The association between sensors and transitions can be
captured by a labeling function L : T → L ∪ {ε} assigns to
each transition t ∈ T either a symbol from a given alphabet
L or the empty string ε.</p>
      <p>The set of transitions whose label is ε is denoted as
Tu, i.e., Tu = {t ∈ T | L(t) = ε}. Transitions in
Tu are called unobservable or silent. To denotes the set of
transitions labeled with a symbol in L. Transitions in To are
called observable because when they fire their label can be
observed. Note that we assume that the same label l ∈ L
can be associated to more than one transition. In particular,
two transitions t1, t2 ∈ To are called undistinguishable if
they share the same label, i.e., L(t1) = L(t2). The set of
transitions sharing the same label l are denoted as Tl.</p>
      <p>In the following let Cu (Co) be the restriction of the
incidence matrix to Tu (To) and nu and no, respectively, be
the cardinality of the above sets. Moreover, given a sequence
σ ∈ T ∗, Pu(σ), resp., Po(σ), denotes the projection of σ over
Tu, resp., To.</p>
      <p>The word w of events associated to sequence σ is w =
Po(σ).</p>
      <p>
        Definition 2.1: [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] Let ⟨N, M0⟩ be a labeled net system
with labeling function L : T → L ∪ {ε}, where N =
(P, T, P re, P ost) and T = To ∪ Tu. Let w ∈ L∗ be an
observed word. Let S(w) = {σ ∈ L(N, M0) | Po(σ) = w}
be the set of firing sequences consistent with w ∈ L∗, and
C(w) = {M ∈ Nm | ∃σ ∈ T ∗ : Po(σ) = w ∧ M0[σ⟩M }
be the set of reachable markings consistent with w ∈ L∗.
      </p>
      <p>In plain words, given an observation w, S(w) is the set
of sequences that may have fired, while C(w) is the set of
markings in which the system may actually be.</p>
      <p>Example 2.2: Consider the PN in Fig. 1. Assume To =
{t1, t2, t3, t4, t5, t6, t7} and Tu = {ε8, ε9, ε10, ε11, ε12, ε13},
where for a better understanding unobservable transitions
have been denoted εi rather than ti. The labeling function
is defined as follows: L(t1) = a, L(t2) = L(t3) = b,
L(t4) = L(t5) = c, L(t6) = L(t7) = d.</p>
      <p>First consider w = ab. The set of firing sequences
that is consistent with w is S(w) = {t1t2,
t1t2ε8, t1t2ε8ε9, t1t2ε8ε9ε10, t1t2ε8ε11}, and the
set of markings consistent with w is C(w) =
{[0 0 1 0 0 0 0 1 0 0 0]T , [0 0 0 1 0 0 0 1 0 0 0]T ,
[0 0 0 0 1 0 0 1 0 0 0]T , [0 1 0 0 0 0 0 1 0 0 0]T ,
[0 0 0 0 0 1 0 1 0 0 0]T }.</p>
      <p>If w = acd is considered the set of firing sequences that
are consistent with w is S(w) = {t1t5t6, t1t5ε12ε13t7},
and the set of markings consistent with w is C(w) =
{[0 1 0 0 0 0 0 1 0 0 0]T }. Thus two different firing
sequences may have fired (the second one also involving
silent transitions), but they both lead to the same marking.</p>
      <p>Definition 2.3: Given a net N = (P, T, P re, P ost), and a
subset T ′ ⊆ T of its transitions, let us define the T ′−induced
subnet of N as the new net N ′ = (P, T ′, P re′, P ost′) where
P re′, P ost′ are the restrictions of P re, P ost to T ′. The
net N ′ can be thought as obtained from N removing all
transitions in T \ T ′. Let us also write N ′ ≺T ′ N .</p>
      <p>III. CHARACTERIZATION OF THE SET OF CONSISTENT</p>
      <p>MARKINGS</p>
      <sec id="sec-2-1">
        <title>A. Minimal explanations and minimal e-vectors</title>
        <p>
          Definition 3.1: [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] Given a marking M and an observable
transition t ∈ To, let Σ(M, t) = {σ ∈ Tu∗ | M [σ⟩M ′, M ′ ≥
P re(·, t)} be the set of explanations of t at M , and let
p1
a
t1
p8
p2
d
t7
b
p5
b
        </p>
        <p>c</p>
        <p>Fig. 1. The PN system considered in Sections II to IV.</p>
        <p>Y (M, t) = π(Σ(M, t)) be the e-vectors (or explanation
vectors), i.e., firing vectors associated to the explanations.</p>
        <p>Thus Σ(M, t) is the set of unobservable sequences whose
firing at M enables t. Among the above sequences select
those whose firing vector is minimal. The firing vector of
these sequences are called minimal e-vectors.</p>
        <p>
          Definition 3.2: [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] Given a marking M and a transition
t ∈ To, let us define
Σmin(M, t) = {σ ∈ Σ(M, t) | @ σ′ ∈ Σ(M, t) :
π(σ′) π(σ)}
the set of minimal explanations of t at M , and let us
define Ymin(M, t) = π(Σmin(M, t)) the corresponding set
of minimal e-vectors.
        </p>
        <p>Example 3.3: Consider the PN in Fig. 1 previously
introduced in Example 2.2. It holds that Σ(M0, t1) =
{ε}. Then Σ(M0, t2) = ∅. Finally, let M =
[ 0 0 1 0 0 0 0 1 0 0 0 ]T , it holds that Σ(M, t5) =
{ε, ε8, ε8ε9, ε8ε11, ε8ε9ε10}, while Σmin(M, t5) = {ε}. It
follows that Y (M, t5) = {[0 0 0 0 0 0]T , [1 0 0 0 0 0]T ,
[1 1 0 0 0 0]T , [1 0 0 1 0 0]T , [1 1 1 0 0 0]T }, and
Ymin(M, t5) = {[0 0 0 0 0 0]T }.</p>
      </sec>
      <sec id="sec-2-2">
        <title>B. Basis markings and j-vectors</title>
        <p>
          Definition 3.4: [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] Let ⟨N, M0⟩ be a net system with
labeling function L : T → L ∪ {ε}, where N =
(P, T, P re, P ost) and T = To ∪ Tu. Let w ∈ L∗ be a given
observation. Let
Jˆ(w)
= { (σo, σu), σo ∈ T ∗, L(σo) = w, σu ∈ Tu∗ |
        </p>
        <p>o
[∃σ ∈ S(w) : σo = Po(σ), σu = Pu(σ)]∧
[̸ ∃σ′ ∈ S(w) : σo = Po(σ′), σu′ = Pu(σ′)∧
π(σu′) π(σu)]}
be the set of pairs (sequence σo ∈ To∗ with L(σo) = w,
corresponding justification of w).</p>
        <p>In simple words, Jˆ(w) is the set of pairs whose first
element is the sequence σo ∈ To∗ labeled w and whose
second element is the corresponding sequence of unobservable
transitions interleaved with σo whose firing enables σo and
whose firing vector is minimal. The firing vectors of these
sequences are called j-vectors.</p>
        <p>Example 3.5: Consider the PN in Fig. 1 previously
introduced in Example 2.2. It is Jˆ(ab) = {(t1t2, ε)} and
Jˆ(acd) = {(t1t5t6, ε), (t1t5t7, ε12ε13)}.</p>
        <p>
          The main difference among minimal explanations and
justifications is that the first ones are functions of a generic
marking M and transition t, while justifications are functions
of the initial marking M0 and w. Moreover, as shown in [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ],
in the case of acyclic unobservable subnets, justifications can
be computed recursively summing up minimal explanations.
        </p>
        <p>
          Definition 3.6: [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] Let ⟨N, M0⟩ be a net system with
labeling function L : T → L ∪ {ε}, where N =
(P, T, P re, P ost) and T = To ∪ Tu. Let w be a given
observation and (σo, σu) ∈ Jˆ(w) be a generic pair (sequence of
observable transitions labeled w; corresponding justification).
The marking Mb = M0+Cu·y+Co·y′, where y = π(σu) and
y′ = π(σo), i.e., the marking reached firing σo interleaved
with the justification σu, is called basis marking and y is
called its j-vector (or justification-vector).
        </p>
        <p>Obviously, because in general more than one justification
exists for a word w (the set Jˆ(w) is generally not a
singleton), the basis marking may be not unique as well.</p>
        <p>
          Definition 3.7: [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] Let ⟨N, M0⟩ be a net system with
labeling function L : T → L ∪ {ε}, where N =
(P, T, P re, P ost) and T = To ∪ Tu. Let w ∈ L∗ be an
observed word. Let
        </p>
        <p>M(w) = {(M, y) | (∃σ ∈ S(w) : M0[σ⟩M ) ∧
(∃(σo, σu) ∈ Jˆ(w) : σo = Po(σ),</p>
        <p>σu = Pu(σ), y = π(σu))}
be the set of pairs (basis marking, relative j-vector) that are
consistent with w ∈ L∗.</p>
        <p>
          Note that the set M(w) does not keep into account the
sequences of observable transitions that may have actually
fired. It only keeps track of the basis markings that can be
reached and of the firing vectors relative to sequences of
unobservable transitions that have fired to reach them. Indeed,
this is the information really significant when performing
diagnosis. The notion of M(w) is fundamental to provide a
recursive way to compute the set of minimal explanations.
Under the assumption of acyclicity of the unobservable
subnet, the set M(w) can be easily constructed following
a simple algorithm in [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ].
        </p>
        <p>
          Definition 3.8: [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] Let ⟨N, M0⟩ be a net system where
N = (P, T, P re, P ost) and T = To ∪ Tu. Assume that the
unobservable subnet is acyclic. Let w ∈ To∗ be an observed
word. Let
Mbasis(w) = {M ∈ Nm | ∃y ∈ Nnu and (M, y) ∈ M(w)}
be the set of basis markings at w. Moreover, denote as
Mbasis = ∪w∈To∗ Mbasis(w) the set of all basis markings
for any observation w.
        </p>
        <p>Note that if the net system is bounded then the set Mbasis
is finite being the set of basis markings a subset of the
reachability set.</p>
        <p>
          Theorem 3.9: [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] Consider a net system ⟨N, M0⟩ whose
unobservable subnet is acyclic. For any w ∈ L∗ it holds that
C(w) = {M ∈ Nm | M = Mb + Cu · y : y ≥ ⃗0 and
        </p>
        <p>Mb ∈ Mbasis(w)}.</p>
        <p>The above result shows that the set C(w) can be
characterized in linear algebraic terms given the set Mbasis(w),
thus not requiring exhaustive enumeration. This is the main
advantage of the approach here presented.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>IV. ON-LINE DIAGNOSIS USING PETRI NETS</title>
      <p>Assume that the set of unobservable transitions is
partitioned into two subsets, namely Tu = Tf ∪ Treg where Tf
includes all fault transitions (modeling anomalous or fault
behavior), while Treg includes all transitions relative to
unobservable but regular events. The set Tf is further partitioned
into r different subsets T i , where i = 1, . . . , r, that model the
f
different fault classes. Usually, fault transitions that belong
to the same fault class are transitions that represent similar
physical faulty behavior.</p>
      <p>
        Definition 4.1: [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] A diagnoser is a function ∆ : L∗ ×
{Tf1, Tf2, . . . , Tfr} → {0, 1, 2, 3} that associates to each
observation w ∈ L∗ and to each fault class Tfi , i = 1, . . . , r,
a diagnosis state.
      </p>
      <p>• ∆(w, Tfi ) = 0 if for all σ ∈ S(w) and for all tf ∈ Tfi
it holds tf ̸∈ σ.</p>
      <p>In such a case the ith fault cannot have occurred, because
none of the firing sequences consistent with the observation
contains fault transitions of class i.</p>
      <p>• ∆(w, Tfi ) = 1 if:
(i) there exist σ ∈ S(w) and tf ∈ Tfi such that tf ∈ σ but
(ii) for all (σo, σu) ∈ Jˆ(w) and for all tf ∈ Tfi it holds
that tf ̸∈ σu.</p>
      <p>In such a case a fault transition of class i may have
occurred but is not contained in any justification of w.</p>
      <p>• ∆(w, Tfi ) = 2 if there exist (σo, σu), (σo′, σu′) ∈ Jˆ(w)
such that
(i) there exists tf ∈ Tfi such that tf ∈ σu;
(ii) for all tf ∈ T i , tf ̸∈ σ′ .</p>
      <p>f u</p>
      <p>In such a case a fault transition of class i is contained in
one (but not in all) justification of w.</p>
      <p>• ∆(w, Tfi ) = 3 if for all σ ∈ S(w) there exists tf ∈ Tfi
such that tf ∈ σ.</p>
      <p>In such a case the ith fault must have occurred, because
all firable sequences consistent with the observation contain
at least one fault in T i .</p>
      <p>f</p>
      <p>Example 4.2: Consider the PN in Fig. 1 previously
introduced in Example 2.2. Let Tf = {ε11, ε12}. Assume that
the two fault transitions belong to different fault classes, i.e.,
Tf1 = {ε11} and Tf2 = {ε12}.</p>
      <p>Let us observe w = a. Then ∆(w, Tf1) = ∆(w, Tf2) = 0,
being Jˆ(w) = {(t1, ε)} and S(w) = {t1}. In simple words
no fault of both fault classes may have occurred.</p>
      <p>Let us observe w = ab. Then ∆(w, Tf1) = 1 and
∆(w, Tf2) = 0, being Jˆ(w) = {(t1t2, ε)} and S(w) =
{t1t2, t1t2ε8, t1t2ε8ε9, t1t2ε8ε9ε10, t1t2ε8ε11}. This means
that a fault of the first fault class may have occurred (firing
the sequence t1t2ε8ε11) but it is not contained in any
justification of ab, while no fault of the second fault class
can have occurred.</p>
      <p>Now, consider w = abb. In this case
∆(w, Tf1) = 2 and ∆(w, Tf2) = 0, being
Jˆ(w) and
= {(t1t2t2, ε8ε9ε10), (t1t2t3, ε8ε11)}
S(w)={t1t2ε8ε9ε10t2, t1t2ε8ε9ε10t2ε8, t1t2ε8ε9ε10t2ε8ε9,
t1t2ε8ε9ε10t2ε8ε9ε10, t1t2ε8ε9ε10t2ε8ε11, t1t2ε8ε11t3}.
This means that no fault of the second fault class can have
occurred, while a fault of the first fault class may have
occurred since one justification does not contain ε11 and
one justification contains it.</p>
      <p>Finally, consider w = abbccc. In this case
∆(w, Tf1) = 3 and ∆(w, Tf2) = 1. In fact since
Jˆ(w) = {(t1t2t3t5t4t4, ε8ε11), (t1t2t3t4t5t4, ε8ε11),
(t1t2t3t4t4t5, ε8ε11), (t1t2t3t4t4t4, ε8ε11)} a fault of
the first fault class must have occurred, while a fault
of the second fault class may have occurred (e.g.
t1t2ε8ε11t3t4t4t5ε12) but it is not contained in any
justification of w.</p>
      <p>
        Proposition 4.3: [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] Consider an observed word w ∈ L∗.
• ∆(w, Tfi ) ∈ {0, 1} iff for all (M, y) ∈ M(w) and for
all tf ∈ Tfi it holds y(tf ) = 0.
      </p>
      <p>• ∆(w, Tfi ) = 2 iff there exist (M, y) ∈ M(w) and
(M ′, y′) ∈ M(w) such that:
(i) there exists tf ∈ Tfi such that y(tf ) &gt; 0,
(ii) for all tf ∈ T i , y′(tf ) = 0.</p>
      <p>f
• ∆(w, Tfi ) = 3 iff for all (M, y) ∈ M(w) there exists
tf ∈ Tfi such that y(tf ) &gt; 0.</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] it has been shown that it is possible to distinguish
between diagnosis states 0 and 1 by simply checking if a
given constraint set is feasible or not.
      </p>
      <p>
        Remark 4.4: As proved in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], if the considered net
system is bounded, the most burdensome part of the procedure
can be moved off-line defining a graph called Basis
Reachability Graph (BRG). The BRG is a deterministic graph that
has as many nodes as the number of possible basis markings,
thus it is always finite being the set of basis markings a subset
of the set of reachable markings.
      </p>
    </sec>
    <sec id="sec-4">
      <title>V. DIAGNOSABILITY ANALYSIS</title>
      <p>
        In the diagnosis framework two different problems can be
solved: the problem of diagnosis and the problem of
diagnosability. As explained in detail in the above sections, solving
a problem of diagnosis means that to each observed string
of events is associated a diagnosis state, such as “normal” or
“faulty” or “uncertain”. Solving a problem of diagnosability
is equivalent to determine if the system is diagnosable,
i.e., to determine if, once a fault has occurred, the system
can detect its occurrence in a finite number of steps. We
addressed this problem in two different settings, depending
on the boundedness of the net system. In particular, in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]
we proposed a solution that only applies to bounded nets,
where the major feature is to allow to perform, using the
same framework, both diagnosis and diagnosibility analysis.
      </p>
      <p>
        Moreover, in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] we proposed an approach that also
applies to unbounded PNs. In particular in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] we dealt
with two different notions of diagnosability: diagnosability
and diagnosability in K steps. Diagnosability in K steps is
stronger than diagnosability and implies not only that the
system is diagnosable, i.e., when the fault occurs we are
able to detect it in a finite number of transition firings, but
also that if the fault occurs we are able to detect it in at
most K steps. We gave necessary and sufficient conditions
for both notions of diagnosability and we presented a test
to study both diagnosability and K-diagnosability based on
the analysis of the coverability graph of a special PN, called
Verifier Net, that is built starting from the initial system.
Moreover, we gave a procedure to compute the bound K
in the case of K-diagnosable systems. Then, we showed
how sufficient conditions on diagnosability can be computed
using linear programming techniques.
      </p>
      <p>To the best of our knowledge, this is the first time that
necessary and sufficient conditions for diagnosability and
Kdiagnosability of labeled unbounded Petri nets are presented.</p>
    </sec>
    <sec id="sec-5">
      <title>VI. CONCLUSION AND FUTURE WORK</title>
      <p>In this talk an on-line approach for fault diagnosis of
discrete event systems based on labeled Petri nets has been
discussed. Some results on diagnosability analysis have also
been recalled, that also apply to unbounded nets.</p>
      <p>Several are the future lines of research in this framework.
One of the most important is the relaxation of the assumption
that the fault model is perfectly known, as well as the
initial state of the system. Moreover, it is interesting to
investigate how the problems of on-line fault diagnosis and
diagnosability analysis can take advantage from information
coming timing associated with transitions. Finally, due to
the complexity of current systems, it is important to develop
efficient distributed and/or decentralized approaches.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Sampath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sengupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lafortune</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Sinnamohideen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Teneketzis</surname>
          </string-name>
          , “
          <article-title>Diagnosability of discrete-event systems</article-title>
          ,
          <source>” IEEE Trans. on Automatic Control</source>
          , vol.
          <volume>40</volume>
          (
          <issue>9</issue>
          ), pp.
          <fpage>1555</fpage>
          -
          <lpage>1575</lpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2] --, “
          <article-title>Failure diagnosis using discrete-event models</article-title>
          ,
          <source>” IEEE Trans. Control Systems Technology</source>
          , vol.
          <volume>4</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>105</fpage>
          -
          <lpage>124</lpage>
          ,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S.</given-names>
            <surname>Genc</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Lafortune</surname>
          </string-name>
          , “
          <article-title>Distributed diagnosis of place-bordered Petri nets</article-title>
          ,
          <source>” IEEE Trans. on Automation Science and Engineering</source>
          , vol.
          <volume>4</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>206</fpage>
          -
          <lpage>219</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Benveniste</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Fabre</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Haar</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Jard</surname>
          </string-name>
          , “
          <article-title>Diagnosis of asynchronous discrete event systems: A net unfolding approach,”</article-title>
          <source>IEEE Trans. on Automatic Control</source>
          , vol.
          <volume>48</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>714</fpage>
          -
          <lpage>727</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Basile</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Chiacchio</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G. D.</given-names>
            <surname>Tommasi</surname>
          </string-name>
          , “
          <article-title>An efficient approach for online diagnosis of discrete event systems</article-title>
          ,
          <source>” IEEE Trans. on Automatic Control</source>
          , vol.
          <volume>54</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>748</fpage>
          -
          <lpage>759</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Dotoli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. P.</given-names>
            <surname>Fanti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mangini</surname>
          </string-name>
          , and W. Ukovich, “
          <article-title>On-line fault detection in discrete event systems by Petri nets and integer linear programming</article-title>
          ,
          <source>” Automatica</source>
          , vol.
          <volume>45</volume>
          , no.
          <issue>11</issue>
          , pp.
          <fpage>2665</fpage>
          -
          <lpage>2672</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cabasino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Giua</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pocci</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Seatzu</surname>
          </string-name>
          , “
          <article-title>Discrete event diagnosis using labeled Petri nets. An application to manufacturing systems</article-title>
          ,” Control Engineering Practice,
          <year>2011</year>
          , (in press, published on-line
          <source>with DOI 10</source>
          .1016/j.conengprac.
          <year>2010</year>
          .
          <volume>12</volume>
          .010).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cabasino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Giua</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Seatzu</surname>
          </string-name>
          , “
          <article-title>Fault detection for discrete event systems using Petri nets with unobservable transitions</article-title>
          ,
          <source>” Automatica</source>
          , vol.
          <volume>46</volume>
          , no.
          <issue>9</issue>
          , pp.
          <fpage>1531</fpage>
          -
          <lpage>1539</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9] --, “
          <article-title>Diagnosability of discrete event systems using labeled Petri nets</article-title>
          ,
          <source>” IEEE Trans. on Automation Science and Engineering</source>
          , vol.
          <volume>11</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>144</fpage>
          -
          <lpage>153</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cabasino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Giua</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lafortune</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Seatzu</surname>
          </string-name>
          , “
          <article-title>A new approach for diagnosability analysis of Petri nets using Verifier Nets,”</article-title>
          <source>IEEE Trans. on Automatic Control</source>
          , vol.
          <volume>57</volume>
          , no.
          <issue>12</issue>
          , pp.
          <fpage>3104</fpage>
          -
          <lpage>3117</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>