View
218
Download
1
Category
Tags:
Preview:
Citation preview
Primal Dual Primal Dual Combinatorial Combinatorial
AlgorithmsAlgorithms
Qihui ZhuQihui ZhuMay 11, 2009May 11, 2009
OutlineOutline
• Packing and covering
• Primal and dual problems
• Online prediction using feedback
• Primal-dual combinatorial
algorithm
• Applications and extensions
Packing Packing Problem (0-1 Knapsack)Problem (0-1 Knapsack)
• n objects with weights Wi and prices pi
• A knapsack with capacity c
• Pack objects maximizing the total price
without exceeding the capacity
Packing Problem (0-1 Knapsack)Packing Problem (0-1 Knapsack)
• n objects with weights Wi and prices pi
• A knapsack with capacity c
• Pack objects maximizing the total price
without exceeding the capacity
Knapsack IP
Packing Problem (General)Packing Problem (General)
• n objects with weights Wij and prices pi
• m constraints with capacity cj to fit
• Pack objects maximizing the total price
without exceeding the capacities
Packing IP
Covering ProblemCovering Problem
• n objects to cover at least pi times
• m sets with costs cj cover
each covers Wji objects
• Cover all objects with the minimal cost
Covering ProblemCovering Problem
• n objects to cover at least pi times
• m sets with costs cj cover
each covers Wji objects
• Cover all objects with the minimal cost
Covering IP
Fractional Packing Fractional Packing
Original form
Fractional Packing Fractional Packing
Matrix form
Original form
Fractional Packing and Covering Fractional Packing and Covering Are Dual Are Dual
Packing Covering
Fractional Packing and Covering Fractional Packing and Covering Are Dual Are Dual
Packing Covering
Covering: best upper bound on packingPacking: best lower bound on covering
Decision VersionDecision Version
Given constraint set
such that
For packing:
(PST 95)
Feasibility
Binary search for optimization
Flipped Sides of the Same CoinFlipped Sides of the Same Coin
“Yes” certificate “No” certificate
Think of the game of twenty questions...
Key Idea #1: Need Primal-Dual Key Idea #1: Need Primal-Dual AlgorithmAlgorithm
“Yes” certificate “No” certificate Primal: Dual:
How to Generate the How to Generate the Certificates?Certificates?
Randomly guessing ...
How to Generate the How to Generate the Certificates?Certificates?
Randomly guessing ...
Primal and Dual need to communicate
From Dual to PrimalFrom Dual to Primal
Efficient combinatorial algorithm
From Dual to PrimalFrom Dual to Primal
Given dual estimate and constraint set
Let , find such that
Oracle
Efficient combinatorial algorithm
From Dual to PrimalFrom Dual to Primal
Given dual estimate and constraint set
Let , find such that
Oracle
For packing, essentially ignore all capacity constraints
Reduce to sorting over !Complexity:
From Primal to DualFrom Primal to Dual
Combination of hyperplanes
From Primal to DualFrom Primal to Dual
Combination of hyperplanes
Tilt the hyperplanes using feedback , ..., etc.
One step not enough!
Getting complicated over iterations...
Online Prediction
Online PredictionOnline Prediction
• Experts predicting some uncertain event
Expert
Event
Online PredictionOnline Prediction
• Experts predicting some uncertain event
Expert
Event
Value
• Gain some value from the world (adversarial)
Online PredictionOnline Prediction
• Experts predicting some uncertain event
Expert
Event
Value
• Gain some value from the world (adversarial)
Weight
• Linearly combine by weights
Online PredictionOnline Prediction
• Experts predicting some uncertain event
Expert
Event
• Long term value over time
Time
Value
• Gain some value from the world (adversarial)
Weight
• Linearly combine by weights
A Simplified CaseA Simplified Case
Expert 1
Expert 2
Combined
Value Average playoff
Regret
1 0 1 0 1 0 1
history
? ? ? ? ?
• Only 2 experts
0 1 0 1 0 1 0? ? ? ? ?
?
?
• Value
0.9 0 0 0 0 0 0
Strategy IStrategy I
Expert 1
Expert 2
Combined
0.9 0 1 0 1 0 11 0 1 0 1
Take the best from history?
0.1 1 0 1 0 1 01 0 1 0 1
1
0
1
0 10.5
0 1 0 2/32/31/32/3
Strategy IIStrategy II
Expert 1
Expert 2
Combined
1 1 0 1 1 0 1
Linearly weighted by the cumulative values?
0 0 1 0 0 1 0
0
1
0 10.5
1 1 2/3 2/3 2/3
1 0 0 1/3 1/3 1/3
0 1 0 1 1 0 1
Strategy IIIStrategy III
Expert 1
Expert 2
Combined
1 1 0 1 1 0 1
Exponentially weighted by the cumulative values!
0 0 1 0 0 1 0
0
1
0 10.5
1 1 1-ε
1 0 0 ε ε ε
1-ε 1-ε
Key Idea #2: Need Multiplicative Key Idea #2: Need Multiplicative FeedbackFeedback
“Yes” certificate “No” certificate Primal: Dual:
From Primal to Dual: ContinuedFrom Primal to Dual: Continued
Multiplicative Weight Update (MW)
Let be the current state at step and be the “feedback”
Combination of hyperplanes
Regret BoundRegret Bound
Theorem (LW94) Suppose predictions of experts
have value . Each time the predictions are
combined by weights , where .
Update weights using . After time
Regret BoundRegret Bound
Theorem (LW94) Suppose predictions of experts
have value . Each time the predictions are
combined by weights , where .
Update weights using . After time
Proof. Consider the potential function
Show that it is dominated by the best expert.
Primal-Dual AlgorithmsPrimal-Dual Algorithms
Primal Dual
Multiplicative Weight Update
Oracle
AlgorithmAlgorithm
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm
AnalysisAnalysis
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial AlgorithmOracle: if failed, infeasible
AnalysisAnalysis
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm Oracle: if failed, infeasible
Regret bound:
Width:
Feasible solution!
Complexity depends on
ApplicationsApplications
• Fractional packing and covering
• Multicommodity flow
• Held-Karp Bound for TSP
• Semidefinite programming (SDP)
relaxation
• General convex programming
• Boosting
• Matrix game
ApplicationsApplications
• Fractional packing and covering
• Multicommodity flow
• Held-Karp Bound for TSP
• Semidefinite programming (SDP)
relaxation
• General convex programming
• Boosting
• Matrix game
Multicommodity FlowMulticommodity Flow
• Objective: maximizing total flow while respecting capacities
Multicommodity FlowMulticommodity Flow
• Objective: maximizing total flow while respecting capacities
• Packing paths
• Update: route some flow along shortest path
Multicommodity Flow
Congestion
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm
Multicommodity FlowMulticommodity Flow
Oracle : shortest path
keep pushing flows through
P : polytope of graph flows
Augment length (GK 98)
SDP RelaxationSDP RelaxationMax Cut (GW 95)
• Better bounds on Max Cut, Sparsest Cut, Max-2Sat, etc.
• Finding good geometric embedding by SDP + rounding
• Interior point method not scale-
Sparsest Cut (ARV 04)
Primal SDP Dual SDP
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm
Primal SDPPrimal SDP
P : set of semidefinite matrices
Oracle : compute eigenvectors!
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm
Dual SDPDual SDP
P & Oracle : same as packing
Multiplicative Weight Update
Use matrix exponential
!
Initialize: ,
Repeat
Set
Oracle
If then
Return infeasible, output
Set
Multiplicative Weight Update
Until
Return feasible solution
Primal-Dual Combinatorial Algorithm
Weighted Majority Weighted Majority Algorithm/BoostingAlgorithm/Boosting
Events/Classification results: not controlled by us!
Error on training examples
SummarySummary
Combinatorial subroutines
SummarySummary
Combinatorial subroutines
Fast algorithms!
ConclusionConclusion
• A computational paradigm– Applied to numerous problems – Cover at least convex problems
• Fast approximation algorithms– Trade accuracy for time: O(1/ε)– Fast combinatorial algorithms for oracle (without
solving LP!)
• Flexibility for algorithm design– Multiplicative weight update: a principle way to
use feedback– Free to separate and combine constraints
• Width management is important– Most algorithms polynomial to width– Separate high width constraints: nested primal-
dual– Decompose constraint set
Thank you!Thank you!
Questions …Questions …
Regret BoundRegret Bound
Theorem (LW94) Suppose predictions of experts
have value . Each time the predictions are
combined by weights , where .
Update weights using . After time
Proof. Consider the potential function
Show that it is dominated by the best expert.
Update rule
Update rule
Exp function
Width
Update rule
Exp function
Width
Recommended