Synthesis of Surveillance Strategies for Mobile Sensors Rayna - - PowerPoint PPT Presentation

synthesis of surveillance strategies for mobile sensors
SMART_READER_LITE
LIVE PREVIEW

Synthesis of Surveillance Strategies for Mobile Sensors Rayna - - PowerPoint PPT Presentation

Synthesis of Surveillance Strategies for Mobile Sensors Rayna Dimitrova University of Leicester joint work with Suda Bharadwaj and Ufuk Topcu University of Texas at Austin S-REPLS 10 18th September 2018 Autonomous systems: challenges and


slide-1
SLIDE 1

Synthesis of Surveillance Strategies for Mobile Sensors

Rayna Dimitrova

University of Leicester

joint work with Suda Bharadwaj and Ufuk Topcu

University of Texas at Austin

S-REPLS 10 18th September 2018

slide-2
SLIDE 2

Autonomous systems: challenges and opportunities for formal methods

slide-3
SLIDE 3

Autonomous systems: challenges and opportunities for formal methods Specification Verification Synthesis

slide-4
SLIDE 4

Reactive surveillance with mobile sensors

Goal: maintain knowledge of the location of a moving target Example objectives ◮ always know (up to some precision) the location of the target ◮ eventually discover the target every time it gets out of sight

slide-5
SLIDE 5

Reactive surveillance with mobile sensors

Specification ϕ: formulate surveillance objectives using LTL Synthesis: solve a two player game between agent and target agent (mobile sensor) tries to satisfy ϕ target tries to violate ϕ Compute a strategy for the agent to enforce ϕ.

slide-6
SLIDE 6

Reactive surveillance with mobile sensors

Specification ϕ: formulate surveillance objectives using LTL ◮ introduce surveillance predicates Synthesis: solve a two player game between agent and target ◮ tracking agent’s knowledge ◮ handling multiple sensors ”Synthesis of Surveillance Strategies via Belief Abstraction”

  • S. Bharadwaj, R. D.,U. Topcu, CDC 2018

”Distributed Synthesis of Surveillance Strategies for Mobile Sensors”

  • S. Bharadwaj, R. D.,U. Topcu, CDC 2018
slide-7
SLIDE 7

Surveillance game structures

slide-8
SLIDE 8

Surveillance game structures

◮ set of locations L

slide-9
SLIDE 9

Surveillance game structures

◮ set of locations L ◮ states (la, lt) ∈ L × L la: location of agent lt: location of target

slide-10
SLIDE 10

Surveillance game structures

◮ set of locations L ◮ states (la, lt) ∈ L × L la: location of agent lt: location of target ◮ visibility vis : L × L → B visibility: vis(la, lt) = true iff lt is in the line of sight of la

slide-11
SLIDE 11

Surveillance game structures

◮ set of locations L ◮ states (la, lt) ∈ L × L la: location of agent lt: location of target ◮ visibility vis : L × L → B ◮ transitions T, (la, lt) (l′

a, l′ t)

visibility: vis(la, lt) = true iff lt is in the line of sight of la transitions: move of target, followed by move of agent

slide-12
SLIDE 12

Surveillance game structures

◮ set of locations L ◮ states (la, lt) ∈ L × L la: location of agent lt: location of target ◮ visibility vis : L × L → B ◮ transitions T, (la, lt) (l′

a, l′ t)

visibility: vis(la, lt) = true iff lt is in the line of sight of la transitions: move of target, followed by move of agent

slide-13
SLIDE 13

Surveillance game structures

◮ set of locations L ◮ states (la, lt) ∈ L × L la: location of agent lt: location of target ◮ visibility vis : L × L → B ◮ transitions T, (la, lt) (l′

a, l′ t)

visibility: vis(la, lt) = true iff lt is in the line of sight of la transitions: move of target, followed by move of agent

slide-14
SLIDE 14

Surveillance objectives

Belief game structure belief: knowledge about the possible current locations of target ◮ set of beliefs 2L ◮ belief states (la, Bt) ∈ L × 2L

slide-15
SLIDE 15

Surveillance objectives

Belief game structure belief: knowledge about the possible current locations of target ◮ set of beliefs 2L ◮ belief states (la, Bt) ∈ L × 2L ◮ belief transitions (la, Bt) (l′

a, B′ t)

belief transitions track the evolution of the agent’s belief

slide-16
SLIDE 16

Surveillance objectives

Belief game structure belief: knowledge about the possible current locations of target ◮ set of beliefs 2L ◮ belief states (la, Bt) ∈ L × 2L ◮ belief transitions (la, Bt) (l′

a, B′ t)

belief transitions track the evolution of the agent’s belief

slide-17
SLIDE 17

Surveillance objectives

Belief game structure belief: knowledge about the possible current locations of target ◮ set of beliefs 2L ◮ belief states (la, Bt) ∈ L × 2L ◮ belief transitions (la, Bt) (l′

a, B′ t)

belief transitions track the evolution of the agent’s belief Specification belief predicate p≤b, for b ∈ N>0: (la, Bt) | = p≤b iff |Bt| ≤ b

slide-18
SLIDE 18

Surveillance objectives

Belief game structure belief: knowledge about the possible current locations of target ◮ set of beliefs 2L ◮ belief states (la, Bt) ∈ L × 2L ◮ belief transitions (la, Bt) (l′

a, B′ t)

belief transitions track the evolution of the agent’s belief Specification belief predicate p≤b, for b ∈ N>0: (la, Bt) | = p≤b iff |Bt| ≤ b LTL surveillance formulas: LTL with belief predicates. Examples: ◮ safety surveillance p≤b: ”always” p≤b ◮ liveness surveillance p≤b: ”infinitely often” p≤b

slide-19
SLIDE 19

Surveillance games and strategies

surveillance game (G, ϕ), where ◮ G = (L, vis, T) is a surveillance game structure, ◮ ϕ is a surveillance specification strategy for the agent: function that maps sequences of belief states to moves that agree with T A strategy for the agent is winning in (G, ϕ) if each sequence of belief states resulting from this strategy satisfies the specification ϕ.

slide-20
SLIDE 20

Synthesis of surveillance strategies

Surveillance synthesis problem Given: surveillance game (G, ϕ) Compute: strategy for the agent wining in (G, ϕ) A possible approach: Solve game with LTL objective over belief game structure Problem: Size of belief game structure can be exponential in |L| ⇒ Use abstraction!

slide-21
SLIDE 21

Belief abstraction

◮ Q = {Qi}n

i=1 partition L

◮ abstract beliefs 2Q

slide-22
SLIDE 22

Belief abstraction

◮ Q = {Qi}n

i=1 partition L

◮ abstract beliefs 2Q ◮ abstract belief states (la, At) ∈ L × (2Q ∪ L)

slide-23
SLIDE 23

Belief abstraction

◮ Q = {Qi}n

i=1 partition L

◮ abstract beliefs 2Q ◮ abstract belief states (la, At) ∈ L × (2Q ∪ L) ◮ abstract belief transitions (la, At) (l′

a, A′ t)

abstract belief transition: overapproximate belief at each step

slide-24
SLIDE 24

Belief abstraction

◮ Q = {Qi}n

i=1 partition L

◮ abstract beliefs 2Q ◮ abstract belief states (la, At) ∈ L × (2Q ∪ L) ◮ abstract belief transitions (la, At) (l′

a, A′ t)

abstract belief transition: overapproximate belief at each step Belief abstraction is sound for surveillance objectives.

slide-25
SLIDE 25

Belief abstraction

◮ Q = {Qi}n

i=1 partition L

◮ abstract beliefs 2Q ◮ abstract belief states (la, At) ∈ L × (2Q ∪ L) ◮ abstract belief transitions (la, At) (l′

a, A′ t)

abstract belief transition: overapproximate belief at each step Belief abstraction is sound for surveillance objectives. Worst case abstraction: each Qi is singleton.

slide-26
SLIDE 26

Abstraction-based synthesis of surveillance strategies

Abstract surveillance game: two-player game with LTL objective ⇒ use methods for synthesis of reactive systems Restrict surveillance objectives to the efficient fragment GR(1) ⇒ use slugs [Ehlerers and Raman 2016] Winning abstract strategy for agent → surveillance strategy

slide-27
SLIDE 27

Abstract counterexamples

slide-28
SLIDE 28

Abstract counterexamples

slide-29
SLIDE 29

Abstract counterexamples

◮ specification p≤2 ⇒ concretizable

slide-30
SLIDE 30

Abstract counterexamples

◮ specification p≤2 ⇒ concretizable ◮ specification p≤5 ⇒ spurious

slide-31
SLIDE 31

Abstract counterexamples

◮ specification p≤2 ⇒ concretizable ◮ specification p≤5 ⇒ spurious Analyse counterexample by computing concrete beliefs. Determine which partitions to split, to refine the belief abstraction.

slide-32
SLIDE 32

Counterexample-based belief refinement

abstract counterexample for the surveillance specification p≤5

(l0

a, l0 t )

(l1

a, {Q1})

(l2

a, {Q1})

(l4

a, {Q1, Q2})

(l5

a, {Q1, Q2})

(l3

a, {Q1, Q2})

(l0

a, {Q1, Q2})

(l4

a, {Q1, Q2})

(l0

a, {Q1, Q2})

Annotate nodes of the tree with concrete belief sets. Check if there is a leaf node where the bound is not exceeded. If yes, then the counterexample is spurious. Refine to eliminate it.

slide-33
SLIDE 33

Counterexample-based belief refinement

Counterexamples for general surveillance properties are finite graphs. ◮ For a liveness property p≤b, check if there is a lasso path with a concrete belief in the loop with size not exceeding b. ◮ For general properties: refine some node with imprecise belief.

slide-34
SLIDE 34

Example with liveness surveillance objective

specification p≤1 ∧ goal mobile sensor straight-line visibility up to 5 cells Number of abstract belief sets 15 · 10 + 27 Number of concrete belief sets 2150

slide-35
SLIDE 35

Example with safety surveillance objective

specification p≤30 ∧ goal mobile sensor unbounded straight-line visibility Number of abstract belief sets 13 · 18 + 26 Number of concrete belief sets ≈ 2234

slide-36
SLIDE 36

Multiple sensors

In practice: multiple sensors

+ better coverage, smaller abstractions should suffice – the size of the state space of the concrete game increases

slide-37
SLIDE 37

Multi-agent surveillance game structures

◮ set of locations L

slide-38
SLIDE 38

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

slide-39
SLIDE 39

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

◮ visibility visi : L × L → B visibility: visi(li

a, lt) = true iff lt is in the line of sight of li

slide-40
SLIDE 40

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

◮ visibility visi : L × L → B visibility: visi(li

a, lt) = true iff lt is in the line of sight of li

slide-41
SLIDE 41

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

◮ visibility visi : L × L → B ◮ joint visibility vis : Lm+1 → B visibility: visi(li

a, lt) = true iff lt is in the line of sight of li

joint visibility: vis(l, lt) = true iff lt is visible to at least one agent

slide-42
SLIDE 42

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

◮ visibility visi : L × L → B ◮ joint visibility vis : Lm+1 → B ◮ transitions (la, lt) (l′

a, l′ t)

visibility: visi(li

a, lt) = true iff lt is in the line of sight of li

joint visibility: vis(l, lt) = true iff lt is visible to at least one agent transitions: move of target, followed by agents’ synchronous move

slide-43
SLIDE 43

Multi-agent surveillance game structures

◮ set of locations L ◮ states (l1

a, . . . , lm a , lt)

◮ visibility visi : L × L → B ◮ joint visibility vis : Lm+1 → B ◮ transitions (la, lt) (l′

a, l′ t)

visibility: visi(li

a, lt) = true iff lt is in the line of sight of li

joint visibility: vis(l, lt) = true iff lt is visible to at least one agent transitions: move of target, followed by agents’ synchronous move

slide-44
SLIDE 44

Multi-agent surveillance with static sensors

◮ static sensors (R1, . . . , Rk) static sensor: defined by its range Ri ⊆ L Static sensors do not exhibit false positives or false negatives.

slide-45
SLIDE 45

Multi-agent surveillance with static sensors

◮ static sensors (R1, . . . , Rk) ◮ belief states (la, Bt, C) ∈ L × 2Q × 2{1,...,k} static sensor: defined by its range Ri ⊆ L Static sensors do not exhibit false positives or false negatives. Bt is contained in the ranges of the triggered sensors C.

slide-46
SLIDE 46

Multi-agent surveillance strategies

multi-agent surveillance game (G, {R1, . . . , Rk}, ϕ), where ◮ G is a multi-agent surveillance game structure, ◮ R1, . . . , Rk are static sensors, ◮ ϕ is a surveillance specification A joint strategy for the agents is winning in (G, {R1, . . . , Rk}, ϕ) if each sequence of belief states resulting from the strategies for the agents satisfies the specification ϕ.

slide-47
SLIDE 47

Multi-agent surveillance strategy synthesis

Multi-agent surveillance synthesis problem Given: multi-agent surveillance game (G, {R1, . . . , Rk}, ϕ) Compute: joint strategy for the agents that is wining A possible approach: Compute a centralized strategy. Problem: Size of the state space is exponential in m. ⇒ Decompose the synthesis problem!

slide-48
SLIDE 48

Game structure decomposition

◮ partition L = L1 ⊎ . . . ⊎ Lm ◮ agent i cannot exit Li ◮ agent i cannot observe L \ Li Synthesize individual surveillance strategies independently. Define local specifications appropriately to ensure soundness.

slide-49
SLIDE 49

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri

slide-50
SLIDE 50

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri Agent 1: size of local belief set is 1

slide-51
SLIDE 51

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri Agent 1: size of local belief set is 3, including l1

slide-52
SLIDE 52

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri Agent 1: size of local belief set is 4, including l1

slide-53
SLIDE 53

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri Agent 1: size of local belief set is 4, including l1 Agent 2: size of local belief set is 3, including l2

slide-54
SLIDE 54

Local surveillance game structures

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false ◮ static sensors Ri Agent 1: size of local belief set is 4, including l1 Agent 2: size of local belief set is 3, including l2 The size of the global belief set is 5.

slide-55
SLIDE 55

Global belief sets

◮ locations Li ⊎ { li} ◮ states (la, lt) ◮ visi(la, li) = false local belief set of agent i: Bi

t ⊆ (Li ⊎ {

li}) global belief set of agent i: Bi

t =

  • Bi

t

if li ∈ Bi

t

  • Bi

t ∪ (L \ Li)

  • therwise

joint global belief set:

i∈{1,...,m} Bi t

slide-56
SLIDE 56

Specification decomposition

We want local surveillance specifications ϕ1, . . . , ϕn such that if f1, . . . , fn are wining strategies in the local games (Gi, Ri, ϕi) then f1 ⊗ . . . ⊗ fn is a winning strategy in (G, {R1, . . . , Rk}, ϕ).

slide-57
SLIDE 57

Specification decomposition

We restrict to conjunctions of safety and liveness surveillance. p≤a ∧ p≤b ≡ p≤min (a,b) p≤a ∧ p≤b ≡ p≤min (a,b) p≤a ∧ p≤b ≡ p≤a if a ≤ b It suffices to consider only specifications of the following forms ◮ safety p≤a, liveness p≤a, ◮ mixed p≤a ∧ p≤b with a > b.

slide-58
SLIDE 58

Safety surveillance objectives

For global specification p≤b and n ≥ 2 agents, take local specifications p≤c, where c = ⌊ b

n⌋ + 1.

Example: specification p≤2 Each of the local specifications is p≤2 as well. Conservative approximation due to the absence of coordination.

slide-59
SLIDE 59

Liveness surveillance objectives

Require that each mobile sensor satisfies the liveness specification. For global specification p≤2 and n agents, take

  • (belief = {

li})

  • (p≤b ∧ (

li ∈ belief ))

  • ,

where belief = { li} and li ∈ belief are surveillance predicates. Example: specification p≤1

slide-60
SLIDE 60

Example

◮ model terrain by 20 × 20 grid ◮ red regions: impassable terrain ◮ yellow regions: range of static sensors Surveillance specification: p≤5

slide-61
SLIDE 61

Example

Subgame Number of locations Synthesis time (s) 3 sensors Subgame 1 142 473 Subgame 2 113 306 Subgame 3 145 372 Total 400 1151 6 sensors Subgame 1 69 101 Subgame 2 74 206 Subgame 3 62 111 Subgame 4 52 88 Subgame 5 77 285 Subgame 6 66 64 Total 400 855

◮ model terrain by 20 × 20 grid ◮ red regions: impassable terrain ◮ yellow regions: range of static sensors Surveillance specification: p≤5

slide-62
SLIDE 62

Current work and future directions

◮ Heuristics for constructing initial abstraction ◮ Improved abstraction refinement methods ◮ Less conservative specification decomposition ◮ Some coordination between mobile sensors ◮ Probabilistic detection errors by static sensors ◮ Noisy observations from mobile sensors

. . .

slide-63
SLIDE 63

Conclusion

◮ Applying reactive synthesis to surveillance problems ◮ Domain specific formal specification languages ◮ Customized abstraction and refinement methods ◮ Compositional approaches key for achieving scalability

Thank you for your attention! Questions?

Papers at 57th IEEE Conference on Decision and Control preprints available at raynadimitrova.github.io