Linear Programming
(Pemrograman Linier)
Program Studi Statistika
Semester Ganjil 2011/2012
Algoritma Simpleks untuk
Minimization Problem
Metode 1: Rubah fungsi obyektif: min z → max
(-z)
Selesaikan dengan algoritma
simpleks
Metode 2:Dengan menggunakan semua
langkah pada algoritma simpleks,
kecuali pada langkah 3, kebalikan
dari kasus max
Jika semua koefisien baris 0 <=0,
BFS solusi optimal
Contoh Metode 1
0 , 6 4 . . 3 2 min 2 1 2 1 2 1 2 1 x x x x x x t s x x z Langkah 1: Bentuk standar dan merubah fs obyektif, Tableau0 , , , 0
6 4 . . 3 2 - max 2 1 2 1 2 2 1 1 2 1 2 1 s s x x s x x s x x t s x x z
Tableau 0 -z x1 x2 s1 s2 rhs
Baris 0 1 2 -3 0 0 0
Baris 1 0 1 1 1 0 4
Contoh Metode 1
Langkah 2: Menentukan BFS, BV, NBV
Tableau 0 -z x1 x2 s1 s2 rhs
Baris 0 1 2 -3 0 0 0
Baris 1 0 1 1 1 0 4
Baris 2 0 1 -1 0 1 6
BV -z=0
s1= 4 s2=
6
s
1,
s
2
BV
NBV
x
1,
x
2
0 ,
6 ,
4 ,
0
: x1 x2 s1 s2 z
BFS
Langkah 3: BFS belum optimal
Masih ada koefisien baris 0 yang negatif: x2
Menambah nilai x2 (menjadikan BV) akan menaikkan nilai z
Contoh Metode 1
Tableau
0 -z x1 x2 s1 s2 rhs BV
Baris 0 1 2 -3 0 0 0 -z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada Baris
pivot
Kolom Pivot
Pilih Entering Variable: pemenang ratio test
Peubah NBV yang meningkatkan Z paling besar: x2, untuk menggantikan salah satu peubah di BV: s1
Langkah 4: Lakukan ERO untuk memperoleh bentuk kanonik yang baru
x
2,
s
2
Contoh Metode 1 (ERO)
1 ) 0 ( 1 )
1 (
1 Baris
Baris
Dengan ERO ingin diperoleh Tableau 1: baris 1 didahulukan (pivot row)
Tableau
0 -z x1 x2 s1 s2 rhs BV
Baris 0 1 2 -3 0 0 0 -z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada
Tableau
1 -z x1 x2 s1 s2 rhs
Contoh Metode 1 (ERO)
) 1 ( 1 *
) 3 ( ) 0 ( 0 )
1 (
0 Baris Baris
Baris
ERO untuk baris 0 dengan memanfaatkan baris 1 (pivot
row)
Tableau
0 -z x1 x2 s1 s2 rhs BV
Baris 0 1 2 -3 0 0 0 -z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada
Tableau
1 -z x1 x2 s1 s2 rhs
Baris 1 0 1 1 1 0 4
Contoh Metode 1 (ERO)
) 1 ( 1 * ) 1 ( ) 0 ( 2 ) 1 (2 Baris Baris
Baris
ERO untuk baris 2 dengan memanfaatkan baris 1 (pivot
row)
Tableau
0 -z x1 x2 s1 s2 rhs BV
Baris 0 1 2 -3 0 0 0 -z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test 4 tidak ada Tableau
1 -z x1 x2 s1 s2 rhs
Baris 1 0 1 1 1 0 4
Baris 0 1 5 0 3 0 12
Baris 2 0 2 0 1 1 10
BV -z=12 x2=4 s2=1 0
x
2,
s
2
BV
NBV
s
1,
x
1
12 , 10 , 0 , 4 , 0
: x1 x2 s1 s2 z
Contoh Metode 1, Tableau
1
Apakah BFS optimal? Tableau
1 -z x1 x2 s1 s2 rhs BV
Baris 0 1 5 0 3 0 12 -z=12
Baris 1 0 1 1 1 0 4 x2=4
Baris 2 0 2 0 1 1 10 s2=10
Tidak ada lagi koefisien <0 di baris nol.
Tidak mungkin lagi meningkatkan nilai z. BFS sudah optimal.
Contoh Metode 2
0 , 6 4 . . 3 2 min 2 1 2 1 2 1 2 1 x x x x x x t s x x z Langkah 1: Bentuk standar dan Tableau 00 , , , 6 4 . . 3 2 in 2 1 2 1 2 2 1 1 2 1 2 1 s s x x s x x s x x t s x x z m
Tableau 0 Z x1 x2 s1 s2 rhs
Baris 0 1 -2 3 0 0 0
Baris 1 0 1 1 1 0 4
Contoh Metode 2
Langkah 2: Menentukan BFS, BV, NBV
Tableau 0 Z x1 x2 s1 s2 rhs
Baris 0 1 -2 3 0 0 0
Baris 1 0 1 1 1 0 4
Baris 2 0 1 -1 0 1 6
BV z=0 s1=
4 s2=
6
s
1,
s
2
BV
NBV
x
1,
x
2
0 ,
6 ,
4 ,
0
: x1 x2 s1 s2 z
BFS
Langkah 3: BFS belum optimal. Syarat optimal jika semua koef baris nol <=0
Masih ada koefisien baris 0 yang positif: x2
Menambah nilai x2 (menjadikan BV) akan menurunkan nilai z
Contoh Metode 2
Tableau
0 z x1 x2 s1 s2 rhs BV
Baris 0 1 -2 3 0 0 0 z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada Baris
pivot
Kolom Pivot
Pilih Entering Variable: pemenang ratio test
Peubah NBV yang menurunkan Z paling besar: x2, untuk menggantikan salah satu peubah di BV: s1
Langkah 4: Lakukan ERO untuk memperoleh bentuk kanonik yang baru
x
2,
s
2
Contoh Metode 2 (ERO)
1 ) 0 ( 1 )
1 (
1 Baris
Baris
Dengan ERO ingin diperoleh Tableau 1: baris 1 didahulukan (pivot row)
Tableau
0 z x1 x2 s1 s2 rhs BV
Baris 0 1 -2 3 0 0 0 z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada
Tableau
1 z x1 x2 s1 s2 rhs
Contoh Metode 2 (ERO)
) 1 ( 1 *
3 ) 0 ( 0 )
1 (
0 Baris Baris
Baris
ERO untuk baris 0 dengan memanfaatkan baris 1 (pivot
row)
Tableau
0 z x1 x2 s1 s2 rhs BV
Baris 0 1 -2 3 0 0 0 z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test
4 tidak
ada
Tableau
1 -z x1 x2 s1 s2 rhs
Baris 1 0 1 1 1 0 4
Contoh Metode 2 (ERO)
) 1 ( 1 * ) 1 ( ) 0 ( 2 ) 1 (2 Baris Baris
Baris
ERO untuk baris 2 dengan memanfaatkan baris 1 (pivot
row)
Tableau
0 z x1 x2 s1 s2 rhs BV
Baris 0 1 -2 3 0 0 0 z=0
Baris 1 0 1 1 1 0 4 s1=4
Baris 2 0 1 -1 0 1 6 s2=6
Ratio test 4 tidak ada Tableau
1 z x1 x2 s1 s2 rhs
Baris 1 0 1 1 1 0 4
Baris 0 1 -5 0 -3 0 -12
Baris 2 0 2 0 1 1 10
BV z=-12 x2=4 s2=1 0
x
2,
s
2
BV
NBV
s
1,
x
1
12 , 10 , 0 , 4 , 0
: x1 x2 s1 s2 z
Contoh Metode 2, Tableau
1
Apakah BFS optimal? Tableau
1 z x1 x2 s1 s2 rhs BV
Baris 0 1 -5 0 -3 0 -12 z=-12
Baris 1 0 1 1 1 0 4 x2=4
Baris 2 0 2 0 1 1 10 s2=10
Tidak ada lagi koef >0 di baris nol. Tidak mungkin lagi menurunkan nilai z. BFS sudah optimal.
Metode BIG M
Digunakan pada kasus LP dengan
kendala >= dan =
Pada kendala-kendala tersebut
diperlukan peubah dummy
Prinsip metode BIG M:
◦
Memberikan penalti
Contoh Kasus dengan Metode
Big M
Bevco memproduksi soft drink rasa
jeruk ORANJ dari campuran soda
rasa jeruk dan jus jeruk per botol
berisi 10 oz.
Setiap bahan tsb mengandung gula
dan vitamin C, di mana produk
ORANJ harus memenuhi kriteria
Contoh Kasus dengan Metode
Big M
Dibutuhkan biaya tertentu untuk
membeli setiap bahan.
Ingin diputuskan komposisi
bahan di dalam 10 oz ORANJ
yang memenuhi kriteria
Tabel Komposisi Bahan dan
Kriteria, Biaya Produksi ORANJ
# oz Soda/botol
ORANJ
#oz Jus/Botol
ORANJ Kriteria
Kandungan
Gula (ons) 0,5 0,25 Paling banyak 4 ons
Vit C (mg) 1 3 Paling sedikit 20 mg
Per Botol 1 1 10 oz
Biaya
(cent) 2 3
Apa peubah
keputusannya?
ORANJ
Jus/botol
oz
#
:
ORANJ
Soda/botol
oz
#
:
2 1
x
x
1
x x2
2 1
3
2
min
z
x
x
Tabel Komposisi Bahan dan
Kriteria, Biaya Produksi ORANJ
# oz Soda/botol
ORANJ
#oz Jus/Botol
ORANJ Kriteria
Kandungan
Gula (ons) 0,5 0,25 Paling banyak 4 ons
Vit C (mg) 1 3 Paling sedikit 20 mg
Per Botol 1 1 10 oz
Biaya
(cent) 2 3
Apa kendala untuk kandungan Gula?
1
x x2
20 3 2
1 x
x Apa kendala untuk kandungan
Vitamin C?
4 25
. 0 5
.
0 x1 x2
Apa kendala untuk volume per botol ORANJ?
10
2 1 x
LP bagi BEVCO untuk Produksi
ORANJ
0
,
ORANJ)
botol
per
(Volume
10
C)
Vit.
(kandungan
20
3
gula)
(kandungan
4
25
.
0
5
.
0
.
.
3
2
min
2 1 2 1 2 1 2 1 2 1
x
x
x
x
x
x
x
x
t
s
x
x
z
Bentukstandar? min 2 1 3 2 2 1 3 2 0
x x z x x
z 20
3 2 2 2
1 x e a
x 4 25 . 0 5 .
0 x1 x2 s1
10 3 2
1 x a
x 0 , , , ,
, 2 1 2 2 3
1 x s e a a
LP dalam Tableau
Penambahan peubah dummy
a
2, a
3,
untuk
menciptakan bentuk kanonik dari tableau
awal
minz 2x1 3x2 020
3 2 2 2
1 x e a x 4 25 . 0 5 .
0 x1 x2 s1
10 3 2
1 x a
x 0 , , , ,
, 2 1 2 2 3
1 x s e a a x
s.t .
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1 -2 -3 0 0 0 0 0
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
BV z=0 s1= 4 a2= 20 a3= 10 10 20, 4, , 0
: x1 x2 e2 s1 a2 a3
BFS
s1, a2, a3
, NBV
x1, x2 ,e2
LP dalam Tableau dengan BIG M
Peubah dummy
a
2, a
3,
tidak mempunyai
interpretasi/arti di dalam model
Di dalam solusi optimal
a
2, a
3,
tidak boleh
sebagai
BV
Pada fs obyektif, ditambahkan (dikurangkan)
a
2, a
3dengan penalti/bobot sebesar-besarnya
(angka besar
M
)
a
2, a
3agar tidak terpilih
sebagai solusi
3 2
2
1
3
2
min
z
x
x
Ma
Ma
Penalti M pada kasus min (maks)
0
3
2
LP dalam Tableau dengan BIG M
Untuk memperoleh a2, a3 sebagai BV di tableau 0,
koefisien –M pada baris nol (untuk a2, a3)harus dibuat jadi nol dengan ERO
0
3
2
min
z
x
1
x
2
Ma
2
Ma
3
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1 -2 -3 0 0 -M -M 0
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
3
*
2
*
0
'
0
Baris
M
Baris
M
Baris
Baris
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0’ 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
BV z=30
M s1=4 a2=2
0 a3=1
LP dalam Tableau dengan BIG M
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
BV z=30 M s1=4 a2=2 0 a3=1 0 Ratio test 4/0.25= 16 20/3 * 10/1=10
M: bilangan besar positif.
s1, a2, a3
, NBV
x1, x2 ,e2
BV
M M M M M 2 2 4 3 0 , 0 4 3 , 0 2 2
BFS belum optimal karena masih ada koefisien > 0 di baris nol (kasus min).
x2 dapat menurunkan z paling besar (koef paling +), dapat dimasukkan dalam BV.
x2 -3+4 M 0,25 3 1 Kolom pivot
x2 menggantikan salah satu BV pemenang ratio test.
Baris 2 0 1 3 0 -1 1 0 20
Baris pivot
2
ERO untuk Tableau 1
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1
0 0
0 1 103
0
2
1
2
Baris
Baris
Pada baris pivot terlebih dahulu:
Tableau 1 z x1 x2 s1 e2 a2 a3 rhs
ERO untuk Tableau 1
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
Tableau 1 z x1 x2 s1 e2 a2 a3 rhs
1
0
(
0
)
(
3
4
)
*
2
1
0
Baris
M
Baris
Baris
ERO baris 0, memanfaatkan Baris 2 (1):
Baris 0 1 (2M-3)/3 0 0 (M-3)/3 (3-4M)/3 0
(60+10M) /3
ERO untuk Tableau 1
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
Tableau 1 z x1 x2 s1 e2 a2 a3 rhs
1
1
(
0
)
0
.
25
*
2
1
1
Baris
Baris
Baris
ERO baris 1, memanfaatkan Baris 2 (1):
Baris 0 1 (2M-3)/3 0 0 (M-3)/3 (3-4M)/3 0
(60+10M) /3
Baris 2 0 1/3 1 0 -1/3 1/3 0 20/3
ERO untuk Tableau 1
Tableau
0 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1
-2+2
M
-3+4
M 0 -M 0 0 30M
Baris 1 0 0,5 0,25 1 0 0 0 4
Baris 2 0 1 3 0 -1 1 0 20
Baris 3 0 1 1 0 0 0 1 10
Tableau 1 z x1 x2 s1 e2 a2 a3 rhs
1
3
(
0
)
1
*
2
1
3
Baris
Baris
Baris
ERO baris 3, memanfaatkan Baris 2 (1):
Baris 0 1 (2M-3)/3 0 0 (M-3)/3 (3-4M)/3 0
(60+10M) /3
Baris 2 0 1/3 1 0 -1/3 1/3 0 20/3
Baris 1 1 5/12 0 1 1/12 -1/12 0 7/3
Tableau 1 untuk Bevco LP
Tableau1 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1 (2M-3)/3 0 0 (M-3)/3 (3-4M)/3 0 (60+10M)/3
Baris 1 0 5/12 0 1 1/12 -1/12 0 7/3
Baris 2 0 1/3 1 0 -1/3 1/3 0 20/3
Baris 3 0 2/3 0 0 1/3 -1/3 1 10/3
BV
z=(60+10M )/3
S1=7/3 x2=20/3 a3=10/3 Tableau 1 belum optimal karena masih ada koefisien +
di baris nol: x1 dan e2
Dilakukan kembali ratio test dan ERO sehingga diperoleh tableau 2 berikut:
Tableau 2 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1 0 0 0 -1/2 (1-2M)/2 (3-2M)/2 25
Baris 1 0 0 0 1 -1/8 1/8 -5/8 ¼
Baris 2 0 0 1 0 -1/2 1/2 -1/2 5
Baris 3 0 1 0 0 1/2 -1/2 3/2 5
BV z=25 S1=1/
Solusi Optimal untuk LP
Bevco
Tableau 2 z x1 x2 s1 e2 a2 a3 rhs
Baris 0 1 0 0 0 -1/2 (1-2M)/2 (3-2M)/2 25
Baris 1 0 0 0 1 -1/8 1/8 -5/8 ¼
Baris 2 0 0 1 0 -1/2 1/2 -1/2 5
Baris 3 0 1 0 0 1/2 -1/2 3/2 5
BV z=25 s1=1/4
x2=5 x1=5
s1, x2 , x1
, NBV
a2, a3,e2
BV
25 ,
0 ,
5 5,
1/4,
: s1 x2 x1 a2 a2 e2 z
BFS