Simplex
Simplex
BAB VI
PROGRAMA LINIER : DUALITAS DAN ANALISIS
SENSITIVITAS
Dual :
Minimumkan : w = b1 y1 + b2 y2 + …. + bm ym
Berdasarkan pembatas :
a11 y1 + a21 y2 + …. + am1 ym c1
a12 y1 + a22 y2 + …. + am2 ym c2
.
.
.
a1n y1 + a2n y2 + …. + amn ym cn
y1 , y2 , …. , ym 0
Primal
Minimumkan : z = 16x1 + 30x2 + 36x3
Berdasarkan pembatas :
2x1 + 3x2 + 2x3 60
2x1 + 5x2 + 3x3 80
x1 , x2 , x3 0
Karena soal ini hanya terdiri dari dua choice variabel sehingga dapat
diselesaikan dengan metode grafis, namun soal ini kita selesaikan dengan
metode simpleks, sebab dengan cara ini dari tabel akhir dapat kita baca
jawaban untuk persoalan primalnya. Untuk ini bentuk constraint di atas diubah
dulu menjadi persamaan dengan memasukkan slack variable t 1, t2, dan t3
(untuk primal problem ; slack/surplus variable kita pakai lambang S), yakni :
2y1 + 2y2 + t1 = 16
3y1 + 5y2 + t2 = 30
2y1 + 3y2 + t3 = 36
Sedangkan fungsi objectivenya ditulis dalam bentuk :
w - 60y1 - 80y2 + 0 t1 + 0 t2 + 0 t3 = 0
Dengan demikian penyelesaian dari persoalan diatas adalah sebagai berikut :
Basis y1 y2 t1 t2 t3 Solusi
t1 2 2 1 0 0 16
t2 3 5 0 1 0 30
t3 2 3 0 0 1 36
w -60 -80 0 0 0 0
t1 4/5 0 1 -2/5 0 4
y2 3/5 1 0 1/5 0 6
t3 1/5 0 0 -3/5 1 18
w -12 0 0 0 0 480
y1 1 0 5/4 -1/2 0 5
y2 0 1 -3/4 1/2 0 3
t3 0 0 -1/4 -1/2 1 17
w 0 0 15 10 0 540
Programa Linier : Dualitas dan Analisis Sensitivitas
Karena pada tabek di atas tidak terdapat lagi entry negatif pada baris w, maka
tabel ini merupakan tabel akhir dan fungsi objective telah mencapai nilai
optimal, yakni :
wmax = 540 untuk y1 = 5 unit, y2 = 3 unit dan t3 = 17 unit, yakni bahan yang tidak
terpakai dari konstraint ketiga, sedangkan t1 = t2 = 0.
Dari tabel ini dapat kita baca nilai x1 , x2 , dan x3 dari primal problem, yakni :
Nilai shoice variable dari primal ini kalau kita masukkan pada fungsi objective
dari primal harus cocok = 540, yakni :
Z = 16x1 + 30x2 + 36x3
= 16 (5) + 30 (10) + 36 (0) = 540
zmin = wmax
b. Kurangi nilai-nilai simplex multiplier ini dengan fungsi tujuan yang original
dari variabel-variabel basis awal.
Contoh :
Maksimumkan : z = 4x1+ 6x2+ 2x3
Berdasarkan pembatas :
4x1 – 4x2 5
-x1 + 6x2 5
-x1 + x2 + x3 5
x1 , x2, x3 0
Penyelesaian :
1. Sifat 1 :
6 / 20 4 / 20 0
4 6 0 1 / 20 4 / 20 0 3 / 2 2 0
5 / 20 0 1
a = 3/2 – 0 = 3/2
b=2–0=2
c=0–0=0
2. Sifat 2 :
SM = (3/2 2 0)
x1 : 4y1 – y2 – y3 4
4 (3/2) – 2 – 0 – 4 = 0
d=0
x2 : -4y1 + 6y2 + y3 6
-4 (3/2) + 6 (2) _ 0 – 6 = 0
e=0
x3 : y3 2
0–2=-2
f = -2
3. Sifat 3 :
6 / 20 4 / 20 0 5 5 / 2
1 / 20 4 / 20 0 5 5 / 4
5 / 20 0 1 5 25 / 4
g = 5/2
h = 5/4
Programa Linier : Dualitas dan Analisis Sensitivitas
i = 25/4
4. Sifat 4 :
6 / 20 4 / 20 0 4 1
1 / 20 4 / 20 0 1 0
5 / 20 0 1 1 0
j=1
k= 0
l=0
6 / 20 4 / 20 0 4 0
1 / 20 4 / 20 0 6 1
5 / 20 0 1 1 0
m=0
n=1
p=0
6 / 20 4 / 20 0 0 0
1 / 20 4 / 20 0 0 0
5 / 20 0 1 1 1
q=0
r=0
s=1
Dengan demikian, t dapat dicari dengan memasukkan harga-harga g, h dan i
ke dalam persamaan z, sehingga diperoleh :
t = 4 (5/2) + 6(5/4) _ 0(25/4)
t = 70/4
Apabila pada suatu iterasi kita mendapat persoalan programa linier yang
sudah optimum (berdasarkan kondisi optimalitas), tetapi belum fisibel (ada
pembatas nonnegatif yang tidak terpenuhi), maka persoalan tersebut harus
diselesaikan dengan menggunakan metode dual simpleks. Syarat
digunakannya metode ini adalah bahwa seluruh pembatas harus merupakan
ketidaksamaan yang bertanda ( ), sedangkan fungsi tujuan bisa berupa
maksimasi atau minimasi.
Pada dasarnya metode dual simpleks ini menggunakan tabel yang sama
seperti metode simpleks pada primal, tetapi leaving variable dan entering
variable-nya ditentukan sebagai berikut :
Contoh :
Minimumkan : z = 2x1 + x2
Berdasarkan pembatas :
3 x1 + x2 3
Programa Linier : Dualitas dan Analisis Sensitivitas
4x1 + 3x2 6
x1 + 2x2 3
x1 , x2 0
Koefisien persamaan z -2 -1 0 0 0
Koefisien persamaan S2 -4 -3 0 1 0
Rasio 1/2 1/3 - - -
S1 x2
xBV x3 ; xNBV S 2 yang merupakan vektor m x 1
x1 S3
optimal ?
Kita tahu bahwa perubahan c2 dari 30 menjadi ( 30 + ) tidak
-1
mengubah harga B dan b. Karena itu, ruas kanan untuk tabel BV, yaitu B -1 b,
tidak akan berubah sehingga BV tetap fisibel. Karena c 2 adalah variabel
nonbasis, maka CBV juga tidak akan berubah. Satu-satunya variabel yang
koefisien baris 0-nya akan berubah karena perubahan c2 ini adalah x2.
Dengan demikian, BV akan tetap optimal jika c2 0, dan BV akan
menjadi suboptimal jika c2 0. Dalam hal terakhir ini, harga z mungkin dapat
diperbaiki dengan memasukkan x2 ke dalam basis.
1 2 8
C BV B 1 0 20 60 0 2 4
0 0,5 1,5
0 10 0,5 10 1,5
Koefisien baris 0 menjadi :
a. c2 C BV B 1 a 2 c2
6
0 10 0,5 10 1,5 2 30 5 1,25
1,5
-20/3 -(20/3)
-4 -4
20 20
Dengan kata lain, solusi basis saat ini akan tetap optimal jika -4
20. Artinya, jika c1 turun sebesar 4 atau kurang, atau c1 naik hingga 20, maka
solusi basis saat ini akan tetap optimal. Atau, sepanjang 56 = (60 – 4 ) c
(60 + 20) = 80, solusi basis saat ini akan tetap optimal, tetapi jika c1 56 atau
c1 80, maka solusi basis saat ini tidak lagi optimal. Jika solusi basis saat ini
tetap optimal, maka harga variabel keputusannya juga tidak akan berubah
karena B-1 b tidak berubah. Namun, nilai z optimal tentu saja akan berubah.
Contoh : jika c1 = 70, maka z = 70 (2) + 20 (8) = 300.
Jika perubahan pada ruas kanan ini menyebabkan paling sedikit ada
satu ruas kanan pada tabel optimal yang menjadi berharga negatif, maka solusi
saat ini tidal lagi fisibel, dan kerananya tidak lagi optimal. Sebagai contoh, jika
b2 berubah dari 20 menjadi (20 + ), maka ruas kanan menjadi :
1 2 8 48 24 2
B b 0 2 4 20
1 8 2
0 0,5 1,5 8 2 0,5
Kita tahu bahwa solusi basis saat ini akan tetap optimal jika :
24 + 2 0 atau - 12
8 + 2 0 atau -4
2 – 0,5 0 atau 4
Dengan kata lain, solusi basis saat ini akan tetap optimal jika - 4 4.
Dengan demikian, sepanjang (20 – 4) b2 (20 + 4) atau 16 b2 24, solusi
basis saat ini akan tetap fisibel dan optimal. Tetapi, harga z tentu saja akan
berubah.
Contoh : Jika b2 = 22, maka ruas kanan yang baru adalah :
S1 1 2 8 48 28
x B 1 b 0 2 4 22 12
3
x1 0 0,5 1,5 8 1
48
C BV B b 0 10 10 22 300
1
8
Jika kita mengubah ruas kanan pembatas sedemikian sehingga solusi basis
saat ini menjadi tidak fisibel lagi, bagaimana kita dapat menentukan solusi
optimal yang baru ?
Programa Linier : Dualitas dan Analisis Sensitivitas
Misalkan kita mengubah b2 menjadi 30. Ruas kanan yang baru adalah
sebagai berikut :
S1 1 2 8 48 28
x B 1 b 0 2 4 22 12
3
x1 0 0,5 1,5 8 1
Karena x1 = -3, sedangkan koefisien fungsi tujuan untuk baris 0 tidak berubah
(tetap memenuhi syarat optimalitas), maka untuk memperoleh solusi optimal
yang baru, kita harus mengunakan metode dual simpleks.
Kita tahu bahwa perubahan ini tidak akan mengubah baik B ataupun b
sehingga ruas kanan tabel optimal juga tidak akan berubah. Yang akan
berubah adalah c2, yaitu jika c2 0. Tetapi, jika c2 0, maka solusi basis saat
ini akan tetap optimal. Dengan berubahnya kolom a2, maka :
5
c2 0 10 10 2 43 3 0
2
Karena c2 0, maka solusi basis saat ini tidak lagi optimal. Kolom a 2 untuk
pembatas pada tabel optimal menjadi :
Programa Linier : Dualitas dan Analisis Sensitivitas
1 2 8 5 7
B 1
a2 0 2 4 2 4
0 0,5 1,5 2 2
Karena c2 0, maka x2 akan menjadi variabel basis pada solusi optimal yang
baru.
Jika perubahan kolom terjadi pada variabel basis, maka B dan C BV
mungkin berubah sehingga baria 0 dan ruas kanan dari tabel optimal juga
mungkin berubah. Dalam hal ini, sebaiknya kita memecahkan kembali
persoalannya dari awal.
Kita tahu bahwa ruas kanan seluruh pembatas dan koefisien baris 0 untuk
variabel yang lama tidak akan berubah. Karena itu, solusi basis saat ini akan
tetap optimal jika c4 0.
Dari formulasi di atas kita peroleh :
Programa Linier : Dualitas dan Analisis Sensitivitas
1
c4 0 10 10 1 15 5 0
1
Karena c4 0, maka solusi basis saat ini tetap optimal sehingga produk ke-4
sebaiknya tidak dibuat. Alasannya adalah karena untuk setiap unit produk ke-4
yang dibuat, kita hanya akan mengeluarkan ongkos sebesar 5, tanpa
memperoleh keuntungan apa-apa.
Contoh kasus 2 :
Misalkan pada contoh soal ditambahkan pembatas x2 1. Karena saat ini x2 =
0, maka solusi saat ini tidal lagi fisibel. Untuk menentukan solusi optimal yang
baru, ubahlah ketidaksamaan x2 1 menjadi persamaan x2 – S4 = 1, kemudian
kalikan dengan (-1) sehingga diperoleh – x2 + S4 = -1. Tambahkan pembatas
ini ke dalam tabel sehingga diperoleh :
Programa Linier : Dualitas dan Analisis Sensitivitas
BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 -2 0 1 2 -8 0 24
x3 0 -2 1 0 2 -4 0 8
x1 1 1,25 0 0 -0,5 1,5 0 2
S4 0 -1 0 0 0 0 1 -1
z 0 5 0 0 10 0 0 280
Contoh kasus 3 :
Misalkan pada contoh soal ditambahkan pembatas x1 + x2 12 sehingga
diperoleh x1 + x2 – S4 = 12 atau – x1 – x2 + S4 = - 12. Tabelnya menjadi :
BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 -2 0 1 2 -8 0 24
x3 0 -2 1 0 2 -4 0 8
x1 1 1,25 0 0 -0,5 1,5 0 2
S4 0 -1 0 0 0 0 1 -12
z 0 5 0 0 10 0 0 280
Programa Linier : Dualitas dan Analisis Sensitivitas
Agar x1 tetap menjadi basis, hilangkan x1 pada baris S4 dengan cara mengganti
baris 4 dengan (baris 3 + baris 4). Hasilnya adalah sebagai berikut :
EV
BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 -2 0 1 2 -8 0 24
x3 0 -2 1 0 2 -4 0 8
x1 1 1,25 0 0 -0,5 1,5 0 2
S4 0 0,25 0 0 -0,5 1,5 1 -10*
z 0 5 0 0 10 0 0 280
EV
BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 -1 0 1 0 -2 4 -16
x3 0 -1 1 0 0 2 4 -32*
x1 1 1 0 0 0 0 -1 12
S2 0 -0,5 0 0 1 -3 -2 20
z 0 10 0 0 0 40 20 80
BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 0 -1 1 0 -4 0 16
X2 0 1 -1 0 0 -2 -4 32
X1 1 0 1 0 0 2 3 -20
S2 0 0 -0,5 0 1 -4 -4 36
z 0 0 10 0 0 60 60 -240
x1 + x3 + 2 S3 + 3 S4 = -20
Padahal, x1 0, x3 0, 2 S3 0, dan 3S4 0 sehingga ruas kiri dari persamaan
di atas tidak mungkin –20. Artinya, jika pada persoalan semula ditambahkan
pembatas x1 + x2 12, maka persoalan menjadi tidak mempunyai solusi fisibel.
LATIHAN SOAL :
1. Dari suatu persoalan programa linier diperoleh tabel simpleks untuk iterasi
awal dan akhir sebagai berikut :
Iterasi Awal
Basis x1 x2 x3 x4 S1 S2 S3 Solusi
S1 1 1 1 1 1 0 0 15
S2 7 5 3 2 0 1 0 120
S3 3 5 10 15 0 0 1 100
z -4 -5 -9 -11 0 0 0 0
Pertanyaan :
a. Buktikan bahawa jawaban optimum di atas tidak berubah sekalipun
ditambahkan konstrain baru
4x1 + 7x2 - 5x3 – 6x4 50
pada persoalan semula
Programa Linier : Dualitas dan Analisis Sensitivitas
Kemudian selesaikan soal ini dan tunjukkan marginal value dari bahan baku
pada konstraint pertama dan kedua.
masing adalah 12 jam dan 4 jam. Harga pembelian kulit adalah $8 per
meter persegi dan biaya tenaga kerja diperkirakan sebesar $15 per jam.
Persediaan kulit mingguan saat ini dan tenaga kerja dibatasi sampai 1200
meter persegi dan 1800 jam. Perusahaan menjual jaket dan tas masing-
masing dengan harga $350 dan $ 120. Tujuannya adalah untuk
menentukan jadwal produksi yang memaksimumkan pendapatan bersih.
Perusahaan sedang mempertimbangkan untuk mmeperluas produksinya.
Berapa harga pembelian maksimum yang harus dibayar perusahaan untuk
kulit ? Untuk tenaga kerja ?
10. Tunjukkan bahwa persoalan yang diberikan pada soal No. 9 memiliki nilai
optimal yang sama seperti dualnya dengan memecahkan kedua persoalan
ini secara langsung.