the state automata formalism
play

The State Automata Formalism Untimed models of discrete event - PowerPoint PPT Presentation

The State Automata Formalism Untimed models of discrete event systems Languages Regular Expressions Automata (Deterministic) Finite State Automata Nondeterministic Finite State Automata State Aggregation


  1. � � � � The State Automata Formalism Untimed models of discrete event systems Languages Regular Expressions Automata – (Deterministic) Finite State Automata – Nondeterministic Finite State Automata – State Aggregation – Discrete Event Systems as State Automata Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 1/31

  2. � ✂ � � � ✁ Untimed models Level of specification: I/O System (state based, deterministic) Time Base = (time progression index) Dynamic but – only sequence (order) of states traversed matters – not when in state or how long in state Discrete Event: event set E Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 2/31

  3. ✠ ✠ � ✟ ✝ ✝ ☞ � ✆ ✠ ✆ ✆ � ✠ ☎ ✂ ✆ ✡ � ☛ ✄ ☛ ✆ Languages – Regular Expressions – Automata language L , defined over alphabet E (events) set of strings formed from E Example: all possible input behaviours: ε L ARR DEP ARR ARR DEP ✆✞✝ Regular expression: shorthand notation for a regular language ARR DEP ARR DEP DEP ARR Concatenation, Alternatives ( ), Kleene closure ( ). Finite State Automaton (model): generate / accept a language Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 3/31

  4. ✏ ☞ ✡ � � ✏ � ☞ � ✎ ✍ ✆ ✆ ✆ � ✆ ✡ ✆ ✂ ✌ Finite State Automaton E X f x 0 F E is a finite alphabet X is a finite state set f is a state transition function, f : X E X x 0 is an initial state, x 0 X F is the set of final states Dynamics ( x is next state): x f x e Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 4/31

  5. ✆ ✎ ✆ ✆ ✆ ☞ ✡ � ✆ ✟ ☞ ✂ ✎ ☞ ✡ � ✆ ✡ ✡ ☞ ☎ ✂ ✡ ☞ ✆ ✆ ✆ ✆ ✡ ✡ ✌ ☞ ✠ ✍ ✡ ✆ ✆ ☞ ☞ ✂ � ✆ FSA recognizes Language extended transition function: f : X E X f x ue f f x u e A string u over the alphabet E is recognized by a FSA E X f x 0 F if f x 0 u x where x F . The language L A recognized by a FSA A E X f x 0 F u : f x 0 u F is the set of strings . Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 5/31

  6. FSA graphical notation: State Transition Diagram 1 1 Init End_1 0 1 0 End_0 0 Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 6/31

  7. Simulation steps Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 7/31

  8. 1 1 1 1 Init End_1 Init End_1 input 0 0 0 Rule 1 Rule 2 1 1 0 0 End_0 End_0 Current State Current State 0 0 1 1 1 1 Init End_1 Init End_1 input 1 0 0 input 0 Rule 2 Rule 2 1 1 0 0 End_0 End_0 Current State Current State 0 0 end of input Final Action "Accept Input" Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 8/31

  9. FSA Operational Semantics Rule 1 (priority 3) Locate Initial Current State 1 1 ::= <ANY> <COPIED> 3 2 Current State Rule 2 (priority 1) State Transition 1 1 Current State Current State condition: 2 2 matched(4).input == input[0] 4 3 <COPIED> <COPIED> / 3 5 ::= 5 4 <COPIED> <ANY> / <ANY> <ANY> <ANY> <COPIED> action: remove(input[0]) Rule 3 (priority 2) Local State Transition 1 1 Current State Current State condition: matched(4).input == input[0] 2 2 ::= 4 4 <COPIED> <COPIED> <ANY> / <ANY> / 3 3 action: <COPIED> <ANY> remove(input[0]) Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 9/31

  10. ☞ ✆ ✂ ✡ � ✆ � ✆ ✍ ✆ ✌ Nondeterministic Finite State Automaton NFA E X f x 0 F 2 X f : X E Monte Carlo simulation (if probabilities added) Transform to equivalent FSA ( aka DFA) Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 10/31

  11. Nondeterministic Finite State Automaton Cdrunk Coffee drinkC Button thirsty Idle thirsty Tea drinkT Button TDrunk Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 11/31

  12. Constructed Deterministic Finite State Automaton Cdrunk Idle drinkC$drinkT Coffee$Tea Button thirsty TDrunk Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 12/31

  13. Transformation Rules Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 13/31

  14. Rule LHS Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 14/31

  15. Rule RHS Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 15/31

  16. ✂ ☞ ✎ ✡ ✆ ✡ ✆ ☞ ✑ ✎ ✓ ✆ ✆ ✡ ✆ ✆ ✆ ☞ ✆ ✎ ✒ Managing Complexity: State Aggregation E X f x 0 F R X R consists of equivalent states with respect to F if for any x y R x y and any string u , f x u F f y u F x and y are equivalent for as far as “accepting/rejecting” input strings is concerned. Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 16/31

  17. ✒ ✆ ✡ ✂ ✡ ✡ ✆ ☞ ☞ ✡ ✆ ☞ ✆ ✡ ☞ ✆ ✡ ✂ ✒ ☞ ✡ ✎ ☞ ✡ ✆ ✆ ✡ ☞ ✡ ✆ ☞ ☞ ☞ ☞ ✆ ✡ ✡ ✆ ✆ ✆ ☞ ☞ ✆ ✆ ✡ ✡ ✆ ✡ ☞ ✆ ✎ ✡ ✆ ✒ ☞ ☞ ✡ ✎ ✆ ☞ ✎ State Aggregation Algorithm x y for all x F y F 1. Mark 2. For every pair x y not marked in previous step: f x e f y e is marked for some e E , then: (a) If i. Mark x y w z x y ii. Mark all unmarked pairs in the list of . Repeat this step for each w z until no more markings possible. (b) If no f x e f y e is marked, the for every e E : i. If f x e f y e then add x y to the list of f x e f y e Pair which remain unmarked are in equivalence set Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 17/31

  18. digit sequence (123) detector FSA 1 1 1 2 3 x_1 x_12 x_123 1 2 3 1 2 2 x_3 x_2 3 2 3 3 Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 18/31

  19. State Reduced FSA 1 1 1 2 3 x_1 x_12 x_123 3 1 2 2 3 x_0 2 3 Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 19/31

  20. ✡ � � ✔ ✔ � � ✔ ✔ ✔ ✔ � ☞ ✏ ✂ ✆ State Automata to model Discrete Event Systems X is state space Q All inputs are strings from an alphabet E (the events) X δ State transition function x f x e Allow X and E to be countable rather than finite Introduce feasible events Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 20/31

  21. ☞ ✆ ✡ ✡ ✆ � ✎ � ☞ ☞ ✆ ✡ ✌ � � ☞ ✍ � ☞ ✆ ✆ ✎ ✆ ✡ ✆ ✡ ✆ ✎ ✎ State Automaton Γ E X f x 0 E is a countable event set X is a countable state space Γ x is the set of feasible or enabled events Γ x X x E f is a state transition function, Γ f : X E X , only defined for e x x 0 is an initial state, x 0 X Γ E X f omits x 0 and describes a class of State Automata. Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 21/31

  22. ☞ ✕ � � ✡ � ✆ ✂ Feasible/Enabled Events On transition diagram: not feasibe not marked Meaning: ignore non-feasible events Why not f x e x for non-feasible events ? Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 22/31

  23. State Automata for Queueing Systems Departure Arrival Cashier Queue Physical View Departure Arrival Cashier Queue [IAT distribution] [ST distribution] Abstract View Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 23/31

  24. ✆ ✟ ✟ ✂ ☎ ☎ ✆ ✂ ☞ ✆ ✂ ☎ ✡ ✆ ✟ ✆ ✘ ✡ ✝ ✚ ✘ ✔ ✂ ☞ ✆ ✡ ✙ ☞ ✂ ☞ ✆ ✡ ✟ ☎ ✂ ✝ State Automata for Queueing Systems: customer centered a a a a a a 0 1 2 3 4 5 ... d d d d d d E a d X 0 1 2 ✆✞✝ Γ Γ x a d x 0 0 a ✆✗✖ f x a x 1 x 0 ✆✗✖ f x d x 1 x 0 ✆✗✖ Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 24/31

  25. State Automata for Queueing Systems: server centered (with breakdown) s I B c b r D Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 25/31

  26. ✡ ☞ ✡ ☞ ✂ ☎ ✆ ✟ ✆ ✂ ✡ ☞ ✆ ✂ ☎ ✆ ✆ ✡ ✟ ✆ ✟ ☎ ✡ ☞ ☞ ✆ ✂ ✂ ☎ ☞ ✆ ✆ ✆ ✡ ✆ ✟ ✟ ✂ ☞ ✆ ✂ ☎ ✡ ✆ ✆ ✆ ✂ ✂ State Automata for Queueing Systems: server centered (with breakdown) E s c b r Events: s denotes service starts, c denotes service completes, b denotes breakdown, r denotes repair. X I B D State: I denotes idle, B denotes busy, D denotes broken down. Γ Γ Γ I s B c b D r f I s B f B c I f B b D f D r I Hans Vangheluwe hv@cs.mcgill.ca Modelling and Simulation: Finite State Automata 26/31

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend