Approximating the Single-Sink Link-Installation Problem in Network Design
journal contributionposted on 01.08.2005, 00:00 by F. S. Salman, J. Cheriyan, Ramamoorthi RaviRamamoorthi Ravi, S. Subramanian
We initiate the algorithmic study of an important but NP-hard problem that arises commonly in network design. The input consists of the following: An undirected graph with one sink node and multiple source nodes, a specified length for each edge, and a specified demand, demv, for each source node v. A small set of cable types, where each cable type is specified by its capacity and its cost per unit length. The cost per unit capacity per unit length of a high-capacity cable may be significantly less than that of a low-capacity cable, reflecting an economy of scale; i.e., the payoff for buying at bulk may be very high. The goal is to design a minimum-cost network that can (simultaneously) route all the demands at the sources to the sink by installing zero or more copies of each cable type on each edge of the graph. An additional restriction is that the demand of each source must follow a single path. The problem is to find a route from each source node to the sink and to assign capacity to each edge of the network such that the total costs of cables installed are minimized. We call this problem the single-sink link-installation problem. For the general problem, we introduce a new "moat-type" lower bound on the optimal value and we prove a useful structural property of near-optimal solutions: For every instance of our problem, there is a near-optimal solution whose graph is acyclic (with a cost no more than twice the optimal cost). We present efficient approximation algorithms for key special cases of the problem that arise in practice. For points in the Euclidean plane, we give an approximation algorithm with performance guarantee O(log (D/u1)), where D is the total demand and u1 is the smallest cable capacity. When the metric is arbitrary, we consider the case where the network to be designed is restricted to be two level; i.e., every source-sink path has at most two edges. For this problem, we present an algorithm with performance guarantee O(log n), where n is the number of nodes in the input graph, and also show that this performance guarantee is nearly best possible.