Operations Research Duality in linear programming
Duality in linear programming As we have seen in past lessons, linear programming are either maximization or minimization type, containing m conditions for n variables As we show, for any such problem can be construct a symmetric problem, we ll call him dual problem This problem has its own interpretation and also there is a deeper relationship between the two problems, the optimal solutions of these problems, etc
The concept of duality and the construction of a dual problem Consider a general linear programming problem, ie the problem of finding such a solution, its conditions a 11x 1 + a 12x 2 + + a 1nx n = b 1, a 21x 1 + a 22x 2 + + a 2nx n = b 2, a m1x 1 + a m2x 2 + + a mnx n = b m, at the same time the nonnegativity conditions, ie and that the objective function x i 0, i = 1, 2,, n, z = c 1x 1 + c 2x 2 + + c nx n became its maximum, respectively minimum
There are three kinds of coefficients in the problem: a ij b i c j structural coefficients, right sides, cost coefficients (all for i = 1,, m; j = 1,, n) These coefficients are in mathematical models connected with variables x j The coefficients a ij, b i occur in constraints, coefficients c j occur in objective function This way formulated a mathematical model is called the primary mathematical model
For each LP problem can be formulated a dual problem (rules for its construction are listed below) Duality is a mathematical relationship between two linear programming problems - primary and dual, which form a dual pair of coupled problems Theorem: Dual problem of dual problem is the original primary problem Proof: The proof follows directly by applying twice rules for the construction of a dual problem Consequence: Reflexivity of duality allows from the properties a solution of primary problem to determine the properties of a solution of the dual problem, and vice versa
The dual problem can be obtained by transformation of primary model, if the primary model is in the standard form The rules of the transformation are set out below If the primary model is not in standard form, it must be converted to a standard form This can be done always
Definition: We say that a) maximalization problem is in standard form, if all constraints are of the type or =, ie eg z = c 1x 1 + c 2x 2 + + c nx n max, a 11x 1 + a 12x 2 + + a 1nx n b 1, a 21x 1 + a 22x 2 + + a 2nx n b 2, a m1x 1 + a m2x 2 + + a mnx n b m; b) minimization problem is in standard form, if all constraints are of the type or =, ie eg z = c 1x 1 + c 2x 2 + + c nx n min, a 11x 1 + a 12x 2 + + a 1nx n b 1, a 21x 1 + a 22x 2 + + a 2nx n b 2, a m1x 1 + a m2x 2 + + a mnx n b m
Comment: If the types of inequalities are not in accordance with extreme objective function, the corresponding own constraints multiply the number ( 1), even at the cost of a negative right side Each problem of linear programming in standard form can be clearly attributed dual LP problem, based on the following rules: To maximization primary model in the standard form corresponds the minimization dual model in standard form, and vice versa Each own condition of the primary model corresponds one structural variable of dual model, and vice versa The matrix of structural coefficients of primary model and the matrix of structural coefficients of the dual model are mutually transposed Vector of right sides of the primary model is the vector of prices in dual model, and vice versa
Schematically, the relationship between primary and dual model can be described as follows: PRIMARY MATHEMATICAL MODEL Maximalization objectiv function (resp min) DUAL MATHEMATICAL MODEL Minimalization objectiv function (resp max) Own constraints of primáry model Dual variables (in the number of m) (in the number of m) Primary variables Own constraints of dual model (in the number of n) (in the number of n) Mathematical notation of primary model: P z = n c jx j max, j=1 Mathematical notation of dual model: P f = m b iu i min, A x T b T, A T u T c T, x j 0, j = 1,, n u i 0, i = 1,, m i=1
Definition: If in the primary model are own conditions only in the form of inequalities (not equations) and nonnegativity conditions are for all variables, it is a pair of so-called it symmetrical dual-coupled problems If in the primary model is any equation or missing nonnegativity condition, it is a pair of so-called it asymmetrical dual-coupled problems
Example: The company produces two types of products V 1 and V 2 Table shows the consumption of raw materials S 1 and S 2 (in kg) to produce 1 pcof product V 1, respectively V 2, and the available quantity of these materials The profit from each product V 1 is 3 CZK, for 1 pc V 2 it is 2 CZK Determine the optimal production plan business to maximize profit Build a mathematical model of dual problem and find solution of the dual problem Products Available V 1 V 2 quantity S 1 2 5 1000 S 2 4 1 1100 zisk 3 2 max Table: Ekonomic model of LP problem
Solution: At first put together (primary) the mathematical model of the problem 2x 1 + 5x 2 1000, 4x 1 + x 2 1100, z = 3x 1 + 2x 2 max, x 1 0, x 2 0 Variables x 1, resp x 2 indicate the number of products V 1, resp V 2 The primary problem is maximized and all conditions are inequalities (specifically of type ), ie a mathematical model is in standard form At the same time, both variables must be non-negative, so this model and the associated dual model will consist of a pair of symmetrical problems
The primary problem has two own constraints, therefore the dual problem has two dual variables Mark the u 1 a u 2 We put together dual mathematical model in the form: 2u 1 + 4u 2 3, 5u 1 + u 2 2, f = 1000u 1 + 1100u 2 min, u 1 0, u 2 0
If we do not consider here the graphical method, we have essentially two ways to find optimal solution of the dual problem: 1 own solution to the dual problem (by method of articicial variables), 2 from simplex table of solved primary problem Solve first primary problem by the simplex method Then we solve the dual problem by method of artificial variables
PRIMARY PROBLEM Bv x 1 x 2 x 1 x 2 b i p = b i a ik for a ik > 0 x 1 2 5 1 0 1000 500 x 2 (4) 1 0 1 1100 275 z 3 2 0 0 0 max x 1 0 ( 18 4 ) 1 1 2 450 100 1 0 4 x 1 1 4 275 1100 z 0 5 3 0 4 4 825 max 2 x 2 0 1 9 1 9 100 x 1 1 0 1 5 18 18 250 5 11 z 0 0 18 18 950 MAX The optimal solution of primary problem: x opt = (250, 100), z max = 950 1
DUAL PROBLEM Bv u 1 u 2 u 1 u 2 u 1 u 2 b i p = b i a ik for a ik > 0 u 1 2 4 1 0 1 0 3 3 u 2 (5) 1 0 1 0 1 2 f 1000 1100 0 0 0 0 0 min 2 f 7 5 1 1 0 0 5 min 1 u 1 0 ( 18 ) 1 2 1 2 5 5 5 u 1 1 1 5 0 1 5 0 1 5 2 2 5 11 11 5 18 2 5 2 f 0 900 0 200 0 200 400 min 2 f 0 18 5 1 u 2 0 1 5 18 u 1 1 0 2 5 0 7 5 2 18 1 4 1 18 18 18 5 2 18 18 4 18 11 5 min 1 11 18 5 18 f 0 0 250 100 250 100 950 MIN 2 f 0 0 0 0 1 1 0 MIN 1 Optimal solution of dual problem is u opt = ( 5, 11 18 18 ), fmin = 950
Theorem (Fundamental theorem of duality): If one of the pair of dual associated PL problems has an optimal solution, then the second LP problem has optimal solution and the values of objective functions (for this optimal solutions) are the same Solution of the dual problem can be deduced from the last step of the simplex table of primary problem Similarly, based on the reflexivity of duality, the optimum solution of the primary problem can be determined from final step of simplex table of dual problem (if it contains an optimal solution of dual problem) In table 2, resp 3, shows a schematic illustration of the last step of the simplex table in which the optimal solution of primary, respectively dual problem Shows where to read the optimal solution of dual associated problem, ie solving the dual, respectively primary problem
Zp x 1 x n x 1 x m b i z u 1 u n u 1 u m z = f Table 2: Solution of dual problem in solving of primary problem Zp u 1 u m u 1 u n b i f x 1 x m x 1 x n f = z Table 3: Solution of primary problem in solving of dual problem
Comment: If the minimization problem, it is necessary coefficients in annulled objective equation multiplied by the number ( 1), and only then be considered as dual variables Theorem: If the of primary problem has only one optimal solution, then the dual problem has only one optimal solution, and vice versa If the of primary problem has the alternative solutions, then the optimal solution the dual problem is degenerate, and vice versa If the of primary problem has not the final optimal solution (ie has feasible solution, but the objective function can grow indefinitely, resp decrease, depending on whether it is a maximization, respectively minimization problem), then the dual problem has no feasible solution, and vice versa
So far we have a dual problem (dual variables, constraints, objective function) perceived purely mathematically, without a deeper economic ties with primary problem Here we interpret this relationship for the case of production planning problem Example: The company produces two types of products V 1 and V 2 Table shows the consumption of raw materials S 1 and S 2 (in kg) to produce 1 pcof product V 1, respectively V 2, and the available quantity of these materials The profit from each product V 1 is 3 CZK, for 1 pc V 2 it is 2 CZK The task is to determine the optimal production plan business to maximize profit Products Available V 1 V 2 quantity S 1 2 5 1000 S 2 4 1 1100 zisk 3 2 max Table: Ekonomic model of LP problem
The optimal production plan business so as to maximize profit, we have set previously In this case, the raw materials are transformed into products which (with a profit) are sold Here, however, consider a completely different way The task is to assemble a problem (a mathematical model), where we do not produce products and sell, but we sell directly to the raw materials that the company has available for now Solution: Consider therefore the direct sale of raw materials The question is, what would have to be raw material prices (and what the smallest possible gain is achieved) to their direct sales paid off Let us denote an unknown price per unit amount of raw materials S 1 symbol of U 1 and an unknown quantity of raw material cost per unit S 2 symbol of u 2 The total selling price of raw materials is then given function f = 1000u 1 + 1100u 2 Price of raw materials that are needed to produce 1 piece V 1 is 2u 1 + 4u 2
To direct sales of paid, this price must be at least equal to the profit for the production and sale of V1, ie at least 3 CZK We get the condition Analogously, due to the product V 2: 2u 1 + 4u 2 3 5u 1 + u 2 2 Prices of raw materials we consider non-negative, ie Overall, we get a mathematical model u 1 0, u 2 0 2u 1 + 4u 2 3, 5u 1 + u 2 2, f = 1000u 1 + 1100u 2 min, u 1 0, u 2 0 It is evident that this is a mathematical model of dual problem of the original product planning problem The optimal solution is u = ( 5 ), fmin = 950, 11 18 18
At first we define some terms Definition: The solution is called primarily feasible solution if it meets all its own constraints and nonnegativity conditions Solution the minimization problem is called dual feasible solution, if the coefficients in annulled objective function are not positive Solution the maximization task is called dual feasible solution, if the coefficients in annulled objective function are not negative Theorem: The solution is both primary and dual feasible if and only if the solution is optimal
Procedure of dual simplex method: 1 We start from a dual feasible solution 2 Determine the key row We determine the smallest value of the right-hand sides of constraints Let this value is in the r-th row, ie min i b i = b r If b r > 0, then the solution is also primarily admissible and therefore optimal If b r = 0, then the solution is optimal The solution is degenerate If b r < 0, then it is necessary to proceed to step 2, r-th row is key 3 We determine key column Considering only the negative coefficients of key row, ie coefficients a rj < 0 4 Calculation of the proportion p = c j a rj objective function 5 We determine min a rj <0 o c n j a rj (the key column) for a rj < 0, c j is the coefficient in the 6 A key point is at the intersection of key row and key column The table is recalculated complete elimination Ie, we divide all elements of key row element of the key point Elements of key column replace competent basic columnar unit vector, we calculate the other elements (eg by cross-rule) 7 Continue from step 2 to the new basic solution
Example: Solve the LP problem with the mathematical model by dual simplex method z = 1000x 1 + 1100x 2 min, 2x 1 + 4x 2 3, 5x 1 + x 2 2, x 1 0, x 2 0
Solution: The problem is of the minimization type and in annulled objective function z 1000x 1 1100x 2 = 0 all coefficients are not positive Therefore, initial basic solution is dual feassible, and a dual simplex method for solving this problem can be used We continue: 2x 1 + 4x 2 x 1 = 3, 5x 1 + x 2 x 2 = 2, x 1 0, x 2 0, x 1 0, x 2 0
Multiplying the last two equations number ( 1), we get a system of equations in canonical form and therefore initial basic solution Thus, the system of equations 2x 1 4x 2 + x 1 = 3, 5x 1 x 2 + x 2 = 2, z 1000x 1 1100x 2 = 0 (min), x 1 0, x 2 0, x 1 0, x 2 0 can be rewritten in the simplex table and use the dual simplex method At each step of the table we write the appropriate primary basic solutions and dual basic solution primary and dual feasibility or infeasibility (abbreviations PF, DF, PI, DI )
Zp x 1 x 2 x 1 x 2 b i x 1-2 (-4) 1 0-3 x 2-5 -1 0 1-2 z -1000-1100 0 0 0 min x 2 1 2 1-1 4 0 3 4 x 2 (- 9 2 ) 0-1 4 1-5 4 z -450 0-275 0 825 min x 2 0 1-5 18 x 1 1 0 1 9 1 18-2 9 11 18 5 18 z 0 0-250 -100 950 MIN x = (0, 0; 3, 2) u = (0, 0; 1000, 1100) min, 1100 o n 1000 2 x = (0, 3 4, 0, 5 4 ) 4 u = (275, 0; 450, 0) 450 min n, 275 o x = ( 5 9 2, 11 18 18 1 4 u = (250, 100; 0, 0) = 1100 4 = 450 9 2 PI DF PI DF ; 0, 0) PF DF It is evident that this is a mathematical model of dual problem of the original planning production problem on page 25, where the optimal solution has the form u = ( 5 ) with the value of the objective function fmin = 950, 11 18 18
Operations Research Duality in linear programming