local ratio: a unified framework for approximation ...oded/bbfr.pdfminimum weight vertex cover,...

42
Local Ratio: A Unified Framework for Approximation Algorithms In Memoriam: Shimon Even 1935–2004 REUVEN BAR-YEHUDA AND KEREN BENDEL Technion (Israel Institute of Technology) ARI FREUND IBM Haifa Research Lab AND DROR RAWITZ Tel-Aviv University The local ratio technique is a methodology for the design and analysis of algorithms for a broad range of optimization problems. The technique is remarkably simple and elegant, and yet can be applied to several classical and fundamental problems (including covering problems, packing problems, and scheduling problems). The local ratio technique uses elementary math and requires combinatorial insight into the structure and properties of the problem at hand. Typically, when using the technique, one has to invent a weight function for a problem instance under which every “reasonable” solution is “good.” The local ratio technique is closely related to the primal-dual schema, though it is not based on weak LP duality (which is the basis of the primal-dual approach) since it is not based on linear programming. In this survey we, introduce the local ratio technique and demonstrate its use in the design and analysis of algorithms for various problems. We trace the evolution path of the technique since its inception in the 1980’s, culminating with the most recent development, namely, fractional local ratio, which can be viewed as a new LP rounding technique. Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems—Computations on discrete structures; Sequencing and scheduling; G.2.1 [Discrete Mathematics]: Combinatorics—Combinatorial algorithms General Terms: Algorithms, Performance, Theory Additional Key Words and Phrases: Approximation algorithms, local ratio technique, fractional local ratio Most of the work on this survey was done while Ari Freund and Dror Rawitz were at the Technion Depart- ment of Computer Science, and part of it while Ari Freund was at the Caesarea Rothschild Institute, Haifa University. Authors’ addresses: R. Bar-Yehuda and K. Bendel, Department of Computer Science, Technion, Haifa 32000, Israel; email: {reuven,bkeren}@cs.technion.ac.il; A. Freund, IBM Haifa Research Lab, Haifa University Cam- pus, Haifa 31905, Israel; email: [email protected]; D. Rawitz, School of Electrical Engineering, Tel-Aviv Uni- versity, Tel-Aviv 69978, Israel; email: [email protected]. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or direct commercial advantage and that copies show this notice on the first page or initial screen of a display along with the full citation. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this work in other works requires prior specific permission and/or a fee. Permissions may be requested from Publications Dept., ACM, Inc., 1515 Broadway, New York, NY 10036 USA, fax: +1 (212) 869-0481, or [email protected]. c 2004 ACM 0360-0300/04/1200-0422 $5.00 ACM Computing Surveys, Vol. 36, No. 4, December 2004, pp. 422–463.

Upload: others

Post on 26-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation AlgorithmsIn Memoriam: Shimon Even 1935–2004

REUVEN BAR-YEHUDA AND KEREN BENDEL

Technion (Israel Institute of Technology)

ARI FREUND

IBM Haifa Research Lab

AND

DROR RAWITZ

Tel-Aviv University

The local ratio technique is a methodology for the design and analysis of algorithms fora broad range of optimization problems. The technique is remarkably simple andelegant, and yet can be applied to several classical and fundamental problems(including covering problems, packing problems, and scheduling problems). The localratio technique uses elementary math and requires combinatorial insight into thestructure and properties of the problem at hand. Typically, when using the technique,one has to invent a weight function for a problem instance under which every“reasonable” solution is “good.” The local ratio technique is closely related to theprimal-dual schema, though it is not based on weak LP duality (which is the basis ofthe primal-dual approach) since it is not based on linear programming.

In this survey we, introduce the local ratio technique and demonstrate its use in thedesign and analysis of algorithms for various problems. We trace the evolution path of thetechnique since its inception in the 1980’s, culminating with the most recent development,namely, fractional local ratio, which can be viewed as a new LP rounding technique.

Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and ProblemComplexity]: Nonnumerical Algorithms and Problems—Computations on discretestructures; Sequencing and scheduling; G.2.1 [Discrete Mathematics]:Combinatorics—Combinatorial algorithms

General Terms: Algorithms, Performance, Theory

Additional Key Words and Phrases: Approximation algorithms, local ratio technique,fractional local ratio

Most of the work on this survey was done while Ari Freund and Dror Rawitz were at the Technion Depart-ment of Computer Science, and part of it while Ari Freund was at the Caesarea Rothschild Institute, HaifaUniversity.Authors’ addresses: R. Bar-Yehuda and K. Bendel, Department of Computer Science, Technion, Haifa 32000,Israel; email: {reuven,bkeren}@cs.technion.ac.il; A. Freund, IBM Haifa Research Lab, Haifa University Cam-pus, Haifa 31905, Israel; email: [email protected]; D. Rawitz, School of Electrical Engineering, Tel-Aviv Uni-versity, Tel-Aviv 69978, Israel; email: [email protected] to make digital or hard copies of part or all of this work for personal or classroom use is grantedwithout fee provided that copies are not made or distributed for profit or direct commercial advantage and thatcopies show this notice on the first page or initial screen of a display along with the full citation. Copyrights forcomponents of this work owned by others than ACM must be honored. Abstracting with credit is permitted. Tocopy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this work inother works requires prior specific permission and/or a fee. Permissions may be requested from PublicationsDept., ACM, Inc., 1515 Broadway, New York, NY 10036 USA, fax: +1 (212) 869-0481, or [email protected]©2004 ACM 0360-0300/04/1200-0422 $5.00

ACM Computing Surveys, Vol. 36, No. 4, December 2004, pp. 422–463.

Page 2: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 423

1. INTRODUCTION

The local ratio technique is an approxima-tion paradigm for NP-hard optimizationproblems which has been enjoying a greatmeasure of success since its inception inthe early 1980’s. Its main feature of at-traction is its simplicity and elegance; it isvery easy to understand, and has surpris-ingly broad applicability. The techniqueis based on exploiting the combinatorialstructure of the problem at hand—oftenby making just one or two straightforwardobservations—and is, therefore, accessi-ble to the nonspecialist. In this sense, thetechnique is not unlike dynamic program-ming; it is easily mastered, and can beused effectively in a wide variety of prob-lems. Although it is often the case thatemploying heavier machinery can producebetter results, the local ratio techniqueusually provides a good head start on theproblem.

In this survey, we introduce the localratio technique and demonstrate its usein the design and analysis of algorithmsfor various problems. Among the multi-tude of algorithms we describe, some arealgorithms that were developed initiallyusing the technique, and others are lo-cal ratio interpretations of pre-existing al-gorithms. Several of them appear herefor the first time. Whenever possible, wepresent a unified analysis for a num-ber of similar algorithms. We cover min-imization and maximization problems,approximation and exact optimization al-gorithms, classical results, and more re-cent developments.

1.1. A First Glimpse

Before actually beginning, let us brieflyintroduce the basic notions of optimiza-tion and approximation, as the intendedaudience of this survey is the generalComputer Science community. (We givemore complete and precise definitions inSection 2.) An optimization problem is onewhere we seek a solution of minimum ormaximum cost, among a set of candidatesolutions. For example, if the problem is to

find the longest (simple) path between twogiven vertices in a graph, the candidatesolutions are all simple paths connectingthe two vertices, and the cost of eachpath is its length. Since this problem, andmany others, are NP-hard, we are ofteninterested in efficiently obtaining approx-imate solutions, that is, solutions that,although suboptimal, are not “far” fromoptimal. A solution whose cost is withina factor of r of the optimum is said to ber-approximate. Thus, in the longest pathexample, a path whose length is at leastone half the length of the longest pathis 2-approximate. An r-approximationalgorithm for a given problem is analgorithm that finds r-approximatesolutions.

Say we want to develop anr-approximation algorithm for a min-imization problem. A key step in thedesign of such an algorithm is to establisha good lower bound b on the cost of theoptimal solution. This bound can laterbe used in the analysis to prove thatthe solution found by the algorithm, isr-approximate by showing that its costis no more than r · b. At a high levelof abstraction, the local ratio techniqueis based on a “local” variation of thisscheme. In essence, the idea is to breakdown the cost c of the solution foundby the algorithm, into a sum of “partialcosts” c = c1 + c2 + · · · + ck , and simi-larly, break down the lower bound b intob = b1 + b2 + · · · + bk , and to show thatci ≤ r · bi for all i. (For maximization prob-lems, b is an upper bound, and we showthat ci ≥ bi/r for all i.) This high-level ideaof decomposing a cost and charging eachcomponent to some corresponding objectis fairly standard, and is ubiquitous, forexample, in time complexity analyses ofalgorithms. The local ratio technique isall about implementing it in a certainsystematic manner. In the local ratiomethodology, the decomposition of c andb is not a mere artifact of the analysis—existing in hindsight—but is built directlyinto the algorithm. Roughly speaking, thealgorithm constructs a solution by stepsdesigned to explicitly decompose c and

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 3: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

424 R. Bar-Yehuda et al.

b in such a way as to create the desiredeffect. The actual ideas involved in thetechnique are, of course, more elaborate;we get down to the specifics in subsequentsections.

To give a first taste of the local ratiotechnique, we demonstrate it on the wellknown vertex cover problem. In this prob-lem, we are given a graph G = (V , E)and a nonnegative weight function w onits vertices, and the objective is to find aminimum weight vertex cover, that is, aminimum weight set of vertices C ⊆ V ,such that every edge in the graph has atleast one endpoint in C. Let us develop a2-approximation algorithm for this prob-lem in intuitive terms. Imagine that weare shopping for a vertex cover of thegraph at the local branch of Graphs ’ R’Us.The direct approach would be to somehowselect a vertex cover, and then pay for it,but rather than doing so, we agree withthe shopkeeper on the following methodof payment. We repeatedly select ver-tices and make certain down paymentson them. (The down payment we makeeach time may be less than the actualcost of the vertex, and we may make sev-eral payments on the same vertex.) Theshopkeeper, in turn, does not want to bebothered with keeping track of all of ourdown payments, so he adopts the follow-ing strategy. Whenever we make a pay-ment of ε on a vertex, he responds bysimply decreasing the price of that vertexby ε.

More specifically, we conduct the busi-ness transaction in rounds. In each round,we select an edge (u, v) whose two end-points have nonzero cost, and make adown payment of ε = min{price of u, priceof v} on each of its endpoints. In response,the shopkeeper lowers the prices of u andv, by ε each. With these new prices in ef-fect, at least one of the edge’s endpointshas zero cost. Thus after O(|V |) rounds,prices will have dropped sufficiently foreach edge to have at least one zero-costendpoint. When that happens, the set ofall zero-cost vertices is a vertex cover,and it is free. We take this set as oursolution.

We formalize the above process as thefollowing algorithm.Algorithm VC.1. While there exists an edge (u, v),

such that min{w(u), w(v)} > 0:2. Let ε = min{w(u), w(v)}.3. w(u) ← w(u) − ε.4. w(v) ← w(v) − ε.5. Return the set C = {v | w(v) = 0}.

What is the cost of the solution in termsof the original weights, and how far is itfrom the optimal cost? Consider the ithround. Let (ui, vi) be the edge selected inthis round, and let εi be the down paymentmade on each of its endpoints. Since everyvertex cover must contain at least one of uiand vi (in order to cover the edge connect-ing them), decreasing both their prices byεi has the effect of lowering the optimalcost, denoted OPT, by at least εi. Thus, inthe ith round, we pay 2εi and effect a dropof at least εi in OPT. Hence the local ra-tio between our payment and the drop inOPT is at most 2 in every round. It followsthat the ratio between our total paymentand the total drop in OPT, summed overall rounds, is at most 2. Clearly, the cost ofthe solution we find is fully covered by thesum of all down payments we make, andthe total drop in the optimal cost is theoriginal value of OPT (as evidenced by thefact that we find a vertex cover of zero costwith respect to the final weights). Thus thecost of our solution is at most 2OPT.

Note that our approximation ratio anal-ysis makes no reference to the actual valueof ε in any given iteration. The choice ofε = min{w(u), w(v)} is not compulsory; any0 ≤ ε ≤ min{w(u), w(v)} would do justfine and would result in a factor 2 ap-proximation. We use ε = min{w(u), w(v)}for reasons of efficiency. This choice en-sures that the number of vertices with pos-itive cost decreases with each iteration,thus limiting the number of iterations toless than |V |. (Note that although a naiveimplementation of the algorithm runs in�(|V ||E|) time, the algorithm can be madeto run in linear time by performing a sin-gle sweep through the edges in arbitraryorder.)

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 4: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 425

Another point worth noting is that ouranalysis of algorithm VC contains someslack in that it bounds the cost of the so-lution by the sum of all down payments,rather than by the sum of down paymentsmade for vertices that are actually takento the solution. It might seem that a morerefined analysis could yield a better ap-proximation ratio, but unfortunately thisis not true for the vertex cover problem; onecan easily construct examples in whichall vertices for which down payments aremade are eventually taken to the solution.Another source of slack is that in the fi-nal step, all zero-cost vertices are takento the solution, and no attempt is madeto prune it by removing unnecessary ver-tices. One obvious idea is to return a min-imal (with respect to set inclusion) sub-set of C that is still a vertex cover. Thisidea fails too, as it is easy to constructworst-case examples in which C is mini-mal to begin with. As we shall see, though,these ideas are useful (indeed, neces-sary) in the context of other optimizationproblems.

1.2. Historical Highlights

The idea of bounding (or computing ex-actly) a numerical quantity by decompos-ing it into parts and bounding each by amore easily computable quantity is age-old, and has appeared early on in the his-tory of approximation algorithms. Someexamples include Garey et al. [1972] andGarey et al. [1976a], who analyzed binpacking algorithms by decomposing thesolution cost and comparing each compo-nent with a corresponding component of asuitably decomposed lower bound; Gavril(see Garey and Johnson [1979, pp. 134]),who obtained an approximation ratio of 2for unweighted vertex cover by chargingthe two endpoints of an edge to the oneendpoint that must be contained in theoptimal solution; and Rosenkrantz et al.[1977], who used a similar charging ideain the context of the traveling salesmanproblem.

The origins of the local ratio techniquecan be traced back to a paper by Bar-Yehuda and Even [1981] on vertex cover

and set cover. In this paper, the au-thors presented a generalization of Algo-rithm VC suited for set cover, and gavea primal-dual analysis of it. This lin-ear time algorithm was motivated by aprevious algorithm of Hochbaum [1982]which was based on LP duality1 and re-quired the solution of a linear program.Although Bar-Yehuda and Even’s primal-dual analysis contains an implicit local ra-tio argument, the debut of the local ra-tio technique only occurred in a followuppaper [Bar-Yehuda and Even 1985] sev-eral years later, where the authors pre-sented a local ratio analysis of the samealgorithm. They also developed a spe-cialized (2 − log2 log2 n

2 log2 n )-approximation al-gorithm for vertex cover based on local-ratio principles. More than a decade later,Bafna et al. [1999] devised a local ratio 2-approximation algorithm for the feedbackvertex set problem. In this landmark paper,they incorporated the idea of minimal so-lutions into the local ratio technique. Sub-sequently, Fujito [1998] presented a uni-fied local ratio approximation algorithmfor node-deletion problems, and later still,Bar-Yehuda [2000] developed a generic lo-cal ratio algorithm that explained mostlocal ratio and primal-dual approxima-tion algorithms known at the time. Atthis point, the local ratio technique hadreached a certain level of maturity, butonly in the context of minimization prob-lems. No local ratio (or primal-dual) algo-rithms were known for any maximizationproblem. This changed in a paper by Bar-Noy et al. [2001a], who presented the firstlocal ratio algorithms for maximizationproblems. The key idea facilitating thesealgorithms was the use of maximal solu-tions, rather than minimal ones. The mostrecent development, due to Bar-Yehudaet al. [2002], is a novel extension of the lo-cal ratio technique, called fractional localratio.

1LP stands for linear programming. The use of linearprogramming in the context of approximation algo-rithms is beyond the scope of this survey, as are thedetails of the primal-dual schema, which is an ap-proximation paradigm based on linear programmingconcepts.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 5: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

426 R. Bar-Yehuda et al.

1.3. Connection to the Primal-Dual Schema

The primal-dual schema for approxima-tion algorithms is a widely used LP-based method for the design and anal-ysis of approximation algorithms. (SeeWilliamson [2002] for a good recent sur-vey, or Goemans and Williamson [1997] foran older one.) While it does not require theactual solution of linear programs, it doesrely on LP duality and related concepts.It is frequently regarded as an outgrowthof the primal-dual method for the (exact)solution of linear programs.

It has often been observed that primal-dual algorithms have local ratio inter-pretations, and vice versa. Some notableexamples include Bar-Yehuda and Even’s[1981] primal-dual algorithm for vertexcover, which was later formulated in localratio terms [Bar-Yehuda and Even 1985];Bafna et al.’s [1999] local ratio algorithmfor feedback vertex set, which was later re-cast as a primal-dual algorithm [Chudaket al. 1998]; and Bar-Noy et al.’s [2001a]approximation framework for severalmaximization scheduling problems,which was developed initially using thelocal-ratio approach, and then explained(in the same paper) in primal-dual terms.Thus over the years, there was a growingsense that the two seemingly distinctapproaches share a common ground,but the exact nature of the connectionbetween them remained unclear (see,e.g., Williamson [2002], where this wasposed as an open question). The issuewas resolved only recently by Bar-Yehudaand Rawitz [2001]. They defined twoabstract frameworks, one encompassingthe primal-dual schema, and the otherencompassing the local ratio technique,and showed that these two frameworksare equivalent.2 The equivalence is con-structive, meaning that an algorithm

2There are a small number of algorithms that areusually considered to be primal-dual algorithms, butwhich deviate in important respects from the main-stream primal-dual schema. Although these algo-rithms do not fit neatly in the abstract frameworkof Bar-Yehuda and Rawitz [2001], and hence haveno clean local ratio counterparts, they do have non-LP interpretations in the local ratio spirit (see, e.g.,Freund and Rawitz [2003]).

formulated within one paradigm can betranslated quite mechanically to the otherparadigm.

1.4. Overview of This Survey

The survey is organized as follows. InSection 2, we define the basic notions thatare used in the field of approximation al-gorithms. We also establish some termi-nology and notation to be used later inthe survey. In Section 3, we begin the sur-vey proper by presenting two introductoryexamples in the spirit of Algorithm VCabove. In Section 4, we state and provethe Local Ratio Theorem (for minimiza-tion problems) and formulate the local ra-tio technique as a design and analysisframework based on it. In Section 5, weintroduce the idea of minimal solutionsinto the framework, making it powerfulenough to encompass many known ap-proximation algorithms for covering prob-lems (e.g., feedback vertex set and networkdesign). In Section 6, we develop a localratio framework for maximization prob-lems, which is, in a sense, a mirror im-age of its minimization counterpart devel-oped in Sections 4 and 5. We apply theframework to a few (interrelated) schedul-ing problems. In Section 7, we present sev-eral algorithms that deviate from the stan-dard local ratio approach. In particular,we show local ratio analyses of exact opti-mization algorithms (for polynomial-timesolvable problems). In the final section ofthe survey, Section 8, we describe a recentdevelopment, namely, the fractional localratio technique.

Since this writeup is intended as aprimer as well as a survey, it is writtenin a somewhat textbook style. We have re-moved nearly all citations and referencesfrom the running text, and instead haveincluded at the end of each major sectiona subsection titled Background, in whichwe cite sources for the material coveredin the section, and discuss related work.The first such subsection, discussing ver-tex cover, appears next.

1.5. Background

The vertex cover problem is known to beNP-complete, even for planar cubic graphs

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 6: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 427

with unit weights [Garey et al. 1976b].Hastad [1997] proves a lower bound onthe approximability of the problem. Heshows, using PCP arguments, that ver-tex cover cannot be approximated withina factor of 7

6 , unless P = NP. Dinur andSafra [2002] improve this bound to 10

√5−

21 ≈ 1.36067. The first 2-approximationalgorithm for the weighted version ofvertex cover is due to Nemhauser andTrotter [1975]. Hochbaum [1983] usesthis algorithm to obtain an approxima-tion algorithm with performance ratio2 − 2

dmax, where dmax is the maximum

degree of a vertex. Gavril (see [Gareyand Johnson 1979]) gives a linear time2-approximation algorithm for the non-weighted case. (Algorithm VC reduces tothis algorithm in nonweighted instances.)Hochbaum [1982] presents two approx-imation algorithms for set cover, bothrequiring the solution of a linear pro-gram. The first constructs a cover, basedon the optimal dual solution, while thesecond is a simple LP rounding algo-rithm. Her algorithms achieve an ap-proximation guarantee of 2 on instancesthat are graphs (i.e., on vertex cover in-stances). Bar-Yehuda and Even [1981]present an LP-based approximation algo-rithm for weighted set cover that does notsolve a linear program directly. Rather,it constructs simultaneously a primal in-tegral solution and a dual feasible solu-tion without solving either the primal ordual programs. It is the first algorithm tooperate in this method, a method whichlater became known as the primal-dualschema. Their algorithm reduces to Algo-rithm VC on instances that are graphs.In a subsequent paper, Bar-Yehuda andEven [1985] provide an alternative localratio analysis for this algorithm, mak-ing it the first local ratio algorithm aswell. They also present a specialized(2 − log2 log2 n

2 log2 n )-approximation algorithm forvertex cover. Independently, Monien andSpeckenmeyer [1985] achieved the sameratio for the unweighted case. Recently,Halperin [2000] improved this result to2 − (1 − o(1)) 2 ln ln dmax

ln dmax, using semidefinite

programming.

2. DEFINITIONS AND NOTATION

2.1. Optimization Problems

An optimization problem is a family ofproblem instances, that is, possible inputs.With each instance is associated a collec-tion of solutions, each of which is eitherfeasible or infeasible, and a cost functionassigning a cost to each solution. Each op-timization problem is classified as either amaximization problem, or a minimizationproblem. For a given problem instance,an optimal solution is a feasible solutionwhose cost is optimal, which is to say thatit is either minimal or maximal (depend-ing, respectively, on whether the problemis one of minimization or maximization),among all feasible solutions. The cost of anoptimal solution is referred to as the opti-mum value, or simply the optimum. Forexample, the familiar minimum spanningtree problem is a minimization problemin which the instances are edge-weightedgraphs, solutions are subgraphs, feasiblesolutions are spanning trees, the cost ofa given solution is the total weight ofits edges, and optimal solutions are span-ning trees of minimum total edge weight.Throughout this survey, we use the termscost and weight interchangeably.

Many optimization problems can be for-mulated as problems of selecting a subset(satisfying certain constraints) of a givenset of weighted objects. For example, min-imum spanning tree can be viewed as theproblem of selecting a subset of the edgesforming a spanning tree. In such problems,we consider the cost function to be definedon the objects, and extend it to subsets inthe natural manner. Nearly all of the prob-lems we encounter in this survey are prob-lems of this type.

2.2. Approximation Algorithms

An approximation algorithm for an op-timization problem is an algorithm thattakes an input instance and finds a feasi-ble solution for it. The word approximationin the term approximation algorithm ex-presses the idea that our goal in the designof such an algorithm is to make it so thatthe algorithm will always return a feasible

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 7: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

428 R. Bar-Yehuda et al.

solution whose value approximates the op-timum in some sense. Approximation al-gorithms are of interest chiefly in the con-text of NP-hard problems, where findingoptimal solutions efficiently is not possible(unless P = NP), but finding approximatesolutions efficiently quite often is.

The most popular measure of closenessto the optimum is approximation ratio, de-fined as follows. For r ≥ 1, a feasible so-lution is said to be r-approximate, if itscost is within a factor of r of the opti-mum. More specifically, let w(X ) be thecost of a given feasible solution X , andlet w∗ be the optimum value. Then, inthe case of minimization, X is said to ber-approximate, if w(X ) ≤ r · w∗, and inthe case of maximization, it is said to ber-approximate, if w(X ) ≥ w∗/r. (Note thatfor both types of problems the smaller ris, the closer X is to being optimal, andif r = 1, X is optimal.) In the contextof approximation algorithms, we only con-sider problems in which the optimum isnonnegative for all input instances. Anr-approximate solution is also called anr-approximation. An algorithm that al-ways returns r-approximate solutions issaid to achieve an approximation factor ofr, and it is called an r-approximation algo-rithm. Also, r is said to be a performanceguarantee, or an approximation guaran-tee, for it. The approximation ratio of agiven algorithm is inf {r | r is a perfor-mance guarantee for the algorithm}. Nev-ertheless, the term approximation ratio issometimes used as a synonym for perfor-mance guarantee.

2.3. Conventions and Notation

In the sequel, we assume the follow-ing conventions, except where specifiedotherwise.

—All weights are nonnegative and de-noted by w. We denote by w(x) theweight of element x, and by w(X ), thetotal weight of set X , that is, w(X ) =∑

x∈X w(x).

—We denote the optimum value for agiven problem instance by OPT.

—Graphs are simple and undirected. Agraph is denoted G = (V , E). When-ever a digraph is specified, it is denotedG = (N , A). We denote the number ofvertices/nodes by n, and the number ofedges/arcs by m. We denote the degreeof vertex v by deg(v).

—We denote by Hn the nth harmonic num-ber, that is, Hn = ∑n

i=11i .

3. TWO INTRODUCTORY EXAMPLES

In this section, we demonstrate two easyapplications of the local ratio technique.We describe approximation algorithms forthe prize collecting version of vertex coverand for a certain graph editing problem.Our treatment of these problems is simi-lar to the treatment of vertex cover in theintroduction.

3.1. Prize Collecting Vertex Cover

The prize collecting vertex cover problemis a generalization of vertex cover in whichwe are not obligated to cover all edges,but must pay a penalty for those left un-covered. More specifically, both verticesand edges have nonnegative weights; ev-ery set of vertices is a feasible solution;and the cost of a feasible solution is thetotal weight of its vertices, plus the totalweight of the edges it does not cover. Ouralgorithm for this problem is very similarto Algorithm VC.

Algorithm PCVC.1. While there exists an edge e = (u, v),

such that min{w(u), w(v), w(e)} > 0:2. Let ε = min{w(u), w(v), w(e)}.3. w(u) ← w(u) − ε.4. w(v) ← w(v) − ε.5. w(e) ← w(e) − ε.6. Return the feasible solution C =

{v | w(v) = 0}.

The analysis here is similar to that ofvertex cover. First, observe that when thealgorithm halts, every edge not covered byC has zero cost, and thus the cost of C iszero. Next, consider the ith iteration. Letei = (ui, vi) be the edge involved, and letεi be the amount by which the weights are

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 8: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 429

reduced. We pay 3εi and effect a drop of atleast εi in the optimal cost (since every fea-sible solution must either contain one (orboth) of ui and vi, or else pay for the edgeei). Thus, a factor of 3 is immediate. How-ever, we can tighten the analysis by takinginto account only payments that actuallycontribute towards covering the cost of C.Of the 3εi we seem to pay, only 2εi are actu-ally “consumed,” since we must either payfor ei, or for one or both of ui and vi, butnever for all three. Thus, the approxima-tion ratio is 2.

We remark that our analysis still holdsif we set ε = min{w(u), w(v), 1

2 w(e)} inLine 2, and decrease w(e) by 2ε in Line 5.The ratio of 2 remains intact because OPTstill drops by at least ε, and we still payin actuality at most 2ε. In fact, we can setε = min{w(u), w(v), 1

αw(e)}, and decrease

w(e) by α · ε, for any 1 ≤ α ≤ 2.

3.2. Graph Editing

A graph editing problem asks to trans-form, by means of editing operations, agiven graph into a new graph possessingsome desired property. The editing opera-tions we consider are:

Vertex deletion. Delete a vertex (and allincident edges).

Edge deletion. Delete an edge.Nonedge addition. Connect two nonad-

jacent vertices by an edge. We refer to apair of nonadjacent vertices as a nonedge,and to the act of connecting them by anedge as adding the corresponding nonedgeto the graph.

The input consists of a graph withweights associated with its vertices, edges,and nonedges, collectively known as thegraph elements. The cost of a transforma-tion is defined as the total cost of the graphelements involved, that is, the total cost ofedges removed (including edges removedas part of vertex deletion operations), ver-tices removed, and nonedges added. Dif-ferent graph editing problems may imposerestrictions on the graph-element weights,or on the types of permitted editing oper-ations. For example, the vertex cover prob-lem is a graph editing problem in which

all edge weights are zero, only vertex dele-tion operations are allowed, and the de-sired property of the target graph is in-dependent set, that is, it must contain noedges.

As another example, consider the prizecollecting vertex cover problem. One mightbe tempted to think that it is a graphediting problem (for the independent setproperty) in which the permitted editingoperations are vertex deletion and edgedeletion. This is not the case, however, be-cause in the graph editing framework, thecost of deleting a vertex is its weight,plus the total weight of its incident edges,where in the context of prize collecting ver-tex cover, the cost of a vertex is only itsown weight. Nevertheless, the prize col-lecting vertex cover problem can be viewedas a graph editing problem by means of thefollowing reduction. Given a vertex-and-edge weighted graph G, construct the com-plement graph G ′, that is, the graph ob-tained from G by turning every edge into anonedge, and every nonedge into an edge.Define weights on the graph element of G ′as follows. The weight of a vertex in G ′ isthe same as its weight in G; the weight of anonedge in G ′ is the same as the weight ofthe corresponding edge in G; the weightsof all edges in G ′ are zero. It can be easilyseen that the problem of finding a prize col-lecting vertex cover in G is equivalent tothe graph editing problem on G ′ in whichthe desired property is clique (i.e., the tar-get graph must be complete).

We consider the following graph editingproblem. We are given a t-partite graphG = (V , E), together with a partitioningof G into t ≥ 2 (nonempty) sides V =⋃t

i=1 Vi, and a weight function w on G’s ele-ments. The objective is to find a minimumcost transformation, yielding a completet ′-partite graph for some t ′ ≤ t, whosesides are subsets of the sides of G. Westress that t ′ is not part of the input, butrather is defined by the target graph. Wealso consider a special case of this prob-lem in which nonedge additions are notallowed. (Or, in other words, w(e) = ∞ forany nonedge e.) In the remainder of thissection, we develop an approximation al-gorithm for the above mentioned editing

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 9: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

430 R. Bar-Yehuda et al.

problem and its special case with approxi-mation guarantees of 3 and 2, respectively.

To analyze the problem, let us first in-troduce some terminology. We define theextended weight of a vertex u, denotedw(u), as the sum of w(u), and the totalweight of edges incident on u. We saythat a nonedge e = (u, v) is costly, ifmin{w(u), w(v), w(e)} > 0. Finally, we usethe term nonedge as an abbreviation ofnonedge between two vertices belonging todifferent sides of the partition.

Consider a nonedge (u, v). If we delete uor v from the graph, we will not be able toadd (u, v). On the other hand, if we leavethem both in the graph, we will be forcedto add (u, v) (since the target graph mustbe complete t ′-partite). Similarly, if (u, v)is an edge, it will be deleted, if and onlyif at least one of its endpoints is deleted.Thus, every feasible solution is completelydefined by the set of vertices which it re-moves from the graph, and, conversely,every set of vertices defines a feasible so-lution in a similar manner. We can, there-fore, identify feasible solutions with setsof vertices.

OBSERVATION 1. The optimal cost is 0, ifand only if the graph contains no costlynonedges, and if that is the case, the set{v | w(v) = 0} is an optimal solution.

The following algorithm uses a similaridea to the one behind Algorithm PCVC.

Aalgorithm (t, t)-Graph Editing.1. While there exists a costly nonedge

e = (u, v):2. Let ε = min{w(u), w(v), w(e)}.3. w(u) ← w(u) − ε.4. w(v) ← w(v) − ε.5. w(e) ← w(e) − ε.6. Return the feasible solution {v | w(v) = 0}.

There is a subtle point regarding theimplementation of Lines 3 and 4. Recallthat the extend weight w(x) of vertex xis defined as the sum of w(x), and the to-tal weight of edges incident on x. Whenwe say “w(x) ← w(x) − ε”, we actuallymean “decrease w(x) and the weights ofthe edges incident on x by some nonnega-tive (but not necessarily equal) amounts,such that w(x) drops by ε as a result.” We

do not care exactly how much is subtractedfrom the weight of each of the graph el-ements involved, only that the total de-crease amounts to ε, and the weights ofthe graph elements remain nonnegative.Note that the effect of this is not only todecrease w(x) by ε, but possibly to also de-crease the extended weight of some of x ’sneighbors (as a result of decreasing theweights of the edges connecting them tox). The algorithm must keep track of thesechanges. Regarding this point, note that uand v (in Lines 3 and 4) are nonadjacent,so decreasing the extended weight of one ofthem has no effect on the extended weightof the other.

The analysis is similar to the analysisof Algorithm PCVC. In the ith iteration,we pay 3εi, and manage to lower the opti-mal cost by at least εi (because every fea-sible solution must either delete at leastone of the two vertices, or else add thenonedge). Thus, the solution returned is3-approximate. Note that it is possible tobe forced to actually pay nearly 3εi, if theweights of ui and vi are zero, and eachis adjacent to an edge contributing onlynegligibly to the decrease in its extendedweight. In such a case, it might happenthat these two edges will remain in thegraph, all other edges incident on ui or viwill be deleted by the removal of neighbor-ing vertices, and the nonedge (ui, vi) willbe added. As a result, only the negligibledown payments made on the two survivingedges will be recoverable.

In the special case where nonedge addi-tions are prohibited, we only pay 2εi, yield-ing an approximation guarantee of 2.

3.3. Background

Prize collecting vertex cover. The prizecollecting vertex cover problem (alsoknown as generalized vertex cover) wasintroduced and studied by Hochbaum[2002], who presented an O(nm log n2

m )-time 2-approximation algorithm. Algo-rithm PCVC shown here is due to Bar-Yehuda and Rawitz [2001]. The lowerbounds of Hastad [1997] and Dinur andSafra [2002] for vertex cover apply to theprize collecting version because the plain

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 10: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 431

vertex cover problem is a special case of theprize collecting version (where edge costsare infinite).

Graph editing. The graph editing prob-lem discussed in this section has itsroots in a number of node-and-edge dele-tion problems considered by Hochbaum[1998]. She approximates these problemsby reducing them to max-flow problems.Bar-Yehuda and Rawitz [2002] generalizethe problems and use the local ratio tech-nique to approximate them. They considerseveral variants of the following optimiza-tion problem: given a graph and a nonneg-ative weight function on the vertices andedges, find a minimum weight set of ver-tices and edges whose removal from thegraph leaves a complete k-partite graph.The editing problem discussed in this sec-tion generalizes one of these variants.

4. THE LOCAL RATIO THEOREM

As we have seen, the local ratio techniqueis based on the idea of paying, in each it-eration, at most r · ε, for some r, in orderto achieve a reduction of at least ε in OPT.If the same r is used in all iterations, thesolution returned is r-approximate. Thisidea has a very intuitive appeal, and workswell in the examples we have encounteredin the previous section. However, a closerlook at these examples reveals that theidea worked mainly because we were ableto make a very localized payment and ar-gue that OPT must drop by a proportionalamount because every solution must in-volve some of the items we paid for. Forexample, in vertex cover, the payment waslocalized to a single edge; we paid ε foreach of its two endpoints and argued thatOPT must drop by at least ε because everyvertex cover must include at least one ofthem. This localization of the payments isat the root of the simplicity and eleganceof the analysis, but it is also a source ofweakness. How can we deal with problemsin which no single set of items is neces-sarily involved in every optimal solution?Consider, for example, the feedback ver-tex set problem in which we are given avertex-weighted graph and are asked toremove a minimum weight set of vertices,

such that the remaining graph will con-tain no cycles. As we shall see, there is a2-approximation local ratio algorithm forthis problem, yet surely it is not alwayspossible to find two vertices such that atleast one of them is part of every optimalsolution! The Local Ratio Theorem, whichwe present below, allows us to go beyondlocalized payments by shifting the focus ofattention from the weight function itselfto the changes in the weight function, andtreating these changes as weight functionsin their own right. A consequence of this isthat algorithms based on the theorem aremore readily formulated as recursive algo-rithms, rather than iterative ones. This,in turn, leads to the idea of concentrat-ing on minimal solutions in a very naturalmanner. By minimal, we mean minimalwith respect to set inclusion. Such solu-tions are an essential ingredient in manyapplications of the technique. We explainand demonstrate all of this in this sectionand subsequent ones.

The Local Ratio Theorem is deceptivelysimple.3 It applies to optimization prob-lems that can be formulated as follows.

Given a weight vector w ∈ Rn, and a set of

feasibility constraints C, find a solution vectorx ∈ R

n, satisfying the constraints in C that min-imizes the scalar product w · x.

(For convenience we deal in this sec-tion with minimization problems only.In Section 6, we discuss maximizationproblems.)

The most common type of optimizationproblem that can be formulated as just de-scribed consists of instances in which theinput contains a set I of n weighted el-ements, and a specification of feasibilityconstraints on subsets of I . Feasible solu-tions are subsets of I satisfying the fea-sibility constraints. The cost of a feasiblesolution is the total weight of the elementsit comprises. In terms of the previous for-mulation, the weight function on the ele-ments is expressed by the weight vector(where the ith component of the vector is

3Indeed, some authors refer to it as the Local RatioLemma. We prefer Theorem in light of its fundamen-tal role.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 11: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

432 R. Bar-Yehuda et al.

the weight of the ith element), and sub-sets are expressed as 0–1 vectors (wherethe ith component of the vector is 1 if theith element is in the subset, and is 0 other-wise). The scalar product w · x is then theweight of the subset corresponding to x.

THEOREM 2 LOCAL RATIO—MINIMIZATION

PROBLEMS. Let C be a set of feasibility con-straints on vectors in R

n. Let w, w1, w2 ∈R

n be such that w = w1 +w2. Let x ∈ Rn be

a feasible solution (with respect to C) that isr-approximate with respect to w1, and withrespect to w2. Then, x is r-approximatewith respect to w as well.

PROOF. Let x∗, x∗1, and x∗

2 be optimalsolutions with respect to w, w1, and w2,respectively. Clearly, w1 · x∗

1 ≤ w1 · x∗,and w2 · x∗

2 ≤ w2 · x∗. Thus, w · x =w1 · x + w2 · x ≤ r(w1 · x∗

1) + r(w2 · x∗2) ≤

r(w1 · x∗) + r(w2 · x∗) = r(w · x∗).

(Note that the theorem holds even whennegative weights are allowed.)

The Local Ratio Theorem leads nat-urally to the formulation of recursivealgorithms with the following generalstructure.

(1) If a zero-cost solution can be found, re-turn one.

(2) Otherwise, find a suitable decomposi-tion of w into two weight functions w1and w2 = w − w1, and solve the prob-lem recursively, using w2 as the weightfunction in the recursive call.

We demonstrate this on vertex cover.

Algorithm RecursiveVC(G,w).1. If min{w(u), w(v)} = 0 for all edges (u, v):2. Return the set {v | w(v) = 0}.3. Else:4. Let (u, v) be an edge such that

ε�= min{w(u), w(v)} > 0.

5. Define w1(x) ={

ε x = u or x = v,0 otherwise,

and define w2 = w − w1.6. Return RecursiveVC(G,w2).

Algorithm RecursiveVC is clearly justa recursive formulation of Algorithm VC.However, the recursive formulation isamenable to direct analysis based on the

Local Ratio Theorem. We prove that thesolution returned by the algorithm is2-approximate by induction on the recur-sion. In the base case, the algorithm re-turns a vertex cover of zero cost, whichis optimal. For the inductive step, con-sider the solution returned by the recur-sive call. By the inductive hypothesis itis 2-approximate with respect to w2. Weclaim that it is also 2-approximate withrespect to w1. In fact, we claim that everyfeasible solution is 2-approximate with re-spect to w1. To see this, observe that thecost (with respect to w1) of every vertexcover is at most 2ε, since only u and v havenonzero cost, and they each cost ε. On theother hand, the minimum cost of a coveris at least ε, since every vertex cover mustinclude at least one of u and v in orderto cover the edge (u, v). Thus, by the Lo-cal Ratio Theorem, the solution returnedis 2-approximate with respect to w.

Note that different algorithms (for dif-ferent problems), conforming to the gen-eral structure outlined above, differ fromone another only in the decompositionof w, and this decomposition is deter-mined completely by the choice of w1.(Actually, they might also differ in theway they search for a zero-cost solution,but most often the only candidate thatneeds to be examined is the set of allzero-cost elements.) Accordingly, such al-gorithms also share most of their analy-ses. Specifically, the proof that a given al-gorithm is an r-approximation algorithmis by induction on the recursion. In thebase case, the solution is optimal (and,therefore, r-approximate) because it haszero cost, and in the inductive step, thesolution returned by the recursive call isr-approximate with respect to w2 by theinductive hypothesis. Thus, different algo-rithms differ from one another only in thechoice of w1, and in the proof that everyfeasible solution is r-approximate with re-spect to w1. (Obviously, they may also dif-fer in the value of the approximation ratior.) The following definition formalizes thisnotion.

Definition 1. Given a set of constraintsC on vectors in R

n and a number r ≥ 1, a

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 12: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 433

weight vector w ∈ Rn is said to be fully r-

effective if there exists a number b, suchthat b ≤ w · x ≤ r · b for all feasiblesolutions x.

The analysis of algorithms in our frame-work boils down to proving that w1 isr-effective. Proving this amounts to prov-ing that b is a lower bound on the optimumvalue, and r ·b is an upper bound on thecost of every feasible solution, and thusevery feasible solution is r-approximate(all with respect to w1). For this reason,we will henceforth focus solely on w1, andneglect to mention the remaining detailsexplicitly.

In the remainder of this section, wedemonstrate the above framework on twoproblems: hitting set and feedback vertexset in tournaments. We remark that thesealgorithms can be formulated just as eas-ily in terms of localized payments; the truepower of the Local Ratio Theorem will be-come apparent in the next section.

4.1. Hitting Set

The input in a hitting set instance is a col-lection of nonempty sets C = {S1, . . . , Sm},and a weight function w on the sets’ ele-ments U = ⋃m

i=1 Si. An element x ∈ U issaid to hit a given set Si ∈ C if x ∈ Si. Asubset H ⊆ U is said to hit a given setSi ∈ C if H ∩ Si = ∅. The objective is tofind a minimum-cost subset of U that hitsall sets Si ∈ C.

Let smax = max1≤i≤m |Si|. The followingdecomposition of w achieves an approxi-mation factor of smax. Let i be any indexsuch that Si contains no zero-weight el-ements, and let ε = min{w(x) | x ∈ Si}.Define:

w1(x) ={

ε x ∈ Si,0 otherwise.

We claim that w1 is smax-effective.Clearly, the cost of every feasible solutionis bounded by ε ·|Si| ≤ ε ·smax. On the otherhand, every feasible solution must hit Si,that is, must contain at least one elementof Si. Thus, every feasible solution costs atleast ε.

Remarks. The hitting set problem gen-eralizes many covering problems. For ex-ample, vertex cover can be seen as a hit-ting set problem in which the sets are theedges and the elements are the vertices.Indeed, Algorithm RecursiveVC is just aspecial case of the algorithm for hitting setwe have just described. (Note that smax = 2for the formulation of vertex cover in termsof hitting set.)

We also wish to comment on the relationbetween hitting set and set cover. In the setcover problem, we are given a collection ofsets C = {S1, . . . , Sm}, as in hitting set, butthis time the weight function is on the sets,not on the elements. The objective is tofind a minimum-cost collection of sets that“covers” all elements. In other words, theunion of the sets in the solution must beequal to

⋃mi=1 Si. It is well known that set

cover and hitting set are equivalent prob-lems in the sense that each is obtainedfrom the other by switching the roles ofsets and elements. In set cover terms, theapproximation ratio obtained by the abovealgorithm is the maximum degree of anelement, where the degree of an elementis the number of sets containing it as amember.

4.2. Feedback Vertex Set in Tournaments

A tournament is an orientation of a com-plete (undirected) graph, that is, it is a di-rected graph with the property that, for ev-ery unordered pair of distinct nodes {u, v},it either contains the arc (u, v), or the arc(v, u), but not both. The feedback vertexset in tournaments problem is the follow-ing. Given a tournament and a weightfunction w on its nodes, find a minimum-weight set of nodes whose removalleaves a graph containing no directedcycles.

An immediate observation, expressed inthe following lemma, is that we may re-strict our attention to cycles of length 3.(Note that the smallest possible cyclelength in a tournament is 3.) We refer tothe set of (three) nodes on a directed cy-cle of length 3 as a triangle. We say that atriangle is positive, if all of its nodes havestrictly positive weights.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 13: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

434 R. Bar-Yehuda et al.

LEMMA 1. A tournament contains a di-rected cycle, if and only if it contains atriangle.

PROOF. The existence of a triangle im-plies the existence of a directed cycle, bydefinition. The existence of a directed cy-cle implies the existence of a triangle, bythe following argument. Suppose the mini-mum length of a directed cycle in the tour-nament is k ≥ 3. If k = 3, we are done.Otherwise, the tournament contains somedirected cycle v1, v2, v3, . . . , vk , v1. If thetournament contains the arc (v3, v1), thenit contains the directed cycle v1, v2, v3, v1of length 3. Otherwise, it contains the arc(v1, v3) and, therefore, it contains the di-rected cycle v3, . . . , vk , v1, v3 of length k−1.In either case, we reach a contradictionwith the minimality of k.

Lemma 3 implies that the set of allzero-cost nodes is an optimal solution(of zero cost), if and only if the tour-nament contains no positive triangles.Thus, we obtain a 3-approximation algo-rithm by means of the following fully 3-effective weight function. Let {v1, v2, v3}be a positive triangle, and let ε =min{w(v1), w(v2), w(v3)}. Define:

w1(v) ={

ε v ∈ {v1, v2, v3},0 otherwise.

The maximum cost, with respect to w1,of a feasible solution is clearly at most3ε, while the minimum cost is at least ε,since every feasible solution must containat least one of v1, v2, v3.

Cai et al. [2001] describe a 2.5-approximation algorithm. They presentan algorithm that finds an optimal solu-tion in any tournament T that does notcontain forbidden subtournaments, thatis subtournaments of the forms shown inFigure 1 (where the two arcs not shown inT1 may take any direction). They use thisalgorithm to obtain a 2.5-approximationalgorithm for the general case, employ-ing the following fully 2.5-effective weightfunction. Let F be a subset of five positive-weight vertices inducing a forbidden sub-tournament, and let ε = min{w(v) |

Fig. 1. Forbidden subtournaments.

v ∈ F }. Define:

w1(v) ={

ε v ∈ F,0 otherwise.

This function is fully 2.5-effective since thecost of every feasible solution is clearlyat most 5ε, while the minimum cost isat least 2ε (as every four vertices in Fcontain a triangle). At the basis of therecursion—the case where every forbid-den subtournament in T contains at leastone zero-weight vertex—an optimal solu-tion is found by removing the set Z ofall zero-weight vertices (thereby eliminat-ing all forbidden subtournaments), solv-ing the problem optimally on the remain-ing graph, and adding Z to the solutionfound.

4.3. Background

Hitting set. For the unweighted hittingset (or equivalently set cover) problem,Johnson [1974] and Lovasz [1975] showthat the greedy algorithm is an Hdmax -approximation algorithm, where dmax isthe maximum degree of an element.Chvatal [1979] generalizes this resultto the weighted case. His analysis hasa dual fitting interpretation (see Jainet al. [2002]). Hochbaum [1982] givestwo smax-approximation algorithms, bothof which are based on solving a linearprogram. Bar-Yehuda and Even [1981]suggest a linear time primal-dual smax-approximation algorithm. In subsequentwork [Bar-Yehuda and Even 1985], theypresent the Local Ratio Theorem and pro-vide a local ratio analysis of the same al-gorithm. (Their analysis is the one given

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 14: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 435

in this section.) Feige [1996] proves alower bound of (1 − o(1)) ln m (unlessNP⊆DTIME(nO(log log n))).

Feedback vertex set in tournaments. The2.5-approximation algorithm for feedbackvertex set in tournaments discussed in thissection is due to Cai et al. [2001].

5. MINIMAL SOLUTIONS

In the previous section, we introduced theidea of weight decomposition as a means ofgoing beyond localized payments, but theexamples we gave of its use did not, in fact,depart from that paradigm. All we did wastranslate the “payment” arguments intoweight decomposition language. In eachcase, we identified a small subset of el-ements such that every feasible solutionhad to contain at least one of them, and byassociating a weight of ε with each of theseelements and a weight of zero with all oth-ers, we were able to obtain an approxi-mation ratio bounded by the size of thesubset. There are many problems, though,where identifying such a small subset isimpossible, simply because no such subsetnecessarily exists.

A case in point is the partial hitting setproblem. This problem is similar to hittingset except that not all sets need to be hit.More specifically, the input consists of acollection of sets, a weight function on thesets’ elements, and a number k. The ob-jective is to find a minimum-cost subset ofelements that hits at least k of the sets.The crucial difference between hitting setand partial hitting set is that in the latter,there is no single set that must be hit byall feasible solutions. Recall that the algo-rithm for hitting set picked some set Si,and associated a weight of ε with each ofits elements. The analysis was based onthe fact that ε · |Si| is an upper bound onthe cost of every feasible solution, whileε is a lower bound since Si must be hit.This approach fails for partial hitting setbecause ε is no longer a lower bound—anoptimal solution need not necessarily hitSi. Thus, if we use the above weight func-tion, we will end up with a solution whoseweight with respect to w1 is positive, whilethe optimum value may be equal to 0.

Our method of handling such situationsis a logical extension of the same upper-bound/lower-bound idea. Roughly speak-ing, we do not know of any single sub-set that must contribute to all solutions,but the set of all elements must surelydo so (otherwise, the empty set is feasi-ble and optimal). Thus, to prevent OPTfrom being equal to 0, we can assign a pos-itive weight to every element. This takescare of the lower bound, but opens up thequestion of how to obtain a nontrivial up-per bound—clearly, it is almost never thecase that the cost of every feasible solu-tion is within some reasonable factor ofthe cost of a single element. It turns outthat the simple idea of considering onlyminimal solutions works well in many sit-uations. By minimal solution we mean afeasible solution that is minimal with re-spect to set inclusion, that is, a feasiblesolution whose proper subsets are all in-feasible. Minimal solutions are meaning-ful mainly in the context of covering prob-lems. (In our context, covering problemsare problems for which feasible solutionsare monotone inclusion-wise, that is, if aset X is a feasible solution, then so is ev-ery superset of X . For example, adding avertex to a vertex cover yields a vertexcover, so vertex cover is a covering prob-lem. In contrast, adding an edge to a span-ning tree does not yield a tree, so minimumspanning tree is not a covering problem.)The idea of focusing on minimal solutionsleads to the following definition, which isan adaptation of Definition 1 to minimalsolutions.

Definition 1. Given a set of constraintsC on vectors in R

n and a number r ≥ 1,a weight vector w ∈ R

n is said to ber-effective, if there exists a number b suchthat b ≤ w·x ≤ r ·b for all minimal feasiblesolutions x.

If we can show that our algorithm usesan r-effective w1 and returns minimal so-lutions, we will have essentially provedthat it is an r-approximation algorithm.Designing an algorithm to return minimalsolutions is quite easy. Most of the creativeeffort is therefore expended in finding anr-effective weight function (for a small r).

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 15: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

436 R. Bar-Yehuda et al.

In this section, we present local ratio al-gorithms for the problems of partial hit-ting set network design, and feedback ver-tex set algorithms that depend on obtain-ing minimal solutions. We describe andanalyze the first of these algorithms in fulldetail. We then outline the general frame-work of local ratio algorithms obtainingminimal solutions, and discuss the sub-sequent algorithms informally with refer-ence to this framework.

5.1. Partial Hitting Set

In the partial hitting set problem, the in-put consists of a collection of nonemptysets C = {S1, . . . , Sm}, a weight functionw on the sets’ elements U = ⋃m

i=1 Si, anda number k. The objective is to find aminimum-cost subset of U that hits atleast k sets in C. We assume that a fea-sible solution exists, that is, k ≤ m.

The partial hitting set problem general-izes hitting set, and as we have remarkedin Section 4.1, hitting set and set coverare equivalent problems. For this reason,the partial hitting set problem is often de-scribed in the literature in set cover termsand is referred to as partial covering. Weprefer the partial hitting set formulationhere in order to highlight the similaritiesand differences between our treatment ofthis problem and the hitting set problem.

Given an instance of partial hitting set,let S(x) = {Si ∈ C | x ∈ Si} for x ∈ U .Define the degree of an element x ∈ U asd (x) = |S(x)|. We present a max{smax, 2}-approximation algorithm. (Recall the def-inition smax = max1≤i≤m |Si|.)Algorithm PHS(CC, w, k).

1. If k ≤ 0, return ∅.2. Else, if there exists an element x ∈ U such that w(x) = 0 do:3. H ′ ← PHS(CC \ SS(x), w, k − d(x)).4. If H ′ hits at least k sets in C:5. Return the solution H = H ′.6. Else:7. Return the solution H = H ′ ∪ {x}.8. Else:9. Let ε be maximal such that ε · min{d (x), k} ≤ w(x)

for all x ∈ U .10. Define the weight functions w1(x) = ε · min{d (x), k},

and w2 = w − w1.11. Return PHS(CC, w2, k).

Note the slight abuse of notation inLine 3. The weight function in the recur-sive call is not w itself, but rather the re-striction of w to

⋃(C \ S(x)). We will con-

tinue to silently abuse notation in thismanner.

Let us analyze the algorithm. We claimthat the algorithm finds a minimal so-lution that is max{smax, 2}-approximate.Intuitively, Lines 2–7 ensure that thesolution returned is minimal, while theweight decomposition in Lines 8–11 en-sures that every minimal solution ismax{smax, 2}-approximate. This is done byassociating with each element x a weightthat is proportional to its “covering power,”which is the number of sets it hits, but notmore than k, since hitting more than k setsis no better than hitting k sets.

PROPOSITION 4. Algorithm PHS re-turns a feasible minimal solution.

PROOF. The proof is by induction on therecursion. At the recursion basis, the so-lution returned is the empty set, which isboth feasible (since k ≤ 0) and minimal.For the inductive step, k > 0 and thereare two cases to consider. If Lines 9–11are executed, then the solution returnedis feasible and minimal by the inductivehypothesis. Otherwise, Lines 3–7 are ex-ecuted. By the inductive hypothesis H ′ isminimal and feasible with respect to (C \S(x), k−d (x)). If H ′ = ∅, then d (x) ≥ k andH = H ′ ∪ {x} is clearly feasible and min-imal. Otherwise, H ′ hits at least k − d (x)sets in C that do not contain x, and by min-imality, for all y ∈ H ′, the set H ′ \ { y} hitsless than k − d (x) sets that do not contain

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 16: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 437

x. (Note that H ′ = ∅ implies k > d (x).)Consider the solution H. Either H = H ′,which is the case if H ′ hits at least k ormore sets in C, or else H = H ′ ∪ {x}, inwhich case H hits at least k−d (x) sets thatdo not contain x and additional d (x) setsthat do contain x. In either case, H hitsat least k sets and is therefore feasible. Itis also minimal (in either case), since forall y ∈ H, if y = x, then H \ { y} hits lessthan k − d (x) sets that do not contain xand at most d (x) sets that do contain x,for a total of less than k sets, and if y = x,then x ∈ H, which implies H = H ′ ∪ {x},which is only possible if H \ { y} = H ′ hitsless than k sets.

PROPOSITION 5. The weight function w1used in Algorithm PHS is max{smax, 2}-effective.

PROOF. In terms of w1, every feasiblesolution costs at least ε · k, since it ei-ther contains an element whose cost isε · k, or else consists solely of elementswith degree less than k, in which casethe cost of the solution equals ε times thetotal degree of elements in the solution,which must be at least k in order to hitk sets. To prove that every minimal solu-tion costs at most ε · k · max{smax, 2}, con-sider a nonempty minimal feasible solu-tion H. If H is a singleton, its cost is atmost ε · k, and the claim follows. Other-wise, we prove the claim by showing that∑

x∈H d (x) ≤ k · max{smax, 2}. We say thatset Si is hit r times by H, if |Si ∩ H| = r.We bound the total number of times setsare hit by H, since this number is equalto

∑x∈H d (x). Clearly every set Si may be

hit at most |Si| ≤ smax times. Thus, if t isthe number of sets that are hit by H twiceor more, these sets contribute at mostt · smax to the count. The sets that are hitonly once contribute exactly

∑x∈H d ′(x),

where d ′(x) is the number of sets hit byx, but not by any other member of H. Letx∗ = arg min

{d ′(x) | x ∈ H

}. Then (by the

choice of x∗ and the fact that H is not asingleton) d ′(x∗) ≤ ∑

x∈H\{x∗} d ′(x). In ad-dition, t + ∑

x∈H\{x∗} d ′(x) < k by the mini-mality of H. Thus the sets that are hit onlyonce contribute d ′(x∗) + ∑

x∈H\{x∗} d ′(x) ≤

2∑

x∈H\{x∗} d ′(x) < 2(k − t), and the to-tal is less than t · smax + 2(k − t) ≤ k ·max{smax, 2}.

THEOREM 6. Algorithm PHS returnsmax{smax, 2}-approximate solutions.

PROOF. The proof is by induction onthe recursion. In the base case, the so-lution returned is the empty set, whichis optimal. For the inductive step, ifLines 3–7 are executed, then H ′ ismax{smax, 2}-approximate with respect to(C \ S(x), w, k − d (x)) by the inductivehypothesis. Since w(x) = 0, the cost ofH equals that of H ′, and the optimumvalue for (C, w, k) cannot be smaller thanthe optimum value for (C \ S(x), w, k −d (x)) because, if H∗ is an optimal solu-tion for (C, w, k), then H∗ \ {x} is a fea-sible solution of the same cost for (C \S(x), w, k − d (x)). If, on the other hand,Lines 9–11 are executed, then by the in-ductive hypothesis, the solution returnedis max{smax, 2}-approximate with respectto w2, and by Proposition 5 it is alsomax{smax, 2}-approximate with respect tow1. Thus, by the Local Ratio Theorem, itis max{smax, 2}-approximate with respectto w as well.

5.2. A Framework

The general structure of a local ratio al-gorithm obtaining minimal solutions con-sists of a three-way if condition that di-rects execution to one of the followingthree options: optimal solution, problemsize reduction, and weight decomposition.The top-level description of the algorithmis:

(1) If a zero-cost minimal solution can befound, do: optimal solution.

(2) Otherwise, if the problem containsa zero-cost element, do: problem sizereduction.

(3) Otherwise, do: weight decomposition.

The three types of steps are:

Optimal solution. Find a zero-cost min-imal solution and return it. (Typically, thesolution will simply be the empty set.) Thisis the recursion basis.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 17: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

438 R. Bar-Yehuda et al.

Problem size reduction. This option con-sists of three steps.

(1) Reduce the problem size by deletinga zero-cost element. This changes theproblem instance, and may entail fur-ther changes (to achieve consistencywith the idea that the element has po-tentially been taken to the solution).For example, in the partial hitting setproblem we select a zero-cost elementand delete all sets containing it and re-duce the hitting requirement param-eter k by the number of these sets.Sometimes the problem instance mustbe adjusted more radically to reflectthe deletion of the element. For exam-ple, a graph edge might be eliminatedby contracting it. As a result, two ver-tices get “fused” together and the edgesincident on them undergo changes andpossibly fusions. In other words, themodification consists of eliminatingsome existing elements and introduc-ing new ones. This, in turn, requiresthat the weight function be extended tocover the new elements. It is importantto realize, though, that the adjustmentof the weight function amounts to a re-interpretation of the existing weightsin terms of the new instance, and notto an actual change of weights.

(2) Solve the problem recursively on thenew instance.

(3) If the solution returned (when re-interpreted in terms of the original in-stance) is feasible (for the original in-stance), return it. Otherwise, extendit by adding the deleted zero-cost el-ement, and return this solution.

Weight decomposition. Find anr-effective weight function w1 suchthat w − w1 is nonnegative, and solvethe problem recursively using w − w1 asthe weight function in the recursive call.Return the solution obtained.

The preceding formulation of thegeneric algorithm should not be taken tooliterally. Each branch of the three-wayif statement may actually consist ofseveral subcases, only one of which is tobe executed. For example, Line 2 might

hypothetically represent something like:If there is a vertex of degree less than 2,take appropriate action. Otherwise, if thereis a zero-weight vertex, take appropriateaction. In both cases, appropriate actionwould fall in the category of problem sizereduction. We shall see examples of thisin the sequel.

The analysis of an algorithm in theframework described follows the patternof our analysis for partial hitting set. Itconsists of proving the following threeclaims.

(1) The algorithm returns a minimal fea-sible solution.

(2) The weight function w1 is r-effective.(3) The algorithm returns an r-approx-

imate solution.

The proof of the first claim is by induc-tion on the recursion. In the base case,the solution is feasible and minimal bydesign. For the inductive step, if the al-gorithm performs weight decomposition,then the solution is feasible and mini-mal by the inductive hypothesis. If the al-gorithm performs problem size reduction,the claim follows intuitively from the factthat the solution returned by the recursivecall is feasible and minimal with respectto the modified instance (by the induc-tive hypothesis), and it is extended onlyif it is infeasible with respect to the orig-inal instance. Although the argument isstraightforward, the details of a rigorousproof tend to be slightly messy, as theydepend heavily on the precise manner inwhich the instance is modified.

The proof of the second claim followsfrom the combinatorial structure of theproblem. There is no fixed pattern here.Indeed, the key to the design of a local ra-tio algorithm is understanding the com-binatorial properties of the problem un-der study and finding the right r and anr-effective weight function.

The proof of the third claim is also byinduction on the recursion, based on thefirst two claims. In the optimal solutioncase, it is true by design. In the prob-lem size reduction case, the solution foundrecursively for the modified instance is

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 18: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 439

r-approximate by the inductive hypothe-sis, and it has the same cost as the so-lution generated for the original instancesince the two solutions may only differ by azero-weight element. This, combined withthe fact that OPT can only decrease as aresult of the instance modification, yieldsthe claim. (Again, the details of a rigorousproof tend to be somewhat messy.) In theweight decomposition case, the claim fol-lows by the inductive hypothesis and theLocal Ratio Theorem, based on the factthat the solution is feasible and minimal,and that w1 is r-effective.

In the next two sections we describe al-gorithms for the network design and feed-back vertex set problems in the context ofthis framework.

5.3. Network Design

The network design problem is defined asfollows. Given an edge weighted graphG = (V , E) and a demand function f :2V → N, find a minimum weight set ofedges F that for all S ⊆ V , contains atleast f (S) edges from δ(S), where δ(S) isthe set of edges in the cut defined by S(i.e., edges with exactly one endpoint inS). We assume f (V ) = f (∅) = 0, for oth-erwise no solution exists. Furthermore, weassume the existence of a polynomial-timeoracle that provides f (S) when given asubset S. We make this assumption be-cause the number of subsets S ⊆ V isexponential, and enumerating f (S) forall of them in the input would be unrea-sonable. Finally, to simplify the exposi-tion, we generalize the problem and al-low G to be a multi-graph, that is, G maycontain multiple edges between pairs ofvertices.

Many familiar problems can be formu-lated as network design problems with 0-1demand functions, that is, demand func-tions with range {0, 1}. For example, inthe shortest path problem f (S) = 1, if|S ∩ {s, t}| = 1, and f (S) = 0 otherwise;in the minimum spanning tree problem,f (S) = 1, if ∅ = S ⊆ V , and f (S) = 0otherwise; and in the Steiner tree problem,f (S) = 1, if ∅ = S ⊆ T , and f (S) = 0 oth-

erwise. The Steiner tree problem is: givena graph G = (V , E) and a set of termi-nals T ⊆ V , find a minimum weight setof edges that induces a connected sub-graph containing all terminals (and pos-sibly other vertices as well). The key prop-erty of 0-1 demand functions is that everyminimal solution induces a forest, for if afeasible solution contains a cycle, remov-ing a single edge from this cycle cannot de-stroy the solution’s feasibility. (Of course,multiple edges are redundant, too.)

In our treatment of the problem, we re-strict our attention to 0-1 demand func-tions. We further restrict our attentionto two families of 0-1 demand functionsfor which deciding whether a given setof edges constitutes a feasible solution iseasy. Specifically, we consider 0-1 properfunctions, and 0-1 downwards monotonefunctions.

0-1 proper functions. A 0-1 demandfunction f is proper if it satisfies twoconditions.

Symmetry. f (S) = f (V \ S) for allS ⊆ V .

Maximality. For all pairs of disjoint setsA and B, if f (A) = f (B) = 0, then f (A ∪B) = 0.

Note that the examples given here for ap-plications of 0-1 functions are actually ap-plications of 0-1 proper functions.

0-1 downwards monotone functions. A 0-1 demand function f is downwards mono-tone if f (S) = 1 implies f (S′) = 1 for allnonempty S′ ⊆ S. Notice that a down-wards monotone function satisfies maxi-mality, but not necessarily symmetry.

Downwards monotone functions can beused to model several familiar problems.For example, the edge covering problemis that of selecting a minimum weightset of edges spanning the entire vertexset. This problem (which is polynomialtime solvable [Grotschel et al. 1988]) canbe modeled by: f (S) = 1, if and only if|S| = 1, which is downwards monotone.Another example is the lower capacitatedtree partitioning problem. Here we mustfind a minimum weight set of edges F suchthat (V , F ) is a forest in which each tree

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 19: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

440 R. Bar-Yehuda et al.

contains at least k vertices, for some pa-rameter k. This problem can be modeledby: f (S) = 1, if and only if 0 < |S| < k,which again is downwards monotone.

Notice that if a 0-1 demand function fis proper or downwards monotone, we cancheck efficiently whether an edge set F isfeasible by checking if f (C) = 0 for ev-ery connected component C of (V , F ). Iff (C) = 1 for some component C, then Fis clearly infeasible. Otherwise, F is fea-sible since every S ⊆ V that is a unionof components obeys f (S) = 0 by max-imality, and every S that is not a unionof components is satisfied by some edgein F .

5.3.1. The Algorithm. We now present a2-approximation algorithm. We begin withsome definitions and an observation, andthen describe and analyze the algorithm.

Definitions.

(1) The vertices v such that f ({v}) = 1 arecalled terminals.

(2) We denote by τ (e) the number of end-points of edge e that are terminals.(Thus, τ (e) ∈ {0, 1, 2} for all e.)

(3) In the course of its execution, the algo-rithm modifies the graph by perform-ing edge contractions. Contracting anedge consists in “fusing” its two end-points u and v into a single (new) ver-tex z. The edge (or multiple edges) con-necting u and v are deleted, and everyother edge incident on u or v becomesincident on z instead. In addition, thedemand function f is replaced with anew demand function f ′, defined by

f ′(S) ={

f ((S \ z) ∪ {u, v}) z ∈ S,f (S) z ∈ S.

Clearly, if f is 0-1 proper or down-wards monotone, then so is f ′.

OBSERVATION 7. Let I be an instance ofthe problem, and let I ′ be the problem in-stance obtained from it by contracting asingle edge e. Then:

(1) The optimum value for I is not lessthan the optimum value for I ′.

(2) If F ′ is a minimal feasible solution forI ′, then either F ′ is minimal feasiblefor I , or else it is infeasible for I , butF ′ ∪ {e} is minimal feasible for I .

The algorithm follows.

Algorithm ND(G, w, f).1. If G contains no terminals, return ∅.2. Else, if there exists an edge e such that

w(e) = 0 do:3. Let (G ′, w′, f ′) be the instance

obtained by contracting e.4. F ′ ← ND(G ′, w′, f ′).5. If F ′ is a feasible solution with

respect to G:6. Return the solution F = F ′.7. Else:8. Return the solution F = F ′ ∪ {e}.9. Else:

10. Let ε = min{w(e)/τ (e) | τ (e) ≥ 1}.11. Define the weight functions

w1(e) = ε · τ (e) and w2 = w − w1.12. Return ND(G, w2, f ).

In terms of our framework, Line 1 imple-ments the optimal solution case (correct-ness follows from the maximality propertyof f ), Lines 2–8 implement the problemsize reduction case (correctness followsfrom Observation 5.3.1), and Lines 9–12 implement the weight decompositioncase.

We claim that the solution returned bythe algorithm is 2-approximate, and toprove this we only need to show that w1is 2-effective.

LEMMA 8. Let F be a minimal feasiblesolution. Then every tree in the forest in-duced by F contains at most one nonter-minal leaf (and all other leaves are termi-nals).

PROOF. We first consider the case thatf is 0-1 proper. Suppose there exists someleaf v that is not a terminal. Let Tv be thetree containing v. Let F ′ be the set of edgesobtained from F by removing the edge in-cident on v. Since F is minimal, F ′ is in-feasible. Thus there exists ∅ = S ⊆ V suchthat f (S) = 1 and δ(S) ∩ F ′ = ∅. By sym-metry, we can assume v ∈ S without loss of

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 20: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 441

generality. The fact that δ(S) ∩ F ′ = ∅ im-plies that S is a union of trees in the forestinduced by F ′ (we consider trees to be setsof vertices). The trees in this forest are ex-actly the trees in the forest induced by F ,except that Tv is split into two trees {v} andTv \{v}. Since F is feasible, every tree T inthe forest induced by it satisfies f (T ) = 0,and by maximality, so does the union ofany number of them. Thus, f (S ∩ Tv) =1, for otherwise maximality would implyf (S) = 0. We know that S is a unionof trees in the forest induced by F ′, and∅ = S ∩ Tv = Tv since f (S ∩ Tv) = 1. Thus,either S∩Tv = Tv \{v}, or S∩Tv = {v}. Thelatter is impossible since v is not a termi-nal, so S∩Tv = Tv\{v}. But this contradictsour assumption that v ∈ S. Thus in thecase of 0-1 proper functions, all leaves areterminals.

Now consider the case that f is 0-1downwards monotone. Again, supposesome leaf v is a nonterminal. The proofproceeds as before, except that this timewe cannot assume v ∈ S (since symme-try does not necessarily hold). Thus in thefinal step of the proof, we conclude thatS ∩ Tv = Tv \ {v}, and there is no contra-diction. Hence, f (Tv \ {v}) = 1, which im-plies (by downwards monotonicity) that allvertices in Tv, except for v, are terminals.We remark that the proof can be extendedquite easily to show that, in fact, if a treecontains any nonterminal (not necessarilya leaf), then all other vertices in the treeare terminals.

The proof that w1 is 2-effective followsfrom Lemma 8. Consider a minimal fea-sible solution F . We claim that ε|Vt | ≤w1(F ) ≤ 2ε|Vt |, where Vt denotes the setof terminals. To show this, we prove theequivalent claim |Vt | ≤ ∑

e∈F τ (e) ≤ 2|Vt |.For the first inequality, observe that thefeasibility of F implies that every termi-nal must be adjacent to at least one ofthe edges in F , and thus

∑e∈F τ (e) ≥ |Vt |.

Turning to the second inequality, let VFbe the set of vertices in the forest in-duced by F , let degF (v) denote the de-gree of vertex v in the forest, and letk be the number of trees in the forest.

Then,

∑e∈F

τ (e) =∑v∈Vt

degF (v)

=∑v∈VF

degF (v) −∑

v∈VF \Vt

degF (v)

= 2(|VF | − k) −∑

v∈VF \Vt

degF (v).

By Lemma 8, all but one of the nontermi-nals in a given tree are not leaves, so eachhas degree at least 2 in the forest. Thus,

∑v∈VF \Vt

degF (v) ≥ 2|VF \ Vt | − k

= 2|VF | − 2|Vt | − k,

and thus∑

e∈F τ (e) ≤ 2|Vt | − k ≤ 2|Vt |.In a slightly more refined analysis, we

can take into account the −k term in thelast inequality and see that w1 is actu-ally (2 − 1/|Vt |)-effective (since k ≥ 1).Furthermore, if f is 0-1 proper, then allleaves are terminals, and we can replacethe −k by −2k, so in this case, w1 iseven (2 − 2/|Vt |)-effective. (Note that Vtdecreases as the recursion proceeds toever deeper levels, so in the above expres-sions, we must understand |Vt | to repre-sent the number of terminals in the initialgraph.)

In particular, the ratio is 1 for short-est path, since this problem is modeled bya 0-1 proper function, and |Vt | = 2. Infact, Algorithm ND can be viewed as arecursive implementation of a variant ofDijkstra’s algorithm using bi-directionalsearch (see Nicholson [1966]). Also, inthe case of minimum spanning tree, w1is really 1-effective, since every min-imal solution costs exactly 2ε(n − 1).For this problem, Algorithm ND can beseen as a recursive implementation ofKruskal’s [1956] minimum spanning treealgorithm.

5.4. Feedback Vertex Set

A set of vertices in an undirected graphis called a feedback vertex set (FVS, for

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 21: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

442 R. Bar-Yehuda et al.

short) if its removal leaves an acyclicgraph (i.e., a forest). Another way of sayingthis is that the set intersects all cycles inthe graph. The feedback vertex set problemis: given a vertex-weighted graph, find aminimum-weight FVS. In this section, wedescribe and analyze a 2-approximationalgorithm for the problem following ourminimal-solutions framework.

The algorithm is as follows.

Algorithm FVS(G, w).1. If G is empty, return ∅.2. If there exists a vertex v ∈ V such that

deg(v) ≤ 1 do:3. return FVS(G \ {v}, w).4. Else, if there exists a vertex v ∈ V such

that w(v) = 0 do:5. F ′ ← FVS(G \ {v}, w).6. If F ′ is an FVS with respect to G:7. Return F ′.8. Else:9. Return F = F ′ ∪ {v}.

10. Else:11. Let ε = minv∈V

w(v)deg(v) .

12. Define the weight functionsw1(v) = ε · deg(v)

and w2 = w − w1.13. Return FVS(G, w2)

The analysis follows the pattern out-lined above—the only interesting partis showing that w1 is 2-effective. Sincew1(F ) = ε · ∑

v∈F deg(v) for any FVS F , itis sufficient to demonstrate the existenceof a number b such that for all minimalsolutions F , b ≤ ∑

v∈F deg(v) ≤ 2b. Notethat the weight decomposition is only ap-plied to graphs in which all vertices havedegree of at least 2. We shall henceforthassume that our graph G = (V , E) is sucha graph.

Consider a feasible solution F . Thereis a clear connection between

∑v∈F deg(v)

and the number of edges deleted by re-moving F from the graph, so it makessense to reason about these edges. Con-sider the graph obtained by removing Ffrom G. This graph is a forest on |V | − |F |nodes, and it therefore contains precisely|V |− |F |−k edges, where k is the numberof its connected components (trees). Thenumber of edges deleted by the removal of

F is thus |E|−|V |+|F |+k > |E|−|V |+|F |,and since each of these edges contributesto the degree of some vertex in F , we getthe following lower bound: |E|−|V |+|F | <∑

v∈F deg(v).Let us fix some feasible solution F ∗ that

minimizes |E| − |V | + |F ∗|, that is, letF ∗ be a minimum cardinality FVS. Weclaim that all minimal solutions F sat-isfy |E| − |V | + |F ∗| <

∑v∈F deg(v) ≤

2(|E| − |V | + |F ∗|), which proves that w1is 2-effective. Let F be a minimal solu-tion. The first inequality follows imme-diately from the previous discussion andour choice of F ∗. The second inequality,however, is not immediate, and to proveit we must first explore the structureof G.

Consider a vertex v ∈ F . The minimal-ity of F implies that there exists at leastone cycle in G such that v is the only ver-tex in F contained in this cycle. Denotethis cycle by Cv (if more than one such cy-cle exist, choose one arbitrarily), and let Pvbe the path obtained by removing v fromCv. Let P = {Pv | v ∈ F }. Now consider theconnected components of the graph G ′ ob-tained by removing F from G. Some ofthese connected components contain ver-tices from the paths P. We refer to themas vpath-components. Let V1 be the set ofvertices in the vpath-components, and letV2 be the remaining vertices in G ′. Theoriginal graph G is partitioned into threeparts, as illustrated in Figure 2. (AlthoughF and V2 are each drawn in the figure as asingle oval, the subgraphs they induce arenot necessarily connected.) Observe thatthere are no edges between V1 and V2 sincesuch edges would appear in G ′, but V1 isa union of connected components in G ′.Let n1 = |V1|, and n2 = |V2|. Let m1 bethe number of edges in G that are inci-dent on vertices in V1 (i.e., edges betweenvertices in V1 and edges connecting ver-tices in V1 with vertices in F ). Similarly,let m2 be the number of edges in G thatare incident on vertices in V2. Let m′

1 bethe number of edges connecting verticesin F with vertices in V1, and let m′

2 bethe number of edges connecting verticesin F with vertices in V2. Let mF be the

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 22: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 443

Fig. 2. Partition of G.

number of edges in the subgraph inducedby F . Finally, let κ be the number of vpath-components.

With this notation in place, we are readyto bound

∑v∈F deg(v). First, note that

|V | = n1+n2+|F |, and |E| = m1+m2+mF .Also,

∑v∈F

deg(v) = m′1 + m′

2 + 2mF .

To achieve the desired bound on∑v∈F deg(v), we bound m′

1, and m′2

and sum these bounds together with2mF . We will also need a bound on2|F |.

As we have already pointed out, the re-moval of F leaves a forest, and thus eachof the vpath-components is a tree. There-fore, the number of edges in the subgraphinduced by V1 is n1 − κ, and thereforem′

1 = m1 − n1 + κ. Let us bound κ. Con-sider a path Pv ∈ P. This path is obtainedby deleting v from the cycle Cv. By defini-tion, Cv contains exactly one vertex in F ,namely v, so Pv contains no vertices fromF , and therefore exists in the graph G ′. Itfollows that Pv is fully contained in exactlyone vpath-component. To bound the num-ber of vpath-components, observe that forall v ∈ F , the cycle Cv contains at least onevertex of F ∗ (since F ∗ is an FVS), so eitherv ∈ F ∗, in which case v ∈ F ∗∩F , or else Pvcontains a vertex of F ∗, in which case thisvertex belongs to F ∗ \ F . Thus each vpath-component either contains a path Pv suchthat v ∈ F ∗∩F , or else contains a vertex ofF ∗ \ F . Thus κ ≤ |F ∗ ∩ F |+|F ∗ \ F | = |F ∗|,

and hence

m′1 ≤ m1 − n1 + |F ∗|.

The last expression also bounds 2|F |, sinceevery vertex v ∈ F is connected by at leasttwo edges to vertices in V1 (the two edgesconnecting it to its neighbors in the cycleCv), and thus 2|F | ≤ m′

1, which implies

m1 − n1 + |F ∗| ≥ 2|F |.

To bound m′2, recall that the degree of ev-

ery vertex in the graph is at least 2. Thus2n2 ≤ ∑

u∈V2deg(u) = 2(m2 − m′

2) + m′2 =

2m2 − m′2, which implies

m′2 ≤ 2m2 − 2n2.

Putting the pieces together, we get∑v∈F

deg(v) = m′1 + m′

2 + 2mF

≤ m1 − n1 + |F ∗| + 2m2 − 2n2

+ 2mF

= 2(m1 + m2 + mF ) − 2n1 − 2n2

− (m1 − n1 + |F ∗|) + 2|F ∗|≤ 2|E| − 2n1 − 2n2 − 2|F |

+ 2|F ∗|= 2(|E| − |V | + |F ∗|).

Remark. In addition to the abovechoice of w1, the following two alterna-tive weight decompositions have been pro-posed in the literature, and both have beenshown to be 2-effective. The first is ob-tained by replacing Lines 11 and 12 of

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 23: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

444 R. Bar-Yehuda et al.

Algorithm FVS with the following:

If G contains a semi-disjoint cycle4 C:Let ε = minv∈C w(v).

Define the weight functions w1(v) ={

ε v ∈ C,0 otherwise,

and w2 = w − w1.

Else:Let ε = minv∈V w(v)/(deg(v) − 1).Define the weight functions w1(v)ε · (deg(v) − 1)and w2 = w − w1.

The second is obtained by:

Choose an endblock5 B, and let ε = minv∈B w(v)/(deg(v) − 1).

Define the weight functions w1(v) ={

ε · (deg(v) − 1) v ∈ B,0 otherwise,

and w2 = w − w1.

5.5. Background

Minimal solutions and feedback vertexset. The use of minimal solutions inthe local ratio setting appeared for thefirst time in the context of feedback ver-tex set [Bafna et al. 1999]. This problemis NP-hard [Karp 1972] and MAX SNP-hard [Lund and Yannakakis 1993], andat least as hard to approximate as ver-tex cover [Lewis and Yannakakis 1980].An approximation algorithm for the un-weighted case that achieves a perfor-mance ratio of 2 log2 n is essentially con-tained in a lemma due to Erdos andPosa [1962]. Monien and Shultz [1981] im-prove the ratio to

√log n. Bar-Yehudab

et al. [1998] give a 4-approximation al-gorithm for the unweighted case, and anO(log n)-approximation algorithm for theweighted case. Bafna et al. [1999] presenta local ratio 2-approximation algorithmfor the weighted case (using the first ofthe two alternative weight decompositionspresented above). Their algorithm is thefirst local ratio algorithm to make useof the concept of minimal solutions (al-though this concept was used earlier inprimal-dual algorithms [Ravi and Klein1993; Agrawal et al. 1995; Goemans andWilliamson 1995]). At about the same

4A cycle C is semidisjoint, if there exists a vertexx ∈ C such that deg(u) = 2 for every vertex u ∈ C\{x}.5An endblock is a biconnected component, containingat most one articulation point.

time, Becker and Geiger [1996] also ob-tained a 2-approximation algorithm forthe problem. Algorithm FVS is a recursiveformulation of their algorithm. Chudaket al. [1998] interpret the above two al-gorithms in primal-dual terms, and sug-gest a third algorithm, whose local ratiointerpretation is described by the secondalternative weight decomposition givenabove. Fujito [1998] proposes a generic lo-cal ratio algorithm for node-deletion prob-lems with nontrivial and hereditary graphproperties.6 Algorithm RecursiveVC, Al-gorithm FVS, and the algorithm of Bafnaet al. [1999] can be seen as instancesof Fujito’s generic algorithm. Bar-Yehuda[2000] presents a unified local ratio ap-proach for covering problems. His presen-tation contains a short generic approxi-mation algorithm that can explain manyknown exact optimization and approxi-mation algorithms for covering problems.Bar-Yehuda and Rawitz [2001] devise aframework that extends the generic algo-rithm from Bar-Yehuda [2000]. The notionof effectiveness of a weight function firstappeared in Bar-Yehuda [2000]. A similaridea appeared earlier in the primal-dualsetting [Bertsimas and Teo 1998].

6A graph property π is nontrivial if it is true for in-finitely many graphs, and false for infinitely manygraphs; it is hereditary if every subgraph of a graphsatisfying π also satisfies π .

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 24: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 445

Partial hitting set. The partial hittingset problem generalizes hitting set, andas we remarked in Section 4.1, hitting setand set cover are equivalent problems. Forthis reason, the partial hitting set problemis often described in the literature in setcover terms and is referred to as partialcovering. The problem was first studied byKearns [1990] in relation to learning. Heproves that the performance ratio of thegreedy algorithm is at most 2Hm + 3. (Re-call that Hm is the mth harmonic number.)Slavık [1997] shows that it is actuallybounded by Hk . The special case in whichthe cardinality of every set is exactly 2is called the partial vertex cover problem.This problem was studied by Bshoutyand Burroughs [1998], who obtained thefirst polynomial time 2-approximationalgorithm for it. The max{smax, 2}-approximation algorithm for partialhitting set given in this section (Algo-rithm PHS) is due to Bar-Yehuda [2001].In fact, his approach can be used to ap-proximate an extension of the partial hit-ting set problem in which there is a lengthli associated with each set Si, and the goalis to hit sets of total length at least k. (Theplain hitting set problem is the specialcase where li = 1 for all i.) Gandhi et al.[2001] present a multi-phase primal-dualalgorithm for partial hitting set achievinga performance ratio of max{smax, 2}.

Network design. As we have seen, Al-gorithm ND can be applied to problemsthat can be modeled by 0-1 down-wards monotone functions. These in-clude lower capacitated partitioning prob-lems [Goemans and Williamson 1995;Imielinska et al. 1993] and location de-sign problems [Laporte 1988; Laporteet al. 1983]. (For further discussion seeGoemans and Williamson [1997].) Algo-rithm ND has evolved from work on thegeneralized Steiner network problem (alsocalled the survival network design prob-lem), in which we are given a graph G =(V , E), edge costs, and a nonnegative in-teger rij, for each pair of vertices i andj . Our goal is to find a minimum weightsubset of edges E ′ ⊆ E such that thereare at least rij edge-disjoint paths betweeneach pair of vertices i, j ∈ V in the graph

(V , E ′). This problem can be modeled asa network design problem with the properfunction7 f (S) = maxi∈S, j ∈S rij. Note thatthe Steiner tree problem is a special caseof this problem, where rij = 1, if i andj are terminals, and rij = 0 otherwise.Agrawal et al. [1995] describe an approxi-mation algorithm for a variant of the gen-eralized Steiner network problem in whichan edge can be selected (and paid for)multiple times. The performance ratio oftheir algorithm is 2�log2(rmax + 1)�, wherermax = maxij rij. Goemans and Williamson[1995] present a primal-dual approxima-tion framework for network design prob-lems in which the demand function is 0-1proper. The approximation ratio of theirgeneric algorithm is 2 − 2

|Vt | . (In the caseof Steiner tree, their algorithm simulatesthe algorithm of Agrawal et al. [1995].) Al-gorithm ND is a local ratio version of thisalgorithm. Williamson, Goemans, Mihail,and Vazirani [1995] present the first ap-proximation algorithm for general properfunctions. Their algorithm finds a solu-tion within a factor of max{2 fmax − 1, 2}of the optimal, where fmax = maxS f (S).In addition to the primal-dual approach,their algorithm uses the idea of satis-fying f in “phases,” which was intro-duced by Ravi and Klein [1993] (in thecontext of a 3-approximation algorithmfor proper functions with range {0, 2}).Gabow et al. [1993] improve the efficiencyof this algorithm. Goemans et al. [1994]improve the ratio for the general caseto 2Hfmax . Jain [1998] considers weaklysuper-modular functions, that is, functionsf satisfying (1) f (V ) = 0, and (2) f (A) +f (B) ≤ max{ f (A \ B) + f (B \ A), f (A ∩B) + f (A ∪ B)} for all A, B ⊆ V . (Notethat proper functions are weakly super-modular.) He describes a 2-approximationalgorithm based on LP rounding.

6. MAXIMIZATION PROBLEMS ANDSCHEDULING APPLICATIONS

In this section, we describe applications ofthe local ratio technique in the context of

7A function that satisfies symmetry and maximalityis called proper.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 25: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

446 R. Bar-Yehuda et al.

maximization problems, focusing on prob-lems of resource allocation and schedul-ing. Our goal in this section is twofold.First, we develop a local ratio theory formaximization problems in general, andsecond, we demonstrate the technique’sapplicability in an important branch ofoptimization, namely, resource allocationand scheduling. Resource allocation andscheduling problems are immensely pop-ular objects of study in the field of approx-imation algorithms and combinatorial op-timization, because of their direct appli-cability to many real-life scenarios, andtheir richness in terms of mathematicalstructure. Historically, they were amongthe first to be analyzed in terms of worst-case approximation ratio, and researchinto these problems actively continues tothis day.

We begin by presenting a local ratiotheorem for maximization problems, andsketching a general framework based onit in Section 6.1. We apply this frameworkto a collection of scheduling maximizationproblems in Section 6.2. We briefly discussother kinds of scheduling problems inSection 6.3.

6.1. Local Ratio for Maximization Problems

The Local Ratio Theorem for maximiza-tion problems is very similar to its min-imization counterpart. It applies to opti-mization problems that can be formulatedas follows.

Given a weight vector w ∈ Rn and a set of feasi-

bility constraints C, find a solution vector x ∈ Rn

satisfying the constraints in C that maximizesthe scalar product w · x.

Before stating the Local Ratio Theoremfor maximization problems, we remind thereader that we call a feasible solution toa maximization problem r-approximate, ifits weight is at least 1/r times the opti-mum weight (hence approximation factorsare greater than or equal to 1).

THEOREM 9 (LOCAL RATIO—MAXIMIZATION

PROBLEMS). Let C be a set of feasibility con-straints on vectors in R

n. Let w, w1, w2 ∈R

n be such that w = w1 +w2. Let x ∈ Rn be

a feasible solution (with respect to C) that isr-approximate with respect to w1, and with

respect to w2. Then, x is r-approximatewith respect to w as well.

PROOF. Let x∗, x∗1, and x∗

2 be optimal so-lutions with respect to w, w1, and w2, re-spectively. Clearly, w1 · x∗

1 ≥ w1 · x∗, andw2 ·x∗

2 ≥ w2 ·x∗. Thus, w·x = w1 ·x + w2 ·x ≥1r (w1 · x∗

1) + 1r (w2 · x∗

2) ≥ 1r (w1 · x∗) + 1

r (w2 ·x∗) = 1

r (w · x∗).

The general structure of a local ratio ap-proximation algorithm for a maximizationproblem is similar to the one describedfor the minimization case in Section 5.2.It too consists of a three-way if conditionthat directs execution to one of three mainoptions: optimal solution, problem size re-duction, and weight decomposition. Thereare several differences though. In contrastto the minimization case, we make no ef-fort to keep the weight function nonnega-tive, that is, in weight decomposition steps,we allow w2 to take on negative values.Also, in problem size reduction steps, weusually remove an element whose weightis either zero, or negative. Finally andmost importantly, we strive to constructmaximal solutions rather than minimalones. This affects our choice of w1 in weightdecomposition steps. The weight functionw1 is chosen such that every maximal so-lution (a feasible solution that cannot beextended) is r-approximate with respect toit.8 Accordingly, when the recursive call re-turns in problem size reduction steps, weextend the solution if possible (rather thanif necessary), but we attempt to do so onlyfor zero-weight elements (and not for neg-ative weight ones).

As in the minimization case, we use thenotion of effectiveness.

Definition 3. In the context of maxi-mization problems, a weight function w issaid to be r-effective, if there exists a num-ber b such that b ≤ w · x ≤ r · b for allmaximal feasible solutions x.

6.2. Throughput Maximization Problems

Consider the following general problem.The input consists of a set of activities,

8We actually impose a somewhat weaker condition,as described in Section 6.2.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 26: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 447

each requiring the utilization of a givenlimited resource. The amount of resourceavailable is fixed over time; we normalizeit to unit size for convenience. The activ-ities are specified as a collection of setsA1, . . . , An. Each set represents a singleactivity: it consists of all possible instancesof that activity. An instance I ∈ Ai is de-fined by the following parameters.

(1) A half-open time interval [s(I ), e(I ))during which the activity will be ex-ecuted. We call s(I ) and e(I ) the start-time and the end-time of the instance.

(2) The amount of resource required forthe activity. We refer to this amount asthe width of the instance, and denoteit d (I ). Naturally, 0 < d (I ) ≤ 1.

(3) The weight w(I ) ≥ 0 of the instance.The weight represents the profit to begained by scheduling this instance ofthe activity.

Different instances of the same activitymay have different parameters of dura-tion, width or weight. A schedule is a col-lection of instances. It is feasible if (1) itcontains, at most, one instance of every ac-tivity, and (2) for all time instants t, the to-tal width of the instances in the schedulewhose time interval contains t does not ex-ceed 1 (the amount of resource available).The goal is to find a feasible schedule thatmaximizes the total weight of instances inthe schedule.

In the following sections, we describelocal ratio algorithms for several specialcases of the general problem. We use thefollowing notation. For a given activityinstance I , A(I ) denotes the activity towhich I belongs, and I(I ) denotes the setof all activity instances that intersect I ,but belong to activities other than A(I ).

6.2.1. Interval Scheduling. In the intervalscheduling problem we must schedule jobson a single processor with no preemption.Each job consists of a finite collection oftime intervals during which it may bescheduled. The problem is to select a max-imum weight subset of nonconflicting in-tervals, at most one interval for each job.

Fig. 3. J , A(J ), and I(J ):heavy lines represent A(J );dashed lines represent I(J ).

In terms of our general problem, this issimply the special case where every activ-ity consists of a finite number of instances,and the width of every instance is 1.

To design the weight decomposition forthis problem, we examine the propertiesof maximal schedules. Let J be the ac-tivity instance with minimum end-timeamong all activity instances of all activi-ties (breaking ties arbitrarily). Note thatthe choice of J ensures that all of the inter-vals intersecting it intersect each other atJ ’s right endpoint (see Figure 3). Considera maximal schedule S. Clearly S cannotcontain more than one instance fromA(J ),nor can it contain more than one instancefrom I(J ), since all of these instances in-tersect each other. Thus, S contains, atmost, two intervals from A(J ) ∪ I(J ). Onthe other hand,S must contain at least oneinstance from A(J )∪I(J ), for otherwise itwould not be maximal (since J could beadded to it). This implies that the weightfunction

w1(I ) = ε ·{

1 I ∈ A(J ) ∪ I(J ),0 otherwise,

is 2-effective for any choice of ε > 0, andwe can expect to obtain a 2-approximationalgorithm based on it.

A logical course of action is to fix ε =min{w(I ) | I ∈ A(J ) ∪ I(J )}, and to solvethe problem recursively on w − w1, rely-ing on two things: (1) w1 is 2-effective;and (2) the solution returned is maxi-mal. However, we prefer a slightly dif-ferent approach. We show that w1 actu-ally satisfies a stronger property than 2-effectiveness. For a given activity instanceI , we say that a feasible schedule is I-maximal if it either contains I , or it does

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 27: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

448 R. Bar-Yehuda et al.

not contain I , but adding I to it will ren-der it infeasible. Clearly, every maximalschedule is also I -maximal for any givenI , but the converse is not necessarily true.The stronger property satisfied by theabove w1 is that every J -maximal sched-ule is 2-approximate with respect to w1(for all ε > 0). To see this, observe that nooptimal schedule may contain more thantwo activity instances from A(J ) ∪ I(J ),while every J -maximal schedule mustcontain at least one (if it contains none,it cannot be J -maximal since J can beadded). The most natural choice of ε isε = w(J ).

Our algorithm for interval scheduling isbased on the above observations. The ini-tial call is IS(A, w), where A is the set ofjobs, that we also view as the set of all in-stances, that is, ∪m

i=1Ai.

Algorithm IS(AA, w).1. If A = ∅, return ∅.2. If there exists an instance I such that w(I ) ≤ 0 do:3. Return IS(A \ {I}, w).4. Else:5. Let J be the instance with minimum end-time in A.6. Define the weight functions

w1(I ) = w(J ) ·{

1 I ∈ A(J ) ∪ I(J ),0 otherwise, and w2 = w − w1.

7. S ′ ← IS(A, w2).8. If S ′ ∪ {J} is feasible:9. Return S = S ′ ∪ {J}.

10. Else:11. Return S = S ′.

As with similar previous claims,the proof that Algorithm IS is2-approximation is by induction onthe recursion. At the basis of the recur-sion (Line 1), the schedule returned isoptimal and hence 2-approximate. For theinductive step, there are two possibilities.If the recursive call is made in Line 3,then by the inductive hypothesis, theschedule returned is 2-approximate withrespect to (A \ {I}, w), and since theweight of I is nonpositive, the optimumfor (A, w) cannot be greater than the op-timum for (A \ {I}, w). Thus the schedulereturned is 2-approximate with respectto (A, w) as well. If the recursive scall

is made in Line 7, then by the inductivehypothesis, S ′ is 2-approximate withrespect to w2, and since w2(J ) = 0 andS ⊆ S′ ∪ {J}, it follows that S, too, is2-approximate with respect to w2. SinceS is J -maximal by construction (Lines 8–11), it is also 2-approximate with respectto w1. Thus, by the Local Ratio Theorem,it is 2-approximate with respect to w aswell.

6.2.2. Scheduling on Parallel Identical Ma-chines. In this problem, the resource con-sists of k parallel identical machines. Eachactivity instance may be assigned to anyof the k machines. Thus d (I ) = 1/k forall I .

In order to approximate this problem,we use Algorithm IS, but with a different

choice of w1, namely,

w1(I ) = w(J ) ·

1 I ∈ A(J ),1/k I ∈ I(J ),0 otherwise.

The analysis of the algorithm is simi-lar to the one used for the case k = 1(i.e., interval scheduling). It is sufficientto show that every J -maximal schedule is2-approximate with respect to w1. This isso because every J -maximal schedule ei-ther contains an instance from A(J ), or aset of instances intersecting J that pre-vent J from being added to the schedule.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 28: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 449

In the former case, the weight of the sched-ule with respect to w1 is at least w(J ). Inthe latter case, since k machines are avail-able but J cannot be added, the schedulemust already contain k activity instancesfrom I(J ), and its weight (with respect tow1) is therefore at least k · 1

k ·w(J ) = w(J ).Therefore, the weight of every J -maximalschedule is at least w(J ). On the otherhand, an optimal schedule may contains,at most, one instance from A(J ) and, atmost, k instances from I(J ) (as they allintersect each other), and thus its weightcannot exceed w(J ) + k · 1

k · w(J ) = 2w(J ).

Remark. Our algorithm only finds aset of activity instances that can be sched-uled, but does not construct an actual as-signment of instances to machines. Thiscan be done easily by scanning the in-stances (in the solution found by the al-gorithm) in increasing order of end-time,and assigning each to an arbitrary avail-able machine. It is easy to see that such amachine must always exist.

6.2.3. Bandwidth Allocation of Sessions inCommunication Networks. Consider a sce-nario in which the bandwidth of acommunication channel must be allocatedto sessions. Here the resource is the chan-nel’s bandwidth, and the activities are ses-sions to be routed through the channel. Asession is specified as a list of intervals inwhich it can be scheduled, together with abandwidth requirement and a weight foreach interval. The goal is to find the mostprofitable set of sessions that can utilizethe available bandwidth.

To approximate this problem, we firstconsider the following two special cases.

Special Case 1. All instances are wide,that is, d (I ) > 1/2 for all I .

Special Case 2. All activity instancesare narrow, that is, d (I ) ≤ 1/2 for all I .

In the case of wide instances, the prob-lem reduces to interval scheduling sinceno pair of intersecting instances may bescheduled together. Thus, we can use Algo-rithm IS to find a 2-approximate schedule.

In the case of narrow instances, we finda 3-approximate schedule by a variant of

Algorithm IS in which w1 is defined asfollows:

w1(I ) = w(J ) ·

1 I ∈ A(J ),2 · d (I ) I ∈ I(J ),0 otherwise.

To prove that the algorithm is a3-approximation, it is sufficient toshow that every J -maximal schedule is3-approximate with respect to w1. (Allother details are essentially the same asfor interval scheduling.) A J -maximalschedule either contains an instanceof A(J ), or contains a set of instancesintersecting J that prevent J from beingadded to the schedule. In the former case,the weight of the schedule is at leastw(J ). In the latter case, since J cannotbe added, the combined width of activityinstances from I(J ) in the schedule mustbe greater than 1 − d (J ) ≥ 1/2, and thustheir total weight (with respect to w1)must be greater than w(J ) · 2 · 1

2 = w(J ).And so, the weight of every J -maximalschedule is at least w(J ). On the otherhand, an optimal schedule may contain,at most, one instance from A(J ) and, atmost, a set of instances from I(J ) with to-tal width 1, and total weight 2w(J ). Thus,the optimum weight is, at most, 3w(J ),and therefore, every J -maximal scheduleis 3-approximate with respect to w1.

In order to approximate the problemin the general case where both narrowand wide activity instances are present,we solve it separately for the narrow in-stances and for the wide instances, andreturn the solution of greater weight. LetOPT be the optimum weight for all activityinstances, and let OPTn and OPTw be theoptimum weight for the narrow instanceand for the wide instances, respectively.Then, the weight of the schedule found isat least max{ 1

3 OPTn, 12 OPTw}. Now, either

OPTn ≥ 35 OPT, or else OPTw ≥ 2

5 OPT.In either case, the schedule returned is5-approximate.

6.2.4. Variations and Extensions. In addi-tion to the three problems we have just dis-cussed, there are several other scheduling

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 29: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

450 R. Bar-Yehuda et al.

problems that can be approximated by var-ious extensions and variations of Algo-rithm IS. We briefly mention these prob-lems here, without showing their solu-tions. Full details can be found in thepapers describing them.

Independent set in interval graphs[Bar-Noy et al. 2001a]. It is easy to see thatthe special case of interval scheduling inwhich each activity consists of a single in-stance is just a reformulation of the prob-lem of finding a maximum weight inde-pendent set in an interval graph. It turnsout that for this special case, Algorithm ISachieves an approximation ratio of 1, thatis, it solves the problem optimally. Algo-rithm IS is not the first to do so, however.See, for example Golumbic [1980].

Scheduling on parallel unrelated ma-chines [Bar-Noy et al. 2001a]. Schedul-ing on unrelated machines differs fromscheduling on identical machines in thatthe profit derived from assigning an activ-ity instance to a machine may be differentfor different machines, and furthermore,each activity instance may specify a list offorbidden machines, that is, machines onwhich it is not willing to be scheduled. Avariant of Algorithm IS approximates thisproblem with approximation guarantee 2.

Continuous input [Bar-Noy et al.2001a]. In our treatment of the generalscheduling problem, we have implicitlyassumed that each activity is specified asa finite list of instances. We can generalizethe problem and allow each activity toconsist of infinitely many instances byspecifying the activity as a finite collectionof time windows. A time window is aninterval of time T , which together witha length parameter l (T ) and a weightparameter w(T ), represent the (infinite)set of instances [s, t) such that s ∈ Tand t = s + l (T ). Each of these instanceshas profit w(T ). The various variants ofAlgorithm IS can be modified to handlesuch “continuous” input efficiently, buta sacrifice must be made in the approxi-mation ratio. Specifically, for arbitrarilysmall ε > 0, the algorithm can be madeto run in O(n2/ε) time and achieve an ap-proximation factor of r + ε, where r is thefactor it would achieve on “discrete” input.

Batching [Bar-Noy et al. 2002]. Whilemost scheduling problems forbid thescheduling of two simultaneous jobs onthe same machine, it is sometimes de-sirable to relax this constraint and allowmultiple jobs (with similar characteris-tics) to be batched together and scheduledsimultaneously. (For example, it is possi-ble to broadcast a movie to several clientswho have asked for it.) The introductionof batching into our general schedulingproblem complicates things considerably,yet the basic idea of Algorithm IS is stillvalid. Bar-Noy et al. [2002] developed 2-approximation and 4–approximation algo-rithms for two variants of the problemof scheduling on identical machines withbatching. Their algorithms are based onthe same idea as Algorithm IS, though ina far more complex manner.

Combinatorial auctions [Akcoglu et al.2002]. A combinatorial auction is an auc-tion in which each bidder places a bid onsome subset of the available goods (ratherthan on individual items), and the auction-eer accepts a collection of mutually dis-joint bids, with the aim of maximizing rev-enue. Akcoglu et al. [2002] describe suchauctioning as finding a maximum weightindependent set in a bid graph whose ver-tices are the bids, and whose edges connectpairs of conflicting bids. Since maximumweight independent set is hard to approxi-mate in general [Hastad 1996], they focuson special cases. They present an approx-imation algorithm based on Algorithm ISfor the problem on ordered graphs. The ap-proximation guarantee they achieve is themaximum over vertices v of the maximumindependent set size in the subgraph in-duced by the neighbors of v that appearafter v in the ordering. They show that sev-eral types of combinatorial auctions can bemodeled as bid graphs in which this valueis a constant.

6.3. Additional Scheduling Applications

Generally speaking, a scheduling prob-lem is a problem in which jobs competefor the use of some limited resource, andthe goal is to resolve all conflicts. Con-flicts can be resolved either by scheduling

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 30: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 451

only a subset of the jobs, or by enlarg-ing the amount of available resource toaccommodate all jobs. In the previoussection, we considered the first option.We assumed that the amount of resourcewas fixed and that we could reject jobs.We measured the quality of a scheduleby its throughput (total weight of theaccepted jobs), which we wished to max-imize. In this section, we mention two ad-ditional applications of the local ratio tech-nique; one in the fixed-resource setting—but from a minimization viewpoint,and another in the enlargeable-resourcesetting.

In the fixed-resource setting, we canadopt a minimization point of view bymeasuring the quality of a schedule by itsloss (total weight of rejected jobs), insteadof its throughput. Using this measureturns throughput maximization problemsinto loss minimization ones. While thethroughput and loss measures are equiv-alent in terms of optimal solutions, theyare completely distinct when one consid-ers approximate solutions.

Consider the loss minimization versionof the bandwidth allocation problem ofSection 6.2.3. The loss associated with aschedule is the total weight of activity in-stances that are not scheduled. This mea-sure is unsatisfactory if multiple instancesper activity are allowed since, even in thebest case, at most one instance per activ-ity can be scheduled (and all others con-tribute to the loss),9 but the loss mea-sure does make sense in the special casewhere each activity consists of a single in-stance. Bar-Noy et al. [2001a] provided a4-approximation variant of Algorithm ISfor the generalization of this special casein which the amount of available resource

9A more reasonable definition of loss is to associatewith each activity A a loss which is the difference be-tween the maximum weight of an instance of A, andthe weight of the instance actually selected (if any).However, this changes the nature of the problem com-pletely. We now associate a nonnegative penalty witheach activity instance, and we must schedule exactlyone instance of each activity. (To represent the pos-sibility of rejecting the activity entirely, we add to ita virtual instance that intersects no other activityinstances.)

may vary in time. Using a suitable reduc-tion, their algorithm can be used to ap-proximate (with approximation factor 4)the general caching problem, in whichpages of varying sizes and penalties mustbe swapped in and out of a fixed sizecache. (The motivation for this problem iscaching World Wide Web pages; see Alberset al. [1999] and Bar-Noy et al. [2001a] formore details.)

The second setting we consider isthe enlargeable-resource setting. Here wemust satisfy all jobs, and can achieve thisby increasing the amount of resource. Theobjective is to minimize the cost of the re-source used, hence such problems arecalled resource minimization problems. Anexample of a resource minimization prob-lem is the bandwidth trading problem. Inthis problem, we are given a set of ma-chine types T = {T1, . . . , Tm}, and a set ofjobs J = {1, . . . , n}. Each machine type Tiis defined by two parameters: a time in-terval I (Ti) during which it is available,and a weight w(Ti), which represents thecost of allocating a machine of this type.Each job j is defined by a single time in-terval I ( j ) during which it must be pro-cessed. A given job j may be scheduledfeasibly on a machine of type T , if typeT is available throughout the job’s inter-val, that is, if I ( j ) ⊆ I (T ). A schedule is aset of machines together with an assign-ment of each job to one of them. It is fea-sible if every job is assigned feasibly andno two jobs with intersecting intervals areassigned to the same machine. The costof a feasible schedule is the total cost ofthe machines it uses, where the cost ofa machine is defined as the weight asso-ciated with its type. The goal is to finda minimum-cost feasible schedule. Bhatiaet al. [2003] present a 3-approximationlocal ratio algorithm for the bandwidthtrading problem. Their algorithm is some-what unusual in that it does not use anr-effective (or fully r-effective) weightfunction in the weight decompositionsteps, nor does it return minimal solu-tions. Instead, it uses a weight functionfor which “good” solutions satisfy a cer-tain property different from minimality.Accordingly, the algorithm modifies the

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 31: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

452 R. Bar-Yehuda et al.

solution returned from each recursive callin a rather elaborate manner in order totransform it into a “good” solution.

6.4. Background

As mentioned earlier, single machinescheduling with one instance per activ-ity is equivalent to maximum weight in-dependent set in interval graphs, andhence polynomial-time solvable [Golumbic1980]. Arkin and Silverberg [1987] solvethe problem efficiently even for un-related multiple machines. The prob-lem becomes NP-hard (even in thesingle machine case) if multiple instancesper activity are allowed [Spieksma 1999],or if instances may require arbitraryamounts of the resource. (In the lattercase, the problem is NP-hard as it con-tains knapsack [Garey and Johnson 1979]as a special case in which all time intervalsintersect.) Spieksma [1999] studies theunweighted interval scheduling problem.He proves that it is Max-SNP-hard, andpresents a simple greedy 2-approximationalgorithm. Bar-Noy et al. [2001b] considerreal-time scheduling, in which each job isassociated with a release time, a deadline,a weight, and a processing time on eachof the machines. They give several con-stant factor approximation algorithms forvarious variants of the throughput maxi-mization problem. They also show that theproblem of scheduling unweighted jobs onunrelated machine is Max-SNP-hard.

Bar-Noy et al. [2001a] present a generalframework for solving resource allocationand scheduling problems that is based onthe local ratio technique. Given a resourceof fixed size, they present algorithms thatapproximate the maximum throughput orthe minimum loss by a constant factor.The algorithms apply to many problems,some of which are: real-time schedulingof jobs on parallel machines, bandwidthallocation for sessions between two end-points, general caching, dynamic storageallocation, and bandwidth allocation onoptical line and ring topologies. In particu-lar, they improve most of the results fromBar-Noy et al. [2001b], either in the ap-proximation factor, or in the running

time complexity. Their algorithms canalso be interpreted within the primal-dualschema (see also Bar-Yehuda and Rawitz[2001]) and are the first local ratio (orprimal-dual) algorithms for maximizationproblems. Section 6.2 is based on Bar-Noyet al. [2001a]. Independently, Berman andDasGupta [2000] also improve upon the al-gorithms given in Bar-Noy et al. [2001b].They develop an algorithm for intervalscheduling that is nearly identical to theone from Bar-Noy et al. [2001a]. Further-more, they employ the same rounding ideaused in Bar-Noy et al. [2001a] in order tocontend with time windows. In additionto single machine scheduling, they alsoconsider scheduling on parallel machines,both identical (obtaining an approxima-tion guarantee of (k + 1)k/((k + 1)k − kk))and unrelated (obtaining an approxima-tion guarantee of 2).

Chuzhoy et al. [2001] consider theunweighted real-time scheduling prob-lem and present an (e/(e − 1) + ε)-approximation algorithm. They general-ize this algorithm to achieve a ratio of(1 + e/(e − 1) + ε) for unweighted band-width allocation.

7. ODDS AND ENDS

In this section, we present three local ratioalgorithms that do not fit properly in theframeworks introduced previously. Eachalgorithm deviates from these frameworksin a different manner, but they are allbased on the Local Ratio Theorem andrelated ideas. The first two algorithmsare interpretations of known algorithmsfor longest path in a DAG and minimums-t cut. These problems are polynomial-time solvable, and the algorithms pre-sented here demonstrate the use of thelocal ratio technique in the design of1-approximation algorithms and the uti-lization of negative weights in this con-text. The third problem we consider iscapacitated vertex cover, for which we de-scribe a 2-approximation algorithm. Theinteresting feature of this NP-hard prob-lem is that feasible solutions are not nec-essarily 0-1 vectors.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 32: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 453

7.1. Longest Path in a DAG

The longest path problem is, given an edge-weighted graph and two distinguishedvertices s and t, find a simple path from s tot of maximum length, where the length of apath is defined as the sum of weights of itsedges. For general graphs (either directedor undirected), the problem is NP-hard,but for directed acyclic graphs (DAGs), itis solvable in linear time by a Dijkstra-like algorithm that processes the nodesin topological order. In this section, wepresent a local ratio interpretation of thisalgorithm. We allow negative arc weights,and we assume without loss of generalitythat s is a root, that is, that every nodeis reachable from s. (Otherwise, simplydelete all unreachable nodes.)

Let us first introduce some terminology.We say that node u is a proper successor ofnode v, if u is entered by exactly one arc,and this arc is (v, u).

OBSERVATION 10. Let s be the root of aDAG on two or more nodes. Then s hasat least one proper successor in the graph.(For example, the second node in a topolog-ical sort of the graph is a proper successorof s.)

We also define the act of contractingan arc (u, v) as the following three-step

Algorithm LPDAG(G, s, t, w).1. If s = t return the path consisting of the single node s.2. Else, if s has a proper successor v such that w(s, v) = 0 do:3. Let G ′ be the graph obtained by contracting (s, v).4. P ′ ← LPDAG(G ′, v, t, w).5. Return the path in G corresponding to P ′.6. Else:7. Let x be a proper successor of s and let ε = w(s, x).

8. Define the weight functions w1(u, v) ={

ε u = s,0 otherwise,

and w2 = w − w1.9. Return LPDAG(G, s, t, w2).

process:

(1) Delete the arc (u, v).(2) Redirect every arc leaving (or enter-

ing) u to leave (or enter) v instead.This modification may create pairs ofparallel arcs. For each such pair, delete

the arc of lesser weight (breaking tiesarbitrarily).

(3) Delete u.

Let G ′ be the graph obtained from Gby contracting an arc (u, v), and let P ′ =v, v1, . . . , vk be a path leaving v in G ′.The arc (v, v1) in G ′ may have originatedfrom (u, v1), or from (v, v1) in G. Depend-ing on what the case is, we define thepath P in G corresponding to P ′ to be ei-ther the path u, v1, . . . , vk , or the path u, v,v1, . . . , vk .

OBSERVATION 11. Let G be an arc-weighted DAG with root s. Let v be a propersuccessor of s, and suppose w(s, v) = 0. LetG ′ be the graph obtained from G by con-tracting (s, v). Then:

(1) G ′ is a DAG with root v.(2) The maximum length of a path from

s to t in G is equal to the maximumlength of a path from v to t in G ′.

(3) If P ′ is a longest path from v to t in G ′,then the corresponding path P in G isa longest path from s to t.

The algorithm is based on Observa-tions 10 and 11. It repeatedly contracts thearc connecting the DAG’s root to one of itsproper successors.

It is easy to see that w1 is fully1-effective for all ε (even negative.) Hence,Algorithm LPDAG solves the problem op-timally.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 33: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

454 R. Bar-Yehuda et al.

7.2. Minimum s-t Cut

The minimum s-t cut problem is definedas follows. Given an arc-weighted directedgraph G = (N , A) and a pair of dis-tinct distinguished nodes s and t, a di-rected s-t cut (or simply cut for short) isa set of arcs whose removal disconnectsall directed paths from s to t. The goalis to find a minimum cut, that is, a cutof minimum weight. Note that there al-ways exists a minimum cut which is alsominimal (in the sense of set inclusion),since arc weights are nonnegative. Thuswe restrict our attention to minimal cuts,and, therefore, have the following equiv-alent definition (which is more commonin the literature). A cut is a partition ofthe graph nodes into two sets S and Ssuch that s ∈ S and t ∈ S, and the cutarcs are the arcs leaving S and enteringS. We use the two definitions of cut in-terchangeably. We remark that the undi-rected version of the problem can be re-duced to the directed case by replacingeach edge by two arcs (in opposite direc-tions) with the same weight as the originaledge.

It is well known that the minimums-t cut problem can be solved by max-flow techniques, particularly, by the Fordand Fulkerson algorithm [1956] for max-flow. In this section, we present a lo-cal ratio interpretation of the Ford andFulkerson algorithm. Apart from the factthat the following algorithm solves anoptimization problem optimally, it is alsounique in that it is the first (and only,as far as we know) local ratio algorithmthat uses negative weights in w1.10 Be-cause of these negative weights, thereare cases where zero weight arcs becomepositive again, and, therefore, we can-not delete zero-weight arcs as in previousalgorithms.

In the algorithm that follows, we as-sume that for every arc (u, v) in the graph,the arc (v, u) exists as well. (If this is not

10Although we have allowed negative weights inAlgorithm LPDAG (Section 7.1), that algorithmmay be easily modified to avoid them. In con-trast, negative weights are inherent in the presentalgorithm.

Fig. 4. The weight of acut with respect to w1.

the case, we can simply add the missingarcs with zero weight.) The algorithm isbased on the following observation. We saythat an arc is unsaturated if its weight isstrictly positive. A path is unsaturated ifit consists of unsaturated arcs only. Let Pbe an unsaturated path from s to t, and let←−P be its reverse (from t to s). Define

w1(u, v) =

ε (u, v) ∈ P,

−ε (u, v) ∈ ←−P ,

0 otherwise.

We claim that w1 is 1-effective because thecost (with respect to w1) of every cut is pre-cisely ε. To see this, let C be any minimalfeasible solution, that is, let C be a set ofarcs defined by a cut (S, S). Consider thepath P . It starts at s and proceeds ini-tially within S. At some point, it crossesover to S, and then possibly crosses thecut back and forth several times, endingfinally in S. It then continues to t withinS. Thus, if k ≥ 1 is the number of timesP crosses the cut from S to S, then k − 1is the number of times it crosses the cutin the reverse direction. Thus C containsprecisely k edges of P and k − 1 edges of←−P , and thus its weight with respect to w1is ε · k − ε(k − 1) = ε. (See Figure 4 for anillustration.)

Algorithm stCut is actually Ford andFulkerson’s algorithm [1956]. Path P isan augmentation path, and w2 defines theresidual weights. As with the original al-gorithm, the time complexity of the al-gorithm depends on how P is chosen inLine 4. If it is chosen poorly, the algorithmmight require pseudo-polynomial time (oreven fail to terminate if irrational weightsare allowed).

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 34: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 455

Algorithm stCut(G, s, t, w).1. Let S be the set of nodes reachable from

s by unsaturated paths.2. If t ∈ S, return the cut (S, S).3. Else:4. Let P be an unsaturated path from s

to t and let←−P be

its reverse.5. Let ε = min{w(u, v) | (u, v) ∈ P}.6. Define the weight functions

w1(u, v) =

ε (u, v) ∈ P,

−ε (u, v) ∈ ←−P ,

0 otherwise,and w2 = w − w1.

7. Return stCut(G, s, t, w2).

7.3. Capacitated Vertex Cover

The capacitated vertex cover problem issimilar to plain vertex cover, but now eachvertex u has, in addition to its weight w(u),also a capacity c(u) ∈ N that determinesthe number of edges it may cover. Specif-ically, vertex u may cover up to c(u) inci-dent edges. However, multiple “copies” ofu can be used to cover additional edges.11

And so, a feasible solution is an assign-ment of every edge to one of its endpoints,subject to the constraint that no edge is as-signed to a zero-capacity vertex. Note thatthe presence of zero-capacity vertices mayrender the problem infeasible, but detect-ing this is easy: the problem is infeasible,if and only if there is an edge whose twoendpoints have zero capacity. We will as-sume henceforth that a feasible solutionexists. Also note that the special case inwhich c(u) ≥ deg(u) for every vertex u isthe ordinary vertex cover problem.

To define the cost of a feasible solu-tion A, let us introduce some notation.Denote by A(u) the set of edges assignedto vertex u, and by α(u) the number ofcopies of u required to cover the edgesA(u). (If A(u) = ∅, then α(u) = 0. Oth-erwise, α(u) = �|A(u)|/c(u)�. Note that,in the latter case, the ratio |A(u)|/c(u) iswell defined, since c(u) must be positive.)The cost of assignment A is

∑u α(u)w(u).

11Such capacities, are called soft. With hard capaci-ties, only one copy of every vertex is allowed.

Thus, although feasible solutions are de-fined as assignments of edges to vertices,when considering their cost, they can beviewed as vectors of α values, and there-fore can be treated within the local ratioframework.

In the description of the following recur-sive algorithm, we use N (u) to denote theset of vertex u’s neighbors, we denote byV+ the set of vertices with non-zero ca-pacity and non-zero degree, and we denotec(u) = min{deg(u), c(u)}.

Algorithm CVC(G = (V, E), c, w).1. If E = ∅, return the assignment

A(v) = ∅ for all v ∈ V .2. Else, if there exists a vertex u ∈ V+ such

that w(u) = 0 do:3. Let G ′ be the graph obtained from G

by deleting u.4. A ← CVC(G ′, c, w).5. For every v ∈ N (u) do:6. If deg(v) ≤ c(v) and A(v) = ∅ do:7. A(v) ← A(v) ∪ {(u, v)}.8. Else:9. A(u) ← A(u) ∪ {(u, v)}.

10. Return A.11. Else:12. Let ε = minu∈V+{w(u)/c(u)}.13. Define the weight functions w1(v) =

ε · c(v) and w2 = w − w1.14. Return CVC(G, c, w2).

Consider the recursive call made inLine 4. In order to distinguish between theassignment obtained by this recursive in-vocation and the assignment returned inLine 10, we denote the former by A′, andthe latter by A. Assignment A′ is for graphG ′, and we denote the corresponding pa-rameters α′ and c′. Similarly, we use α andc for the parameters of A and G.

To analyze the algorithm, we use acharging scheme where the cost of the so-lution is charged to the graph edges. Morespecifically, we imagine that each edge isalloted two coins that it may distributebetween its endpoints. We aim to showthat there is a way to distribute the coinsso that the number of coins given to anyvertex u is at least α(u)c(u). The key ob-servation is the following.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 35: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

456 R. Bar-Yehuda et al.

OBSERVATION 12. Suppose a recursivecall is made in Line 4. Let v ∈ N (u). Then:

(1) If deg(v) ≤ c(v) and A′(v) = ∅, thenα(v) = α′(v) = 1, and c(v) = c′(v) + 1.Thus α(v)c(v) = α′(v)c′(v) + 1.

(2) If deg(v) > c(v), or A′(v) = ∅, thenA(v) = A′(v), and therefore α(v) = α′(v).Moreover, there are two (not mutuallyexclusive) cases: α(v) = α′(v) = 0, ordeg(v) ≥ c(v) + 1. In the latter case, thedegree of v in G ′ is at least c(v), andtherefore c(v) = c′(v) = c(v). Thus ineither case α(v) c(v) = α′(v)c′(v).

(3) In all cases, α(v) = α′(v). (This followsfrom the previous two observations.)

LEMMA 13. There exists a chargingscheme (with respect to graph G andassignment A) in which every vertex uis given at least α(u)c(u) coins. Thus∑

u α(u)c(u) ≤ 2|E|.PROOF. The proof is by induction on the

recursion. For the base case E = ∅, it istrivial. For the inductive step there aretwo cases. If the recursive call is madein Line 14, the claim follows by the in-ductive hypothesis. Otherwise, the recur-sive call is made in Line 4, and by the in-ductive hypothesis, there exists a chargingscheme for (G ′, A′). We extend this schemeto (G, A) as follows. First note that thetransition from (G ′, A′) to (G, A) consistsof adding a single vertex u and a collec-tion of edges incident on it, and assigningeach of these edges to either u, or its otherendpoint. Thus we need only take care ofu and its neighbors; these are the only ver-tices whose α and c values may change. Allother vertices are already satisfied by thecharging scheme for (G ′, A′). Let v ∈ N (u).If deg(v) ≤ c(v) and A′(v) = ∅, then by Ob-servation 12, α(v)c(v) −α′(v)c(v) = 1. Edge(u, v) (which is assigned to v) passes one ofits coins to v to cover the difference, andpasses its other coin to u. If, on the otherhand, deg(v) > c(v), or A′(v) = ∅, thenby Observation 12, v is already satisfiedby the charging scheme for (G ′, A′). Edge(u, v) (which is assigned to u) passes bothits coins to u. And so, we ensure that all ofu’s neighbors are satisfied, and it remainsto show that u is satisfied as well. Con-

sider the coins given to u by its incidentedges. Each edge assigned to u contributestwo coins, and each edge not assigned to ucontributes one coin. Thus the number ofcoins is

|A(u)| + deg(u) ≥ |A(u)| + c(u)

=( |A(u)|

c(u)+ 1

)· c(u)

≥( |A(u)|

c(u)+ 1

)· c(u)

> α(u)c(u).

THEOREM 14. Algorithm CVC returns2-approximate solutions.

PROOF. The proof is by induction on therecursion. In the base case, the algorithmreturns an empty assignment, which is op-timal for the empty graph. For the induc-tive step, there are two cases. If the re-cursive invocation is made in Line 4, thenby the inductive hypothesis, the assign-ment A′ it returns is 2-approximate withrespect to G ′. Clearly, the optimum valuefor G can only be greater than the opti-mum value for G ′, and because w(u) = 0and α(v) = α′(v) for all v ∈ V \ {u} (byObservation 12), the cost of A equals thecost of A′. Thus A is 2-approximate withrespect to G. If the recursive call is madein Line 14, then by the inductive hypothe-sis the assignment is 2-approximate withrespect to w2. By Lemma 13, its cost withrespect to w1 is at most 2ε|E|, and clearlythe optimal cost is at least ε|E|. Thus theassignment is 2-approximate with respectto w1, too, and by the Local Ratio Theorem,it is 2-approximate with respect to w aswell.

7.4. Background

The problem of finding the longest pathin a DAG (also called the critical path)arises in the context of PERT (Pro-gram Evaluation and Review Technique)charts. For more details see Cormenet al. [1990, page 538] or Even [1979,pp. 138–142]. Algorithm stCut, the lo-cal ratio interpretation of Ford and Fulk-erson’s Algorithm [1956], is from Bar-Yehuda and Rawitz [2004]. The algorithm

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 36: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 457

for capacitated vertex cover (AlgorithmCVC) is a local ratio version of the primal-dual algorithm given by Guha et al. [2002].

8. FRACTIONAL LOCAL RATIO

As we have seen, the standard local ra-tio approach is to use a weight decompo-sition that guarantees that the solutionconstructed by the algorithm will be r-approximate with respect to w1 (for somedesired r). In essence, the analysis con-sists of comparing, at each level of the re-cursion, the solution found in that level,and an optimal solution for the probleminstance passed to that level, where thecomparison is made with respect to w1 andwith respect to w2. Thus, in each level ofthe recursion, there are potentially two op-tima (one with respect to w1, and one withrespect to w2) against which the solutionis compared, and in addition, different op-tima are used at different recursion levels.The fractional local ratio paradigm takesa different approach. It uses a single solu-tion x∗ to the original problem instance asthe yardstick against which all intermedi-ate solutions (at all levels of the recursion)are compared. In fact, x∗ is not even feasi-ble for the original problem instance, butrather for a relaxation of it. Typically, x∗will be an optimal fractional solution to alinear programming12 (LP) relaxation.

The fractional local ratio technique isbased on a “fractional” version of theLocal Ratio Theorem. Recall that bothprevious versions of the theorem (Theo-rems 2 and 9) apply to problems that canbe formulated as finding an optimal vec-tor x ∈ R

n, subject to a set of feasibilityconstraints C. In all previous applications,we have assumed that the constraints de-scribe the problem to be solved precisely,and in particular, one of the constraintsis that x must be a 0-1 (or at least anintegral) vector. In contrast, applicationsof the fractional local ratio technique con-sider relaxations of the actual problems—typically, LP relaxations of their integer

12This section assumes familiarity with the conceptsof integer programming, linear programming, andLP relaxations.

programming (IP) formulations. This isthe context in which we formulate thenew version of the theorem. Particularly,we consider nonintegral vectors, hence theterm fractional. We precede the statementof the theorem with the following usefuldefinition.

Definition 4. Let r ≥ 1, and let w ∈ Rn

be a vector of weights in the context ofan optimization problem. Let x and x∗ bevectors in R

n. Vector x is said to be r-approximate relative to x∗ (with respect tow), if w · x ≤ r(w · x∗) (for a minimizationproblem), or w · x ≥ (w · x∗)/r (for a maxi-mization problem).

The theorem is nothing more than thefollowing straightforward observation.

THEOREM 15 (FRACTIONAL LOCAL RATIO).Let w, w1, w2 ∈ R

n be weight vectors in thecontext of an optimization problem suchthat w = w1 + w2. Let x∗ and x be vectorsin R

n such that x is r-approximate relativeto x∗ with respect to w1, and with respectto w2. Then, x is r-approximate relative tox∗ with respect to w as well.

The first step in the fractional local ra-tio technique is to obtain an optimal solu-tion x∗ to an LP relaxation of the problem.This solution is then used to drive a recur-sive algorithm that constructs a feasiblesolution (to the actual problem, not the re-laxation) in a manner quite similar to thestandard local ratio method. At each levelof the recursion, either the problem sizeis reduced (conceptually), or the weightfunction is decomposed. The novelty of thefractional approach is that in weight de-composition steps, the construction of w1is based on x∗, and the analysis comparesthe weight of the solution returned withw · x∗. Thus the fractional local ratio tech-nique is a combination of LP rounding andthe standard local ratio approach.

Intuitively, the drawback of the stan-dard local ratio technique is that, at eachlevel of the recursion, we attempt to ap-proximate the weight of a solution that isoptimal with respect to the weight func-tion present at that level. The super-position of these “local optima” may be

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 37: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

458 R. Bar-Yehuda et al.

significantly worse than the “global opti-mum,” that is, the optimum for the orig-inal problem instance. Conceivably, wecould obtain a better bound, if at eachlevel of the recursion, we approximatedthe weight of a solution that is optimalwith respect to the original weight func-tion. This is the idea behind the fractionallocal ratio approach.

The best way to explain the tech-nique is by means of an example. In thenext section, we demonstrate the tech-nique on maximum weight independentset, and following that, we apply it to max-imum weight independent set in t-intervalgraphs, which is somewhat more involved.

8.1. Maximum Weight Independent Set

In the maximum weight independent setproblem, we are given a vertex-weightedgraph G = (V , E), and are asked to finda maximum weight independent set ofvertices. An independent set of vertices isa subset of V in which no two vertices areadjacent.

Consider the following weight function.For a given vertex v, let N [v] denote the setconsisting of vertex v and all its neighbors.Fix some vertex v, and let ε > 0. Define

w1(u) ={

ε u ∈ N [v],0 otherwise.

Let � = maxu∈V max{1, deg(u)}. Clearly,w1 is �-effective since every feasible solu-tion has weight at most ε ·max{1, deg(v)} ≤ε · �, and every maximal solution hasweight at least ε. We can, therefore, usethis weight function as the basis for a �-approximation algorithm in the standardlocal ratio framework. We can do better,however, by employing the fractional lo-cal ratio technique. Specifically, we canachieve an approximation guarantee of12 (� + 1), as we now show.

The first step is to solve the following LPrelaxation of the natural IP formulation ofthe problem.

Maximize∑u∈V

w(u)xu subject to

xu + xv ≤ 1 ∀ (u, v) ∈ E,0 ≤ xu ≤ 1 ∀ u ∈ V .

Let x∗ be an optimal (fractional) solution.We now run the recursive algorithm de-scribed next to obtain an independent set.Note that the algorithm does not containproblem-size reduction steps, as do otherlocal ratio algorithms. Specifically, it doesnot delete vertices of nonpositive weight.This is due to the nature of the analysisto follow; it is more convenient to simplyignore vertices of nonpositive weight thanto delete them.

Algorithm FracLRIS(G, w, x∗).1. Let V+ = {u | w(u) > 0} and let G+ = (V+,

E+) be the subgraph of G induced by V+.2. If E+ = ∅, return V+.3. Let v ∈ V+ be a vertex minimizing∑

u∈N [v]∩V+

x∗u and let ε = w(v).

4. Define the weight functions

w1(u) ={

ε u ∈ N [v] ∩ V+,0 otherwise,

and w2 = w − w1.5. S′ ← FracLRIS(G, w2, x∗).6. If S′ ∪ {v} is an independent set do:7. Return S = S′ ∪ {v}.8. Else:9. Return S = S′.

For the analysis, let x denote the inci-dence vector of the solution S returned bythe algorithm. We claim that x is 1

2 (�+1)-approximate relative to x∗ (or in otherwords, that w · x ≥ 2/(� + 1)(w · x∗)),and thus S is 1

2 (� + 1)-approximate. Asusual, the proof is by induction on the re-cursion, but to facilitate it, we need an ad-ditional claim, namely, that S ⊆ V+ (atall levels of the recursion). We prove bothclaims simultaneously. In the base case(E+ = ∅), we have S = V+ and, w · x =∑

u | w(u)>0 w(u) · 1 ≥ ∑u | w(u)>0 w(u) · x∗

u ≥∑u w(u) ·x∗

u = w ·x∗. Since w ·x ≥ 0, we getw ·x ≥ 2/(�+1)(w ·x∗), even if w ·x∗ is neg-ative. For the inductive step, let x ′ be theincidence vector of S′ (obtained in Line 5),and let V ′

+ = {u | w2(u) > 0

}. Then, by the

inductive hypothesis and the definition ofw2, S′ ⊆ V ′

+ ⊆ V+. Since v ∈ V+, Lines 6–9

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 38: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 459

Fig. 5. (a) A 2-interval graph; (b) one of its realizations.

ensure that S ⊆ V+. By the inductive hy-pothesis, w2 · x ′ ≥ 2/(� + 1)(w2 · x∗). Sincew2(v) = 0, we get that w2 · x = w2 · x ′, andtherefore x is 1

2 (� + 1)-approximate rela-tive to x∗, with respect to w2. In addition,Lines 6–9 also ensure that either v ∈ S,or else S contains some v′ ∈ N [v] ∩ S′ ⊆N [v] ∩ V+. In either case, S contains atleast one vertex from N [v] ∩ V+, and thusw1 · x ≥ ε. The following lemma impliesthat w1 · x∗ ≤ 1

2ε(� + 1). Hence, x is12 (� + 1)-approximate relative to x∗ withrespect to both w1 and w2, and by the Frac-tional Local Ratio Theorem, we get that xis 1

2 (� + 1)-approximate.

LEMMA 16. The choice of v in Line 3 en-sures that

∑u∈N [v]∩V+ x∗

u ≤ 12 (� + 1).

PROOF. It is sufficent to show that∑u∈N [s]∩V+ x∗

u ≤ 12 (� + 1) is satisfied for

some vertex s ∈ V+. We show this fors = arg maxu∈V+ x∗

u. Note that N [s] ∩ V+is the set consisting of s and its neighborsin G+, and that |N [s] ∩ V+| ≤ � + 1. Ifs is an isolated vertex in G+, it clearlysatisfies the condition. Otherwise, ifx∗

s ≤ 1/2, then x∗u ≤ 1/2 for all vertices u

in G+, and the condition is again satisfied.Otherwise, x∗

s > 1/2, and thus x∗u < 1/2

for all neighbors u of s in G+. Fix anysuch neighbor s′. Then

∑u∈N [s]∩V+ x∗

u =(x∗

s + x∗s′ ) + ∑

u∈(N [s]∩V+)\{s,s′} x∗u < 1+

12 (� − 1) = 1

2 (� + 1).

8.1.0.1. Remark. The analysis shows thatv can actually be chosen (in Line 3) as anyvertex satisfying

∑u∈N [v]∩V+ x∗

u ≤ 12 (� +

1)—not necessarily the one minimizing∑u∈N [v]∩V+ x∗

u. By the proof of Lemma 16,

the simplest 15 choice is the vertex inv ∈ V+, maximizing x∗

v .

8.2. Maximum Weight Independent Set in at-interval Graph

Consider a teaching laboratory shared byseveral different academic courses, whereeach course has a schedule during whichit requires the use of the laboratory for t(or less) sessions of varying duration. Theproblem is to maximize the utilization ofthe laboratory by admitting a subset ofnonconflicting courses. This type of prob-lem has a simple abstraction as the prob-lem of finding a maximum weight indepen-dent set in a vertex-weighted t-intervalgraph. To define what a t-interval graphis, we need the following auxiliary defi-nitions. A t-interval system is a collection{I1, I2, . . . , In} of nonempty sets of real in-tervals, where each Ii consists of t or lessdisjoint intervals. Given a t-interval sys-tem, the corresponding intersection graphis defined as follows. Each set Ii, is repre-sented by a vertex vi, and there is an edgebetween two distinct vertices vi and vj , ifsome interval in Ii intersects some inter-val in I j . A t-interval graph is the intersec-tion graph of some t-interval system. Theset system is then said to be a realizationof the graph. (Note that a given t-intervalgraph may have many different realiza-tions.) Figure 5 shows a 2-interval graphand one of its realizations.

In this section, we present a 2t-approximation algorithm for the problemof finding a maximum weight independentset in a vertex-weighted t-interval graph.Since even deciding whether a given graphis t-interval is NP-hard (for t ≥ 2) [West

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 39: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

460 R. Bar-Yehuda et al.

and Shmoys 1984], we will assume that arealization of the graph is given as partof the input. Given a realization of a t-interval graph, we identify each vertexwith the corresponding set of intervals,and furthermore, we adopt the point ofview that the intervals are not merelypairs of endpoints, but rather are objectsin their own right. What we mean by thisis that if a certain interval [a, b] belongsto two vertices, we do not view [a, b] asa single interval shared by two vertices,but rather as two distinct intervals thathappen to have identical endpoints. Thus,when viewed as sets of intervals, the graphvertices are always pairwise disjoint. Inaddition, for a given point p and vertexv, we denote by p ∈∈ v the statement p iscontained in some interval belonging to v.Finally, we assume for simplicity that theintervals are closed.

The algorithm is nearly identical to thealgorithm for maximum weight indepen-dent set in general graphs presented inthe previous section. The only differenceis that in the first step, we solve the fol-lowing LP relaxation, rather than the oneused there. Let R denote the set of rightendpoints of intervals in the system. Thelinear program is:

Maximize∑u∈V

w(u)xu subject to

∑u | p∈∈u xu ≤ 1 ∀ p ∈ R,

0 ≤ xu ≤ 1 ∀ u ∈ V .

In the second step, we run AlgorithmFracLRIS on the optimal (fractional) so-lution found, as before. The analysis issimilar, except that Lemma 16 is replacedby the following lemma, which provides anapproximation guarantee of 2t.

LEMMA 17. The choice of v in Line 3 en-sures that

∑u∈N [v]∩V+ x∗

u ≤ 2t.

PROOF. To reduce clutter, we restrict thediscussion to the graph G+. Thus, vertexmeans vertex in V+;

∑u, stands for

∑u∈V+ ;

N [v], stands for N [v]∩V+; and so on. Also,if I is an interval belonging to vertex v,we define x∗

I = x∗v . In general, we will use

I and J to denote intervals belonging tovertices.

To prove the lemma, it is sufficient toshow that there exists a vertex s such that∑

u∈N [s] x∗u ≤ 2t. Clearly, every isolated

vertex satisfies this condition, so we as-sume that G+ contains no isolated ver-tices. Thus, an equivalent claim wouldbe that there exists a vertex s satisfy-ing x∗

s∑

u∈N [s] x∗u ≤ 2tx∗

s (note that x∗s >

0 since s is a vertex in G+), and toprove this claim it is enough to show that∑

s x∗s∑

u∈N [s] x∗u ≤ 2t

∑s x∗

s .Let us denote by I ∼ J the statement

that interval I and interval J intersect,and by J ∼R I , the statement that inter-val J contains the right endpoint of inter-val I . (Note that I ∼ I and I ∼R I for allI .) Then,∑

s

x∗s

∑u∈N [s]

x∗u ≤

∑I∼J

x∗I x∗

J

≤ 2∑

J∼R I

x∗I x∗

J

= 2∑

s

∑I∈s

∑J∼R I

x∗I x∗

J

= 2∑

s

x∗s

∑I∈s

∑J∼R I

x∗J .

(In the right-hand-side of the first inequal-ity, I and J are ordered, so every pairof distinct intersecting intervals appearstwice.) The second inequality follows fromthe fact that, if two intervals intersect, oneof them necessarily contains the right end-point of the other. To complete the proof,note that the feasibility constraints ensurethat

∑J∼R I x∗

J ≤ 1 for all intervals I , andthus

∑I∈s

∑J∼R I x∗

J ≤ t for all s (as everyvertex contains at most t intervals).

8.3. Background

The algorithm for maximum weightindependent set in t-interval graphs(Algorithm FracLRIS) is taken fromBar-Yehuda et al. [2002], where it is alsoshown that the problem is APX-hard forall t ≥ 2, even for highly restricted in-stances. (Note that a 1-interval graph is anordinary interval graph, in which findinga maximum weight independent set is a

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 40: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 461

polynomial-time solvable problem.) Priorto this, paper, the problem was consid-ered only on proper union graphs [Bafnaet al. 1996]—a restricted subclass of t-interval graphs—and the approximationfactor achieved was (2t − 1 + 1/2t).

ACKNOWLEDGMENTS

We thank Guy Even for suggestions on the presenta-tion.

REFERENCES

AGRAWAL, A., KLEIN, P., AND RAVI, R. 1995. Whentrees collide: An approximation algorithm for thegeneralized Steiner problem on networks. SIAMJ Comput 24, 3, 440–456.

AKCOGLU, K., ASPNES, J., DASGUPTA, B., AND KAO,M.-Y. 2002. Opportunity cost algorithms forcombinatorial auctions. In Applied Optimiza-tion: Computational Methods in Decision-Making Economics and Finance, E. J. Kon-toghiorghes, B. Rustem, and S. Siokos, Eds.Kluwer Academic Publishers.

ALBERS, S., ARORA, S., AND KHANNA, S. 1999. Pagereplacement for general caching problems. In10th Annual ACM-SIAM Symposium on DiscreteAlgorithms. 31–40.

ARKIN, E. M. AND SILVERBERG, E. B. 1987. Schedul-ing jobs with fixed start and end times. Disc.Appl. Math. 18, 1–8.

BAFNA, V., BERMAN, P., AND FUJITO, T. 1999. A2-approximation algorithm for the undirectedfeedback vertex set problem. SIAM J. Dis.Math. 12, 3, 289–297.

BAFNA, V., NARAYANAN, B., AND RAVI, R. 1996.Nonoverlapping local alignments (weighted in-dependent sets of axis parallel rectangles). Disc.Appl. Math. 71, (Special issue on ComputationalMolecular Biolagy). 41–53.

BAR-NOY, A., BAR-YEHUDA, R., FREUND, A., NAOR, J.,AND SHIEBER, B. 2001a. A unified approach toapproximating resource allocation and schedu-aling. J. ACM 48, 5, 1069–1090.

BAR-NOY, A., GUHA, S., KATZ, Y., NAOR, J., SCHIEBER,B., AND SHACHNAI, H. 2002. Throughput maxi-mization of real-time scheduling with batching.In 13th Annual ACM-SIAM Symposium on Dis-crete Algorithms. 742–751.

BAR-NOY, A., GUHA, S., NAOR, J., AND SCHIEBER, B.2001b. Approximating the throughput of mul-tiple machines in real-time scheduling. SIAMJ.Comput. 31, 2, 331–352.

BAR-YEHUDA. 2001. Using homogeneous weightsfor approximating the partial cover problem. J.Algor. 39, 137–144.

BAR-YEHUDA, R. 2000. One for the price of two:A unified approach for approximating coveringproblems. Algorithmica 27, 2, 131–144.

BAR-YEHUDA, R. AND EVEN, S. 1981. A linear timeapproximation algorithm for the weighted ver-tex cover problem. J. Algor. 2, 198–203.

BAR-YEHUDA, R. AND EVEN, S. 1985. A local-ratiotheorem for approximating the weighted vertexcover problem. Ann. Discr. Math. 25, 27–46.

BAR-YEHUDA, R., GEIGER, D., NAOR, J., AND ROTH, R. M.1998. Approximation algorithms for the feed-back vertex set problem with applications toconstraint satisfaction and bayesian inference.SIAM J. Comput. 27, 4, 942–959.

BAR-YEHUDA, R., HALLDORSSON, M. M., NAOR, J.,SHACHNAI, H., AND SHAPIRA, I. 2002. Schedul-ing split intervals. In 13th Annual ACM-SIAMSymposium on Discrete Algorithms. 732–741.

BAR-YEHUDA, R. AND RAWITZ, D. 2001. On the equiv-alence between the primal-dual schema and thelocal-ratio technique. In 4th International Work-shop on Approximation Algorithms for Combina-torial Optimization Problems. Lecture Notes inComputer Science, vol. 2129. 24–35.

BAR-YEHUDA, R. AND RAWITZ, D. 2002. Approxi-mating element-weighted vertex deletion prob-lems for the complete k-partite property. J.Algor. 42, 1, 20–40.

BAR-YEHUDA, R. AND RAWITZ, D. 2004. Localratio with negative weights. Oper. Resear.Letters 32, 6, 540–546.

BECKER, A. AND GEIGER, D. 1996. Optimization ofPearl’s method of conditioning and greedy-likeapproximation algorithms for the vertex feed-back set problem. Artif. Intell. 83, 1, 167–188.

BERMAN, P. AND DASGUPTA, B. 2000. Multi-phase al-gorithms for throughput maximization for real-time scheduling. J. Combin. Optimi. 4, 3, 307–323.

BERTSIMAS, D. AND TEO, C. 1998. From valid in-equalities to heuristics: A unified view of primal-dual approximation algorithms in covering prob-lems. Operat. Resear. 46, 4, 503–514.

BHATIA, R., CHUZHOY, J., FREUND, A., AND NAOR, J.2003. Algorithmic aspects of bandwidth trad-ing. In 30th International Colloquium on Au-tomata, Languages, and Programming. LectureNotes in Computer Science, vol. 2719. 751–766.

BSHOUTY, N. H. AND BURROUGHS, L. 1998. Massag-ing a linear programming solution to give a2-approximation for a generalization of the ver-tex cover problem. In 15th Annual Symposiumon Theoretical Aspects of Computer Science.Lecture Notes in Computer Science, vol. 1373.Springer, 298–308.

CAI, M., DENG, X., AND ZANG, W. 2001. An approx-imation algorithm for feedback vertex sets intournaments. SIAM J. Comput. 30, 6, 1993–2007.

CHUDAK, F. A., GOEMANS, M. X., HOCHBAUM, D. S., AND

WILLIAMSON, D. P. 1998. A primal-dual inter-pretation of recent 2-approximation algorithmsfor the feedback vertex set problem in undirectedgraphs. Operat. Resear. Letters 22, 111–118.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 41: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

462 R. Bar-Yehuda et al.

CHUZHOY, J., OSTROVSKY, R., AND RABANI, Y. 2001.Approximation algorithms for the job intervalselection problem and related scheduling prob-lems. In 42nd IEEE Symposium on Foundationsof Computer Science. 348–356.

CHVATAL, V. 1979. A greedy heuristic for the set-covering problem. Math. Operat. Resear. 4, 3,233–235.

CORMEN, T. H., LEISERSON, C. E., AND RIVEST, R. L.1990. Introduction to Algorithms. The MITPress.

DINUR, I. AND SAFRA, S. 2002. The importance of be-ing biased. In 34th ACM Symposium on the The-ory of Computing. 33–42.

ERDOS, P. AND POSA, L. 1962. On the maximal num-ber of disjoint circuits of a graph. Publ. Math.Debrecen 9, 3–12.

EVEN, S. 1979. Graph Algorithms. Computer Sci-ence Press.

FEIGE, U. 1996. A threshold of ln n for approximat-ing set cover. In 28th Annual Symposium on theTheory of Computing. 314–318.

FORD, L. R. AND FULKERSON, D. R. 1956. Maximalflow through a network. Canadian J. Math. 8,399–404.

FREUND, A. AND RAWITZ, D. 2003. Combinatorial in-terpretations of dual fitting and primal fitting.In 1st International Workshop on Approximationand Online Algorithms. Lecture Notes in Com-puter Science, vol. 2909. Springer-Verlag, 137–150.

FUJITO, T. 1998. A unified approximation algo-rithm for node-deletion problems. Discrete Ap-plied Mathematics and Combinatorial Opera-tions Research and Computer Science 86, 213–231.

GABOW, H. N., GOEMANS, M. X., AND WILLIAMSON, D. P.1993. An efficient approximation algorithm forthe survivable network design problem. In 3rdMPS Conference on Integer Programming andCombinatorial Optimization.

GANDHI, R., KHULLER, S., AND SRINIVASAN, A. 2001.Approximation algorithms for partial coveringproblems. In 28th International Colloquium onAutomata, Languages and Programming. Lec-ture Notes in Computer Science, vol. 2076, 225–236.

GAREY, M. R., GRAHAM, R. L., JOHNSON, D. S., AND

YAO, A. C.-C. 1976a. Resource constrainedscheduling as generalized bin packing. J. Com-bin. Theor. (A) 21, 257–298.

GAREY, M. R., GRAHAM, R. L., AND ULLMAN, J. D. 1972.Worst-case analysis of memory allocation algo-rithms. In 4th Annual ACM Symposium on The-ory of Computing. 143–150.

GAREY, M. R. AND JOHNSON, D. S. 1979. Computersand Intractability; A Guide to the Theory of NP-Completeness. W.H. Freeman and Company.

GAREY, M. R., JOHNSON, D. S., AND STOCKMEYER,L. 1976b. Some simplified np-complete graphproblems. Theo. Comput. Sci. 1, 237–267.

GOEMANS, M. X., GOLDBERG, A., S.PLOTKIN, SHMOYS, D.,TARDOS, E., AND WILLIAMSON, D. P. 1994. Im-proved approximation algorithms for networkdesign problems. In 5th Annual ACM-SIAMSymposium on Discrete Algorithms. 223–232.

GOEMANS, M. X. AND WILLIAMSON, D. P. 1995. A gen-eral approximation technique for constrainedforest problems. SIAM J. Comput. 24, 2, 296–317.

GOEMANS, M. X. AND WILLIAMSON, D. P. 1997. Theprimal-dual method for approximation algo-rithms and its application to network designproblems. See Hochbaum [1997], Chapter 4,144–191.

GOLUMBIC, M. C. 1980. Algorithmic Graph Theoryand Perfect Graphs. Academic Press.

GROTSCHEL, M., LOVASZ, L., AND SCHRIJVER, A. 1988.Geometric algorithms and combinatorial opti-mization. Springer-Verlag, Berlin.

GUHA, S., HASSIN, R., KHULLER, S., AND OR, E. 2002.Capacitated vertex covering with applications.In 13th Annual ACM-SIAM Symposium on Dis-crete Algorithms. 858–865.

HALPERIN, E. 2000. Improved approximation algo-rithms for the vertex cover problem in graphsand hypergraphs. In 11th Annual ACM-SIAMSymposium on Discrete Algorithms. 329–337.

HASTAD, J. 1996. Clique is hard to approximatewithin n1−ε . In 37th IEEE Symposium on Foun-dations of Computer Science. 627–636.

HASTAD, J. 1997. Some optimal inapproximabilityresults. In 29th Annual ACM Symposium on theTheory of Computing. 1–10.

HOCHBAUM, D. S. 1982. Approximation algorithmsfor the set covering and vertex cover problems.SIAM J. Comput. 11, 3, 555–556.

HOCHBAUM, D. S. 1983. Efficient bounds for the sta-ble set, vertex cover and set packing problems.Disc. App. Math. 6, 243–254.

HOCHBAUM, D. S. 1997. In Approximation Algo-rithms for NP-Hard Problem, D. S. HochbaumEd. PWS Publishing Company.

HOCHBAUM, D. S. 1998. Approximating clique andbiclique problems. J. Algor. 29, 1, 174–200.

HOCHBAUM, D. S. 2002. Solving integer programsover monotone inequalities in three variables: aframework of half integrality and good approxi-mations. European J. Oper. Resear. 140, 2, 291–321.

IMIELINSKA, C., KALANTARI, B., AND KHACHIYAN, L.1993. A greedy heuristic for a minimum-weight forest problem. Operat. Resear. Let-ters 14, 65–71.

JAIN, K. 1998. A factor 2 approximation algorithmfor the generalized steiner network problem. In39th IEEE Symposium on Foundations of Com-puter Science. 448–457.

JAIN, K., MAHDIAN, M., AND SABERI, A. 2002. A newgreedy approach for facility location problems.In 34th ACM Symposium on the Theory of Com-puting. 731–740.

ACM Computing Surveys, Vol. 36, No. 4, December 2004.

Page 42: Local Ratio: A Unified Framework for Approximation ...oded/bbfr.pdfminimum weight vertex cover, that is, a minimum weight set of vertices C ⊆ V, such that every edge in the graph

Local Ratio: A Unified Framework for Approximation Algorithms 463

JOHNSON, D. S. 1974. Approximation algorithmsfor combinatorial problems. J. Comput. Syst.Sci. 9, 256–278.

KARP, R. M. 1972. Reducibility among combinato-rial problems. In Complexity of Computer Com-putations, R. E. Miller and J. W. Thatcher, Eds.Plenum Press, New York, 85–103.

KEARNS, M. 1990. The Computational Complexityof Machine Learning. M.I.T. Press.

KRUSKAL, J. 1956. On the shortest spanning sub-tree of a graph and the traveling salesman prob-lem. In The American Mathematical Society.Vol. 7, 48–50.

LAPORTE, G. 1988. Location-routing problems. InVehicle Routing: Methods and Studies, B. L.Golden and A. A. Assad, Eds. 163–197.

LAPORTE, G., NOBERT, Y., AND PELLETIER, P. 1983.Hamiltonian location problems. European J.Oper. Resear. 12, 82–89.

LEWIS, J. M. AND YANNAKAKIS, M. 1980. The node-deletion problem for hereditary problems is NP-complete. J. Comput. Syst. Sci. 20, 219–230.

LOVASZ, L. 1975. On the ratio of optimal integraland fractional covers. Discr. Math. 13, 383–390.

LUND, C. AND YANNAKAKIS, M. 1993. The ap-proximation of maximum subgraph problems.In 20th International Colloquium on Au-tomata, Languages and Programming. Lec-ture Notes in Computer Science, vol. 700. 40–51.

MONIEN, B. AND SHULTZ, R. 1981. Four approxima-tion algorithms for the feedback vertex set prob-lem. In 7th Conference on Graph Theoretic Con-cepts of Computer Science. 315–390.

MONIEN, B. AND SPECKENMEYER, E. 1985. Ramseynumbers and an approximation algorithm forthe vertex cover problem. Acta Inform. 22, 115–123.

NEMHAUSER, G. L. AND TROTTER, L. E. 1975. Vertexpackings: structural properties and algorithms.Math. Programm. 8, 232–248.

NICHOLSON, T. T. J. 1966. Finding the shortestroute between two points in a network. Comput.J. 9, 275–280.

RAVI, R. AND KLEIN, P. 1993. When cycles collapse:A general approximation technique for con-strained two-connectivity problems. In 3rd Con-ference on Integer Programming and Combina-torial Optimization. 39–56.

ROSENKRANTZ, D. J., STEARNS, R. E., AND LEWIS, II,P. M. 1977. An analysis of several heuristicsfor the traveling salesman problem. SIAM J.Comput. 6, 3, 563–581.

SLAVıK, P. 1997. Improved performance of thegreedy algorithm for partial cover. Inform. Pro-cess. Letters 64, 5, 251–254.

SPIEKSMA, F. C. R. 1999. On the approximability ofan interval scheduling problem. J. Schedul. 2, 5,215–227.

WEST, D. AND SHMOYS, D. 1984. Recognizing graphswith fixed interval number is NP-complete. Dis.Appl. Math. 8, 295–305.

WILLIAMSON, D. P. 2002. The primal dual methodfor approximation algorithms. Mathemat. Pro-gramm. (Series B) 91, 3, 447–478.

WILLIAMSON, D. P., GOEMANS, M. X., MIHAIL, M., AND

VAZIRANI, V. V. 1995. A primal-dual approxi-mation algorithm for generalized Steiner net-work problems. Combinatorica 15, 435–454.

Received March 2003; accepted November 2004

ACM Computing Surveys, Vol. 36, No. 4, December 2004.