Approximation Algorithms:

  • View
    36

  • Download
    2

Embed Size (px)

DESCRIPTION

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) - PowerPoint PPT Presentation

Text of Approximation Algorithms:

  • Approximation Algorithms:va TardosCornell Universityproblems, techniques, and their use in game theory

  • 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

  • Outline of talkTechniques:

    Greedy

    Local search

    LP techniques: rounding Primal-dual Problems:

    Disjoint paths

    Multi-way cut and labeling

    network design, facility locationRelation to Games local search price of anarchy primal dual cost sharing

  • Max disjoint paths problemGiven graph G, n nodes, m edges, and source-sink pairs. Connect as many as possible via edge-disjoint path.tstsstts

  • Greedy AlgorithmGreedily 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.

  • Greedy AlgorithmTheorem: m approximation. Kleinberg96Proof: One path used can block m better pathsEssentially best possible: m- lower bound unless P=NP by [Guruswami, Khanna, Rajaraman, Shepherd, Yannakakis99]

  • Disjoint paths:open problemConnect as many as pairs possible via paths where 2 paths may share any edge Same practical motivation Best greedy algorithm: n - (and also m1/3 -) approximation: Awerbuch, Azar, Plotkin93. No lower bound

  • Outline of talkTechniques:

    Greedy

    Local search

    LP techniques: rounding Primal-dual Problems:

    Disjoint paths

    Multi-way cut and labeling

    network design, facility locationRelation to Games local search Price of anarchy primal dual Cost sharing

  • Multi-way Cut ProblemGiven: a graph G = (V,E) ;k terminals {s1, , sk}cost we for each edge e

    Goal: Find a partition that separates terminals, and minimizes the cost {e separated} weSeparated edgess1s2s3s4

  • Greedy AlgorithmFor each terminal in turnFind min cut separating si from other terminals The next cuts2s1s4s3s2s1s4s3

  • Theorem: Greedy is a2-approximationProof: Each cut costs at most the optimums cut [Dahlhaus, Johnson, Papadimitriou, Seymour, and Yannakakis94]

    Cuts found by algorithm:Optimum partitionSelected cuts, cheaper than optimums cut, buteach edge in optimum is counted twice.s4s3s2s1

  • Multi-way cuts extensionGiven: graph G = (V,E), we0 for e ELabels 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} weSeparated edgespart 1part 2part 3part 4

  • ExampleDoes greedy work? For each terminal in turnFind min cut separating si from other terminals cheapmediumexpensives3s1s2

  • Greedy doesnt workGreedyFor each terminal in turnFind min cut separating si from other terminals

    The first two cuts:Remaining part not valid!s2s1s3

  • Local search[Boykov Veksler Zabih CVPR98] 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 -moveThm [Boykov, Vekler, Zabih] The best -move can be found via an (s,t) min-cut

  • Idea of the flow networkfor finding a -move

    s = all other terminals: retain current colorsc = change color to c = G

  • Theorem: local optimum is a 2-approximationPartition found by algorithm:Cuts used by optimumThe parts in optimum each give a possible local move:

  • Theorem: local optimum is a 2-approximationPartition found by algorithm:Possible move using the optimumChanging partition does not help current cut cheaperSum over all colors:Each edge in optimum counted twice

  • Metric labeling classification open problemGiven: graph G = (V,E); we0 for e Ek labels Lsubsets of allowed labels Lv a metric d(.,.) on the labels.Objective: Find labeling f(v)Lv for each node v to minimizee=(v,w) we d(f(v),f(w))Best approximation known: O(ln k ln ln k) Kleinberg-T99

  • Outline of talkTechniques:

    Greedy

    Local search

    LP techniques: rounding Primal-dual Problems:

    Disjoint paths

    Multi-way cut and labeling

    network design, facility locationRelation to Games local search Price of anarchy primal dual Cost sharing

  • Using Linear Programs for multi-way cutsUsing a linear program = fractional cut probabilistic assignment of nodes to partsIdea: Find optimal fractional labeling via linear programming

  • Fractional LabelingVariables:0 xva 1 p=node, a=label in Lvxva fraction of label a used on node v Constraints: xva = 1aLvfor all nodes v V each node is assigned to a label

    cost as a linear function of x: we |xua - xva |e=(u,v)aL

  • From Fractional x to multi-way cutThe Algorithm (Calinescu, Karloff, Rabani, 98, Kleinberg-T,99)

    While there are unassigned nodesselect a label a at random

  • The Algorithm (Cont.)While there are unassigned nodesselect a label a at randomselect 0 1 at randomassign all unassigned nodes v to selected label a if xva

  • Why Is This Choice Good?select 0 1 at randomassign 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 expectedseparation 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, Young99 improved bound 1.3438..

  • Outline of talkTechniques:

    Greedy

    Local search

    LP techniques: rounding Primal-dual Problems:

    Disjoint paths

    Multi-way cut and labeling

    network design, facility locationRelation to Games local search Price of anarchy primal dual Cost sharing

  • Metric Facility LocationF 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 cost fi.

  • Problem StatementWe need to:1) Pick a set S of facilities to open. 2) Assign every client to an open facility (a facility in S).

    Goal: Minimize cost of S + p dist(p,S).

  • What is known?All techniques can be used:Clever greedy [Jain, Mahdian, Saberi 02]

    Local search [starting with Korupolu, Plaxton, and Rajaraman 98], can handle capacities

    LP and rounding: [starting with Shmoys, T, Aardal 97]

    Here: primal-dual [starting with Jain-Vazirani99]

  • What is the primal-dual method?Uses economic intuition from cost sharingFor each requirement, like aLv xva = 1, someone has to pay to make it trueUses ideas from linear programming:dual LP and weak dualityBut does not solve linear programs

  • Dual Problem: Collect Fees Client p has a fee p (cost-share)

    Goal: collect as much as possible max p p

    Fairness: Do no overcharge: for any subset A of clients and any possible facility i we must have p A [p dist(p,i)] fiamount client p would contribute to building facility i.

  • Exact cost-sharingAll 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)+ p dist(p,S) , and

    both facilities are fees are optimal

  • Approximate cost-sharingIdea 1: each client starts unconnected, and with fee p=0

    Then it starts raising what it is willing to pay to get connectedRaise all shares evenly

    Example: = client= possible facility with its cost

  • Primal-Dual Algorithm (1)Each client raises his fee evenly what it is willing to pay = 1Its =1 share could be used towards building a connection to either facility

  • Primal-Dual Algorithm (2)Each client raises evenly what it is willing to payStarts contributing towards facility cost = 2

  • Primal-Dual Algorithm (3)Each client raises evenly what it is willing to payThree clients contributing = 3

  • Primal-Dual Algorithm (4)Open facility, when cost is covered by contributions4clients connected to open facilityOpen facility = 3

  • Primal-Dual Algorithm: TroubleTrouble: one client p connected to facility i, but contributes to also to facility j4Open facility = 3ijp

  • Primal-Dual Algorithm (5)Close facility j: 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.4Open facility = 3ijpghost

  • Primal-Dual Algorithm (6)Not yet connected clients raise their fee evenly

    Until all clients get connected4no not need to pay more than 3Open facility =6 =3 =3 =3ghost

  • 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 ??

  • Are costs fair??a set of clients A, and any possi