SlideShare a Scribd company logo
A Toolbox for Online Algorithms Marcin Bieńkowski U niversity of Wroc ław phd open 2011
[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],This course: quite good tools for very simple problems
What’s in the box? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object]
Online algorithms (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],scarce computational resources scarce computational resources +  we don’t know the future offline  optimum
Online algorithms (2) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Online algorithms example ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online algorithms example: SRP (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online algorithms example: SRP (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online algorithms example: SRP (3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Online algorithms example: SRP (4) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
World is online ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Toolbox Outline ,[object Object],[object Object],[object Object],[object Object]
PF: a toy problem ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],C F A D G H B J
PF: a natural algorithm ,[object Object],[object Object]
PF: costs (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],OPT? Do I look I care? Neither should you! Besides, computing OPT is NP-complete
PF: costs (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
PF: introduction to potential ,[object Object],[object Object],[object Object],[object Object],[object Object],PROOF
PF: states ,[object Object],[object Object],State space: ALG OPT Rule of the thumb: Define  as a constant times the cost of changing state from ALG to OPT. Why does it help (in the bad case)? When  is small and  is large… …  then ALG changes state towards OPT, decreasing the potential! ,[object Object],[object Object],[object Object],MTF moves x to the beginning of the list
PF: potential for MTF ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],PROOF
Toolbox Outline ,[object Object],[object Object],[object Object],[object Object]
WF: a toy problem (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Note that d satisfies triangle inequality
WF: a toy problem (2) ,[object Object],[object Object],[object Object],a b Elementary, dear Watson
WF: randomization ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],a b PROOF
WF: work functions (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
WF: work functions (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
WF: work function evolution ,[object Object],[object Object],[object Object],In this example, we assume D = 2 0 1 2 3 4 5 6 7 D For such configuration, request at  a  does not change the work function (or OPT cost) Good guidance! Let’s extrapolate it to intermediate values!
WF: the algorithm ,[object Object],[object Object],Gradient Recall: Work Function Algorithm At step t, choose distribution  , such that 0 1 2 3 4 5 6 7 D and PROOF
[object Object],[object Object]
Toolbox Outline ,[object Object],[object Object],[object Object],[object Object]
LP: a toy problem (1) ,[object Object],[object Object],[object Object],[object Object],Input:  sequence of elements  to cover Output:  at each step,  output the subset of  that covers all elements seen so far. Online factor : removing already chosen sets not possible! 1 2 4 4 2 ,[object Object]
LP: a toy problem (2) ,[object Object],[object Object],[object Object],[object Object],Input:  sequence of elements  to cover Output:  at each step, output the function  which covers each already seen element  , i.e., Online factor : removing already chosen fractions of sets not possible! 1 2 4 4 2
LP: offline solution (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],1 2 4 4 2
LP: offline solution (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LP: dual program ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Strong duality theorem:  OPT(P k ) = OPT(D k )
LP: online solution (1) ,[object Object],Online = monotonic for analysis only Observation:  implies competitive ratio at most  PROOF Feasible dual solution is sometimes hard to achieve…
LP: online solution (2) ,[object Object],[object Object],[object Object],Corollary:  implies competitive ratio at most  This one is feasible!
LP: the algorithm (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],TRIVIAL Observation 2:   Observation 3:   Each constraint of the dual solution is violated at most by factor O(log m) PROOF PROOF
LP: the algorithm (2) Observation 1:   Generated primal solution is feasible Observation 2:   Observation 3:   Each constraint of the dual solution is violated at most by factor O(log m) Corollary:  ALG is O(2 log m) = O(log m)-competitive
Toolbox Outline ,[object Object],[object Object],[object Object],[object Object]
CRS: a toy problem (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],2 3 1 2 3 2 2 1 3 2 Way too complicated, dear Watson
CRS: a toy problem (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
CRS: deterministic lower bound ,[object Object],[object Object],[object Object],PROOF
CRS: randomized solution (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],2-nd level call PROOF
[object Object]

More Related Content

What's hot

Analysis and design of algorithms part2
Analysis and design of algorithms part2Analysis and design of algorithms part2
Analysis and design of algorithms part2
Deepak John
 
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
MLconf
 
Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#Robert Pickering
 
Cupdf.com introduction to-data-structures-and-algorithm
Cupdf.com introduction to-data-structures-and-algorithmCupdf.com introduction to-data-structures-and-algorithm
Cupdf.com introduction to-data-structures-and-algorithm
TarikuDabala1
 
Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis
Dr. Pankaj Agarwal
 
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
MLconf
 
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
Frank Nielsen
 
Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2
Traian Rebedea
 
Software Abstractions for Parallel Hardware
Software Abstractions for Parallel HardwareSoftware Abstractions for Parallel Hardware
Software Abstractions for Parallel Hardware
Joel Falcou
 
(Costless) Software Abstractions for Parallel Architectures
(Costless) Software Abstractions for Parallel Architectures(Costless) Software Abstractions for Parallel Architectures
(Costless) Software Abstractions for Parallel Architectures
Joel Falcou
 
Best practices in Java
Best practices in JavaBest practices in Java
Best practices in Java
Mudit Gupta
 
Automatic Task-based Code Generation for High Performance DSEL
Automatic Task-based Code Generation for High Performance DSELAutomatic Task-based Code Generation for High Performance DSEL
Automatic Task-based Code Generation for High Performance DSEL
Joel Falcou
 
Boost.Dispatch
Boost.DispatchBoost.Dispatch
Boost.Dispatch
Joel Falcou
 
Python Programming - VII. Customizing Classes and Operator Overloading
Python Programming - VII. Customizing Classes and Operator OverloadingPython Programming - VII. Customizing Classes and Operator Overloading
Python Programming - VII. Customizing Classes and Operator OverloadingRanel Padon
 
Designing Architecture-aware Library using Boost.Proto
Designing Architecture-aware Library using Boost.ProtoDesigning Architecture-aware Library using Boost.Proto
Designing Architecture-aware Library using Boost.Proto
Joel Falcou
 
Matlab python-
Matlab python-Matlab python-
Matlab python-
Dr. Volkan OBAN
 
Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1
Deepak John
 
Why we cannot ignore Functional Programming
Why we cannot ignore Functional ProgrammingWhy we cannot ignore Functional Programming
Why we cannot ignore Functional ProgrammingMario Fusco
 
HDR Defence - Software Abstractions for Parallel Architectures
HDR Defence - Software Abstractions for Parallel ArchitecturesHDR Defence - Software Abstractions for Parallel Architectures
HDR Defence - Software Abstractions for Parallel Architectures
Joel Falcou
 
Python cs.1.12 week 10 2020 2021 covid 19 for g10 by eng.osama mansour
Python cs.1.12 week 10  2020 2021 covid 19 for g10 by eng.osama mansourPython cs.1.12 week 10  2020 2021 covid 19 for g10 by eng.osama mansour
Python cs.1.12 week 10 2020 2021 covid 19 for g10 by eng.osama mansour
Osama Ghandour Geris
 

What's hot (20)

Analysis and design of algorithms part2
Analysis and design of algorithms part2Analysis and design of algorithms part2
Analysis and design of algorithms part2
 
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
Rajat Monga, Engineering Director, TensorFlow, Google at MLconf 2016
 
Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#
 
Cupdf.com introduction to-data-structures-and-algorithm
Cupdf.com introduction to-data-structures-and-algorithmCupdf.com introduction to-data-structures-and-algorithm
Cupdf.com introduction to-data-structures-and-algorithm
 
Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis Introduction to Algorithms Complexity Analysis
Introduction to Algorithms Complexity Analysis
 
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
Avi Pfeffer, Principal Scientist, Charles River Analytics at MLconf SEA - 5/2...
 
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
(chapter 5) A Concise and Practical Introduction to Programming Algorithms in...
 
Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2
 
Software Abstractions for Parallel Hardware
Software Abstractions for Parallel HardwareSoftware Abstractions for Parallel Hardware
Software Abstractions for Parallel Hardware
 
(Costless) Software Abstractions for Parallel Architectures
(Costless) Software Abstractions for Parallel Architectures(Costless) Software Abstractions for Parallel Architectures
(Costless) Software Abstractions for Parallel Architectures
 
Best practices in Java
Best practices in JavaBest practices in Java
Best practices in Java
 
Automatic Task-based Code Generation for High Performance DSEL
Automatic Task-based Code Generation for High Performance DSELAutomatic Task-based Code Generation for High Performance DSEL
Automatic Task-based Code Generation for High Performance DSEL
 
Boost.Dispatch
Boost.DispatchBoost.Dispatch
Boost.Dispatch
 
Python Programming - VII. Customizing Classes and Operator Overloading
Python Programming - VII. Customizing Classes and Operator OverloadingPython Programming - VII. Customizing Classes and Operator Overloading
Python Programming - VII. Customizing Classes and Operator Overloading
 
Designing Architecture-aware Library using Boost.Proto
Designing Architecture-aware Library using Boost.ProtoDesigning Architecture-aware Library using Boost.Proto
Designing Architecture-aware Library using Boost.Proto
 
Matlab python-
Matlab python-Matlab python-
Matlab python-
 
Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1Anlysis and design of algorithms part 1
Anlysis and design of algorithms part 1
 
Why we cannot ignore Functional Programming
Why we cannot ignore Functional ProgrammingWhy we cannot ignore Functional Programming
Why we cannot ignore Functional Programming
 
HDR Defence - Software Abstractions for Parallel Architectures
HDR Defence - Software Abstractions for Parallel ArchitecturesHDR Defence - Software Abstractions for Parallel Architectures
HDR Defence - Software Abstractions for Parallel Architectures
 
Python cs.1.12 week 10 2020 2021 covid 19 for g10 by eng.osama mansour
Python cs.1.12 week 10  2020 2021 covid 19 for g10 by eng.osama mansourPython cs.1.12 week 10  2020 2021 covid 19 for g10 by eng.osama mansour
Python cs.1.12 week 10 2020 2021 covid 19 for g10 by eng.osama mansour
 

Viewers also liked

Digital Humanities - British library nov 2011
Digital Humanities - British library nov 2011Digital Humanities - British library nov 2011
Digital Humanities - British library nov 2011
TimHitchcock
 
ProcessFlow Designer - Fashioning Solutions
ProcessFlow Designer - Fashioning SolutionsProcessFlow Designer - Fashioning Solutions
ProcessFlow Designer - Fashioning SolutionsConsultDavidW
 
How to star in your own radio show workshop
How to star in your own radio show workshopHow to star in your own radio show workshop
How to star in your own radio show workshop
Lynda Brown
 
Power point cerámica copia
Power point cerámica copiaPower point cerámica copia
Power point cerámica copiaYoli Nalda Romea
 
How To Promote Your Book On A Shoestring Budget
How To Promote Your Book On A Shoestring BudgetHow To Promote Your Book On A Shoestring Budget
How To Promote Your Book On A Shoestring BudgetLynda Brown
 
The Invisible Enemies Series-Supernatural thrillers based on books from the B...
The Invisible Enemies Series-Supernatural thrillers based on books from the B...The Invisible Enemies Series-Supernatural thrillers based on books from the B...
The Invisible Enemies Series-Supernatural thrillers based on books from the B...
Lynda Brown
 
Бібліотечні блоги - поради початківцям
Бібліотечні блоги - поради початківцямБібліотечні блоги - поради початківцям
Бібліотечні блоги - поради початківцямYulia Bird
 
38 najboljih citata korscenih u seriji zlocinacki umovi
38 najboljih citata korscenih u seriji zlocinacki umovi38 najboljih citata korscenih u seriji zlocinacki umovi
38 najboljih citata korscenih u seriji zlocinacki umovi
zeljkomiscevic
 
Peds symposium pediatric head trauma 2011 -howard final
Peds symposium pediatric head trauma 2011 -howard finalPeds symposium pediatric head trauma 2011 -howard final
Peds symposium pediatric head trauma 2011 -howard final
jhowie3
 
Avaluar per aprendre
Avaluar per aprendreAvaluar per aprendre
Avaluar per aprendreCarlos Galvez
 
Chap003 markets and competitive space
Chap003 markets and competitive spaceChap003 markets and competitive space
Chap003 markets and competitive space
mustafa910
 

Viewers also liked (12)

Digital Humanities - British library nov 2011
Digital Humanities - British library nov 2011Digital Humanities - British library nov 2011
Digital Humanities - British library nov 2011
 
ProcessFlow Designer - Fashioning Solutions
ProcessFlow Designer - Fashioning SolutionsProcessFlow Designer - Fashioning Solutions
ProcessFlow Designer - Fashioning Solutions
 
How to star in your own radio show workshop
How to star in your own radio show workshopHow to star in your own radio show workshop
How to star in your own radio show workshop
 
Power point cerámica copia
Power point cerámica copiaPower point cerámica copia
Power point cerámica copia
 
How To Promote Your Book On A Shoestring Budget
How To Promote Your Book On A Shoestring BudgetHow To Promote Your Book On A Shoestring Budget
How To Promote Your Book On A Shoestring Budget
 
The Invisible Enemies Series-Supernatural thrillers based on books from the B...
The Invisible Enemies Series-Supernatural thrillers based on books from the B...The Invisible Enemies Series-Supernatural thrillers based on books from the B...
The Invisible Enemies Series-Supernatural thrillers based on books from the B...
 
Бібліотечні блоги - поради початківцям
Бібліотечні блоги - поради початківцямБібліотечні блоги - поради початківцям
Бібліотечні блоги - поради початківцям
 
Animation Presentation
Animation PresentationAnimation Presentation
Animation Presentation
 
38 najboljih citata korscenih u seriji zlocinacki umovi
38 najboljih citata korscenih u seriji zlocinacki umovi38 najboljih citata korscenih u seriji zlocinacki umovi
38 najboljih citata korscenih u seriji zlocinacki umovi
 
Peds symposium pediatric head trauma 2011 -howard final
Peds symposium pediatric head trauma 2011 -howard finalPeds symposium pediatric head trauma 2011 -howard final
Peds symposium pediatric head trauma 2011 -howard final
 
Avaluar per aprendre
Avaluar per aprendreAvaluar per aprendre
Avaluar per aprendre
 
Chap003 markets and competitive space
Chap003 markets and competitive spaceChap003 markets and competitive space
Chap003 markets and competitive space
 

Similar to Slides

Stack squeues lists
Stack squeues listsStack squeues lists
Stack squeues lists
James Wong
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
Harry Potter
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
Luis Goldster
 
Stacksqueueslists
StacksqueueslistsStacksqueueslists
Stacksqueueslists
Fraboni Ec
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
Young Alista
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
Tony Nguyen
 
Data Structures- Part2 analysis tools
Data Structures- Part2 analysis toolsData Structures- Part2 analysis tools
Data Structures- Part2 analysis tools
Abdullah Al-hazmy
 
01-algo.ppt
01-algo.ppt01-algo.ppt
01-algo.ppt
ssuser8d64ca
 
Integrative Parallel Programming in HPC
Integrative Parallel Programming in HPCIntegrative Parallel Programming in HPC
Integrative Parallel Programming in HPC
Victor Eijkhout
 
TIME EXECUTION OF DIFFERENT SORTED ALGORITHMS
TIME EXECUTION   OF  DIFFERENT SORTED ALGORITHMSTIME EXECUTION   OF  DIFFERENT SORTED ALGORITHMS
TIME EXECUTION OF DIFFERENT SORTED ALGORITHMS
Tanya Makkar
 
Data Structures and Algorithm Analysis
Data Structures  and  Algorithm AnalysisData Structures  and  Algorithm Analysis
Data Structures and Algorithm Analysis
Mary Margarat
 
CP4151 Advanced data structures and algorithms
CP4151 Advanced data structures and algorithmsCP4151 Advanced data structures and algorithms
CP4151 Advanced data structures and algorithms
Sheba41
 
Aad introduction
Aad introductionAad introduction
Aad introductionMr SMAK
 
Algorithms.
Algorithms. Algorithms.
Analysis of algorithms
Analysis of algorithmsAnalysis of algorithms
Analysis of algorithms
Mallikarjun Biradar
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
DeepakYadav656387
 
chapter 1
chapter 1chapter 1
chapter 1
yatheesha
 
Control system Lab record
Control system Lab record Control system Lab record
Control system Lab record
Yuvraj Singh
 
A MATLAB project on LCR circuits
A MATLAB project on LCR circuitsA MATLAB project on LCR circuits
A MATLAB project on LCR circuits
svrohith 9
 
Algorithm Design and Complexity - Course 5
Algorithm Design and Complexity - Course 5Algorithm Design and Complexity - Course 5
Algorithm Design and Complexity - Course 5Traian Rebedea
 

Similar to Slides (20)

Stack squeues lists
Stack squeues listsStack squeues lists
Stack squeues lists
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
 
Stacksqueueslists
StacksqueueslistsStacksqueueslists
Stacksqueueslists
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
 
Stacks queues lists
Stacks queues listsStacks queues lists
Stacks queues lists
 
Data Structures- Part2 analysis tools
Data Structures- Part2 analysis toolsData Structures- Part2 analysis tools
Data Structures- Part2 analysis tools
 
01-algo.ppt
01-algo.ppt01-algo.ppt
01-algo.ppt
 
Integrative Parallel Programming in HPC
Integrative Parallel Programming in HPCIntegrative Parallel Programming in HPC
Integrative Parallel Programming in HPC
 
TIME EXECUTION OF DIFFERENT SORTED ALGORITHMS
TIME EXECUTION   OF  DIFFERENT SORTED ALGORITHMSTIME EXECUTION   OF  DIFFERENT SORTED ALGORITHMS
TIME EXECUTION OF DIFFERENT SORTED ALGORITHMS
 
Data Structures and Algorithm Analysis
Data Structures  and  Algorithm AnalysisData Structures  and  Algorithm Analysis
Data Structures and Algorithm Analysis
 
CP4151 Advanced data structures and algorithms
CP4151 Advanced data structures and algorithmsCP4151 Advanced data structures and algorithms
CP4151 Advanced data structures and algorithms
 
Aad introduction
Aad introductionAad introduction
Aad introduction
 
Algorithms.
Algorithms. Algorithms.
Algorithms.
 
Analysis of algorithms
Analysis of algorithmsAnalysis of algorithms
Analysis of algorithms
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
 
chapter 1
chapter 1chapter 1
chapter 1
 
Control system Lab record
Control system Lab record Control system Lab record
Control system Lab record
 
A MATLAB project on LCR circuits
A MATLAB project on LCR circuitsA MATLAB project on LCR circuits
A MATLAB project on LCR circuits
 
Algorithm Design and Complexity - Course 5
Algorithm Design and Complexity - Course 5Algorithm Design and Complexity - Course 5
Algorithm Design and Complexity - Course 5
 

Slides

  • 1. A Toolbox for Online Algorithms Marcin Bieńkowski U niversity of Wroc ław phd open 2011
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40. LP: the algorithm (2) Observation 1: Generated primal solution is feasible Observation 2: Observation 3: Each constraint of the dual solution is violated at most by factor O(log m) Corollary: ALG is O(2 log m) = O(log m)-competitive
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.