efficient parametric identification for stl
play

Efficient Parametric Identification for STL Thomas Ferr` ere Oded - PowerPoint PPT Presentation

Efficient Parametric Identification for STL Thomas Ferr` ere Oded Maler Alexey Bakhirkin Monitoring vs. Parametric Identification Monitoring Do traces of a black box satisfy a property? Spec w SAT ? Trace w System Monitor 0 or 1


  1. Efficient Parametric Identification for STL Thomas Ferr` ere Oded Maler Alexey Bakhirkin

  2. Monitoring vs. Parametric Identification Monitoring Do traces of a black box satisfy a property? Spec ϕ w SAT ϕ ? Trace w System Monitor 0 or 1

  3. Monitoring vs. Parametric Identification Parametric Identification What is the value of a parameter of a black box? Spec ϕ [ p ] For which p , w SAT ϕ [ p ]? Trace w Set of vals System Monitor of p ◮ Find the set of all or tightest or etc values of parameters. ◮ From it, find the parameter of the black box.

  4. Our Setting 2 x 1 0 0 5 10 15 20 25 30 2 y 1 0 0 5 10 15 20 25 30 ◮ Real-valued. ◮ Piecewise-constant interpolation. ◮ Time is bounded. ◮ Offline computation. ◮ Specification language – Signal Temporal Logic

  5. Signal Temporal Logic Standard Semantics for Monitoring ϕ ::= x ≥ c | x ≤ c | F [ a , b ] ϕ | ϕ 1 U ϕ 2 | true | false | ¬ ϕ | ϕ 1 ∨ ϕ 2 | ϕ 1 ∧ ϕ 2 | A formula evaluates to true or false at a time point t . ◮ x ≤ c , if x ( t ) ≤ c . ◮ F [ a , b ] ϕ , if ϕ holds for some t ′ ∈ [ t + a , t + b ]. ◮ ϕ 1 U ϕ 2 , if ϕ 2 holds at some t ′ ≥ t , and ϕ 1 holds on [ t , t ′ ].

  6. Parameterized STL Semantics for Parametric Identification ϕ ::= x ≤ c | x ≥ c | x ≤ p | x ≥ p | F [ a , b ] ϕ | ϕ 1 U ϕ 2 | true | false | ¬ ϕ | ϕ 1 ∨ ϕ 2 | ϕ 1 ∧ ϕ 2 | For every time point t , we want to find the validity domain – for which parameter values the formula evaluates to true . ◮ x ≤ p : p ≥ x ( t ). ◮ F [ a , b ] ϕ : union of the validity domains on [ t + a , t + b ]. ◮ ϕ 1 U ϕ 2 : see paper. Single polarity – we want that a given parameter appears only in ≤ or only in ≥ expressions. Every validity domain is upward/downward-closed set of rectangles. There is a finite number of tightest parameter combinations.

  7. What PSTL Can Do? Motivation 1. Find system parameters from system traces. S. Jha et al., RV 2017 – extracting parameters from car sensor traces. For example, ◮ G ( x ≤ p 1 ∧ x ≥ p 2 ) – finds the range of x – between min p 1 and max p 2 . ◮ F ( x ≤ p 1 ∧ x ≥ p 2 ) – enumerates the possible values of x . The domain has the form ( p 1 ≥ x 1 ∧ p 2 ≤ x 1 ) ∨ ( p 1 ≥ x 1 ∧ p 2 ≤ x 1 ) ∨ · · · 2. Evaluate formulas with universal/existential quantifiers. Not this paper, see K. Havelund et al., FMCAD 2017.

  8. Example Extract high and low thresholds 2 x 1 0 0 5 10 15 20 25 30 Formula: G F [0 , t edge + t stab ] (( G [0 , t stab ] x ≤ p 1 ) ∨ ( G [0 , t stab ] x ≥ p 2 )) Validity domain at time 0: ( p 1 ≥ 2) ∨ ( p 1 ≥ 0 ∧ p 2 ≤ 2) ∨ ( p 2 ≤ 0) p 1 0 2 − 2 − p 2

  9. Previous Approaches E. Asarin, A. Donz´ e, O. Maler, D. Nickovic, RV 2011 B. Hoxha, A. Dokhanchi, G. Fainekos, STTT 2017 ◮ Allow time parameters. ◮ Search in parameter space (single polarity helps). ◮ Quantifier elimination in logical encoding.

  10. Our Approach Setting ◮ Piecewise-constant approximation. ◮ Single polarity. ◮ No time parameters. ◮ The validity signal (validity domain over time) is piecewise-constant. ◮ A single validity domain is an upward-closed set of boxes, representable as a set of points. Compute validity signals directly as maps from time segments to sets of boxes. Bottom-up over the formula structure: ◮ x ≤ p : directly, see next slide. ◮ F [ a , b ] ϕ : running union of validity signal of ϕ over the window [ t + a , t + b ]. ◮ ϕ 1 U ϕ 2 : see paper.

  11. Atomic Comparison x ≤ p 4 x 3 2 1 0 1 3 5 7 9 11 13 15 17 19 p ≥ 3 p ≥ 2 p ≥ 4 p ≥ 3 p ≥ 0 0 3 6 9 17 20

  12. Eventually p ≥ 3 p ≥ 2 p ≥ 4 p ≥ 3 p ≥ 0 F [1 , 8] x ≤ p 0 3 6 9 17 20 p ≥ 3 0 2 p ≥ 2 0 5 p ≥ 4 0 8 p ≥ 3 1 16 p ≥ 0 9 19 p ≥ 2 p ≥ 3 p ≥ 0 ∅ 0 5 9 19 20

  13. Eventually F [1 , 8] x ≤ p ◮ We adapt an algorithm by D. Lemire; originally linear in the length of the input. ◮ Fast in 1 dimension (1 parameter). ◮ Often reasonably fast in multiple dimensions; linear in the length of the input for a given formula. ◮ Not linear in general.

  14. More Pessimistic Example F ( x ≤ p 1 ∧ x ≥ p 2 ) Start with x ≤ p 1 ∧ x ≥ p 2 4 x 3 2 1 0 1 3 5 7 9 11 13 15 17 19 p 1 On [0 , 3] the validity domain is p 1 ≥ 3 ∧ − p 2 ≥ − 3. (3 , − 3) − p 2

  15. More Pessimistic Example F ( x ≤ p 1 ∧ x ≥ p 2 ) Start with x ≤ p 1 ∧ x ≥ p 2 4 x 3 2 1 0 1 3 5 7 9 11 13 15 17 19 (3 , − 3) (2 , − 2) (4 , − 4) (3 , − 3) (0 , 0) 0 3 6 9 17 20

  16. More Pessimistic Example F ( x ≤ p 1 ∧ x ≥ p 2 ) (3 , − 3) (2 , − 2) (4 , − 4) (3 , − 3) (0 , 0) 0 3 6 9 17 20 (3 , − 3) 0 3 (2 , − 2) 0 3 (4 , − 4) 0 3 (3 , − 3) 0 3 (0 , 0) 0 3

  17. More Pessimistic Example F ( x ≤ p 1 ∧ x ≥ p 2 ) Validity domain at time 0 enumerates signal values. p 1 (0 , 0) (2 , − 2) (3 , − 3) − p 2 (4 , − 4)

  18. Evaluation ◮ Prototype implementation in OCaml. ◮ Synthetic signals and output of a simulink model. ◮ Focus on examples where the validity domains have small number of boxes. ◮ In most examples, handle signals with 1M samples under a minute. For simple formulas, under 10 seconds.

  19. Evaluation Length / time, s Formula Signal 10 5 10 6 0.36 3.9 w sincos ϕ 1 = G ( x ≤ p 1 ∧ x ≥ p 2) w square 0.36 3.75 ϕ 2 = G ( x ≥ p ∧ y ≥ p ) w sincos 0.28 3.4 ϕ 3 = G ( y ≥ p U x ≥ p ) w sincos 0.31 3.4 ϕ 4 = G ( x ≤ 6 → F [0 , 50] ( x ≥ 6 ∨ x ≤ p )) 0.12 1.4 w square ϕ 5 , 1 = F [0 , 5 K ] ( x ≥ p 1 ∨ G [0 , 250] y ≥ p 2 ) 0.41 4.4 w sincos ϕ 5 , 2 = F [0 , 50 K ] ( x ≥ p 1 ∨ G [0 , 250] y ≥ p 2 ) 0.4 4.3 w sincos 4 44 ϕ 6 , 1 = G [0 , 5 K ] F [0 , 250] (( G [0 , 200] x ≤ p 1 ) ∨ ( G [0 , 200] x ≥ p 2 )) w square 0.75 8 2.5 42 w sincos ϕ 6 , 2 = G [0 , 50 K ] F [0 , 250] (( G [0 , 200] x ≤ p 1 ) ∨ ( G [0 , 200] x ≥ p 2 )) w square 0.67 8.7 w sincos TO TO ϕ 6 , 3 = G [0 , 50 K ] F [0 , 125] (( G [0 , 200] x ≤ p 1 ) ∨ ( G [0 , 200] x ≥ p 2 )) 0.66 8.1 w square ϕ 7 = G F [0 , 45] G [0 , 30] ( x cmd − resp ≤ p 1 ∧ x resp − cmd ≤ p 2 ) 0.56 6 w pitch

  20. Future Work ◮ Optimized Pareto set implementation. ◮ Large sets of points. ◮ Operations: union and intersection or complement. ◮ Sorted arrays in 2 dimensions, trees in 3 or more dimensions. ◮ Time parameters ◮ Real time is not piecewise-constant; need more than just boxes. ◮ Need fast set operations.

  21. Future Work ◮ Optimized Pareto set implementation. ◮ Large sets of points. ◮ Operations: union and intersection or complement. ◮ Sorted arrays in 2 dimensions, trees in 3 or more dimensions. ◮ Time parameters ◮ Real time is not piecewise-constant; need more than just boxes. ◮ Need fast set operations. Thanks

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