Approximation Via Cost-Sharing: A Simple Approximation Algorithm For The Multicommodity Rent-or-Buy Problem
Approximation Via Cost-Sharing: A Simple Approximation Algorithm For The Multicommodity Rent-or-Buy Problem
14853. Supported by ONR grant N00014-98-1-0589. Email: approach of that paper only seems suitable to proving a performance guar-
fmpal,[email protected]. antee of at least several hundred.
1
tices ti are identical. However, the analysis of [19] re- Related Work: As stated above, the only previous
quired that the underlying “buy-only” problem (such as constant-factor approximation algorithm for the MRoB
the Steiner tree problem for the single-sink special case of problem studied in this paper is due to Kumar et al. [24].
MRoB) admit a good greedy approximation algorithm (e.g., Additional papers that considered multicommodity network
the MST heuristic for Steiner tree, with Prim’s MST algo- design with economies of scale are Awerbuch and Azar [3],
rithm). Since the “buy-only” version of the MRoB prob- Bartal [5], and Fakcharoenphol et al. [11], whose work
lem is the Steiner forest problem (see e.g. [1]), for which no gives an O(log n)-approximation for the more general mul-
greedy algorithm is known, it was not clear if the techniques ticommodity buy-at-bulk problem. The special case of
of [19] could yield good algorithms for MRoB. MRoB where all commodities share the same sink, and
the closely related connected facility location problem,
Our Results: We show how a nontrivial extension of the
have been extensively studied [18, 19, 21, 22, 23, 27, 29].
randomized framework of [19] gives a 12-approximation al-
The randomized 3.55-approximation algorithm of Gupta et
gorithm for MRoB. The algorithm is conceptually very sim-
al. [19] is the best known approximation algorithm for the
ple: it picks a random subset of the source-sink pairs, buys a
problem. Swamy and Kumar [29] achieve a performance
set of edges spanning these chosen pairs, and greedily rents
guarantee of 4.55 with a deterministic algorithm. Several
paths for the other source-sink pairs.
more general problems that retain the single-sink assump-
Our analysis of the algorithm is based on a novel connec-
tion have also been intensively studied in recent years, in-
tion between approximation algorithms and cost sharing,
cluding the Access Network Design problem [2, 16, 17, 26],
the task of allocating the cost of an object to many users of
the single-sink buy-at-bulk network design problem [13, 17,
the object in a “fair” manner. This connection, rather than
19, 28, 30], and the still more general problems where the
our specific results, is arguably the most important contri-
capacity cost function can be edge-dependent [10, 25] or
bution of this paper.
unknown to the algorithm [14]. The best known approxi-
Cost sharing has been extensively studied in the eco- mation ratios for these four problems are 68 [26], 73 [19],
nomics literature (see e.g. [31]); more recently, techniques O(log n) [10, 25], and O(log n) [14], respectively.
from approximation algorithms have yielded new progress
Finally, our high-level algorithm of randomly reducing
in this field, see e.g. [20]. We believe the present work to be
the MRoB problem to the Steiner forest problem, followed
the first showing the converse, that ideas from cost sharing
by computing shortest paths, is similar to and partially in-
can lead to better approximation algorithms. A second key
spired by previous work that gave online algorithms with
ingredient for our result is a simple but novel extension of
polylogarithmic competitive ratios for many rent-or-buy-
the primal-dual algorithms of Agrawal et al. [1] and Goe-
type problems [4, 6, 7].
mans and Williamson [15] for the Steiner forest problem.
Our performance guarantee of 12 is almost certainly not
the best achievable for the MRoB problem, but it is far bet- 2 Approximation via Cost Sharing
ter than any other approximation ratio known for a network In this section we show how an appropriate cost-sharing
design problem exhibiting economies of scale, with the ex- scheme gives a good approximation algorithm for MRoB.
ception of the single-sink special case of MRoB (for which We will give such a cost-sharing scheme in the technical
a 3.55-approximation is known [19]). Single-sink buy-at- heart of the paper, Sections 3 and 4.
bulk network design, where all commodities share a com-
In Subsection 2.1, we define our desiderata for cost
mon sink but the cost of installing a given amount of capac- shares. We give the main algorithm in Subsection 2.2, and
ity can essentially be an arbitrary concave function, is only
its analysis in Subsection 2.3.
known to be approximable to within a factor of 73 [19].
Keeping the single-sink assumption and placing further re-
strictions on the function describing the cost of capacity
2.1 Some Definitions
yields the Access Network Design problem of Andrews and We now describe precisely what we mean by a cost-sharing
Zhang [2], for which the best known approximation ratio is method, as well as the additional properties required by our
68 [26]. (There are no known constant-factor approxima- application. Cost-sharing methods can be defined quite gen-
tion algorithms for the multicommodity versions of these erally (see e.g. [31]); here, we take a narrower approach. In
two problems.) The previous-best performance guarantee preparation for our first definition, recall that an instance
for MRoB was still larger, at least several hundred [24]. The of MRoB is defined by a weighted undirected graph G (we
present work is thus the first to suggest that restricting the leave the weight vector
implicit) and a set D of demand
capacity cost function could yield a more tractable special pairs. By a Steiner forest for (G; D), we mean a subgraph
case of multicommodity buy-at-bulk network design than F of G so that, for each demand pair (s; t) 2 DP , there is
the popular assumption that all commodities share a com- an s-t path in F . For such a subgraph F ,
(F ) = e2F
e
mon sink. denotes its overall cost. Since we are only interested in so-
lutions with small cost and edge costs are non-negative, we 2.2 The Algorithm SimpleMROB
can always assume that F is a forest. We now state the main algorithm. In employs as a subrou-
The next definition states that a cost-sharing method is tine a Steiner forest algorithm A, which in our implementa-
a way of allocating cost to the demand pairs of an instance
(G; D ), with the total cost bounded above by the cost of an
tion will be a constant-factor approximation algorithm. No
optimal Steiner forest for (G; D).
cost-sharing method is needed for the description or imple-
mentation of the algorithm; cost shares arise only in the
Definition 2.1 A cost-sharing method is a non-negative algorithm’s analysis. We assume for simplicity that each
real-valued function defined on triples (G; D; (s; t)), for source-sink pair wants to route a single unit of flow. This
a weighted undirected graph G, a set D of demand pairs, assumption is not hard to remove (details are deferred to the
and a single demand pair (s; t) 2 D. Moreover, for every full version).
instance (G; D) admitting a min-cost Steiner forest FD ,
X 1. Mark each pair (si ; ti ) with probability 1=M , and let
(G; D; (s; t))
(FD ): Dmark be the set of marked demands.
(s;t)2D
2. Construct a Steiner forest F on Dmark using algorithm
Definition 2.1 permits some rather uninteresting cost-
sharing methods, such as the function that always assigns
A, and buy all edges in F .
all demand pairs zero cost. The key additional property that 3. For each (si ; ti ) pair outside Dmark , rent edges to
we require of a cost-sharing method is that, intuitively, it connect si and ti in a minimum-cost way (at cost
allocates costs to each demand pair commensurate with its dG=F (s; t)).
distance from the edges needed to connect all of the other
demand pairs. Put differently, no demand pair can be a “free 2.3 Proof of Performance Guarantee
rider”, imposing a large burden in building a Steiner forest,
We now state the main theorem of this section: a constant-
but only receiving a small cost share. We call cost sharing
factor approximation algorithm for Steiner forest with an
methods with this property strict.
accompanying O(1)-strict cost-sharing method yields a
To make this idea precise, we require further notion. Let
dG (; ) denote the shortest-path distance in G (w.r.t. edge
constant-factor approximation algorithm for MRoB. The
costs in G). Given a subset E 0 E of edges, G=E 0 is
proof is an extension of the techniques of [19], where the
the graph obtained from G by contracting the edges in E 0 .
connection to cost sharing was not explicit and only sim-
pler network design problems were considered.
Note that the cheapest way of connecting vertices s and t
by renting edges, given that edges E 0 have already been Theorem 2.3 Suppose A is an -approximation algorithm
bought, is precisely dG=E 0 (s; t). Our main definition is then for the Steiner forest problem that admits a -strict cost
the following. sharing method. Then algorithm SimpleMROB, employ-
ing algorithm A as a subroutine in Step (2), is an ( + )-
Definition 2.2 Let A be a deterministic algorithm that,
given instance (G; D), computes a Steiner forest. A cost-
approximation algorithm for the multicommodity rent-or-
sharing method is -strict for A if for all (G, D) and
buy problem.
(s; t) 2 D , the cost (G; D ; (s; t)) assigned to (s; t) by is Proof: Fix an arbitrary instance of MRoB with an optimal
at least a 1= fraction of dG=F (s; t), where F is the Steiner solution OPT, and let Z denote the cost of OPT. Let B
forest returned for (G; D n f(s; t)g) by algorithm A.2 denote the cost of the bought edges Eb in OPT, and R the
It is not clear a priori that strict cost-sharing methods cost of theP rented edges Er . (Note that B = M
(Eb ),
with small exist: Definition 2.1 states that the aggregate and R = e2Er
e xe , where xe is the amount of capacity
costs charged to demand pairs must be reasonable, while that OPT reserves on edge e, or equivalently the number of
Definition 2.2 insists that the cost allocated to each demand demand pairs that use e to route their flow). It suffices to
pair is sufficiently large. show that algorithm SimpleMROB incurs an expected cost
We note that strict cost-sharing methods are somewhat of at most Z in Step (2) and at most Z in Step (3). We
reminiscent of some central concepts in cooperative game prove each of these bounds in turn.
theory, such as the core and the nucleolus (see e.g. [31]). For the first bound, it suffices to show that:
However, we are not aware of any precise equivalence be-
tween strict cost-sharing methods and existing solution con- E
cost of buying a min-cost Steiner forest on
Z :
cepts in the game theory literature. the (random) set of demand pairs Dmark
2A cost-sharing method (which is defined independent of any Steiner
(2.1)
forest algorithm) can be -strict for one algorithm and not for another,
as strictness depends on the distance dG=F (s; t), and the edge set F is To prove this, it suffices to exhibit a (random) subgraph of
algorithm-dependent. G that spans the vertices of Dmark that has expected cost at
most Z =M . To construct this subgraph, include all edges sharing methods for any constant . On the other hand,
of Eb , and every edge e of Er for which some demand pair in these families of examples, an O(1)-strict cost-sharing
using e in OPT is marked. The cost of the edges in Eb is method can be defined if a few extra edges are bought. (Ex-
deterministically B =M . For each edge in Er , the expected tra edges make Definition 2.2 easier to satisfy, since the
cost of including it is
e 1=M xe =
e xe =M , since each shortest-path distance dG=F relative to the bought edges F
of the xe demand pairs using e in OPT contributes 1=M to decreases.) Our main technical result is that buying a few
the probability of e being included. Summing over all edges extra edges beyond what is advocated by the algorithms
of Er , the expected cost of including edges of Er is R =M ; of [1, 15] always suffices for defining an O(1)-strict cost-
since Z = B + R , inequality (2.1) is proved. sharing method, enabling the application of Theorem 2.3.
We now bound the expected cost incurred in Step (3).
We will say that demand pair (s; t) incurs buying cost 3.1 The Algorithm PD and the Cost Shares
Bi = (G; Dmark ; (s; t)) and renting cost Ri = 0 if In this subsection we show how to extend the algorithms
(s; t) 2 Dmark , and buying cost Bi = 0 and renting cost of [1, 15] to “build a few extra edges” while remaining
Ri = dG=F (s; t) otherwise. constant-factor approximation algorithms for the Steiner
For a demand pair (si ; ti ), let Xi = Ri Bi denote forest problem. We also describe our cost-sharing method.
the random variable equal to the renting cost of this pair Recall that we are given a graph G = (V; E ) and a
minus times its buying cost. We next condition on the set D of source-sink pairs f(si ; ti )g. Let D be the set of
outcome of all of the coin flips in Step (1) except that for demands— the vertices that are either sources or sinks in
(si ; ti ). Since is -strict for A, this conditional expecta- D (without loss of generality, all demands are distinct). It
tion is at most 0. Since this inequality holds for any out- will be convenient to associate a cost share (D; j ) with
come of the coin flips for demand pairs other than (si ; ti ), each demand j 2 D; the cost share (G; D; (s; t)) is then
it also holds unconditionally: E [Xi ℄ 0. Summing over just (D; s) + (D; t). Note that we have also dropped the
allP i and applying P linearity of expectations, we find that reference to G; in the sequel, the cost shares are always
E [ i Ri ℄ E [ i Bi ℄. The left-hand side of this inequal- w.r.t. G.
ity is precisely the expected cost incurred P in Step (3) of the Before defining our algorithm, we review the LP relax-
algorithm. By Definition 2.1, the sum i Bi is at most the ation and the corresponding LP dual of the Steiner forest
cost of the min-cost Steiner forest P on the set Dmark of de- problem that was used in [15]:
mands; by (2.1), it follows that E [ i Ri ℄ is at most Z , P
and the proof is complete. min e
e xe (LP)
In Sections 3 and 4, we will give a 6-approximation al- x(Æ(S )) 1 8 valid S (3.2)
gorithm for Steiner forest that admits a 6-strict cost sharing xe 0
method. The main theorem of the paper is then a direct con-
sequence of Theorem 2.3.
P
S yS
Theorem 2.4 There is a 12-approximation algorithm for max (DP)
P
MRoB.
S V :e2Æ(S ) yS
e (3.3)
Proof: Suppose a(s; ) = 0 in Timed(G; D0 ; TD0 ), and This simple lemma gives us a path P between s and t
some active demand j 6= s lies in s’s cluster at time . in H whose length we will argue about. Note that this path
By the definition of T , j and s are both active in the same is already formed at time st , and hence the rest of the ar-
cluster in Timed(G; D0 ; T ) as well. Now by Lemma 4.8, gument can (and will) be done truncating the time vector at
j and s must lie in the same cluster in E 0 too; furthermore, time st instead of at TH (s).
they must both be active (by the definition of TH ). This A useful fact to remember is that all edges in P must be
contradicts the assumption of the theorem. tight in the run of E 0 . The proof of the following theorem,
Of course, any layer (C; I ) 2 L0 that crosses P must have S + L = 2 st : (4.6)
I [0; st ℄, since the path is tight at time st . Hence their
corresponding layers have time intervals that lie in [0;
st ℄. Let `0 = (C 0 ; I ) 2 L0 be an unshared layer that P
Note that the total thickness of the layers of L that P crosses, and let its corresponding layer be ` = (C;
I ) 2 L.
crosses is a lower bound on its length. This suggests the If v 2 P \ C 0 is a vertex on the path, then v 2 P \ C by
following plan for the rest of the proof: for each shared or Lemma 4.16. If both s and t are outside C , then P crosses
unshared layer in L0 , there is a corresponding distinct layer C twice as well, and we get a contribution of 2
times the
in L that is
times thicker. In an ideal world, each crossing thickness of `0 . Suppose not, and s 2 C or t 2 C : then we
of a layer in L0 would also correspond to a crossing of the lose
times the thickness of ` for each such infringement.
corresponding layer in L; in this case,
(S + U ) len(P), For shared layers `0 (which map to ` 2 L), Lemma 4.17
and hence L
1 len(P). Sadly, we do not live in an ideal implies that we lose only when s and t both lie inside `.
world and the argument is a bit more involved than this, Hence, if W denotes the wastage, the
though not by much.
Mapping shared and unshared layers of L0 : Each such
len(P)
(S + U ) W: (4.7)
layer `0 = (C 0 ; I ) is assigned to a demand j 2 DH \ C 0 .
Since j is active during the interval
I in E , there must be
We bound the wastage in two ways: firstly, the wastage only
occurs when s or t lie in layers in L they are “not supposed
a layer ` = (C;
I ) 2 L containing j —this is defined to be to”. However, s and t can only lie in one layer at a time,
the layer corresponding to `0 . (The properties of the layer- and hence they can only waste
st amount each, which
ings ensure that the two time intervals are just rescalings of by (4.6) gives
each other by a factor
.) Furthermore, since each layer in
L contains only one active vertex, the mapping is one-one. W
(S + L): (4.8)
It remains to show that crossings of P by layers is preserved
(approximately) by this correspondence. For another bound, let
meet be the earliest time that s
Lemma 4.16 Each unshared layer `0 = (C 0 ; I = [1 ; 2 )) and t lie in the same layer in L (not to be confused with
is crossed by P either zero or two times. Furthermore, if its st , which is the earliest time they lie in the same layer in
corresponding layer is ` = (C;
I ), then C 0 C . L0 ). We can be very pessimistic and claim that all the con-
tribution due to the unshared layers (i.e.,
U ) is lost. A
Proof: Since P begins and ends outside `0 , it must cross shared layer `0 = (C 0 ; I ) (containing s, say) mapped to
`0 an even number of times. Furthermore, P cannot cross ` = (C;
I ) can incur loss only when t also lies in C —and
`0 more than twice—if it does so, there must exist vertices hence I [meet ; st ℄. But now we claim that t must have
j1 , j2 , and j3 visited by P (in order), such that j1 ; j3 2 C 0 , been lonely. Indeed, suppose not, and that t was sharing
but j2 2 = C 0 . However, our algorithms ensure that if j1 layer `0 2 L0 assigned to j , and `0 was assigned to j 0 . But
and j3 lie in the same cluster C 0 , then the edges joining then both these layers would be mapped to `, contradicting
them lie within C 0 as well. This implies that there must be the fact that the mapping was one-one.
two disjoint paths between j1 and j2 , contradicting that the Hence we can charge the loss for each shared layer to a
algorithms construct a forest. lonely layer, and bound the wastage by:
For the second part, note that if C 0 is assigned to j and
does not contain s or t at time 2 , then the cluster containing W
(U + L): (4.9)
j at time
2 , i.e., C must contain C 0 .
Lemma 4.17 If `0 = (C 0 ; I = [1 ; 2 )) is a shared layer
Averaging (4.8) and (4.9), and plugging into (4.7), we get
containing s (resp., t) which assigned to j , and
2, then
its corresponding layer ` = (C;
I ) contains s (resp., t).
len(P)
2 (S + U L:
2 ) (4.10)
Subtracting this from
2 times (4.5), we get [8] M. Bern and P. Plassman. The Steiner problem with edge lengths 1
and 2. Info. Proc. Let., 32:171–176, 1989.
W2
(S2 + L2 )
pages 499–505, 2003.
(4.13) [15] M. X. Goemans and D. P. Williamson. A general approximation tech-
W1
U1 =2
visioning a Virtual Private Network: A network design problem for
(4.14) multicommodity flow. In 33rd STOC, pages 389–398, 2001.
W2
(U2 + L2) (4.15) [19] A. Gupta, A. Kumar, and T. Roughgarden. Simpler and better ap-
proximation algorithms for network design. In 35th STOC, pages
Multiplying (4.12-4.15) by 1
3
; 32 ; 23 ; 31 respectively, and
365–372, 2003.
[20] K. Jain and V. Vazirani. Applications of approximation algorithms to
adding, we get cooperative games. In 33rd STOC, pages 364–372, 2001.
W1 + W2
[21] D. R. Karger and M. Minkoff. Building Steiner trees with incomplete
W = S S
[ 1+2 2+ L1 + 2L2 + U1 + U2 ℄: global knowledge. In 41st FOCS, pages 613–623, 2000.
3
[22] S. Khuller and A. Zhu. The general Steiner tree-star problem. Info.
Proc. Let., 84:215–220, 2002.
Now using the fact that S2 L2 , which follows from the [23] T. U. Kim, T. J. Lowe, A. Tamir, and J. E. Ward. On the location of
basic argument behind (4.9), and algebra, we get alone(s)+
a tree-shaped facility. Networks, 28(3):167–175, 1996.
alone(t) L 2
6
3 len(P), as desired. [24] A. Kumar, A. Gupta, and T. Roughgarden. A constant-factor approx-
imation algorithm for the multicommodity rent-or-buy problem. In
43rd FOCS, pages 333–342, 2002.
References [25] A. Meyerson, K. Munagala, and S. Plotkin. Cost-distance: Two met-
[1] A. Agrawal, P. Klein, and R. Ravi. When trees collide: an approx- ric network design. In 41st FOCS, pages 624–630, 2000.
imation algorithm for the generalized Steiner problem on networks. [26] A. Meyerson, K. Munagala, and S. Plotkin. Designing networks in-
SIAM J. Comput., 24(3):440–456, 1995. crementally. In 42nd FOCS, pages 406–415, 2001.
[2] M. Andrews and L. Zhang. Approximation algorithms for access [27] R. Ravi and F. S. Salman. Approximation algorithms for the traveling
network design. Algorithmica, 34(2):197–215, 2002. purchaser problem and its variants in network design. In ESA ’99,
volume 1643 of LNCS, pages 29–40. 1999.
[3] B. Awerbuch and Y. Azar. Buy-at-bulk network design. In
[28] F. S. Salman, J. Cheriyan, R. Ravi, and S. Subramanian. Approx-
38th FOCS, pages 542–547, 1997.
imating the single-sink link-installation problem in network design.
[4] B. Awerbuch, Y. Azar, and Y. Bartal. On-line generalized Steiner SIAM J. on Opt., 11(3):595–610, 2000.
problem. In 7th SODA, pages 68–74, 1996. [29] C. Swamy and A. Kumar. Primal-dual algorithms for the connected
[5] Y. Bartal. On approximating arbitrary metrics by tree metrics. In facility location problem. In 5th APPROX, volume 2462 of LNCS,
30th STOC, pages 161–168, 1998. pages 256–269, 2002.
[6] Y. Bartal, M. Charikar, and P. Indyk. On-line generalized steiner [30] K. Talwar. Single-sink buy-at-bulk LP has constant integrality gap.
problem. In 5th SODA, pages 43–52, 1997. In 9th IPCO, volume 2337 of LNCS, pages 475–486, 2002.
[31] H. P. Young. Cost allocation. In R. J. Aumann and S. Hart, editors,
[7] Y. Bartal, A. Fiat, and Y. Rabani. Competitive algorithms for dis-
Handbook of Game Theory, volume 2, chapter 34, pages 1193–1235.
tributed data management. J. Comput. System Sci., 51(3):341–358,
North-Holland, 1994.
1995.