A Primal-Dual Approach to Online Optimization Problems.

Slides:



Advertisements
Similar presentations
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Advertisements

Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Algorithm Design Methods Spring 2007 CSE, POSTECH.
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
Chapter 19 – Linear Programming
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
1 Chapter 11 Here we see cases where the basic LP model can not be used.
Gomory’s cutting plane algorithm for integer programming Prepared by Shin-ichi Tanigawa.
Online Algorithms Amrinder Arora Permalink:
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
Making Choices using Structure at the Instance Level within a Case Based Reasoning Framework Cormac Gebruers*, Alessio Guerri †, Brahim Hnich* & Michela.
Online Algorithms, Linear Programming, and the k-Server Problem Seffi Naor Computer Science Dept. Technion Approximation Algorithms: The Last Decade and.
Dynamic Power Management for Systems with Multiple Power Saving States Sandy Irani, Sandeep Shukla, Rajesh Gupta.
Approximation Algorithms
Online Algorithms Motivation and Definitions Paging Problem Competitive Analysis Online Load Balancing.
Integer Programming Integer programming is a solution method for many discrete optimization problems Programming = Planning in this context Origins go.
Reformulated - SVR as a Constrained Minimization Problem subject to n+1+2m variables and 2m constrains minimization problem Enlarge the problem size and.
Integer Programming Difference from linear programming –Variables x i must take on integral values, not real values Lots of interesting problems can be.
Lecture outline Support vector machines. Support Vector Machines Find a linear hyperplane (decision boundary) that will separate the data.
Algoritmi on-line e risoluzione di problemi complessi Carlo Fantozzi
Evaluation of Algorithms for the List Update Problem Suporn Pongnumkul R. Ravi Kedar Dhamdhere.
Linear Programming – Max Flow – Min Cut Orgad Keller.
Online Auctions in IaaS Clouds: Welfare and Profit Maximization with Server Costs Xiaoxi Zhang 1, Zhiyi Huang 1, Chuan Wu 1, Zongpeng Li 2, Francis C.M.
1 Linear Programming Supplements (Optional). 2 Standard Form LP (a.k.a. First Primal Form) Strictly ≤ All x j 's are non-negative.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Linear-Programming Applications
CSCI 3160 Design and Analysis of Algorithms Tutorial 12
Minimizing Cache Usage in Paging Alejandro Salinger University of Waterloo Joint work with Alex López-Ortiz.
1/24 Algorithms for Generalized Caching Nikhil Bansal IBM Research Niv Buchbinder Open Univ. Israel Seffi Naor Technion.
Data Envelopment Analysis. Weights Optimization Primal – Dual Relations.
Guy Even & Moti Medina EE Tel-Aviv University Gregor Schaffrath & Stefan Schmid Deutsche Telekom Labs, TU Berlin.
A Primal-Dual Approach for Online Problems Nikhil Bansal.
An Online Procurement Auction for Power Demand Response in Storage-Assisted Smart Grids Ruiting Zhou †, Zongpeng Li †, Chuan Wu ‡ † University of Calgary.
STDM - Linear Programming 1 By Isuru Manawadu B.Sc in Accounting Sp. (USJP), ACA, AFM
Online Paging Algorithm By: Puneet C. Jain Bhaskar C. Chawda Yashu Gupta Supervisor: Dr. Naveen Garg, Dr. Kavitha Telikepalli.
Quasi-static Channel Assignment Algorithms for Wireless Communications Networks Frank Yeong-Sung Lin Department of Information Management National Taiwan.
Introduction to Linear Programming BSAD 141 Dave Novak.
1 Online algorithms Typically when we solve problems and design algorithms we assume that we know all the data a priori. However in many practical situations.
Minimizing Cache Usage in Paging Alejandro López-Ortiz, Alejandro Salinger University of Waterloo.
Department Of Industrial Engineering Duality And Sensitivity Analysis presented by: Taha Ben Omar Supervisor: Prof. Dr. Sahand Daneshvar.
1 Online algorithms Typically when we solve problems and design algorithms we assume that we know all the data a priori. However in many practical situations.
Minimax Open Shortest Path First (OSPF) Routing Algorithms in Networks Supporting the SMDS Service Frank Yeong-Sung Lin ( 林永松 ) Information Management.
Online Algorithms, Linear Programming, and the k-Server Problem
Advanced Algorithms Piyush Kumar (Lecture 16: Review) Welcome to the end of COT5405.
Integer Programming (정수계획법)
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Frequency Capping in Online Advertising Moran Feldman Technion Joint work with: Niv Buchbinder,The Open University of Israel Arpita Ghosh,Yahoo! Research.
Instructor: Shengyu Zhang 1. Secretary hiring problem 2.
Non-Preemptive Buffer Management for Latency Sensitive Packets Moran Feldman Technion Seffi Naor Technion.
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
1 Online algorithms 叶德仕 2 Online & offline Traditional theoretical analysis is concerned with off-line problems where the complete.
Instructor: Shengyu Zhang 1. Offline algorithms Almost all algorithms we encountered in this course assume that the entire input is given all at once.
Nonlinear Adaptive Kernel Methods Dec. 1, 2009 Anthony Kuh Chaopin Zhu Nate Kowahl.
Approximation Algorithms based on linear programming.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Stat 261 Two phase method.
6.5 Stochastic Prog. and Benders’ decomposition
EMIS 8373: Integer Programming
Frank Yeong-Sung Lin (林永松) Information Management Department
The Simplex Method: Standard Minimization Problems
Integer Programming (정수계획법)
Dynamic and Online Algorithms for Set Cover
Department of Information Management National Taiwan University
Gomory’s cutting plane algorithm for integer programming
Linear Programming Duality, Reductions, and Bipartite Matching
ورود اطلاعات بصورت غيربرخط
Greedy Algorithms / Caching Problem Yin Tat Lee
Integer Programming (정수계획법)
6.5 Stochastic Prog. and Benders’ decomposition
Presentation transcript:

A Primal-Dual Approach to Online Optimization Problems

Online Optimization Problems input arrives piece by piece (piece is called request) upon arrival of a request - has to be served immediately past decisions cannot be revoked how to evaluate the performance of an online algorithm? –if, for each request sequence, cost(online) r x cost(optimal offline) –then online algorithm is r-competitive

Road Map Introducing the framework: Ski rental Online set cover Virtual circuit routing The general framework: {0,1} covering/packing linear programs General covering/packing linear programs Recent results: The ad-auctions problem Weighted caching

The Ski Rental Problem Buying costs $B. Renting costs $1 per day. Problem: Number of ski days is not known in advance. Goal: Minimize the total cost.

Ski Rental – Integer Program Subject to: For each day i:

D: Dual Packing For each day i: Ski Rental – Relaxation P: Primal Covering For each day i: Online setting: Primal: New constraints arrive one by one. Requirement: Upon arrival, constraints should be satisfied. Monotonicity: Variables can only be increased.

D: Dual Packing For each day i: Ski Rental – Algorithm P: Primal Covering For each day i: Initially x 0 Each new day (new constraint): if x<1: z i 1-x x x(1+ 1/B) + 1/(c*B) - c later. y i 1

Analysis of Online Algorithm Proof of competitive factor: 1.Primal solution is feasible. 2.In each iteration, ΔP (1+ 1/c)ΔD. 3.Dual is feasible. Conclusion: Algorithm is (1+ 1/c)-competitive Initially x 0 Each new day (new constraint): if x<1: z i 1-x x x(1+ 1/B) + 1/(c*B) - c later. y i 1

Analysis of Online Algorithm 1.Primal solution is feasible. If x 1 the solution is feasible. Otherwise set: z i 1-x. 2.In each iteration, ΔP (1+ 1/c)ΔD: If x1, ΔP =ΔD=0 Otherwise: Change in dual: 1 Change in primal: BΔx + z i = x+ 1/c+ 1-x = 1+1/c Algorithm: When new constraint arrives, if x<1: z i 1-x x x(1+ 1/B) + 1/c*B y i 1

Analysis of Online Algorithm 3.Dual is feasible: Need to prove: We prove that after B days x1 x is a sum of geometric sequence a 1 = 1/(cB), q = 1+1/B Algorithm: When new constraint arrives, if x<1: z i 1-x x x(1+ 1/B) + 1/c*B y i 1

Randomized Algorithm Choose d uniformly in [0,1] Buy on the day corresponding to the bin d falls in Rent up to that day Analysis: Probability of buying on the i-th day is x i Probability of renting on the i-th day is at most z i X1X1 X2X2 X3X3 X4X4 0 1 X:

Key Idea for Primal-Dual Primal: Min i c i x i Dual: Max t b t y t Step t, new constraint: New variable y t a 1 x 1 + a 2 x 2 + … + a j x j b t + b t y t in dual objective x i (1+ a i /c i ) x i (mult. update) y t y t + 1 (additive update) primal cost = = Dual Cost

The Online Set-Cover Problem Elements: e 1, e 2, …, e n Set system: s 1, s 2, … s m Costs: c(s 1 ), c(s 2 ), … c(s m ) Online Setting: Elements arrive one by one. Upon arrival elements need to be covered. Sets that are chosen cannot be unchosen. Goal: Minimize the cost of the chosen sets.

D: Dual Packing Set Cover – Linear Program P: Primal Covering Online setting: Primal: constraints arrive one by one. Requirement: each constraint is satisfied. Monotonicity: variables can only be increased.

D: Dual Packing Set Cover – Algorithm P: Primal Covering Initially x(s) 0 When new element arrives, while y(e) y(e)+1.

Analysis of Online Algorithm Proof of competitive factor: 1.Primal solution is feasible. 2.In each iteration, ΔP 2ΔD. 3.Dual is (almost) feasible. Conclusion: We will see later. Initially x(S) 0 When new element e arrives, while y(e) y(e)+1.

Analysis of Online Algorithm 1.Primal solution is feasible. We increase the primal variables until the constraint is feasible. Initially x(S) 0 When new element e arrives, while y(e) y(e)+1.

Analysis of Online Algorithm 2.In each iteration, ΔP 2ΔD. In each iteration: ΔD = 1 Initially x(S) 0 When new element e arrives, while y(e) y(e)+1.

Analysis of Online Algorithm 3.Dual is (almost) feasible: We prove that: If y(e) increases, then x(s) increases (for e in S). x(s) is a sum of a geometric series: a 1 = 1/[mc(s)], q = (1+ 1/c(s)) Initially x(S) 0 When new element e arrives, while y(e) y(e)+1.

Analysis of Online Algorithm After c(s)O(log m) rounds: We never increase a variable x(s)>1! Initially x(S) 0 When new element e arrives, while y(e) y(e)+1.

Conclusion The dual is feasible with cost 1/O(log m) of the primal. The algorithm produces a fractional set cover that is O(log m)-competitive. Remark: No online algorithm can perform better in general. What about an integral solution? Round fractional solution. (With O(log n) amplification.) Can be done deterministically online [AAABN03]. Competitive ratio is O(log m log n).

Online Virtual Circuit Routing Network graph G=(V, E) capacity function u: E Z + Requests: r i = (s i, t i ) Problem: Connect s i to t i by a path, or reject the request. Reserve one unit of bandwidth along the path. No re-routing is allowed. Load: ratio between reserved edge bandwidth and edge capacity. Goal: Maximize the total throughput.

Routing – Linear Program s.t: For each r i : For each edge e: = Amount of bandwidth allocated for r i on path p - Available paths to serve request r i

D: Dual Packing Routing – Linear Program P: Primal Covering Online setting: Dual: new columns arrive one by one. Requirement: each dual constraint is satisfied. Monotonicity: variables can only be increased.

D: Dual Packing Routing – Algorithm P: Primal Covering Initially x(e) 0 When new request arrives, if z(r i ) 1. y(r i,p) 1

Analysis of Online Algorithm Proof of competitive factor: 1.Primal solution is feasible. 2.In each iteration, ΔP 3ΔD. 3.Dual is (almost) feasible. Conclusion: We will see later. Initially x(e) 0 When new request arrives, if z(r i ) 1. y(r i,p) 1

Analysis of Online Algorithm 1.Primal solution is feasible. If the solution is feasible. Otherwise: we update z(r i ) 1 Initially x(e) 0 When new request arrives, if z(r i ) 1. y(r i,p) 1

Analysis of Online Algorithm 2.In each iteration: ΔP 3ΔD. If ΔP = ΔD=0 Otherwise: ΔD=1 Initially x(e) 0 When new request arrives, if z(r i ) 1. y(r i,p) 1

Analysis of Online Algorithm 3.Dual is (almost) feasible. We prove: For each e, after routing u(e)O(log n) on e, x(e)1 x(e) is a sum of a geometric sequence x(e) 1 = 1/(nu(e)), q = 1+1/u(e) After u(e)O(log n) requests:

New Results via P-D Approach: Routing Previous results (routing/packing): [AAP93] – Route O(log n) fraction of the optimal without violating capacity constraints. Capacities must be at least logarithmic. [AAFPW94] – Route all the requests with load of at most O(log n) times the optimal load. Observation [BN06] – Both results can be described within the primal-dual approach.

New Results via P-D Approach: Routing We saw a simple algorithm which is: 3-competitive and violates capacities by O(log n) factor. Can be improved [Buchbinder, Naor, FOCS06] to: 1-competitive and violates capacities by O(log n) factor. Non Trivial. Main ideas: Combination of ideas drawn from casting of previous routing algorithms within the primal-dual approach. Decomposition of the graph. Maintaining several primal solutions which are used to bound the dual solution, and for the routing decisions.

New Results via P-D Approach: Routing Applications [Buchbinder, N, FOCS 06]: Can be used as black box for many objective functions and in many routing models: –Previous Settings [AAP93,APPFW94]. –Maximizing throughput. –Minimizing load. –Achieving better global fairness results (Coordinate competitiveness).

Road Map Introducing the framework: Ski rental Online set cover Virtual circuit routing The general framework: {0,1} covering/packing linear programs General covering/packing linear programs Recent results: The ad-auctions problem Weighted caching

Online Primal-Dual Approach Can the offline problem be cast as a linear covering/packing program? Can the online process be described as: –New rows appearing in a covering LP? –New columns appearing in a packing LP? Yes ?? Upon arrival of a new request: –Update primal variables in a multiplicative way. –Update dual variables in an additive way.

Online Primal Dual Approach Next Prove: 1.Primal solution is feasible (or nearly feasible). 2.In each round, ΔP c ΔD. 3.Dual is feasible (or nearly feasible). Got a fractional solution, but need an integral solution ?? Randomized rounding techniques might work. Sometimes, even derandomization (e.g., method of conditional probabilities) can be applied online!

Online Primal-Dual Approach Advantages: 1.Generic ideas and algorithms applicable to many online problems. 2.Linear Program helps detecting the difficulties of the online problem. 3.General recipe for the design and analysis of online algorithms. 4.No potential function appearing out of nowhere. 5.Competitiveness with respect to a fractional optimal solution.

General Covering/Packing Results What can you expect to get? For a {0,1} covering/packing matrix: –Competitive ratio O(log D) [BN05] (D – max number of non-zero entries in a constraint). Remarks: Fractional solutions. Number of constraints/variables can be exponential. There can be a tradeoff between the competitive ratio and the factor by which constraints are violated.

General Covering/Packing Results For a general covering/packing matrix [BN05] : Covering: –Competitive ratio O(log n) (n – number of variables). Packing: –Competitive ratio O(log n + log [a(max)/a(min)]) a(max), a(min) – maximum/minimum non-zero entry Remarks: Results are tight.

Special Cases The max number of non-zero entries in a constraint is a constant? You can get a constant ratio. The max number of non-zero entries in a constraint is 2? Calls for an e/(e-1)-ratio. Examples: Ski rental, Online matching, Ad-Auctions.

Known Results via P-D Approach Covering Online Problems (Minimization): O(log k)-algorithm for weighted caching [BBN07] Ski rental, Dynamic TCP Acknowledgement Parking Permit Problem [Meyerson 05] Online Set Cover [AAABN03] Online Graph Covering Problems [AAABN04]: –Non-metric facility location –Generalized connectivity: pairs arrive online –Group Steiner: groups arrive online –Online multi-cut: (s,t)--pairs arrive online

Known Results via P-D Approach Packing Online Problems (maximization): Online Routing/Load Balancing Problems [AAP93, AAPFW93, BN06 ]. General Packing/routing e.g. Multicast trees. Online Matching [KVV91] – Nodes arrive one-by-one. Ad-Auctions Problem [MSVV05] – In a bit …

Road Map Introducing the framework: Ski rental Online set cover Virtual circuit routing The general framework: {0,1} covering/packing linear programs General covering/packing linear programs Recent results: The ad-auctions problem Weighted caching

What are Ad-Auctions? You type in a search engine: You get: Algorithmic Search results And … Advertisements Vacation Eilat

How do search engines sell ads? Each advertiser: – Sets a daily budget – Provides bids on interesting keywords Search Engine (on each keyword): – Selects ads – Advertiser pays bid if user clicks on ad. Goal (of Search engine): Maximize revenue

Mathematical Model Buyer i: – Has a daily budget B(i) Online Setting: –Items (keywords) arrive one-by-one. –Each buyer gives a bid on each of the items (can be zero) Algorithm: –Assigns each item to some interested buyer. Assumption: Bids are small compared to the daily budget.

Ad-Auctions – Linear Program s.t: For each item j: For each buyer i: I - Set of buyers. J - Set of items. = 1 j-th ad-auction is sold to buyer i. B(i) – Budget of buyer i b(i,j) – bid of buyer i on item j Each item is sold once. Buyers do not exceed their budget

Results [ MSVV FOCS 05]: (1-1/e)-competitive online algorithm. Bound is tight. Analysis uses tradeoff revealing family of LPs - not very intuitive. Our Results [Buchbinder, Jain, N, 2007]: A different approach based on the primal-dual method: very simple and intuitive … and extensions. Techniques are applicable to many other problems.

Extensions – Getting more revenue Seller wants to sell several advertisements in each round (to different bidders). Additional stochastic information is known. The number of buyers interested in each item is small. General risk management of the buyers.

The Paging/Caching Problem Set of n pages, cache of size k<n. Request sequence of pages 1, 6, 4, 1, 4, 7, 6, 1, 3, … If requested page is in cache, no penalty. Else, cache miss! And load page into cache, (possibly) evicting some page. Goal: Minimize the number of cache misses. Main Question: Which page to evacuate?

Previous Results: Paging Paging (Deterministic) [Sleator Tarjan 85]: Any det. algorithm >= k-competitive. LRU is k-competitive (also other algorithms) LRU is k/(k-h+1)-competitive if optimal has cache of size h<k Paging (Randomized): Rand. Marking O(log k) [Fiat, Karp, Luby, McGeoch, Sleator, Young 91]. Lower bound H k [Fiat et al. 91], tight results known. O(log(k/k-h+1))-competitive algorithm if optimal has cache of size h<k [Young 91]

The Weighted Paging Problem One small change: Each page i has a different load cost w(i). Models scenarios in which the cost of bringing pages is not uniform: Main memory, disk, internet … Goal Minimize the total cost of cache misses. web

Weighted Paging (Previous Work) Lower bound k LRU k competitive k/(k-h+1) if opts cache size h k-competitive [Chrobak, Karloff, Payne, Vishwanathan 91] k/(k-h+1) [Young 94] O(log k) Randomized Marking O(log k/(k-h+1)) O(log k) for two weight classes [Irani 02] No o(k) algorithm known even for 3 weight classes. Paging Weighted Paging Deterministic Randomized

The k-server Problem k servers lie in an n-point metric space. Requests arrive at metric points. To serve request: Need to move some server there. Goal: Minimize total movement cost Paging = k-server on a uniform metric. (every page is a point, page in cache iff server on the point) Weighted paging = k-server on a weighted star metric.

The k-server Problem k servers lie in an n-point metric space. Requests arrive at metric points. To serve request: Need to move some server there. Goal: Minimize total movement cost (2k-1) Det. Work Function Alg [Koutsoupias, Papadimitriou 95] Randomized. No o(k) known (even for very simple spaces). Best lower bound (log k) (widely believed conjecture)

Our Results Weighted Paging (Randomized): (Bansal, Buchbinder, N., FOCS 2007) O(log k)-competitive algorithm for weighted paging. O(log (k/k-h+1))-competitive if opts cache size h<k. Much simpler than previous approaches. Metrical Task System (Randomized): O(log N)-competitive algorithm on a weighted star metric. Closely related to k-server problem (details in paper …)

Further Research Generalized Caching Pages have both sizes and fetching costs. Motivation: Web-Caching Special models: Bit model: Fetching cost proportional to size (minimize traffic) Fault model: Fetching cost is uniform (minimize number of times a user has to wait for a page) Results (Bansal, Buchbinder, N., 2008): O(log k)-competitive algorithms for Bit and Fault models. O(log 2 k)-competitive algorithm for the general model. Requires new interesting ideas and interesting analysis in the rounding phase.

Further Research More applications. Extending the general framework beyond packing/covering. The k-server problem?

Thank you