Network design and facility location problems with hard Capacities

Network design problems with hard capacities Network design problems arise in several applications like telecommunications, VLSI, transportation, etc. A typical network design problem can be formulated as follows: given a graph G = (V,E), find its subgraph H = (V ′, E ′) that satisfies certain given constraints and optimizes certain given objective function. The constraints could be edgeor vertex-connectivity constraints or degree-bound constraints and the optimization objective could be minimizing the total number (or cost) of the edges or vertices picked for the solution H. A good example of such problems is the Steiner network design problem: given an undirected edge-weighted graph G = (V,E) with edgecosts ce ≥ 0 and connectivity requirements (or demands) rij ≥ 0 for all pairs (i, j) ∈ V × V , find a min-cost subset of edges E ′ so that in H = (V,E ′), there are rij edge-disjoint paths between i and j for every (i, j) ∈ V × V . Recall that a polynomial-time algorithm is said to have an approximation ratio of ρ ≥ 1 for a minimization problem, if it returns a solution with cost at most ρ times the cost of the minimum cost solution, for any given instance. For the maximization problem, on the other hand, it returns a solution of value at least 1/ρ times the value of the maximum-value solution, for any given instance. Steiner network design is an important problem in Computer Science and in a seminal paper, Jain [48] gave a 2-approximation algorithm for this problem. In this project, we propose to study the capacitated version of the Steiner network design problem. This problem is called the Capacitated Network Design (cnd) problem. The input is the same as in the Steiner network design problem except that, in addition, each edge e ∈ E has a capacity ue ≥ 0. We need to choose a subset E ′ of E of minimum cost, so that for any pair (i, j) ∈ V × V , one can send rij units of flow between i and j in H = (V,E ′) such that at most ue units of flow goes via any edge e ∈ E ′. If rij and all capacities ue are integers, this is equivalent to saying that rij paths exist between i and j in H so that at most ue paths go through any e ∈ E ′. We emphasize that this capacity constraint is hard, namely, the flow between any pair going through edge e cannot even be slightly more than its capacity ue. Note, however, that this capacity constraint is enforced per pair separately and that all pairs together are allowed to send more than ue flow through e. Not much is known for regarding the problem. Chakrabarty, Chekuri, Khanna, and Korula [15] design an O(log k) approximation for the soft capacity case where k denotes the number of pairs (i, j) with positive demands rij. In the soft capacities version, one is allowed to pick an edge more than once, e.g., if we pick le ≥ 0 copies of an edge e, we pay the cost of le · ce but can route le · ue flow through these copies. If all demands are equal, i.e., rij = ri′j′ for all (i, j), (i ′, j′) ∈ V × V , Chakrabarty et al. [15] give an O(log n) approximation where n = |V |. Carr, Fleischer, Leung, and Phillips [14] define a bond as a set of edges that separates a demand pair. If b(G) denotes the size of the largest bond in G, Carr et al. [14] give an O(b(G))-approximation for cnd. Of course, b(G) can in general be as large as Ω(|E|).