24
Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms for general packing problems and their application to the multicast congestion problem Klaus Jansen · Hu Zhang Received: 21 February 2003 / Accepted: 21 March 2007 / Published online: 8 May 2007 © Springer-Verlag 2007 Abstract In this paper we present approximation algorithms based on a Lagrang- ian decomposition via a logarithmic potential reduction to solve a general packing or min–max resource sharing problem with M non-negative convex constraints on a convex set B . We generalize a method by Grigoriadis et al. to the case with weak approximate block solvers (i.e., with only constant, logarithmic or even worse approx- imation ratios). Given an accuracy ε (0, 1), we show that our algorithm needs O ( M (ln M + ε 2 ln ε 1 )) calls to the block solver, a bound independent of the data and the approximation ratio of the block solver. For small approximation ratios the algorithm needs O ( M (ln M + ε 2 )) calls to the block solver. As an application we study the problem of minimizing the maximum edge congestion in a multicast com- munication network. Interestingly the block problem here is the classical Steiner tree This work was done in part when the second author was studying at the University of Kiel. This paper combines our extended abstracts of the 2nd IFIP International Conference on Theoretical Computer Science, TCS 2002, Montréal, Canada and the 3rd Workshop on Approximation and Randomization Algorithms in Communication Networks, ARACNE 2002, Roma, Italy. This research was supported in part by the DFG - Graduiertenkolleg, Effiziente Algorithmen und Mehrskalenmethoden; by the EU Thematic Network APPOL I + II, Approximation and Online Algorithms, IST-1999-14084 and IST-2001-32007; by the EU Research Training Network ARACNE, Approximation and Randomized Algorithms in Communication Networks, HPRN-CT-1999-00112; by the EU Project CRESCCO, Critical Resource Sharing for Cooperation in Complex Systems, IST-2001-33135. The second author was also supported by an MITACS grant of Canada; and by the NSERC Discovery Grant DG 5-48923. K. Jansen Institut für Informatik, Universität Kiel, Olshausenstraße 40, 24098 Kiel, Germany e-mail: [email protected] H. Zhang (B ) Department of Computing and Software, McMaster University, 1280 Main Street West, Hamilton, ON L8S 4K1, Canada e-mail: [email protected] 123

Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Math. Program., Ser. A (2008) 114:183–206DOI 10.1007/s10107-007-0106-8

FULL LENGTH PAPER

Approximation algorithms for general packingproblems and their application to the multicastcongestion problem

Klaus Jansen · Hu Zhang

Received: 21 February 2003 / Accepted: 21 March 2007 / Published online: 8 May 2007© Springer-Verlag 2007

Abstract In this paper we present approximation algorithms based on a Lagrang-ian decomposition via a logarithmic potential reduction to solve a general packingor min–max resource sharing problem with M non-negative convex constraints ona convex set B. We generalize a method by Grigoriadis et al. to the case with weakapproximate block solvers (i.e., with only constant, logarithmic or even worse approx-imation ratios). Given an accuracy ε ∈ (0, 1), we show that our algorithm needsO(M(ln M + ε−2 ln ε−1)) calls to the block solver, a bound independent of the dataand the approximation ratio of the block solver. For small approximation ratios thealgorithm needs O(M(ln M + ε−2)) calls to the block solver. As an application westudy the problem of minimizing the maximum edge congestion in a multicast com-munication network. Interestingly the block problem here is the classical Steiner tree

This work was done in part when the second author was studying at the University of Kiel.This paper combines our extended abstracts of the 2nd IFIP International Conference on TheoreticalComputer Science, TCS 2002, Montréal, Canada and the 3rd Workshop on Approximation andRandomization Algorithms in Communication Networks, ARACNE 2002, Roma, Italy. This research wassupported in part by the DFG - Graduiertenkolleg, Effiziente Algorithmen und Mehrskalenmethoden; bythe EU Thematic Network APPOL I + II, Approximation and Online Algorithms, IST-1999-14084 andIST-2001-32007; by the EU Research Training Network ARACNE, Approximation and RandomizedAlgorithms in Communication Networks, HPRN-CT-1999-00112; by the EU Project CRESCCO, CriticalResource Sharing for Cooperation in Complex Systems, IST-2001-33135. The second author was alsosupported by an MITACS grant of Canada; and by the NSERC Discovery Grant DG 5-48923.

K. JansenInstitut für Informatik, Universität Kiel,Olshausenstraße 40, 24098 Kiel, Germanye-mail: [email protected]

H. Zhang (B)Department of Computing and Software, McMaster University,1280 Main Street West, Hamilton, ON L8S 4K1, Canadae-mail: [email protected]

123

Page 2: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

184 K. Jansen, H. Zhang

problem that can be solved only approximately. We show how to use approximationalgorithms for the Steiner tree problem to solve the multicast congestion problemapproximately.

Mathematics Subject Classification (2000) 68W25 · 68W40 · 90C05 · 90C25 ·68M10

1 Introduction

We consider the following convex min–max resource-sharing problem (or the packingproblem in linear form):

(P) λ∗ = min{λ| f (x) ≤ λe, x ∈ B},

where f : B → IRM+ is a vector of M non-negative continuous convex functionsdefined on a non-empty convex compact set B ∈ IRN , and e is the vector of all ones.Without loss of generality we assume λ∗ > 0. The functions fm , 1 ≤ m ≤ M , arethe packing or coupling constraints, which can be non-differentiable. In addition wedenote λ(x) = max1≤m≤M fm(x) for any given x ∈ B. There are many applicationsof the packing problems. Typical examples include scheduling on unrelated machines,job shop scheduling, network embeddings, Held-Karp bound for TSP, minimum-costmulticommodity flows, maximum concurrent flow, bin covering, spreading metrics,approximation of metric space, graph partitioning, and multicast congestion in com-munication networks [2,7,10,13,16,23,25,28,30].

Grigoriadis and Khachiyan [14,15] proposed an elegant method to compute anε-approximate solution to this problem; i.e., for a given accuracy ε > 0,

(Pε) compute x ∈ B such that f (x) ≤ (1 + ε)λ∗e.

The approach is based on the Lagrangian duality relation:

λ∗ = minx∈B

maxp∈P

pT f (x) = maxp∈P

minx∈B

pT f (x),

where P = {p ∈ IRM | ∑Mm=1 pm = 1, pm ≥ 0}. The equation holds, since we

can choose the component of p corresponding to λ(x) as 1. Denoting �(p) =minx∈B pT f (x), it is obvious that �(p) ≤ λ∗ ≤ λ(x) for any pair x and p. Fur-thermore, a pair x ∈ B and p ∈ P is optimal if and only if λ(x) = �(p). Thecorresponding ε-approximate dual problem has the form:

(Dε) compute p ∈ P such that �(p) ≥ (1 − ε)λ∗.

The Lagrangian or price-directive decomposition method is an iterative strategy thatsolves the primal problem (Pε) and its dual problem (Dε) by computing a sequenceof pairs x and p to approximate the exact solution from above and below respectively.

123

Page 3: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 185

One such Lagrangian decomposition step (which is also called a coordination step)consists of the following three substeps:

Step 1 (Computation of the price vector). Using the current x ∈ B, the coordinatorcomputes a price vector p = p( f (x)) ∈ P corresponding to the couplingconstraints.

Step 2 (Block optimization). The coordinator calls a block solver as an oracle to com-pute a (approximate) solution x ∈ B to the block problem for the computedp.

Step 3 (New iterate). The coordinator makes a move from x to (1 − τ)x + τ x withan appropriate step length τ ∈ (0, 1]. The new iterate is a linear combinationof the previous solution x and the solution x delivered by the block solver.

Grigoriadis and Khachiyan [15] proved that the primal problem (Pε) and the dualproblem (Dε) can be solved in O(M(ln M + ε−2 ln ε−1)) iterations of calls to a t-approximate block solver that solves the block problem for a given tolerance t = O(ε):

ABS(p, t) compute x = x(p) ∈ B

such that pT f (x) ≤ (1 + t) min{pT f (y)|y ∈ B}.

The method uses either the exponential or standard logarithmic potential function[14,15] and is based on a ternary search procedure that repeatedly scales the functionsf (x). Villavicencio and Grigoriadis [38] proposed a modified logarithmic potentialfunction to avoid the ternary search procedure and to simplify the analysis. The numberof iterations used in [38] is also O(M(ln M + ε−2 ln ε−1)). Furthermore, Grigoriadiset al. [17] studied a covering or concave max-min resource sharing problem (whichis orthogonal to the packing problem studied here). They showed that the number ofiterations or block optimization steps is only O(M(ln M + ε−2)) for the coveringproblem. Therefore, it is natural to conjecture that one can improve the number ofiterations for the packing problem. In fact, we reduce the number of iterations forsolving the packing problem (Pε) and the dual problem (Dε) to O(M(ln M + ε−2)).

On the other hand, in general the block problem may be hard to approximate[2,7,10]; i.e., it is hard to find a block solver with accuracy t = O(ε). Therefore, inthis paper we consider the case that we have only a weak approximate block solver.A (t, c)-approximate block solver is defined as follows:

ABS(p, t, c) compute x = x(p) ∈ B

such that pT f (x) ≤ c(1 + t) min{pT f (y)|y ∈ B},

where c ≥ 1 is the approximation ratio. Now the main goal is to solve the followingprimal problem (using the weak block solver):

(Pε,c) compute x ∈ B such that f (x) ≤ c(1 + ε)λ∗e.

123

Page 4: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

186 K. Jansen, H. Zhang

The corresponding dual problem has the form:

(Dε,c) compute p ∈ P such that �(p) ≥ 1

c(1 − ε)λ∗.

Here ε can be arbitrarily close to 0 and the approximation ratio is c. A solution of(Pε,c) is in fact a (c + δ)-approximate solution to the original problem (P) for δ = cεand a constant c.

New results. Our main result is an approximation algorithm that for any accuracyε ∈ (0, 1) solves the problem (Pε,c) in

N = O(M(ln M + ε−2 ln ε−1))

iterations or coordination steps. Each step requires a call to the weak block solverABS(p, O(ε), c) and an overhead of O(M ln ln(Mε−1)) arithmetic operations. Fur-thermore, for small ratio c with ln c = O(ε) (PTAS) we improve the number ofiterations to O(M(ln M + ε−2)).

In addition, as an application of our algorithms, we study the multicast congestionproblem in communication networks. It can be proved that the block problem is theSteiner tree problem, and there are only approximation algorithms with a ratio c > 1.We develop an asymptotic approximation algorithm with an improved running time.It is worth noting that the multicast congestion problem is a natural application of ourgeneral setting where the block problem (that is the Steiner tree problem) has only aconstant approximation ratio c. In fact the best known ratio for the Steiner tree problemis around 1.55 [34] and there is no approximation ratio smaller than 1.0105, unlessP = NP [8].

Related results. Plotkin et al. [30] considered the linear feasibility variants of bothproblems: either find a point x ∈ B such that f (x) = Ax ≥ (1 − ε)b or find a pointx ∈ B such that f (x) = Ax ≤ (1 + ε)b where A is the coefficient matrix with Mrows and b is an M-dimensional vector. The problems are solved in [30] by Lagrang-ian decomposition using exponential potential reductions. The numbers of iterations(calls to the corresponding block solver) in their algorithms are O(ε−2ρ ln(Mε−1))

and O(M + ρ ln2 M + ε−2ρ ln(Mε−1)), where ρ = max1≤m≤M maxx∈B aTm x/bm is

the width of B relative to Ax ≥ b. Garg and Könemann [13] proposed a (1+ε)-approxi-mation algorithm to solve the packing problem within O(Mε−2 ln M) iterations whichis independent of the width. Recently Young [41] has proposed an approximation algo-rithm for a mixed packing and covering problem (with convex set B = IRN+ ) with run-ning time O(Mdε−2 ln M) where d is the maximum number of constraints in which aparticular variable appears. Young [40] also studied the packing problem but with weakblock solvers. He proposed an algorithm that uses O(ρ′(λ∗)−1ε−2 ln M) calls to theblock solver, where ρ′ is a parameter defined as ρ′ = max1≤m≤M maxx∈B aT

m x/bm −min1≤m≤M minx∈B aT

m x/bm , and λ∗ is the optimal value of the packing problem. Fur-thermore, Charikar et al. [7] noticed that the result in [30] for the packing problemcan be also extended to the case with weak block solvers with the same number

123

Page 5: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 187

O(ε−2ρ ln(Mε−1)) of iterations. Jansen and Porkolab [24] studied the general con-cave max–min resource-sharing or the covering problem with only weak approximateblock solver and showed that O(M(ln M + ε−2 + ε−3 ln c) coordination steps arenecessary. Subsequent to this work, Jansen [20] improved the bound to O(M(ln M +ε−2 ln ε−1)), which is independent of the ratio c. The covering problems are alsostudied in [11,12]. Furthermore, Jansen [21] developed an approximation algorithmfor the mixed problem with both packing and covering constraints with O(Mε−2

ln(Mε−1)) iterations, which can be improved to O(M(ln M + ε−2 ln ε−1)) [22].In addition, Jansen [19] generalized the results by Grötschel et al. [18] on separa-

tion, non-emptiness test, optimization and violation in the direction of approximabilityfor the case with only weak oracles. The technique was further applied to the fractionalweighted graph coloring problem and the preemptive resource constrained schedul-ing problem by using approximation algorithms for the weighted independent set ands-dimensional knapsack problems [19]. However, the complexity is in general largedue to the ellipsoid algorithm.

Main ideas. Our paper is based on ideas in [15,17,38]. We use the modified logarith-mic potential function proposed in [38]. In our algorithm, the scaling phase strategyis applied. In each scaling phase, a relative tolerance is set for the solution. The oracleABS(p, t, c) is called once in each iteration. The iterative procedure stops when oneof the stopping rules is satisfied and the new scaling phase starts with accuracy t/2,until the tolerance is bounded by the given ε. We find that the stopping rules proposedin [15,38] are not necessary conditions for the required accuracy. The solution mayhave already achieved the desired accuracy before the stopping rules are fulfilled, andso redundant iterations are still conducted. For the general case with only weak blocksolvers, the number of iterations would be O(Mc2(ln(Mc)+ε−3 ln c)) by the methodin [15] or O(M(ln M +ε−2 +ε−3 ln c)) by the method in [38]. Therefore, we analyzea combination of two stopping rules in order to obtain a bound on the running timeindependent of c. In fact, this is the first result independent of the width ρ, the optimalvalue λ∗, and the approximation ratio c for the general case (with only weak blocksolvers). If c is small enough, we can use an upper bound for the difference of potentialfunction values φt (x) − φt (x ′) for two iterates x, x ′ ∈ B similar to [17]. This enablesus to show that the original method in [38] (with a slightly modified stopping rule)uses O(M(ln M + ε−2)) coordination steps for c with ln c = O(ε).

The paper is organized as follows. In Sect. 2, the modified logarithmic potentialfunction and the price vector are introduced and their properties are presented. Thealgorithm is described in detail in Sect. 3. In Sect. 4, the correctness and the complex-ity of our algorithms are analyzed together with the dual problem and the numericalaccuracy. Finally, as an application of our algorithms, the approximation algorithmfor the multicast congestion problem in communication networks is studied in Sect. 5.

2 Modified logarithmic potential function

In order to solve the convex min–max resource-sharing or the packing problem (P), weuse a Lagrangian decomposition method based on a particular potential function. Vil-

123

Page 6: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

188 K. Jansen, H. Zhang

lavicencio and Grigoriadis [38] proposed the following modification of Karmarkar’spotential function to relax the coupling constraints of (P):

�t (θ, x) = ln θ − t

M

M∑

m=1

ln(θ − fm(x)), (1)

where θ ∈ IR+ and x ∈ B are variables, and t ∈ (0, 1) is a fixed tolerance parameter(which is used in the approximate block solver ABS(p, t, c)). In our algorithms, weshall set values of t from O(1) initially down to O(ε), where ε is the desired relativeaccuracy for the solution. The function �t is well-defined for λ( f (x)) < θ < ∞where λ(x) = max{ f1(x), . . . , fM (x)} and has the barrier property: �t (θ, x) → ∞for θ → λ(x) and θ → ∞.

We define the reduced potential function as the minimal value of �t (θ, x) overθ ∈ (λ(x),∞) for a fixed x ∈ B; i.e.,

φt (x) = minλ(x)<θ<∞ �t (θ, x). (2)

The minimum θ(x) of �t (θ, x) (using the first-order optimality condition) is the solu-tion to the following equation:

t

M

M∑

m=1

θ

θ − fm(x)= 1. (3)

The function g(θ) = t

M

∑Mm=1

θ

θ − fmis a strictly decreasing function of θ in

(λ(x),∞). Therefore, the implicit function θ(x) is the unique root to Eq. (3) in theinterval (λ(x),∞). We will show the bounds on θ(x) and φt (x) in the following twolemmas by the definition of θ(x) similar to those in [17,38].

Lemma 1 λ(x)/(1 − t/M) ≤ θ(x) ≤ λ(x)/(1 − t) for any x ∈ B.

Proof Using Eq. (3) and the fact that fm(x) ≤ λ(x) for all m, we obtain the followingbound:

1 = t

M

M∑

m=1

θ(x)

θ(x) − fm(x)≤ t

M

M∑

m=1

θ(x)

θ(x) − λ(x)= tθ(x)

θ(x) − λ(x),

which implies the right inequality in the Lemma, since t < 1. The left inequality isalso based on (3) because

t

M

θ(x)

θ(x) − fm(x)≤ 1, m = 1, . . . , M,

and in particular for the m for which fm(x) = λ(x). �

123

Page 7: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 189

Lemma 2 (1 − t) ln λ(x) ≤ φt (x) ≤ (1 − t) ln λ(x) + t ln(exp(1)/t) for any x ∈ B.

Proof By the Definition (1), ln θ(x) = φt (x) + t

M

∑M

m=1ln(θ(x) − fm(x)). Since

fm(x) ≥ 0 for all m,

ln θ(x) ≤ φt (x) + t

M

M∑

m=1

ln θ(x) = φt (x) + t ln θ(x).

This gives (1 − t) ln θ(x) ≤ φt (x) because t < 1, and proves the left inequality inthe Lemma (using λ(x) ≤ θ(x) from Lemma 1). To show the right hand inequality ofLemma 2, we take logarithms of both sides of (3) and obtain:

ln t + ln

(1

M

M∑

m=1

θ(x)

θ(x) − fm(x)

)

= 0.

Using the concavity of logarithmic function ln(·), this implies:

ln t + 1

M

M∑

m=1

ln

(θ(x)

θ(x) − fm(x)

)

≤ 0.

Then we multiply by t and add ln θ(x) to both sides. This gives

φt (x) = ln θ(x) − t

M

M∑

m=1

ln(θ(x) − fm(x)) ≤ (1 − t) ln θ(x) − t ln t,

which becomes

φt (x) ≤ (1 − t) ln λ(x) − (1 − t) ln(1 − t) − t ln t,

by the right hand inequality of Lemma 1. Finally, according to the elementary inequal-ity ln z ≤ z − 1 for all z > 0, it can be proved that − ln(1 − t) ≤ t/(1 − t) usingz = 1/(1 − t) > 0. Substituting this into the above inequality, we obtain the upperbound on φt (x). �

Remark 1 Lemmas 1 and 2 show (for certain sufficiently small values of t) thatthe minimum θ(x) approximates λ(x) and that the reduced potential function φt (x)

approximates ln λ(x) closely. This gives us the possibility to solve the approximateproblem (Pε,c) by minimizing the smooth function φt (x) over x ∈ B based on thesetwo lemmas.

123

Page 8: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

190 K. Jansen, H. Zhang

2.1 Price vector function

The price vector p(x) ∈ IRM is defined as follows [38]:

pm(x) = t

M

θ(x)

θ(x) − fm(x), m = 1, . . . , M. (4)

According to Eq. (3), each price value pm(x) is non-negative and for any x ∈ B,∑Mm=1 pm(x) = 1, which are the properties desired. Thus, we can simply compute

the price vector p from (4), which is easier to obtain compared with other methods(e.g., using the exponential potential function). In view of the definition above, thefollowing lemma holds:

Lemma 3 p(x)T f (x) = θ(x)(1 − t) for any x ∈ B.

Proof Using Eq. (3) and Definition (4)

p(x)T f (x) = t

M

M∑

m=1

θ(x) fm(x)

θ(x) − fm(x)

= tθ(x)

M

M∑

m=1

(θ(x)

θ(x) − fm(x)− 1

)

= θ(x)(1 − t). (5)

Remark 2 By Lemma 3, for t small enough, the dual value pT f (x) is only slightlyless than θ(x), the minimum of the potential function. This shows that the dual valuepT f (x) is also a good approximation of λ(x) for sufficiently small t . Therefore, theprimal problem (Pε,c) can also be solved by obtaining an approximate dual value closeto pT f (x). In fact, this is the starting point of the development of our algorithm andalso the basis of our stopping rules.

3 The approximation algorithm

The minimum dual value �(p) can be approximated by the dual value pT f (x), wherex is the block solution computed by the (t, c)-approximate block solver for the currentprice vector p. Furthermore, to establish the stopping rules of the scaling phase in theapproximation algorithm, the duality gap should be estimated in each iteration. Forour first stopping rule, we use the following parameter ν:

ν = ν(x, x) = pT f (x) − pT f (x)

pT f (x) + pT f (x). (6)

If ν = O(ε), then the duality gap is also quite small. But for larger ν close to 1, thegap can be extremely large (see also Sect. 4). Therefore, we define a second parameter.

123

Page 9: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 191

Let σs be the relative error tolerance of the s-th scaling phase. Then the parameter ws

is given by:

ws =

⎧⎪⎨

⎪⎩

1 + σ1

(1 + σ1/3)M, for the first scaling phase;

1 + σs

1 + 2σs, otherwise.

(7)

Let xs be the solution of the s-th scaling phase. Then the two stopping rules used inthe s-th scaling phase are:

Rule 1 : ν ≤ σs/6;Rule 2 : λ(x) ≤ ws λ(xs−1).

Remark 3 Grigoriadis et al. [17,38] used either only the first stopping rule or the rulepT f (x)− pT f (x) ≤ σθ(x)/2, which is similar to our first rule. In the case of a weakblock solver, such stopping rules are not sufficient to obtain a complexity indepen-dent of the ratio c. It may happen that the block solver is called more times than isnecessary. Therefore, we have introduced the second stopping rule to make sure thatthe scaling phase stops as soon as the solution meets the requirement of the phase. Onthe other hand, the first stopping rule is still needed to ensure a constant bound for thedecrement in the potential function (see Sect. 4).

The algorithm now works as follows. First, we apply the scaling phase strategy.In each scaling phase, the relative error tolerance σs is set. Then based on the knownpair of x and p, a solution x is delivered by the approximate block solver. After-wards, an appropriate linear combination of the old solution x and block solution xis computed as the new solution. The iteration stops when the solution satisfies ei-ther one of the two stopping rules. After one scaling phase, the error tolerance σs ishalved and the next scaling phase is started, until the error tolerance σs ≤ ε. Thesolution generated in the last scaling phase solves the primal problem (Pε,c) (see alsoSect. 4).

In our algorithm, we set t = σs/6 for the error tolerance in the block solverABS(p, t, c). To run the algorithm, we need an initial solution x0 ∈ B. Here welet x0 be the solution of the block solver ABS(e/M, σ0/6, c) where the price vectore/M is the vector of all 1/M’s and the initial error tolerance σ0 = 1.

Algorithm L( f, B, ε, c):initialize: s := 0, σ0 := 1, t := σ0/6, p := e/M , x0 := ABS(p, t, c);f inished_scaling := f alse;while not ( f inished_scaling) do {scaling phase}

s := s + 1, x := xs−1, σs := σs−1/2, t := σs/6;f inished_coordination := f alse;compute ws from (7);while not ( f inished_coordination) do {coordination step}

compute θ(x) from (3) and p = p(x) ∈ P from (4);x := ABS(p, t, c);compute ν = ν(x, x) from (6);

123

Page 10: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

192 K. Jansen, H. Zhang

if (Stopping Rule 1 or 2) thenxs := x , f inished_coordination := true;

elsex := (1 − τ)x + τ x for an appropriate step length τ ∈ (0, 1];

endendif (σs ≤ ε) then f inished_scaling := true;

endWe set the step length τ as:

τ = tθν

2M(pT f + pT f ). (8)

We note that the step length τ can also be computed by a line search to minimize thepotential value φt . The algorithm and the analysis remains valid if we use such a linesearch to compute τ (see the similar analysis in [14]).

4 Analysis of the algorithm L

In this section we verify the convergence of algorithm L by proving that the algorithmstops after a finite number of iterations in each scaling phase. Furthermore, we showthat the vector x computed in the final phase solves the primal problem (Pε,c). Fromnow on, for convenience we denote θ = θ(x), θ ′ = θ(x ′), f = f (x), f ′ = f (x ′)and f = f (x). Before proving the correctness of the approximation algorithm L, wehave the following bound for the initial solution x0:

Lemma 4 If x0 is the solution of ABS(e/M, t, c) with t = 1/6, then λ(x0) ≤(7/6)cMλ∗.

Proof Since x0 is the solution of the block solver ABS(e/M, t, c), we have:

M∑

m=1

fm(x0)/M = eT f (x0)/M ≤ (1 + t)c�(e/M) = (7/6)c�(e/M).

Using the fact that λ∗ = maxp∈P �(p), the right side of the inequality above isbounded by (7/6)cλ∗. Therefore, fm(x0) ≤ (7/6)cMλ∗ for each m = 1, . . . , M .This implies λ(x0) = max1≤m≤M fm(x0) ≤ (7/6)cMλ∗. �

Lemma 5 If algorithm L stops, then the computed x ∈ B solves (Pε,c).

Proof We shall consider both stopping rules. If the first stopping rule is satisfied, thenusing the definition of ν and the fact ν ≤ t , we have:

(1 − t)pT f ≤ (1 + t)pT f .

123

Page 11: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 193

According to Lemma 3, the inequality above, and the value pT f (x) of the solution xcomputed by the block solver ABS(p, t, c), we have:

θ = pT f

1 − t≤ 1 + t

(1 − t)2 pT f ≤ c

(1 + t

1 − t

)2

�(p).

Using the fact that �(p) ≤ λ∗ and t = σs/6, we obtain θ ≤ c(1 + σs)λ∗. Then by

Lemma 1, fm(xs) ≤ λ(xs) ≤ θ(xs) ≤ c(1 + σs)λ∗.

If the second stopping rule is satisfied, we consider two further cases. If the rule issatisfied in the first phase s = 1, then according to the value of w in formula (7),

λ(x1) ≤ 1 + σ1

(1 + σ1/3)Mλ(x0).

Since x0 is the solution of ABS(e/M, t, c) we have λ(x0) ≤ c(1 + σ0/6)Mλ∗ byLemma 4. This implies that λ(x1) ≤ c(1 + σ1)λ

∗.Now let us assume (by induction) that λ(xs−1) ≤ c(1+σs−1)λ

∗ after the (s −1)-stscaling phase. If the second stopping rule is satisfied in the s-th scaling phase, thenaccording to the definition of w and σs = σs−1/2, we have:

λ(xs) ≤ (1 + σs)

(1 + 2σs)λ(xs−1) ≤ (1 + σs)cλ

∗.

Therefore, in both cases we have λ(xs) ≤ (1 + σs)cλ∗ for any s > 0. Since σ ≤ ε

when the algorithm L halts, the solution x = xs computed in the last phase solves(Pε,c). �

In the next lemma, we show that each coordination step decreases the potentialfunction by at least a specified constant amount.

Lemma 6 For any two consecutive iterates x, x ′ ∈ B within a scaling phase ofalgorithm L,

φt (x ′) ≤ φt (x) − tν2

4M.

Proof Due to the convexity of the function fm and the definition of the price vectorpm in (4), we obtain:

θ − f ′m ≥ θ − (1 − τ) fm − τ fm

= (θ − fm)

(

1 + τfm − fm

θ − fm

)

= (θ − fm)

(

1 + τ M

tθpm( fm − fm)

)

. (9)

By the non-negativity of fm and the definition of τ in (8),

∣∣∣∣τ M

tθpm( fm − fm)

∣∣∣∣ ≤ τ M

tθpm( fm + fm) ≤ τ M

tθ(pT f + pT f ) = ν

2≤ 1

2,

123

Page 12: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

194 K. Jansen, H. Zhang

where the fact that ν ≤ 1 is used. Since θ− fm is positive by Lemma 1, we have f ′m < θ

for m = 1, . . . M ; i.e., λ(x ′) < θ . From the definition φt (y) = �t (θ(y), f (y)),

φt (x ′) = �t (θ′, f ′) = min

ξ≥λ(x ′)�t (ξ, f ′) ≤ �t (θ, f ′)

= ln θ − t

M

M∑

m=1

ln(θ − f ′m), (10)

for the particular point x ′ ∈ B. By substituting (9) in (10) and using the Definition (1)of the potential function,

φt (x ′) ≤ ln θ − t

M

M∑

m=1

ln(θ − fm) − t

M

M∑

m=1

ln

(

1 + τfm − fm

θ − fm

)

= φt (x) − t

M

M∑

m=1

ln

(

1 + τfm − fm

θ − fm

)

, (11)

where the last term is well defined. Now we use the elementary inequality ln(1+u) ≥u − u2 for all u ≥ −1/2 and get:

ln

(

1 + τfm − fm

θ − fm

)

= ln

(

1 + Mτ

tθpm( fm − fm)

)

≥ Mτ

tθpm( fm − fm) −

(Mτ

tθpm( fm − fm)

)2

,

for all m = 1, . . . , M . Hence (11) becomes:

φt (x ′) ≤ φt (x) − τpT ( f − f )

θ+ Mτ 2

tθ2

M∑

m=1

(pm( fm − fm))2

≤ φt (x) − τν

θ(pT f + pT f ) + Mτ 2

tθ2 (pT f + pT f )2

= φt (x) − τν

θ(pT f + pT f ) + τν

2θ(pT f + pT f )

= φt (x) − τν

2θ(pT f + pT f )

= φt (x) − tν2

4M, (12)

where the definitions of ν and τ are employed. �

Now we are ready to estimate the complexity of algorithm L.

123

Page 13: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 195

Theorem 1 For a given relative accuracy ε ∈ (0, 1], algorithm L finishes with asolution x that satisfies λ(x) ≤ c(1 + ε)λ∗ and performs a total of

N = O(M(ln M + ε−2 ln ε−1))

coordination steps.

Proof If algorithm L finishes after a finite number of iterations with a solution x , thenusing Lemma 5, λ(x) ≤ c(1 + ε)λ∗. First, we calculate a bound on the number Ns ofcoordination steps performed in the s-th scaling phase. Afterwards, we obtain a boundfor all scaling phases. This also shows that algorithm L halts and proves the theorem.

Let x , x ′ be the initial and final iterates of the s-th scaling phase. In addition let x bethe solution after N s = Ns − 1 iterations in the same scaling phase. During the phasefrom x to x we have ν > t ; otherwise the phase would finish earlier. Furthermore, (bythe same reason) the objective value λ(x) > wsλ(x). Then Lemma 6 provides that

φt (x) − φt (x) ≥ N stν2

4M≥ N s

t3

4M.

By the left and right inequality of Lemma 2, we have (1 − t) ln λ(x) ≤ φt (x) andφt (x) ≤ (1 − t) ln λ(x) + t ln(exp(1)/t), respectively. Hence,

N st3

4M≤ (1 − t) ln

λ(x)

λ(x)+ t ln

exp(1)

t.

This directly gives a bound on Ns ,

Ns = N s + 1 ≤ 4Mt−3(

(1 − t) lnλ(x)

λ(x)+ t ln

exp(1)

t

)

+ 1.

Next we shall bound the term λ(x)/λ(x). For the first scaling phase, we have λ(x) >1+σ1

(1+σ1/3)M λ(x). In this case,

λ(x)

λ(x)≤ (1 + σ1/3)M

1 + σ1<

2M

1 + σ1.

Since σ1 = 1/2 and t = 1/12 during the first scaling phase, there are only N1 =O(M ln M) coordination steps in the first phase. For the other scaling phases, we haveλ(x) > 1+σs

1+2σsλ(x). Therefore,

λ(x)

λ(x)≤ 1 + 2σs

1 + σs= 1 + σs

1 + σs.

Then according to the elementary inequality ln(1 + u) ≤ u for any u ≥ 0,

lnλ(x)

λ(x)≤ ln

(

1 + σs

1 + σs

)

≤ σs

1 + σs< σs .

123

Page 14: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

196 K. Jansen, H. Zhang

Substituting this in the bound for Ns above and using t = σs/6, we have the followingbound:

Ns = O(Mσ−2s ln σ−1

s ).

Finally, the total number of coordination steps N is obtained by summing the Ns

over all scaling phases:

N = O

(

M

(

ln M +∑

s

σ−2s ln σ−1

s

))

.

Since σs+1 = σs/2 in the (s + 1)-st scaling phase, the sum above is further boundedby

sσ−2

s ln σ−1s = O

(log ε−1�∑

q=022q ln(2q)

)

= O

(

log ε−1log ε−1�∑

q=022q

)

= O(ε−2 log ε−1),

which provides the claimed bound. �

4.1 Analysis for small approximation ratio c

In this subsection we analyze the case that the approximation ratio c of the block solveris small enough; i.e., ln c = O(ε). In this case we modify the algorithm L as follows:we use only the first stopping rule ν ≤ t . This rule is similar to the one in [38]. Let L′be the modified algorithm. First, for correctness, we have the following lemma:

Lemma 7 If algorithm L′ stops, then the computed pair x ∈ B and p ∈ P solves(Pε,c) and (Dε,c).

The proof is very similar to the first part of that of Lemma 5, but with only thefirst stopping rule employed. Furthermore, we prove an upper bound on the differenceof the reduced potential function for two arbitrary points x and x ′ in B. The proofis similar to that in [17] for the concave max-min resource-sharing or the coveringproblem.

Lemma 8 For any two iterates x, x ′ ∈ B within a scaling phase with λ(x) > 0 andλ(x ′) > 0,

φt (x) − φt (x ′) ≤ (1 − t) lnpT f

pT f ′ ≤ (1 − t) lnpT f

�(p),

where p = p(x) is defined by (4).

123

Page 15: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 197

Proof Denote � = �(p) = minx∈B pT f (x). Using the definition of price vectorp = p(x) in (4) and Lemma 3,

φt (x) − φt (x ′) = lnθ

θ ′ − t

M

M∑

m=1

ln

(θ − fm

θ ′ − f ′m

)

≤ lnθ

θ ′ + t lnM

tθ+ t ln

(1

MpT (θ ′e − f ′)

)

≤ maxξ>�

{

lnθ

ξ+ t ln

1

tθ+ t ln(ξ − pT f ′)

}

= (1 − t) ln(1 − t)θ

pT f ′

≤ (1 − t) lnpT f

�(p),

where the concavity of the logarithmic function ln(·) is used to obtain the first inequalityabove. �

For the complexity of the algorithm L′ we have the following theorem:

Theorem 2 If ln c = O(ε), algorithm L′ performs a total of

N = O(M(ln M + ε−2))

coordination steps.

Proof Here we still consider the cases of the first and the other scaling phases sepa-rately. Let us use the notations in Theorem 1. For each scaling phase (similar to theproof of Theorem 1) we have:

φt (x) − φt (x ′) ≥ Nst3

4M.

Then according to Lemma 2, we have (1 − t) ln λ∗ ≤ (1 − t) ln λ(x ′) ≤ φt (x ′) andφt (x) ≤ (1 − t) ln λ(x) + t ln(exp(1)/t). Substituting these bounds into the aboveinequality, we get:

Nst3

4M≤ (1 − t) ln

λ(x)

λ∗ + t lnexp(1)

t.

Now consider the first scaling phase. Since λ(x) ≤ 2cMλ∗ and t = 1/12, the numberof iterations for the first phase is N1 = O(M ln(cM)) = O(M(ln c + ln M)). Thenthe assumption ln c = O(ε) yields N1 = O(M ln M). For the other scaling phases(using Lemma 8) we have:

φt (x) − φt (x ′) ≤ (1 − t) lnpT f

�(p)

123

Page 16: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

198 K. Jansen, H. Zhang

where p is the price vector corresponding to x . When the s-th scaling phase stops, thestopping rule is satisfied; i.e., ν(x, x) ≤ t . By the definition of ν, we have (1−ν)pT f =(1 + ν)pT f . Since x is the solution of the approximate block solver ABS(p, t, c), itfollows that pT f ≤ (1 + t)c�(p). By ν ≤ t and t ≤ 1/12,

pT f

�(p)≤ 1 + ν

1 − ν(1 + t)c ≤ 1 + t

1 − t(1 + t)c ≤ (1 + 4t)c.

Combining both inequalities and using the elementary inequality ln(1 + u) ≤ u forany u ≥ 0,

φt (x) − φt (x ′) ≤ (1 − t)(ln(1 + 4t) + ln c) ≤ 4t + ln c.

Now we combine this inequality with the upper bound on Ns and get:

Ns ≤ 4M

t3 (4t + ln c).

Using the assumption that ln c = O(ε), t = σs/6 and ε ≤ σs for each scaling phasewe obtain Ns = O(Mσ−2

s + Mεσ−3s ) = O(Mσ−2

s ). Summing Ns over all scalingphases, the total number N of coordination steps (similar to the proof of Theorem 1)is bounded by O(M(ln M + ε−2)). �

4.2 Analysis of the dual problem

In this subsection we will consider the dual problem (Dε,c). As we mentioned before, inthe general case we can obtain the solution to the primal problem (Pε,c) in O(M(ln M+ε−2 ln ε−1)) iterations. Now we analyze the dual value of the solution of our algo-rithms. We are able to prove that our algorithm L′ can be generalized to deliver a solu-tion x and p to both the primal and the dual problems in O(M(ln M +ε−2 +ε−3 ln c))iterations.

In the case that ln c ≤ O(ε+ε3 ln M), as shown in the above subsection, algorithmL′ can solve both problems in O(M(ln M + ε−2)) iterations.

In the case that O(ε + ε3 ln M) ≤ ln c ≤ O(ε ln M), the upper bound of numberof iterations of algorithm L′ to obtain the dual solution is O(Mε−2 ln M).

In the case that O(ε ln M) ≤ ln c ≤ O(ln M), the approximate dual solution canbe attained in O(Mε−3 ln M) iterations.

In the case that O(M) ≤ c ≤ 12M/ε, the number of iterations can be bounded byO(Mε−3 ln(Mε−1)).

In the case that c ≥ 12M/ε, the pair x and p obtained by any of our algorithms isalso the solution to both the primal and the dual problem, and the number of iterationsis also O(M(ln M + ε−2)). To prove this, using the definition of price vector and the

123

Page 17: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 199

bounds for θ(x),

pm(x) = t

M

θ(x)

θ(x) − fm(x)≥ t

M

λ(x)

1 − t/Mλ(x)

1 − t− fm(x)

≥ t

M

1 − t

1 − t/M≥ t

M(1 − t).

Hence, if the algorithm stops (i.e., ε/12 ≤ t ≤ ε/6), then pm(x) ≥ ε(1 − ε)/(12M).This implies:

�(p) = minx

pT f (x) ≥ minx

ε

12M(1 − ε)

M∑

m=1

fm(x)

≥ ε

12M(1 − ε) min

xλ(x) ≥ 1

c(1 − ε)λ∗.

The analysis shows that the solution of the dual problem is easier to obtain than thesolution of the primal problem for large c.

Therefore, the overall bound for the number of iterations to obtain the solution ofthe dual problem (Dε,c) is O(Mε−3 ln(Mε−1)).

4.3 Analysis of accuracy

In the analysis above, we have assumed that the price vector p ∈ P can be computedexactly from (4). However, in practice this is not true. The reason is that to computethe price vector, the value of θ(x) is needed in (4). However, θ(x) is the unique rootof (3), which can only be solved approximately. An argument similar to the one thatwe give below to resolve this problem can also be found in [14,15,17,38].

Suppose p is an approximation of the exact value of p with relative accuracyδ ∈ (0, 1/2). Then (1 − δ)p ≤ p ≤ (1 + δ)p. Let z be a vector corresponding to theminimum dual value �(p); i.e., pT f (z) = minx∈B pT f (x) = �(p). Then,

�( p) = minx∈B

pT f (x) ≤ pT f (z) ≤ (1 + δ)pT f (z) = (1 + δ)�(p).

Let x be the solution delivered by ABS( p, t, c). Then we get the following bound:

pT f (x) ≤ pT f (x)

1 − δ≤ c(1 + t)�( p)

1 − δ≤ 1 + δ

1 − δc(1+t)�(p) ≤ c (1+t)(1+4δ)�(p)

for any δ ≤ 1/2. In other words, the solution x from ABS( p, t, c) has a relative accu-racy of O(t + δ) = O(σ ) → O(ε) to the exact price vector p for δ = O(t) → O(ε).This means that we just need to compute every pm to the relative accuracy of δ = O(ε)

in (4).Next we calculate the error bound for θ in solving (3) so that p can achieve the

required accuracy. It can be verified that θ(s f ) = sθ( f ) and p(s f ) = p( f ) for any

123

Page 18: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

200 K. Jansen, H. Zhang

positive scalar s. In this way, it is possible that the vector f is pre-scaled locallyfor the computation of θ( f ) such that λ( f ) = 1. According to Lemma 1, θ( f ) ∈[M/(M − t), 1/(1 − t)] and therefore, |θ( f ) − 1| = O(t). Let θ ( f ) be the approx-imation of θ used to compute p. Our goal is to calculate the absolute error bound between θ ( f ) and θ( f ) such that the approximate price vector p has the relativeaccuracy δ. From (4), pm = t θ ( f )/(M(θ( f )− fm)). Thus, according to the definitionof relative error of pm we have:

∣∣∣∣

pm − pm

pm

∣∣∣∣ =

∣∣∣∣∣

θ ( f )

θ( f )· θ( f ) − fm

θ ( f ) − fm− 1

∣∣∣∣∣= O(t). (13)

According to the definition of , |θ ( f ) − θ( f )| ≤ . Substituting this into (13) weneed the following two upper bounds:

θ( f ) +

θ( f )

θ( f ) − fm

θ( f ) − − fm− 1 = O(t);

1 − θ( f ) −

θ( f )

θ( f ) − fm

θ( f ) + − fm= O(t).

Let us consider the first expression. It can be written as(2θ( f ) − fm)

θ( f )(θ( f ) − − fm)=

O(t). Since 2θ( f )− fm ≤ 2θ( f ) = 2+O(t), θ( f )− − fm ≥ M/(M−t)−1− =O(t/M)− and θ( f ) ≥ 1, we need (2+O(t)) /(O(t/M)− ) = O(t). Therefore,a sufficient condition for the first bound is: = O(t2/M) → O(ε2/M). A similaranalysis works for the second upper bound, too.

To compute the value of θ( f ) ∈ [M/(M − t), 1/(1 − t)] approximately, we canuse binary search. Since the length of the interval is O(t) → O(ε), O(ln(Mε−1))

steps are necessary to achieve the accuracy. This requires O(ln(Mε−1)) computationsof the sum

∑Mm=1 1/(θ( f ) − fm) per coordination step of algorithm L. Therefore,

O(M ln(Mε−1)) arithmetic operations per iteration are necessary. One can also useNewton’s method to compute the root θ( f ) approximately. Since Newton’s methodis quadratically convergent [5], O(M ln ln(Mε−1)) operations are necessary. In thisway the sequential running time of each coordination step is roughly linear in M .

5 The multicast congestion problem in communication networks

We study the multicast congestion problem in communication networks as an appli-cation of our algorithm for the general packing problems and propose an asymptoticapproximation algorithm in this section.

Let an undirected graph G = (V, E) represent a communication network with nvertices and m edges. Each vertex of G represents a processor which is able to receive,duplicate and deliver packets of data. A multicast request is a subset S ⊆ V of vertices(called terminals) which are connected so that they can receive copies of the same datapacket from the source simultaneously. In order to fulfill a request, one subtree of Gspanning S (called an S-tree) is to be generated. In the multicast congestion problem

123

Page 19: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 201

we are given G and a set of multicast requests S1, S2, …, Sk ⊆ V . A solution is a setof k trees T1, . . . , Tk , where each tree Ti (called an Si -tree) connects the terminals inthe i-th multicast request Si . The congestion of an edge in a solution is the number ofSi -trees which use the edge. The goal of the problem is to find a solution of Si -treesminimizing the maximum edge congestion.

The multicast congestion problem is a generalization of the standard routing prob-lem of finding integral paths with minimum congestion where each request consists ofonly two terminals. It is a generalization of the problem of finding edge disjoint paths,which is NP-hard [26]. Hence, the multicast congestion problem is also NP-hard.A related problem is the Steiner tree problem in graphs. Given a graph G = (V, E),a set S ⊆ V of terminals and a length function (cost) on the edges, a Steiner tree Tis a subtree spanning all vertices in S. (The tree T may have some of its vertices inV \ S). The goal of the Steiner tree problem is to find a minimum Steiner tree; i.e., aSteiner tree with minimal total edge length. Compared with the multicast congestionproblem, in the Steiner tree problem, there is only a single multicast request with adifferent objective function.

In [33], a routing problem in VLSI design was studied, which is a restricted ver-sion of the multicast congestion problem. The goal is to reduce the maximum edgecongestion on a two-dimensional rectilinear lattice with a pre-specific finite set oftrees. Solving the relaxation of the integer linear program and applying randomizedrounding yield a randomized algorithm, where the congestion is bounded by O PT +O(

√O PT ln(n2/ε)) with a probability 1 − ε, when O PT is sufficiently large.

Vempala and Vöcking [36] proposed an approximation algorithm based on the ideaof randomized rounding of the solution to the linear relaxation of their integer linearprogram for the multicast congestion problem (which has an exponential number ofconstraints). They decomposed the fractional solution for each multicast into a set ofpaths instead of trees as in [33], which leads to a solution with an approximation ratioof O(ln n) in O(n6α2 + n7α) time, where α involves the number k and some otherlogarithmic factors.

Carr and Vempala [6] proposed a randomized asymptotic algorithm for the mul-ticast congestion problem. This gives a solution with edge congestions bounded by2 exp(1)c · O PT + O(ln n) with a probability at least 1 − 1

n , where c > 1 is theapproximation ratio of the solution to the Steiner tree problem. The algorithm needsO(n7) time including k as a multiplicative factor.

Baltz and Srivastav [2] studied the problem and proposed an integer linear programwith an exponential number of variables based on ideas of Klein et al. [27] to solve theconcurrent multicommodity flow problem with uniform capacities. They constructed acombinatorial algorithm for the linear programming (LP) relaxation. Together with therandomized rounding an improved result is obtained within O(βnk3 ln3(mε−1)ε−9 ·min{ln m, ln k}) time, where β is the time to approximately solve the Steiner treeproblem.

Let Ti be the set of all Si -trees for i ∈ {1, . . . , k}. Here the cardinality of Ti may beexponentially large. Define by xi (T ) a variable indicating whether the tree T ∈ Ti ischosen as a solution for the multicast request Si . Then an integer linear program forthe multicast congestion problem is:

123

Page 20: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

202 K. Jansen, H. Zhang

min λ

s.t.∑

T ∈Ti

xi (T ) = 1, for all i ∈ {1, . . . , k};k∑

i=1

T ∈Ti & e∈Txi (T ) ≤ λ, for all e ∈ E;

xi (T ) ∈ {0, 1}, for all i and all T ∈ Ti .

(14)

As usual technique, we shall consider the LP relaxation of (14).Notice that the LP relaxation is a packing problem. Therefore, we can apply

our algorithm L here. It will only call the approximate block solver O(m(ln m +ε−2 ln ε−1)) times, where the number of variables (which is exponentially large) isnot involved. The approach of applying a separation oracle and using the ellipsoidalgorithm as showed in [19] (which is a generalization of the method in [18]) may beemployed here. However, the complexity would be large, similar to the result in [36].

We define a vector xi = (xi (T1), xi (T2), . . . )T for all T1, T2, · · · ∈ Ti represent-

ing the vector of indicator variables corresponding to all Steiner trees for the i-threquest. Denote by a vector x = (xT

1 , . . . , xTk )T the vector of all indicator vari-

ables. Furthermore, a vector function f (x) = ( f1(x), . . . , fm(x))T is used, wherefe(x) = ∑k

i=1∑

T ∈Ti & e∈T xi (T ) represents the congestion on edge e, for all edgese ∈ E . In addition, we define by B = B1 × · · · × Bk , where

Bi =⎧⎨

⎩xi |T ∈ Ti ,

T ∈Ti

xi (T ) = 1, xi (T ) ≥ 0

⎫⎬

⎭, for i = 1, . . . , k.

It is obvious that each block Bi is a simplex. Notice that the optimal value is achievedat one of the vertices of the simplex.

We consider the block problem, which is to find the following optimum value:

minx pT f (x) = minx∑

e∈E

(pe · ∑k

i=1∑

T ∈Ti &e∈E xi (T ))

= ∑ki=1 minx

∑e∈E

(pe · ∑

T ∈Ti &e∈E xi (T ))

= ∑ki=1 minx

∑T ∈Ti

∑e∈T xi (T )pe

= ∑ki=1 minT ∈Ti

∑e∈T pe, (15)

for a given price vector p. The last equality above comes from the fact that we canchoose one tree in Ti that minimizes

∑e∈T pe and set its corresponding component

in xi to be 1 (with other components set to 0) to achieve the minimum. If we regardthat pe as the length associated to edge e, the block problem is in fact the Steinertree problem. Therefore, given an (approximate) block solver for the Steiner treeproblem, we are able to find an approximate solution to the LP relaxation of (14)using algorithm L.

However, as showed in [1,4], the Steiner tree problem is APX -hard, and the bestknown lower bound for the approximation ratio is 96/95 ≈ 1.0105 [8]. Thus, we haveto use c-approximate block solver as the oracle of our algorithm L, where c > 1.The best known ratio is 1 + (ln 3)/2 ≈ 1.550 [34]. It is worth mentioning that the

123

Page 21: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 203

bound on the number of iterations of algorithm L does not depend on c. We noticethat in each iteration we need to call the approximate minimum Steiner tree solverk times. Together with the numerical overhead, we are able to find a c-approximatesolution to the LP relaxation of (14) in O(m(ln m +ε−2 ln ε−1)(kβ +m ln ln(mε−1)))

time, where c is the ratio of the approximate minimum Steiner tree solver and β is itsrunning time.

Using the rounding techniques in [2,32], the resulting solution is bounded by

⎧⎪⎪⎨

⎪⎪⎩

(1 + ε)c · O PT + (1 + ε)(exp(1) − 1)√

c · O PT · ln m, if c · O PT ≥ ln m,

(1 + ε)c · O PT + (1 + ε) exp(1) ln m

1 + ln

(ln m

c · O PT

) , otherwise. (16)

In the case c · O PT ≥ ln m the bound is in fact (1 + ε) exp(1)c · O PT . Otherwise itis (1 + ε)c · O PT + O(ln m). Therefore, we have the following theorem:

Theorem 3 For O PT ≥ �(ln m) (i.e., O PT ≥ c−1 ln m) there exists an asymptoticpolynomial time algorithm for the multicast congestion problem in communicationnetworks via the Steiner tree problem with a constant approximation ratio.

6 Concluding remarks

In this paper we have proposed an approximation algorithm for the convex min–maxresource-sharing or packing problems that needs only O(M(ln M +ε−2 ln ε−1)) coor-dination steps or calls to a weak block solver with approximation ratio c ≥ 1. Thisbound is independent of the approximation ratio c. However, if the original methodsin [14,15,38] are used, then the bounds will depend on the approximation c.

We note that the original method could be faster, since we do not have a lowerbound on the number of iterations. Another interesting point is that our algorithmdoes not automatically generate a dual solution for general c. We have proved thatonly O(Mε−3 ln(Mε−1)) coordination steps are necessary to get a dual solution of(Dε,c). It would be interesting whether this bound can be improved. We will focus onthese questions in our future research.

As an application, we have proposed an approximation algorithm for the multicastcongestion problem in communication networks. The algorithms in [30] can also beapplied to solve the linear packing problem with an approximate block solver. In fact,Charikar et al. [7] noticed that the algorithm in [30] can be generalized to the case witha weak block solver. If their method is applied to solve the LP relaxation of (14), it canbe estimated that the width ρ here is bounded by O(k). However, as their algorithmis for the decision version of the problem, an approximate solution has to be obtainedby the binary search. So ln(kε−1) steps are necessary. Hence, the overall running timeis O(ε−2k2β ln(mε−1) ln(kε−1)). Thus, our result is better for the case of large k. Inaddition, the algorithm in [40] can also be used to solve the packing problems witha weak block solver. If it is applied to solve the LP relaxation, the bound in [40]shows that the overall running time is O(k2ε−2β ln m). Recently, Baltz and Srivastav

123

Page 22: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

204 K. Jansen, H. Zhang

[3] have improved the running time of their algorithm. However, there are also someinteresting open questions for the multicast congestion problem:

– We have found that for c · O PT ≥ ln m the solution of our algorithm is (1 +ε) exp(1) · c · O PT . But is there a better algorithm for c · O PT < ln m orc · O PT < ln n?

– Is there a good deterministic rounding method?– Can we find an algorithm that avoids the factor k in the running time? For instance,

could a technique similar to the round robin approach in [31,37] be generalizedfor the case with only weak block solvers?

– Can we find any relationship between the approximability of the Steiner tree prob-lem and that of the multicast congestion problem?

Since the appearance of the extended abstracts of this paper, the algorithm L pro-posed has been applied for the range assignment problem in ad hoc wireless networkswith general structure [9,39] and the global routing problem in VLSI design [35]. Theapproximation algorithm for the multicast congestion problem in communication net-works has been implemented in [29]. Both theoretical and experimental results showthat our approximation algorithms for the convex min–max resource-sharing or thepacking problems are promising.

Acknowledgments The authors thank the anonymous referees and Tamon Stephen for their helpfulcomments.

References

1. Arora, S., Lund, C., Motwani, R., Sudan, M., Szegedy, M.: Proof verification and hardness of approx-imation problems. J. Assoc. Comput. Mach. 45, 501–555 (1998)

2. Baltz, A., Srivastav, A.: Fast approximation of multicast congestion, Manuscript (2001)3. Baltz, A., Srivastav, A.: Fast approximation of minimum multicast congestion—implementation versus

theory. RAIRO Oper. Res. 38, 319–344 (2004)4. Bern, M., Plassmann, P.: The Steiner problem with edge lengths 1 and 2. Inf. Process. Lett. 32,

171–176 (1989)5. Burden, R.L., Faires, J.D.: Numerical analysis, 6th edn. Brooks/Cole publishing company, Balti-

more/Three Lakes (1997)6. Carr, R., Vempala, S.: Randomized meta-rounding. In: Proceedings of the 32nd ACM Symposium on

the Theory of Computing, STOC, pp 58–62 (2000)7. Charikar, M., Chekuri, C., Goel, A., Guha, S., Plotkin, S.: Approximating a finite metric by a small

number of tree metrics. In: Proceedings of the 39th Annual IEEE Symposium on Foundations ofComputer Science, FOCS, pp 379–388(1998)

8. Chlebík, M., Chlebíková, J.: Approximation hardness of the Steiner tree problem. In: Proceedings ofthe 8th Scandinavian Workshop on Algorithm Theory, SWAT, LNCS, vol. 2368, pp 170–179 (2002)

9. Chlebíková, J., Ye, D., Zhang, H.: Assign ranges in general ad-hoc networks. J. Parallel Distrib. Com-put. 66(4), 489–498 (2006)

10. Even, G., Naor, J.S., Rao, S., Schieber, B.: Fast approximate graph partitioning algorithms. SIAM J.Comput. 6, 2187–2214 (1999)

11. Fleischer, L.: A fast approximation scheme for fractional covering problems with variable upper bounds.In: Proceedings of the 15th ACM-SIAM Symposium on Discrete Algorithms, SODA, pp 994–1003(2004)

12. Garg, N., Khandekar, R.: Fractional covering with upper bounds on the variables: solving LPs with neg-ative entries. In: Proceedings of the 12th Annual European Symposium on Algorithms, ESA, LNCS,vol. 3221, pp 371–382 (2004)

123

Page 23: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

Approximation algorithms for general packing problems 205

13. Garg, N., Könemann, J.: Fast and simpler algorithms for multicommodity flow and other fractionalpacking problems. In: Proceedings of the 39th IEEE Annual Symposium on Foundations of ComputerScience, FOCS, pp 300–309 (1998)

14. Grigoriadis, M.D., Khachiyan, L.G.: Fast approximation schemes for convex programs with manyblocks and coupling constraints. SIAM J. Optim. 4, 86–107 (1994)

15. Grigoriadis, M.D., Khachiyan, L.G.: Coordination complexity of parallel price-directive decomposi-tion. Math. Oper. Res. 2, 321–340 (1996)

16. Grigoriadis, M.D., Khachiyan, L.G.: Approximate minimum-cost multicommodity flows inO(ε−2knm) time. Math. Programm. 75, 477–482 (1996)

17. Grigoriadis, M.D., Khachiyan, L.G., Porkolab, L., Villavicencio, J.: Approximate max–min resourcesharing for structured concave optimization. SIAM J. Optim. 11, 1081–1091 (2001)

18. Grötschel, M., Lovász, L., Schrijver, A.: Geometric Algorithms and Combinatorial Optimiza-tion. Springer, Berlin (1988)

19. Jansen, K.: Approximate strong separation with application in fractional graph coloring and preemptivescheduling. Theor. Comput. Sci. 302, 239–256 (2003)

20. Jansen, K. An approximation algorithm for the general max–min resource sharing problem. Math.Program. 106(3), 547–566 (2006)

21. Jansen, K.: Approximation algorithm for the mixed fractional packing and covering problem. SIAM.J. Optim. 17, 331–352 (2006)

22. Diedrich, F., Jansen, K., Faster and simpler approximation algorithms for mixed packing and coveringproblems, to appear in Theoretical Computer Science.

23. Jansen, K., Porkolab, L.: Improved approximation schemes for scheduling unrelated parallel ma-chines. Math. Oper. Res. 26, 324–338 (2001)

24. Jansen, K., Porkolab, L.: On preemptive resource constrained scheduling: polynomial timeapproximation schemes. SIAM. J. Discrete. Math. 20 545–563 (2006)

25. Jansen, K., Solis-Oba, R.: An asymptotic fully polynomial time approximation scheme for bin cover-ing. Theor. Comput. Sci. 306, 543–551 (2003)

26. Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W. (eds.) Com-plexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972)

27. Klein, P., Plotkin, S., Stein, C., Tardos, E.: Faster approximation algorithms for the unit capacity con-current flow problem with applications to routing and finding sparse cuts. SIAM J. Comput. 23, 466–487 (1994)

28. Lenstra, J.K., Shmoys, D.B., Tardos, E.: Approximation algorithms for scheduling unrelated parallelmachines. Math. Program. 24, 259–272 (1990)

29. Lu, Q., Zhang, H.: Implementation of approximation algorithms for the multicast congestion problem.In: Proceedings of the 4th International Workshop on Efficient and Experimental Algorithms, WEA,LNCS, vol. 3503, pp 152–164 (2005)

30. Plotkin, S.A., Shmoys, D.B., Tardos, E.: Fast approximation algorithms for fractional packing andcovering problems. Math. Oper. Res. 2, 257–301 (1995)

31. Radzik, T.: Fast deterministic approximation for the multicommodity flow problem. Math. Pro-gram. 78, 43–58 (1997)

32. Raghavan, P.: Probabilistic construction of deterministic algorithms: approximating packing integerprograms. J. Comput. Syst. Sci. 37, 130–143 (1988)

33. Raghavan, P., Thompson, C.: Randomized rounding: a technique for provably good algorithms andalgorithmic proofs. Combinatorica 7, 365–374 (1987)

34. Robins, G., Zelikovsky, A.: Improved Steiner tree approximation in graphs. In: Proceedings of the 11thAnnual ACM-SIAM Symposium on Discrete Algorithms, SODA, pp 770–779 (2000)

35. Terlaky, T., Vannelli, A., Zhang, H.: On routing in VLSI design and communication networks. In:Proceedings of the 16th Annual International Symposium on Algorithms and Computation, ISAAC,LNCS, vol. 3827, pp 1051–1060 (2005)

36. Vempala, S., Vöcking, B.: Approximating multicast congestion. In: Proceedings of the tenth Interna-tional Symposium on Algorithms and Computation, ISAAC, LNCS, vol. 1741, pp 367–372 (1999)

37. Villavicencio, J., Grigoriadis, M.D.: Approximate structured optimization by cyclic block-coordinatedescent. In: Ritter, K., Fischer, H., Riedmüller, B., Schäffler, S. (eds.) Applied Mathematics and ParallelComputing—Festschrift, pp 359–371. Physica-Verlag, Heidelberg (1996)

38. Villavicencio, J., Grigoriadis, M.D.: Approximate Lagrangian decomposition with a modified Karmar-kar logarithmic potential. In: Pardalos, P., Hearn, D.W., Hager, W.W. (eds.) Network Optimization.Lecture Notes in Economics and Mathematical Systems, vol. 450, pp 471–485. Springer, Berlin (1997)

123

Page 24: Approximation algorithms for general packing problems and ... · Math. Program., Ser. A (2008) 114:183–206 DOI 10.1007/s10107-007-0106-8 FULL LENGTH PAPER Approximation algorithms

206 K. Jansen, H. Zhang

39. Ye, D., Zhang, H.: The range assignment problem in static ad-hoc networks on metric spaces. In:Proceedings of the 11th Colloquium on Structural Information and Communication Complexity,SIROCCO, LNCS, vol. 3104, pp 291–302 (2004)

40. Young, N.E.: Randomized rounding without solving the linear program. In: Proceedings of the 6thACM-SIAM Symposium on Discrete Algorithms, SODA, pp 170–178 (1995)

41. Young, N.E.: Sequential and parallel algorithms for mixed packing and covering. In: Proceedings ofthe 42nd Annual Symposium on Foundations of Computer Science, FOCS, pp 538–546 (2001)

123