For every LP formulation there exists another unique linear programming formulation called the 'Dual' (the original formulation is called the 'Primal'). Same data can be used for both 'Dual' and 'Primal' formulation. Both can be solved in a similar manner as the Dual is also an LP formulation.
The Dual can be considered as the 'inverse' of the Primal in every respect. The column coefficients in the Primal constraints become the row co-efficients in the Dual constraints. The coefficients in the Primal objective function become the right-hand-side constraints in the Dual constraints. The column of constants on the right hand side of the Primal constraints becomes the row of coefficients of the dual objective function. The direction of the inequalities are reversed. If the primal objective function is a 'Maximization' function then the dual objective function is a 'Minimization' function and vice versa.
Example
Consider the following 'Primal' LP formulation.
Maximize 12x1 + 10x2
subject to 2x1 + 3x2 < 18
2x1 + x2 < 14
x1, x2 > 0
The 'Dual' formulation for this problem would be
Minimize 18y1 + 14y2
subject to 2y1 + 2y2 > 12
3y1 + y2 > 10
y1 > 0, y2 > 0
Note the following:
-
The column coefficient in the Primal constraint namely (2,2) and (3,1) have become the row coefficient in the Dual constraints.
-
The coefficient of the Primal objective function namely, 12 and 10 have become the constants in the right-hand-side of the Dual constraints.
-
The constants of the Primal constraints, namely 18 and 14, have become the coefficient in the Dual objective function.
-
The direction of the inequalities have been reversed. The Primal constraints have the inequalities of < while the Dual constraints have the inequalities of >.
-
While the Primal is a 'Maximization' problem the Dual is a 'Minimization' problem and vice versa.