-
Optimization and
Linear Programming
Rini Novrianti Sutardjo Tui
-
The Optimal Decision Problem
Decision which incurs the least cost among the set of permissible decisions
The decisions can be ranked according to whether they incur
greater or lesser cost
The cost of each
decision is known
The set of all permissible decisions is
known
-
Optimization Methods
Dynamic Programming
Linear Programming
Non-linear Programming
Discrete-time Optimal Control
-
Linear Programming (LP)
Maximize/minimize : Z = c1x1 + c2x2 + + cnxn
Constraints : a11x1 + a12x2 + + a1nxn = b1
a21x1 + a22x2 + + a2nxn = b2
am1x1 + am2x2 + + amnxn = bm
x1 0 ; x2 0 ; ; xn 0
b1 0 ; b2 0 ; ; bm 0
Standard form of LP problem with m constraints and n variables
-
Linear Programming in Vector Form
Maximize/minimize : Z = cx
Constraints : Ax = b
x 0
b 0
mnmm
n
n
aaa
aaa
aaa
...
............
...
...
21
22221
11211
Amxn =
n
n
x
x
x
x...
2
1
1
bm
b
b
b m...
2
1
1
nn cccc ...211
-
Prerequisites of LP Model
All constraints are stated as equations
Constant in right side of constraints
is non-negative
Function of objective is maximize or minimize
All variables are non-negative
-
Linear Programming Model
Minimize : Z = 40x1 + 36x2
Constraints : x1 8
x2 10
: 5x1 + 3x2 45
x1 0 ; x2 0
x2
x1
5
10
15
5 9
x1 = 8
x2 = 10
A (8, 5/3)
B C
-
Simplex Method
All constraints have to be equations, if not then slack variable or surplus variable is needed.
Simplex For complex and broad
problem of linear programming
Constant in right side of constraint equations has to be non-negative, if not then it has to be transformed to positive value.
-
General Model of Simplex Method
Maximize Function of Objective: Maximize
Z C1X1-C2X2- . . . . . CnXn-0S1-0S2-. . .-0Sn = NK
Function of Constraints:
a11X11+a12X12+. . . .+a1nXn+ S1+0S2+. . .+0Sn = b1 a21X21+a22X22+. . . .+a2nXn+ 0S1+1S2+. . .+0Sn = b2
. .. . .. .. . ..=
am1Xm1+am2Xm2+. . . .+amnXn+ S1+0S2+. . .+1Sn = bm Activities Variables Slack Variables
-
General Model of Simplex Method
Minimize Function of Objective: Minimize
Z C1X1-C2X2- . . . . . CnXn-0S1-0S2-. . .-0Sn = RhV
Function of Constraints:
a11X11+a12X12+. . . .+a1nXn - S1 -0S2-. . . - 0Sn = b1 a21X21+a22X22+. . . .+a2nXn - 0S1-1S2 -. . . - 0Sn = b2
. .. . .. .. . ..=
am1Xm1+am2Xm2+. . . .+amnXn- S1- 0S2 -. . . -1Sn = bm
Activities Variables Surplus Variables
-
Solving Simplex Model
Formulate LP problem into standard form of LP
Transform LP model into simplex model
Formulate simplex table
Take steps of solving
-
Simplex Model
Table of Matrix
Column table of basic variables
Row table of Cj - Zj
-
COLUMN TABLE OF MATRIX OF BASIC VARIABLES
Linear Programming
-
Example Step 1
Maximize:
Linear Programming Method
Function of Objective:
Maximize: Z=8X1 + 6X2 (in thousand IDR)
Function of Constraints:
Material A : 4X1 + 2X2 60
Material B : 2X1 + 4X2 48
X1, X2 0
-
Step 2
Simplex Model:
Function of Objective: Maximize
Z 8X16 X20S1- 0S2 = 0
Function of Constraints:
4X1+2X2+ S1+ 0S2 = 60
2X1+4X2+0S1+ 1S2 = 48
X1, X2, S1, S2 0
-
Step 3 1
Basic Variables
Z X1 X2 S1 S2 RhV
Simplex Table
-
Step 3 2
Simplex Table
Basic Variables
Z X1 X2 S1 S2 RhV
Z
S1
S2
-
Step 3 3
Simplex Table
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 -8 -6 0 0 0
S1
S2
-
Step 3 4
Simplex Table
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 -8 -6 0 0 0
S1 0 4 2 1 0 60
S2
-
Step 3 5
Simplex Table
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 -8 -6 0 0 0
S1 0 4 2 1 0 60
S2 0 2 4 0 1 48
-
Step 4 1
First iteration Iteration-0
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 -8 -6 0 0 0
S1 0 4 2 1 0 60
S2 0 2 4 0 1 48
-
Step 4 2
Iteration-1: Determining key column
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 -8 -6 0 0 0
S1 0 4 2 1 0 60
S2 0 2 4 0 1 48
Key column: column with biggest negative value of coefficients of function of constraints.
-
Step 4 3
Iteration-1: Determining key row
Basic Variables
Z X1 X2 S1 S2 RhV Index
Z 1 -8 -6 0 0 0 -
S1 0 4 2 1 0 60 15
S2 0 2 4 0 1 48 24
Key row: row with smallest index value (positive).
Index value: RV/key column
Key number
-
Step 4 4
Iteration-1: Changes of row value
Basic Variables
Z X1 X2 S1 S2 RhV
Z
X1 0 1 0 15
S2
New key row: (previous key row)/key number
Other row value: (previous row value) ( (new key row) x key column of the row itself).
-
Step 4 5
Iteration-1: Changes of row value
Basic Variables
Z X1 X2 S1 S2 RhV
Z
X1 0 1 0 15
S2 0 0 3 - 1 18
New key row: (previous key row)/key number
Other row value: (previous row value) (new key row) x key column of the row itself
-
Step 4 6
Iteration-1: Changes of row value
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 0 - 2 2 0 120
X1 0 1 0 15
S2 0 0 3 - 1 18
New key row: (previous key row)/key number
Other row value: (previous row value) (new key row) x key column of the row itself
-
Step 4 7
Basic Variables
Z X1 X2 S1 S2 RhV
Z 1 0 - 2 2 0 120
X1 0 1 0 15
S2 0 0 3 - 1 18
Iteration-2: Determining key column
-
Step 4 8
Basic Variables
Z X1 X2 S1 S2 RhV Index
Z 1 0 - 2 2 0 120 -
X1 0 1 0 15 30
S2 0 0 3 - 1 18 6
Iteration-2: Determining key row
-
Step 4 9
Basic Variables
Z X1 X2 S1 S2 RhV Index
Z
X1
X2 0 0 1 - 1/6 1/3 6 -
Iteration-2: Changes of row value
-
Step 4 10
Basic Variables
Z X1 X2 S1 S2 RhV Index
Z 1 0 0 5/3 2/3 132 -
X1 0 1 0 1/3 - 1/6 12 -
X2 0 0 1 - 1/6 1/3 6 -
Iteration-2: Changes of row value
-
Solution
Optimal
X1 = 12
X2 = 6 Zmax = IDR
132,000
-
ROW TABLE OF MATRIX OF CJ - ZJ
Linear Programming
-
Example Step 1
Maximize:
Linear Programming Method
Function of Objective:
Maximize: Z=3X + 5Y
Function of Constraints:
2X 8
3Y 15
6X + 5Y 30
X, Y 0
-
Step 2
Simplex Model:
Function of Objective: Maximize
Z=3X+5Y+0S1+0S2+0S3
Function of Constraints:
2X+0Y+ 1S1+ 0S2+0S3 = 8
0X+3Y+ 0S1+ 1S2+0S3 = 15
6X+5Y+ 0S1+ 0S2+1S3 = 30
X,Y, S1, S2 , S3 0
-
Step 3 Enter each coefficient into simplex table
Basic Var. Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 8 2 0 1 0 0
S2 0 15 0 3 0 1 0
S3 0 30 6 5 0 0 1
Zj 0 0 0 0 0
Cj-Zj 3 5 0 0 0
-
Step 4 Determine key column
Basic Var. Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 8 2 0 1 0 0
S2 0 15 0 3 0 1 0
S3 0 30 6 5 0 0 1
Zj 0 0 0 0 0
Cj-Zj 3 5 0 0 0
Key column: column with biggest positive value of Cj Zj (maximize), or column with biggest negative value of Cj Zj (minimize).
-
Step 5 Determine key row
Basic Var. Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 8 2 0 1 0 0 8/0 = ~
S2 0 15 0 3 0 1 0 15/3 = 5
S3 0 30 6 5 0 0 1 30/5 = 6
Zj 0 0 0 0 0
Cj-Zj 3 5 0 0 0
Key row: row with the smallest value of quantity ratio.
rowrespondingofcolumnkeyofiablesoftcoefficien
valueQratioQuantity
______var__
__
-
Step 6 Determine pivot point
Basic Var. Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 8 2 0 1 0 0 8/0 = ~
S2 0 15 0 3 0 1 0 15/3 = 5
S3 0 30 6 5 0 0 1 30/5 = 6
Zj 0 0 0 0 0
Cj-Zj 3 5 0 0 0
-
Step 7 Change value of key row
New value : previous key row value/pivot point
New value for row S2:
15/3 0/3 3/3 0/3 1/3 0/3
5 0 1 0 1/3 0
-
Step 8 Change value of non-key row
New value = previous value (FR x previous value of key row) FR (fixed ratio) is coefficient of variables of key column of corresponding row/pivot point
Row S1:
FR = 0/3 = 0,
Since value of FR is 0, therefore for row S1, new value = previous value
Row S2:
FR = 5/3,
30 6 5 0 0 1
(5/3) x 15 0 3 0 1 0
5 6 0 0 -5/3 1
-
Step 9 Change table in step 3
Basic Var. Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 8 2 0 1 0 0
Y 5 5 0 1 0 1/3 0
S3 0 5 6 0 0 -5/3 1
Zj 0 5 0 5/3 0
Cj-Zj 3 0 0 -5/3 0
Change in basic variable: variables of key column (Y) replace variable of key row (S2)
-
Step 10 Optimality test
Simplex table is considered optimal if value of Cj- Zj 0 for case of maximize and value of Cj Zj 0 for case of minimize. Table in step 9 indicates that there is still positive value of Cj-Zj, therefore optimal condition has not been reached yet. Repeat step 3 9 until optimized solution is achieved.
-
Step 11 Repeat step 3 9
Basic Var.
Obj. Cj 3 5 0 0 0 Qty. Ratio
X Y S1 S2 S3
S1 0 38/6 0 0 1 5/9 -2/6
Y 5 5 0 1 0 1/3 0
X 3 5/6 1 0 0 -5/18 1/6
Zj 3 5 0 15/18 3/6
Cj-Zj 0 0 0 -15/18 -3/6
-
Solution
Optimal
X = 5/6
Y = 5 Z = (3 x
5/6) + (5 x 5) = 27.5
-
M i n i n g M a n a g e m e n t