The Maximum Concurrent Flow Problem

Size: px
Start display at page:

Download "The Maximum Concurrent Flow Problem"

Transcription

1 The Maximum Concurrent Flow Problem FARHAD SHAHROKHI University ofnorth Texas, Denton, Texas AND D. W. MATULA Southern Methodist University, Dallas, Texas Abstract. The maximum concurrent flow problem (MCFP) is a multicommodity flow problem in which every pair of entities can send and receive flow concurrently. The ratio of the flow supplied between a pair of entities to the predefined demand for that pair is called throughput and must be the same for all pairs of entities for a concurrent flow. The MCFP objective is to maximize the throughput, subject to the capacity constraints. We develop a fully polynomial-time approximation scheme for the MCFP for the case of arbitrary demands and uniform capacity. Computational results are presented. It is shown that the problem of associating costs (distances) to the edges so as to maximize the minimum-cost of routing the concurrent flow is the dual of the MCFP. A path-cut type duality theorem to expose the combinatorial structure of the MCFP is also derived. Our duality theorems are proved constructively for arbitrary demands and uniform capacity using the algorithm. Applications include packet-switched networks [ 1, 4, 81, and cluster analysis [ 161. Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems-computations on discrete structures; routing; G.2.2 [Discrete Mathematics]: Graph Theory-graph algorithms; network problems; path and circuit problems General Terms: Algorithms, Experimentation, Theory Additional Key Words and Phrases: Concurrent network flow, cut saturation, duality theorems, multicommodity flow, network partitioning, polynomial-time approximation scheme, primal-dual algorithms, routing in networks, throughput I. Introduction The single commodity flow problem has a rich theory and many applications in operations research and combinatorics. The original flow-augmentation algorithm developed by Ford and Fulkerson [7] has all of the following features: (i) it identifies a maximum flow value and flow assignment achieving that value, (ii) it identifies a minimum capacity cut that contains edges saturated under any optimal solution, (iii) it provides a proof of the max-flow min-cut theorem. Authors addresses: F. Shahrokhi, Department of Computer Science, University of North Texas, Denton, TX 76203; D. W. Matula, Department of Computer Science, Southern Methodist University, Dallas, TX Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission ACM l/90/ $01.50 Journal of the Association for Computing Machinery. Vol. 37, No. 2, April pp

2 Maximum Concurrent Flow Problem 319 The elegance of this approach is in the understanding of the structure of the underlying flow problem provided by the interpretation of the dual problem (the min-cut problem) that is implicitly solved. The original labeling algorithm to solve the problem in [7] was not polynomially time bounded, but a series of progressively faster polynomial-time algorithms have been devised for the problem (see [25]). Unfortunately, not much of the structure attendant to the single commodity flow problem has been discovered for multicommodity flow problems. More specifically, no efficient labeling algorithm is known to solve any multicommodity flow problems except for the cases in which the number of commodities is two [lo] or in which certain strong planarity conditions exist on the underlying graph [ 5, 14, 231. Our results here describe a multicommodity flow problem that is shown to possess many features analogous to the single commodity flow problem. The maximum concurrent flow problem (MCFP) [ 151 is a multicommodity flow problem in which all pairs of entities can concurrently send or receive flow and is an optimization version of the feasibility problem in multicommodity flows [ 11, 181. The MCFP is best motivated by a variation of the routing problem in packet-switched telecommunication networks, for example, see [ 11, [4], and [8]. Informally, consider a network of entities (cities, computers, etc.) in which there exists a demand for flow between all pairs of entities. The flow is sustained through channels with certain capacities. For the MCFP, it is desired to assign flow to each route of the network, such that the ratio of the flow supplied between each pair of entities to the demand between that pair (termed the throughput) is the same for all pairs of entities. This flow assignment must respect the capacity constraints; that is, the total flow through a channel should not exceed its capacity. The MCFP is to assign flow to the routes such that the throughput is maximized. A flow rerouting approximation algorithm for the MCFP was introduced in [3] and also employed in [26]. An extension of this algorithm in [22] was shown computationally to provide for the solution of much larger problems than could be solved by specialized linear programming codes [ 131. No complexity results were presented in [2], [22], or [26]. The principle result of this paper is to prove that an appropriately modified version of the flow rerouting algorithm for the MCFP allowing arbitrary demands with uniform capacity is a fully polynomialtime approximation scheme. In this paper we also pursue the duality theory of the MCFP. The use of distance functions in the formulation of the dual of certain multicommodity flow problems was initially suggested by Ford and Fulkerson [6], and was a key feature of the supply consumption theorem for the feasibility problem [ 181. Our first duality theorem extends this dual distance relationship of multicommodity flow. We show that the maximum throughput of an MCFP can be alternatively obtained by minimizing (over all distance functions) a distance-derived upper bound on the throughput. As for a combinatorial dual for the MCFP, recall that Menger s theorem (see [9]) exhibits a fundamental path-cut duality for standard graph connectivity. Ford and Fulkerson extended this combinatorial path-cut duality to single-commodity network flow in their max-flow min-cut theorem [7]. Our effort to derive a natural combinatorial path-cut dual for the MCFP is embodied in a second duality theorem. We formalize the notion of the density of a k-partite cut, and then derive the following theorem: The maximum throughput of any concurrent flow equals the minimum density of any k-partite cut. Both of our duality theorems are proved constructively for the uniform-capacity MCFP case using our algorithm.

3 320 F.SHAHROKHIANDD.W.MATULA The MCFP is formally defined in Section 2. Two linear programming (LP) formulations of the MCFP are presented. From established LP theory, the MCFP is shown to be solvable in polynomially bounded time. Certain combinatorial properties of the MCFP are explored, and two convenient upper bounds on throughput are derived. In Section 3, we give our fully polynomial-time approximation scheme for the MCFP with arbitrary demands and uniform capacity. Computational results indicate that the algorithm is etlicient in practice. Finally, Section 4 is devoted to the duality theory of the MCFP. 2. The Maximum Concurrent Flow Problem (MCFP) We assume throughout this paper that graph G = ( V, E) is undirected and has vertex set I/= (1, 2,..., n 1. We denote by P, the set of all paths containing the edge e, for each edge e E E, and by Pij the set of all paths between end vertices i, j (called ij paths), for each distinct pair of vertices i, j E I. Also let P denote the set of all nontrivial paths in G. A capacity function on G is a function C: E * R+, where R+ is the set of nonnegative reals. A demand function D on G is a function D: V x V + R+, such that D(i, j) = D(j, i) and D(i, i) = 0 for all i, j E V, where D(i, j) > 0 for some i, j E V. A concurrent flow of throughput Z in G is a functionf: P ---, R+ such that (i) CPEPijf(p) = ZD(i, j) for all distinct pairs of vertices i, j E Vand (ii) Cpep,f(p) 1 C(e) for every edge e E E, where D and Care the given demand and capacity functions on G. For convenience of notation we extend the domain of a concurrent flowfto P U E using f(e) = Ep f(p) for all e E E. e A maximum concurreptflow is then a concurrent flow function having the largest attainable throughput Z. The maximum concurrent j7ow problem (MCFP) is to determine a maximum concurrent flow and the maximum throughput 2. For any particular concurrent flow functionf; we term the paths assigned nonzero flows active paths forf; and those edges e for whichf(e) = C(e) edges saturated by f: An edge of G is critical if it is saturated by every maximum concurrent flow. The established literature on linear programming and multicommodity network flow provides several immediate observations about the solution of an MCFP, and the active paths and saturated edges corresponding to particular maximum concurrent flows. First note that the MCFP can be formulated as a network linear program in either the edge-path form or the node-arc form. 2.1 EDGE-PATHFORMOFTHE MCFP. Maximize Z subject to LP,~~(P) - ZD(i, j) = 0 for all distinct i, j E V, (2.1) { C,H+J(P) 5 C(e), where D, C are the demand and capacity functions on G = ( V, E). 2.2 NODE-ARCFORMOFTHE MCFP Maximize Z subject to hf+(i(l) (.f;k - &> = Z Cj D(i, j) if I = i, -ZD(i >,) otherwise, for all edges e = lk in E, for all i, I E V, (2.2)

4 Maximum Concurrent Flow Problem 321 where fh, is the flow of the commodity i on the edge kl from k to 1 for all i, k, I E C/and N(I) is the set of vertices adjacent to 1, for all 1 E V. Observation 1. The MCFP is solvable in polynomially bounded time. Furthermore, the uniform demand MCFP is solvable by a strongly polynomial algorithm. Reason. The linear program (2.2) is solvable in polynomially bounded time by algorithms of either Khachiyan or Karmarkar [ 121. For uniform demand, the MCFP falls into a class of combinatorial linear programs for which Tardos exhibits a strongly polynomial-time solution [24]. Specifically, this latter case means the solution of (2.2) is obtained in polynomially bounded time where the number of arithmetic operations is polynomially bounded in ] V] + ] E ] and independent of the size of the numbers occurring as capacities. The node-arc solution of (2.2) is readily transformed in (strongly) polynomial time to an edge-path solution of (2.1) yielding at most ] T/J ] E ] active paths, so both the maximum throughput and a maximum concurrent flow are obtainable in polynomial time. Observation 2. For any MCFP there is a maximum concurrent flow with at most ( 2 ) + ] E ] active paths, that is, an average of at most two active paths per pair of vertices. Reason. Clearly an optimal basic solution to (2.1) provides a solution where at most ( 2 ) + ] E ] paths are active. Note that since any routing table requires at least one route per vertex pair, this observation affirms the existence of a solution to the MCFP with reasonably practical size in the resulting routing table. Two convenient upper bounds on throughput are given in the following lemma. One bound derives from determining flow across the most constraining cut. Notationally, the cut (A, 2) is the set of edges between A and 2 = V - A, where CM 3 = L(A,Z) C(e) and WA, 2) = CieA,jez D(i, j) denote, respectively, the capacity and demand across the cut. Another bound on throughput is obtained from relating the total available capacity to the total demand. The most restrictive form of this latter constraint is obtained by weighting the capacities and demands by a distance function, with the distance defined on the edges, vertex pairs, and paths as follows. A distance function on G = (V, E) is a function d: E + RC such that d(e) > 0 for at least one edge e, where the domain of d is extended to E U V X I/ U P by d(p) = C 44 for all p E P, eep d(i, j) = $;W(P)l for all i, j E V. A shortest distance ij path p E Pij has d(p) = d(i, j). We denote by Z, the distance ratio of capacity to demand for distance d, as given by zd = LE d(ek (e) J&j d(i, jp(i, j) LEMMA 2.1. Let G, D, and C be an instance ofthe MCFP. Then the throughput Z of any concurrent flow f satisfies (i) [Cut Upper Bound]. For any cut (A, 2) in G with C;EA,jEz D(i, j) > 0, (2.3) z I C(A, = CeE64,.z~ C(e) D(A, A) C;EA,jEZ D(i,j) (2.4)

5 322 F.SHAHROKHIANDD.W.MATULA (ii) [Distance Upper Bound]. For any distance don G with C;<j d(i, j)d(i, j) > 0, zrz,= LEE d(ejc(ej C;<, 46 jjd(i, jj PROOF OF (i). The total flow supplied between A and 2 is Z C;EA,jEz D(i, jj, while the total capacity available between A and 2 is CeEcA,z) C(e); therefore, (2.5) or Z5 c &A,.? C(e) CiEA,jEx DO, jj. PROOF OF (ii). Consider the expression CpEP d( p)f( p j. Then, C d(pjf(p) 2 C 46 j) E,,f(p) = Z C d(i, j)d(i, j). PEP i<j i<j Furthermore, It follows that C d(pjf(p) = & 44.Ecp f(p) 5.& d(e)c(e). PEP e z ( &E d(e)c(ej = z Ci<j d(i, j)d(i, j) d Q.E.D. Gerla [8] observed and employed the cut upper bound of Lemma 2.1 in his development of the cut saturation algorithm for packet-switched network routing (see also [4]). Unfortunately, the cut upper bound is subject to an inherent gap [ 15, 171. Specifically, the MCFP for the graph & with unit capacities on the edges and unit demands between all vertex pairs is readily seen (by employing d(e) = 1 on each edge in (2.5)) to have an optimal throughput of 3/7 with a lowest minimum-cut upper bound (over all cuts) of l/2. The possibility that an inherent gap can exist in (2.4) and that removal of the saturated (critical) edges may yield a partition into more than two parts means that less than complete solutions to the MCFP are obtainable by methods (e.g., [2, 81) focusing on a saturated-edges partition into two parts. Our methods derive from the more general Distance Upper Bound (2.5). We call d an optimal distancefunction for the MCFP whenever the corresponding distance ratio Zd equals the maximum throughput Z. Our results in Sections 3 and 4 are specific to MCFPs with uniform capacity and are sufficient to prove that an optimal distance function always exists for these instances. A further aspect of the duality between maximum concurrent flows and optimal distances valid for all MCFPs is given in the following lemma. LEMMA 2.2. f is a maximum concurrent flow and d is an optimal distance function for a given MCFP ifand only ifboth (i) all active paths for f are shortest paths under d, and (ii) edges assigned nonzero distance by d are saturated byf:

6 Maximum Concurrent Flow Problem PROOF. Assuming (i) and (ii) we have 323 Z C d(i,jp(i, j> = C 4kj) C f(p) i<j icj p-t, so then = C d(p)f(~) = C d(e) C f(p) = C d(e)c(e), PEP &E PEP, FGE z = LEE d(ek(e) Ci<j d(i, j)d(i, j) = zd confirming Z to be the maximum throughput, f to be a maximum concurrent flow, and d to be an optimal distance function. On the contrary, if(i) is false, then and if (ii) is false, then C 4L j).ecp f(p) < pzp d(~)f(p), i<j u C 44.Fp f(p) < EE 4dC(d, CEE e so if either (i) or (ii) is false, the throughput Z forfis strictly less than the distance ratio Zd for d. If 2 is the maximum throughput, then either Z < 2 and f is not a maximum concurrent flow, or Z < Zd and d is not an optimal distance function. Q.E.D. COROLLARY 2.3. Any optimal distancefunction dfor an MCFP assigns nonzero distances only on critical edges. PROOF. Assume the optimal distance function d assigns nonzero distance to some noncritical edge e. There must exist some maximum concurrent flow fe that does not saturate e since e is not critical. But these properties forfe and d contradict Lemma 2.2, verifying the corollary. Q.E.D. It is sometimes more convenient to treat maximizing the throughput of the concurrent flow as minimizing the utilized capacity to realize the demands. For a given G, D and C, a concurrent flow f: P -+ R+ of capacity utilization u in G satisfies Cpgp,j f(p) = D(i, j) for all i, j E Vand Cpsp, f(p) 5 UC(e) for all e E E. The minimum capacity utilization problem (MCUP) is to find the smallest capacity utilization u* achieved by a concurrent flowf: Observe that iff is a solution to the MCUP with the capacity utilization u *, then jdefmed by j (p) = f(p)/u* for all p E P is a maximum concurrent flow of throughput 2 = l/u*. 3. An Approximation Algorithm for the Uniform Capacity MCFP Although the linear programming technique for the MCFP (in Section 2) is polynomially bounded, it is practically ineffective on all but very small problems. The edge-path formulation of the MCFP can be solved using linear programming techniques that use special network structures [ 131. Such methods store the LP matrix implicitly. However, ( I 2 I ) + 1 E ] rows and at least as many columns must be explicitly stored. Thus, LP techniques are typically limited to problems of at most 40-odd vertices [20].

7 324 F. SHAHROKHI AND D. W. MATULA We now present an c-approximate algorithm [ 191 to solve the MCFP with uniform capacity for any t > 0. In this algorithm, there is an implicit need for very high precision computation. We give Algorithm R for analysis of the complexity, assuming sufficient precision. We have introduced in our implementation slight refinements to Algorithm R for finite precision computation. Regarding approximate solutions to the MCFP, we shall term fan t-optimal concurrent flow if its throughput 2 satisfies (Z - 2)/Z 5 t. We shall further term d an t-optimal distance function if its distance ratio & satisfies (Z, - 2)/Z, 5 t. Algorithm R [Reroute]. The input to the algorithm is a nontrivial connected graph G, a demand matrix D, constant capacity function C: E + c and 0 < t I 1. The output is an c-optimal concurrent flow 7 of throughput z and an e-optimal distance function d with distance ratio Z, such that (Z - 2)/Z I 6 and (Z, - z)/z, 5 E where 2 is the optimal throughput. Without loss of generality, we assume that C;<j D(i, j) = 1 and c = 1. The reader will note that these assumptions implyz2 1. Rl. [Determine the initial feasible solution.] Set d(e) = l/] E I for all edges e E E. For each pair of distinct vertices i, j E V, set f(p) = D(i, j) for one shortest distance ij path p. Setf(e) = CpEP,f(p) for all e E E. Set P = (p If(p) > 0). Set u. = e2/32 ] E I 3. (Here and in subsequent steps, we shall maintain CrEE d(e) = 1 and f(p) = 1. We further maintain for p E P that either f(p) 2 go or izp= D(i, j) < go for p an ij path.} R2. [Compute new distance function and find shortest paths.] Set d(e) = ewk2 I E I l4fcen L-Z exp((2 I E I */4f(e >) for all e E E. For each pair of distinct vertices i, j find a shortest distance ij path and the distance d(i, 3. R3. [Compute the throughput, distance upper bound, and check for termination.] Set f* = max{f(e) 1 e E El, 2 = l/f*, and Zd = l/xi<, d(i, j)d(i, j). If (Zd - z)/zd 5 6, then compute the concurrent flow 7 with the throughput z using Y(p) J$.$) for all paths p with f(p) > 0. Output 7, Z, d, and Zd and halt. {Note then that (Z - 2)/Z = 1 - z/z z/z, = (Zd - Z)/Z, 5 E. 1 R4. [Reroute flow.] For each i, j E V, denote by pi a particular active path between i and j whose length d(pij) computed using the edge distances d(e) is at least as great as any of the active paths (i.e., those currently assigned nonzero flow) between vertices i and j. Then determine a particular vertex pair k, 1 E Vsuch that d(pk ) - d(k, 1) = max(d(p j) - d(i, j) I i, j E V, D(i, j) 1 ao]. For this vertex pair k, 1 E V, denote by p * a particular shortest path between k and 1 (thus, d(p,) = d(k, I)), and let the notation pk - p.+ indicate those edges in pk and not in p,. Then set d* = &p~~--p. d(e) and d, = CeEp,+ d(e). Set d* fj = qg 1% d, *

8 Maximum Concurrent Flow Problem 325 Iff(pk ) 2 u + uo, then reroute u units of flow from pk to p* and set P = P U (p, ); otherwise, reroute all the flow on pk to p* and set P = P U (p, 1 - {p ). Update the flow valuesf(pk ),f(p*), andf(e) for edges in p*, pk. Go to R2. (Note that d* gives the sum of distances on edges whose flows are to be lowered and d, gives the sum of distances on edges whose flows must be raised.) The relationship between the MCFP and the MCUP is used by Algorithm R. In fact, Algorithm R solves the MCUP by supplying the demand between all pairs (step R 1) and assigning much larger distances to the edges hosting larger flows (step R2). This will make the paths containing highly utilized edges less attractive for future flow assignments, since rerouted flow is always sent on a shortest distance path. Step R3 computes a concurrent flow and its throughput using the current utilization factor which isf*. Step R4 is the most important part of the algorithm. In this step, the algorithm generally reduces the flow on highly utilized edges and increases the flow on poorly utilized edges. More important, it is not claimed that the computedf* should monotonically decrease with each cycle through steps R2-R4. Rather the result that Algorithm R eventually (and efficiently) achieves an acceptably low utilization factor without the possibility of cycling is proved in Theorem 3.3. We first obtain two lemmas. LEMMA 3.1. Let f and d be the existing flow and distance functions at R2. Then P - p~pfb)4p) = f - ezefcev(e) 5 &, wheref* = max(f(e) I e E El. PROOF. Observe that CpEP f(p)d(p) therefore = CeEE f(e)d(e) and CCE~ d(e) = 1, The nonzero terms of the right-hand side of (3.1) must correspond to e E E with f(e) c f*, for which Thus d(e) = ew((2 I E I /4f(e>) LTE w-%(2 I E I */4f(e )> 1 5 I E I MP - f(e)>) I 5 (2 I E I */t)(f* - f(e)) * f* -f(e) CEE ' (p - f(e))d(e) 5 ee~,&=~* ((2 I E I */W* - f(e)>) implyingf* - CpEPf(p)d(p) I 42 1 E 1, which proves the lemma. QED.

9 326 F. SHAHROKHI AND D. W. MATULA LEMMA 3.2. Assume R has not terminated at R3. Then in R4 for pk, d*, d,, k, I, U, we have (i) d* - d, = d(pk ) - d(k, I) > c/31 E 1 and (ii) (T -z 2ao, where u. is defined as in R 1. PROOF. Assume that R has not terminated and that d* - d, = d(pk ) - d(k, I) 5 t/3 1 E I. We show that, for Zd and z as computed in R3 of the current iteration, we have (Zd - z)/z, 5 6. This will, however, contradict the assumption that R has not halted. We proceed as follows: p;pf 04r4 = r<i c p&f(p)d(p) + i;j P;ptjf(p)d(p)* D(l.jkq W,i)<e3 But d(pk ) - d(k,,) 5 c/3 1 E 1 implies that d(p) - d(i, j) 5 e/3 I E I for any active z j path p with D(i, j) I uo. Thus, icj D(i,j)BBrJ C p~ijf04a) = E icj D(i,j) O,J 5 izj d(i, jw, j> + C W, 3 - i<j 3l El = C d(i,jpg,j) + 3,cEl. i<j (3.2) Note that for any i, j E V with D(i, j) < u. the rerouting procedure in R4 guarantees that there is exactly one active jj path and that this path hosts D(i, j) < u. units of flow. Also, d(p) zs- 1 for all p E P. Therefore C pz,,jfw(p) 5 C, &f(p) 5 i-cj i<j 8, D(i,iFq D(i.Wo0 (3.3) Using (3.2) and (3.3), we get c2 C f(p)d(p) 5 C 44 jp(i, PEP i<j j) + fq + ~ 3w1 < ++d 2 IA (3.4) Also, by Lemma 3.1, p~pfw(p) rf* -& Combining this and (3.4) we have L+z.f*=& zd IEI Z (3.5) However, CeEE d(e) = 1 for any distance function constructed by R. Therefore, using the distance ratio in Lemma 2.1, we have l/z 2 l/z& Thus, (3.5) implies L+ E & - z -z=z- (3.6) & IEl z.& Or?-z,=z &

10 Maximum Concurrent Flow Problem 327 Note that assigning a distance of 1 to all edges and applying Lemma 2.1 will yield a distance ratio which is at most ] E 1. Thus, Z I Z I I E) and (3.6) implies (Z, - Z)/Zd 5 t, which is the desired contradiction for part (i). To prove (ii), note that 0 < d, 5 1 and by part (i) d* - d, 2 c/3 I E I. Thus, d*/d, = 1 + (d* - d, )/d, 1 1 f 43 I E 1, implying c a=qp -&)z 16;El,=2q,. Q.E.D. An t-approximate algorithm with computing time polynomially bounded both in problem size and 1 /E is called a fully polynomial-time approximation scheme. THEOREM 3.3. Algorithm R is a fully polynomial-time approximation scheme and terminates with an e-optimal concurrent flow and an t-optimal distance function. Furthermore, the concurrent flow constructed at any iteration of R does not utilize more than 0( I E I 3/e2) active paths. PROOF. Lemma 3.2 implies that in R4 u 2 coo; therefore, the rerouting procedure in R4 guarantees that in any iteration of the algorithm each active ij path has at least u. units of flow on it, unless D(i, j) < co. Since the sum of demands for all pairs is unity, it follows that there are at most (l/go) + ( 2 ) = 0( ] E ( 3/c2) active paths at any iteration of R. We now show that R terminates. Let Si denote J&E exp((2 I E I /c) f(e)) in iteration i of R, where f is the concurrent flow function as in step R2. The idea underlying the proof is to show that Si+r/Si is always less than some fixed positive constant (which is less than unity), yielding convergence (as we will show) in polynomially bounded time. Consider pki, p *, d*, d, as they are defined in R4. We consider two cases derived from whether part or all of the flow is rerouted from pk to p*, and obtain a general upper bound on Si+,/Sj. Case 1. [Partial rerouting from pk to p *.] This corresponds to f(pk ) z g + uo, so that u units of flow are rerouted from pk to p*. This then increases the flow on the edges of p * - pk by u and decreases the flow on the edges of pk - p* by u, all other edge flows remaining the same. Hence, employing functionsj; d as existing from step R2, si - s,,, = ILw-~, si ew((2 I E I 2/c)f(e)) si + CrEp,-~k/ w((:! I E I 2/t)f(e)) CrEpk~-p, wu C1jEp,--pk~ ww si I E I 2/c)(f(e) - a)) si I E I 2/E)(f(e) + a)) si = d* + d, - exp(-2 f 2u)d* - exp(f)d,. (3.7)

11 328 F. SHAHROKHI AND D. W. MATULA However, exp((2 ] E ] /t)o) = m. Therefore, (3.7) implies si - si+k Si =d*+d*+yi*-(~yd* = d* + d, - + < 5 2 and since R has not halted, by Lemma 3.2, d* - d, > 43 ] E 1. Thus, (3.8) implies (3.8) simsi+,, E2 Si - 36IEl* Case 2. the flow on pk is rerouted to p *. As in case 1, we have Si - Si+l Si (3.9) [Total rerouting from pk to p*.] In this case f(pk ) < u + u. and all = d* + d, - exp -2 1 E;I/(Pk ))d* _ exp(2 1 EI;f(Pk ))d,. c3.10j Treat the right-hand side of (3.10) as a function of the flow to be rerouted and observe that for any fixed d*, d, the function F(x) = d* + d, - exp (- Iflix)d* _ exp(??)& is monotonically increasing for x E [0, ~1 and monotonically decreasing for x E [a, 2~1; furthermore, for all x E [0, a], F(u + x) = F(u - x). Also, the rerouting procedure in R4 implies that u. 5 f(pk ) < u. + u. Thus, F(f(pk )) I min(f(uo), F(uo + u)). But by Lemma 3.2, u 2 2uo, implying that u - u. 1 uo, which implies that F(uo + u) = F(a - uo) 2 F(uo). Therefore, Si - Si+l Si = W(Pk >) 2 Rue) Considering u > uo, we have (d* - (d* - m = J* - d,)/2, sz by Lemma 3.2 = exp(2 I E I *UO/C) - 1 )(d* - exp( ] t 2uo)d,). (3.11) exp(2 I E I *uo/~ d* - exp (3.12) Also, exp(2 1 E I *uo/t) - 1 )= 1 -exp(-21f12uo) exp(2 I E I *u0/4 = 1 -exp -2IEl* t* t 32lE( = 1 -exp(*)zk(l-$&). (3.13)

12 Maximum Concurrent Flow Problem 329 It follows from (3.12) and (3.13) that Si-Sj+l 1 C * si Tic0 JEl. (4 Note that (3.14) and (3.9) indicate that in either case 1 or case 2, si+l -<I C2 100 IEl si i ) for all i I 1. Now assume that R did not halt after m iterations. Then (3.14) (3.15) For any concurrent flow f existing in any iteration of R, 0 I f(e) P 1, for all e E E. Thus, S, 5 ( E I exp(2 I E I /t) and S m+-l L I E I. Therefore, (3.15) implies and -2IEl* m 5 t log(1 - (l/loo)(~/l E I) 21E12 < t(l/loo)(t/l E I)* = 200lEl t3. (3.16) Note that R2 and R4 are the most expensive steps of R. At any iteration, R2 and R4 require 0( I 1/l ) and 0( I VI I P I ) time, respectively, where P is the set of all active paths in this iteration. But I P I = O() E) /t ) and R halts after at most 0( 1 E I /e3) iterations. Thus, Algorithm R has time complexity O( 1 I 1 ) E I /c ). Q.E.D. Observe in the proof of Theorem 3.3 that it is the quantity which experiences a guaranteed monotonically decreasing behavior through successive cycles of steps R2-R4 of Algorithm R. This fact confirms that successive flow functions cannot be identical even though some successive values off* may be identical. According to our analysis the worst case behavior of Algorithm R, although polynomially time bounded, does not look too promising. We feel that a better upper bound on the worst-case complexity probably exists. But of greater practical significance is the improved efficiency observed for our implementation over a wide selection of applications. PERFORMANCE OF ALGORITHM R. A slightly modified version of R was implemented using the Pascal language on a VAX 1 l/780 with the UNIX 4.2 operating system. In order to avoid overflow, the distance function was computed using d(e) = ew(df(e) - P>) LTE ew(4f(e ) - YV where f* = max( f(e) I e E EJ. In theory, for any CY 1 2 I E I */t, the algorithm

13 330 F. SHAHROKHI AND D. W. MATUL.A Graph K4.6 K 8.12 K K32,48 KSO.50 Q3 Q4 ii random random random TABLE I. PERFORMANCEOFTHEFLOWREROUTINGALGORITHMS No. of vertices No. of edges Avg no. of active Avg length CPU paths of active time Upper per pair paths set z bound I I converges to a desirable t-optimal solution, but large values of LY will cause underflow in finite precision computation. Our test results, however, indicate that small values of (Y(which do not cause underflow) will also result in convergence to reasonably good approximations. In our implementation the value of a is initially selected such that d(e) > for all e E E. If the convergence rate is slow, however, the value of (Y is increased. The values for (Y were observed to be in the range of 0.5 to 50 for all test cases in Table I. We ran our implementation on a wide range of data and the results summarized in Table I are selected from those described in [22]. Graphs 1 through 8 are from the current literature [3, 261. Since these benchmark cases did not go beyond graphs of 31 vertices, we supplemented them with sequences of bipartite and random graphs, and cubes. The capacity and demand are both unit functions for all cases in Table I. Our results in Table I show a significant improvement in the size of the problem solved compared to [3], [20], and [26], which only solve problems of size at most 40 vertices. Note that the random graph on 120 vertices and 3598 edges in Table I would yield a formidable linear program (node-arc or edge-path) of some 10,000 rows and at least 10,000 columns. Algorithm R took only 20 minutes of VAX time to solve this case. The upper bounds given in Table I are each the better of the computed distance upper bound 2, and a determined cut upper bound when available as per Lemma 2.1. As a final remark in this section, we compare the results summarized in Table I to the statement of Observation 2 in Section 2, by observing that the average number of active paths per pair of vertices is in all cases at most Duality Theory for the MCFP Various extensions of the max-flow min-cut theorem to multicommodity flow problems have been discussed by previous researchers. Ford and Fulkerson

14 Maximum Concurrent Flow Problem 331 employed a dual distance function for a multicommodity flow problem in an early application of this technique [6]. A duality result analogous to that of the single commodity flow problem for the 2-commodity flow problem was presented in [lo]. Regarding duality in the feasibility problem for multicommodity flow, an initial significant result was the supply consumption theorem of Onaga [ 181: Given the source-sink pairs (Si, ti), positive demands D(s,, ti) i E Q, and capacity function C, the demands are realizable iff for any distance function d on G, CeGE C(e)d(e) 2 CiEo D(si, ti)d(si, ti). hi [ 1 I] gave a concise proof of this theorem using the duality theory of linear programming. He also showed that it is sufficient to consider a finite number of inequalities involving only bounded integral values for distances. We now shall give two duality theorems for the MCFP. The first continues the development of associated distance functions and may be considered a natural generalization of Onaga s realizability result to the arena of dual optimization. For the case of uniform capacity, our result is shown constructively (in the limit) using our approximation algorithm. THEOREM 4.1 [Max-flow Min-distance ratio Theorem]. Let G, D, represent an instance of the MCFP with uniform capacity c on each edge and pn optimal throughput 2. Then where 2 = mini& 1 d is a distance function on G), Zd = c CeEE d(e) Ci<j d(i, j)d(i, j) PROOF. For simplicity and with no loss of generality assume that c = 1, Ci<j D(i, j) = 1, and CpEE d(e) = 1 for all distance functions d. Let S be the set of all distance ratios. By Lemma 2.1, Z is a lower bound of S. The correctness of Algorithm R implies that, for any e > 0, there exist concurrent flow and distance functions 7 and d, respectively, such that Z 2 Z 2 Z,-( 1 - t). Thus, Z = inf S. To complete the proof we show that inf S E S. Denote the edges in E by el, q,..., elel and let X be the subset of the Euclidean space RIEl with CXi = 1 for all (Xl, x2, **a, xl El ) E X, Xi z 0 for all i. Consider the function f: X + R by fh, x2,..., xl El ) = Ci<j d(i, j)d(i, j), where d is the distance function identified by assigning distance xi to the edge ei, i = 1, 2,..., ] E ]. It is readily seen that f is a continuous function from the compact metric space X to the metric space R+. Thus sup f(x) E f(x), implying that inf S = l/sup(f(x)) and that inf S E S. Q.E.D. Our second duality theorem is more revealing and exposes the combinatorial structure of the MCFP. Recall that the dual for the single commodity flow problem is characterized by a cut, in particular by the max flow-min cut theorem [7]. We now exhibit the cut structure of the MCFP through its dual relation to a unique partition into k 2 2 parts, where the value of k is determined by the instance of the MCFP. Let G = ( V, E) be a graph; denote by (A,, AZ,..., Ak) for k 2 2, the set of all edges in G whose end vertices are in distinct elements of the partition (A,, AZ,..., Ak) of V. We call (A,, AZ,..., Ak) a k-partite cut in G. The following theorem is an extension of [ 151 and explores the structure of the critical edges, that is, those edges that are necessarily saturated by any maximum concurrent flow. We point out that the following result holds for arbitrary capacities and demands.

15 332 F.SHAHROKHI AND D.W.MATUL,A THEOREM 4.2. Let G, D, C be an instance of the MCFP. Denote by fa maximum concurrent flow, by E,, the set of all saturated edges under f, andfinally by E,, the set oj critical edges. Then (i) G - E, is disconnected and (ii) E, is a k-partite cut, for some k 2 2. PROOF. Assume, to the contrary that G - E, is connected. Then there is a spanning tree T of G such that none of the edges in T are saturated under f We can increase the flow on some path p E Pij by ED(i, j) for all i, j E I/ and some c > 0, concurrently. This contradicts the optimality of 7 and proves (i). To prove (ii) note that if E = E,, then the result is trivially true. Assume that E # E,, then for every e E E - E, there must be a maximum concurrent flow function fe such that f,(e) < C(e) (i.e., fe does not saturate e, since e is not critical). Define 7: P + R+ by yyp) = LEE-E, fp(p) IEI - IEcl * Then 7 is a maximum concurrent flow in G only saturating the edges in E,. By part (i), G - E, is disconnected. Let A,, AZ,..., Ak denote the vertex sets of the components of G - E,. We have (A,, AZ,..., Ak) G E,. Assume that (A,, AZ,..., Ak) # E,; let e = tl E E, - (A,, AS,..., Ak). Then vertices t, 1 are in Aj for some j, 1 I j % k. Since Aj is connected, there is a tf path D (in A,) containing only unsaturated edges. Let c = mine,5 (C(e) - J (e)). Then t > 0. Let p E P, be an active mn path, m, n E V. There exists an mn path q such that q does not contain e, and every edge in q is either in p or p. Reroute min(c, f(p)] units of flow from p to q, maintaining the optimality of the new concurrent flow and contradicting the criticality of e, which proves part (ii). Q.E.D. From Theorems 4.1 and 4.2, we can now fashion a combinatorial duality relation between concurrent flow and k-partite cuts. Let G, D, and C represent an instance of the MCFP and let (A,, AZ,..., Ak) denote any k-partite cut of G. For 1 I i, j 5 k, let C(Ai, A,) denote the total capacity of all edges between Ai and A,, and let D(Ai, Aj) denote the total demand between vertices of Ai and Aj. Let den(a,, AZ,..., Ak) denote the density of the k-partite cut (A,, AZ,..., Ak) as defined by Clsi<jck WijC(Ai, Aj) den(a,, AZ,..., Ak) = min w Cisi<jsk wijd(a;, Aj) (4.1) where the minimum is over all symmetric distance functions w satisfying the triangle inequality Wij + Wj/ I Wi/ for all 1 5 i, j, 1~ k, where Crci<j5k w;jd(ai, Aj) # 0. Note that for any 2-partite cut (A, A) of G, the density is simply which is the expression for the cut upper bound in Lemma 2.1. Formula (4.1) generalizes the notion of density to k-partite cuts in a manner allowing us to formulate the following combinatorial duality theorem. In order to be consistent with Theorem 4.1, our proof here again is restricted to the case of uniform capacity. THEOREM 4.3 [Max-concurrent flow Min k-partite cut Theorem]. For any untform capacity MCFP, the maximum throughput of any concurrent jlow equals

16 Maximum Concurrent Flow Problem 333 TABLE II. ANALOGOU RESULTS IN THE THEORIES OF THE SINGLE COMMODITY NETWORK FLOW [7] AND THE CONCURRENT FLOW Objective Cut Inequality Properties Critical Saturated Edges Duality Theorem Proof/Algorithm Paradigm Single Commodity (Source-Sink) Flow Maximize value of sourceto-sink flow Plow value less than or equal to capacity of any cut Edges saturated by every maximum flow contain a minimum cut The maximum value of any flow equals the minimum capacity of any cut Plow augmentation proves duality and provides an efftcient algorithm Flow Type Concurrent (All Pairs) Flow Maximize throughput of concurrent flow Throughput less than or equal to density of any cut Edges saturated by every maximum concurrent flow constitute a k-partite cut The maximum throughput of any concurrent flow equals the minimum density of any k-partite cut Plow rerouting proves duality and provides an efticient algorithm the minimum density of any k-partite cut, and in particular, equals the density of the k-partite cut of critical edges. PROOF. Let G, D, and constant capacity C be an instance of the MCFP. By Corollary 2.3 any optimal distance function d assigns nonzero distance values only to critical edges, which by Theorem 4.2 compose the k-partite cut E, = (A,, A2, * *., Ak). Furthermore, an optimal distance function must clearly then ascribe the same distance d(u, v) for any u E A;, v E Aj for parts A;, Aj of E,. So we may set wij = d(u, v), and so determine W;j for all 1 I i, j 5 k, i # j, and from Theorem 4.1, then obtain den(a,, AZ,..., Ak) 5 2. Conversely, for any j-partite cut (A,, AZ,..., Aj), 2 I j P n, let w be a weight function minimizing (4.1). Now we may construct a distance function by setting d (e) = w (i, j) whenever the end vertices of e are in different parts Ai, Aj, i # j and d (e) = 0, otherwise. The shortest distance function extension of d in G to V X I/ yields d (u, v) 2 WQ for u E Ai, v E Aj, i # j, since w satisfies the triangle inequality. Furthermore, d (u, v) = wl: if some edge e E E joins a vertex Of Ai to a vertex of AI. If there are no edges between Ai and Aj, then C(Ai, Aj) = 0; hence, &GE d (e)c(e) = Cix;<jsk wbc(ai, Aj). Recalling d (u, V) 2 w,$ for u E Ai, v E Aj, i # j, we obtain w$ = d (u, v) since w minimizes the right-hand side of (4.1). Thus, den(ar, AZ,..., Aj) 2 & 1 2, and the theorem follows. Q.E.D. The form of Theorem 4.3 in our mind properly identifies the inherent path-cut duality in the MCFP, and illustrates the particular significance of distance as pertinent only between parts of the uniquely determined critical k-partite cut. We note that Theorem 4.3 can be readily extended by suitable linear programming arguments and shown to hold for arbitrary capacity and demand functions. Table II as extended from [ 151, summarizes the results for duality of the MCFP analogous to the important aspects of single commodity flow theory.

17 334 F. SHAHROKHI AND D. W. MATULA REFERENCES 1. AI-TAR, R. A Distributive Adaptive Multi-path Routing-Consistent and Conflicting Decision Making, 80/ 8 1, Aiken Computation Laboratory, Harvard Univ., Cambridge, Mass. 2. BIANCHINI, R. P., AND SHEN, J. P. Interprocessor traffic scheduling algorithms for multipleprocessor networks. IEEE Trans. Comput. C-36 (1987), BISWAS, J., AND MATULA, D. W. Two-flow routing algorithms for the maximum concurrent flow problem. In Proceedings of the ACM Fall Joint Conference. ACM, New York, 1986, pp BOORSTYN, R. R., AND FRANK, H. Large-scale network topological optimization. IEEE Communications (Jan. 1977), DIAZ, H., AND GHELLINK, G. Multicommodity maximum flow in planar networks (D-algorithm approach). CORE Discussion Paper No Center for Operations Research and Econometrics, Louvain-la-Neuve, Belgium, FORD, L. R., AND FULKERSON, D. R. A suggested computation for maximal multicommodity network flows. Manage. Sci. 5 (1958), FORD, L. R., AND FULKERSON, D. R. Flows in Networks. Princeton University Press, Princeton, N.J., GERLA, M. A cut saturation algorithm for topological design of packet-switched communication networks. In Proceedings of the National Telecommunication Conference. Dec. 1974, pp HARARY, F. Graph Theory. Addison-Wesley, Reading, Mass., Hu, T. C. Integer Programming and Network Flows. Addison-Wesley, Reading, Mass., IRI, M. On an extension of the maximum-flow minimum-cut theorem to multicommodity flows. J. Oper. Res. SOC. Japan 5,4 (Dec. 1967), KARMARKAR, N. A new polynomial time algorithm for linear programming. Combinatorics 4, 4 (1984), KENNINGTON, J. L., AND HELGASON, R. V. Algorithms for Network Programming. Wiley, New York, MATSUMOTO, K., NISHIZEKI, T., AND SAITO, N. Planar multicommodity flows, maximum matchings and negative cycles. SIAM J. Comput. 15,2 (May 1986), MATULA, D. W. Concurrent flow and concurrent connectivity in graphs. In Graph Theory and Its Applications to Algorithms and Computer Science, Alavi, Y., Chartrand, G., Lesniak, L., Lick, D., and Wall, C. E., eds. Wiley, New York, 1985, pp MATULA, D. W. Divisive vs. agglomerative average linkage hierarchical clustering. In Classification as a Tool of Research. Gaul, W., and Schader, M., eds. North-Holland, Amsterdam, 1986, pp OKAMURA, H., AND SEMOUR, P. D. Multicommodity flows in planar graphs. J. Comput. Theory, Ser. B 31 (1981), ONAGA, K. A multicommodity flow theorem. Trans. ZECE, Japan, 53-A, 7 (1970), PAPADIMITRIOU, H., AND STIEGLITZ, K. Combinatorial Optimization: Algorithms and Complexity. Prentice-Hall, Englewood Cliffs, N.J., PATTY, B. W. The basis suppression method for linear programs with special structure excluded by an objective side column. Ph.D. dissertation, Dept. of Operations Research and Engineering Management. Southern Methodist Univ., Dallas, Tex., SHAHROKHI, F. Approximation algorithms for the maximum concurrent flow problem. ORSA J. Comput. 1, 2 (1989), SHAHROKHI, F., AND MATULA, D. W. On solving large maximum concurrent flow problems. In Proceedings of the ACM Computer Conference. ACM, New York, 1987, TANG, D. T. Bi-path networks and multicommodity flows. IEEE Trans. Circuit Theory CT-1 1 (1964), TARDOS, E. A strongly polynomial algorithm to solve combinatorial linear programs. J. Oper. Res. 34 (1986), TARJAN, R. E. Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, Philadelphia, Pa., THOMPSON, B., AND MATULA, D. W. A flow rerouting algorithm for the maximum concurrent flow problem with variable capacities and demands, and its applications to cluster analysis. Tech. Rep. 86-CSE-12. Dept. of Computer Science and Engineering. Southern Methodist Univ., RECEIVED MARCH 1987; REVISED FEBRUARY 1988 AND APRIL 1989; ACCEPTED JUNE 1989 Journal of the Association for Computing Machinery, Vol. 37, No. 2, April 1990

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH

SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH 31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

Nan Kong, Andrew J. Schaefer. Department of Industrial Engineering, Univeristy of Pittsburgh, PA 15261, USA

Nan Kong, Andrew J. Schaefer. Department of Industrial Engineering, Univeristy of Pittsburgh, PA 15261, USA A Factor 1 2 Approximation Algorithm for Two-Stage Stochastic Matching Problems Nan Kong, Andrew J. Schaefer Department of Industrial Engineering, Univeristy of Pittsburgh, PA 15261, USA Abstract We introduce

More information

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

More information

2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines 2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Determination of the normalization level of database schemas through equivalence classes of attributes

Determination of the normalization level of database schemas through equivalence classes of attributes Computer Science Journal of Moldova, vol.17, no.2(50), 2009 Determination of the normalization level of database schemas through equivalence classes of attributes Cotelea Vitalie Abstract In this paper,

More information

Good luck, veel succes!

Good luck, veel succes! Final exam Advanced Linear Programming, May 7, 13.00-16.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam

More information

ARTICLE IN PRESS. European Journal of Operational Research xxx (2004) xxx xxx. Discrete Optimization. Nan Kong, Andrew J.

ARTICLE IN PRESS. European Journal of Operational Research xxx (2004) xxx xxx. Discrete Optimization. Nan Kong, Andrew J. A factor 1 European Journal of Operational Research xxx (00) xxx xxx Discrete Optimization approximation algorithm for two-stage stochastic matching problems Nan Kong, Andrew J. Schaefer * Department of

More information

3. Linear Programming and Polyhedral Combinatorics

3. Linear Programming and Polyhedral Combinatorics Massachusetts Institute of Technology Handout 6 18.433: Combinatorial Optimization February 20th, 2009 Michel X. Goemans 3. Linear Programming and Polyhedral Combinatorics Summary of what was seen in the

More information

Cycles in a Graph Whose Lengths Differ by One or Two

Cycles in a Graph Whose Lengths Differ by One or Two Cycles in a Graph Whose Lengths Differ by One or Two J. A. Bondy 1 and A. Vince 2 1 LABORATOIRE DE MATHÉMATIQUES DISCRÉTES UNIVERSITÉ CLAUDE-BERNARD LYON 1 69622 VILLEURBANNE, FRANCE 2 DEPARTMENT OF MATHEMATICS

More information

Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

1 if 1 x 0 1 if 0 x 1

1 if 1 x 0 1 if 0 x 1 Chapter 3 Continuity In this chapter we begin by defining the fundamental notion of continuity for real valued functions of a single real variable. When trying to decide whether a given function is or

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

Definition 11.1. Given a graph G on n vertices, we define the following quantities:

Definition 11.1. Given a graph G on n vertices, we define the following quantities: Lecture 11 The Lovász ϑ Function 11.1 Perfect graphs We begin with some background on perfect graphs. graphs. First, we define some quantities on Definition 11.1. Given a graph G on n vertices, we define

More information

On Integer Additive Set-Indexers of Graphs

On Integer Additive Set-Indexers of Graphs On Integer Additive Set-Indexers of Graphs arxiv:1312.7672v4 [math.co] 2 Mar 2014 N K Sudev and K A Germina Abstract A set-indexer of a graph G is an injective set-valued function f : V (G) 2 X such that

More information

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010 CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

More information

Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

More information

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

Uniform Multicommodity Flow through the Complete Graph with Random Edge-capacities

Uniform Multicommodity Flow through the Complete Graph with Random Edge-capacities Combinatorics, Probability and Computing (2005) 00, 000 000. c 2005 Cambridge University Press DOI: 10.1017/S0000000000000000 Printed in the United Kingdom Uniform Multicommodity Flow through the Complete

More information

Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

More information

A simpler and better derandomization of an approximation algorithm for Single Source Rent-or-Buy

A simpler and better derandomization of an approximation algorithm for Single Source Rent-or-Buy A simpler and better derandomization of an approximation algorithm for Single Source Rent-or-Buy David P. Williamson Anke van Zuylen School of Operations Research and Industrial Engineering, Cornell University,

More information

1 Polyhedra and Linear Programming

1 Polyhedra and Linear Programming CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

More information

A note on properties for a complementary graph and its tree graph

A note on properties for a complementary graph and its tree graph A note on properties for a complementary graph and its tree graph Abulimiti Yiming Department of Mathematics Institute of Mathematics & Informations Xinjiang Normal University China Masami Yasuda Department

More information

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

More information

Stationary random graphs on Z with prescribed iid degrees and finite mean connections

Stationary random graphs on Z with prescribed iid degrees and finite mean connections Stationary random graphs on Z with prescribed iid degrees and finite mean connections Maria Deijfen Johan Jonasson February 2006 Abstract Let F be a probability distribution with support on the non-negative

More information

On the k-path cover problem for cacti

On the k-path cover problem for cacti On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China zeminjin@eyou.com, x.li@eyou.com Abstract In this paper we

More information

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Mathematics Course 111: Algebra I Part IV: Vector Spaces Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are

More information

Finding and counting given length cycles

Finding and counting given length cycles Finding and counting given length cycles Noga Alon Raphael Yuster Uri Zwick Abstract We present an assortment of methods for finding and counting simple cycles of a given length in directed and undirected

More information

1. R In this and the next section we are going to study the properties of sequences of real numbers.

1. R In this and the next section we are going to study the properties of sequences of real numbers. +a 1. R In this and the next section we are going to study the properties of sequences of real numbers. Definition 1.1. (Sequence) A sequence is a function with domain N. Example 1.2. A sequence of real

More information

max cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x

max cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x Linear Programming Linear programming refers to problems stated as maximization or minimization of a linear function subject to constraints that are linear equalities and inequalities. Although the study

More information

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued. Linear Programming Widget Factory Example Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory:, Vertices, Existence of Solutions. Equivalent formulations.

More information

Introduction to Flocking {Stochastic Matrices}

Introduction to Flocking {Stochastic Matrices} Supelec EECI Graduate School in Control Introduction to Flocking {Stochastic Matrices} A. S. Morse Yale University Gif sur - Yvette May 21, 2012 CRAIG REYNOLDS - 1987 BOIDS The Lion King CRAIG REYNOLDS

More information

Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

More information

A Network Flow Approach in Cloud Computing

A Network Flow Approach in Cloud Computing 1 A Network Flow Approach in Cloud Computing Soheil Feizi, Amy Zhang, Muriel Médard RLE at MIT Abstract In this paper, by using network flow principles, we propose algorithms to address various challenges

More information

Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

More information

FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME AND BUDGET CONSTRAINTS

FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME AND BUDGET CONSTRAINTS Journal of the Operations Research Society of Japan Vol. 45, No. 3, September 2002 2002 The Operations Research Society of Japan FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME

More information

Every tree contains a large induced subgraph with all degrees odd

Every tree contains a large induced subgraph with all degrees odd Every tree contains a large induced subgraph with all degrees odd A.J. Radcliffe Carnegie Mellon University, Pittsburgh, PA A.D. Scott Department of Pure Mathematics and Mathematical Statistics University

More information

Basic Notions on Graphs. Planar Graphs and Vertex Colourings. Joe Ryan. Presented by

Basic Notions on Graphs. Planar Graphs and Vertex Colourings. Joe Ryan. Presented by Basic Notions on Graphs Planar Graphs and Vertex Colourings Presented by Joe Ryan School of Electrical Engineering and Computer Science University of Newcastle, Australia Planar graphs Graphs may be drawn

More information

Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design

Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design Hongsik Choi and Hyeong-Ah Choi Department of Electrical Engineering and Computer Science George Washington University Washington,

More information

Permutation Betting Markets: Singleton Betting with Extra Information

Permutation Betting Markets: Singleton Betting with Extra Information Permutation Betting Markets: Singleton Betting with Extra Information Mohammad Ghodsi Sharif University of Technology ghodsi@sharif.edu Hamid Mahini Sharif University of Technology mahini@ce.sharif.edu

More information

Adaptive Online Gradient Descent

Adaptive Online Gradient Descent Adaptive Online Gradient Descent Peter L Bartlett Division of Computer Science Department of Statistics UC Berkeley Berkeley, CA 94709 bartlett@csberkeleyedu Elad Hazan IBM Almaden Research Center 650

More information

Ph.D. Thesis. Judit Nagy-György. Supervisor: Péter Hajnal Associate Professor

Ph.D. Thesis. Judit Nagy-György. Supervisor: Péter Hajnal Associate Professor Online algorithms for combinatorial problems Ph.D. Thesis by Judit Nagy-György Supervisor: Péter Hajnal Associate Professor Doctoral School in Mathematics and Computer Science University of Szeged Bolyai

More information

No: 10 04. Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics

No: 10 04. Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics No: 10 04 Bilkent University Monotonic Extension Farhad Husseinov Discussion Papers Department of Economics The Discussion Papers of the Department of Economics are intended to make the initial results

More information

Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs

Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs Stavros Athanassopoulos, Ioannis Caragiannis, and Christos Kaklamanis Research Academic Computer Technology Institute

More information

Mean Ramsey-Turán numbers

Mean Ramsey-Turán numbers Mean Ramsey-Turán numbers Raphael Yuster Department of Mathematics University of Haifa at Oranim Tivon 36006, Israel Abstract A ρ-mean coloring of a graph is a coloring of the edges such that the average

More information

A simple criterion on degree sequences of graphs

A simple criterion on degree sequences of graphs Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree

More information

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

More information

All trees contain a large induced subgraph having all degrees 1 (mod k)

All trees contain a large induced subgraph having all degrees 1 (mod k) All trees contain a large induced subgraph having all degrees 1 (mod k) David M. Berman, A.J. Radcliffe, A.D. Scott, Hong Wang, and Larry Wargo *Department of Mathematics University of New Orleans New

More information

Prime Numbers. Chapter Primes and Composites

Prime Numbers. Chapter Primes and Composites Chapter 2 Prime Numbers The term factoring or factorization refers to the process of expressing an integer as the product of two or more integers in a nontrivial way, e.g., 42 = 6 7. Prime numbers are

More information

Partitioning edge-coloured complete graphs into monochromatic cycles and paths

Partitioning edge-coloured complete graphs into monochromatic cycles and paths arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edge-coloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political

More information

Min-cost flow problems and network simplex algorithm

Min-cost flow problems and network simplex algorithm Min-cost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.

More information

High degree graphs contain large-star factors

High degree graphs contain large-star factors High degree graphs contain large-star factors Dedicated to László Lovász, for his 60th birthday Noga Alon Nicholas Wormald Abstract We show that any finite simple graph with minimum degree d contains a

More information

6. Metric spaces. In this section we review the basic facts about metric spaces. d : X X [0, )

6. Metric spaces. In this section we review the basic facts about metric spaces. d : X X [0, ) 6. Metric spaces In this section we review the basic facts about metric spaces. Definitions. A metric on a non-empty set X is a map with the following properties: d : X X [0, ) (i) If x, y X are points

More information

Semi-Matchings for Bipartite Graphs and Load Balancing

Semi-Matchings for Bipartite Graphs and Load Balancing Semi-Matchings for Bipartite Graphs and Load Balancing Nicholas J. A. Harvey Richard E. Ladner László Lovász Tami Tamir Abstract We consider the problem of fairly matching the left-hand vertices of a bipartite

More information

A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries

A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do

More information

The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

More information

Minimize subject to. x S R

Minimize subject to. x S R Chapter 12 Lagrangian Relaxation This chapter is mostly inspired by Chapter 16 of [1]. In the previous chapters, we have succeeded to find efficient algorithms to solve several important problems such

More information

The multi-integer set cover and the facility terminal cover problem

The multi-integer set cover and the facility terminal cover problem The multi-integer set cover and the facility teral cover problem Dorit S. Hochbaum Asaf Levin December 5, 2007 Abstract The facility teral cover problem is a generalization of the vertex cover problem.

More information

Week 5 Integral Polyhedra

Week 5 Integral Polyhedra Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory

More information

ECEN 5682 Theory and Practice of Error Control Codes

ECEN 5682 Theory and Practice of Error Control Codes ECEN 5682 Theory and Practice of Error Control Codes Convolutional Codes University of Colorado Spring 2007 Linear (n, k) block codes take k data symbols at a time and encode them into n code symbols.

More information

A Sublinear Bipartiteness Tester for Bounded Degree Graphs

A Sublinear Bipartiteness Tester for Bounded Degree Graphs A Sublinear Bipartiteness Tester for Bounded Degree Graphs Oded Goldreich Dana Ron February 5, 1998 Abstract We present a sublinear-time algorithm for testing whether a bounded degree graph is bipartite

More information

Best Monotone Degree Bounds for Various Graph Parameters

Best Monotone Degree Bounds for Various Graph Parameters Best Monotone Degree Bounds for Various Graph Parameters D. Bauer Department of Mathematical Sciences Stevens Institute of Technology Hoboken, NJ 07030 S. L. Hakimi Department of Electrical and Computer

More information

Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

More information

ON INDUCED SUBGRAPHS WITH ALL DEGREES ODD. 1. Introduction

ON INDUCED SUBGRAPHS WITH ALL DEGREES ODD. 1. Introduction ON INDUCED SUBGRAPHS WITH ALL DEGREES ODD A.D. SCOTT Abstract. Gallai proved that the vertex set of any graph can be partitioned into two sets, each inducing a subgraph with all degrees even. We prove

More information

3 Does the Simplex Algorithm Work?

3 Does the Simplex Algorithm Work? Does the Simplex Algorithm Work? In this section we carefully examine the simplex algorithm introduced in the previous chapter. Our goal is to either prove that it works, or to determine those circumstances

More information

24. The Branch and Bound Method

24. The Branch and Bound Method 24. The Branch and Bound Method It has serious practical consequences if it is known that a combinatorial problem is NP-complete. Then one can conclude according to the present state of science that no

More information

Energy Benefit of Network Coding for Multiple Unicast in Wireless Networks

Energy Benefit of Network Coding for Multiple Unicast in Wireless Networks Energy Benefit of Network Coding for Multiple Unicast in Wireless Networks Jasper Goseling IRCTR/CWPC, WMC Group Delft University of Technology The Netherlands j.goseling@tudelft.nl Abstract Jos H. Weber

More information

Trees and Fundamental Circuits

Trees and Fundamental Circuits Trees and Fundamental Circuits Tree A connected graph without any circuits. o must have at least one vertex. o definition implies that it must be a simple graph. o only finite trees are being considered

More information

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and Breaking The Code Ryan Lowe Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and a minor in Applied Physics. As a sophomore, he took an independent study

More information

Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

More information

The Open University s repository of research publications and other research outputs

The Open University s repository of research publications and other research outputs Open Research Online The Open University s repository of research publications and other research outputs The degree-diameter problem for circulant graphs of degree 8 and 9 Journal Article How to cite:

More information

The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/

The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ The Binary Blocking Flow Algorithm Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Theory vs. Practice In theory, there is no difference between theory and practice.

More information

A. V. Gerbessiotis CS Spring 2014 PS 3 Mar 24, 2014 No points

A. V. Gerbessiotis CS Spring 2014 PS 3 Mar 24, 2014 No points A. V. Gerbessiotis CS 610-102 Spring 2014 PS 3 Mar 24, 2014 No points Problem 1. Suppose that we insert n keys into a hash table of size m using open addressing and uniform hashing. Let p(n, m) be the

More information

DATA ANALYSIS II. Matrix Algorithms

DATA ANALYSIS II. Matrix Algorithms DATA ANALYSIS II Matrix Algorithms Similarity Matrix Given a dataset D = {x i }, i=1,..,n consisting of n points in R d, let A denote the n n symmetric similarity matrix between the points, given as where

More information

4.6 Linear Programming duality

4.6 Linear Programming duality 4.6 Linear Programming duality To any minimization (maximization) LP we can associate a closely related maximization (minimization) LP. Different spaces and objective functions but in general same optimal

More information

A Turán Type Problem Concerning the Powers of the Degrees of a Graph

A Turán Type Problem Concerning the Powers of the Degrees of a Graph A Turán Type Problem Concerning the Powers of the Degrees of a Graph Yair Caro and Raphael Yuster Department of Mathematics University of Haifa-ORANIM, Tivon 36006, Israel. AMS Subject Classification:

More information

Planar Tree Transformation: Results and Counterexample

Planar Tree Transformation: Results and Counterexample Planar Tree Transformation: Results and Counterexample Selim G Akl, Kamrul Islam, and Henk Meijer School of Computing, Queen s University Kingston, Ontario, Canada K7L 3N6 Abstract We consider the problem

More information

Solutions to Exercises 8

Solutions to Exercises 8 Discrete Mathematics Lent 2009 MA210 Solutions to Exercises 8 (1) Suppose that G is a graph in which every vertex has degree at least k, where k 1, and in which every cycle contains at least 4 vertices.

More information

Sequences and Convergence in Metric Spaces

Sequences and Convergence in Metric Spaces Sequences and Convergence in Metric Spaces Definition: A sequence in a set X (a sequence of elements of X) is a function s : N X. We usually denote s(n) by s n, called the n-th term of s, and write {s

More information

Degree Hypergroupoids Associated with Hypergraphs

Degree Hypergroupoids Associated with Hypergraphs Filomat 8:1 (014), 119 19 DOI 10.98/FIL1401119F Published by Faculty of Sciences and Mathematics, University of Niš, Serbia Available at: http://www.pmf.ni.ac.rs/filomat Degree Hypergroupoids Associated

More information

Proximal mapping via network optimization

Proximal mapping via network optimization L. Vandenberghe EE236C (Spring 23-4) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:

More information

Approximation Algorithms. Scheduling. Approximation algorithms. Scheduling jobs on a single machine

Approximation Algorithms. Scheduling. Approximation algorithms. Scheduling jobs on a single machine Approximation algorithms Approximation Algorithms Fast. Cheap. Reliable. Choose two. NP-hard problems: choose 2 of optimal polynomial time all instances Approximation algorithms. Trade-off between time

More information

ALMOST COMMON PRIORS 1. INTRODUCTION

ALMOST COMMON PRIORS 1. INTRODUCTION ALMOST COMMON PRIORS ZIV HELLMAN ABSTRACT. What happens when priors are not common? We introduce a measure for how far a type space is from having a common prior, which we term prior distance. If a type

More information

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. An Improved Approximation Algorithm for the Traveling Tournament Problem

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. An Improved Approximation Algorithm for the Traveling Tournament Problem MATHEMATICAL ENGINEERING TECHNICAL REPORTS An Improved Approximation Algorithm for the Traveling Tournament Problem Daisuke YAMAGUCHI, Shinji IMAHORI, Ryuhei MIYASHIRO, Tomomi MATSUI METR 2009 42 September

More information

Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

More information

Competitive Analysis of On line Randomized Call Control in Cellular Networks

Competitive Analysis of On line Randomized Call Control in Cellular Networks Competitive Analysis of On line Randomized Call Control in Cellular Networks Ioannis Caragiannis Christos Kaklamanis Evi Papaioannou Abstract In this paper we address an important communication issue arising

More information

A class of on-line scheduling algorithms to minimize total completion time

A class of on-line scheduling algorithms to minimize total completion time A class of on-line scheduling algorithms to minimize total completion time X. Lu R.A. Sitters L. Stougie Abstract We consider the problem of scheduling jobs on-line on a single machine and on identical

More information

Lecture 7 - Linear Programming

Lecture 7 - Linear Programming COMPSCI 530: Design and Analysis of Algorithms DATE: 09/17/2013 Lecturer: Debmalya Panigrahi Lecture 7 - Linear Programming Scribe: Hieu Bui 1 Overview In this lecture, we cover basics of linear programming,

More information

On the Union of Arithmetic Progressions

On the Union of Arithmetic Progressions On the Union of Arithmetic Progressions Shoni Gilboa Rom Pinchasi August, 04 Abstract We show that for any integer n and real ɛ > 0, the union of n arithmetic progressions with pairwise distinct differences,

More information

Chapter 2 Limits Functions and Sequences sequence sequence Example

Chapter 2 Limits Functions and Sequences sequence sequence Example Chapter Limits In the net few chapters we shall investigate several concepts from calculus, all of which are based on the notion of a limit. In the normal sequence of mathematics courses that students

More information

Course 421: Algebraic Topology Section 1: Topological Spaces

Course 421: Algebraic Topology Section 1: Topological Spaces Course 421: Algebraic Topology Section 1: Topological Spaces David R. Wilkins Copyright c David R. Wilkins 1988 2008 Contents 1 Topological Spaces 1 1.1 Continuity and Topological Spaces...............

More information

Analysis of Algorithms, I

Analysis of Algorithms, I Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

More information

1 Introduction. Dr. T. Srinivas Department of Mathematics Kakatiya University Warangal 506009, AP, INDIA tsrinivasku@gmail.com

1 Introduction. Dr. T. Srinivas Department of Mathematics Kakatiya University Warangal 506009, AP, INDIA tsrinivasku@gmail.com A New Allgoriitthm for Miiniimum Costt Liinkiing M. Sreenivas Alluri Institute of Management Sciences Hanamkonda 506001, AP, INDIA allurimaster@gmail.com Dr. T. Srinivas Department of Mathematics Kakatiya

More information

Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS

Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS Homework MA 725 Spring, 2012 C. Huneke SELECTED ANSWERS 1.1.25 Prove that the Petersen graph has no cycle of length 7. Solution: There are 10 vertices in the Petersen graph G. Assume there is a cycle C

More information