Robustness issues in timed models Nicolas Markey LSV, CNRS & - - PowerPoint PPT Presentation

robustness issues in timed models
SMART_READER_LITE
LIVE PREVIEW

Robustness issues in timed models Nicolas Markey LSV, CNRS & - - PowerPoint PPT Presentation

Robustness issues in timed models Nicolas Markey LSV, CNRS & ENS Cachan, France (based on joint works with Patricia Bouyer, Erwin Fang, Pierre-Alain Reynier, Ocan Sankur) (also starring Martin De Wulf, Laurent Doyen, Jean-Fran cois


slide-1
SLIDE 1

Robustness issues in timed models

Nicolas Markey

LSV, CNRS & ENS Cachan, France

(based on joint works with Patricia Bouyer, Erwin Fang, Pierre-Alain Reynier, Ocan Sankur) (also starring Martin De Wulf, Laurent Doyen, Jean-Fran¸ cois Raskin)

QAPL’14 – Grenoble, France

slide-2
SLIDE 2

Modelling real-time systems

slide-3
SLIDE 3

Modelling real-time systems

H

  • w

s h

  • u

l d w e m

  • d

e l r e a l

  • t

i m e c

  • n

s t r a i n t s ?

slide-4
SLIDE 4

Reasoning about real-time systems

Example (A computer mouse)

idle left right

left button? right button? left click! left button? left double click! right click! right button? right double click!

slide-5
SLIDE 5

Reasoning about real-time systems

Timed automata [AD90]

A timed automaton is made of a transition system,

Example (A computer mouse)

idle left right

left button? right button? left click! left button? left double click! right click! right button? right double click!

slide-6
SLIDE 6

Reasoning about real-time systems

Timed automata [AD90]

A timed automaton is made of a transition system, a set of clocks,

Example (A computer mouse)

idle left right

left button? right button? left click! left button? left double click! right click! right button? right double click! x

slide-7
SLIDE 7

Reasoning about real-time systems

Timed automata [AD90]

A timed automaton is made of a transition system, a set of clocks, timing constraints on states and transitions.

Example (A computer mouse)

idle left

x≤300

right

x≤300

left button? x := 0 right button? x := 0 x = 300 left click! x ≤ 300 left button? left double click! x = 300 right click! x ≤ 300 right button? right double click! x

slide-8
SLIDE 8

Discrete-time semantics

...because computers are digital!

slide-9
SLIDE 9

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t

slide-10
SLIDE 10

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t

slide-11
SLIDE 11

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t i

slide-12
SLIDE 12

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t i

slide-13
SLIDE 13

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t i

slide-14
SLIDE 14

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under discrete-time, the output never changes:

t i

slide-15
SLIDE 15

Discrete-time semantics

...because computers are digital!

Example ([Alur91])

i

  • 1

NOT

[1,2]

  • 2

NOT

[1,2]

  • 3

NOT

[1,2]

  • 4

XOR

[1]

  • 5

XOR

[1]

  • 6

XOR

[1]

  • 7

[1]

OR

[1]

  • 8
  • under continuous-time, the output can change to 1:

t i

slide-16
SLIDE 16

Continuous-time semantics

...real-time models for real-time systems!

slide-17
SLIDE 17

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-18
SLIDE 18

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-19
SLIDE 19

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-20
SLIDE 20

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-21
SLIDE 21

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-22
SLIDE 22

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-23
SLIDE 23

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-24
SLIDE 24

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-25
SLIDE 25

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-26
SLIDE 26

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-27
SLIDE 27

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

slide-28
SLIDE 28

Continuous-time semantics

...real-time models for real-time systems!

Example

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2 y x 1 1 2 2

Theorem ([AD90,ACD93, ...])

Reachability in timed automata is decidable (as well as many other important properties).

slide-29
SLIDE 29

Regions and zones

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2

slide-30
SLIDE 30

Regions and zones

x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2

slide-31
SLIDE 31

Regions and zones

Zones

Zones are a coarser abstraction: (x ≥ 2) ∧ (0 ≤ y ≤ 3) ∧ (x − y ≤ 4)

y x

slide-32
SLIDE 32

Regions and zones

Zones

Zones are a coarser abstraction: (x ≥ 2) ∧ (0 ≤ y ≤ 3) ∧ (x − y ≤ 4)

y x

Representation as DBM:  

x y

−2

x

+∞ 4

y

3 +∞   ≡  

x y

−2

x

7 4

y

3 1  

slide-33
SLIDE 33

Regions and zones

Zones

ℓ1 ℓ2

x≥1 ∧ y≤2 y:=0

The predecessors of (ℓ2, x ≤ 3 ∧ y − x ≤ 0) are computed as = Pretime   ∩ Unresety      

slide-34
SLIDE 34

Regions and zones

Zones

ℓ1 ℓ2

x≥1 ∧ y≤2 y:=0

The predecessors of (ℓ2, x ≤ 3 ∧ y − x ≤ 0) are computed as = Pretime   ∩ Unresety       efficient implementations

slide-35
SLIDE 35

Regions and zones

Zones

ℓ1 ℓ2

x≥1 ∧ y≤2 y:=0

The predecessors of (ℓ2, x ≤ 3 ∧ y − x ≤ 0) are computed as = Pretime   ∩ Unresety       efficient implementations successful applications

slide-36
SLIDE 36

Outline of the talk

1

Discrete time vs. dense time

2

From models to implementations

3

Checking robust safety Enlarging clock constraints Shrinking clock constraints

4

Checking robust controllability Parametrized perturbations Permissive strategies

5

Conclusions and future works

slide-37
SLIDE 37

Outline of the talk

1

Discrete time vs. dense time

2

From models to implementations

3

Checking robust safety Enlarging clock constraints Shrinking clock constraints

4

Checking robust controllability Parametrized perturbations Permissive strategies

5

Conclusions and future works

slide-38
SLIDE 38

From models to implementations

Example: Patriot anti-ballistic-missile failure

25 February 1991, during Gulf war. 28 soldiers died.

slide-39
SLIDE 39

From models to implementations

Example: Patriot anti-ballistic-missile failure

25 February 1991, during Gulf war. 28 soldiers died.

Problem: clock drift

Internal clock incremented by 1/10 every 1/10 s.

x=0.1,x:=0 clock+=0.1

slide-40
SLIDE 40

From models to implementations

Example: Patriot anti-ballistic-missile failure

25 February 1991, during Gulf war. 28 soldiers died.

Problem: clock drift

Internal clock incremented by 1/10 every 1/10 s. Clock stored in 24-bit register: 1 10 − 1 10

  • 24 bit

≃ 10−7

x=0.1,x:=0 clock+=0.1

After 100 hours, the total drift was 0.34 seconds. The incoming missile could not be destroyed.

slide-41
SLIDE 41

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

slide-42
SLIDE 42

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Example (Zeno behaviors)

x<1 ∧ y<1 x:=0 y=1 y x 1 1

slide-43
SLIDE 43

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Example (Converge phenomena)

x≤1 x≤1 x≤1 x=1 x:=0 y=1 z:=0 z>0 y:=0 y x 1 1

slide-44
SLIDE 44

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Example (Strict timing constraints)

Pid

xid≤2 r:=0 r==0 xid:=0 r:=id xid:=0 r:=0 xid:=0 r=id xid>2

When P1 and P2 run in parallel (sharing variable r), the state where both of them are in is not reachable. This property is lost when xid > 2 is replaced with xid ≥ 2.

slide-45
SLIDE 45

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Parametrized semantics

parametrized discrete-time semantics: Does there exists a time step δ (sampling rate) under which the system behaves correctly?

slide-46
SLIDE 46

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Parametrized semantics

parametrized discrete-time semantics: Does there exists a time step δ (sampling rate) under which the system behaves correctly?

  • reachability is undecidable [CHR02]
  • untimed-language inclusion is decidable [AKY10]
slide-47
SLIDE 47

From models to implementations

the continuous-time semantics is a mathematical idealization it assumes zero-delay transitions; it assumes infinite precision of the clocks; it assumes immediate communication between systems.

Parametrized semantics

parametrized discrete-time semantics: Does there exists a time step δ (sampling rate) under which the system behaves correctly?

  • reachability is undecidable [CHR02]
  • untimed-language inclusion is decidable [AKY10]

parametrized continuous-time semantics: Does the system behave correctly under continuous- time semantics with imprecisions up to some δ?

slide-48
SLIDE 48

Outline of the talk

1

Discrete time vs. dense time

2

From models to implementations

3

Checking robust safety Enlarging clock constraints Shrinking clock constraints

4

Checking robust controllability Parametrized perturbations Permissive strategies

5

Conclusions and future works

slide-49
SLIDE 49

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

slide-50
SLIDE 50

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 x=1 y:=0 x≤2, x:=0 y≥2, y:=0 x=0 ∧ y≥2

slide-51
SLIDE 51

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-52
SLIDE 52

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-53
SLIDE 53

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-54
SLIDE 54

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-55
SLIDE 55

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-56
SLIDE 56

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-57
SLIDE 57

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-58
SLIDE 58

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-59
SLIDE 59

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-60
SLIDE 60

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-61
SLIDE 61

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-62
SLIDE 62

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3 x∈[1−δ,1+δ] y:=0 x≤2+δ, x:=0 y≥2−δ, y:=0 x≤δ ∧ y≥2−δ

slide-63
SLIDE 63

Enlarged semantics for timed automata

a transition can be taken at any time in [t − δ; t + δ].

Example

y x 1 1 2 2 3 3 y x 1 1 2 2 3 3

Theorem ([Pur98,DDMR04])

Parametrized robust safety is decidable.

slide-64
SLIDE 64

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′).

y x 1 1 2 2 3 3

slide-65
SLIDE 65

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′).

y x 1 1 2 2 3 3

slide-66
SLIDE 66

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′).

y x 1 1 2 2 3 3

slide-67
SLIDE 67

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′). γ

y x 1 1 2 2 3 3

slide-68
SLIDE 68

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′). γ

y x 1 1 2 2 3 3

slide-69
SLIDE 69

Extended region automaton

For any location ℓ and any two regions r and r′, if r ∩ r′ = ∅ and (ℓ, r′) belongs to an SCC of R(A), then we add a transition (ℓ, r)

γ

− → (ℓ, r′). γ

y x 1 1 2 2 3 3

slide-70
SLIDE 70

Shrinking timing constraints

Counteracting guard enlargement

Shrinking turns constraints [a, b] into [a + δ, b − δ]. In particular, punctual constraints become empty.

slide-71
SLIDE 71

Shrinking timing constraints

Counteracting guard enlargement

Shrinking turns constraints [a, b] into [a + δ, b − δ]. In particular, punctual constraints become empty.

Definition

A timed automaton is shrinkable if, for some δ > 0, its shrunk automaton (time-abstract) simulates the original automaton.

Theorem ([SBM11])

Shrinkability is decidable in EXPTIME.

slide-72
SLIDE 72

Shrinking timing constraints

Counteracting guard enlargement

Shrinking turns constraints [a, b] into [a + δ, b − δ]. In particular, punctual constraints become empty.

Definition

A timed automaton is shrinkable if, for some δ > 0, its shrunk automaton (time-abstract) simulates the original automaton.

Theorem ([SBM11])

Shrinkability is decidable in EXPTIME. Main tools: parametrized shrunk DBMs max-plus fixpoint equations

slide-73
SLIDE 73

Shrinking timing constraints

Counteracting guard enlargement

Shrinking turns constraints [a, b] into [a + δ, b − δ]. In particular, punctual constraints become empty.

Definition

A timed automaton is shrinkable if, for some δ > 0, its shrunk automaton (time-abstract) simulates the original automaton.

Theorem ([SBM11])

Shrinkability is decidable in EXPTIME. prototype tool: http://www.lsv.ens-cachan.fr/Software/shrinktech/

slide-74
SLIDE 74

Shrinking timing constraints

Example

x≤2−k5δ y:=0 2−k1δ≤x≤4−k2δ 2−k3δ≤y≤4−k4δ

slide-75
SLIDE 75

Shrinking timing constraints

Example

x≤2−k5δ y:=0 2−k1δ≤x≤4−k2δ 2−k3δ≤y≤4−k4δ k5δ

⊆ Unresety     Pretime     

k3δ k4δ k1δ k2δ

         

slide-76
SLIDE 76

Shrinking timing constraints

Example

x≤2−k5δ y:=0 2−k1δ≤x≤4−k2δ 2−k3δ≤y≤4−k4δ k5δ

⊆ Unresety     

(k2+k3)δ

    

slide-77
SLIDE 77

Shrinking timing constraints

Example

x≤2−k5δ y:=0 2−k1δ≤x≤4−k2δ 2−k3δ≤y≤4−k4δ k5δ

(k2+k3)δ

slide-78
SLIDE 78

Shrinking timing constraints

Example

x≤2−k5δ y:=0 2−k1δ≤x≤4−k2δ 2−k3δ≤y≤4−k4δ k5δ

(k2+k3)δ

  • k5 = max(k5, k2 + k3)
slide-79
SLIDE 79

Outline of the talk

1

Discrete time vs. dense time

2

From models to implementations

3

Checking robust safety Enlarging clock constraints Shrinking clock constraints

4

Checking robust controllability Parametrized perturbations Permissive strategies

5

Conclusions and future works

slide-80
SLIDE 80

Game-based approach to robustness

Solving robust reachability

Player 1 proposes a delay d and a transition t; transition t is taken after some delay in [d − δ, d + δ] chosen by Player 2.

slide-81
SLIDE 81

Game-based approach to robustness

Solving robust reachability

Player 1 proposes a delay d and a transition t; transition t is taken after some delay in [d − δ, d + δ] chosen by Player 2. Consider a transition with guard x ≤ 3 ∧ y ≥ 1: strict semantics

x=3 y=1

δ δ d loose semantics

x=3 y=1

d

slide-82
SLIDE 82

Game-based approach to robustness

Solving robust reachability

Player 1 proposes a delay d and a transition t; transition t is taken after some delay in [d − δ, d + δ] chosen by Player 2.

Theorem ([BMS12,SBMR13])

Robust reachability is EXPTIME-complete in the loose semantics. Robust reachability and repeated reachability are PSPACE-complete in the strict semantics.

slide-83
SLIDE 83

Shrunk DBMs for the loose semantics

Extend the region automaton into a 2-player turn-based game

x = y = 1 y := 0

slide-84
SLIDE 84

Shrunk DBMs for the loose semantics

Extend the region automaton into a 2-player turn-based game

x = y = 1 y := 0 r0 r1 r2 r3 r′ r0 r′ r1, s1 r2, s2 r3, s3

slide-85
SLIDE 85

Orbit graphs for the strict semantics

ℓ0 ℓ1 ℓ2

1<x<2 y:=0 y≥2,y:=0 x≤2,x:=0

y x 1 1 2 2

ℓ1 ∆

y x 1 1 2 2

ℓ1 e1

y x 1 1 2 2

ℓ2 ∆

y x 1 1 2 2

ℓ2 e2

y x 1 1 2 2

ℓ1 ∆

y x 1 1 2 2

ℓ1

slide-86
SLIDE 86

Orbit graphs for the strict semantics

slide-87
SLIDE 87

Orbit graphs for the strict semantics

Definition

A cycle π is forgetful if its orbit graph is strongly connected. A cycle π is aperiodic if πk is forgetful, for all k.

slide-88
SLIDE 88

Orbit graphs for the strict semantics

Definition

A cycle π is forgetful if its orbit graph is strongly connected. A cycle π is aperiodic if πk is forgetful, for all k.

Theorem

The automaton is robustly controllable if, and only if, it has a reachable aperiodic cycle.

slide-89
SLIDE 89

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

slide-90
SLIDE 90

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the untimed setting... [BDMR09, BMOU11]

a b c d

  • 5

1 8 1 6 1 2

slide-91
SLIDE 91

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the untimed setting... [BDMR09, BMOU11]

a b c d

  • 5

1 8 1 6 1 2

a c b d b

slide-92
SLIDE 92

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the untimed setting... [BDMR09, BMOU11]

a b c d

  • 5

1 8 1 6 1 2

a c b d b

  • 1

6 6

slide-93
SLIDE 93

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

Permissive strategies propose intervals of delays. Our setting: the penalty assigned to interval [a, b] is 1/(b − a).

slide-94
SLIDE 94

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

ℓ0 ℓ1 ℓ2

  • a, x ≥ 2

a, x < 2 b, x ≤ 1 a, x ≤ 2 b, x := 0

slide-95
SLIDE 95

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

ℓ0 ℓ1 ℓ2

  • a, x ≥ 2

a, x < 2 b, x ≤ 1 a, x ≤ 2 b, x := 0 Possible (memoryless) strategy: in ℓ0, play (a, [0, 2)); in ℓ1:

if x ≤ 1, play (b, [0, 1 − x]);

  • therwise, play (a, [0, 2 − x]);

in ℓ2, play (b, [0, +∞))

slide-96
SLIDE 96

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

ℓ0 ℓ1 ℓ2

  • a, x ≥ 2

a, x < 2 b, x ≤ 1 a, x ≤ 2 b, x := 0 Possible (memoryless) strategy: in ℓ0, play (a, [0, 2)); in ℓ1:

if x ≤ 1, play (b, [0, 1 − x]);

  • therwise, play (a, [0, 2 − x]);

in ℓ2, play (b, [0, +∞))

  • penalty = +∞
slide-97
SLIDE 97

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

ℓ0 ℓ1 ℓ2

  • a, x ≥ 2

a, x < 2 b, x ≤ 1 a, x ≤ 2 b, x := 0 Possible (memoryless) strategy: in ℓ0, play (a, [0, 1]); in ℓ1:

if x = 0, play (b, [0, 1]);

  • therwise, play (a, [0, 2 − x]);

in ℓ2, play (b, [0, +∞))

slide-98
SLIDE 98

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting...

ℓ0 ℓ1 ℓ2

  • a, x ≥ 2

a, x < 2 b, x ≤ 1 a, x ≤ 2 b, x := 0 Possible (memoryless) strategy: in ℓ0, play (a, [0, 1]); in ℓ1:

if x = 0, play (b, [0, 1]);

  • therwise, play (a, [0, 2 − x]);

in ℓ2, play (b, [0, +∞))

  • penalty = 1
slide-99
SLIDE 99

Synthesizing permissive strategies

Permissive strategies

Permissive strategies can propose several moves rather than a single one.

In the timed setting... Theorem

For one-clock timed games: Memoryless optimal-penalty strategies exist. They can be computed in polynomial time.

slide-100
SLIDE 100

Outline of the talk

1

Discrete time vs. dense time

2

From models to implementations

3

Checking robust safety Enlarging clock constraints Shrinking clock constraints

4

Checking robust controllability Parametrized perturbations Permissive strategies

5

Conclusions and future works

slide-101
SLIDE 101

Conclusion and challenges

Conclusions

Robustness issues identified long ago... Several attempts, but no satisfactory solution yet!

slide-102
SLIDE 102

Conclusion and challenges

Conclusions

Robustness issues identified long ago... Several attempts, but no satisfactory solution yet!

Challenges and open questions

symbolic algorithms; measuring robustness, using distances between automata; link between “syntactic distance” and “semantic distance” probabilistic approach to robustness; evaluate expected time before a new state is visited. investigate robustness in weighted timed automata; energy constraints; imprecision on cost rates; synthesis of robust strategies.