You are on page 1of 14

Linear Optimization: - Chapter five 2009 E.

CHAPTER FOUR
Duality theory and further variations of the Simplex method
5.1 Dual linear programs

Introduction to duality
The term “dual” in a general sense implies two or double. The concept of
duality is a very useful in mathematics, physics, statistics, engineering and
management decision making.
For every linear programming problem there is a related unique linear
programming problem (another linear program) involving the same data
which also describes original problem. The given original program is called
primal program ( p) which can be transposing (or reversing) the row and
column of the algebraic statement of the problem. Inversing the problem in
this way results in dual program( D). A solution to the dual program may be
found similar to that used for primal. The two programs have very closely
related properties so that optimal solution of the dual gives complete
information about the solution of the primal and vice versa
Formulation of dual linear programming problem
The dual of a normal Max (canonical form of Max) problem is a normal Min
(canonical form of Min) problem.
Primal Dual
Max c T x Min bT y
s.t s.t
Ax ≤ b AT y ≥ C
x≥0 y ≥0
Rules to constructing the dual from primal
Rules to constructing the dual from primal (linear programming problem in
which its objective function is maximization)

Primal Dual

Objective function Max Objective function Min

Right hand side b→ No of Cost value b T →No of variables


constraints

Cost value c T →No of variables Right hand side c→ No of


constraints

Technological coefficient A Technological coefficient AT

Sing of constraint Sing of variables

By:-Mengistu C.(MSc in optimization theory) Page 1


Linear Optimization: - Chapter five 2009 E.c

≥ ≤0

≤ ≥0

¿ free

Sing of variables Sing of constraint

≥0 ≥

≤0 ≤

free ¿
The dual of a normal Min (canonical form of Min) problem is a normal Max
(canonical form of Max) problem.
Primal Dual
T T
min c x max b y
s ubject ¿ subject ¿
Ax ≥ b AT y ≤ C
x≥0 y ≥0
Rules to constructing the dual from primal (linear programming problem in
which its objective function is minimization)

Primal Dual

Objective function Min Objective function Max

Right hand side b→ No of Cost value b T →No of variables


constraints

Cost value c T →No of variables Right hand side c→ No of


constraints

Technological coefficient A Technological coefficient AT

Sing of constraint Sing of variables

≥ ≥0

≤ ≤0

¿ free

singof variables Sing of constraint

≥0 ≤

By:-Mengistu C.(MSc in optimization theory) Page 2


Linear Optimization: - Chapter five 2009 E.c

≤0 ≥

free ¿

Example
What is the dual of the following primal linear programming problems?

A. Min3 x +2 y+ z B. Max 3 x − y
Subject ¿ Subject ¿
2 x+ y + z ≥12 2 x+ y ≥ 2
3 x+ 4 y =11 x +3 y ≤ 2
y ,z ≥0 y=4
x≤0, y≥0

Solution
A. Max 12 x 1+ 11 x2 B. Min2 x 1+ 2 x 2 +4 x 3
Subject ¿ Subject ¿
2 x1 +3 x 2=3 2 x1 + x 2 ≤ 3
x 1+ 4 x 2 ≤ 2 x 1+ 3 x 2 + x 3 ≥−1
x1≤ 1 x 1 ≤ 0 , x2 ≥ 0
x1 ≥ 0

5.2 Duality theorems

Weak duality Theorem


Consider the canonical form of duality and let x 0∧w0 be feasible solution to
the primal and dual programs respectively. Then A x 0 ≥ b , x 0 ≥ 0 , w0 A ≤ c ,∧w 0 ≥ 0.
multiplying A x 0 ≥ bon the left by w 0 ≥ 0 and w 0 A ≤ c on the right by x 0 ≥ 0.we get
c x0 ≥ w0 A x 0 ≥ w 0 b
The objective function value for any feasible solution to the minimization
problem is always greater than or equal to the objective function value for
any feasible solution to the maximization problem. In particular, the
objective value of any feasible solution of the minimization problem gives an
upper bound on the optimal objective of the maximization problem. Similarly,
the objective value of any feasible solution of the maximization problem is a
lower bound on the optimal objective of the minimization problem.

If the primal linear programming has a finite optimal solution so does the
dual linear programming problem. If x 0∧w0are feasible solution to the primal
and dual problem such thatc x0 =w 0 b , then x 0∧w0are optimal solutions to their

By:-Mengistu C.(MSc in optimization theory) Page 3


Linear Optimization: - Chapter five 2009 E.c

respective problems. i.e. if one problem possesses an optimal solution, then


both problems possess optimal solution and the two optimal objective values
are equal.
Example
Max 2 x 1 + x 2
subject ¿
x 1+ x2 ≤ 4
x 1−x 2 ≤ 2
x1 , x2 ≥ 0

Solution
Let as find the optimal value and value by using graphical solution method

f(x) = x + 4 8

g(x) = x 2

15 10 5 5 10 15

( x 1 , x 2 )=( 3,1 ) is optimal point and 7 is optimal value to the primal linear
programming problem.
The dual of the primal linear programming problem is
Min 4 y 1 +2 y 2
subject ¿
y1 + y2 ≥ 2
y 1− y 2 ≥1
y1 , y2 ≥ 0

f(x) = 2 x 8

g(x) = x 1

15 10 5 5 10 15

By:-Mengistu C.(MSc in optimization theory) Page 4


Linear Optimization: - Chapter five 2009 E.c

(3 1)
( y 1 , y 2) = 2 , 2 is optimal point and 7 is optimal value to the dual linear

programming problem.

How to read the optimal dual solution from ∆ j of the optimal tableau of the
primal linear programming problem if the primal is a Max problem:
‘Optimal value of dual variable y i’
= – ‘coefficient of si in optimal row∆ j’ (if constraint i is ≤ inequality
constraint)
= ‘coefficient of si in optimal row∆ j’ (if constraint i is ≥ inequality
constraint)
= – ‘coefficient of a i in optimal row∆ j’ – M (if constraint iis equality
constraint)
How to read the optimal dual solution from Row ∆ j of the optimal tableau if
the primal is a Min problem:
‘Optimal value of dual variable x i’
= – ‘coefficient of si in optimal row∆ j’ (if constraint i is ≤ inequality
constraint)
= ‘coefficient of si in optimal row∆ j’ (if constraint i is ≥ inequality
constraint)
= – ‘coefficient of a i in optimal row∆ j’ + M (if constraint iis equality
constraint)
If the primal linear programming problem has unbounded solution, then the
dual of primal linear programming problem has infeasible solution.
Example
Max 2 x 1 + x 2
subject ¿
x 1+ x2 ≥1
x 1−x 2 ≤ 2
x1 , x2 ≥ 0
Solution

Let as find the optimal value and value by using graphical solution method
5
h (x ) = x + 1
f(x ) = x 2
4

10 8 6 4 2 2 4 6 8 10

By:-Mengistu C.(MSc in optimization theory) Page 5


4

5
Linear Optimization: - Chapter five 2009 E.c

The linear programming problem has unbounded solution.


The dual of the primal linear programming problem is
Min y1 +2 y 2
subject ¿
y1 + y2 ≥ 2
y 1− y 2 ≥1
y1 ≤ 0 , y2 ≥ 0

f(x) = x + 2 6

g ( x) = x 1
2

15 10 5 5 10 15

The dual linear programming problem has infeasible solution.


This implies that If the primal linear programming problem has unbounded
solution, then the dual of primal linear programming problem has infeasible
solution.

The definition indicates that unboundedness in one problem implies


infeasibility in the other problem. Is this property symmetric? Does
infeasibility in one problem imply unboundedness in the other? The answer is
“not necessarily”. This is best illustrated by the following example.

Example

Primal linear optimization problem

Min−x 1−x 2
subject ¿
x 1−x 2 ≥ 1
−x 1+ x2 ≥1
x1 , x2 ≥ 0
Solution

By:-Mengistu C.(MSc in optimization theory) Page 6


Linear Optimization: - Chapter five 2009 E.c

First let as find the optimal value and value by using graphical solution
method

h(x) = x + 1

15 10 5 5 10 15

f(x) = x 1

As we see in the graph the problem has no feasible region. This implies that
we have infeasible solution.
The dual of the primal linear programming problem is
Max y 1+ y 2
subject ¿
y 1− y 2 ≤−1
− y 1 + y 2 ≤−1
y1 , y2 ≥ 0
Now let as find the optimal value by using graphical solution method
8

h(x) = x + 1

15 10 5 5 10 15
f(x) = x 1

As we see in the graph the problem has no feasible region. This implies that
we have infeasible solution.
Therefore if the primal optimization problem has infeasible solution does
not mean the dual has unbounded solution.
If the dual of the primal linear programming has unbounded solution, then
the primal linear programming problem has infeasible solution.
Theorem (Fundamental theorem of duality)
With regard to the primal and dual linear programming problem, exactly one
of the following statements is true.
a. Both possess optimal solution
b. One problem has unbounded optimal value , in which case the
other problem must be infeasible
c. Both problems are infeasible.

By:-Mengistu C.(MSc in optimization theory) Page 7


Linear Optimization: - Chapter five 2009 E.c

From this theorem we see that duality is not completely symmetric. The best
we can say is that (here optimal means finite optimal, and unbounded means
having an unbounded optimal objective.
If the primal problem have The Its dual problem has
optimal solution n optimal solution
If the primal problem have The Its dual problem has
unbounded solution n infeasible solution
If the dual problem have The Its primal problem has
unbounded solution n infeasible solution
If the primal problem have The Its dual problem has
infeasible solution n unbounded or infeasible
solution
If the dual problem have The Its primal problem has
infeasible solution n unbounded or infeasible
solution
Feasibility
Any optimization problem is said to be
Primal feasible
If and only if all right hand are positive.
Dual feasible
In maximization problem
If all elements of net increment or decrement rate ( ∆ j=¿ c j−z j) are zero
and negative
In minimization problem
If all elements of increment or decrement rate ( ∆ j c j−z j=¿ ) are zero
and positive

Solution mechanism of linear programming problem


 If a linear programming problem is Primal feasible but dual infeasible
we are going to solve it by using Simplex algorithm method.
 If a linear programming problem is Primal infeasible but dual feasible
we are going to solve it by using dual Simplex algorithm method
 If a linear programming problem is Primal and dual infeasible we are
going to solve it by using dual- primal Simplex algorithm method
 If a linear programming problem is Primal and dual feasible we obtain
the optimal solution.

5.3 The Dual -Simplex Algorithm method

The Simplex method is an algorithm that always deals with a basic feasible
solution and the algorithm is terminated as soon as an optimal solution is

By:-Mengistu C.(MSc in optimization theory) Page 8


Linear Optimization: - Chapter five 2009 E.c

achieved. I.e. the procedure should be stopped when all c j−z j ≤0 for
maximization problem and c j−z j ≥0 for minimization problem. However if one
or more solution value are negative and optimality condition in both Max and
Min is satisfied then current primal optimal solution is infeasible solution. In
such cases, our problem is primal infeasible but it is dual feasible so we can
take our table as starting basic feasible solution to dual simplex algorithm.
I.e. all c j−z j ≤0 for maximization problem. In all such cases a variant of the
simplex method called the dual simplex method would be used.
Steps of a Dual-Simplex Algorithm
Step 1:- Determine an initial solution
Convert the given problem in to the standard form by adding slack, surplus
and artificial variables and obtain initial basic feasible solution. Display this
solution in the initial dual-simplex table.
Step 2:- Test optimality of the solution
If all solution values are positive then there is no need of applying a dual
simplex method because improved solution can be obtained by simplex
method itself. Otherwise go to step 3
Step 4:- Obtain improved solution
I. Select a basic variable associated with the row (called key row)
having the largest negative solution value
i.e. x βi =min { x βi , x βi <0 }
II. Determine the minimum ratios only for those columns having a
negative element in∆ j. Then select a non basic variable for entering
into the basic associated with the column for which
c k −z k c j−z j
y rk
=min{ y rj }
; y rj <0 for all j .

The element ( y rk ) at the intersection of the key row and key column is
called key element. The improved solution can be obtained by making
y rk is 1 and all other element of the key column zero. Here it may be
noted that the key element is always positive.
Step 5: Repeat the procedure
Repeat step 2 to step 4 until either an optimal solution is reached or
there exists unbounded solution.
Example

Solve the following linear programming problem by using dual simplex


algorithm

By:-Mengistu C.(MSc in optimization theory) Page 9


Linear Optimization: - Chapter five 2009 E.c

A. Max−x 1−3 x 2 B. Min5 x 1 +3 x2


Subject ¿ Subject ¿
−3 x 1−x 2 ≤−2 2 x1 + x 2 ≤ 4
2 x1 ≤10 −x 1+ 4 x 2 ≥ 6
x1 , x2 ≥ 0 x1 , x2 ≥ 0

C. Min x 1 +2 x2 D.
Subject ¿
x 1+ x2 ≤5
−x 1+ x2 =−1
x1 , x2 ≥ 0

Solution

A. The standard form of the linear programming problem is


Max−x 1−3 x 2
Subject ¿
−3 x 1−x 2+ s 1=−2
2 x1 + s2=10
x 1 , y , s 1 , s2 ≥0
s1∧s2 are basic variables but x 1∧x 2are non-basic feasible variables

This implies that our problem is primal infeasible but dual feasible. So we are
going to solve this problem by using dual simplex algorithm.

  Cj −1 −3 0 0
CB B x1 x2 s1 s2 b=x B
0 s1 −3 −1 1 0 −2
0 s2 2 0 0 1 10
Zj 0 0 0 0
∆j −1 −3 0 0
Mr 1 3 −¿ −¿

3
−1 x1 1 1/3 −1/ 3 0 2/3
0 s2 0 −2/3 2/3 1 26 /3
Zj −1 −1/ 3 1/3 0 −2/3
∆j 0 −8 /3 −1/ 3 0

By:-Mengistu C.(MSc in optimization theory) Page 10


Linear Optimization: - Chapter five 2009 E.c

This is both primal and dual feasible. So this implies that ( x 1 , x 2 )= ( 23 , 0) is


−2
optimal point and is optimal value to the primal linear programming
3
problem.
From the optimal table the optimal solution of the dual linear programming

problem is ( y 1 , y 2) =( 13 , 0) and −23 is optimal value.


B. The standard form of the linear programming problem is
Min5 x 1 +3 x2 +0 s1 +0 s2
Subject ¿
2 x1 + x 2 +s 1=4
x 1−4 x2 + s2=−6
x 1 , x 2 , s1 , s 2 ≥ 0
s1∧s2 are basic variables but x 1∧x 2are non-basic feasible variables

This implies that our problem is primal infeasible but dual feasible. So we are
going to solve this problem by using dual simplex algorithm.

  Cj 5 3 0 0
CB B x1 x2 s1 s2 b=x B
0 s1 2 1 1 0 4
0 s2 1 −4 0 1 −6 →
Zj 0 0 0 0
∆j 5 3 0 0
Mr −¿ −3 −¿ −¿

4
0 s1 9 0 1 1 5
4 4 2
3 x2 −1 1 0 −1 3
4 4 2
Zj −3 3 0 −3 9
4 4 2
∆j 23 0 0 3
4 4

By:-Mengistu C.(MSc in optimization theory) Page 11


Linear Optimization: - Chapter five 2009 E.c

This is both primal and dual feasible. So this implies that ( x 1 , x 2 )= 0 , ( 32 ) is


9
optimal point and is optimal value to the primal linear programming
2
problem.

From the optimal table the optimal solution of the dual linear programming
3 9
(
problem is ( y 1 , y 2) = 0 ,−
4)and is optimal value.
2

C. The standard form of the linear programming problem is


Min x 1 +2 x2 +0 s1 + M a1
Subject ¿
x 1+ x2 + s1=5
−x 1+ x2 +a 1=−1
x 1 , x 2 , s1 , a1 ≥ 0

s1∧a1are basic variables but x 1∧x 2are non-basic feasible variables

This implies that our problem is primal and dual infeasible. So we are going
to solve this problem by using primal - dual simplex algorithm.

  Cj 1 2 0 M
CB B x1 x2 s1 a1 b=x B
0 s1 1 1 1 0 5
M a1 −1 1 0 1 −1 →
Zj −M M 0 M
∆j 1+ M 2−M 0 0
Mr −5−M ↑ −¿ −¿ −¿
0 s1 0 2 1 0 4
1 x1 1 −1 0 −1 1
Zj 1 −1 0 −1 1
∆j 0 3 0 M +1

By:-Mengistu C.(MSc in optimization theory) Page 12


Linear Optimization: - Chapter five 2009 E.c

This is both primal and dual feasible. So this implies that ( x 1 , x 2 )=( 1,0 ) is
optimal point and 1 is optimal value to the primal linear programming
problem.

From the optimal table the optimal solution of the dual linear programming
problem is ( y 1 , y 2) =( 0 ,−1 ) and 1 is optimal value.

5.4 The Primal-Dual simplex method

If a linear programming problem is primal and dual infeasible. I.e. all ∆ j=c j−z j
are not non negative for maximization problem; all ∆ j=c j−z j are not non
positive for minimization problem and all the right hand side values are not
non negative. We are going to solve to by using primal –dual simplex
algorithm method.

Example

Solve the following linear programming problem

Max 3 x 1−2 x 2
Subject ¿
x 1+ 2 x 2 ≤ 4
−x 1+ 3 x 2 ≥6
x1 , x2 ≥ 0

Solution

The standard from of the linear programming problem is

Max 3 x 1−2 x 2+ 0 s 1+ 0 s 2
Subject ¿
x 1+ 2 x 2 +s 1=4
x 1−3 x 2+ s 2=−6
x 1 , x 2 , s1 , s 2 ≥ 0

Find the optimal solution by using primal-dual simplex algorithm method


  Cj 3 −2 0 0 Remark
CB B x1 x2 s1 s2 b=x B Mr
Primal and dual
0 s1 1 2 1 0 4→ 4→

By:-Mengistu C.(MSc in optimization theory) Page 13


Linear Optimization: - Chapter five 2009 E.c

0 s2 1 −3 0 1 −6 −¿ infeasible
Solve by using primal
Zj 0 0 0 0 simplex algorithm

∆j 3↑ −2 0 0
3 x1 1 2 1 0 4 Primal infeasible but
dual feasible
0 s2 0 −5 1 1 −10 → Solve by using dual
simplex algorithm
Zj 3 6 3 0 12
∆j 0 −8 −3 0
Mr 0 8 −¿ −¿
5
3 x1 1 0 7 2 8 This is both primal and
5 5 dual feasible this
implies this is our
−2 x2 0 1 −1 −1 2 optimal table
5 5
Zj 3 −2 9 4 20
5 5
∆j 0 0 −9 −4
5 5

( x 1 , x 2 )=( 8,2 ) is optimal point and 20 is optimal value to the primal linear
programming problem.

By:-Mengistu C.(MSc in optimization theory) Page 14

You might also like