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 Programming Approximation Algorithm Experiments Conclusion Introduction A drone equipped with an electrical lattice for hunting mosquitoes. . . Mul$copter UAV v f d d h top v d h s m s Region to Clear h m of Mosquitos d s h bottom m s h d θ Region Cleared of Mosquitos S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 2 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion Introduction . . . and a set of mosquito hotspots. 0 : 4 1 : 1 0 : 2 0 : 4 0 : 3 2 : 1 3 : 4 0 : 9 1 : 5 S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 3 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 : 4 0 : 4 1 : 1 1 : 1 0 : 2 0 : 2 0 : 4 0 : 4 0 : 3 0 : 3 2 : 1 2 : 1 3 : 4 3 : 4 0 : 9 0 : 9 1 : 5 1 : 5 Cover all points Cover subset, pay penalty Minimize cost Maximize profit S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 4 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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! 35 660 600 30 540 25 Energy per meter [J/m] 480 20 y[m] 420 15 360 10 300 5 240 0 180 5 0 5 10 15 20 25 30 35 x[m] S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 5 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion Simplification of problem Discretize the passable orientations for each point to a limited number ω 0 : 4 1 : 1 0 : 2 0 : 4 0 : 3 2 : 1 3 : 4 0 : 9 1 : 5 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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
Introduction Problem Integer Programming Approximation Algorithm Experiments Conclusion Full Coverage � min c ( e ) ∗ x e (1) e ∈ E ∀ p ∈ P � � s.t. x e = x e (2) ∀ α ∈ δ ( v ) v p; α v p; α + π e ∈ E ( v p ,α ) e ∈ E ( v p ,α + π ) � � x e ≥ 1 ∀ p ∈ P (3) α ∈ δ ( p ) e ∈ E ( v p ,α ) x e ∈ { 0 , 1 } ∀ e ∈ E (4) Subtour � x e ≥ 2 ∀ C � P , C � = ∅ elimination : (5) e ∈ E ( V ( C ) , V ( P \ C )) S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 10 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 orientations, we can give an upper bound. Full Tour, ω = 2 S´ andor P. Fekete and Dominik Krupke | Covering Tours with Turn Cost | 11 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 orientations, 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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 orientations, 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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 orientations, 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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 2 ∗ ω 2 ∗ ( ω + 1) Cycle cover 4 ∗ ω + 2 4 ∗ ( ω + 1) + 4 Tour 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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
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 Institute of Operating Systems and Computer Networks http://publications.krupke.cc/2017/eurocg/
Recommend
More recommend