Weighted Timed Automata: Optimization Problems

Weighted Timed Automata:
Optimization Problems
Patricia Bouyer
LSV – ENS Cachan & CNRS – France
Based on joint works with Thomas Brihaye (UMH, Belgium), Ed Brinksma (Twente University, The Netherlands),
Véronique Bruyère (UMH, Belgium), Franck Cassez (IRCCyN, France), Emmanuel Fleury (LaBRI, France),
Kim G. Larsen (Aalborg University, Denmark), Nicolas Markey (LSV, France), Jean-François Raskin (ULB, Belgium),
and Jacob Illum Rasmussen (Aalborg University, Denmark)
1/39
Introduction
Outline
1. Introduction
2. Timed automata with costs
3. Optimal timed games
4. Conclusion
2/39
Introduction
A starting example
3/39
Introduction
Natural questions
I
Can I reach Pontivy from Oxford?
Introduction
Natural questions
I
Can I reach Pontivy from Oxford?
I
What is the minimal time to reach
Pontivy from Oxford?
Introduction
Natural questions
I
Can I reach Pontivy from Oxford?
I
What is the minimal time to reach
Pontivy from Oxford?
I
What is the minimal fuel consumption to
reach Pontivy from Oxford?
Introduction
Natural questions
I
Can I reach Pontivy from Oxford?
I
What is the minimal time to reach
Pontivy from Oxford?
I
What is the minimal fuel consumption to
reach Pontivy from Oxford?
I
What if there is an unexpected event?
4/39
Introduction
A first model of the system
Oxford
Dover
Poole
Stansted
London
Calais
St Malo
Nantes
Paris
Pontivy
5/39
Introduction
Can I reach Pontivy from Oxford?
Oxford
Dover
Poole
Stansted
London
Calais
St Malo
Nantes
Paris
Pontivy
This is a reachability question in a finite graph: Yes, I can!
6/39
Introduction
A second model of the system
Oxford
0
0
x :=
0
0
=
x:
x :=
x :=
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
9≤x≤15
x=27
x:=0
Stansted
x=17
London
x=3
St Malo
x:=0
Calais
27≤x≤30
x:=0
x:=0
17
x:
=
x:=0
Nantes
≤
x≤
21
x=13
x:=0
Paris
9≤
x≤
12
x=6
0
6
x≤
3≤ = 0
27 x :
≤
x≤
32
3≤
x≤
6
0
4
2
x=
x:
=
4
≤1
≤x
12
Pontivy
7/39
Introduction
How long will that take?
Oxford
0
0
x :=
0
0
=
x:
x :=
x :=
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
9≤x≤15
x=27
x:=0
Stansted
x=17
London
x=3
St Malo
x:=0
Calais
27≤x≤30
x:=0
x:=0
Nantes
17
≤
x≤
x:
21
=
0
x:=0
Paris
9≤
x≤
12
6
x≤
3≤ = 0
27 x :
≤
x≤
32
x=13
x=6
x:=0
3≤
x≤
x:
6
=
0
24
x=
4
≤1
≤x
12
Pontivy
It is a reachability (and optimization) question
in a timed automaton: at least 350mn = 5h50mn!
8/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
safe
x:=0
15
x≤
y :=
repairing
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
0
y :=0
failsafe
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
safe
x:=0
15
x≤
y :=
repairing
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
0
y :=0
failsafe
safe
x
y
0
0
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
safe
x:=0
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
23
−→
repairing
0
y :=0
failsafe
safe
0
23
0
23
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
23
−→
safe
problem
−−−−−→
repairing
0
y :=0
failsafe
alarm
0
23
0
0
23
23
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
23
−→
safe
problem
−−−−−→
repairing
alarm
0
15.6
−−→
y :=0
failsafe
alarm
0
23
0
15.6
0
23
23
38.6
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
23
−→
safe
problem
−−−−−→
repairing
alarm
0
15.6
−−→
y :=0
failsafe
alarm
delayed
−−−−−→
failsafe
0
23
0
15.6
15.6
0
23
23
38.6
0
···
failsafe
···
15.6
0
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
safe
problem
−−−−−→
alarm
0
15.6
−−→
y :=0
failsafe
alarm
delayed
−−−−−→
failsafe
0
23
0
15.6
15.6
0
23
23
38.6
0
failsafe
···
23
−→
repairing
2.3
−−→
···
failsafe
15.6
17.9
0
2.3
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
safe
problem
−−−−−→
alarm
0
15.6
−−→
y :=0
failsafe
alarm
delayed
−−−−−→
failsafe
0
23
0
15.6
15.6
0
23
23
38.6
0
failsafe
···
23
−→
repairing
2.3
−−→
failsafe
repair
−−−−→
···
reparation
15.6
17.9
17.9
0
2.3
0
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
safe
problem
−−−−−→
alarm
0
15.6
−−→
y :=0
failsafe
alarm
delayed
−−−−−→
failsafe
0
23
0
15.6
15.6
0
23
23
38.6
0
failsafe
···
23
−→
repairing
2.3
−−→
failsafe
repair
−−−−→
reparation
22.1
−−→
···
reparation
15.6
17.9
17.9
40
0
2.3
0
22.1
9/39
Introduction
An example of a timed automaton
done
y
, 22≤
≤25
,
air
rep
problem,
x:=0
safe
15
x≤
y :=
0
repair
alarm
2≤y ∧x≤56
15≤
x≤
del
16
aye
d,
y
:=
safe
x
y
safe
problem
−−−−−→
alarm
0
15.6
−−→
y :=0
failsafe
alarm
delayed
−−−−−→
failsafe
0
23
0
15.6
15.6
0
23
23
38.6
0
failsafe
···
23
−→
repairing
2.3
−−→
failsafe
repair
−−−−→
reparation
22.1
−−→
reparation
done
−−−→
···
safe
15.6
17.9
17.9
40
40
0
2.3
0
22.1
22.1
9/39
Introduction
Timed automata
Theorem [AD90]
The reachability problem is decidable (and PSPACE-complete) for timed
automata.
10/39
Introduction
Timed automata
Theorem [AD90]
The reachability problem is decidable (and PSPACE-complete) for timed
automata.
finite bisimulation
timed automaton
large (but finite) automaton
(region automaton)
10/39
Introduction
The region abstraction
y
3
2
1
0
1
2
3
x
11/39
Introduction
The region abstraction
y
3
2
1
0
I
1
2
3
x
“compatibility” between regions and constraints
11/39
Introduction
The region abstraction
y
3
2
•
1
0
1
•
2
3
x
I
“compatibility” between regions and constraints
I
“compatibility” between regions and time elapsing
11/39
Introduction
The region abstraction
y
3
2
•
1
0
1
•
2
3
x
I
“compatibility” between regions and constraints
I
“compatibility” between regions and time elapsing
11/39
Introduction
The region abstraction
y
3
2
1
0
1
2
3
x
I
“compatibility” between regions and constraints
I
“compatibility” between regions and time elapsing
+ an equivalence of finite index
a time-abstract bisimulation
11/39
Introduction
The region abstraction
time elapsing
reset to 0
12/39
Introduction
Time-optimal reachability
Theorem [CY92]
The time-optimal reachability problem is decidable (and PSPACEcomplete) for timed automata.
13/39
Introduction
A third model of the system
Oxford
0
x:
3
x :=
0
0
=
3
0
x :=
x :=
3
3
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
London +2
2
x=3
2
3
x:=0
1
17
x:
=
3
9≤
x≤
12
3
x=17
7
x:=0
x:=0
Stansted
x:=0
Calais
27≤x≤30
St Malo
9≤x≤15
x=27
x:=0
≤
x≤
21
Nantes
x=13
x=6
0
+2
Paris 3≤
6
x≤
x≤
x
6
≤
0
:=
3
0
27 x :=
≤
4
x≤
2
32
x=
x:=0
3
2
4
≤1
≤x
12
Pontivy
14/39
Introduction
How much fuel will I use?
Oxford
0
x:
3
x :=
0
0
=
3
0
x :=
x :=
3
3
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
London +2
2
x=3
2
3
x:=0
1
17
x:
3
9≤
x≤
12
3
x=17
7
x:=0
x:=0
Stansted
x:=0
Calais
27≤x≤30
St Malo
9≤x≤15
x=27
x:=0
=
≤
x≤
21
Nantes
x=13
x=6
0
+2
Paris 3≤
6
x≤
x≤
x
6
:=
3≤ = 0
0
27 x :
≤
x≤
24
32
x=
x:=0
3
2
4
≤1
≤x
12
Pontivy
It is a quantitative (optimization) problem
in a priced timed automaton: at least 68 anti-planet units!
15/39
Timed automata with costs
Outline
1. Introduction
2. Timed automata with costs
3. Optimal timed games
4. Conclusion
16/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
dcost
dt =1
x =2
,
st=
c , co
+7
,
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
`2
x =2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
st=
c , co
,
+7
dcost
dt =1
1.3
c
u
0.7
c
(`0 , (0, 0)) −−→ (`0 , (1.3, 1.3)) −
→ (`1 , (1.3, 0)) −
→ (`3 , (1.3, 0)) −−→ (`3 , (2, 0.7)) −
→
cost :
6.5
+
0
+
0
+
0.7
+
7
,
=
14.2
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
x =2
`2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
x =2
`3
dcost
dt =1
Question: what is the optimal cost for reaching
,
st=
c , co
+7
,
,?
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
x =2
`2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
x =2
`3
,
st=
c , co
dcost
dt =1
Question: what is the optimal cost for reaching
+7
,
,?
5t + 10(2 − t) + 1 , 5t + (2 − t) + 7
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
x =2
`2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
x =2
`3
,
st=
c , co
+7
dcost
dt =1
Question: what is the optimal cost for reaching
,
,?
min ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 )
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
x =2
`2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
x =2
`3
dcost
dt =1
Question: what is the optimal cost for reaching
inf
0≤t≤2
,
st=
c , co
+7
,
,?
min ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 9
17/39
Timed automata with costs
HSCC’01: weighted/timed automata
dcost
dt =10
x =2
`2
u
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
x =2
`3
dcost
dt =1
Question: what is the optimal cost for reaching
inf
0≤t≤2
,
st=
c , co
+7
,
,?
min ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 9
Ü strategy: leave immediately `0 , go to `3 , and wait there 2 t.u.
17/39
Timed automata with costs
Optimal reachability
The idea “go through corners” extends in the general case.
Theorem [ALP01,BFH+01,BBBR07]
Optimal reachability is decidable in timed automata.
It is PSPACE-complete.
18/39
Timed automata with costs
The region abstraction is not fine enough
time elapsing
reset to 0
19/39
Timed automata with costs
The corner-point abstraction
0
3
0
0
7
0
0
3
7
20/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
21/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
t1
t2
t3
t4
t5
···
21/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
t1
t2
x≤2
t3
t4
t5
···
8
< t +t ≤2
1
2
:
21/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
t1
t2
y :=0
x≤2
t3
t4
y ≥5
t5
···
8
< t +t ≤2
1
2
: t2 +t3 +t4 ≥5
21/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
t1
t2
y :=0
x≤2
t3
t4
t5
···
y ≥5
8
< t +t ≤2
1
2
: t2 +t3 +t4 ≥5
Lemma
Let Z be a bounded zone and f be a function
f : (t1 , ..., tn ) 7→
n
X
ci ti + c
i=1
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
21/39
Timed automata with costs
From timed to discrete behaviours
Optimal reachability as a linear programming problem
t1
t2
y :=0
x≤2
t3
t4
t5
···
y ≥5
8
< t +t ≤2
1
2
: t2 +t3 +t4 ≥5
Lemma
Let Z be a bounded zone and f be a function
f : (t1 , ..., tn ) 7→
n
X
ci ti + c
i=1
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
Ü for every finite path π in A, there exists a path Π in Acp such that
cost(Π) ≤ cost(π)
[Π is a “corner-point projection” of π]
21/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp ,
22/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0,
22/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0, there exists a path πε of A s.t.
kΠ − πε k∞ < ε
22/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0, there exists a path πε of A s.t.
kΠ − πε k∞ < ε
For every η > 0, there exists ε > 0 s.t.
kΠ − πε k∞ < ε ⇒ |cost(Π) − cost(πε )| < η
22/39
Timed automata with costs
Mean-Cost Optimization
att?
x:=0
x≤D
Ċ =P
High
att!
Ṙ=G
x:=0
z≥S
z:=0
Op
x=D
att?
Ċ =p
Ṙ=g
Low
Question: How to minimize limn→+∞
accumulated cost(πn )
accumulated reward(πn ) ?
23/39
Timed automata with costs
An example
Two machines M1 (D = 3, P = 3, G = 4, p = 5, g = 3) and
M2 (D = 6, P = 3, G = 2, p = 5, g = 2).
An operator O(4).
M1 H
L
H
M2
L
O
Time
1
1
2
1
4
8
12
16
Schedule with ratio 1.455
M1 H
L
H
M2
L
O
Time
1
1
1
1
4
8
12
16
Schedule with ratio 1.478
24/39
Timed automata with costs
Mean-cost optimization
Theorem [BBL04,BBL08]
The mean-cost optimization problem is decidable (and PSPACE-complete)
for priced timed automata.
+ The corner-point abstraction is sound and complete.
25/39
Timed automata with costs
From timed to discrete behaviours
Ü Finite behaviours: based on the following property
Lemma
Let Z be a bounded zone and f be a function
Pn
ci ti + c
f : (t1 , ..., tn ) 7→ Pi=1
n
i=1 ri ti + r
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
26/39
Timed automata with costs
From timed to discrete behaviours
Ü Finite behaviours: based on the following property
Lemma
Let Z be a bounded zone and f be a function
Pn
ci ti + c
f : (t1 , ..., tn ) 7→ Pi=1
n
i=1 ri ti + r
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
Ü for every finite path π in A, there exists a path Π in Acp such that
mean-cost(Π) ≤ mean-cost(π)
26/39
Timed automata with costs
From timed to discrete behaviours
Ü Finite behaviours: based on the following property
Lemma
Let Z be a bounded zone and f be a function
Pn
ci ti + c
f : (t1 , ..., tn ) 7→ Pi=1
n
i=1 ri ti + r
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
I
Ü for every finite path π in A, there exists a path Π in Acp such that
mean-cost(Π) ≤ mean-cost(π)
Infinite behaviours: decompose each sufficiently long projection
into cycles
The linear part will be negligible!
26/39
Timed automata with costs
From timed to discrete behaviours
Ü Finite behaviours: based on the following property
Lemma
Let Z be a bounded zone and f be a function
Pn
ci ti + c
f : (t1 , ..., tn ) 7→ Pi=1
n
i=1 ri ti + r
well-defined on Z . Then infZ f is obtained on the border of Z with integer coordinates.
I
Ü for every finite path π in A, there exists a path Π in Acp such that
mean-cost(Π) ≤ mean-cost(π)
Infinite behaviours: decompose each sufficiently long projection
into cycles
The linear part will be negligible!
Ü the optimal cycle of Acp is better than any infinite path of A!
26/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp ,
27/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0,
27/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0, there exists a path πε of A s.t.
kΠ − πε k∞ < ε
27/39
Timed automata with costs
From discrete to timed behaviours
Approximation of abstract paths:
For any path Π of Acp , for any ε > 0, there exists a path πε of A s.t.
kΠ − πε k∞ < ε
For every η > 0, there exists ε > 0 s.t.
kΠ − πε k∞ < ε ⇒ |mean-cost(Π) − mean-cost(πε )| < η
27/39
Timed automata with costs
Uppaal Cora
A branch of Uppaal for cost optimal
reachability
28/39
Optimal timed games
Outline
1. Introduction
2. Timed automata with costs
3. Optimal timed games
4. Conclusion
29/39
Optimal timed games
What if an unexpected event happens?
Oxford
0
x:
3
x :=
0
0
=
3
0
x :=
x :=
3
3
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
London +2
2
x=3
2
3
x:=0
1
17
x:
=
3
9≤
x≤
12
3
x=17
7
x:=0
x:=0
Stansted
x:=0
Calais
27≤x≤30
St Malo
9≤x≤15
x=27
x:=0
≤
x≤
21
Nantes
x=13
x=6
0
+2
Paris 3≤
6
x≤
x≤
x
6
≤
0
:=
3
0
27 x :=
≤
4
x≤
2
32
x=
x:=0
3
2
4
≤1
≤x
12
Pontivy
30/39
Optimal timed games
What if an unexpected event happens?
Oxford
0
x:
3
x :=
0
0
=
3
0
x :=
x :=
3
3
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
London +2
2
x=3
2
3
x:=0
1
17
x:
=
3
9≤
x≤
12
3
x=17
7
x:=0
x:=0
Flight
Stansted
cancelled!
x:=0
Calais
27≤x≤30
St Malo
9≤x≤15
x=27
x:=0
≤
x≤
21
Nantes
x=13
x=6
0
+2
On
strike!!!
Paris 3≤
6
x≤
x≤
x
6
≤
0
:=
3
0
27 x :=
≤
4
x≤
2
32
x=
x:=0
3
2
4
≤1
≤x
12
Pontivy
30/39
Optimal timed games
What if an unexpected event happens?
Oxford
0
x:
3
x :=
0
0
=
3
0
x :=
x :=
3
3
21≤x≤24
10≤x≤12
12≤x≤15
Dover
Poole
14≤x≤15
x:=0
London +2
2
x=3
2
3
x:=0
1
17
x:
=
3
9≤
x≤
12
3
x=17
7
x:=0
x:=0
Flight
Stansted
cancelled!
x:=0
Calais
27≤x≤30
St Malo
9≤x≤15
x=27
x:=0
≤
x≤
21
Nantes
x=13
x=6
0
+2
On
strike!!!
Paris 3≤
6
x≤
x≤
x
6
≤
0
:=
3
0
27 x :=
≤
4
x≤
2
32
x=
x:=0
3
2
4
≤1
≤x
12
Pontivy
+ modelled as timed games
30/39
Optimal timed games
A simple example of timed games
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
(y =0)
u
`3
,c ,
x =2
=+
cost
7
31/39
Optimal timed games
A simple example of timed games
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
(y =0)
u
`3
,c ,
x =2
=+
cost
7
31/39
Optimal timed games
Decidability of timed games
Theorem [AMPS98] [HK99]
Safety and reachability control in timed automata are decidable and
EXPTIME-complete.
32/39
Optimal timed games
Decidability of timed games
Theorem [AMPS98] [HK99]
Safety and reachability control in timed automata are decidable and
EXPTIME-complete.
(the attractor is computable...)
32/39
Optimal timed games
Decidability of timed games
Theorem [AMPS98] [HK99]
Safety and reachability control in timed automata are decidable and
EXPTIME-complete.
(the attractor is computable...)
+ classical regions are sufficient for solving such problems
32/39
Optimal timed games
Uppaal Tiga
A forward on-the-fly algorithm for
solving reachability timed games
+ implemented as a branch of
Uppaal
33/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
dcost
dt =1
x =2
,
+
st=
c ,co
7
,
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
dcost
dt =1
x =2
,
+
st=
c ,co
7
,
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
5t + 10(2 − t) + 1 , 5t + (2 − t) + 7
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
max ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 )
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
inf
0≤t≤2
max ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 14 +
1
3
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
inf
0≤t≤2
max ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 14 +
1
3
Ü strategy: wait in `0 , and when t = 43 , go to `1
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
inf
0≤t≤2
max ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 14 +
1
3
Ü strategy: wait in `0 , and when t = 43 , go to `1
I
How to automatically compute such optimal costs?
34/39
Optimal timed games
Back to the simple example
dcost
dt =10
`2
u
x =2
,c ,c
ost=
+1
x≤2,c,y :=0
`0
`1
dcost
dt =5
(y =0)
u
`3
x =2
,
+
st=
c ,co
7
dcost
dt =1
,
Question: what is the optimal cost we can ensure in state `0 ?
inf
0≤t≤2
max ( 5t + 10(2 − t) + 1 , 5t + (2 − t) + 7 ) = 14 +
1
3
Ü strategy: wait in `0 , and when t = 43 , go to `1
I
I
How to automatically compute such optimal costs?
How to synthesize optimal strategies (if one exists)?
34/39
Optimal timed games
A fairly hot topic!
I
optimal time is computable in timed games
[AM99]
35/39
Optimal timed games
A fairly hot topic!
I
optimal time is computable in timed games
I
case of acyclic games
[AM99]
[LMM02]
35/39
Optimal timed games
A fairly hot topic!
I
optimal time is computable in timed games
I
case of acyclic games
[LMM02]
I
general case
[ABM04]
I
I
[AM99]
complexity of k-step games
under a strongly non-zeno assumption, optimal cost is computable
35/39
Optimal timed games
A fairly hot topic!
I
optimal time is computable in timed games
I
case of acyclic games
[LMM02]
I
general case
[ABM04]
I
I
I
complexity of k-step games
under a strongly non-zeno assumption, optimal cost is computable
general case
I
I
[AM99]
[BCFL04]
structural properties of strategies (e.g. memory)
under a strongly non-zeno assumption, optimal cost is computable
35/39
Optimal timed games
A fairly hot topic!
I
general case
I
I
[BBR05]
with five clocks, optimal cost is not computable!
with one clock and one stopwatch cost, optimal cost is computable
36/39
Optimal timed games
A fairly hot topic!
I
general case
I
I
I
general case
I
[BBR05]
with five clocks, optimal cost is not computable!
with one clock and one stopwatch cost, optimal cost is computable
[BBM06]
with three clocks, optimal cost is not computable
36/39
Optimal timed games
A fairly hot topic!
I
general case
I
I
I
general case
I
I
[BBM06]
with three clocks, optimal cost is not computable
the single-clock case
I
[BBR05]
with five clocks, optimal cost is not computable!
with one clock and one stopwatch cost, optimal cost is computable
[BLMR06]
with one clock, optimal cost is computable
36/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
Add− (x)
Add+ (x)
y =1,y :=0
y =1,y :=0
x=1,x:=0
z:=0
0
z=1,z:=0
1
The cost is increased by
y =1,y :=0
x=1,x:=0
z:=0
1
x0
y =1,y :=0
z=1,z:=0
0
The cost is increased by
1−x0
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
0
0
z=0
Add+ (x)
Add− (x)
Add+ (x)
Add− (x)
Add− (y )
+2
Add+ (y )
+1
,
,
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
In
z=0
Add+ (x)
Add− (x)
,, cost = 2x
0
+ (1 − y0 ) + 2
Add+ (x)
Add− (x)
Add− (y )
+2
Add+ (y )
+1
,
,
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
z=0
Add+ (x)
Add+ (x)
Add− (x)
Add− (x)
,, cost = 2x + (1 − y ) + 2
In ,, cost = 2(1 − x ) + y + 1
In
0
0
0
Add− (y )
+2
Add+ (y )
+1
,
,
0
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
z=0
Add+ (x)
Add− (x)
Add− (x)
,, cost = 2x + (1 − y ) + 2
In ,, cost = 2(1 − x ) + y + 1
In
0
Add− (y )
+2
Add+ (y )
0
0
I
Add+ (x)
+1
,
,
0
if y0 < 2x0 , player 2 chooses the first branch: cost > 3
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
z=0
Add+ (x)
Add− (x)
Add− (x)
,, cost = 2x + (1 − y ) + 2
In ,, cost = 2(1 − x ) + y + 1
In
0
Add− (y )
+2
Add+ (y )
0
0
I
Add+ (x)
+1
,
,
0
if y0 < 2x0 , player 2 chooses the first branch: cost > 3
if y0 > 2x0 , player 2 chooses the second branch: cost > 3
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
z=0
Add+ (x)
Add− (x)
Add− (x)
,, cost = 2x + (1 − y ) + 2
In ,, cost = 2(1 − x ) + y + 1
In
0
Add− (y )
+2
Add+ (y )
0
0
I
Add+ (x)
+1
,
,
0
if y0 < 2x0 , player 2 chooses the first branch: cost > 3
if y0 > 2x0 , player 2 chooses the second branch: cost > 3
if y0 = 2x0 , in both branches, cost = 3
37/39
Optimal timed games
Why is that hard?
Given two clocks x and y , we can check whether y = 2x
z=0
z :=
z :=
I
0
0
z=0
Add+ (x)
Add+ (x)
Add− (x)
Add− (x)
Add− (y )
Add+ (y )
,, cost = 2x + (1 − y ) + 2
In ,, cost = 2(1 − x ) + y + 1
In
0
0
0
+2
+1
,
,
0
I
if y0 < 2x0 , player 2 chooses the first branch: cost > 3
if y0 > 2x0 , player 2 chooses the second branch: cost > 3
if y0 = 2x0 , in both branches, cost = 3
I
Player 1 has a winning strategy with cost ≤ 3 iff y0 = 2x0
37/39
Conclusion
Outline
1. Introduction
2. Timed automata with costs
3. Optimal timed games
4. Conclusion
38/39
Conclusion
Conclusion
Priced timed automata, a model and framework to represent quantitative
constraints on timed systems:
I
several interesting optimization problems
39/39
Conclusion
Conclusion
Priced timed automata, a model and framework to represent quantitative
constraints on timed systems:
I
several interesting optimization problems
Not mentioned here
I all works on model-checking issues (extensions of CTL, LTL)
I
very few decidability results
[BBR04,BBM06,BLM07,BM07]
I
discounted cost
39/39
Conclusion
Conclusion
Priced timed automata, a model and framework to represent quantitative
constraints on timed systems:
I
several interesting optimization problems
Not mentioned here
I all works on model-checking issues (extensions of CTL, LTL)
I
very few decidability results
[BBR04,BBM06,BLM07,BM07]
I
discounted cost
Further work
I
approximate optimal timed games to circumvent undecidability
results
39/39