2,694 research outputs found

    A greedy approximation algorithm for the group Steiner problem

    Get PDF
    AbstractIn the group Steiner problem we are given an edge-weighted graph G=(V,E,w) and m subsets of vertices {gi}i=1m. Each subset gi is called a group and the vertices in ⋃igi are called terminals. It is required to find a minimum weight tree that contains at least one terminal from every group.We present a poly-logarithmic ratio approximation for this problem when the input graph is a tree. Our algorithm is a recursive greedy algorithm adapted from the greedy algorithm for the directed Steiner tree problem [Approximating the weight of shallow Steiner trees, Discrete Appl. Math. 93 (1999) 265–285, Approximation algorithms for directed Steiner problems, J. Algorithms 33 (1999) 73–91]. This is in contrast to earlier algorithms that are based on rounding a linear programming based relaxation for the problem [A polylogarithmic approximation algorithm for the Group Steiner tree problem, J. Algorithms 37 (2000) 66–84, preliminary version in Proceedings of SODA, 1998 pp. 253–259, On directed Steiner trees, Proceedings of SODA, 2002, pp. 59–63]. We answer in positive a question posed in [A polylogarithmic approximation algorithm for the Group Steiner tree problem, J. Algorithms 37 (2000) 66–84, preliminary version in Proceedings of SODA, 1998 pp. 253–259] on whether there exist good approximation algorithms for the group Steiner problem that are not based on rounding linear programs. For every fixed constant ε>0, our algorithm gives an O((log∑i|gi|)1+ε·logm) approximation in polynomial time. Approximation algorithms for trees can be extended to arbitrary undirected graphs by probabilistically approximating the graph by a tree. This results in an additional multiplicative factor of O(log|V|) in the approximation ratio, where |V| is the number of vertices in the graph. The approximation ratio of our algorithm on trees is slightly worse than the ratio of O(log(maxi|gi|)·logm) provided by the LP based approaches

    Greedy Algorithms for Steiner Forest

    Full text link
    In the Steiner Forest problem, we are given terminal pairs {si,ti}\{s_i, t_i\}, and need to find the cheapest subgraph which connects each of the terminal pairs together. In 1991, Agrawal, Klein, and Ravi, and Goemans and Williamson gave primal-dual constant-factor approximation algorithms for this problem; until now, the only constant-factor approximations we know are via linear programming relaxations. We consider the following greedy algorithm: Given terminal pairs in a metric space, call a terminal "active" if its distance to its partner is non-zero. Pick the two closest active terminals (say si,tjs_i, t_j), set the distance between them to zero, and buy a path connecting them. Recompute the metric, and repeat. Our main result is that this algorithm is a constant-factor approximation. We also use this algorithm to give new, simpler constructions of cost-sharing schemes for Steiner forest. In particular, the first "group-strict" cost-shares for this problem implies a very simple combinatorial sampling-based algorithm for stochastic Steiner forest

    Dial a Ride from k-forest

    Full text link
    The k-forest problem is a common generalization of both the k-MST and the dense-kk-subgraph problems. Formally, given a metric space on nn vertices VV, with mm demand pairs V×V\subseteq V \times V and a ``target'' kmk\le m, the goal is to find a minimum cost subgraph that connects at least kk demand pairs. In this paper, we give an O(min{n,k})O(\min\{\sqrt{n},\sqrt{k}\})-approximation algorithm for kk-forest, improving on the previous best ratio of O(n2/3logn)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 nn point metric space with mm objects each with its own source and destination, and a vehicle capable of carrying at most kk 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 kk-forest problem implies an O(αlog2n)O(\alpha\cdot\log^2n)-approximation algorithm for Dial-a-Ride. Using our results for kk-forest, we get an O(min{n,k}log2n)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(klogn)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 kk is large, we give a slight improvement on their results.Comment: Preliminary version in Proc. European Symposium on Algorithms, 200
    corecore