The angular blowing-a-kiss 001 010 000 problem 011 111 Kevin - - PowerPoint PPT Presentation

the angular blowing a kiss
SMART_READER_LITE
LIVE PREVIEW

The angular blowing-a-kiss 001 010 000 problem 011 111 Kevin - - PowerPoint PPT Presentation

The angular blowing-a-kiss 001 010 000 problem 011 111 Kevin Buchin , Irina Kostitsyna, Roel Lambers, and Martijn Struijs 100 110 101 The angular blowing-a-kiss problem n oriented agents in the plane The angular blowing-a-kiss


slide-1
SLIDE 1

001 010 011 100 101 110 111 000

The angular blowing-a-kiss

and Martijn Struijs

problem

Kevin Buchin, Irina Kostitsyna, Roel Lambers,

slide-2
SLIDE 2

The angular blowing-a-kiss problem

  • n oriented agents in the plane
slide-3
SLIDE 3

The angular blowing-a-kiss problem

  • n oriented agents in the plane
  • stationary, but can rotate
slide-4
SLIDE 4

The angular blowing-a-kiss problem

  • n oriented agents in the plane
  • stationary, but can rotate
  • a pair of agents oriented towards eachother can scan
slide-5
SLIDE 5

The angular blowing-a-kiss problem

  • n oriented agents in the plane
  • stationary, but can rotate
  • a pair of agents oriented towards eachother can scan
  • how long does it take to scan all pairs?
slide-6
SLIDE 6

The angular blowing-a-kiss problem

  • n oriented agents in the plane
  • stationary, but can rotate
  • a pair of agents oriented towards eachother can scan
  • how long does it take to scan all pairs?
slide-7
SLIDE 7

The angular blowing-a-kiss problem

  • n oriented agents in the plane
  • stationary, but can rotate
  • a pair of agents oriented towards eachother can scan
  • how long does it take to scan all pairs?
slide-8
SLIDE 8

Related work

  • kissing problem [Bender et al. 2014]
  • angular freeze-tag [Fekete, Krupke 2018]
  • scan cover for general graphs [Fekete, Kleist, Krupke 2020]
slide-9
SLIDE 9

Problem description

  • rotations take time proportional to their angle

π/2 time π time

slide-10
SLIDE 10

Problem description

  • rotations take time proportional to their angle

π/2 time π time

  • goal: find a schedule that minimizes makespan

π/3 π/3 makespan: 2π/3

slide-11
SLIDE 11

Problem description

  • rotations take time proportional to their angle

π/2 time π time

  • goal: find a schedule that minimizes makespan

π/3 π/3 makespan: 2π/3

  • synchronous schedule: ⌊n/2⌋ simultaneous scans per round

synchronous asynchronous

  • synchronous schedule: ⌊n/2⌋ simultaneous scans per round

synchronous asynchronous

  • synchronous schedule: ⌊n/2⌋ simultaneous scans per round

synchronous asynchronous

  • synchronous schedule: ⌊n/2⌋ simultaneous scans per round

synchronous asynchronous

slide-12
SLIDE 12

Results

line/1D uniform circle general 2D async. π(⌈log n⌉ − 1) ∼ π log n π( 3

2⌈log n⌉ − 1 2)

sync. π(⌈log n⌉ − 1) 2π log n a – LB π(⌈log n⌉ − 1) ∼ π log n –

awhen n is a power of 2

slide-13
SLIDE 13

Results

line/1D uniform circle general 2D async. π(⌈log n⌉ − 1) ∼ π log n π( 3

2⌈log n⌉ − 1 2)

sync. π(⌈log n⌉ − 1) 2π log n a – LB π(⌈log n⌉ − 1) ∼ π log n –

awhen n is a power of 2

slide-14
SLIDE 14

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise

slide-15
SLIDE 15

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 1:

slide-16
SLIDE 16

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 1:

slide-17
SLIDE 17

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 1:

slide-18
SLIDE 18

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 1:

slide-19
SLIDE 19

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 1:

slide-20
SLIDE 20

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 2:

slide-21
SLIDE 21

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 2:

slide-22
SLIDE 22

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise phase 3:

slide-23
SLIDE 23

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise

  • phase ℓ:

scan pairs at distance 2ℓ−1(2i + 1) for i = 0, . . . , 2k−ℓ − 1 phase 3:

slide-24
SLIDE 24

Synchronous on a circle with n = 2k

for phase ℓ = 1, . . . , k: scan pairs that differ in ℓ-th bit 001 010 011 100 101 110 111 000 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise

  • phase ℓ:

scan pairs at distance 2ℓ−1(2i + 1) for i = 0, . . . , 2k−ℓ − 1

  • costs:

π per phase to scan pairs π between phases 2π log n in total phase 3:

slide-25
SLIDE 25

Synchronous on a line

p1 p2 pn · · · pn−1 · · ·

slide-26
SLIDE 26

Synchronous on a line

Algorithm: iteratively construct schedule Sn with rules:

  • 1. Sk → Sk−1 if k even, with the same time
  • 2. Sk → S2k, adding π time

base case: S2, with 0 time p1 p2 p1 p2 pn · · · pn−1 · · ·

slide-27
SLIDE 27

Synchronous on a line

Algorithm: iteratively construct schedule Sn with rules:

  • 1. Sk → Sk−1 if k even, with the same time
  • 2. Sk → S2k, adding π time

base case: S2, with 0 time p1 p2 S2 Sn with ⌈log(n/2)⌉ applications of rule 2, so π(⌈log n⌉ − 1) time in total Time: p1 p2 pn · · · pn−1 · · ·

slide-28
SLIDE 28

Synchronous on a line

  • 1. Sk → Sk−1 if k even, in the same time
slide-29
SLIDE 29

Synchronous on a line

  • 1. Sk → Sk−1 if k even, in the same time

p1 p2 pk−1 · · · pk · · · pj round i of Sk:

slide-30
SLIDE 30

Synchronous on a line

  • 1. Sk → Sk−1 if k even, in the same time

p1 p2 pk−1 · · · pk · · · pj round i of Sk: p1 p2 pk−1 · · · · · · pj round i of Sk−1: bye: pj pk

slide-31
SLIDE 31

Synchronous on a line

  • 2. Sk → S2k, adding π time
slide-32
SLIDE 32

Synchronous on a line

  • 2. Sk → S2k, adding π time

p1 p2 · · · pk pj · · · Sk . . . . . . . . . . . .

slide-33
SLIDE 33

Synchronous on a line

  • 2. Sk → S2k, adding π time

p1 p2 · · · pk pj p′

1

p′

2

p′

k

p′

j

· · · · · · · · · Sk . . . . . . . . . . . . mirror(Sk) . . . . . . . . . . . .

slide-34
SLIDE 34

Synchronous on a line

  • 2. Sk → S2k, adding π time

p1 p2 · · · pk p′

1

p′

2

p′

k

· · · · · · · · · Sk . . . . . . . . . . . . mirror(Sk) . . . . . . . . . . . . pj p′

j

slide-35
SLIDE 35

Synchronous on a line

  • 2. Sk → S2k, adding π time

p1 p2 · · · pk p′

1

p′

2

p′

k

· · · · · · · · · Sk . . . . . . . . . . . . mirror(Sk) . . . . . . . . . . . . pj p′

j

slide-36
SLIDE 36

Synchronous on a line

  • 2. Sk → S2k, adding π time

p1 p2 · · · pk p′

1

p′

2

p′

k

· · · · · · · · · Sk . . . . . . . . . . . . mirror(Sk) . . . . . . . . . . . . pj p′

j

· · · · · · · · · · · · p1 p2 pk pj p′

1

p′

2

p′

k

p′

j

pj p′

j

final rounds: scan bipartite graph between left and right

slide-37
SLIDE 37

Example: S2 → S4 → S3 → S6

p1 p2 S2

slide-38
SLIDE 38

Example: S2 → S4 → S3 → S6

p1 p2 p3 p4 S4

slide-39
SLIDE 39

Example: S2 → S4 → S3 → S6

p1 p2 p3 p4 S4 p1 p2 p3 p4 p1 p2 p3 p4

slide-40
SLIDE 40

Example: S2 → S4 → S3 → S6

p1 p2 p3 p4 S4 p1 p2 p3 p4 p1 p2 p3 p4

slide-41
SLIDE 41

Example: S2 → S4 → S3 → S6

p1 p2 p3 p1 p2 p3 p1 p2 p3 S3

slide-42
SLIDE 42

Example: S2 → S4 → S3 → S6

p1 p2 p3 p1 p2 p3 p1 p2 p3 S6 p6 p5 p4 p6 p5 p4 p6 p5 p4

slide-43
SLIDE 43

Example: S2 → S4 → S3 → S6

p1 p2 p3 p1 p2 p3 p1 p2 p3 S6 p6 p5 p4 p6 p5 p4 p6 p5 p4

slide-44
SLIDE 44

Example: S2 → S4 → S3 → S6

p1 p2 p3 p1 p2 p3 p1 p2 p3 S6 p6 p5 p4 p6 p5 p4 p6 p5 p4 p1 p2 p3 p6 p5 p4 p1 p2 p3 p6 p5 p4

slide-45
SLIDE 45

Example: S2 → S4 → S3 → S6

p1 p2 p3 p1 p2 p3 p1 p2 p3 S6 p6 p5 p4 p6 p5 p4 p6 p5 p4 p1 p2 p3 p6 p5 p4 p1 p2 p3 p6 p5 p4

slide-46
SLIDE 46

Conclusion

Results: Work in progress:

  • synchronous solutions for more general cases
  • complexity of finding optimal solutions in 2D

line/1D uniform circle general 2D async. π(⌈log n⌉ − 1) ∼ π log n π( 3

2⌈log n⌉ − 1 2)

sync. π(⌈log n⌉ − 1) 2π log n a – LB π(⌈log n⌉ − 1) ∼ π log n –

awhen n is a power of 2

line/1D uniform circle general 2D async. π(⌈log n⌉ − 1) ∼ π log n π( 3

2⌈log n⌉ − 1 2)

sync. π(⌈log n⌉ − 1) 2π log n a – LB π(⌈log n⌉ − 1) ∼ π log n –

awhen n is a power of 2

line/1D uniform circle general 2D async. π(⌈log n⌉ − 1) ∼ π log n π( 3

2⌈log n⌉ − 1 2)

sync. π(⌈log n⌉ − 1) 2π log n a – LB π(⌈log n⌉ − 1) ∼ π log n –

awhen n is a power of 2