Presentation is loading. Please wait.

Presentation is loading. Please wait.

Diagnosis of Discrete Event Systems Meir Kalech Partly based on slides of Gautam Biswass.

Similar presentations


Presentation on theme: "Diagnosis of Discrete Event Systems Meir Kalech Partly based on slides of Gautam Biswass."— Presentation transcript:

1 Diagnosis of Discrete Event Systems Meir Kalech Partly based on slides of Gautam Biswass

2 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 1. Deterministic automata 2. Non-deterministic automata 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

3 0 0,1 0 0 1 1 1 0111111 11 1 The machine accepts a string if the process ends in a double circle Borrowed from CMU / COMPSCI 102 Brief notes on Automata

4 0 0,1 0 0 1 1 1 The machine accepts a string if the process ends in a double circle Anatomy of a Deterministic Finite Automaton states q0q0 q1q1 q2q2 q3q3 start state (q 0 ) accept states (F)

5 Anatomy of a Deterministic Finite Automaton 0 0,1 0 0 1 1 1 q0q0 q1q1 q2q2 q3q3 The alphabet of a finite automaton is the set where the symbols come from: The language of a finite automaton is the set of strings that it accepts {0,1}

6 0,1 q0q0 L(M) = All strings of 0s and 1s  The Language of Machine M

7 q0q0 q1q1 0 0 1 1 L(M) = { w | w has an even number of 1s}

8 An alphabet Σ is a finite set (e.g., Σ = {0,1}) A string over Σ is a finite-length sequence of elements of Σ For x a string, |x| isthe length of x Notation A language over Σ is a set of strings over Σ

9 Q is the set of states Σ is the alphabet  : Q  Σ → Q is the transition function q 0  Q is the start state F  Q is the set of accept states A finite automaton is a 5-tuple M = (Q, Σ, , q 0, F) L(M) = the language of machine M = set of all strings machine M accepts

10 Q = {q 0, q 1, q 2, q 3 } Σ = {0,1}  : Q  Σ → Q transition function * q 0  Q is start state F = {q 1, q 2 }  Q accept states M = (Q, Σ, , q 0, F) where  01 q0q0 q0q0 q1q1 q1q1 q2q2 q2q2 q2q2 q3q3 q2q2 q3q3 q0q0 q2q2 * q2q2 0 0,1 0 0 1 1 1 q0q0 q1q1 q3q3 M

11 qq 00 1 0 1 q0q0 q 001 0 0 1 0,1 Build an automaton that accepts all and only those strings that contain 001

12 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 1. Deterministic automata 2. Non-deterministic automata 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

13 Alphabet = Nondeterministic Finite Accepter (NFA)

14 Two choices Alphabet = Nondeterministic Finite Accepter (NFA)

15 No transition Two choices No transition Alphabet = Nondeterministic Finite Accepter (NFA)

16 First Choice

17

18

19 “accept” First Choice

20 Second Choice

21

22 No transition: the automaton hangs

23 Second Choice “reject”

24 Equivalent automata Automata G 1 and G 2 are equivalent if

25 Examples of Equivalent Automata

26 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

27 What is a Discrete-Event System?  Structure with ‘states’ having duration in time, ‘events’ happening instantaneously and asynchronously.  States: machine is idle, is operating, is broken down, is under repair.  Events: machine starts work, breaks down, completes work or repair.  State space discrete in time and space.  State transitions ‘labeled’ by events.

28 DES Example: heating ventilation and air conditioning

29 Diagnosis goal: given a composite DES including observable and unobservable events (faulty events are part of the unobservable events), find the faulty events.

30 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

31 Observer Automata  In DES we partition the events to observable and unobservable events.  Unobservable events: absence of sensors event occurred remotely, not communicated fault events  Observer is an equivalent deterministic automata to the original which contains only observable events.

32 Observer - Example Note: G nd is non-deterministic, G obs is deterministic G nd and G obs are equivalent. a and b are observable events

33 Observer example 2:

34 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

35 Daignostics  Determine whether certain events with certainty are fault events  Build new automata like observer, but attach “labels” to the states of G diag  To build Attach N label to states that can be reached from x 0 by unobservable strings Attach Y label to states that can be reached from x 0 by unobservable strings that contain at least one occurrence of e d (fault event). If state z can be reached both with and without executing e d then create two entries in the initial state set of G diag : zN and zY.

36 Diagnoser Automata

37 Diagnosability

38 Diagnosability: informal definition  Let s be any trace generated by the system that ends in a failure event from set E fi and t is a sufficiently long continuation of s  Diagnosability  Diagnosability implies that every trace that belongs to the language that produces the same record of observable events as st should contain in it a failure event from E fi  Along every continuation t of s, one can detect the failure of type F i with finite delay, specifically in at most n i transitions of the system after s  Alternately, diagnosability requires that every failure event leads to observations distinct enough to enable unique identification of failure type with a finite delay

39 Diagnosability: example  The system is diagnosable

40 Diagnosability: example  The system is not diagnosable

41 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

42 Diagnosability by Diagnoser To determine diagnosability of a system we use a diagnoser: 1. The diagnoser traces all possible trajectories of the system. 2. The diagnoser records the possible failures in each state. 3. If a state contains an ambiguity failure: “F i occurs or F i not occurs” then the system is not diagnosable.

43 Diagnoser: example

44

45

46

47

48

49

50

51

52

53 F1 is indicated anyway F2 only for the bottom path Therefore there is ambiguity ‘A’

54 Outline  Last lecture: 1. Optimal CSP 2. Conflict-directed A*  Today’s lecture: 1. Automata (brief tutorial) 2. Discrete event system 3. Observer automata 4. Diagnostics approach 5. Diagnoser automata 6. Diagnosability

55 Diagnosability: necessary and sufficient conditions Theorem: A language L is diagnosable if and only if its diagnoser G diag satisfies the following two conditions: 1. No state in G diag is ambiguous. 2. There are no F i -indeterminate cycles in G diag, for all failure types F i.

56 Certain and uncertain failures Meaning – if a state contains only failure F i label then this failure will occur in certain. State id label Meaning – if a state contains failure F i and another failure or N label, then this failure will occur with uncertain.

57 F i -indeterminate cycle in G diag Meaning – an F i -indeterminate cycle in G diag indicates the presence of two cycled traces s1 and s2 with the same observable projection, where s1 contains F i and s2 does not.

58 Example: F i -indeterminate cycle

59 Example: F i -uncertain cycle but not F i -indeterminate cycle This is an F i -uncertain cycle BUT: it is not F i - indeterminate cycle since the cycles are not corresponding

60 Diagnosability: necessary and sufficient conditions Theorem: A language L is diagnosable if and only if its diagnoser G diag satisfies the following two conditions: 1. No state in G diag is ambiguous. 2. There are no F i -indeterminate cycles in G diag, for all failure types F i.


Download ppt "Diagnosis of Discrete Event Systems Meir Kalech Partly based on slides of Gautam Biswass."

Similar presentations


Ads by Google