Approximation Algorithms:
E N D
Presentation Transcript
Approximation Algorithms: problems, techniques, and their use in game theory Éva Tardos Cornell University
What is approximation? • Find solution for an optimization problem guaranteed to have value close to the best possible. • How close? • additive error: (rare) • E.g., 3-coloring planar graphs is NP-complete, but 4-coloring always possible • multiplicative error: • -approximation: finds solution for an optimization problem within an factor to the best possible.
Why approximate? • NP-hard to find the true optimum • Just too slow to do it exactly • Decisions made on-line • Decisions made by selfish players
Techniques: Greedy Local search LP techniques: rounding Primal-dual Problems: Disjoint paths Multi-way cut and labeling network design, facility location Outline of talk • Relation to Games • local search price of anarchy • primal dual cost sharing
Max disjoint paths problem • Given graph G, n nodes, m edges, and source-sink pairs. • Connect as many as possible via edge-disjoint path. t s t s t s t s
t m½ 4 s t s t s t s Greedy Algorithm Greedily connect s-t pairs via disjoint paths, if there is a free path using at most m½ edges: If there is no short path at all, take a single long one.
t m½ 4 s t s t s t s Greedy Algorithm Theorem: m½ –approximation. Kleinberg’96 Proof: One path used can block m½ better paths • Essentially best possible: • m½- lower bound unless P=NP by[Guruswami, Khanna, Rajaraman, Shepherd, Yannakakis’99]
t s t s t s t s Disjoint paths:open problem • Connect as many as pairs possible via paths where 2 paths may share any edge • Same practical motivation • Best greedy algorithm: n½- (andalsom1/3-)approximation: Awerbuch, Azar, Plotkin’93. • No lower bound …
Techniques: Greedy Local search LP techniques: rounding Primal-dual Problems: Disjoint paths Multi-way cut and labeling network design, facility location Outline of talk • Relation to Games • local search Price of anarchy • primal dual Cost sharing
Multi-way Cut Problem • Given: • a graph G = (V,E) ; • k terminals {s1, …, sk} • costwe for each edge e • Goal: Find a partition that separates terminals, and minimizes the cost {e separated}we s3 Separated edges s1 s4 s2
The first cut Greedy Algorithm • For each terminal in turn • Find min cut separating si from other terminals s1 s3 s4 s2 s1 s3 The next cut s4 s2
Theorem: Greedy is a2-approximation Proof: Each cut costs at most the optimum’s cut [Dahlhaus, Johnson, Papadimitriou, Seymour, and Yannakakis’94] • Cuts found by algorithm: s3 s1 Optimum partition s4 s2 • Selected cuts, cheaper than optimum’s cut, but • each edge in optimum is counted twice.
Multi-way cuts extension • Given: • graph G = (V,E), we0 for e E • Labels L={1,…,k} • Lv L for each node v • Objective: Find a labeling of nodes such that each node v assigned to a label in Lv and it minimizes cost{e separated} we part 3 part 1 Separated edges part 2 part 4
Redorgreen Blueor green Redorblue Example s1 cheap • Does greedy work? • For each terminal in turn • Find min cut separating si from other terminals medium expensive s2 s3
Redorgreen Blueor green Redorblue Greedy doesn’t work • Greedy • For each terminal in turn • Find min cut separating si from other terminals • The first two cuts: s1 Remaining part not valid! s2 s3
Local search • [Boykov Veksler Zabih CVPR’98]2-approximation • Start with any valid labeling. • 2. Repeat (until we are tired): • Choose a color c. b. Find the optimal move where a subset of the vertices can be recolored, but only with the color c. (We will call this a c-move.)
A possible -move Thm [Boykov, Vekler, Zabih] The best -movecan be found via an (s,t) min-cut
Idea of the flow networkfor finding a -move s = all other terminals: retain current color G sc = change color toc =
Theorem: local optimum is a 2-approximation Partition found by algorithm: Cuts used by optimum The parts in optimum each give a possible local move:
Theorem: local optimum is a 2-approximation Partition found by algorithm: Possible move using the optimum • Changing partition does not help current cut cheaper • Sum over all colors: • Each edge in optimum counted twice
Metric labeling classificationopen problem • Given: • graph G = (V,E); we0 for e E • k labels L • subsets of allowed labels Lv • a metric d(.,.) on the labels. • Objective: Find labeling f(v)Lv for each node v to minimize • e=(v,w)wed(f(v),f(w)) Best approximation known: O(ln k ln ln k) Kleinberg-T’99
Techniques: Greedy Local search LP techniques: rounding Primal-dual Problems: Disjoint paths Multi-way cut and labeling network design, facility location Outline of talk • Relation to Games • local search Price of anarchy • primal dual Cost sharing
Label ? as : ½ + ½ ? Using Linear Programs for multi-way cuts • Using a linear program = fractional cut probabilistic assignment of nodes to parts Idea:Find“optimal” fractional labeling via linear programming
Fractional Labeling • Variables: • 0 xva 1 p=node, a=label in Lv • xva fraction of label a used on node v • Constraints: xva= 1 • for all nodes v V aLv • each node is assigned to a label • cost as a linear function of x: • we ½ |xua - xva| e=(u,v) aL
xva 1 u v Unassigned nodes From Fractional x to multi-way cut • The Algorithm (Calinescu, Karloff, Rabani, ’98, Kleinberg-T,’99) While there are unassigned nodes • select a label a at random
xva 1 Unassigned nodes u v The Algorithm (Cont.) • While there are unassigned nodes • select a labela at random select 0 1 at random assign all unassigned nodes v to selected label a if xva
xpa 1 Unassigned nodes p q Why Is This Choice Good? • select 0 1 at random • assign all unassigned nodes v to selected label a if xva • Note: • Probability of assigning node v to label a is xva • Probability of separating nodes u and v in this iteration is |xua –xva |
From Fractional x to Multi-way cut (Cont.) • Theorem:Given a fractional x, we find multi-way cut with expected • separation cost 2 (LP cost of x) • Corollary:if x is LP optimum . 2-approximation • Calinescu, Karloff, Rabani, ’98 • 1.5 approximation for multi-way cut (does not work for labeling) • Karger, Klein, Stein, Thorup, Young’99 improved bound 1.3438..
Techniques: Greedy Local search LP techniques: rounding Primal-dual Problems: Disjoint paths Multi-way cut and labeling network design, facility location Outline of talk • Relation to Games • local search Price of anarchy • primal dual Cost sharing
4 facility 5 3 client 2 Metric Facility Location • F is a set of facilities (servers). • D is a set of clients. • cij is the distance between any i and j in D F. • Facility i in F has costfi.
opened facility 4 facility 5 3 client 2 Problem Statement We need to: 1) Pick a set S of facilities to open. 2) Assign every client to an open facility (a facility in S). Goal: Minimizecostof S +pdist(p,S).
What is known? • All techniques can be used: • Clever greedy [Jain, Mahdian, Saberi ’02] • Local search [starting withKorupolu, Plaxton, and Rajaraman ’98],can handle capacities • LP and rounding: [starting with Shmoys, T, Aardal ’97] • Here: primal-dual [starting with Jain-Vazirani’99]
What is the primal-dual method? • Uses economic intuition from cost sharing • For each requirement, like aLvxva = 1, someone has to pay to make it true… • Uses ideas from linear programming: • dual LP and weak duality • But does not solve linear programs
Dual Problem: Collect Fees • Client p has a fee αp(cost-share) • Goal: collect as much as possible maxp αp • Fairness: Do no overcharge: for any subsetAof clients and any possible facility i we must have • p A [αp– dist(p,i)] fi amount client p would contribute to building facility i.
Exact cost-sharing • All clients connected to a facility • Cost share αp covers connection costs for each client p • Costs are “fair” • Cost fi of selecting a facility i is covered by clients using it • p αp =f(S)+ pdist(p,S) , and • both facilities are fees are optimal
4 4 4 Approximate cost-sharing • Idea 1: each client starts unconnected, and with fee αp=0 • Then it starts raising what it is willing to pay to get connected • Raise all shares evenly α • Example: = client = possible facility with its cost
4 4 Primal-Dual Algorithm (1) • Each client raises his fee α evenly what it is willing to pay Its α =1 share could be used towards building a connection to either facility α = 1
4 4 Primal-Dual Algorithm (2) • Each client raises evenly what it is willing to pay α = 2 Starts contributing towards facility cost
4 4 Primal-Dual Algorithm (3) • Each client raises evenly what it is willing to pay α = 3 Three clients contributing
4 Primal-Dual Algorithm (4) • Open facility, when cost is covered by contributions 4 α = 3 Open facility clients connected to open facility
4 Primal-Dual Algorithm: Trouble • Trouble: • one client p connected to facility i, but contributes to also to facility j 4 i j α = 3 p Open facility
4 Primal-Dual Algorithm (5) ghost • Close facilityj:will not open this facility. • Will this cause trouble? • Client p is close to both i and j facilities i and j are at most 2α from each other. 4 i j α = 3 p Open facility
4 Primal-Dual Algorithm (6) ghost α =3 4 • Not yet connected clients raise their fee evenly • Until all clients get connected α =6 α =3 α =3 Open facility no not need to pay more than 3
Feasibility + fairness ?? • All clients connected to a facility • Cost share αp covers connection costs of client p • Cost fi of opening a facility i is covered by clients connected to it • ?? Are costs “fair” ??
4 closed facility, ignored open facility 4 Are costs “fair”?? • a set of clients A, and any possible facility i we have p A [αp– dist(p,i)] fi • Why?we open facility i if there is enough contribution, and do not raise fees any further • But closed facilities are ignored! and may violate fairness
4 Are costs “fair”?? j i 4 α’q=4 Closed facility, ignored open facility p cause of closing Fair till it reaches a “ghost” facility. Let α’q αqbe the fee till a ghost facility is reached
4 4 p Feasibility + fairness ?? • All clients connected to a facility • Cost share αp covers connection costs for client p • Cost αp also covers cost of selected a facilities • Costs α’p are “fair” • How much smaller is α’ α ??
4 How much smaller is α’ α? • q client met ghost facility j • j became a ghost due to client p j i 4 q p p stopped raising its share first • αp α’q αq Recall dist(i,j) 2αp, so αq α’q +2αp 3α’q
Primal-dual approximation • The algorithm is a 3-approximation algorithm for the facility location problem • [Jain-Vazirani’99, Mettu-Plaxton’00] • Proof: • Fairness of the α’p fees p α’p min cost[max min] cost-recovery: f(S) + pdist(p,S) = p αp α 3α’q • 3-approximation algorithm
Techniques: Greedy Local search LP techniques: rounding Primal-dual Problems: Disjoint paths Multi-way cut and labeling network design, facility location Outline of talk • Relation to Games • primal dual Cost sharing • local search Price of anarchy