Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract DE-AC04-94AL Reconnect ‘04 LP-Based Approximation Algorithms Cynthia Phillips Sandia National Laboratories
Slide 2 Linear Programming (LP) Relaxation-Based Approximation Variables can take rational values (relax integrality constraints) Efficiently solvable: gives lower bound on optimal IP solution Common technique: –Use structural information from LP solution to find feasible IP solution –Bound quality using LP bound Integrality gap = (best IP solution)/(best LP solution) This technique cannot prove anything better than integrality gap
Slide 3 Integer Program (IP) for capacitated network design A simple IP for capacitated network design: Where d(C) is the maximum demand d i for any pair that crosses cut C x e = 1 if edge e is selected
Slide 4 Knapsack Cover (KC) Inequalities A C
Slide 5 Finding An Approximate Solution Let Set of edges at least half selected by LP Select all these edges –Increases cost (for A) by factor of 2 Now much meet demand D(A) = D - u(A) with rest of edges
Slide 6 Finding an Approximate Solutions Sort edge by u e Consider the three cases
Slide 7 Finding an Approximate Solution x e = q/p rational r is least common multiple of denominators so rx e integral for all e Make 2rx e “copies” of x e (convex multipliers will be 1/r)
Slide 8 Approximate solution for knapsack (gap 2) 2rx e copies of edge e, sorted by capacity Place in r buckets, round robin Each bucket will be a solution S i No edge in any solution twice e1e1 e1e1 e1e1 e1e1 e1e1 e1e1 e2e2 e2e2 e2e2 e2e2 e3e3 e3e3
Slide 9 All buckets are Feasible First Bucket (biggest) Last Bucket (smallest) e k4 e k2 e1 e k3 e k1 < <
Slide 10 All Buckets Feasible Suppose We have So for all buckets From total capacity: Contradicts KC inequality
Slide 11 Separation Only have to satisfy KC inequality for Add these cuts if violated till we get an LP solution where KC inequality holds for it’s A.
Slide 12 Polynomial Time Really only m+1 distinct solutions e1e1 e1e1 e1e1 e1e1 e1e1 e1e1 e2e2 e2e2 e2e2 e2e2 e3e3 e3e3
Slide 13 A Scheduling Example Given n jobs J 1, J 2, …, J n Job J i has length p i, weight w i Precedence constraints: mean J i must finish before J j starts No preemption, one machine C j = completion time of job J j Goal: minimize NP-complete. We’ll get a 4-approximation
Slide 14 Integer Programming Formulation Subject to
Slide 15 Constraint: One Job at a Time Consider all (job, finish time) pairs that would run over (t-1, t] t t+1 t+2 t+p j -1 t-1 T-p j... t-1
Slide 16 Precedence Constraints If job J k finishes by time t + p k, then job J j must finish by time t
Slide 17 LP relaxation, Fractional Schedule x jt pjpj
Slide 18 Fractional Schedule x* Fractional Completion Time: Midpoint: min t* such that
Slide 19 Approximation Algorithm Solve LP Compute midpoints for all jobs Order by midpoints
Slide 20 Approximate Schedule is feasible No preemption One job at a time Precedence constraints Midpoint of J j < Midpoint of J k
Slide 21 Proof of Quality Road Map Relate C j to LP values Renumber jobs by midpoint: We’ll show
Slide 22 Upper Bound on Completion Times At time t j * fractional schedule has done p j /2 work. Since t k * t j * for k<j, schedule has done p k /2 work on J k. One unit of work/time unit But by construction t-p j t x jt
Slide 23 Lower Bound on LP values By definition: So
Slide 24 Proof of Quality Therefore
Slide 25 Comments Can create alternative schedules using point t j LP-based approximation algorithms can give feasible solutions in branch and bound Other LP-based approximation algorithms for scheduling problems are based on matching/assignment