Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x...
Transcript of Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x...
Motion Planning for LTL Specifications: ASatisfiability Modulo Convex Optimization Approach
Yasser ShoukryUC Berkeley, UCLA, and UPenn
Joint work with
Pierluigi Nuzzo (UC Berkeley), Indranil Saha (IIT Kanpur),Alberto Sangiovanni-Vincentelli (UC Berkeley), Sanjit A. Seshia (UC Berkeley),
George Pappas (UPenn), and Paulo Tabuada (UCLA)
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 1 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW:
all obstacles are assumed to be unions of polyhedra.
Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW:
all obstacles are assumed to be unions of polyhedra.
Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW:
all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.
Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:
for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:
Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Motion Planning ProblemGiven:
Robot Dynamics (with input constraints):
xt+1 = Axt + But , x0 = x , ‖ut‖∞ ≤ u ∀t ∈ N
WorkspaceW: all obstacles are assumed to be unions of polyhedra.Atomic propositions Π = {π1, . . . , πm}: defined over the free-workspace.
LTL Specification Φ:for simplicity, I will focus on reach-avoid problems: ♦π1 ∧�¬π0.
Objective:Generate the input sequence u0, u1, . . . , uL such that the trajectory of the robotsatisfies Φ.
*
W1
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 2 / 12
Solver Architecture [0/3]
Step 0: Compute coarse,obstacle-based, discretization of the freespace.
Avoid discrete state-spaceexplosion (no abstraction ofcontinuous dynamics, no grid-basedabstractions).
π1start
π2
π9
π17
π3
π10
*
W1
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 3 / 12
Solver Architecture [0/3]
Step 0: Compute coarse,obstacle-based, discretization of the freespace.
Avoid discrete state-spaceexplosion (no abstraction ofcontinuous dynamics, no grid-basedabstractions).
π1start
π2
π9
π17
π3
π10
*
W1
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 3 / 12
Solver Architecture [0/3]
Step 0: Compute coarse,obstacle-based, discretization of the freespace.
Avoid discrete state-spaceexplosion (no abstraction ofcontinuous dynamics, no grid-basedabstractions).
π1start
π2
π9
π17
π3
π10
*
W1
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 3 / 12
Solver Architecture [0/3]
Step 0: Compute coarse,obstacle-based, discretization of the freespace.
Avoid discrete state-spaceexplosion (no abstraction ofcontinuous dynamics, no grid-basedabstractions).
π1start
π2
π9
π17
π3
π10
*
W1
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 3 / 12
Solver Architecture [1/3]
Step 1: For a given horizon L, use a SATsolver to find a candidate high-level path(Bounded Model Checking) that satisfies theLTL specification.
Increase the horizon L until suchhigh-level path is found.
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 4 / 12
Solver Architecture [1/3]
Step 1: For a given horizon L, use a SATsolver to find a candidate high-level path(Bounded Model Checking) that satisfies theLTL specification.
Increase the horizon L until suchhigh-level path is found.
⇡1⇡2
⇡3
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28
⇡29⇡30
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 4 / 12
Solver Architecture [1/3]
Step 1: For a given horizon L, use a SATsolver to find a candidate high-level path(Bounded Model Checking) that satisfies theLTL specification.
Increase the horizon L until suchhigh-level path is found. ⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 4 / 12
Solver Architecture [2/3]
Step 2: Check whether the high-leveltrajectory ρ is feasible (satisfies therobot initial state, dynamics, andinput constraints).
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 5 / 12
Solver Architecture [2/3]
Step 2: Check whether the high-leveltrajectory ρ is feasible (satisfies therobot initial state, dynamics, andinput constraints).
Can be casted as anoptimization problem.
Problem (CON-PLAN.CHECK)
min 1 i = 0, . . . , L
(initial condition) x0 = x ,
(dynamics constraints) xi+1 = Axi + Bui
(input constraints) ‖ui‖ ≤ u,
(plan constraints) xi ∈ ρi
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 5 / 12
Solver Architecture [2/3]
Step 2: Check whether the high-leveltrajectory ρ is feasible (satisfies therobot initial state, dynamics, andinput constraints).
Can be casted as a convexoptimization problem (LinearProgram).
Problem (CON-PLAN.CHECK)
min 1 i = 0, . . . , L
(initial condition) x0 = x ,
(dynamics constraints) xi+1 = Axi + Bui
(input constraints) ‖ui‖ ≤ u,
(plan constraints) xi ∈ ρi
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 5 / 12
Solver Architecture [3/3]
Step 3: Generate counter example.
φtriv-ce :=L∨
i=0
¬ρi ,
Repeat.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 6 / 12
Solver Architecture [3/3]
Step 3: Generate counter example.
φtriv-ce :=L∨
i=0
¬ρi ,
Repeat.⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 6 / 12
Solver Architecture [3/3]
Step 3: Generate counter example.
φtriv-ce :=L∨
i=0
¬ρi ,
Repeat.⇡3
⇡4
⇡5⇡7
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡16
⇡17
⇡18
⇡19
⇡20
⇡21
⇡22
⇡23
⇡24
⇡25⇡26
⇡27
⇡28⇡30
⇡1⇡2 ⇡6
⇡8
⇡15
⇡29
⇡14
*
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
CON-PLAN.CHECK
CON-PLAN.CERTIFICATE
CON-PLAN
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 6 / 12
Succinct Counter-example Generation
Detecting the earliest possible occurrence of an infeasible transition between tworegions rules out a broader class of assignments to Boolean variables.
Example 1: φcounter-example := ¬ρ0 ∨ ¬ρ1 ∨ ¬ρ2 ∨ ¬ρ3
Example 2: φcounter-example := ¬ρ0 ∨ ¬ρ1
ρ0
ρ1 = 0
ρ2 = 0
ρ3 = 0(0, 0, 0)
ρ3 = 1(0, 0, 1)
ρ2 = 1
ρ3 = 0(0, 1, 0)
ρ3 = 1(0, 1, 1)
ρ1 = 1
ρ2 = 0
ρ3 = 0(1, 0, 0)
ρ3 = 1(1, 0, 1)
ρ2 = 1
ρ3 = 0(1, 1, 0)
ρ3 = 1(1, 1, 1);
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 7 / 12
Succinct Counter-example Generation
Detecting the earliest possible occurrence of an infeasible transition between tworegions rules out a broader class of assignments to Boolean variables.
Example 1: φcounter-example := ¬ρ0 ∨ ¬ρ1 ∨ ¬ρ2 ∨ ¬ρ3
Example 2: φcounter-example := ¬ρ0 ∨ ¬ρ1
ρ0
ρ1 = 0
ρ2 = 0
ρ3 = 0(0, 0, 0)
ρ3 = 1(0, 0, 1)
ρ2 = 1
ρ3 = 0(0, 1, 0)
ρ3 = 1(0, 1, 1)
ρ1 = 1
ρ2 = 0
ρ3 = 0(1, 0, 0)
ρ3 = 1(1, 0, 1)
ρ2 = 1
ρ3 = 0(1, 1, 0)
ρ3 = 1(1, 1, 1);
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 7 / 12
Succinct Counter-example Generation
Detecting the earliest possible occurrence of an infeasible transition between tworegions rules out a broader class of assignments to Boolean variables.
Example 1: φcounter-example := ¬ρ0 ∨ ¬ρ1 ∨ ¬ρ2 ∨ ¬ρ3
Example 2: φcounter-example := ¬ρ0 ∨ ¬ρ1
ρ0
ρ1 = 0
ρ2 = 0
ρ3 = 0(0, 0, 0)
ρ3 = 1(0, 0, 1)
ρ2 = 1
ρ3 = 0(0, 1, 0)
ρ3 = 1(0, 1, 1)
ρ1 = 1
ρ2 = 0
ρ3 = 0(1, 0, 0)
ρ3 = 1(1, 0, 1)
ρ2 = 1
ρ3 = 0(1, 1, 0)
ρ3 = 1(1, 1, 1)
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 7 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Searching for succinct counterexample can be performed by checking thefeasibility of prefixes of ρ.
Leads to solving multiple optimization problems.
⇡4
⇡5
⇡6
⇡7
⇡8
⇡9
⇡10
⇡11 ⇡12 ⇡13
⇡14
⇡15
⇡20
⇡21
⇡22
⇡23
⇡24
⇡26
⇡27
⇡28
⇡29
⇡1⇡2
⇡3⇡17
⇡16
⇡18
⇡19
⇡25⇡30
*
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 8 / 12
Succinct Counterexample Generation
Key insight: we can check feasibility of high-level plans and generate theshortest counter example by solving a single linear program.
Satisfiability modulo convex-optimization approach.
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
Convex Optimization
min u0,...,uL∈Rm
v0,...,vL∈Rm
su0 ,...,s
uL∈R
sv0 ,...,s
vL∈R
x1,...,xL+1∈Rn
∑Li=0 su
i + svi
subject tox0 = x ,hX→W(xi ) ∈ ρW
i , i = 1, . . . , L + 1xi+1 = Axi + Bui + B′vi i = 0, . . . , L‖ui‖ ≤ u + su
i , i = 0, . . . , L‖vi‖ ≤ sv
i , i = 0, . . . , L0 ≤ su
i , 0 ≤ svi i = 0, . . . , L
sε
(∑i−1k=0 su
k + svk
)≤ su
i + svi i = 1, . . . , L
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 9 / 12
Succinct Counterexample Generation
Key insight: we can check feasibility of high-level plans and generate theshortest counter example by solving a single linear program.
Satisfiability modulo convex-optimization approach.
SAT-solver(Bounded Model Checking)
π1
π2
π9
π17
π3
π10
Convex Optimization
min u0,...,uL∈Rm
v0,...,vL∈Rm
su0 ,...,s
uL∈R
sv0 ,...,s
vL∈R
x1,...,xL+1∈Rn
∑Li=0 su
i + svi
subject tox0 = x ,hX→W(xi ) ∈ ρW
i , i = 1, . . . , L + 1xi+1 = Axi + Bui + B′vi i = 0, . . . , L‖ui‖ ≤ u + su
i , i = 0, . . . , L‖vi‖ ≤ sv
i , i = 0, . . . , L0 ≤ su
i , 0 ≤ svi i = 0, . . . , L
sε
(∑i−1k=0 su
k + svk
)≤ su
i + svi i = 1, . . . , L
L, φLTL
ρ = π1, π17 . . . , π28
(A,B, x , u)
u0, u1, . . . , uL−1
φcert
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 9 / 12
Case Study 1: Dubin’s Vehicle
Robot dynamics (Dubin car): x = v cos θ y = v sin θ θ = ω
Dynamics can be transformed into a linear chain of integrators usingdynamic feedback linearization.
Workspace: 30m× 30m maze-like workspace.
We increase number of passages from 1 to 4.
We compare execution-time against (1) standard RRT and (2) LTL OPT tool(mixed-integer linear program).
0 10 20 300
10
20
30
x [m]
y[m
]
0 10 20 300
10
20
30
x [m]
y[m
]
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 10 / 12
Case Study 1: Dubin’s Vehicle
Robot dynamics (Dubin car): x = v cos θ y = v sin θ θ = ω
Dynamics can be transformed into a linear chain of integrators usingdynamic feedback linearization.
Workspace: 30m× 30m maze-like workspace.
We increase number of passages from 1 to 4.
We compare execution-time against (1) standard RRT and (2) LTL OPT tool(mixed-integer linear program).
0 10 20 300
10
20
30
x [m]
y[m
]
0 10 20 300
10
20
30
x [m]
y[m
]
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 10 / 12
Case Study 1: Dubin’s Vehicle
Robot dynamics (Dubin car): x = v cos θ y = v sin θ θ = ω
Dynamics can be transformed into a linear chain of integrators usingdynamic feedback linearization.
Workspace: 30m× 30m maze-like workspace.
We increase number of passages from 1 to 4.
We compare execution-time against (1) standard RRT and (2) LTL OPT tool(mixed-integer linear program).
0 10 20 300
10
20
30
x [m]
y[m
]
0 10 20 300
10
20
30
x [m]
y[m
]
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 10 / 12
Case Study 1: Dubin’s Vehicle
Robot dynamics (Dubin car): x = v cos θ y = v sin θ θ = ω
Dynamics can be transformed into a linear chain of integrators usingdynamic feedback linearization.
Workspace: 30m× 30m maze-like workspace.
We increase number of passages from 1 to 4.
We compare execution-time against (1) standard RRT and (2) LTL OPT tool(mixed-integer linear program).
Number SMT-Based Motion Planner [s] RRT LTLof Discrete DIS-PLAN CON-PLAN [s] OPT
passages abstraction [s]1 1.9975 0.1360 0.2542 10.4381 > 72002 7.1461 1.1290 0.9294 122.3017 time out3 19.3267 3.6495 1.0053 423.6957 time out4 43.0985 4.0913 1.9204 1002.4193 time out
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 10 / 12
Case Study 2: Scalability Results
Maze-like workspace with increasing number of passages.
We increase the number of states n (randomly generate the matrices A and B).
Take average across 10 runs.
5 10 15 20 25 30 35 40 45 50
100
101
102
Number of states n
Exe
cutio
ntim
e(s
)
1-passage maze 2-passage maze 3-passage maze 4-passage maze
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 11 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.
We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.
Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.
Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.
Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).
We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12
Final Remarks
What is still missing ?
We need to compare with other methods like RRT∗ and PRM.We need to compare against existing benchmarks.
SAT + Convex optimization ?= tools:
Probabilistic CTL (PCTL) verification of Markov Decision Processes.Security: secure state estimation.Sensor Networks: localization.Motion planning (this work).We are currently developing a comprehensive theory of SatisfiabilityModulo Convex Optimization.
Yasser Shoukry ExCAPE PI Meeting 2016 May 9, 2016 12 / 12