how the timed automaton lost its tail and clocks
play

How the Timed Automaton Lost its Tail (and Clocks) Oded Maler - PowerPoint PPT Presentation

How the Timed Automaton Lost its Tail (and Clocks) Oded Maler Joint work with Jean-Francois Kempf and Marius Bozga CNRS - VERIMAG Grenoble, France FORMATS Aalborg 2011 Returning to the Scene of the Crime I am happy to present this work


  1. How the Timed Automaton Lost its Tail (and Clocks) Oded Maler Joint work with Jean-Francois Kempf and Marius Bozga CNRS - VERIMAG Grenoble, France FORMATS Aalborg 2011

  2. Returning to the Scene of the Crime ◮ I am happy to present this work in Aalborg where it started two years ago by discussions with Kim Larsen ◮ Initial goal was to do timing analysis by statistical methods on duration probabilistic automata ◮ But then we had some ideas to compute probabilities using density transformers , extensions of the zone transformers used in the verification of timed automata: ◮ OM, Kim Larsen and Bruce Krogh : On Zone-Based Analysis of Duration Probabilistic Automata , Infinity 2010 ◮ Similar to Vicario et al. and Alur and Bernadsky ◮ The present clock-free work is a byproduct of trying to implement the ideas ◮ Let us start with an intuitive introduction to the context

  3. Processes that Take Time ◮ Processes that take some time to conclude after having started, for example: ◮ Propagation delay between send and receive ◮ Execution time of a program ◮ Duration of a step in a manufacturing process ◮ Mathematically they are simple timed automata: start φ ( x ) x := 0 end p p p ◮ A waiting state p ; a start transition which resets a clock x to measure time elapsed in active state p ◮ An end transition guarded by a temporal condition φ ( x ) ◮ Condition φ can be true (no constraint), x = d (deterministic), x ∈ [ a , b ] (non-deterministic) or probabilistic

  4. Composition ◮ Such processes can be combined: ◮ Sequentially to represent precedence relations between tasks, for example p precedes q : start φ ( x ) x := 0 end p p p start φ ( x ) start φ ( x ) x := 0 end x := 0 end p p q q p start φ ( x ) x := 0 end q q q ◮ In parallel to express partially-independent processes, sometimes competing with each other [ c 1 , d 1 ] [ c 2 , d 2 ] [ c 3 , d 3 ] ¯ 1 2 2 3 E 1 [ a 1 , b 1 ] ¯ 2

  5. Levels of Abstraction: Untimed ◮ Untimed (asynchronous) approach: ◮ Each process may take between zero and infinity time ◮ Consequently any interleaving in ( a · b ) || c is possible a b a b c c c c a b

  6. Levels of Abstraction: Timed ◮ Timed automata and similar formalisms assume a lower and (finite) upper bound for the duration of each step x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b ◮ The arithmetics of time eliminates some paths: ◮ Since 4 < 6, a must precede c and the set of possible paths is reduced to a · ( b || c ) = abc + acb ◮ But how likely is abc to occur?

  7. Levels of Abstraction: Timed ◮ But how likely is abc to occur? x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x c ∈ [ 6 , 9 ] / c x a ∈ [ 2 , 4 ] / a x b ∈ [ 6 , 20 ] / b ◮ The durations of the steps is a vector ( y a , y b , y c ) ∈ Y = [ 2 , 4 ] × [ 6 , 20 ] × [ 6 , 9 ] ◮ Event b precedes c only when y a + y b < y c ◮ Since y a + y b ranges in [ 8 , 24 ] and y c ∈ [ 6 , 9 ] , it is less likely than c preceding b

  8. Probabilistic Interpretation of Timing Uncertainty ◮ Interpreting temporal guards probabilistically as uniform distribution over [ a , b ] gives precise quantitative meaning to this intuition ◮ Using this model we can compute probabilities of paths as volumes in the duration space ◮ We can discard low-probability paths, compute expected performance of schedulers, etc. ◮ This talk explains how to do it gradually 1. A single sequential process 2. Multiple independent processes 3. Processes executing under scheduler coordination

  9. Sequential Stochastic Processes I ◮ S = P 1 || · · · || P n of n sequential stochastic processes ◮ A process is a sequence of steps with probabilistic duration ◮ A step cannot start before its predecessor terminates ◮ Two scenarios: ◮ Independent executions ◮ Coordinated execution: resource conflicts on some steps, resolved by a scheduler that guarantees mutual exclusion ◮ We want to compare the (expected) performance of scheduling policies for the second scenario ◮ We start with the first for didactic reasons

  10. Bounded Uniform Distributions ◮ A uniform distribution inside an interval I = [ a , b ] is characterized by a density ψ defined as � 1 / ( b − a ) if a ≤ y < b ψ ( y ) = 0 otherwise b a a b ◮ Or in terms of distribution:  0 if y < a � y  F ( y ) = ψ ( τ ) d τ = ( y − a ) / ( b − a ) if a ≤ y ≤ b 0 1 if b ≤ y 

  11. Sequential Stochastic Processes II ◮ A sequential stochastic process: P = ( I , Ψ) : ◮ I = { I j } j ∈ K where I j = [ a j , b j ] is the interval of possible durations of step P j ◮ Ψ = { ψ j } j ∈ K is a sequence of densities with each ψ j uniform over I j ◮ We consider finite acyclic processes with K = { 1 , . . . , k } ◮ Automaton view: e 1 e 2 e k · · · q 1 q 2 q k y j := ψ j e j − 1 x = y j q j x := 0 e j

  12. Duration Space ◮ A finite sequence of independent uniform random variables { y j } j ∈ K ranging over a duration space D , consisting of vectors y = ( y 1 , . . . , y k ) ∈ D = I 1 × · · · × I k ⊆ R k with density ψ ( y 1 , . . . , y k ) = ψ 1 ( y 1 ) · · · ψ k ( y k ) ◮ A point y ∈ D induces a unique behavior of the system ξ y = y 1 e 1 y 2 e 2 · · · y k e k where y j ∈ I j is the duration of step P j and e j is the termination event

  13. Volume and Probability ◮ The timed language of the process L = { ξ y : y ∈ D } ◮ The untimed (qualitative) language L = { e 1 e 2 · · · e k } ◮ The probability of any subset of L is the relative volume of the subset of D that generates it ◮ For example, the probability to terminate before deadline r : ◮ The volume of D ∧ ( y 1 + · · · + y k < r ) divided by the volume of D b 2 y 1 + y 2 < r a 2 a 1 b 1

  14. From Durations to Time Stamps ◮ A timed word ξ y = y 1 e 1 y 2 e 2 · · · y k e k can be written as a sequence of time-stamped events ξ t = ( e 1 , t 1 ) , ( e 2 , t 2 ) , . . . , ( e k , t k ) t j = y 1 + · · · + y j is the absolute time of e j ◮ where y j = t j − t j − 1 ◮ A coordinate transformations t = Ty and y = T ′ t between the duration space D and the time-stamp space C     1 0 0 1 0 0 T ′ = T = 1 1 0 − 1 1 0     1 1 1 0 − 1 1 ◮ These transformations preserve volume. We do our calculations on the time-stamp space C which is a zone defined by � ϕ C : a j ≤ t j − t j − 1 ≤ b j j ∈ K

  15. Processes in Parallel ◮ Consider n processes S = P 1 || · · · || P n = { ( I i , Ψ i ) } n i = 1 ◮ Notations: P i j (step j of process i ), I i j = [ a i j , b i j ] and ψ i j ◮ All processes have the same number k of steps ◮ Event alphabet Σ = { e 1 1 , e 1 2 , . . . , e n k − 1 , e n k } ◮ A global behavior corresponds to a point in the global duration space n k � � y = ( y 1 1 , y 1 2 , . . . , y n k − 1 , y n I i j ⊂ R nk k ) ∈ D = i = 1 j = 1 or equivalently to a point t in the time-stamp space t = ( t 1 1 , t 1 2 , . . . , t n k − 1 , t n k ) ∈ C = T D where T is a block diagonal matrix.

  16. Global Behaviors ◮ Merging local behaviors L = L 1 || · · · || L n e 1 e 1 e 1 1 2 3 P 1 e 2 e 2 e 2 P 2 3 1 2 e 3 e 3 e 3 P 3 1 2 3 P e 1 e 2 e 2 e 3 e 3 e 1 e 1 e 2 e 3 1 1 2 1 2 2 3 3 3 w = e 1 1 e 2 1 e 2 2 e 3 1 e 2 3 e 1 2 e 1 3 e 3 2 e 3 3 ◮ Qualitative behavior: equivalence class of all timed behaviors with the same order of events ◮ All potentially possible behaviors are part of the shuffle (interleavings) of the local languages L = L 1 || · · · || L n

  17. Automaton View ◮ A qualitative behavior is the set of all runs that go through the same path in the global (product) automaton e 2 e 2 e 2 q 2 q 2 1 q 2 2 3 1 3 2 q 1 1 e 1 e 1 1 1 e 2 e 2 q 1 1 2 2 e 1 e 1 2 2 e 2 q 1 3 3 e 1 e 1 3 3 w = e 1 1 e 2 1 e 2 2 e 3 1 e 2 3 e 1 2 e 1 3 e 3 2 e 3 3

  18. Races e 2 e 2 e 2 q 2 q 2 q 2 1 2 3 1 3 2 q 1 1 e 1 e 1 1 1 q 1 e 2 e 2 1 2 2 e 1 e 1 2 2 x 2 = y 2 2 e 2 e 2 q 1 q 1 3 , q 2 2 3 3 2 x 1 = y 1 3 e 1 e 1 e 1 3 3 3 ◮ In state ( q 1 3 , q 2 2 ) there is a race between e 1 3 and e 2 2 ◮ The winner depends on which termination condition (transition guard) is satisfied first ◮ Which reduces to the relation between t 1 3 and t 2 2

  19. Probability of Qualitative Behavior ◮ We formulate the following question: ◮ Compute the probability of a qualitative behavior w , ie the probability that events occur in a particular order ◮ Two-stage solution: characterize the subset Z w of the time-stamp space C that yields w ◮ Compute the volume of this subset divided by the volume of C ◮ This will be expressed by a constraint ϕ C ∧ ϕ w with � � a i j ≤ t i j − t i j − 1 ≤ b i ϕ C : j i ∈ N j ∈ K

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