Vertex Cover Problems


 Randell Henry
 1 years ago
 Views:
Transcription
1 Rob van Stee: Approximations und OnlineAlgorithmen 1 Vertex Cover Problems Consider a graph G=(V,E) S V is a vertex cover if {u,v} E : u S v S minimum vertex cover (MINVCP): find a vertex cover S that minimizes S.
2 Rob van Stee: Approximations und OnlineAlgorithmen 2 Motivation This problem has many applications Example: placing ATMs in a city Each additional ATM costs money Want to have an ATM in every street (block, district) Where should they be placed so that we need as little ATMs as possible?
3 Rob van Stee: Approximations und OnlineAlgorithmen 3 Greedy Algorithm Function greedyvc(v,e) C:= /0 while E /0 do return C select any {u, v} E C:= C {u,v} remove all edges incident to u or v from E Exercise: explain how to implement the algorithm to run in time O( V + E ) b a b a b a b c e c d h e f g c e c d f d f d h g h g h a e f g (postprocess:)
4 Rob van Stee: Approximations und OnlineAlgorithmen 4 Greedy Algorithm Function greedyvc(v,e) C:= /0 while E /0 do return C select any {u, v} E C:= C {u,v} remove all edges incident to u or v from E Exercise: explain how to implement the algorithm to run in time O( V + E ) b a b a b a b a c d h e f g c d h e f g c d h e f g c d h e f g
5 Rob van Stee: Approximations und OnlineAlgorithmen 5 Greedy Algorithm Function greedyvc(v,e) C:= /0 while E /0 do return C select any {u, v} E C:= C {u,v} remove all edges incident to u or v from E Exercise: explain how to implement the algorithm to run in time O( V + E ) b a b a b a b a c d h e f g c d h e f g c d h e f g c d h e f g
6 Rob van Stee: Approximations und OnlineAlgorithmen 6 Greedy Algorithm Function greedyvc(v,e) C:= /0 while E /0 do return C select any {u, v} E C:= C {u,v} remove all edges incident to u or v from E Exercise: explain how to implement the algorithm to run in time O( V + E ) b a b a b a b a c d h e f g c d h e f g c d h e f g c d h e f g
7 Rob van Stee: Approximations und OnlineAlgorithmen 7 Theorem 1. Algorithm greedyvc computes a twoapproximation of MINVCP. Proof. Correctness: trivial since only covered edges are removed. Quality: Let A denote the set of edges selected by greedyvc. We have C =2 A. A is a matching, i.e., no node covers two edges in A. Hence, any vertex cover contains at least one node from each edge in A, i.e., opt A.
8 Rob van Stee: Approximations und OnlineAlgorithmen 8 Weighted Vertex Cover Consider a graph G=(V,E) S V is a vertex cover if {u,v} E : u S v S 1 1 minimum WEIGHT vertex cover (WEIGHTVCP): find a vertex cover S that minimizes c(s) v S
9 Rob van Stee: Approximations und OnlineAlgorithmen ILP Formulation Assume V ={1,...,n} Variables: x v = 1 iff v V minimize c x subject to {u,v} E : x u + x v 1 v V : x v {0,1}
10 Rob van Stee: Approximations und OnlineAlgorithmen ILP Formulation Linear Relaxation Assume V ={1,...,n} Variables: x v = 1 iff v V minimize c x subject to {u,v} E : x u + x v 1 v V : x v {0,1} Assume V ={1,...,n} Variables: x v = 1 iff v V minimize c x subject to {u,v} E : x u + x v 1 v V : x v 0
11 Rob van Stee: Approximations und OnlineAlgorithmen ILP Formulation Linear Relaxation Assume V ={1,...,n} Variables: x v = 1 iff v V minimize c x subject to {u,v} E : x u + x v 1 v V : x v {0,1} Assume V ={1,...,n} Variables: x v = 1 iff v V minimize c x subject to {u,v} E : x u + x v 1 v V : x v 0 LP Rounding Algorithm for WEIGHTVCP Function lpweightedvc(v, E, c) x:= lpsolve(linearrelaxation(v, E, c)) return{v V : x v 1/2}
12 Rob van Stee: Approximations und OnlineAlgorithmen 12 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Correctness: Consider any edge {u,v} E. We have x u + x v 1, hence, max{x u,x v } 1/2, i.e., rounding will put at least one of {u,v} into the output.
13 Rob van Stee: Approximations und OnlineAlgorithmen 13 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Quality: Let x := the solution computed by lpweightedvc x := the optimal solution, and x := the optimal solution of the linear relaxation c x= c i 2 x i c i 2 x i 1/2 x i 1/2 n i=1 x i c i = 2c x 2c x
14 Rob van Stee: Approximations und OnlineAlgorithmen 14 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Quality: Let x := the solution computed by lpweightedvc x := the optimal solution, and x := the optimal solution of the linear relaxation c x= c i 2 x i c i 2 x i 1/2 x i 1/2 n i=1 x i c i = 2c x 2c x
15 Rob van Stee: Approximations und OnlineAlgorithmen 15 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Quality: Let x := the solution computed by lpweightedvc x := the optimal solution, and x := the optimal solution of the linear relaxation c x= c i 2 x i c i 2 x i 1/2 x i 1/2 n i=1 x i c i = 2c x 2c x
16 Rob van Stee: Approximations und OnlineAlgorithmen 16 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Quality: Let x := the solution computed by lpweightedvc x := the optimal solution, and x := the optimal solution of the linear relaxation c x= c i 2 x i c i 2 x i 1/2 x i 1/2 n i=1 x i c i = 2c x 2c x
17 Rob van Stee: Approximations und OnlineAlgorithmen 17 Theorem 2. Algorithm lpweightedvc computes a twoapproximation of WEIGHTVCP. Quality: Let x := the solution computed by lpweightedvc x := the optimal solution, and x := the optimal solution of the linear relaxation c x= c i 2 x i c i 2 x i 1/2 x i 1/2 n i=1 x i c i = 2c x 2c x
18 Rob van Stee: Approximations und OnlineAlgorithmen 18 Iterated Rounding [Vazirani Section 23.2] Function iteratedlpweightedvc(v, E, c) M:= /0 while E >0 do x:= lpsolve(linearrelaxation(v, E, c)) let v denote the node which maximizes x v M:= M {v} V:= V \{v} return M E:= E\{{u,v} E}
19 Rob van Stee: Approximations und OnlineAlgorithmen 19 Iterated Rounding: Discussion Might give better solutions for many inputs No better approximation guarantees for VC Larger (still polynomial) execution time But: Resolving an LP is often quite fast Important technique for other problems
20 Rob van Stee: Approximations und OnlineAlgorithmen 20 A Randomized Algorithm [Ausiello et al. Section 5.1] Function randweightedvc(v, E, c) C:= /0 while E /0 do b a b a c e c e d f d f h g h g select any {v,t} E b c d h return C flip a coin with sides {v,t} and P[v]= c t c v + c t x:= upper side of coin C:= C {x} remove all edges incident to x from E a b a b a e c e c e f d f d f g h g h g
21 Rob van Stee: Approximations und OnlineAlgorithmen 21 Theorem 3. Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Correctness: as for greedyvc.
22 Rob van Stee: Approximations und OnlineAlgorithmen 22 Theorem: Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Quality: Define the random variables c v if v x X v := 0 otherwise c v if {v,t} is selected and v x X {v,t},v := 0 otherwise (1) (2) Note that X v = X {v,t},v {t:{v,t} E}
23 Rob van Stee: Approximations und OnlineAlgorithmen 23 Lemma 4. E[X {v,t},v ]=E[X {v,t},t ] Proof. E[X {v,t},v ]=c v P[{v,t} is selected ]P[v x] E[X {v,t},v ]=c v P[{v,t} is selected ] c v + c t c v = c t P[{v,t} is selected ] c v + c t =E[X {v,t},t ] c t
24 Rob van Stee: Approximations und OnlineAlgorithmen 24 Lemma 4. E[X {v,t},v ]=E[X {v,t},t ] Proof. E[X {v,t},v ]=c v P[{v,t} is selected ]P[v x] E[X {v,t},v ]=c v P[{v,t} is selected ] c v + c t c v = c t P[{v,t} is selected ] c v + c t =E[X {v,t},t ] c t
25 Rob van Stee: Approximations und OnlineAlgorithmen 25 Lemma 4. E[X {v,t},v ]=E[X {v,t},t ] Proof. E[X {v,t},v ]=c v P[{v,t} is selected ]P[v x] E[X {v,t},v ]=c v P[{v,t} is selected ] c v + c t c v = c t P[{v,t} is selected ] c v + c t =E[X {v,t},t ] c t
26 Rob van Stee: Approximations und OnlineAlgorithmen 26 Lemma 5. v x E[X v ] t x E[X t ] Proof. E[X v ]= E v x v x But also t x E[X t ]= t x Every term in (*) shows up in (**). [ ] X {v,t},v {t:{v,t} E} (X v = X {v,t},v ) {t:{v,t} E} = E[X {v,t},v ] Linearity ofe[ ] v x {t:{v,t} E} = E[X {v,t},t ](*). Lemma 4 v x {t:{v,t} E} E[X {v,t},t ](**). {v:{v,t} E}
27 Rob van Stee: Approximations und OnlineAlgorithmen 27 Lemma 5. v x E[X v ] t x E[X t ] Proof. E[X v ]= E v x v x But also t x E[X t ]= t x Every term in (*) shows up in (**). [ ] X {v,t},v {t:{v,t} E} (X v = X {v,t},v ) {t:{v,t} E} = E[X {v,t},v ] Linearity ofe[ ] v x {t:{v,t} E} = E[X {v,t},t ](*). Lemma 4 v x {t:{v,t} E} E[X {v,t},t ](**). {v:{v,t} E}
28 Rob van Stee: Approximations und OnlineAlgorithmen 28 Lemma 5. v x E[X v ] t x E[X t ] Proof. E[X v ]= E v x v x But also t x E[X t ]= t x Every term in (*) shows up in (**). [ ] X {v,t},v {t:{v,t} E} (X v = X {v,t},v ) {t:{v,t} E} = E[X {v,t},v ] Linearity ofe[ ] v x {t:{v,t} E} = E[X {v,t},t ](*). Lemma 4 v x {t:{v,t} E} E[X {v,t},t ](**). {v:{v,t} E}
29 Rob van Stee: Approximations und OnlineAlgorithmen 29 Lemma 5. v x E[X v ] t x E[X t ] Proof. E[X v ]= E v x v x [ ] X {v,t},v {t:{v,t} E} (X v = X {v,t},v ) {t:{v,t} E} = E[X {v,t},v ] Linearity ofe[ ] v x {t:{v,t} E} But also t x E[X t ]= t x Every term in (*) shows up in (**). = E[X {v,t},t ](*). Lemma 4 v x {t:{v,t} E} E[X {v,t},t ](**). {v:{v,t} E} t... t v t
30 Rob van Stee: Approximations und OnlineAlgorithmen 30 Theorem: Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Quality: (Finishing Up) v V E[X v ] = v x E[X v ]+ t x E[X t ] Lemma 5 2 t x c t X t = 0 or X t = c t
31 Rob van Stee: Approximations und OnlineAlgorithmen 31 Theorem: Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Quality: (Finishing Up) v V E[X v ] = v x E[X v ]+ t x E[X t ] Lemma 5 2 t x E[X t ] 2 t x c t X t = 0 or X t = c t
32 Rob van Stee: Approximations und OnlineAlgorithmen 32 Theorem: Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Quality: (Finishing Up) v V E[X v ] = v x E[X v ]+ t x E[X t ] Lemma 5 2 t x E[X t ] 2 t x c t X t = 0 or X t = c t
33 Rob van Stee: Approximations und OnlineAlgorithmen 33 Theorem: Algorithm randweightedvc computes a vertex cover x with E[c x] 2c x. Quality: (Finishing Up) v V E[X v ] = v x E[X v ]+ t x E[X t ] Lemma 5 2 t x E[X t ] 2 c t t x = 2c x X t = 0 or X t = c t
34 Rob van Stee: Approximations und OnlineAlgorithmen 34 More on Vertex Cover There are simple deterministic linear time 2approximations. (Special case of set covering) Best known algorithm: ratio 2 Θ(1/ logn) fixed parameter algorithms: [Niedermeyer Rossmanith] find optimal solution in time O ( kn+k k) if x k. Key idea: (clever) exhaustive search+problem reductions. Example: include nodes of degree k. include neighbors of degree 1 nodes
35 Rob van Stee: Approximations und OnlineAlgorithmen 35 Scheduling on Unrelated Parallel Machines [Vazirani Chapter 17] J: set of n jobs M: set of m machines p i j : processing time of job j on machine i x( j): Machine where job j is executed L i : { j:x( j)=i} p i j, load of machine i Objective: Minimize Makespan L max = max i L i
36 Rob van Stee: Approximations und OnlineAlgorithmen 36 A Misguided ILP model minimize t subject to j J : x i j = 1 i M i M : x i j p i j t j J i M, j J : x i j {0,1}
37 Rob van Stee: Approximations und OnlineAlgorithmen 37 The problem with this formulation minimize t subject to j J : x i j = 1 i M i M : x i j p i j t j J i M, j J : x i j {0,1} One Job, size m everywhere. Linear relaxation: makespan 1 Optimal solution: makespan m m The linear relaxation is far away from the optimal solution and hence yields little useful information LPspeak: integrality gap m
38 Rob van Stee: Approximations und OnlineAlgorithmen 38 The problem with this formulation minimize t subject to j J : x i j = 1 i M i M : x i j p i j t j J i M, j J : x i j {0,1} In ILP, we always have x i j = 0 if p i j > t This is lost in the linear relaxation: some x i j may get small values We cannot add this constraint since it is not a linear constraint
39 Rob van Stee: Approximations und OnlineAlgorithmen 39 A Refined LP Relaxation (Parametric Pruning) guess makespan T feasible assignments: S T := { (i, j) : p i j T } no objective function (feasibility only) LP(T): j J : i M : x i j = 1 {i:(i, j) S T } { j:(i, j) S T } (i, j) S T : x i j 0 x i j p i j T e.g., binary search
40 Rob van Stee: Approximations und OnlineAlgorithmen 40 A Refined LP Relaxation (Parametric Pruning) guess makespan T feasible assignments: S T := { (i, j) : p i j T } e.g., binary search LP(T): j J : i M : x i j = 1 {i:(i, j) S T } { j:(i, j) S T } (i, j) S T : x i j 0 x i j p i j T No objective function! We only look for a feasible solution
41 Rob van Stee: Approximations und OnlineAlgorithmen 41 More LPspeak Consider a solution x of a given LP. x is an extreme point solution if it cannot be expressed as a convex combination αx +(1 α)x with α (0,1) of two other feasible solutions x and x. convex combination x x Theorem 6. x R r is an extreme point solution iff it corresponds to setting r linearly independent constraints to equality. Proof. not here.
42 Rob van Stee: Approximations und OnlineAlgorithmen 42 S T := { (i, j) : p i j T } LP(T): j J : i M : x i j = 1 {i:(i, j) S T } { j:(i, j) S T } (i, j) S T : x i j 0 x i j p i j T Lemma 7. An extreme point solution of LP(T) has at most n+m nonzero variables. Proof. r= S T variables n+m constraints (except 0) Thm6 r (n+m) of the 0 constraints are tight.
43 Rob van Stee: Approximations und OnlineAlgorithmen 43 Lemma 7. An extreme point solution of LP(T) has at most n+m nonzero variables. Corollary 8. An extreme point solution of LP(T) sets n m jobs integrally. Proof. a integrally set jobs a nonzero entries in x n a fractionally set jobs 2(n a) nonzero entries in x Lemma 7 2(n a)+a n+m a n m
44 Rob van Stee: Approximations und OnlineAlgorithmen 44 One Reason why LP Relaxation is Useful Theorem 6. x R r is an extreme point solution iff it corresponds to setting r linearly independent constraints to equality. Theorem 6 often implies that only few variables need to be rounded to obtain an solution of the ILP.... this does not mean rounding the remaining ones is easy.
45 Rob van Stee: Approximations und OnlineAlgorithmen 45 The Algorithm: Top Level α:= makespan one gets by assigning each job to the fastest machine for it α is an upper bound for the optimal makespan
46 Rob van Stee: Approximations und OnlineAlgorithmen 46 The Algorithm: Top Level α:= makespan one gets by assigning each job to the fastest machine for it α is an upper bound for the optimal makespan Use binary search in the range α/m,α to find the smallest T such that LP(T) has a feasible solution x
47 Rob van Stee: Approximations und OnlineAlgorithmen 47 The Algorithm: Top Level α:= makespan one gets by assigning each job to the fastest machine for it α is an upper bound for the optimal makespan Use binary search in the range α/m,α to find the smallest T such that LP(T) has a feasible solution For this T, find an extremal point solution x
48 Rob van Stee: Approximations und OnlineAlgorithmen 48 The Algorithm: Top Level α:= makespan one gets by assigning each job to the fastest machine for it α is an upper bound for the optimal makespan Use binary search in the range α/m,α to find the smallest T such that LP(T) has a feasible solution For this T, find an extremal point solution x assign integrally set jobs in x
49 Rob van Stee: Approximations und OnlineAlgorithmen 49 The Algorithm: Top Level α:= makespan one gets by assigning each job to the fastest machine for it α is an upper bound for the optimal makespan Use binary search in the range α/m,α to find the smallest T such that LP(T) has a feasible solution For this T, find an extremal point solution x assign integrally set jobs in x deal with the fractionally set jobs // Rounding
50 Rob van Stee: Approximations und OnlineAlgorithmen 50 Example p i j Four machines, five jobs For each job, the best machine for it is marked in blue.
51 Rob van Stee: Approximations und OnlineAlgorithmen 51 Example p i j Each job on fastest machine: =: α Initial guess for the makespan is 6 Using binary search, we find smallest makespan in the range [6/4,6] that can be achieved using a fractional assignment
52 Rob van Stee: Approximations und OnlineAlgorithmen 52 Example p i j Each job on fastest machine: =: α x i j Solution of LP(3):
53 Rob van Stee: Approximations und OnlineAlgorithmen 53 Dealing with Fractionally Set Jobs Consider the bipartite graph H:=(J M,E ) where J := { j J : i : 0<x i j < 1 } M := { i M : j : 0<x i j < 1 } E := { {i, j} : x i j 0,i M, j J } Idea: Find a perfect matching in H assign jobs according to that matching matching
54 Rob van Stee: Approximations und OnlineAlgorithmen 54 Matching A set of edges M that do not have any nodes in common, i.e., (V,M) has maximum degree one. Perfect Matching A matching of size V /2, i.e., all nodes are matched
55 Rob van Stee: Approximations und OnlineAlgorithmen 55 Lemma 8. H is a pseudo forest, i.e., each connected component H C =(V C,E C ) has E C V C (a tree plus, possibly, one edge) Proof. It suffices to show this for the larger graph G:=(J M,E) where E:= { {i, j} : x i j 0,i M, j J } Consider a connected component H C of G. restrict x and LP(T) to H C : x C, LP C (T) x C is extreme point solution of LP C (T) (Otherwise, x itself could not be extreme point solution) Lemma 7 LP C (T) has V C nonzero vars., i.e., H C has V C edges.
56 Rob van Stee: Approximations und OnlineAlgorithmen 56 Example p i j x i j T =
57 Rob van Stee: Approximations und OnlineAlgorithmen 57 Lemma 9. H has a perfect matching Proof. We give an algorithm: M := /0 invariant H is a bipartite pseudo forest invariant all degree one nodes are machines while i M with degree one do e={i, j}:= the sole edge incident to i M := M {e} remove i, j and incident edges assert H is a collection of disjoint even cycles foreach cycle C H do match alternating edges in C
58 Rob van Stee: Approximations und OnlineAlgorithmen 58 Theorem 10. The algorithm achieves an approximation guarantee of factor 2 for scheduling unrelated parallel machines. Proof. Consider solution x of LPT(T ) makespan due to jobs set integrally in x is T opt. In addition, each machine i receives 1 job j from the matching M H. p i, j T opt since otherwise {i, j} H
Minimum Makespan Scheduling
Minimum Makespan Scheduling Minimum makespan scheduling: Definition and variants Factor 2 algorithm for identical machines PTAS for identical machines Factor 2 algorithm for unrelated machines Martin Zachariasen,
More informationApproximation 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! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. !approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;
More information! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. #approximation algorithm.
Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of three
More informationChapter 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 NPhard problem. What should I do? A. Theory says you're unlikely to find a polytime algorithm. Must sacrifice one
More information2.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 informationLecture 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 informationLecture 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 information11. APPROXIMATION ALGORITHMS
11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005
More informationApplied 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 informationCSL851: Algorithmic Graph Theory Semester I Lecture 1: July 24
CSL851: Algorithmic Graph Theory Semester I 20132014 Lecture 1: July 24 Lecturer: Naveen Garg Scribes: Suyash Roongta Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NPCompleteness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More informationMinimize 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 informationSteiner Tree Approximation via IRR. Randomized Rounding
Steiner Tree Approximation via Iterative Randomized Rounding Graduate Program in Logic, Algorithms and Computation μπλ Network Algorithms and Complexity June 18, 2013 Overview 1 Introduction Scope Related
More informationONLINE DEGREEBOUNDED STEINER NETWORK DESIGN. Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015
ONLINE DEGREEBOUNDED STEINER NETWORK DESIGN Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015 ONLINE STEINER FOREST PROBLEM An initially given graph G. s 1 s 2 A sequence of demands (s i, t i ) arriving
More informationScheduling Parallel Machine Scheduling. Tim Nieberg
Scheduling Parallel Machine Scheduling Tim Nieberg Problem P C max : m machines n jobs with processing times p 1,..., p n Problem P C max : m machines n jobs with processing times p 1,..., p { n 1 if job
More information5.1 Bipartite Matching
CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the FordFulkerson
More informationScheduling Shop Scheduling. Tim Nieberg
Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations
More informationAnswers to some of the exercises.
Answers to some of the exercises. Chapter 2. Ex.2.1 (a) There are several ways to do this. Here is one possibility. The idea is to apply the kcenter algorithm first to D and then for each center in D
More informationSemiMatchings for Bipartite Graphs and Load Balancing
SemiMatchings 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 lefthand vertices of a bipartite
More informationDistributed Computing over Communication Networks: Maximal Independent Set
Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.
More information8.1 Makespan Scheduling
600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programing: MinMakespan and Bin Packing Date: 2/19/15 Scribe: Gabriel Kaptchuk 8.1 Makespan Scheduling Consider an instance
More informationProximal mapping via network optimization
L. Vandenberghe EE236C (Spring 234) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:
More informationInverse Optimization by James Orlin
Inverse Optimization by James Orlin based on research that is joint with Ravi Ahuja Jeopardy 000  the Math Programming Edition The category is linear objective functions The answer: When you maximize
More informationWeek 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 informationAn Approximation Algorithm for Bounded Degree Deletion
An Approximation Algorithm for Bounded Degree Deletion Tomáš Ebenlendr Petr Kolman Jiří Sgall Abstract Bounded Degree Deletion is the following generalization of Vertex Cover. Given an undirected graph
More informationGuessing Game: NPComplete?
Guessing Game: NPComplete? 1. LONGESTPATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTESTPATH: Given a graph G = (V, E), does there exists a simple
More informationTHE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM
1 THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM Prof. Tiziana Calamoneri Network Algorithms A.y. 2014/15 2 THE PROBLEM WORMS (1)! A computer worm is a standalone malware
More informationApproximation Algorithms. Scheduling. Approximation algorithms. Scheduling jobs on a single machine
Approximation algorithms Approximation Algorithms Fast. Cheap. Reliable. Choose two. NPhard problems: choose 2 of optimal polynomial time all instances Approximation algorithms. Tradeoff between time
More informationA simpler and better derandomization of an approximation algorithm for Single Source RentorBuy
A simpler and better derandomization of an approximation algorithm for Single Source RentorBuy David P. Williamson Anke van Zuylen School of Operations Research and Industrial Engineering, Cornell University,
More informationOn the effect of forwarding table size on SDN network utilization
IBM Haifa Research Lab On the effect of forwarding table size on SDN network utilization Rami Cohen IBM Haifa Research Lab Liane Lewin Eytan Yahoo Research, Haifa Seffi Naor CS Technion, Israel Danny Raz
More informationThe multiinteger set cover and the facility terminal cover problem
The multiinteger 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 informationScheduling and (Integer) Linear Programming
Scheduling and (Integer) Linear Programming Christian Artigues LAAS  CNRS & Université de Toulouse, France artigues@laas.fr Master Class CPAIOR 2012  Nantes Christian Artigues Scheduling and (Integer)
More informationOnline Adwords Allocation
Online Adwords Allocation Shoshana Neuburger May 6, 2009 1 Overview Many search engines auction the advertising space alongside search results. When Google interviewed Amin Saberi in 2004, their advertisement
More informationPlanar 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 informationDefinition of a Linear Program
Definition of a Linear Program Definition: A function f(x 1, x,..., x n ) of x 1, x,..., x n is a linear function if and only if for some set of constants c 1, c,..., c n, f(x 1, x,..., x n ) = c 1 x 1
More informationLinear 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 information5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
More informationComplexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar
Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples
More informationNan Kong, Andrew J. Schaefer. Department of Industrial Engineering, Univeristy of Pittsburgh, PA 15261, USA
A Factor 1 2 Approximation Algorithm for TwoStage Stochastic Matching Problems Nan Kong, Andrew J. Schaefer Department of Industrial Engineering, Univeristy of Pittsburgh, PA 15261, USA Abstract We introduce
More informationPermutation 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 informationLecture 1: Course overview, circuits, and formulas
Lecture 1: Course overview, circuits, and formulas Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: John Kim, Ben Lund 1 Course Information Swastik
More informationCSL851: Algorithmic Graph Theory Semester I Lecture 4: August 5
CSL851: Algorithmic Graph Theory Semester I 201314 Lecture 4: August 5 Lecturer: Naveen Garg Scribes: Utkarsh Ohm Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have not
More informationA Randomized Approximation Algorithm for MAX 3SAT
A Randomized Approximation Algorithm for MAX 3SAT CS 511 Iowa State University December 8, 2008 Note. This material is based on Kleinberg & Tardos, Algorithm Design, Chapter 13, Section 4, and associated
More informationCSC2420 Spring 2015: Lecture 3
CSC2420 Spring 2015: Lecture 3 Allan Borodin January 22, 2015 1 / 1 Announcements and todays agenda Assignment 1 due next Thursday. I may add one or two additional questions today or tomorrow. Todays agenda
More informationCHAPTER 9. Integer Programming
CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral
More informationprinceton 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 informationOn the communication and streaming complexity of maximum bipartite matching
On the communication and streaming complexity of maximum bipartite matching Ashish Goel Michael Kapralov Sanjeev Khanna November 27, 20 Abstract Consider the following communication problem. Alice holds
More informationA Branch and Bound Algorithm for Solving the Binary Bilevel Linear Programming Problem
A Branch and Bound Algorithm for Solving the Binary Bilevel Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,
More informationResource Allocation with Time Intervals
Resource Allocation with Time Intervals Andreas Darmann Ulrich Pferschy Joachim Schauer Abstract We study a resource allocation problem where jobs have the following characteristics: Each job consumes
More informationCIS 700: algorithms for Big Data
CIS 700: algorithms for Big Data Lecture 6: Graph Sketching Slides at http://grigory.us/bigdataclass.html Grigory Yaroslavtsev http://grigory.us Sketching Graphs? We know how to sketch vectors: v Mv
More informationA NEW APPROXIMATION TECHNIQUE FOR RESOURCEALLOCATION PROBLEMS
A NEW APPROXIMATION TECHNIQUE FOR RESOURCEALLOCATION PROBLEMS BARNA SAHA AND ARAVIND SRINIVASAN Abstract. We develop a rounding method based on random walks in polytopes, which leads to improved approximation
More informationThe 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 informationWORSTCASE PERFORMANCE ANALYSIS OF SOME APPROXIMATION ALGORITHMS FOR MINIMIZING MAKESPAN AND FLOWTIME
WORSTCASE PERFORMANCE ANALYSIS OF SOME APPROXIMATION ALGORITHMS FOR MINIMIZING MAKESPAN AND FLOWTIME PERUVEMBA SUNDARAM RAVI, LEVENT TUNÇEL, MICHAEL HUANG Abstract. In 1976, Coffman and Sethi conjectured
More informationSingle machine models: Maximum Lateness 12 Approximation ratio for EDD for problem 1 r j,d j < 0 L max. structure of a schedule Q...
Lecture 4 Scheduling 1 Single machine models: Maximum Lateness 12 Approximation ratio for EDD for problem 1 r j,d j < 0 L max structure of a schedule 0 Q 1100 11 00 11 000 111 0 0 1 1 00 11 00 11 00
More informationGood luck, veel succes!
Final exam Advanced Linear Programming, May 7, 13.0016.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 informationLoadBalanced Virtual Backbone Construction for Wireless Sensor Networks
LoadBalanced Virtual Backbone Construction for Wireless Sensor Networks Jing (Selena) He, Shouling Ji, Yi Pan, Zhipeng Cai Department of Computer Science, Georgia State University, Atlanta, GA, USA, {jhe9,
More informationConstant Factor Approximation Algorithm for the Knapsack Median Problem
Constant Factor Approximation Algorithm for the Knapsack Median Problem Amit Kumar Abstract We give a constant factor approximation algorithm for the following generalization of the kmedian problem. We
More informationMinimal Cost Reconfiguration of Data Placement in a Storage Area Network
Minimal Cost Reconfiguration of Data Placement in a Storage Area Network Hadas Shachnai Gal Tamir Tami Tamir Abstract VideoonDemand (VoD) services require frequent updates in file configuration on the
More informationPh.D. Thesis. Judit NagyGyörgy. Supervisor: Péter Hajnal Associate Professor
Online algorithms for combinatorial problems Ph.D. Thesis by Judit NagyGyörgy Supervisor: Péter Hajnal Associate Professor Doctoral School in Mathematics and Computer Science University of Szeged Bolyai
More information8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
More informationMapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research
MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With
More informationAnalysis of Approximation Algorithms for kset Cover using FactorRevealing Linear Programs
Analysis of Approximation Algorithms for kset Cover using FactorRevealing Linear Programs Stavros Athanassopoulos, Ioannis Caragiannis, and Christos Kaklamanis Research Academic Computer Technology Institute
More informationLecture Notes 6: Approximations for MAXSAT. 2 Notes about Weighted Vertex Cover Approximation
Algorithmic Methods //00 Lecture Notes 6: Approximations for MAXSAT Professor: Yossi Azar Scribe:Alon Ardenboim Introduction Although solving SAT is nown to be NPComplete, in this lecture we will cover
More informationScheduling Parallel Jobs with Linear Speedup
Scheduling Parallel Jobs with Linear Speedup Alexander Grigoriev and Marc Uetz Maastricht University, Quantitative Economics, P.O.Box 616, 6200 MD Maastricht, The Netherlands. Email: {a.grigoriev,m.uetz}@ke.unimaas.nl
More informationImproved Results for Data Migration and Open Shop Scheduling
Improved Results for Data Migration and Open Shop Scheduling Rajiv Gandhi 1, Magnús M. Halldórsson, Guy Kortsarz 1, and Hadas Shachnai 3 1 Department of Computer Science, Rutgers University, Camden, NJ
More informationScheduling Parallel Jobs with Monotone Speedup 1
Scheduling Parallel Jobs with Monotone Speedup 1 Alexander Grigoriev, Marc Uetz Maastricht University, Quantitative Economics, P.O.Box 616, 6200 MD Maastricht, The Netherlands, {a.grigoriev@ke.unimaas.nl,
More informationApproximating Minimum Bounded Degree Spanning Trees to within One of Optimal
Approximating Minimum Bounded Degree Spanning Trees to within One of Optimal ABSTACT Mohit Singh Tepper School of Business Carnegie Mellon University Pittsburgh, PA USA mohits@andrew.cmu.edu In the MINIMUM
More informationWeighted Sum Coloring in Batch Scheduling of Conflicting Jobs
Weighted Sum Coloring in Batch Scheduling of Conflicting Jobs Leah Epstein Magnús M. Halldórsson Asaf Levin Hadas Shachnai Abstract Motivated by applications in batch scheduling of jobs in manufacturing
More informationIntroduction to Scheduling Theory
Introduction to Scheduling Theory Arnaud Legrand Laboratoire Informatique et Distribution IMAG CNRS, France arnaud.legrand@imag.fr November 8, 2004 1/ 26 Outline 1 Task graphs from outer space 2 Scheduling
More informationHomework Exam 1, Geometric Algorithms, 2016
Homework Exam 1, Geometric Algorithms, 2016 1. (3 points) Let P be a convex polyhedron in 3dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the
More informationCSC2420 Fall 2012: Algorithm Design, Analysis and Theory
CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin November 15, 2012; Lecture 10 1 / 27 Randomized online bipartite matching and the adwords problem. We briefly return to online algorithms
More informationWeighted Sum Coloring in Batch Scheduling of Conflicting Jobs
Weighted Sum Coloring in Batch Scheduling of Conflicting Jobs Leah Epstein Magnús M. Halldórsson Asaf Levin Hadas Shachnai Abstract Motivated by applications in batch scheduling of jobs in manufacturing
More informationLoad Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alphabeta pruning: how to assign work to idle processes without much communication? Additionally for alphabeta pruning: implementing the youngbrotherswait
More informationBeyond the Stars: Revisiting Virtual Cluster Embeddings
Beyond the Stars: Revisiting Virtual Cluster Embeddings Matthias Rost Technische Universität Berlin September 7th, 2015, TélécomParisTech Joint work with Carlo Fuerst, Stefan Schmid Published in ACM SIGCOMM
More informationCS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992
CS268: Geometric Algorithms Handout #5 Design and Analysis Original Handout #15 Stanford University Tuesday, 25 February 1992 Original Lecture #6: 28 January 1991 Topics: Triangulating Simple Polygons
More informationFairness 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 informationCombinatorial Algorithms for Data Migration to Minimize Average Completion Time
Combinatorial Algorithms for Data Migration to Minimize Average Completion Time Rajiv Gandhi 1 and Julián Mestre 1 Department of Computer Science, Rutgers UniversityCamden, Camden, NJ 0810. Research partially
More informationWhy graph clustering is useful?
Graph Clustering Why graph clustering is useful? Distance matrices are graphs as useful as any other clustering Identification of communities in social networks Webpage clustering for better data management
More informationExponential time algorithms for graph coloring
Exponential time algorithms for graph coloring Uriel Feige Lecture notes, March 14, 2011 1 Introduction Let [n] denote the set {1,..., k}. A klabeling of vertices of a graph G(V, E) is a function V [k].
More informationQuiz 1 Sample Questions IE406 Introduction to Mathematical Programming Dr. Ralphs
Quiz 1 Sample Questions IE406 Introduction to Mathematical Programming Dr. Ralphs These questions are from previous years and should you give you some idea of what to expect on Quiz 1. 1. Consider the
More informationPermutation 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 informationOnline Matching and Ad Allocation. Contents
Foundations and Trends R in Theoretical Computer Science Vol. 8, No. 4 (2012) 265 368 c 2013 A. Mehta DOI: 10.1561/0400000057 Online Matching and Ad Allocation By Aranyak Mehta Contents 1 Introduction
More information1 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 information3. 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 informationSmall Maximal Independent Sets and Faster Exact Graph Coloring
Small Maximal Independent Sets and Faster Exact Graph Coloring David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science The Exact Graph Coloring Problem: Given an undirected
More informationGRAPH THEORY LECTURE 4: TREES
GRAPH THEORY LECTURE 4: TREES Abstract. 3.1 presents some standard characterizations and properties of trees. 3.2 presents several different types of trees. 3.7 develops a counting method based on a bijection
More informationCrossLayer Survivability in WDMBased Networks
CrossLayer Survivability in WDMBased Networks Kayi Lee, Member, IEEE, Eytan Modiano, Senior Member, IEEE, HyangWon Lee, Member, IEEE, Abstract In layered networks, a single failure at a lower layer
More information4.4 The recursiontree method
4.4 The recursiontree method Let us see how a recursion tree would provide a good guess for the recurrence = 3 4 ) Start by nding an upper bound Floors and ceilings usually do not matter when solving
More informationScheduling Home Health Care with Separating Benders Cuts in Decision Diagrams
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery
More informationLecture 9. 1 Introduction. 2 Random Walks in Graphs. 1.1 How To Explore a Graph? CS621 Theory Gems October 17, 2012
CS62 Theory Gems October 7, 202 Lecture 9 Lecturer: Aleksander Mądry Scribes: Dorina Thanou, Xiaowen Dong Introduction Over the next couple of lectures, our focus will be on graphs. Graphs are one of
More informationImproved Algorithms for Data Migration
Improved Algorithms for Data Migration Samir Khuller 1, YooAh Kim, and Azarakhsh Malekian 1 Department of Computer Science, University of Maryland, College Park, MD 20742. Research supported by NSF Award
More informationARTICLE 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 twostage stochastic matching problems Nan Kong, Andrew J. Schaefer * Department of
More informationOutline. Switching and Routing
Outline Basics of switching Blocking Interconnection examples Complexity Recursive constructions Switching and Routing Switching is generally the establishment of connections on a circuit basis Routing
More information9th MaxPlanck Advanced Course on the Foundations of Computer Science (ADFOCS) PrimalDual Algorithms for Online Optimization: Lecture 1
9th MaxPlanck Advanced Course on the Foundations of Computer Science (ADFOCS) PrimalDual Algorithms for Online Optimization: Lecture 1 Seffi Naor Computer Science Dept. Technion Haifa, Israel Introduction
More informationAlgorithms for Virtual Private Network Design
Algorithms for Virtual Private Network Design Diploma Thesis of Thomas Rothvoß Advised by Prof. Dr. Friedrich Eisenbrand Second reviewer PD Dr. Piotr Krysta Fachbereich Informatik Universität Dortmund
More informationSolutions 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 informationGENERATING LOWDEGREE 2SPANNERS
SIAM J. COMPUT. c 1998 Society for Industrial and Applied Mathematics Vol. 27, No. 5, pp. 1438 1456, October 1998 013 GENERATING LOWDEGREE 2SPANNERS GUY KORTSARZ AND DAVID PELEG Abstract. A kspanner
More informationBy W.E. Diewert. July, Linear programming problems are important for a number of reasons:
APPLIED ECONOMICS By W.E. Diewert. July, 3. Chapter : Linear Programming. Introduction The theory of linear programming provides a good introduction to the study of constrained maximization (and minimization)
More information