Download presentation
Presentation is loading. Please wait.
Published byFrederica Hawkins Modified over 9 years ago
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
19
“accept” First Choice
20
Second Choice
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
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.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.