Abstraction refinement and plan revision for control synthesis under - - PowerPoint PPT Presentation

abstraction refinement and plan revision for control
SMART_READER_LITE
LIVE PREVIEW

Abstraction refinement and plan revision for control synthesis under - - PowerPoint PPT Presentation

Abstraction refinement and plan revision for control synthesis under high level specifications Pierre-Jean Meyer Dimos V. Dimarogonas KTH, Royal Institute of Technology July 12 th 2017 Outline Abstraction-based synthesis Global framework


slide-1
SLIDE 1

Abstraction refinement and plan revision for control synthesis under high level specifications

Pierre-Jean Meyer Dimos V. Dimarogonas

KTH, Royal Institute of Technology

July 12th 2017

slide-2
SLIDE 2

Outline

Abstraction-based synthesis Global framework Specifications Valid sets Algorithm Cost functions Result Conclusion Abstraction refinement Plan revision IDDFS Sampling period

Meyer & Dimarogonas Abstraction refinement and plan revision 2/15

slide-3
SLIDE 3

Abstraction-based synthesis

u1 u1 u2 u2 x+ = f(x, u, w) x+ = f(x, u, w) Controller w x u Discrete state U n c

  • n

t r

  • l

l e d C

  • n

t r

  • l

l e d Continuous state u1 u1 Abstraction Synthesis Concretization Meyer & Dimarogonas Abstraction refinement and plan revision 3/15

slide-4
SLIDE 4

Abstraction procedure

x+ = f(x, u, w)

◮ Define the reachable set for any disturbance w ∈ W:

RS(X, U) = {f(x, u, w) | x ∈ X, u ∈ U, w ∈ W}

◮ Partition of the state space ◮ For each partition cell s and control u: compute the

reachable set RS(s, {u})

◮ Obtain a non-deterministic transition system: each pair

(s, u) may have several successors

u u u u u s s

Meyer & Dimarogonas Abstraction refinement and plan revision 4/15

slide-5
SLIDE 5

Global framework

Abstraction and Controller synthesis Nominal system ˙ x = u Main specification LTL formula θ Initial coarse partition P Satisfying plan ψ ∈ P r to follow Controller synthesis Disturbed system ˙ x = f(x, w) + u Abstraction Success ? Stop yes no Method choice Split a partition element Refined partition P ′ Abstraction refinement Specification conversion Plan revision Nominal abstraction Sn Controller synthesis Revised plan ψ′

Meyer & Dimarogonas Abstraction refinement and plan revision 5/15

slide-6
SLIDE 6

Specifications

General Linear Temporal Logic (LTL) formula: Satisfying plans are lasso-shaped sequences in the state partition

◮ prefix: finite path

from the initial cell

◮ suffix: finite path

looping on itself

Meyer & Dimarogonas Abstraction refinement and plan revision 6/15

slide-7
SLIDE 7

Specifications

Syntactically co-safe LTL formula: Satisfiable in finite time

◮ prefix: finite path

from the initial cell

Meyer & Dimarogonas Abstraction refinement and plan revision 6/15

slide-8
SLIDE 8

Valid sets

Definition (Valid set) Elements of the refined partition Xa that can be controlled to follow the desired sequence of cells Finite plan: ψ = ψ0ψ1 . . . ψr

◮ Final cell: V(ψr) = {ψr} ◮ for all k ∈ {0, . . . , r − 1}:

V(ψk) = {s ∈ Xa|s ⊆ ψk, ∃u ∈ Ua, RS(s, {u}) ⊆ V(ψk+1)}

Meyer & Dimarogonas Abstraction refinement and plan revision 7/15

slide-9
SLIDE 9

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Last step of the plan: ψ2 Initial valid set: V(ψ2) = {ψ2}

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-10
SLIDE 10

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ1 → ψ2 Empty valid set: V(ψ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-11
SLIDE 11

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ1 → ψ2 Refine ψ1 Valid set still empty: V(ψ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-12
SLIDE 12

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ1 → ψ2 Refine ψ1 Valid set still empty: V(ψ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-13
SLIDE 13

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ1 → ψ2 Refine ψ1 New valid set for ψ1: V(ψ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-14
SLIDE 14

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ0 → ψ1 Empty valid set: V(ψ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-15
SLIDE 15

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ0 → ψ1 Refine ψ0 Valid set still empty: V(ψ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-16
SLIDE 16

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ0 → ψ1 Refine ψ0 Valid set still empty: V(ψ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-17
SLIDE 17

Algorithm

Initialization k := 2 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Initial plan: ψ0ψ1ψ2

ψ2 ψ1 ψ0

Transition ψ0 → ψ1 Refine ψ0 Valid set still empty: V(ψ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-18
SLIDE 18

Algorithm

Initialization new k := 3 k := k − 1 V (ψk) = ∅ yes no Refine ψk Update V (ψk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Plan revision: keep partial progress: φ3φ4 = ψ1ψ2

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-19
SLIDE 19

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ2 → φ3 Empty valid set: V(φ2) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-20
SLIDE 20

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ2 → φ3 Refine φ2 Valid set still empty: V(φ2) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-21
SLIDE 21

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ2 → φ3 Refine φ2 New valid set for φ2: V(φ2) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-22
SLIDE 22

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ1 → φ2 Empty valid set: V(φ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-23
SLIDE 23

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ1 → φ2 Refine φ1 Valid set still empty: V(φ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-24
SLIDE 24

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ1 → φ2 Refine φ1 New valid set for φ1: V(φ1) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-25
SLIDE 25

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ0 → φ1 Empty valid set: V(φ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-26
SLIDE 26

Algorithm

Initialization new k := 3 k := k − 1 V (φk) = ∅ yes no Refine φk Update V (φk) Revise plan ψ New plan: φ Method choice Abstraction refinement Plan revision Extract initial plan ψ

Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Transition φ0 → φ1 Refine φ0 New valid set for φ0: V(φ0) = ∅

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-27
SLIDE 27

Algorithm

Outputs

◮ Final plan ◮ Refined partition ◮ Valid set for each cell in

the plan

◮ Controller associated to

each element of the valid sets Specification: reach top-left from bottom left Revised plan: φ0φ1φ2φ3φ4

φ0 φ1 φ2 φ3 = ψ1 φ4 = ψ2

Non-empty valid set for the ini- tial cell: V(φ0) = ∅ Terminates the algorithm

Meyer & Dimarogonas Abstraction refinement and plan revision 8/15

slide-28
SLIDE 28

Cost functions

Cost for abstraction refinement: refinement of cell ψj

◮ number of new subsymbols after refinement of ψj

2n∗(number of invalid subsymbols of ψj)

◮ number of invalid subsymbols in ψk . . . ψj−1 to be updated ◮ predicted number of subsymbols in future refinements

JAR(ψj) = 2n ∗ |Pa(ψj)\V(ψj)| +

j−1

  • l=k

|Pa(ψl)\V(ψl)| + (k + 1) ∗ (2n)2 Cost for plan revision up to cell ψj

◮ predicted number of subsymbols in future refinements (for

the new length of the revised plan) JPR(ψj) = (|Revise(ψ, j)| − |ψ| + j + 1) ∗ (2n)2 Can add a weight to give more priority to one method.

Meyer & Dimarogonas Abstraction refinement and plan revision 9/15

slide-29
SLIDE 29

Main result

◮ Sτ = (Xτ, Uτ, −

τ ): sampled version of the continuous

dynamics

◮ Sa = (Xa, Ua, −

a ): abstraction of Sτ with the refined

partition Xa Definition A map H : Xτ → Xa is a feedback refinement relation from Sτ to Sa if: ∀x ∈ Xτ, s = H(x), ∀u ∈ Ua ⊆ Uτ, ∀x′ ∈ Postτ(x, u), H(x′) ∈ Posta(s, u). Theorem If the algorithm terminates in finite time, the obtained controller Ca of Sa can be refined into a controller C : Xτ → Uτ defined by C(x) = Ca(H(x)) such that Sτ satisfies the main LTL specification.

Meyer & Dimarogonas Abstraction refinement and plan revision 10/15

slide-30
SLIDE 30

Conclusion and perspectives

Contributions

◮ framework combining abstraction refinement and plan

revision

◮ for non-deterministic abstractions with LTL specification

Degrees of freedom

◮ cost functions giving priority to refinement or revision and

picking which cell is refined or revised

◮ splitting strategy when refining

Perspectives

◮ guarantees of termination of the algorithm ◮ scalability: application within a compositional framework ◮ online approach

Meyer & Dimarogonas Abstraction refinement and plan revision 11/15

slide-31
SLIDE 31

Abstraction refinement

No guarantee of reaching the red cell Refine the abstraction by splitting the partition

u u u

Meyer & Dimarogonas Abstraction refinement and plan revision 12/15

slide-32
SLIDE 32

Plan revision

◮ Main specification: LTL formula (reach

the red cell from the gray one)

◮ Find a satisfying plan (sequence of

cells to be followed)

◮ Failure of the control synthesis to follow

this plan ?

◮ Revise the plan by looking for an

alternative satisfying sequence

◮ Repeat the synthesis attempt

Meyer & Dimarogonas Abstraction refinement and plan revision 13/15

slide-33
SLIDE 33

Iterative deepening depth-first search

Search algorithm on the product automaton

◮ set DepthLimit = 0 ◮ call a Limited-Depth Depth First Search with DepthLimit ◮ if no result found, repeat with DepthLimit = DepthLimit + 1 ◮ DepthLimit = 0: A ◮ DepthLimit = 1: A, B, C, E ◮ DepthLimit = 2:

A, B, D, F , C, G, E, F

◮ DepthLimit = 3:

A, B, D, F , E, C, G, E, F , B

Meyer & Dimarogonas Abstraction refinement and plan revision 14/15

slide-34
SLIDE 34

Sampling period

Real system: ˙ x = f(x, w) + u u ∈ [−u∗, u∗] Nominal system: ˙ x = u Minimal sampling time such that we can steer the state of the nominal system between any two neighbor cells of the uniform partition: τ = max

i∈{1,...,n}

pi u∗

i

Guarantees to obtain a deterministic abstraction of the nominal system

p2 p1 u∗

2

−u∗

2

u∗

1

−u∗

1

Meyer & Dimarogonas Abstraction refinement and plan revision 15/15