On the approximability of two capacitated vehicle routing problems

On the approximability of two capacitated vehicle routing problems

Available online at www.sciencedirect.com Electronic Notes in Discrete Mathematics 41 (2013) 519–526 www.elsevier.com/locate/endm On the approximabi...

169KB Sizes 1 Downloads 95 Views

Available online at www.sciencedirect.com

Electronic Notes in Discrete Mathematics 41 (2013) 519–526 www.elsevier.com/locate/endm

On the approximability of two capacitated vehicle routing problems Adrian Bock 1 EPFL, Lausanne, Switzerland

Laura Sanit`a

2

University of Waterloo, Canada

Abstract Vehicle routing is an important and active research topic in computer science and operations research. In this paper, we give some approximation results for two well-known capacitated vehicle routing problems. Our first result concerns the Capacitated Orienteering problem in Euclidean graphs. We are here given an Euclidean graph G, where each node has a profit value and a demand value, starting and end nodes s, t, a length bound D and a capacity bound C. The goal is to find an s-t-path of length at most D that collects maximum profit from nodes whose total demand does not exceed the capacity bound C. We give a PTAS for this problem, extending the corresponding known result given by Chen and Har-Peled [7] for the uncapacitated version. Our second result concerns the School Bus problem with regret minimization, where we are given a general metric graph, and the task is to design the routes for a given set of buses of limited capacity to transport a set of children to a school, while minimizing a certain regret threshold. Under the standard hypothesis P 6= N P , we show that this problem cannot be approximated. Keywords: Vehicle routing, Approximation algorithms, Orienteering.

1571-0653/$ – see front matter © 2013 Elsevier B.V. All rights reserved. http://dx.doi.org/10.1016/j.endm.2013.05.133

520

1

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

Introduction

A fundamental and important topic in computer science and operations research is Vehicle routing. In fact, vehicle routing problems frequently arise in areas such as logistics, distribution systems, and public transportation (we refer to the survey in [12]). In this paper, we give some approximation results for two known capacitated vehicle routing problems. Our first result concerns the capacitated version of the Orienteering Problem. In the Orienteering Problem (OP), we are given a complete graph G = (V, E) with metric distances d : V × V → N, starting and end nodes s, t ∈ V , node profits π : V → N and a length bound D. The goal is to find P an s-t path P , subject to the length constraint {u,v}∈E(P ) d(u, v) ≤ D, that P collects maximum profit v∈V (P ) π(v) from the nodes it covers. Orienteering is widely studied in the literature in terms of approximation, exact, and heuristic algorithms (see e.g. [6,7,14]). Indeed, there are many algorithms for various vehicle routing problems that rely on applying algorithms for Orienteering as a subroutine (e.g. Deadline-TSP [2], Distance-constrained vehicle routing [10], School Bus problem [4]). Orienteering is NP-hard, but it admits a (2 + ε)-approximation algorithm for general metrics [6], a Fully Polynomial Time Approximation Scheme (FPTAS) for tree metrics [5], and a Polynomial Time Approximation Scheme (PTAS) for Euclidean metrics [7]. 3 The capacitated Orienteering problem (COP) is a natural generalization of Orienteering introduced in [5], in which the selected path has to satisfy a second budget constraint besides the length bound. Namely, here we are also given node demands r : V → N and a capacity bound C ∈ N, and then we P look for an s-t-path P that maximizes π(v), while satisfying both Pv∈V (P ) P constraints {u,v}∈E(P ) d(u, v) ≤ D and v∈V (P ) r(v) ≤ C. There is a number of capacitated vehicle routing problems where the capacitated orienteering problem appears as subroutine (e.g. Capacitated Team Orienteering [1] and related variants). In [5], it is shown that COP admits a constant approximation for general metrics, and a PTAS for tree metrics. In this paper, we give a PTAS for Euclidean metrics, building upon the corresponding result given by [7] for the uncapacitated version. Our second result concerns the School Bus Problem with Regret Minimiza1

Email: [email protected] Email: [email protected] 3 In fact, the result in [7] is given for unit profit values, but it can be generalized to arbitrary profits by simply scaling the profits (cf. [3]). 2

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

521

tion (SBP-R). SBP-R is an NP-hard capacitated vehicle routing problem in which the routes for a given set of buses of limited capacity are to be designed to transport a set of children to a school. The goal is to minimize the maximum regret of a child, that is the difference between the distance travelled on the bus and the shortest distance from the child’s home to the school (a formal definition is given in Section 3). For the SBP-R, heuristic methods for practical applications have been studied (see the survey of [11]), while [4] gives a O(1)-approximation for tree metrics, assuming infinite capacity. Indeed, for general metric graphs there is no literature concerning approximability and inapproximability results. In this paper, we show that unless P = NP , SBP-R is inapproximable, since it is NP-hard to check whether an instance of SBP-R has regret 0 or strictly positive.

2

A PTAS for capacitated Orienteering in the plane

The aim of this section is to give a PTAS for the capacitated Orienteering, extending the result by [7] who considered the case π ≡ 1, r ≡ 1, and C = |V |. We recall here that a PTAS for a maximization problem is an algorithm that takes as input an instance of the problem and a fixed ε > 0, and outputs in polynomial time a solution of value at least (1 − ε) times the value of an optimal solution. In the remainder, d(v, w) refers to the Euclidean distance between the nodes v, w ∈ V . We denote n = |V | and we will focus in the following on points in the plane, i.e. each point is characterized by an x- and a y-coordinate. 2.1 The PTAS for uncapacitated Orienteering In this section we describe the algorithm of Chen and Har-Peled [7]. Their result is based on a dynamic programming approach closely related to the one by Mitchell for k-TSP [9]. In particular, their algorithm relies on a dynamic program for the following k-path problem: Given an Euclidean graph G, nodes s, t ∈ V and an integer k ≤ n, find an s − t path of minimum length visiting at least k nodes. We sketch the dynamic program in more detail, since it will be crucial for our result. Assume that all points are contained in an axis-parallel square R. We use the notion of a window for a closed axis-parallel rectangle w ⊆ R. With this notion and given a fixed ε > 0, one can define table entries for the dynamic program, each characterized by:

522

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

(i) a (minimal) window w that contains at least one point of V , with its boundaries determined by (up to) four points of V , (ii) integer h ∈ {0, 1, . . . , |V |}, indicating the number of nodes that should be visited within w, (iii) boundary information specifying at most m = O( 1ε ) crossing segments (each determined by a pair of points of V , one inside or on the boundary of w, another outside w) for each of the four sides of the boundary of w, (iv) connectivity constraints indicating which pairs of crossing segments are required to be connected within w. Each table entry stores a set of short paths inside w meeting both the boundary and the connectivity constraints, visiting at least h nodes. The stored information can be combined together in a recursive manner, by subdividing each window into smaller windows by cutting w along a horizontal or vertical line (we refer to [7,9] for details). This procedure gives a PTAS for the k-path problem. How is the k-path problem related to Orienteering? We can find a feasible solution for an Orienteering instance (G, s, t, D) as follows: starting from k = 0 up to k = n, apply the dynamic program above for the k-path problem on G and starting and ending nodes s and t. Let P˜ be the best path (in terms of number of visited points) with length ≤ D found with this procedure. P˜ is then a feasible path for the given Orienteering instance. If kopt is the number of points visited by an optimal solution, the authors in [7] show that Lemma 2.1 [7] The path P˜ visits at least (1 − ε)kopt nodes. 2.2 Our modifications Similarly to the previous algorithm for uncapacitated Orienteering, our result relies on a dynamic program for a more general capacitated quota-path problem that is defined as follows: We are given an Euclidean graph G, nodes s, t ∈ V , node profitsPπ : V → N, demands r : V → N, a capacity bound C and an integer Q ≤ v∈V π(v). Moreover, we are also given a special set of vertices S ⊂ V with |S| = O(1). We want to find an s − t path of minimum length that contains S (among possibly some other nodes), and collects at least Q profit by serving a total demand ≤ C. Clearly, the capacitated quotapath problem is a generalization of the k-path problem that can be obtained by setting π ≡ 1, r ≡ 1, C = |V | and S = ∅. We extend the dynamic program of the previous subsection as follows. First, instead of remembering an integer indicating the number of nodes that

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

523

should be visited within a window w, we should rather consider in (ii) a profit threshold to be collected, that is, we should consider an integer h in the range {0, 1, . . . , Q}. Second, we need to handle the demands and the capacity bound. To this end, we additionally specify in a table entry of the dynamic program (v) an integer j in the range {0, . . . , C} indicating that the total demand of the nodes covered inside the window w should not exceed j. Furthermore, we enforce that the dynamic program considers only solutions for a window w that visit all nodes of S that fall into w. We can show that the stored information can be combined in a recursive manner, following exactly the same steps in [7,9], to compute an s − t path visiting the nodes in S, that collects an amount of profit ≥ Q from a subset of nodes of total demand ≤ C. We can therefore prove that Lemma 2.2 There is a PTAS for the quota-path problem if the capacity C and the quota Q are polynomially bounded in the input size. How can we use the quota-path problem to solve capacitated Orienteering? In general, the profits might not be polynomially bounded in the input size. However, by preprocessing our instance using standard scaling and rounding techniques, we can reduce to the case where the profits are polynomially bounded in the input size. Since the argument is pretty standard, we omit the details (see e.g. [15]), and assume this is the case. Again, the capacity bound C might not polynomially bounded in the input size. This would result in a dynamic program whose run time is not polynomial in the input size. Differently from the profit values, we cannot simply apply standard scaling and rounding techniques. To overcome this difficulty, we rely on a feasibilization method introduced by Grandoni and Zenklusen [8]. This is the reason why we have to introduce the special set S of constant size. Given a capacitated Orienteering instance (G, s, t, π, r, C, D) and a fixed ε > 0 small enough, we do the following steps. First, we set ε := 2ε and we guess the 1/ε nodes with largest profit in the 1 optimal solution by enumerating all possibilities in time O(n ε ). This yields the set S. Knowing S, we construct a modified instance (G, s, t, π ′, r ′ , C ′ , D), as follows. For the profits π ′ , we first set to zero the profit values of all nodes that are not in S and have a profit > minv∈S π(v). The profits of the other nodes remain unchanged. The demands P and capacity bound are now rounded and scaled as follows. Let C˜ := C − v∈S r(v) and cmax := maxv∈S:r(v)≤ ˜ r(v). / C For K :=

ε c , n max

˜

C we set C ′ := ⌊(1 − ε) K ⌋ and r ′ (v) = 0 for v ∈ S and

524

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

P r ′ (v) = ⌊ r(v) ⌋ otherwise. For all values of Q from 0 to v∈V π ′ (v), we apply K the dynamic program above for the capacitated quota-path problem on the instance defined by (G, s, t, π ′, r ′ , C ′ , Q, S ′ ) for each subset S ′ ⊆ S. We output the path P ′ of length ≤ D that collects the maximum amount of profit among all feasible paths found with this procedure. Note that C ′ is polynomially bounded in the input size (and so is Q, by assumption) and therefore the running time of the dynamic program is polynomial. The crucial lemma is: Lemma 2.3 The path P ′ is feasible for (G, s, t, π, r, C, D) and collects profit ≥ (1−ε)π(P ∗ ), where P ∗ is the optimal solution of the instance (G, s, t, π, r, C, D). Sketch of the proof. First of all, we observe that the path P ′ is feasible for the instance (G, s, t, π, r, C, D), since: r(P ′) ≤ r(S) + r(P ′ \ S) ≤ r(S) + Kr ′ (P \ S) + Kn ≤ r(S) + KC ′ + εcmax ≤ r(S) + (1 − ε)(C − r(S)) + εcmax ≤ C Then, we argue the bound about the profit threshold by combining the analysis of [7] and the technique of [8]. In more details, we first show that the optimum path P ∗ can be modified as to obtain a path P that is a feasible solution for the modified capacitated orienteering instance (G, s, t, π ′ , r ′, C ′ , D) and still visits all nodes in S, without losing too much in term of profit: namely, π(P ) ≥ (1 − ε)π(P ∗ ). This can be done as in [8], by applying a greedy discarding strategy similar to the greedy strategy for the Knapsack problem. Second, we prove that the path P ′ output by our algorithm has a profit value π(P ′) ≥ (1 − ε)π(P ). To this end, we use a similar analysis as in [7] for Lemma 2.1 to show that, for the quota value (1 − ε)π(P ), the dynamic program will actually find a solution of length ≤ D and thus a feasible path to our original instance (G, s, t, π, r, C, D). Eventually, we obtain π(P ′) ≥ 2 (1 − ε)2 π(P ∗ ) ≥ (1 − ε)π(P ∗). Putting all together, we get Theorem 2.4 There is a PTAS for Capacitated Orienteering in the plane.

3

Inapproximability of the School Bus Problem

In the SBP-R, we are given a complete graph G = (V, E) with general metric distances d : V × V → N, a node s representing the school, and a set W ⊆ V representing the houses of children. Additionally, we are given a bus capacity

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

525

C ∈ N, and a number N ∈ N of available buses. We want to select N paths ending at s (that correspond to bus routes) such that each child is covered by at least one path and the total number of children covered by each path is at most C. The goal is to minimize the regret value R, defined as follows. For a given set of paths covering all children, denote by P v the path covv ering a child v and by dP (v, s) the distance between v and s along the path v P v . Then R := maxv∈W {dP (v, s) − d(v, s)}. Next theorem gives an inapproximability result for the SBP-R. Theorem 3.1 It is NP-hard to distinguish whether an instance of SBP-R has optimum regret value 0 or strictly positive. Sketch of the proof. The reduction is from a variant of the satifiability problem, namely (3, 4)-SAT. Formally, we are given n variables x1 , . . . , xn and m clauses c1 , . . . , cm , where each variable appears in at most 4 clauses and each clause contains exactly 3 literals. The task of deciding if a truth assignment exists that satisfies all clauses is NP-complete [13]. The main idea of the reduction is to construct an instance of SBP-R where every node in W can be covered via a path that is a shortest path from its location to the school (and therefore we can have a solution with maximum regret 0) if and only if there is a satisfying truth assignment for (3, 4)-SAT. In our construction, the capacity bound C will play a crucial role: we ensure that N · C = |W |, and therefore each bus must pick exactly C children. This implies that the problem reduces to understanding how to split the children among the buses. In particular, we will introduce a set of children for each clause, and two sets of children for each variable, namely a “true” set and a “false” set. A bus route from the “true” set via a clause set to the school for example corresponds to setting the variable to true to satisfy the clause. By carefully placing the children, we can ensure that, in order to have regret zero, the set of children corresponding to a clause must be picked by a bus together with one set of children corresponding to one of its literals. Furthermore, by introducing a special gadget graph, we can ensure that for every variable, either the “true” set or the “false” set can be picked together with sets corresponding to clauses, but not both. This implies that each child can be picked by a bus that never deviates from the shortest path to the school if and only if there is a truth assignment satisfying the given (3, 4)-SAT formula. 2 We remark here that the above reduction does not hold in case of infinite capacity. Indeed, obtaining a non-trivial approximation for the uncapacitated version of the SBP-R in general metric graphs is an interesting open question.

526

A. Bock, L. Sanità / Electronic Notes in Discrete Mathematics 41 (2013) 519–526

References [1] Archetti, C., Feillet, D., Hertz, A., and M.G. Speranza, The capacitatedteam orienteering and profitable tour problem. Journal of the Operational Research Society 60, pp. 831–842, 2009. [2] Bansal, N., Blum, A., Chawla, S., and A. Meyerson, Approximation Algorithms for Deadline-TSP and Vehicle Routing with Time Windows. Proc. of STOC, pp. 166–174, 2004. [3] Blum, A., Chawla, S., Karger, D. R., Lane, T., Meyerson, A., and M. Minkoff, Approximation Algorithms for Orienteering and Discounted-Reward TSP. SIAM Journal on Computing, vol. 37, no. 2, pp. 653–670, 2007. [4] Bock, A., Grant, E., K¨onemann, J., and L. Sanit`a, The School Bus Problem on Trees. Proc. of ISAAC, pp. 10–19, 2011. [5] Bock, A., and L. Sanit`a, Capacitated Orienteering. submitted, 2012. [6] Chekuri, C., Korula, N., and M. Pal, Improved Algorithms for Orienteering and Related Problems. Proc. of SODA, pp. 661–670, 2008. [7] Chen, K., and S. Har-Peled, The Euclidean orienteering problem revisited. SIAM Journal on Computing, 2007. [8] Grandoni, F., and R. Zenklusen, Approximation Schemes for Multi-Budgeted Independence Systems. Proc. of ESA, pp. 536–548, 2010. [9] J.S.B. Mitchell, Guillotine subdivisions approximate polygonal subdivisions: A simple polynomial-time approximation scheme for geometric TSP, k-MST, and related problems. SIAM Journal of Computing, vol. 28, pp. 1298–1309, 1999. [10] Nagarajan, V., and R. Ravi, Approximation Algorithms for Distance Constrained Vehicle Routing Problems. Tepper School of Business, Carnegie Mellon University, Pittsburgh 2008. [11] Park, J., and , B.-I.Kim, The school bus routing problem: A review. European Journal of Operational Research 202, 311–319, 2010. [12] Toth, P., and D. Vigo, The Vehicle Routing Problem. SIAM, 2001. [13] C. A. Tovey, A simplified np-complete satisfiability problem. Discrete Applied Mathematics, 8(1): 85–89, 1984. [14] Vansteenwegen, P., Souffriau, W., and D. Van Oudheusden, The orienteering problem: A survey. European Journal of Operational Research 209, 1–10, 2011. [15] V. V. Vazirani, Approximation Algorithms. Springer-Verlag, 2001.