primal dual algorithm
play

Primal-Dual Algorithm Math 482, Lecture 29 Misha Lavrov April 17, - PowerPoint PPT Presentation

Introduction The direction-finding problem The augmenting step The restricted primal Primal-Dual Algorithm Math 482, Lecture 29 Misha Lavrov April 17, 2020 Introduction The direction-finding problem The augmenting step The restricted


  1. Introduction The direction-finding problem The augmenting step The restricted primal Primal-Dual Algorithm Math 482, Lecture 29 Misha Lavrov April 17, 2020

  2. Introduction The direction-finding problem The augmenting step The restricted primal The problem Our goal: to solve the primal-dual pair of linear programs below.   u T b c T x minimize maximize   u ∈ R m x ∈ R n     ( P ) ( D ) u T A ≤ c T subject to A x = b subject to     x ≥ 0 u unrestricted  

  3. Introduction The direction-finding problem The augmenting step The restricted primal The problem Our goal: to solve the primal-dual pair of linear programs below.   u T b c T x minimize maximize   u ∈ R m x ∈ R n     ( P ) ( D ) u T A ≤ c T subject to A x = b subject to     x ≥ 0 u unrestricted   We will try to improve on the simplex algorithm by taking long jumps across the feasible region for ( D ).

  4. Introduction The direction-finding problem The augmenting step The restricted primal The problem Our goal: to solve the primal-dual pair of linear programs below.   u T b c T x minimize maximize   u ∈ R m x ∈ R n     ( P ) ( D ) u T A ≤ c T subject to A x = b subject to     x ≥ 0 u unrestricted   We will try to improve on the simplex algorithm by taking long jumps across the feasible region for ( D ). Motivation: the Ford–Fulkerson method, where a single augmenting steps changes many variables at once.

  5. Introduction The direction-finding problem The augmenting step The restricted primal The direction-finding problem Consider the following example:  maximize 3 u 1 + 3 u 2 u ∈ R 2      subject to 2 u 1 + 4 u 2 ≤ 2 ( D ) u 1 − u 2 ≤ 2      − 4 u 1 + u 2 ≤ 1 We are at the point u = (1 , 0) and want to pick a direction v to go. What is the best direction, and how do we find it?

  6. Introduction The direction-finding problem The augmenting step The restricted primal The direction-finding problem Consider the following example:  maximize 3 u 1 + 3 u 2 u ∈ R 2      subject to 2 u 1 + 4 u 2 ≤ 2 ( D ) u 1 − u 2 ≤ 2      − 4 u 1 + u 2 ≤ 1 We are at the point u = (1 , 0) and want to pick a direction v to go. What is the best direction, and how do we find it? Answer 1. (From calculus.) Gradient descent: take v proportional to b = (3 , 3), the cost vector.

  7. Introduction The direction-finding problem The augmenting step The restricted primal The direction-finding problem Consider the following example:  maximize 3 u 1 + 3 u 2 u ∈ R 2      subject to 2 u 1 + 4 u 2 ≤ 2 ( D ) u 1 − u 2 ≤ 2      − 4 u 1 + u 2 ≤ 1 We are at the point u = (1 , 0) and want to pick a direction v to go. What is the best direction, and how do we find it? Answer 1. (From calculus.) Gradient descent: take v proportional to b = (3 , 3), the cost vector. Answer 2 . We should also make sure we don’t accidentally leave the feasible region.

  8. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program:

  9. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program: Objective function: we want to improve 3 u 1 + 3 u 2 as quickly as possible, so we maximize 3 v 1 + 3 v 2 .

  10. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program: Objective function: we want to improve 3 u 1 + 3 u 2 as quickly as possible, so we maximize 3 v 1 + 3 v 2 . Boundary conditions: At u = (1 , 0), the constraint 2 u 1 + 4 u 2 ≤ 2 is tight, so we make sure we don’t violate it and ask that 2 v 1 + 4 v 2 ≤ 0 .

  11. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program: Objective function: we want to improve 3 u 1 + 3 u 2 as quickly as possible, so we maximize 3 v 1 + 3 v 2 . Boundary conditions: At u = (1 , 0), the constraint 2 u 1 + 4 u 2 ≤ 2 is tight, so we make sure we don’t violate it and ask that 2 v 1 + 4 v 2 ≤ 0 . The constraints u 1 − u 2 ≤ 2 and − 4 u 1 + u 2 ≤ 1 are slack, so we ignore them.

  12. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program: Objective function: we want to improve 3 u 1 + 3 u 2 as quickly as possible, so we maximize 3 v 1 + 3 v 2 . Boundary conditions: At u = (1 , 0), the constraint 2 u 1 + 4 u 2 ≤ 2 is tight, so we make sure we don’t violate it and ask that 2 v 1 + 4 v 2 ≤ 0 . The constraints u 1 − u 2 ≤ 2 and − 4 u 1 + u 2 ≤ 1 are slack, so we ignore them. Scaling constraints: we just want a direction, not a magnitude. So we limit v by asking that v 1 , v 2 ≤ 1 .

  13. Introduction The direction-finding problem The augmenting step The restricted primal The linear program for v We can find v using a linear program: Objective function: we want to improve 3 u 1 + 3 u 2 as quickly as possible, so we maximize 3 v 1 + 3 v 2 . Boundary conditions: At u = (1 , 0), the constraint 2 u 1 + 4 u 2 ≤ 2 is tight, so we make sure we don’t violate it and ask that 2 v 1 + 4 v 2 ≤ 0 . The constraints u 1 − u 2 ≤ 2 and − 4 u 1 + u 2 ≤ 1 are slack, so we ignore them. Scaling constraints: we just want a direction, not a magnitude. So we limit v by asking that v 1 , v 2 ≤ 1 . (Fine print: this only works if the coefficients in the objective function u T b are nonnegative, but we can make sure that this holds.)

  14. Introduction The direction-finding problem The augmenting step The restricted primal The direction-finding linear program The original LP, ( D ), leads to the auxiliary LP, ( DRP ): u T b v T b   maximize maximize   u ∈ R m v ∈ R m     ( D ) ( DRP ) u T A ≤ c T v T A J ≤ 0 T subject to subject to     u unrestricted v 1 , . . . , v m ≤ 1   (Here, J indexes constraints which are tight at the initial point u .)

  15. Introduction The direction-finding problem The augmenting step The restricted primal The direction-finding linear program The original LP, ( D ), leads to the auxiliary LP, ( DRP ): u T b v T b   maximize maximize   u ∈ R m v ∈ R m     ( D ) ( DRP ) u T A ≤ c T v T A J ≤ 0 T subject to subject to     u unrestricted v 1 , . . . , v m ≤ 1   (Here, J indexes constraints which are tight at the initial point u .) In our example, we get:  maximize 3 v 1 + 3 v 2 v ∈ R 2      subject to 2 v 1 + 4 v 2 ≤ 0 ( DRP ) ≤ 1 v 1      v 2 ≤ 1

  16. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly.

  17. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0)

  18. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0) 2 Write the direction-finding problem ( DRP ). (previous slide)

  19. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0) 2 Write the direction-finding problem ( DRP ). (previous slide) 3 Solve ( DRP ) to find a direction v . We get ( v 1 , v 2 ) = (1 , − 1 2 )

  20. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0) 2 Write the direction-finding problem ( DRP ). (previous slide) 3 Solve ( DRP ) to find a direction v . We get ( v 1 , v 2 ) = (1 , − 1 2 ) 4 Find the largest t such that u + t v is still feasible for ( D ).

  21. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0) 2 Write the direction-finding problem ( DRP ). (previous slide) 3 Solve ( DRP ) to find a direction v . We get ( v 1 , v 2 ) = (1 , − 1 2 ) 4 Find the largest t such that u + t v is still feasible for ( D ).  2( u 1 + tv 1 ) + 4( u 2 + tv 2 ) ≤ 2 holds automatically    

  22. Introduction The direction-finding problem The augmenting step The restricted primal The augmenting step We can now do the primal-dual algorithm, just very badly. 1 Start at some solution to ( D ). ( u 1 , u 2 ) = (1 , 0) 2 Write the direction-finding problem ( DRP ). (previous slide) 3 Solve ( DRP ) to find a direction v . We get ( v 1 , v 2 ) = (1 , − 1 2 ) 4 Find the largest t such that u + t v is still feasible for ( D ).  2( u 1 + tv 1 ) + 4( u 2 + tv 2 ) ≤ 2 holds automatically   ⇒ t ≤ 2 ( u 1 + tv 1 ) − ( u 2 + tv 2 ) ≤ 2 = 3  

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend