The Searchlight Problem for Road Networks Dariusz Dereniowski a - - PowerPoint PPT Presentation

the searchlight problem for road networks
SMART_READER_LITE
LIVE PREVIEW

The Searchlight Problem for Road Networks Dariusz Dereniowski a - - PowerPoint PPT Presentation

The Searchlight Problem for Road Networks Dariusz Dereniowski a Hirotaka Ono a Ichiro Suzuki a ukasz Wrona a Masafumi Yamashita a Pawe yliski a GRASTA-MAC 2015, Montreal Problem definition The searchlight problem in a road


slide-1
SLIDE 1

The Searchlight Problem for Road Networks

a

Dariusz Dereniowski

a

Hirotaka Ono

a

Ichiro Suzuki

a

Łukasz Wrona

a

Masafumi Yamashita

a

Paweł Żyliński

GRASTA-MAC 2015, Montreal

slide-2
SLIDE 2

Problem definition The searchlight problem in a road network What is the worst-case number s(n, g) of searchlights, each placed at one of the g guard positions, required to successfully search a given road network of n lines/line segments? → A mobile intruder capable of moving continuously and arbitrarily fast is hiding. → The objective of the guards is to detect the intruder using the rays. → The intruder is considered detected at the moment he is illuminated by one of the rays → or he reaches a position where a guard is located.

a b a b

undetected

◮ Sugihara, Suzuki and Yamashita. (1990): The searchlight scheduling problem ◮ Yen and Tang (1995): The searchlight guarding problem on weighted trees

1/13

slide-3
SLIDE 3

Problem definition The searchlight problem in a road network What is the worst-case number s(n, g) of searchlights, each placed at one of the g guard positions, required to successfully search a given road network of n lines/line segments? → A mobile intruder capable of moving continuously and arbitrarily fast is hiding. → The objective of the guards is to detect the intruder using the rays. → The intruder is considered detected at the moment he is illuminated by one of the rays → or he reaches a position where a guard is located.

(a)

v0 v1 F ′′ F ′ F

(b)

v0 v1 F ′′ F ′ F

· · ·

(c)

v0 v1 F ′′ F ′ F

A sample search strategy for an (n, 2)-arrangement, n ≥ 4.

1/13

slide-4
SLIDE 4

Lines Arrangements of lines: a lower bound of 2g − 1

A2

v0 v1

(4, 2)-arrangement A2 = (L2, {v0, v1}) that requires at least three searchlights Ag

v0 v1 v2

· · ·

vg−1

(2g, g)-arrangement Ag = (Lg, {v0, . . . , vg−1}), g ≥ 2

s(n, g) ≥ 2g − 1

2/13

slide-5
SLIDE 5

Lines Arrangements of lines: a lower bound of 2g − 1

A′

g

v0 v1 v2

· · ·

vk−1 vk · · · vg−1

For 1 ≤ g ≤ n − 1, s(n, g) ≥            2g − 1 if 1 ≤ g ≤ n

2;

n − 2 if n

2 < g ≤ n − 2;

n − 1 if g = n − 1.

2/13

slide-6
SLIDE 6

Lines Arrangements of lines: an upper bound of 7g

3 − 1

s(n, g) ≤ 3g

3/13

slide-7
SLIDE 7

Lines Arrangements of lines: an upper bound of 7g

3 − 1

this searchlight is fixed recursion

s(n, g) ≤ 3g

3/13

slide-8
SLIDE 8

Lines Arrangements of lines: an upper bound of 7g

3 − 1

this searchlight is fixed recursion remains clean

s(n, g) ≤ 3g

3/13

slide-9
SLIDE 9

Lines Arrangements of lines: an upper bound of 7g

3 − 1

this searchlight is fixed remains clean remains clean recursion

s(n, g) ≤ 3g

3/13

slide-10
SLIDE 10

Lines Arrangements of lines: an upper bound of 7g

3 − 1

s(n, g) ≤ 7g 3 − 1

3/13

slide-11
SLIDE 11

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v0 v1 x

no intersection points between v1 and x

v0 v4 v5 v1 v3 v2 v6

v0 is incident to v1

s(n, g) ≤ 7g 3 − 1

3/13

slide-12
SLIDE 12

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v3 v2 x

no intersection points between v3 and x

v0 v4 v5 v1 v3 v2 v6

v2 is incident to v3

s(n, g) ≤ 7g 3 − 1

3/13

slide-13
SLIDE 13

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v3 v0

there is a ‘free’ cycle around v3

v0 v4 v5 v1 v3 v2 v6

v0 is not incident to v3

s(n, g) ≤ 7g 3 − 1

3/13

slide-14
SLIDE 14

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v3 v0 v4 v5 v1 v3 v2 v6

any arborescence: 3 searchlights at the root v0 2 searchlights at any other vertex

  • rdering: v0, v1, v2, v3, v4, v5, v6

s(n, g) ≤ 7g 3 − 1

3/13

slide-15
SLIDE 15

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v0 v1 v3

wrong order: v3 is handled before handling v2

v0 v4 v5 v1 v3 v2 v6

any arborescence: 3 searchlights at the root v0 2 searchlights at any other vertex

  • rdering: v0, v1, v2, v3, v4, v5, v6

v0 v1 v3 v2

correct order: v3 is handled after handling v2

s(n, g) ≤ 7g 3 − 1

3/13

slide-16
SLIDE 16

Lines Arrangements of lines: an upper bound of 7g

3 − 1

v0 v1 v3

wrong order: v3 is handled before handling v2

v0 v4 v5 v1 v3 v2 v6

any arborescence: 3 searchlights at the root v0 2 searchlights at any other vertex

  • rdering: v0, v1, v2, v3, v4, v5, v6

v0 v1 v3 v2

correct order: v3 is handled after handling v2

s(A) ≤ 2g + (h − 1).

3/13

slide-17
SLIDE 17

Lines Arrangements of lines: an upper bound of 7g

3 − 1

s(n, g) ≤ 7g 3 − 1

4/13

slide-18
SLIDE 18

Lines Arrangements of lines: an upper bound of 7g

3 − 1

s(n, g) ≤ 7g 3 − 1

4/13

slide-19
SLIDE 19

Lines Arrangements of lines: an upper bound of 7g

3 − 1

s(n, g) ≤ 7g 3 − 1

4/13

slide-20
SLIDE 20

Line segments Arrangements of line segments: a lower bound of Ω(g log n

g)

A2 A✷

2

A3 A✷

3

ˆ A✷

2

¯ A✷

2

ˇ A✷

2

s(n, 2) = Ω(log n)

5/13

slide-21
SLIDE 21

Line segments Arrangements of line segments: a lower bound of Ω(g log n

g)

A2 A✷

2

A2 A✷

2 ˆ A✷

2

¯ A✷

2

ˇ A✷

2

s(n, 2) = Ω(log n)

5/13

slide-22
SLIDE 22

Line segments Arrangements of line segments: a lower bound of Ω(g log n

g)

A2 A✷

2

A3 A✷

3

ˆ A✷

2

¯ A✷

2

ˇ A✷

2

s(n, 2) = Ω(log n)

5/13

slide-23
SLIDE 23

Line segments Arrangements of line segments: a lower bound of Ω(g log n

g)

Ak−1 A✷

k−1

Ak A✷

k

ˆ A✷

k−1

¯ A✷

k−1

ˇ A✷

k−1

s(n, 2) = Ω(log n)

5/13

slide-24
SLIDE 24

Line segments Arrangements of line segments: a lower bound of Ω(g log n

g)

Ak Ak Ak Ak s(n, g) = Ω(g log n g)

5/13

slide-25
SLIDE 25

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

6/13

slide-26
SLIDE 26

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

6/13

slide-27
SLIDE 27

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights nice arrangement all guards are “outside”

6/13

slide-28
SLIDE 28

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights not nice arrangement some guards are “inside”

6/13

slide-29
SLIDE 29

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights not nice arrangement some guards are “inside”

6/13

slide-30
SLIDE 30

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights not nice arrangement some guards are “inside”

6/13

slide-31
SLIDE 31

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

7/13

slide-32
SLIDE 32

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S balanced partition

7/13

slide-33
SLIDE 33

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S balanced partition

7/13

slide-34
SLIDE 34

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights finding a balanced splitter with respect to v

L(v) L∗(v) |L∗(v)| = 22

8/13

slide-35
SLIDE 35

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights finding a balanced splitter with respect to v

L∗(v) |L∗(v)| = 22

8/13

slide-36
SLIDE 36

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights finding a balanced splitter with respect to v

L∗(v) |L∗(v)| = 22

8/13

slide-37
SLIDE 37

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

1 2 2 2 1 2 4 2 2 2 2

finding a balanced splitter with respect to v

L∗(v) |L∗(v)| = 22

8/13

slide-38
SLIDE 38

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

e 1 2 2 2 1 2 4 2 2 2 2

finding a balanced splitter with respect to v

L∗(v) |L∗(v)| = 22

8/13

slide-39
SLIDE 39

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S balanced partition with respect to v

9/13

slide-40
SLIDE 40

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S balanced partition with respect to v

9/13

slide-41
SLIDE 41

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S curve C and its (S, x)-separator

9/13

slide-42
SLIDE 42

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights splitter S curve C and its (S, x)-separator

9/13

slide-43
SLIDE 43

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

O(1) searchlights for “illuminating” C1 recursion

splitter S recursive clearing balanced arrangements along the splitter C1

9/13

slide-44
SLIDE 44

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

O(1) searchlights for “illuminating” C2 recursion O(1) searchlights for “illuminating” C1 searched searched

splitter S recursive clearing balanced arrangements along the splitter C2 C1

9/13

slide-45
SLIDE 45

Line segments Arrangements of line segments: an upper bound of O(g2 log n) ◮ partitioning into nice arrangements: O(g) searchlights (remain fixed) ◮ recursive searching of nice arrangements (divide-and-conquer) → depth of the recursion with respect to a guard v: O(log n) → divide-and-conquer: O(1) searchlights per each guard → the total number of O(g2 log n) searchlights

O(1) searchlights for “illuminating” C2 searched

splitter S recursive clearing balanced arrangements along the splitter C2 C3

9/13

slide-46
SLIDE 46

Open problems Problem 1. Provide better estimates on s(n, g) in the case of (n, g)-arrangements of lines. In particular, prove or disprove that s(n, g) ≤ 2g. 2g − 1 ≤ s(n, g) ≤ 7g

3 − 1

Problem 2. Provide better estimates on s(n, g) in the general case of (n, g)-arrangements

  • f line segments.

Without any strong evidence, we conjecture that the upper bound on s(n, g) can be improved up to O(g log ∆), where ∆ is the maximum number of maximal line segments

  • f an arrangement having a point in common.

s(n, g) = Ω(g log ∆) and s(n, g) = O(g2 log n) Problem 3. The time and space complexity of deciding whether the given arrangement (of lines/line segments) can be searched using k ≥ 1 searchlights.

10/13