1 / 19

CS 367: Model-Based Reasoning Lecture 5 (01/29/2002)

CS 367: Model-Based Reasoning Lecture 5 (01/29/2002). Gautam Biswas. Today’s Lecture. Last Lecture: Concept of Blocking Non deterministic Automata Operations on Automata Accessible, Coaccessible parts, Composition Operators (Product, Parallel) Today’s Lecture: Parallel Composition

ianna
Télécharger la présentation

CS 367: Model-Based Reasoning Lecture 5 (01/29/2002)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 367: Model-Based ReasoningLecture 5 (01/29/2002) Gautam Biswas

  2. Today’s Lecture • Last Lecture: • Concept of Blocking • Non deterministic Automata • Operations on Automata • Accessible, Coaccessible parts, Composition Operators (Product, Parallel) • Today’s Lecture: • Parallel Composition • Observer Automata • State Space Refinement • Automata with Input and Output • Analysis of Discrete Event Systems

  3. Composition of Automata • Two kinds • Product:   completely synchronous • Parallel:   synchronous

  4. Product Composition

  5. Example: Product Composition b

  6. Parallel Composition

  7. b Parallel Composition: Example Two automata are synchronized on common events, E1 E2 One automaton can execute a private event without participation of other automata (E1\ E2)(E2\ E1) If E1 = E2 then parallel composition reduces to product If E1 E2 =  then G1G2 is the concurrent behavior of G1 and G2 – called the shuffle of G1 and G2 G1G2 = G2G1 (G1G2 )G3=G1(G2 G3)

  8. Example of Parallel CompositionDining Philosophers (Multiple users sharing common resources) Philosophers: (i) think, (ii) eat Forks: (i) available, (ii) used Incomplete model Contains two deadlock states -- controller added to disallow deadlock

  9. What is control? • Control – selecting right input to system to achieve desired behavior: r(t) – reference signal – describes desired behavior

  10. Complexity of Parallel Composition • k component system, each component model has m states. If the event sets of each automata are distinct, then model of complete system has mk states (exponential growth) – curse of dimensionality • How do we handle complexity? • Incremental analysis • Symbolic representations (“Symbolic Model Checking: 1020 States and Beyond,” Burch, et al., Information and Computation, vol. 98, pp. 142-170, 1998.

  11. Observer Automata • Conversion of non deterministic FSA to deterministic FSA : language preserving transformation • Converted deterministic automaton is called the observer: • Partition the set of events: • Observer contains no unobservable events

  12. Observer -- Example Note:Gobs is deterministic

  13. Observer: Algorithm

  14. How to make this comparison computationally efficient? State Space Refinement • Task: Comparison of two languages • Refinement by Product:

  15. Moore and Mealy Automata • Moore automata: automata with state outputs • Mealy: input/output automata • FSA  Regular Languages

  16. Analysis of Discrete Event Systems • Safety and Blocking Properties • Safety: avoiding undesirable states, or undesirable sequence of events for a composed automaton – “legal” or “admissible” language • Determine if state y is reached from state x : perform accessible operation on automaton with x as initial state, look for y in result • Determine if substring possible in automaton: “execute” substring for all accessible states Parallel composition complexity: Accessible, Coaccessible algorithms are linear in size of automaton • Blocking Properties:

  17. State Estimation • Unobserved events: •  events can be attributed to: (i) absence of sensors, (ii) event occurred remotely, not communicated, (iii) fault events • Genuine unobservable events:

  18. Daignostics • Determine whether certain events with certainty: fault events • Build new automata like observer, but attach “labels” to the states of Gdiag • To build • Attach N label to states that can be reached from x0 by unobservable strings • Attach Y label to states that can be reached from x0 by unobservable strings that contain at least one occurrence of ed • If state z can be reached both with and without executing edthen create two entries in the initial state set of Gdiag: zN and zY.

  19. Diagnoser Automata

More Related