Covering Tours with Turn Cost: Variants, Approximation and Practical - - PowerPoint PPT Presentation

covering tours with turn cost variants approximation and
SMART_READER_LITE
LIVE PREVIEW

Covering Tours with Turn Cost: Variants, Approximation and Practical - - PowerPoint PPT Presentation

Institute of Operating Systems and Computer Networks Covering Tours with Turn Cost: Variants, Approximation and Practical Solution S andor P. Fekete and Dominik Krupke EuroCG2017, Malm o, 05.04.2017 Introduction Problem Integer


slide-1
SLIDE 1

Institute of Operating Systems and Computer Networks

Covering Tours with Turn Cost: Variants, Approximation and Practical Solution

S´ andor P. Fekete and Dominik Krupke

EuroCG2017, Malm¨

  • , 05.04.2017
slide-2
SLIDE 2

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Introduction

A drone equipped with an electrical lattice for hunting mosquitoes. . .

Mul$copter UAV

θ dd ds hs vd vf hm ms ms hd

Region to Clear

  • f Mosquitos

htop hbottom

Region Cleared

  • f Mosquitos

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 2 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-3
SLIDE 3

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Introduction

. . . and a set of mosquito hotspots.

0:2 3:4 0:3 0:4 1:1 2:1 0:9 1:5 0:4

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 3 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-4
SLIDE 4

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Introduction

Find a tour that minimizes the battery costs (and maximizes the mosquito kill probability). Full Coverage Penalty Coverage

0:2 3:4 0:3 0:4 1:1 2:1 0:9 1:5 0:4 0:2 3:4 0:3 0:4 1:1 2:1 0:9 1:5 0:4

Cover all points Cover subset, pay penalty Minimize cost Maximize profit

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 4 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-5
SLIDE 5

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

But what are the costs?

If only distance costs: (Penalty) Travelings Salesman Problem. Despite its NP-hardness, it usually can be solved well enough. However, turn costs are significant!

5 5 10 15 20 25 30 35 x[m] 5 10 15 20 25 30 35 y[m] 180 240 300 360 420 480 540 600 660 Energy per meter [J/m]

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 5 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-6
SLIDE 6

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Distance costs are insufficient

While distance and turn costs often correlate for shortest path, this is usually not true for tours.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 6 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-7
SLIDE 7

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Previous Work

log n-approximation for full tour and NP-hardness of cycle cover by Aggarwal et al. 2000 Integer Programming, Polytope, Heuristics but on small instances (< 100 points) by different authors. For obstacles and penalty coverage no work is known to us.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 7 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-8
SLIDE 8

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Simplification of problem

Discretize the passable orientations for each point to a limited number ω

0:2 3:4 0:3 0:4 1:1 2:1 0:9 1:5 0:4

Arbitrarily bad instances can be created (compared to continuous). Still, for ω ≥ 2 even cycle cover is NP-hard.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 8 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-9
SLIDE 9

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Integer Programming

Both problems yield relatively simple IP-formulations Effective subtour separation for penalty is more complicated.

Subtours can vanish instead of connect. Not considered here and for exactly this problem Successfully applied by us in grid graphs.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 9 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-10
SLIDE 10

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Full Coverage

vp;α vp;α+π

min

  • e∈E

c(e) ∗ xe (1) s.t.

  • e∈E(vp,α)

xe =

  • e∈E(vp,α+π)

xe ∀p ∈ P ∀α ∈ δ(v) (2)

  • α∈δ(p)
  • e∈E(vp,α)

xe ≥ 1 ∀p ∈ P (3) xe ∈ {0, 1} ∀e ∈ E (4) Subtour elimination :

  • e∈E(V (C),V (P\C))

xe ≥ 2 ∀C P, C = ∅ (5)

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 10 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-11
SLIDE 11

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-12
SLIDE 12

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.

Full Tour, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-13
SLIDE 13

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.
  • 2. Round to the orientations

dominant in this solution.

Due to the limited amount of

  • rientations, we can give an

upper bound.

Full Tour, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-14
SLIDE 14

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.
  • 2. Round to the orientations

dominant in this solution.

Due to the limited amount of

  • rientations, we can give an

upper bound.

  • 3. Obtain a cycle cover by

MinPerfMatching. Full Tour, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-15
SLIDE 15

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.
  • 2. Round to the orientations

dominant in this solution.

Due to the limited amount of

  • rientations, we can give an

upper bound.

  • 3. Obtain a cycle cover by

MinPerfMatching.

  • 4. Connect cycles by a

standard tree technique.

Doubled MST for full coverage.

Full Tour, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-16
SLIDE 16

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

O(ω) Approximation Algorithms

General idea:

  • 1. Solve the LP-relaxation.
  • 2. Round to the orientations

dominant in this solution.

Due to the limited amount of

  • rientations, we can give an

upper bound.

  • 3. Obtain a cycle cover by

MinPerfMatching.

  • 4. Connect cycles by a

standard tree technique.

Doubled MST for full coverage.

Full Tour, ω = 8

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-17
SLIDE 17

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Approximation Algorithms

Penalty Coverage:

Consider paying penalty as coverage by artificial cycle. Connection to tour by Prize-Collecting Steiner Tree approximation.

Factors: Full Penalty Cycle cover 2 ∗ ω 2 ∗ (ω + 1) Tour 4 ∗ ω + 2 4 ∗ (ω + 1) + 4

Cycle Cover: ω from rounding, 2 from matching Tour: CC + 2 × tree + connecting turns(≤ CC).

These factors are very pessimistic, see experiments.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 12 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-18
SLIDE 18

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments

10 × 50, 100, 150, . . . random points in the unit square. No obstacles, i.e., preprocessing of edge costs is faster. Uniform orientations for all points. Instances:

ω = 2, 3, 4 with only turn costs ω = 2 with turn costs (radian) and distance costs (0.5 eucl. dist)

MinPerfMatching solved via CPLEX. Intel(R) Core(TM) i7-6700K CPU@4.00GHz, 64GB of RAM, CPLEX 12.5.0.0

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 13 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-19
SLIDE 19

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Cycle Cover IP

Percentage solved for full coverage cycle cover: 20 40 60 80 100 50 100 150 200 250 300 350 % solved in 15min number of points OPT:τ = 1, κ = 0, ω = 2 OPT:τ = 1, κ = 0, ω = 3 OPT:τ = 1, κ = 0, ω = 4 OPT:τ = 1, κ = 1

2, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 14 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-20
SLIDE 20

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Cycle Cover IP

Runtime for full coverage cycle cover (15min for unsolved): 100 200 300 400 500 600 700 800 900 50 100 150 200 250 300 350 runtime in seconds number of points OPT:τ = 1, κ = 0, ω = 2 OPT:τ = 1, κ = 0, ω = 3 OPT:τ = 1, κ = 0, ω = 4 OPT:τ = 1, κ = 1

2, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 15 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-21
SLIDE 21

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Tour IP

Percentage solved for full coverage tour: 20 40 60 80 100 50 100 150 200 250 300 350 % solved in 15min number of points OPT:τ = 1, κ = 0, ω = 2 OPT:τ = 1, κ = 0, ω = 3 OPT:τ = 1, κ = 0, ω = 4 OPT:τ = 1, κ = 1

2, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 16 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-22
SLIDE 22

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Tour IP

Runtime for full coverage tour (15min for unsolved): 100 200 300 400 500 600 700 800 900 50 100 150 200 250 300 350 runtime in seconds number of points OPT:τ = 1, κ = 0, ω = 2 OPT:τ = 1, κ = 0, ω = 3 OPT:τ = 1, κ = 0, ω = 4 OPT:τ = 1, κ = 1

2, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 17 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-23
SLIDE 23

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Approximation

Runtime of approximation algorithm for tours. 5 10 15 20 25 30 35 40 45 50 100 150 200 250 300 350 runtime in seconds number of points APX:τ = 1, κ = 0, ω = 2 APX:τ = 1, κ = 0, ω = 3 APX:τ = 1, κ = 0, ω = 4 APX:τ = 1, κ = 1

2, ω = 2

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 18 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-24
SLIDE 24

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Approximation

Runtime of approximation algorithm for tours (τ = 1, κ = 0, ω = 2). 200 400 600 800 1000 1200 200 400 600 800 1000 1200 1400 1600 1800 runtime in seconds number of points

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 19 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-25
SLIDE 25

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Experiments - Approximation/Optimum

Cycle Cover:

Size ω = 2, τ = 1, κ = 0 ω = 3, τ = 1, κ = 0 ω = 4, τ = 1, κ = 0 ω = 2, τ = 1, κ = 0.5 50 1.031/9/1.067 1.073/10/1.178 1.088/10/1.129 1.028/9/1.069 100 1.024/10/1.04 1.076/8/1.106

  • /-/-

1.034/10/1.057 150 1.044/10/1.073

  • /-/-
  • /-/-

1.037/10/1.057 200 1.036/9/1.057

  • /-/-
  • /-/-

1.034/9/1.049 250 1.039/6/1.046

  • /-/-
  • /-/-

1.038/5/1.049 300 1.033/2/1.036

  • /-/-
  • /-/-

1.028/2/1.03 350

  • /-/-
  • /-/-
  • /-/-
  • /-/-

Tour:

Size ω = 2, τ = 1, κ = 0 ω = 3, τ = 1, κ = 0 ω = 4, τ = 1, κ = 0 ω = 2, τ = 1, κ = 0.5 50 1.09/9/1.368 1.173/10/1.304 1.18/10/1.484 1.08/9/1.225 100 1.089/10/1.242 1.227/8/1.457

  • /-/-

1.149/10/1.325 150 1.152/10/1.308

  • /-/-
  • /-/-

1.12/10/1.247 200 1.15/10/1.268

  • /-/-
  • /-/-

1.096/8/1.164 250 1.103/4/1.141

  • /-/-
  • /-/-

1.097/4/1.109 300

  • /-/-
  • /-/-
  • /-/-

1.053/1/1.053 350

  • /-/-
  • /-/-
  • /-/-
  • /-/-

AVG/Amount/MAX

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 20 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-26
SLIDE 26

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Conclusion

Optimal solvable size much larger for ω = 2. ω > 2 still hard. The approximation algorithm has a reasonable practical runtime and solution quality. Experiments for the penalty variant are still left open.

S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 21 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks

slide-27
SLIDE 27

Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion

Conclusion

Optimal solvable size much larger for ω = 2. ω > 2 still hard. The approximation algorithm has a reasonable practical runtime and solution quality. Experiments for the penalty variant are still left open. Thank you! Questions? Slides, paper, and additional material can be found on http://publications.krupke.cc/2017/eurocg/

Mosquito drone and corresponding images by Aaron Becker and his team in Houston. S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 21 http://publications.krupke.cc/2017/eurocg/

Institute of Operating Systems and Computer Networks