The k-forest problem is a common generalization of both the k-MST and the dense-$k$-subgraph problems. Formally, given a metric space on $n$ vertices $V$, with $m$ demand pairs $\subseteq V \times V$ and a ``target'' $k\le m$, the goal is to find a minimum cost subgraph that connects at least $k$ demand pairs. In this paper, we give an $O(\min\{\sqrt{n},\sqrt{k}\})$-approximation algorithm for $k$-forest, improving on the previous best ratio of $O(n^{2/3}\log n)$ by Segev & Segev. We then apply our algorithm for k-forest to obtain approximation algorithms for several Dial-a-Ride problems. The basic Dial-a-Ride problem is the following: given an $n$ point metric space with $m$ objects each with its own source and destination, and a vehicle capable of carrying at most $k$ objects at any time, find the minimum length tour that uses this vehicle to move each object from its source to destination. We prove that an $\alpha$-approximation algorithm for the $k$-forest problem implies an $O(\alpha\cdot\log^2n)$-approximation algorithm for Dial-a-Ride. Using our results for $k$-forest, we get an $O(\min\{\sqrt{n},\sqrt{k}\}\cdot\log^2 n)$- approximation algorithm for Dial-a-Ride. The only previous result known for Dial-a-Ride was an $O(\sqrt{k}\log n)$-approximation by Charikar & Raghavachari; our results give a different proof of a similar approximation guarantee--in fact, when the vehicle capacity $k$ is large, we give a slight improvement on their results.
In the Steiner forest problem, we are given a set of vertex-pairs, and the goal is to find a forest such that each vertex pair lies in the same tree in the forest. This is a generalization of the Steiner tree problem, where all the pairs contain a common vertex called the root; both the tree and forest versions are wellunderstood fundamental problems in network design [AKR91,GW92]. An important extension of the Steiner tree problem studied in the late 1990s was the k-MST problem, where one sought the least-cost tree that connected any k of the terminals: several approximations algorithms were given for the problem, culminating in the 2-approximation of Garg [Gar05]; the k-MST problem proved crucial in many subsequent developments in network design and vehicle routing [CGRT03, FHR03, BCK + 03, BBCM04]. One can analogously define the k-forest problem where one needs to connect only k of the pairs in some Steiner forest instance: surprisingly, very little is known about this problem, which was first studied formally as recently as last year [HJ06,SS06]. In this paper, we give a simpler and improved approximation algorithm for the k-forest problem.
Moreover, just like the k-MST variant, the k-forest problem seems to be useful in applications to network design and vehicle routing. In the second half of the paper, we show a (somewhat surprising) reduction of a well-studied vehicle routing problem called the Dial-a-Ride problem to the k-forest problem. In the Diala-Ride problem, we are given a metric space with people having sources and destinations, and a bus of some capacity k; the goal is to find a route for this bus so that each person can be taken from her source to destination without exceeding the capacity of the bus at any point, such that the length of the bus route is minimized. We show how the results for the k-forest problem slightly improve upon existing results for the Dial-a-Ride problem; in fact, they give the first approximation algorithms for some generalizations of Dial-a-Ride which do not seem amenable to previous techniques.
Our starting point is the k-forest problem, which generalizes both the k-MST and the dense-k-subgraph problems.
Definition 1 (The k-Forest Problem) Given an n-vertex metric space (V, d), and demands {s i , t i } m i=1 ⊆ V × V , find the least-cost subgraph that connects at least k demand-pairs. Note that the k-forest problem is a generalization of the (minimization version of the) well-studied dense-ksubgraph problem, for which nothing better than an O(n 1/3-δ ) approximation is known. The k-forest problem was first defined in [HJ06], and the first non-trivial approximation was given by Segev and Segev [SS06], who gave an algorithm with an approximation guarantee of O(n 2/3 log n) for the case when k = O(poly(n)). We improve the approximation guarantee of the k-forest problem to O(min{ √ n, √ k}); formally, we prove the following theorem in Section 2.
Theorem 2 (Approximating k-forest) There is an O(min{ √ n • log k log n , √ k})-approximation algorithm for the k-forest problem. For the case when k is less than a polynomial in n, the approximation guarantee improves to O(min{ √ n, √ k}).
Apart from giving an improved approximation guarantee, our algorithm for the k-forest problem is arguably simpler and more direct than that of [SS06] (which is based on Lagrangian relaxations for the problem, and combining solutions to this relaxation). Indeed, we give two algorithms, both reducing the kforest problem to the k-MST problem in different ways and achieving different approximation guaranteeswe then return the better of the two answers. The first algorithm (giving an approximation of O( √ k)) uses the k-MST algorithm to find good solutions on the sources and the sinks independently, and then uses the Erdős-Szekeres theorem on monotone subsequences to find a “good” subset of these sources and sinks to connect cheaply; details are given in Section 2.1. The second algorithm starts off with a single vertex as the initial solution, and uses the k-MST algorithm to repeatedly find a low-cost tree that satisfies a large number of demands which have one endpoint in the current solution and the other endpoint outside; this tree is then used to greedily augment the current solution and proceed. Choosing the parameters (as described in Section 2.2) gives us an O( √ n) approximation.
In this paper, we use the k-forest problem to give approximation algorithms for the following vehicle routing problem.
Definition 3 (The Dial-a-Ride Problem) Given an n-vertex metric space (V, d), a starting vertex (or root) r, a set of m demands {(s i , t i )} m i=1 , and a vehicle of capacity k, find a minimum length tour of the vehicle starting (and ending) at r that moves each object i from its source s i to its destination t i such that the vehicle carries at most k objects at any point on the tour.
We say that an object is preempted if, after being picked up from its source, it can be left at some
This content is AI-processed based on open access ArXiv data.