motion planning for ltl specifications: a satisfiability ... dynamics (with input constraints): x...

49
Motion Planning for LTL Specifications: A Satisfiability Modulo Convex Optimization Approach Yasser Shoukry UC 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

Upload: ngonguyet

Post on 12-Apr-2018

218 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 2: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 3: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 4: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 5: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 6: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 7: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 8: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 9: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 10: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 11: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 12: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 13: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 14: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 15: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 16: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 17: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 18: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 19: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 20: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 21: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 22: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 23: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 24: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 25: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 26: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 27: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 28: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 29: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 30: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 31: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 32: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 33: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 34: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

(∑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

Page 35: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

(∑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

Page 36: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 37: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 38: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 39: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 40: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 41: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 42: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 43: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 44: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 45: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 46: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 47: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 48: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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

Page 49: Motion Planning for LTL Specifications: A Satisfiability ... Dynamics (with input constraints): x ... Solver Architecture [0/3] Step 0: ... explosion (no abstraction of continuous

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