Linear Programming - nptel.ac.innptel.ac.in/courses/105108127/pdf/Module_3/M3L6slides.pdf · 1 D...
Transcript of Linear Programming - nptel.ac.innptel.ac.in/courses/105108127/pdf/Module_3/M3L6slides.pdf · 1 D...
D Nagesh Kumar, IISc Optimization Methods: M3L61
Linear Programming
Other Algorithms
D Nagesh Kumar, IISc Optimization Methods: M3L62
Introduction & Objectives
Few other methods, for solving LP problems, use an entirely different algorithmic philosophy.– Khatchian’s ellipsoid method– Karmarkar’s projective scaling method
ObjectivesTo present a comparative discussion between new methods and Simplex methodTo discuss in detail about Karmarkar’s projective scaling method
D Nagesh Kumar, IISc Optimization Methods: M3L63
Comparative discussion between new methods and Simplex method
Simplex AlgorithmKarmarkar’s Algorithm
Optimal solution point
Feasible Region
Khatchian’s ellipsoid methodand Karmarkar’s projective scaling method seek the optimum solution to an LP problem by moving through the interior of the feasible region.
D Nagesh Kumar, IISc Optimization Methods: M3L64
Comparative discussion between new methods and Simplex method
1. Both Khatchian’s ellipsoid method and Karmarkar’s projective scaling method have been shown to be polynomial time algorithms. Time required for an LP problem of size n is at most anb , where a and b are two positive numbers.
2. Simplex algorithm is an exponential time algorithm in solving LP problems.Time required for an LP problem of size n is at most c2n, where c is a positive number
D Nagesh Kumar, IISc Optimization Methods: M3L65
Comparative discussion between new methods and Simplex method
3. For a large enough n (with positive a, b and c), c2n > anb. The polynomial time algorithms are computationally superior to exponential algorithms for large LP problems.
4. However, the rigorous computational effort of Karmarkar’s projective scaling method, is not economical for ‘not-so-large’ problems.
D Nagesh Kumar, IISc Optimization Methods: M3L66
Karmarkar’s projective scaling method
Also known as Karmarkar’s interior point LP algorithm
Starts with a trial solution and shoots it towards the optimum solution
LP problems should be expressed in a particular form
D Nagesh Kumar, IISc Optimization Methods: M3L67
Karmarkar’s projective scaling method
LP problems should be expressed in the following form:
:with1
:subject to Minimize T
0X1X
0AXXC
≥==
=Z
where
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=
nx
x
x
M
2
1
X
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
nc
cc
M2
1
C [ ] ( )n×= 1111 L1⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
mnmm
n
n
ccc
cccccc
L
MOMM
L
L
21
22221
11211
A 2≥nand
D Nagesh Kumar, IISc Optimization Methods: M3L68
Karmarkar’s projective scaling method
It is also assumed that is a feasible solution and
Two other variables are defined as: and .
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=
n
n
n
1
1
1
0M
X 0min =Z
( )11−
=nn
r ( )n
n3
1−=α
Karmarkar’s projective scaling method follows iterative steps to find the optimal solution
D Nagesh Kumar, IISc Optimization Methods: M3L69
Karmarkar’s projective scaling method
In general, kth iteration involves following computations
a) Compute ( )[ ] T1TT CPPPPIC −−=p
where
⎟⎟⎠
⎞⎜⎜⎝
⎛=
1
ADP
k
kDCC T=
( )( )
( )⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=
nk
k
k
k
X
X
X
D
000
000
0020
0001
O
If , ,any feasible solution becomes an optimal solution. Further iteration is not required. Otherwise, go to next step.
0C =p
D Nagesh Kumar, IISc Optimization Methods: M3L610
Karmarkar’s projective scaling method
b)p
pnew r
C
CXY α−= 0
c)newk
newkk Y1D
YDX =+1
However, it can be shown that for k =0, k newnew
k new
=D Y Y
1D YThus, 1 new=X Y
1T
+= kZ XCd)
Repeat the steps (a) through (d) by changing k as k+1e)
D Nagesh Kumar, IISc Optimization Methods: M3L611
Karmarkar’s projective scaling method: Example
Consider the LP problem:
0,,1
02 :subject to2 Minimize
321
321
321
32
≥=++=+−
−=
xxxxxxxxxxxZ
3=nThus,⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
=
1
2
0
C [ ]121 −=A
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=
31
31
31
0M
X
( ) ( ) 61
1331
11
=−
=−
=nn
r ( ) ( )92
3313
31
=×−
=−
=n
nαand also,
D Nagesh Kumar, IISc Optimization Methods: M3L612
Karmarkar’s projective scaling method: Example
Iteration 0 (k=0):
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
3/100
03/10
003/1
0D
[ ] [ ]3/13/20
3/100
03/10
003/1
1200T −=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
×−== DCC
[ ] [ ]3/13/23/1
3/100
03/10
003/1
1210 −=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
×−=AD
D Nagesh Kumar, IISc Optimization Methods: M3L613
Karmarkar’s projective scaling method: Example
Iteration 0 (k=0)…contd.:
⎥⎥⎦
⎤
⎢⎢⎣
⎡ −=
⎟⎟⎠
⎞⎜⎜⎝
⎛=
111
3/13/23/10
1
ADP
⎥⎥⎦
⎤
⎢⎢⎣
⎡=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−×⎥⎥⎦
⎤
⎢⎢⎣
⎡ −=
30
03/2
13/1
13/2
13/1
111
3/13/23/1TPP
( )⎥⎥⎦
⎤
⎢⎢⎣
⎡=
−
3/10
05.11TPP
D Nagesh Kumar, IISc Optimization Methods: M3L614
Karmarkar’s projective scaling method: Example
( )⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=−
5.005.0
010
5.005.01TT PPPP
Iteration 0 (k=0)…contd.:
( )[ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
=−=−
6/1
0
6/1T1TT CPPPPIC p
62)6/1(0)6/1( 22 =++=pC
D Nagesh Kumar, IISc Optimization Methods: M3L615
Karmarkar’s projective scaling method: Example
Iteration 0 (k=0)…contd.:
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
××
−
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=−=
3974.0
3333.0
2692.0
6/1
0
6/1
62
61
92
31
31
31
0Mp
pnew r
C
CXY α
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
==
3974.0
3333.0
2692.0
1 newYX [ ] 2692.0
3974.0
3333.0
2692.0
1201T =
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
×−== XCZ
D Nagesh Kumar, IISc Optimization Methods: M3L616
Karmarkar’s projective scaling method: Example
Iteration 1 (k=1):
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
3974.000
03333.00
002692.0
1D
[ ] [ ]T1
0.2692 0 0
0 2 1 0 0.3333 0 0 0.6667 0.3974
0 0 0.3974
⎡ ⎤⎢ ⎥⎢ ⎥= = − × = −⎢ ⎥⎢ ⎥⎣ ⎦
C C D
[ ] [ ]3974.06666.02692.03974.00003333.00002692.0
1211 −=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡×−=AD
D Nagesh Kumar, IISc Optimization Methods: M3L617
Karmarkar’s projective scaling method: Example
Iteration 1 (k=1)…contd.:
1 0.2692 0.6667 0.3974
1 1 1
−⎛ ⎞ ⎡ ⎤= =⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎢ ⎥⎝ ⎠ ⎣ ⎦
ADP
1
T
0.2692 10.2692 0.6667 0.3974 0.675 0
0.6667 11 1 1 0 3
0.3974 1
⎡ ⎤− ⎢ ⎥⎡ ⎤ ⎡ ⎤
⎢ ⎥= × − =⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦
PP
( ) 1T T
0.441 0.067 0.492
0.067 0.992 0.059
0.492 0.059 0.567
−
⎡ ⎤⎢ ⎥⎢ ⎥= −⎢ ⎥⎢ ⎥−⎣ ⎦
P PP P
D Nagesh Kumar, IISc Optimization Methods: M3L618
Karmarkar’s projective scaling method: Example
Iteration 1 (k=1)…contd.:
( ) 1T T T
0.151
0.018
0.132
p
−
⎡ ⎤⎢ ⎥
⎡ ⎤ ⎢ ⎥= − = −⎢ ⎥⎣ ⎦ ⎢ ⎥⎢ ⎥−⎣ ⎦
C I P PP P C
( )22 2(0.151) 0.018 ( 0.132) 0.2014p = + − + − =C
0
1 30.151 0.26532 1
1 3 9 6 0.018 0.34140.2014
0.132 0.39281 3
pnew
p
rα
⎡ ⎤⎢ ⎥ ⎡ ⎤ ⎡ ⎤×⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥= − = − × − =⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥−⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦
CY X
C M
D Nagesh Kumar, IISc Optimization Methods: M3L619
Karmarkar’s projective scaling method: Example
Iteration 1 (k=1)…contd.:
1
0.2692 0 0 0.2653 0.0714
0 0.3333 0 0.3414 0.1138
0 0 0.3974 0.3928 0.1561
new
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥= × =⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦ ⎣ ⎦
D Y
[ ]1
0.0714
1 1 1 0.1138 0.3413
0.1561
new
⎡ ⎤⎢ ⎥⎢ ⎥= × =⎢ ⎥⎢ ⎥⎣ ⎦
1D Y
D Nagesh Kumar, IISc Optimization Methods: M3L620
Karmarkar’s projective scaling method: Example
Iteration 1 (k=1)…contd.:
12
1
0.0714 0.20921 0.1138 0.3334
0.34130.1561 0.4574
new
new
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥= = × =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦
D YX1D Y
[ ]T2
0.2092
0 2 1 0.3334 0.2094
0.4574
Z
⎡ ⎤⎢ ⎥⎢ ⎥= = − × =⎢ ⎥⎢ ⎥⎣ ⎦
C X
Two successive iterations are shown. Similar iterations can be followed to get the final solution upto some predefined tolerance level
D Nagesh Kumar, IISc Optimization Methods: M3L621
Thank You