Computational Methods for Management and Economics Carla Gomes

Slides:



Advertisements
Similar presentations
Tuesday, March 5 Duality – The art of obtaining bounds – weak and strong duality Handouts: Lecture Notes.
Advertisements

February 14, 2002 Putting Linear Programs into standard form
Duality for linear programming. Illustration of the notion Consider an enterprise producing r items: f k = demand for the item k =1,…, r using s components:
Geometry and Theory of LP Standard (Inequality) Primal Problem: Dual Problem:
IEOR 4004 Midterm review (Part II) March 12, 2014.
Standard Minimization Problems with the Dual
EMGT 501 HW #1 Solutions Chapter 2 - SELF TEST 18
Introduction to Algorithms
Copyright (c) 2003 Brooks/Cole, a division of Thomson Learning, Inc
Computational Methods for Management and Economics Carla Gomes Module 6a Introduction to Simplex (Textbook – Hillier and Lieberman)
Linear Programming: Simplex Method and Sensitivity Analysis
Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method.
Chapter 6 Linear Programming: The Simplex Method Section 3 The Dual Problem: Minimization with Problem Constraints of the Form ≥
Computational Methods for Management and Economics Carla Gomes Module 6b Simplex Pitfalls (Textbook – Hillier and Lieberman)
The Simplex Method: Standard Maximization Problems
Operation Research Chapter 3 Simplex Method.
Q 2-31 Min 3A + 4B s.t. 1A + 3B ≧ 6 B = - 1/3A + 2 1A + 1B ≧ 4
Solving Linear Programs: The Simplex Method
7(2) THE DUAL THEOREMS Primal ProblemDual Problem b is not assumed to be non-negative.
ISM 206 Lecture 4 Duality and Sensitivity Analysis.
MIT and James Orlin © Chapter 3. The simplex algorithm Putting Linear Programs into standard form Introduction to Simplex Algorithm.
LINEAR PROGRAMMING SIMPLEX METHOD.
Linear Programming - Standard Form
Chapter 3 Linear Programming Methods 高等作業研究 高等作業研究 ( 一 ) Chapter 3 Linear Programming Methods (II)
The Theory of the Simplex Method
Duality Theory 對偶理論.
Simplex method (algebraic interpretation)
Duality Theory LI Xiaolei.
1 1 Slide © 2000 South-Western College Publishing/ITP Slides Prepared by JOHN LOUCKS.
Kerimcan OzcanMNGT 379 Operations Research1 Linear Programming: The Simplex Method Chapter 5.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Introduction to Operations Research
Duality Theory  Every LP problem (called the ‘Primal’) has associated with another problem called the ‘Dual’.  The ‘Dual’ problem is an LP defined directly.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A Image:
Duality Theory.
Linear Programming Revised Simplex Method, Duality of LP problems and Sensitivity analysis D Nagesh Kumar, IISc Optimization Methods: M3L5.
Chapter 6 Linear Programming: The Simplex Method Section 3 The Dual Problem: Minimization with Problem Constraints of the Form ≥
Linear Programming Erasmus Mobility Program (24Apr2012) Pollack Mihály Engineering Faculty (PMMK) University of Pécs João Miranda
Advanced Operations Research Models Instructor: Dr. A. Seifi Teaching Assistant: Golbarg Kazemi 1.
 Minimization Problem  First Approach  Introduce the basis variable  To solve minimization problem we simple reverse the rule that is we select the.
1 1 Slide © 2005 Thomson/South-Western Linear Programming: The Simplex Method n An Overview of the Simplex Method n Standard Form n Tableau Form n Setting.
Chapter 4 Linear Programming: The Simplex Method
EE/Econ 458 Duality J. McCalley.
Linear Inequalities and Linear Programming Chapter 5 Dr.Hayk Melikyan/ Department of Mathematics and CS/ 5.5 Dual problem: minimization.
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
University of Colorado at Boulder Yicheng Wang, Phone: , Optimization Techniques for Civil and Environmental Engineering.
OR Simplex method (algebraic interpretation) Add slack variables( 여유변수 ) to each constraint to convert them to equations. (We may refer it as.
OR Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we.
Introduction to Operations Research
Simplex Method Simplex: a linear-programming algorithm that can solve problems having more than two decision variables. The simplex technique involves.
Business Mathematics MTH-367 Lecture 16. Chapter 11 The Simplex and Computer Solutions Methods continued.
OR  Now, we look for other basic feasible solutions which gives better objective values than the current solution. Such solutions can be examined.
Copyright © 2006 Brooks/Cole, a division of Thomson Learning, Inc. Linear Programming: An Algebraic Approach 4 The Simplex Method with Standard Maximization.
Approximation Algorithms Duality My T. UF.
Linear Programming Piyush Kumar Welcome to CIS5930.
Business Mathematics MTH-367 Lecture 14. Last Lecture Summary: Finished Sec and Sec.10.3 Alternative Optimal Solutions No Feasible Solution and.
1 Simplex algorithm. 2 The Aim of Linear Programming A Linear Programming model seeks to maximize or minimize a linear function, subject to a set of linear.
The Simplex Method. and Maximize Subject to From a geometric viewpoint : CPF solutions (Corner-Point Feasible) : Corner-point infeasible solutions 0.
Linear Programming Revised Simplex Method, Duality of LP problems and Sensitivity analysis D Nagesh Kumar, IISc Optimization Methods: M3L5.
Chap 10. Sensitivity Analysis
The minimum cost flow problem
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
10CS661 OPERATION RESEARCH Engineered for Tomorrow.
Chap 9. General LP problems: Duality and Infeasibility
Duality Theory and Sensitivity Analysis
ENGM 631 Optimization.
Chapter 5. The Duality Theorem
Chapter-III Duality in LPP
Simplex method (algebraic interpretation)
Presentation transcript:

Computational Methods for Management and Economics Carla Gomes Module 7a Duality

Duality Every maximization LP problem in the standard form gives rise to a minimization LP problem called the dual problem Every feasible solution in one yields a bound on the optimal value of the other If one of the problems has an optimal solution, so does the other and the two optimal values coincide These results have very interesting economic interpretations

Bounds on the optimal value Let x1 = the number of doors to produce x2= the number of windows to produce Maximize Z= 3 x1 + 5 x2 subject to x1≤ 4 2x2≤ 12 3x1 + 2x2≤ 18 and x1 ≥ 0, x2 ≥ 0. Lower bound (LB) on Z*  Z* ≥ LB any feasible solution Upper bound (UB) on Z*  Z* ≤ UB – how do we come up with upper bounds for Z* for a maximization LP problem?

“Guessing” upper bounds

A principled way of finding upper-bounds on Z* Dual Problem

Primal vs. Dual Problem Maximize Z= 3 x1 + 5 x2 subject to x1 ≤ 4 2x2≤ 12 3x1 + 2x2≤ 18 and x1 ≥ 0, x2 ≥ 0. Minimize W= 4 y1 + 12 y2 + 12 y3 subject to y1 + 3 y3 ≥ 3 2 y2 + 2 y3 ≥ 5 and y1 ≥ 0, y2 ≥ 0, y3 ≥ 0

Primal vs. dual The dual of a maximization problem is a minimization problem; the dual of a minimization problem is a maximization problem The m primal constraints are in a one-to-one correspondence with the m dual variables yi, and conversely, the n dual constraints are in a one-to-one correspondence with the n primal variables, xj. The coefficient at each variable in the objective function, primal or dual, appears in the other problem the RHS of the corresponding constraint.

Primal vs. Dual x1, x2, …, xn ≥ 0 y1, y2, …, ym ≥ 0 Max Z = c1 x1 + c2x2 + …. + cnxn Subject to: a11 x1 + a12 x2 + … + a1n xn ≤ b1 a21 x1 + a22 x2 + … + a2n xn ≤ b2 … am1 x1 + am2 x2 + … + amn xn ≤ bm Min W = b1 y1 + b2y2 + …. + bmym Subject to: a11 y1 + a21 y2 + … + am1 ym ≥ c1 a12 y1 + a22 y2 + … + am2 ym ≥ c2 … a1n y1 + a2n y2 + … + amn yn ≥ cn x1, x2, …, xn ≥ 0 y1, y2, …, ym ≥ 0

Primal vs. Dual Max Z = c x Ax ≤ b x ≥ 0 Max W = bT y ATy ≤ cT y ≥ 0

Primal vs. Dual Problem Maximize Z= 3 x1 + 5 x2 subject to 1 x1 ≤ 4 2 x2≤ 12 3 x1 + 2 x2≤ 18 and x1 ≥ 0, x2 ≥ 0. Minimize W= 4 y1 + 12 y2 + 18 y3 subject to 1 y1 + 3 y3 ≥ 3 2 y2 + 2 y3 ≥ 5 and y1 ≥ 0, y2 ≥ 0, y3 ≥ 0

Wyndor Glass: Primal vs. Dual Matrix Notation Min W= 4 12 18 y1 y2 y3 Max Z = 3 5 x1 x2 Subject to: 3 5 4 12 18 0 3 0 1 2 y1 y2 y3 ≥ 1 0 0 1 3 2 x1 x2 ≤ x ≥ 0 y ≥ 0

Primal-dual table for LP

Primal Dual Max Min s.t

Every feasible dual solution yields an upper-bound on Z Every feasible dual solution yields an upper-bound on Z* of the primal and every feasible primal solution yields a lower-bound on Z* of the dual Weak duality property Upper Bounds on Primal Optimum Dual feasible solutions (Minimization) Z* Lower Bounds on Dual Optimum Primal feasible solutions (Maximization)

Weak duality property Weak duality property Every feasible dual solution yields an upper-bound on Z* of the primal and every feasible primal solution yields a lower-bound on Z* of the dual

Proof: Weak duality property

Primal vs. dual Simplex My-wyndor.txt My-wyndor-dual.txt

The magic continues … Final tableau - primal Final row (0) of the simplex automatically provides the optimal values of the dual variables, y*i , they correspond to the slack variables in the final row(0) of the simplex method. Final tableau - dual

Strong Duality Property For the proof we’ll use as starting point the final row (0) as generated by the algebraic simplex procedure. We’ll also show how the final row (0) of the simplex algebraic procedure automatically provides the optimal values of the dual variables. In fact we denote by y*i the coefficients that correspond to the slack variables in the final row(0) of the simplex method.

Strong duality property Every feasible dual solution yields an upper-bound on Z* of the primal and every feasible primal solution yields a lower-bound on Z* of the dual Weak duality property Upper Bounds on Primal Optimum Dual feasible solutions (Minimization) Z* Primal Opt. = Dual Opt. Lower Bounds on Dual Optimum Primal feasible solutions (Maximization) Strong duality property

Strong Duality Property Proof

Notation for entries in row 0 of a simplex tableau (textbook) Dual surplus variables Dual decision variables Note: Complete basic solutions for the primal and dual problem can be read directly from row (0)

Introducing surplus vars Minimize W= 4 y1 + 12 y2 + 12 y3 subject to y1 + 3 y3 ≥ 3 12 y2 + 12 y3 ≥ 5 and y1 ≥ 0, y2 ≥ 0, y3 ≥ 0 Introducing surplus vars Minimize W= 4 y1 + 12 y2 + 12 y3 subject to y1 + 3 y3 – (z1 – c1) = 3 12 y2 + 12 y3 - (z2 – c2) = 5 and y1, y2 , y3 , (z1 – c1), (z2 – c2) ≥ 0

Primal Simplex: Weak Duality and strong duality The different (non-optimal) basic feasible solutions produced by the simplex algorithm in each iteration are feasible from the point of view of the primal but not from the point of view of the dual. Note: Complete basic solutions for the primal and dual problem can be read directly from row (0) Iteration 0: basic dual solution is infeasible since(z1 – c1) and (z2 – c2) are negative (weak duality) Iteration 1: basic dual solution is infeasible because (z1 – c1) is negative (weak duality) Final iteration –basic dual solution is feasible and optimal (Strong Duality).

Complementary slackness relationship for complementary basic solutions Primal Variable Associated Dual Variable Basic Non-Basic Non-basic (m variables) Basic (n variables)

Simplex method: Complementary solutions property At each iteration the simplex method simultaneously identifies a CPF solution x for the primal problem and a complementary solution y for the dual problem, where: cx = yb If x is not optimal for the primal, than y is not feasible for the dual.

Simplex method: Complementary optimal solutions property At final iteration the simplex method simultaneously identifies an optimal solution x* for the primal problem and a complementary optimal solution y* for the dual problem, where: cx* = yb*

Complementary Slackness Optimal solutions Let x1*, x2*, …xn* be a primal feasible solution and a y1*, y2*, …ym* dual feasible solution. Necessary and sufficient conditions for simultaneous optimality of x1*, x2*, …xn* and y1*, y2*, …ym* are: This result is very useful for checking the optimality of solutions

Complementary Slackness Optimal solutions

Relationships between the primal and dual problems If one problem has feasible solutions and a bounded objective function (and therefore an optimal solution), then so does the other problem (both weak and strong duality apply) If one problem has feasible solutions and an unbounded objective function (therefore no optimal solution) then the other problem has no feasible solutions If one problem has no feasible solutions than the other problem has no feasible solutions or an unbounded objective function.

Primal-Dual Combinations

Adapting to Other Forms What if our problem is not in standard form? We can always transform it to the standard form and then construct the dual;

Dual of the dual Note: it is not important which problem we call dual and which problem we call primal given the symmetry property of the primal dual relationships. In general we call primal the model formulated to fit the actual problem.

Shortcut for = constraints

Shortcut for dual transformations: = constraints or unconstrained variables We could still do the conversion into the standard format , but a shortcut is available for these two formats. An equality constraint in the primal should be treated just like a <= constraint in constructing the dual, except that the non-negativity constraint for the corresponding dual variable should be deleted By the symmetry property, a primal variable not subject to non-negativity constraints affects the dual problem only by changing the corresponding inequality constraint to an equality constraint.

Shortcut for dual transformations: >= constraints (Maximization) Consider: Constructing the dual from this expression would lead to –aij as coefficients of yi in the functional constraint j (of the form >=) and a coefficient –bi in the objective function (which is to be minimized); yi would be subject to a non-negativity constraint (yi ≥ 0); Cleaner alternative for dual: Consider y’i = - yi Express the dual in terms of y’i (- the coefficients of the variable become aij for functional constraint j and bi for the objective function - the constraint in the variable becomes y’i ≤ 0;)

Sensible, Odd, Byzarre Variable constraints Maximization/Minimization problems “sensible” x >=0; “odd” x unrestricted; “byzarre” x <=0;

Sensible, Odd, Byzarre Constraints Maximization problems “sensible” <= “odd” = “byzarre” >= Minimization problems “sensible” >= “byzarre” <=

Radiation Therapy Example

Primal-dual correspondence

Complexity of Simplex Method Primal vs. Dual How long does it take to solve an LP using the simplex method? Several factors but the most important one seems to be the number of functional constraints. Computation tends to be proportional to the cube of the number of functional constraints in an LP. The number of variables is a relatively minor factor (assuming revised simplex method) The density of the matrix of technological coefficients is also a factor – the sparser the matrix (i.e., the larger the number of zeroes) the faster the simplex method; Real world problems tend to be sparse, i.e., “sparcity” of 5% or even 1%, which leads to fast runs.

Complexity of Simplex Method Primal vs. Dual But the most important one seems to be the number of functional constraints. Computation tends to be proportional to the cube of the number of functional constraints in an LP. Question: So if problem A has twice as many constraints as problem B how much longer takes to solve problem A in comparison to problem B? Problem A takes 8 times longer than problem B

Primal vs. Dual? So, the size of the problem, may determine whether to use the simplex method on the primal or dual problem. If the primal has a large number of constraints and a small number of variables it is better to apply the simplex method to the dual (since it will have a small number of constraints).

Dual Simplex Method This method is based on the duality results. It is a mirror image of the simplex method: the simplex method deals with primal feasible solutions (but not dual feasible), moving toward a solution that is dual feasible; the dual method deals with basic solutions in the primal problem that are dual feasible but not primal feasible. It moves toward an optimal solution by striving to achieve primal feasibility as well.