Vertex Cover Problems
|
|
- Randell Henry
- 1 years ago
- Views:
Transcription
1 Rob van Stee: Approximations- und Online-Algorithmen 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 (MIN-VCP): find a vertex cover S that minimizes S.
2 Rob van Stee: Approximations- und Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 7 Theorem 1. Algorithm greedyvc computes a two-approximation of MIN-VCP. 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 Online-Algorithmen 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 (WEIGHT-VCP): find a vertex cover S that minimizes c(s) v S
9 Rob van Stee: Approximations- und Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 WEIGHT-VCP Function lpweightedvc(v, E, c) x:= lpsolve(linearrelaxation(v, E, c)) return{v V : x v 1/2}
12 Rob van Stee: Approximations- und Online-Algorithmen 12 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 13 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 14 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 15 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 16 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 17 Theorem 2. Algorithm lpweightedvc computes a two-approximation of WEIGHT-VCP. 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 34 More on Vertex Cover There are simple deterministic linear time 2-approximations. (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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 LP-speak: integrality gap m
38 Rob van Stee: Approximations- und Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 41 More LP-speak 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 52 Example p i j Each job on fastest machine: =: α x i j Solution of LP(3):
53 Rob van Stee: Approximations- und Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 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 Online-Algorithmen 56 Example p i j x i j T =
57 Rob van Stee: Approximations- und Online-Algorithmen 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 Online-Algorithmen 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,
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
! 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
Algorithm 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;
! 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
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
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
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
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
11. 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
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
CSL851: Algorithmic Graph Theory Semester I Lecture 1: July 24
CSL851: Algorithmic Graph Theory Semester I 2013-2014 Lecture 1: July 24 Lecturer: Naveen Garg Scribes: Suyash Roongta Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have
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
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
Steiner 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
ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN. Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015
ONLINE DEGREE-BOUNDED 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
Scheduling 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
5.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 Ford-Fulkerson
Scheduling 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
Answers 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 k-center algorithm first to D and then for each center in D
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
Distributed 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.
8.1 Makespan Scheduling
600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programing: Min-Makespan and Bin Packing Date: 2/19/15 Scribe: Gabriel Kaptchuk 8.1 Makespan Scheduling Consider an instance
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:
Inverse 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
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
An 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
Guessing Game: NP-Complete?
Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple
THE 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
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
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,
On 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
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.
Scheduling 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)
Online 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
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
Definition 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
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.
5 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
Complexity 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
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
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
Lecture 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
CSL851: Algorithmic Graph Theory Semester I Lecture 4: August 5
CSL851: Algorithmic Graph Theory Semester I 2013-14 Lecture 4: August 5 Lecturer: Naveen Garg Scribes: Utkarsh Ohm Note: LaTeX template courtesy of UC Berkeley EECS dept. Disclaimer: These notes have not
A Randomized Approximation Algorithm for MAX 3-SAT
A Randomized Approximation Algorithm for MAX 3-SAT CS 511 Iowa State University December 8, 2008 Note. This material is based on Kleinberg & Tardos, Algorithm Design, Chapter 13, Section 4, and associated
CSC2420 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
CHAPTER 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
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
On 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
A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem
A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,
Resource 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
CIS 700: algorithms for Big Data
CIS 700: algorithms for Big Data Lecture 6: Graph Sketching Slides at http://grigory.us/big-data-class.html Grigory Yaroslavtsev http://grigory.us Sketching Graphs? We know how to sketch vectors: v Mv
A NEW APPROXIMATION TECHNIQUE FOR RESOURCE-ALLOCATION PROBLEMS
A NEW APPROXIMATION TECHNIQUE FOR RESOURCE-ALLOCATION PROBLEMS BARNA SAHA AND ARAVIND SRINIVASAN Abstract. We develop a rounding method based on random walks in polytopes, which leads to improved approximation
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 }
WORST-CASE PERFORMANCE ANALYSIS OF SOME APPROXIMATION ALGORITHMS FOR MINIMIZING MAKESPAN AND FLOWTIME
WORST-CASE 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
Single 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
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
Load-Balanced Virtual Backbone Construction for Wireless Sensor Networks
Load-Balanced 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,
Constant 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 k-median problem. We
Minimal 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 Video-on-Demand (VoD) services require frequent updates in file configuration on the
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
8.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
MapReduce 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
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
Lecture Notes 6: Approximations for MAX-SAT. 2 Notes about Weighted Vertex Cover Approximation
Algorithmic Methods //00 Lecture Notes 6: Approximations for MAX-SAT Professor: Yossi Azar Scribe:Alon Ardenboim Introduction Although solving SAT is nown to be NP-Complete, in this lecture we will cover
Scheduling 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
Improved 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
Scheduling 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,
Approximating 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
Weighted 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
Introduction 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
Homework Exam 1, Geometric Algorithms, 2016
Homework Exam 1, Geometric Algorithms, 2016 1. (3 points) Let P be a convex polyhedron in 3-dimensional space. The boundary of P is represented as a DCEL, storing the incidence relationships between the
CSC2420 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
Weighted 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
Load Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait
Beyond the Stars: Revisiting Virtual Cluster Embeddings
Beyond the Stars: Revisiting Virtual Cluster Embeddings Matthias Rost Technische Universität Berlin September 7th, 2015, Télécom-ParisTech Joint work with Carlo Fuerst, Stefan Schmid Published in ACM SIGCOMM
CS268: 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
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
Combinatorial 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 University-Camden, Camden, NJ 0810. Research partially
Why 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
Exponential 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 k-labeling of vertices of a graph G(V, E) is a function V [k].
Quiz 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
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
Online 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
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
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
Small 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
GRAPH 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
Cross-Layer Survivability in WDM-Based Networks
Cross-Layer Survivability in WDM-Based Networks Kayi Lee, Member, IEEE, Eytan Modiano, Senior Member, IEEE, Hyang-Won Lee, Member, IEEE, Abstract In layered networks, a single failure at a lower layer
4.4 The recursion-tree method
4.4 The recursion-tree 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
Scheduling 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
Lecture 9. 1 Introduction. 2 Random Walks in Graphs. 1.1 How To Explore a Graph? CS-621 Theory Gems October 17, 2012
CS-62 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
Improved Algorithms for Data Migration
Improved Algorithms for Data Migration Samir Khuller 1, Yoo-Ah Kim, and Azarakhsh Malekian 1 Department of Computer Science, University of Maryland, College Park, MD 20742. Research supported by NSF Award
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
Outline. 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
9th Max-Planck Advanced Course on the Foundations of Computer Science (ADFOCS) Primal-Dual Algorithms for Online Optimization: Lecture 1
9th Max-Planck Advanced Course on the Foundations of Computer Science (ADFOCS) Primal-Dual Algorithms for Online Optimization: Lecture 1 Seffi Naor Computer Science Dept. Technion Haifa, Israel Introduction
Algorithms 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
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.
GENERATING LOW-DEGREE 2-SPANNERS
SIAM J. COMPUT. c 1998 Society for Industrial and Applied Mathematics Vol. 27, No. 5, pp. 1438 1456, October 1998 013 GENERATING LOW-DEGREE 2-SPANNERS GUY KORTSARZ AND DAVID PELEG Abstract. A k-spanner
By 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)