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 problem • n oriented agents in the plane • stationary, but can rotate
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
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?
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?
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?
Related work • kissing problem [Bender et al. 2014] • angular freeze-tag [Fekete, Krupke 2018] • scan cover for general graphs [Fekete, Kleist, Krupke 2020]
Problem description • rotations take time proportional to their angle π/ 2 time π time
Problem description • rotations take time proportional to their angle π/ 2 time π time • goal: find a schedule that minimizes makespan π/ 3 π/ 3 makespan: 2 π/ 3
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 schedule: ⌊ n/ 2 ⌋ simultaneous scans per round • synchronous schedule: ⌊ n/ 2 ⌋ simultaneous scans per round • synchronous schedule: ⌊ n/ 2 ⌋ simultaneous scans per round synchronous synchronous synchronous synchronous asynchronous asynchronous asynchronous asynchronous
Results line/1D uniform circle general 2D π ( 3 2 ⌈ log n ⌉ − 1 async. π ( ⌈ log n ⌉ − 1) ∼ π log n 2 ) sync. π ( ⌈ log n ⌉ − 1) 2 π log n a – LB π ( ⌈ log n ⌉ − 1) ∼ π log n – a when n is a power of 2
Results line/1D uniform circle general 2D π ( 3 2 ⌈ log n ⌉ − 1 async. π ( ⌈ log n ⌉ − 1) ∼ π log n 2 ) sync. π ( ⌈ log n ⌉ − 1) 2 π log n a – LB π ( ⌈ log n ⌉ − 1) ∼ π log n – a when n is a power of 2
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 1 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 1 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 1 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 1 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 1 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 2 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 2 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 3 : 001 010 000 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 3 : 001 • phase ℓ : 010 000 scan pairs at distance 2 ℓ − 1 (2 i + 1) for i = 0 , . . . , 2 k − ℓ − 1 011 111 100 110 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a circle with n = 2 k for phase ℓ = 1 , . . . , k : scan pairs that differ in ℓ -th bit phase 3 : 001 • phase ℓ : 010 000 scan pairs at distance 2 ℓ − 1 (2 i + 1) for i = 0 , . . . , 2 k − ℓ − 1 011 111 • costs: π per phase to scan pairs 100 110 π between phases 2 π log n in total 101 1-bit agents rotate clockwise 0-bit agents rotate counter-clockwise
Synchronous on a line · · · · · · p n p 1 p 2 p n − 1
Synchronous on a line · · · · · · p n p 1 p 2 p n − 1 Algorithm: iteratively construct schedule S n with rules: base case: S 2 , with 0 time p 1 p 2 1. S k → S k − 1 if k even, with the same time 2. S k → S 2 k , adding π time
Synchronous on a line · · · · · · p n p 1 p 2 p n − 1 Algorithm: iteratively construct schedule S n with rules: base case: S 2 , with 0 time p 1 p 2 1. S k → S k − 1 if k even, with the same time 2. S k → S 2 k , adding π time Time: S 2 � S n with ⌈ log( n/ 2) ⌉ applications of rule 2, so π ( ⌈ log n ⌉ − 1) time in total
Synchronous on a line 1. S k → S k − 1 if k even, in the same time
Synchronous on a line 1. S k → S k − 1 if k even, in the same time · · · · · · round i of S k : p k − 1 p 1 p 2 p j p k
Synchronous on a line 1. S k → S k − 1 if k even, in the same time · · · · · · round i of S k : p k − 1 p 1 p 2 p j p k · · · · · · round i of S k − 1 : p k − 1 p k p 1 p 2 p j bye: p j
Synchronous on a line 2. S k → S 2 k , adding π time
Synchronous on a line 2. S k → S 2 k , adding π time S k · · · · · · p 1 p 2 p j p k . . . . . . . . . . . .
Synchronous on a line 2. S k → S 2 k , adding π time S k mirror ( S k ) · · · · · · · · · · · · p ′ p ′ p ′ p 1 p 2 p j p k p ′ j 2 1 k . . . . . . . . . . . . . . . . . . . . . . . .
Synchronous on a line 2. S k → S 2 k , adding π time S k mirror ( S k ) · · · · · · · · · · · · p ′ p ′ p ′ p 1 p 2 p j p k p ′ j 2 1 k . . . . . . . . . . . . . . . . . . . . . . . .
Synchronous on a line 2. S k → S 2 k , adding π time S k mirror ( S k ) · · · · · · · · · · · · p ′ p ′ p ′ p 1 p 2 p j p k p ′ j 2 1 k . . . . . . . . . . . . . . . . . . . . . . . .
Synchronous on a line 2. S k → S 2 k , adding π time S k mirror ( S k ) · · · · · · · · · · · · p ′ p ′ p ′ p 1 p 2 p j p k p ′ j 2 1 k . . . . . . . . . . . . . . . . . . . . . . . . final rounds: scan bipartite graph between left and right · · · · · · · · · · · · p ′ p ′ p ′ p ′ p 1 p 2 p j p j p k p ′ j j 2 1 k
Example: S 2 → S 4 → S 3 → S 6 S 2 p 1 p 2
Example: S 2 → S 4 → S 3 → S 6 S 4 p 1 p 2 p 3 p 4
Example: S 2 → S 4 → S 3 → S 6 S 4 p 1 p 2 p 3 p 4 p 1 p 2 p 3 p 4 p 1 p 2 p 3 p 4
Example: S 2 → S 4 → S 3 → S 6 S 4 p 1 p 2 p 3 p 4 p 1 p 2 p 3 p 4 p 1 p 2 p 3 p 4
Example: S 2 → S 4 → S 3 → S 6 S 3 p 1 p 2 p 3 p 1 p 2 p 3 p 1 p 2 p 3
Example: S 2 → S 4 → S 3 → S 6 S 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6
Example: S 2 → S 4 → S 3 → S 6 S 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6
Example: S 2 → S 4 → S 3 → S 6 S 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6
Example: S 2 → S 4 → S 3 → S 6 S 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6 p 1 p 2 p 3 p 4 p 5 p 6
Recommend
More recommend