Synthesis via Sampling-Based Abstractions€¦ · Tabuada Reactive synthesis (Rice) Moshe Vardi...
Transcript of Synthesis via Sampling-Based Abstractions€¦ · Tabuada Reactive synthesis (Rice) Moshe Vardi...
Synthesis via Sampling-Based AbstractionsSome Problems and Initial Ideas
Matthias Rungger2 Morteza Lahijanian1
Lydia E. Kavraki1 Paulo Tabuada2 Moshe Y. Vardi1
1Department of Computer Science, Rice University
2Cyber-Physical Systems Laboratory, UCLA
Problem statementGiven a LTL specification ϕ and a control system S , find acontroller C that enforces ϕ on S
Well-known abstraction/refinement approach
1. Compute a finite abstraction S of S
2. Synthesize controller C based on S
3. Refine solution C to C
S
finite
C
S
infinite
C
1.
2.
3.abstract
concrete
=⇒ All done X
So... what is the problem?
2/6
Problem statementGiven a LTL specification ϕ and a control system S , find acontroller C that enforces ϕ on S
Well-known abstraction/refinement approach
1. Compute a finite abstraction S of S
2. Synthesize controller C based on S
3. Refine solution C to C
S
finite
C
S
infinite
C
1.
2.
3.abstract
concrete
=⇒ All done X
So... what is the problem?
2/6
Problem statementGiven a LTL specification ϕ and a control system S , find acontroller C that enforces ϕ on S
Well-known abstraction/refinement approach
1. Compute a finite abstraction S of S
2. Synthesize controller C based on S
3. Refine solution C to C
S
finite
C
S
infinite
C
1.
2.
3.abstract
concrete
=⇒ All done X
So... what is the problem?
2/6
Problem statementGiven a LTL specification ϕ and a control system S , find acontroller C that enforces ϕ on S
Well-known abstraction/refinement approach
1. Compute a finite abstraction S of S
2. Synthesize controller C based on S
3. Refine solution C to C
S
finite
C
S
infinite
C
1.
2.
3.abstract
concrete
=⇒ All done X
So... what is the problem?
2/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X
|X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X
|X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X
|X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X
|X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X
|X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X
|X | = 1003 ?? |X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X |X | = 1003 ??
|X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X |X | = 1003 ??
|X | = 1004
3/6
Computing Abstractions
1D: Temperature
T = c(Tenv − T )
2D: Pendulum
.
.
3D: UnicycleRobot
ϕ
x
y
4D: Pendulumon a cart
X
|X | = 100 X |X | = 1002 X |X | = 1003 ?? |X | = 1004
3/6
Sampling-based Ideas to Compute Abstractions
Synergistic approach for syntacticallyco-safe LTL
Lower layer:use sampling-based methods to growthe abstraction
Higher layer:use Buchi automaton (from ϕ) andenvironment geometry to guide theexpansion
Use “synergistic” layer to alternatebetween layers
http://msl.cs.uiuc.edu/~lavalle/
A. Bhatia, L. E. Kavraki, and M. Y. Vardi. “Sampling-based motion planning withtemporal goals”. In: ICRA. IEEE, 2010
M. R. Maly, M. Lahijanian, L. E. Kavraki, H. Kress-Gazit, and M. Y. Vardi.
“Iterative Temporal Motion Planning for Hybrid Systems in Partially Unknown
Environments”. In: HSCC. ACM, 2013
Solution (point-to-point)
xinit xend
curse of dimensionality is no problem
4/6
Sampling-based Ideas to Compute Abstractions
Synergistic approach for syntacticallyco-safe LTL
Lower layer:use sampling-based methods to growthe abstraction
Higher layer:use Buchi automaton (from ϕ) andenvironment geometry to guide theexpansion
Use “synergistic” layer to alternatebetween layers
http://msl.cs.uiuc.edu/~lavalle/
Solution (point-to-point)
xinit xend
curse of dimensionality is no problem 4/6
Sampling-based Ideas to Compute Abstractions
Synergistic approach for syntacticallyco-safe LTL
Lower layer:use sampling-based methods to growthe abstraction
Higher layer:use Buchi automaton (from ϕ) andenvironment geometry to guide theexpansion
Use “synergistic” layer to alternatebetween layers
http://msl.cs.uiuc.edu/~lavalle/
Solution (point-to-point)
xinit xend
curse of dimensionality is no problem
Problem solved?
4/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
What if we have...
a set of initial states?
Xinit
Solve problem for somesamples of Xinit
Can we use local controllersto enlarge/robustifysolutions?
safety specifications? (infinite behavior)
Xsafe
Xinit
What are good heuristics togrow the abstraction?
How to find loops?
Can we merge close-bysamples?
5/6
To answer those questions we combine
Sampling-based planning (Rice)
MortezaLahijanian
LydiaKavraki
Control theory (UCLA)
MatthiasRungger
PauloTabuada
Reactive synthesis (Rice)
MosheVardi
6/6
To answer those questions we combine
Sampling-based planning (Rice)
MortezaLahijanian
LydiaKavraki
Control theory (UCLA)
MatthiasRungger
PauloTabuada
Reactive synthesis (Rice)
MosheVardi
6/6
To answer those questions we combine
Sampling-based planning (Rice)
MortezaLahijanian
LydiaKavraki
Control theory (UCLA)
MatthiasRungger
PauloTabuada
Are we satisfied?
Reactive synthesis (Rice)
MosheVardi
6/6
To answer those questions we combine
Sampling-based planning (Rice)
MortezaLahijanian
LydiaKavraki
Control theory (UCLA)
MatthiasRungger
PauloTabuada
Reactive synthesis (Rice)
MosheVardi
6/6