SIROCCO 2016 - Daniel Graf
Transcription
SIROCCO 2016 - Daniel Graf
SIROCCO 2016 Collaborative Delivery with Energy-Constrained Mobile Robots 1 Bärtschi , Andreas Jérémie Shantanu Yann 1 1 2 4 Barbara Geissmann , Daniel Graf , Arnaud Labourel , Matúš Mihalák 1 2 3 4 2 Chalopin , ETH Zürich LIF, CNRS et Aix-Marseille Université Technische Universität Berlin Maastricht University 2 Das , 3 Disser 23rd International Colloquium on Structural Information and Communication Complexity 19–21 July 2016 · Helsinki, Finland Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Motivation Collaborative delivery with mobile agents Image Sources: BLADE Nano QX RTF Quadcopter, http://paralebin.hol.es/robot/, http://www.generationrobots.com Introduction Model Setting • undirected, edge-weighted graph with n=|V|, m=|E| • single message from s to t • anyone can use any edge Agents • k agents each with • starting vertex pi • battery capacity Bi • agents have to return Assumptions • global coordination • handovers anywhere Task Decide feasibility! If yes, compute a schedule. Introduction Example B1=7 p1 2 1 s 3 t Introduction Example p1 B1=5 2 1 s 3 t Introduction Example p1 B1=5 2 1 s 3 t Introduction Example p1 2 B1=2 1 s 3 t Introduction Example p1 2 1 B =2 1 s 3 t Introduction Example B1=1 p1 2 1 s 3 t Introduction Example B3=8 B1=7 4 3 p1 2 p3 3 1 2 s 3 4 2 1 p2 B2=9 1 2 t Introduction Example B3=8 B1=7 4 3 p1 2 p3 3 1 2 s 3 4 2 1 p2 B2=9 1 2 t Introduction Outline Observations • No agent picks up the message twice • Path of an agent specified by two points u pi v w Introduction Outline Observations • No agent picks up the message twice • Path of an agent specified by two points Overview of the talk v u • For trees? • For all graphs? • What can we do with bigger batteries? pi w On Trees Reduction to Paths p3 p1 s p2 . t On Trees Reduction to Paths Move the agents to the s-t-path and adapt the budgets. p3 p1 s p2 . t On Trees Reduction to Paths Move the agents to the s-t-path and adapt the budgets. p1 s p3 . p2 t On Trees Reduction to Paths Move the agents to the s-t-path and adapt the budgets. . s t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi s p1 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 s p1 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 s p1 p2 p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 s p1 p2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 s p1 p2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 s Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 s Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 s Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 s p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 s p5 t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 p1 p2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) p3 p4 p5 s t On Trees Greedy Scheduling Solving the Path Case interval covering problem • length Bi/2 containing pi • range: from li = pi - Bi/2 to ri = pi + Bi/2 Greedy Algorithm • already covered up to s • pick interval to minimize ri among all with li ≤ s < ri • Set s‘ = min(ri, s + Bi/2) Proof: exchange argument p1 p2 p3 p4 p5 s t On Trees Greedy Scheduling Theorem: There is a O(n·k + k·logk) algorithm for trees. . s Surprising as non-returning setting is weakly NP-hard. [Chalopin, Jacob, Mihalák, Widmayer, 2014] Chalopin, Jacob, Mihalák, Widmayer: Data delivery by energy-constrained mobile agnets on a line, ICALP 2014. t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP p1 s p2 p3 t Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP Corollary: For constantly many agents, we can do it in poly(n,m) by brute forcing the order of the agents. Arbitrary Graphs Fixed Order Theorem: If agents are restricted to carry the message in a fixed order, we can decide in time O(k(n+m)(n·logn + m)). Proof: Dynamic Programming with Dijkstra‘s SSSP Corollary: For constantly many agents, we can do it in poly(n,m) by brute forcing the order of the agents. Question: What about many agents? Arbitrary Graphs NP-hardness Theorem: Our problem is strongly NP-hard even on planar graphs. Proof Sketch: Reduction from Planar-3SAT. Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 v2 v3 v4 Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 v1 v2 ∨ v3 ∨ v4 v2 v1 ∨ v2 ∨ v4 v3 v2 ∨ v3 ∨ v4 v4 v4 Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v2 ∨ v3 ∨ v4 v2 v1 ∨ v2 ∨ v4 v3 v2 ∨ v3 ∨ v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v2 ∨ v3 ∨ v4 v2 v1 ∨ v2 ∨ v4 v3 v2 ∨ v3 ∨ v4 v4 v4 t decide assignment Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v2 ∨ v3 ∨ v4 v2 v1 ∨ v2 ∨ v4 v3 v2 ∨ v3 ∨ v4 v4 v4 cover for unsatisfied literals t decide assignment Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v4 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v4 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. v1 ∨ v2 vs1 v1 v1 v1 ∨ v2 ∨ v4 v2 ∨ v3 ∨ v4 v2 v2 v2 v3 v3 v3 v2 ∨ v3 ∨ v4 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t Arbitrary Graphs NP-hardness Proof Sketch: Reduction from Planar-3SAT. vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t Resource Augmentation Definition Resource Augmentation Definition What is a 2-resource-augmented algorithm? Resource Augmentation Definition What is a 2-resource-augmented algorithm? Given: s t Resource Augmentation Definition What is a 2-resource-augmented algorithm? Given: s Algorithm: t s t Resource Augmentation Definition What is a 2-resource-augmented algorithm? Given: Algorithm: s t s t s t Resource Augmentation Definition What is a 2-resource-augmented algorithm? Given: Algorithm: s t s s t s t ? t Resource Augmentation B3=8 B1=7 4 p3 3 1 2 s 3 4 3 p1 2 Example 2 1 p2 B2=9 1 2 t Resource Augmentation B3=16 B1=14 4 p3 3 1 2 s 3 4 3 p1 2 Example 2 1 p2 B2=18 1 2 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. p2 s p1 p3 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. p2 s p1 p3 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. B1/2 s p1 p2 p3 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. p2 s p1 p3 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. p2 s p1 p3 t Resource Augmentation Factor 2 Theorem: We can do it if we are allowed to use at most twice the battery power necessary. Proof Sketch: Balls of radius Bi/2. p2 s p1 p3 t Resource Augmentation Hardness Theorem: Unless P=NP, there is no polynomial-time (2-ε)-resource augmented algorithm. Resource Augmentation Hardness Theorem: Unless P=NP, there is no polynomial-time (2-ε)-resource augmented algorithm. Proof Sketch: vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t Resource Augmentation Hardness Theorem: Unless P=NP, there is no polynomial-time (2-ε)-resource augmented algorithm. ... Proof Sketch: vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t ... Resource Augmentation Hardness Theorem: Unless P=NP, there is no polynomial-time (2-ε)-resource augmented algorithm. ... Proof Sketch: vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t ... Resource Augmentation Hardness Theorem: Unless P=NP, there is no polynomial-time (2-ε)-resource augmented algorithm. ... Proof Sketch: vs1 v1 v1 v2 v2 v2 v3 v3 v3 v4 v4 v4 t ... Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Resource Augmentation Equality Theorem: If all agents have equal budget, there is an (2-2/k)-resource augmented polynomial-time algorithm. Proof Sketch: Guess first and last agent. Redistribute remaining budget evenly. s t Conclusion Summary Contributions • fast, greedy algorithm for paths and trees • strong NP-hardness for planar graphs • 2-resource-augmentation algorithm and it is tight • more for non-returning case Future Work • multiple messages • on a line, or • with fixed agent order Thank you!