Anda di halaman 1dari 28

Programa Linier : Dualitas dan Analisis Sensitivitas

BAB VI
PROGRAMA LINIER : DUALITAS DAN ANALISIS
SENSITIVITAS

6.1 Teori Dualitas


Teori dualitas merupakan salah satu konsep programa linier yang
penting dan menarik ditinjau dari segi teori dan praktisnya. Ide dasar yang
melatarbelakangi teori ini adalah bahwa setiap persoalan programa linier
mempunyai suatu programa linier lain yang saling berkaitan yang disebut
“dual”, sedemikian sehingga solusi pada persoalan semula (yang disebut
"primal”) juga memberi solusi pada dualnya.
Pendefinisian dual ini akan tergantung pada jenis pembatas, tanda-
tanda variabel, dan bentuk optimasi dari persoalan primalnya. Akan tetapi,
karena setiap persoalan programa linier harus dibuat dalam bentuk standar
lebih dahulu sebelum modelnya dipecahkan , maka pendefinisian dibawah ini
akan secara otomatis meliputi ketiga hal di atas.
Bentuk umum masalah primal dual adalah sebagai berikut :
Primal :
Maksimumkan : z = c1 x1 + c2 x2 + …. + cn xn
Berdasarkan pembatas :
a11 x1 + a12 x2 + …. + a1n xn  b1
a21 x1 + a22 x2 + …. + a2n xn  b2
.
.
.

am1 x1 + am2 x2 + …. + amn xn  bm


x1 , x2 , …., xn  0
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

Kalau kita bandingkan kedua persoalan di atas, ternyata terdapat


korespondensi antara primal dengan dual sebagai berikut :
1. Koefisien fungsi tujuan primal menjadi konstanta ruas kanan bagi dual,
sedangkan konstanta ruas kanan primal menjadi koefisien fungsi tujuan
bagi dual.
2. Untuk tiap pembatas primal ada satu variaebl dual, dan untuk setiap
variabel primal ada satu pembatas dual.
3. Tanda ketidaksamaan pada pembatas akan bergantung pada fungsi
tujuannya.
4. Fungsi tujuan berubah bentuk (maksimasi menjadi minimasi dan
sebaliknya).
5. Setiap kolom pada primal berkorespondensi dengan baris (pembatas) pada
dual.
6. Setiap baris (pembatas) pada primal berkorespondensi dengan kolom pada
dual.
7. Dual dari dual adalah primal.
Programa Linier : Dualitas dan Analisis Sensitivitas

6.2 Hubungan Primal Dual


Nilai tujuan dalam suatu pasangan masalah primal dan dual harus
memenuhi hubungan berikut ini :
1. Untuk setiap pasangan pemecahan primal dual yang layak
 nilai tujuan   nilai tujuan 
    
 dalam masalah maksimasi   dalam masalah min imasi 
2. Di pemecahan optimum untuk kedua masalah
 nilai tujuan   nilai tujuan 
    
 dalam masalah maksimasi   dalam masalah min imasi 

Untuk menjelaskan hubungan antara primal dan dual, perhatikan


ilustrasi berikut ini :

Primal
Minimumkan : z = 16x1 + 30x2 + 36x3
Berdasarkan pembatas :
2x1 + 3x2 + 2x3  60
2x1 + 5x2 + 3x3  80
x1 , x2 , x3  0

Soal ini kita selesaikan melalui penyelesaian dualnya, yakni :


Maksimumkan : w = 60y1 + 80y2
Berdasarkan pembatas :
2y1 + 2y2  16
3y1 + 5y2  30
2y1 + 3y2  36
y1 , y2 , y3  0
Programa Linier : Dualitas dan Analisis Sensitivitas

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 :

x1 = entry dari kolom t1 pada baris w, sehingga x1 = 15


x2 = entry dari kolom t2 pada baris w, sehingga x2 = 10
x3 = entry dari kolom t3 pada baris w, sehingga x3 = 0

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

6.3 Sifat-sifat Primal Dual yang Penting


Sifat-sifat primal dua penting untuk dipahami terutama pada saat kita
membicarakan masalah analisis sensitivitas. Dengan menggunakan sifat-sifat
ini kita dapat menentukan nilai variabel-variabel tertentu dengan cara yang
sangat efisien. Ada empat sifat yang perlu diketahui, yaitu :

Sifat 1 : Menentukan koefisien fungsi tujuan variabel-variabel basis awal.


Pada setiap iterasi solusi simpleks, baik primal maupun dual, koefisien
fungsi tujuan variabel-variabel basis awalnya dapat dicari dengan cara :
Programa Linier : Dualitas dan Analisis Sensitivitas

a. Mengalikan fungsi tujuan yang original dari variabel-variabel basis pada


iterasi yang bersangkutan dengan matriks di bawah variabel basis awal
pada iterasi yang bersangkutan. Koefisien ini biasa disebut simplex
multiplier.

koefisien fungsi tujuan  matriks di bawah   


 yang original dari var i    var iabel basis   simplex 
      
abel basis pada iterasi  awal pada iterasi  multiplier
     
 yang bersangku tan   yang bersangku tan   

b. Kurangi nilai-nilai simplex multiplier ini dengan fungsi tujuan yang original
dari variabel-variabel basis awal.

Sifat 2 : Menentukan koefisien fungsi tujuan variabel-variabel nonbasis


awal.
Pada setiap iterasi dari persoalan primal, koefisien fungsi tujuannya
dapat ditentukan dengan menyubstitusikan simplex multiplier pada variabel-
variabel pembatas dari dual, kemudian mencari selisih antara ruas kiri dan ruas
kanan dari pembatas dual tersebut.

Sifat 3 : Menentukan nilai ruas kanan (solusi) dari variabel-variabel basis.


Pada setiap iterasi, baik primal maupun dual, nilai ruas kanan (kolom
solusi) variabel-variabel basis pada iterasi yang bersangkutan dapat ditentukan
dengan cara sebagai berikut :

matrikas di bawah  matriks kolom  matriks kolom 


 var iabel basis awal  ruas kanan  ruas kanan 
      
 pada iterasi yang  original   var iabel basis
     
bersangku tan     
Programa Linier : Dualitas dan Analisis Sensitivitas

Sifat 4 : Menentukan koefisien pembatas.


Pada setiap iterasi, baik primal maupun dual, koefisien pembatas dari
setiap variabel dapat ditentukan dengan cara sebagai berikut :

matriks di bawah  matriks kolom dari  matriks kolom dari 


 var iabel basis awal  kolom koefisien  kolom koefisien 
      
 pada iterasi yang   pembatas yang   pembatas pada iterasi
     
bersangku tan  original   yang bersangku tan 

Contoh :
Maksimumkan : z = 4x1+ 6x2+ 2x3
Berdasarkan pembatas :
4x1 – 4x2  5
-x1 + 6x2 5
-x1 + x2 + x3 5
x1 , x2, x3  0

Salah satu iterasi dari persoalan di atas adalah sebagai berikut :


Basis x1 X2 x3 S1 S2 S3 Solusi
x1 j m q 6/20 4/20 0 g
x2 k n r 1/20 4/20 0 h
S3 l p s 5/20 0 1 i
z d e f a b c t

Tentukanlah harga-harga a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, dan t


dengan menggunakan sifat-sifat primal dual.
Programa Linier : Dualitas dan Analisis Sensitivitas

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

6.4 Metode Dual Simpleks


Programa Linier : Dualitas dan Analisis Sensitivitas

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 :

1. Leaving variable (kondisi fisibilitas)


Yang menjadi leaving variable pada dual simpleks adalah variabel basis
yang memiliki harga negatif terbesar. Jika semua variabel basis telah
berharga positif atau nol, berarti keadaan fisibel telah tercapai.

2. Entering variable (kondisi optimalitas)


a. Tentukan perbandingan (rasio) antara koefisien persamaan z dengan
koefisien persamaan leaving variable. Abaikan penyebut yang positif
atau nol. Jika semua penyebut berharga positif atau nol, berarti
persoalan yang bersangkutan tidak memiliki solusi fisibel.
b. Untuk persoalan minimasi, entering variable adalah variabel dengan
rasio terkecil, sedangkan untuk persoalan maksimasi, entering variable
adalah variabel dengan rasio absolut terkecil.

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

Langkah pertama yang harus dilakukan ialah mengubah arah ketidaksamaan


pembatas sehingga bertanda (  ), kemudian menambahkan variabel-variabel
slack.
Diperoleh formulasi baru sebagai berikut :
Minimumkan : z = 2x1 + x2
Berdasarkan pembatas :
-3x1 - x2 + S1 = -3
-4x1 - 3x2 + S2 = -6
x1 + 2x2 + S3 = 3
x1 , x2 , S1 , S2 , S3  0

Tabel simpleks awalnya adalah :


Iterasi Basis x1 x2 S1 S2 S3 Solusi
S1 -3 -1 1 0 0 -3
0 S2 -4 -3 0 1 0 -6
S3 1 2 0 0 1 3
z -2 -1 0 0 0 0

Perhatikan bahwa variabel-variabel basis awalnya tidak memberikan solusi


awal yang fisibel (S1 dan S2 berharga negatif), tetapi koefisien persamaan z
sudah memenuhi kondisi optimalitas.
Pada iterasi di atas, S2 (= -6) terpilih sebagai leaving variable, sedangkan
entering variable dipilih berdasarkan :
x1 x2 S1 S2 S3
Programa Linier : Dualitas dan Analisis Sensitivitas

Koefisien persamaan z -2 -1 0 0 0
Koefisien persamaan S2 -4 -3 0 1 0
Rasio 1/2 1/3 - - -

Dengan demikian, x2 terpilih sebagai entering variable.


Langkah berikutnya dilakukan dengan cara seperti biasa.
Iterasi Basis x1 x2 S1 S2 S3 Solusi
S1 -5/3 0 1 -1/3 0 -1
1 x2 4/3 1 0 -1/3 0 2
S3 5/3 0 0 2/3 1 -1
z -2/3 0 0 -1/3 0 2
x1 1 0 -3/5 1/5 0 3/5
2 x2 0 1 4/5 -3/5 0 6/5
S3 0 0 -1 1 1 0
z 0 0 -2/5 -1/5 0 12/5

Solusi optimal telah tercapai.


Metode dual simpleks ini juga sangat penting untuk digunakan dalam
analisis sensitivitas. Sebagai contoh, hal ini akan terjadi apabila suatu
pembatas baru ditambahkan ke dalam persoalan semula setelah persoalan itu
mencapai solusi optimum. Apabila ternyata bahwa pembatas baru ini tidak
terpenuhi oleh solusi optimum yang telah dicapai itu, maka persoalannya akan
menjadi optimum, tetapi tidak fisibel, sehingga untuk menyelesaikan
ketidakfisibelannya ini perlu digunakan metode dual simpleks.

6.5 Analisis Sensitivitas dengan Tabel Simpleks


Programa Linier : Dualitas dan Analisis Sensitivitas

Analisis sensitivitas adalah analisis yang dilakukan untuk mengetahui


akibat/pengaruh dari perubahan yang terjadi pada parameter-parameter LP
terhadap solusi optimal yang telah dicapai.
Ada enam tipe perubahan dalam analisis sensitivitas dengan menggunakan
tabel simpleks yaitu :
1. Perubahan koefisien fungsi tujuan untuk variabel nonbasis.
2. Perubahan koefisien fungsi tujuan untuk variabel basis.
3. Perubahan pada ruas kanan suatu pembatas.
4. Perubahan kolom untuk suatu variabel nonbasis.
5. Penambahan suatu variabel atau aktivitas baru.
6. Penambahan suatu pembatas baru.

Dalam perubahan kasus-kasus di atas digunakan soal LP berikut :


Maksimumkan : z = 60 x1 + 30 x2 + 20 x3
Berdasarkan :
8 x1 + 6 x 2 + x3  48
4 x1 + 2 x2 + 1,5 x3  20
2 x1 + 1,5 x2 + 0,5 x3  8
x1, x2 , x3  0
Tabel optimalnya adalah sebagai berikut :
BV x1 x2 x3 S1 S2 S3 Solusi
S1 0 -2 0 1 2 -8 24
x3 0 -2 1 0 2 -4 8
x1 1 1,25 0 0 -0,5 1,5 2
z 0 5 0 0 10 0 280

Dari tabel ini dapat didefinisikan beberapa hal sebagai berikut :

BV = S1 , x3 , x1 ; NBV  x2 , S2 , S3 


Programa Linier : Dualitas dan Analisis Sensitivitas

 S1   x2 
xBV   x3  ; xNBV   S 2  yang merupakan vektor m x 1
 
 x1   S3 

1. Perubahan koefisien fungsi tujuan untuk variabel nonbasis.


Kasus ini terjadi karena adanya perubahan, baik pada kontribusi
keuntungan maupun pada kontribusi ongkos dari kegiatan yang
direpresentasikan oleh variabel nonbasis. Pada contoh soal di atas, satu-
satunya variabel keputusan nonbasis adalah x2. Saat ini koefisien fungsi tujuan
x2 adalah c2 = 30. Jika c2 berubah, bagaimana pengaruhnya terhadap solusi
optimal ? Harga-harga c2 manakah yang menyebabkan BV = S1, x3 , x1 tetap

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.

Dari contoh soal, kita tahu bahwa :


1 2 8 
CBV B   0 20 60  0 2  4   0 10 10
1 
0  0,5 1,5
6 
sehingga c2   0 10 10  2   30     35  30    5  
1,5
Programa Linier : Dualitas dan Analisis Sensitivitas

Agar c2  0 dan BV tetap optimal, maka ( 5 -  ) harus  0 atau   5.


Sebaliknya, harga c2 akan  0 jika   5 sehingga BV tidak lagi optimal. Artinya,
jika harga c2 naik atau turun sebesar 5 atau kurang, maka BV akan tetap
optimal, tetapi jika naik atau turunnya lebih dari 5, maka BV tidak lagi optimal.
Misalnya, jika c2 = 40, solusi basis saat ini akan menjadi suboptimal
karena c2 = -5 sehingga x2 akan menjadi entering variable. Untuk mengetahui
solusi optimal yang baru, lanjutkan perhitungan dengan menggunakan metode
simpleks seperti biasa.

2. Perubahan koefisien fungsi tujuan untuk variabel basis.


Mengubah koefisien fungsi tujuan variabel basis artinya mengubah CBV
sehingga beberapa koefisien pada baris 0 dari tabel optimal akan berubah.
Misalkan c1 berubah dari 60 menjadi ( 60 +  ). Maka CBV yang baru
adalah [ 0 20 (60 + )] sehingga :

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

b. Koefisien S2 = elemen kedua dari CBV B-1 = 10 – 0,5


c. Koefisien S3 = elemen ketiga dari CBV B-1 = 10 + 1,5

Dengan demikian, BV akan tetap optimal jika :


5 + 1,25  0 atau   -4
10 – 0,5  0 atau   20
Programa Linier : Dualitas dan Analisis Sensitivitas

10 + 1,5  0 atau   -(20/3)


Hal ini berarti bahwa solusi basis saat ini akan tetap optimal sepanjang   -4,
  20, dan   -(20/3). Jika digambarkan, daerah harga-harga c1 yang
menyebabkan solusi basis saat ini tetap optimal adalah sebagai berikut :

-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.

3. Perubahan pada ruas kanan suatu pembatas.


Dari sifat-sifat primal dual kita tahu bahwa perubahan ruas kanan
pembatas ini tidak akan mengubahn baris 0 pada tabel optimal sehingga solusi
basis saat ini tidak akan menjadi suboptimal. Yang mungkin berubah adalah
ruas kanan pada tabel optimal. Tetapi, sepanjang ruas kanan setiap pembatas
pada tabel optimal tetap nonnegatif, solusi basis saat ini tetap fisibel dan
optimal. Dalam hal ini, yang perlu kita lakukan adalah menyubstitusikan harga-
harga baru dari variabel keputusan ke dalam persamaan garis z sehingga
diperoleh harga z yang baru.
Programa Linier : Dualitas dan Analisis Sensitivitas

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 

sehingga h arg a z yang baru adalah :

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.

4. Perubahan kolom untuk suatu variabel nonbasis.


Pada contoh soal, variabel nonbasis adalah x2 yang mempunyai kolom :
6 
a2  2 
1,5

Apa yang terjadi jika kolom tersebut berubah menjadi :


5 
a2  2
2

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.

5. Penambahan suatu variabel atau aktivitas baru.


Pada situasi tertentu, kita mungkin memproleh kesempatan untuk
melakukan satu atau beberapa aktivitas baru. Dalam hal ini, kita harus dapat
menentukan apakah aktivitas baru ini sebaiknya dilakukan atau tidak, dengan
mempertimbangkan kebaikan/keburukan aktivitas baru tersebut terhadap solusi
basis yang telah diperoleh.
Sebagai contoh, misalkan akan dibuat produk ke-4 sehingga formula
menjadi :
Maksimumkan : z = 60 x1 + 30 x2 + 20 x3 + 15 x4
Berdasarkan :
8 x1 + 6 x 2 + x3 + x4  48
4 x1 + 2 x2 + 1,5 x3 + x4  20
2 x1 + 1,5 x2 + 0,5 x3 + x4  8
x1, x2 , x3 , x4  0

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.

6. Penambahan suatu pembatas baru.


Jika suatu pembatas baru ditambahkan, maka kita akan berada pada
salah saru dari ketiga kasus berikut ini :
Kasus 1 : Solusi optimal saat ini memenuhi pembatas baru.
Kasus 2 : Solusi optimal saat ini tidak memenuhi pembatas baru, tetapi
persoalan tetap mempunyai solusi fisibel.
Kasus 3 : Pembatas baru menyebabkan persoalan tidak mempunyai solusi
fisibel.
Contoh kasus 1 :
Misalkan pada contoh soal ditambahkan pembatas baru x1 + x2 + x3  11.
Maka solusi basis saat ini, yaitu x1 = 2, x2 = 0, x3 = 8 dan z = 280 akan
memenuhi pembatas baru tersebut. Karena solusi basis saat ini tetap fisibel
dan z tetap 280, maka solusi ini tetap optimal.

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

Lakukan dual simpleks sehinga diperoleh tabel optimal :


BV x1 x2 x3 S1 S2 S3 S4 Solusi
S1 0 0 0 1 2 -8 -2 26
x3 0 0 1 0 2 -4 -2 10
x1 1 0 0 0 -0,5 1,5 1,25 0,75
x2 0 1 0 0 0 0 -1 1
z 0 0 0 0 10 10 5 275

Maka, jika pembatas x2  1 ditambahkan terhadap persoalan semula, solusi


optimal akan menjadi z = 275, x3 = 10, x1 = 0,75, dan x2 = 1.

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

Perhatikan bahwa pada tabel terakhir kita memperoleh :


Programa Linier : Dualitas dan Analisis Sensitivitas

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

Iterasi Akhir (optimum)


Basis x1 x2 x3 x4 S1 S2 S3 Solusi
x1 1 5/7 0 -5/7 10/7 0 -1/7 50/7
S2 0 -6/7 0 13/7 -61/7 1 4/7 325/7
x3 0 2/7 1 12/7 -3/7 0 1/7 55/7
z 0 3/7 0 11/7 13/7 0 5/7 695/7

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

b. Bagaimana jawaban optimum yang baru jika koefisien ruas kanan


persamaan semula diubah
15   20 
   
dari 120  menjadi 110 
100  130 
   
c. Bagaimana jika fungsi objectivenya menjadi
z = 6x1 + 5x2 + 9x3 + 12x4
d. Bagaimanakah jawaban optimum yang baru jika ditambahkan variabel
baru x5 yang mempunyai koefisien sebagai berikut :
- dalam fungsi objective = 13 ?
 1
 
- dalam fungsi konstrain :  1 
18 
 

2. Sebuah persoalan diformulasikan sebagai berikut :


Maksimumkan : z = 2x1 + 4x2 + x3
Berdasarkan :
2x1 + 3x2 - 2x3  12
2x1 + x2 + x3  10
2x1 + 2x2 + x3  16
x1 , x2 ,x3  0

Pada suatu iterasi diperoleh keadaan sebagai berikut :


Basis x1 x2 x3 S1 S2 S3 Solusi
x2 1/2 0 0 6
S2 -1/2 1 0 4
S3 -1 0 1 4
z 2 0 0
Programa Linier : Dualitas dan Analisis Sensitivitas

Dengan mempergunakan sifat-sifat primal dual, lengkapilah iterasi di atas,


dan lanjutkan untuk mendapatkan nilai z maksimum. Tentukan variabel
basis optimum.

3. Perhatikan persoalan di bawah ini :


Maksimumkan : z = 3x1 + 2x2
Berdasarkan :
x1 + 2x2 6
2x1 + x2  8
-x1 + x2 1
x2 2
x1 , x2  0

Jika jawaban optimum persoalan di atas adalah :


Basis x1 x2 S1 S2 S3 S4 Solusi
x1 0 1 2/3 -1/3 0 0 4/3
x2 1 0 -1/3 2/3 0 0 10/3
S3 0 0 -1 1 1 0 3
S4 0 0 -2/3 1/3 0 1 2/3
z 0 0 1/3 4/3 0 0 38/3

Bagaimanakah jawaban optimum yang baru jika :


a. Ruas kanan dari pembatas ke-1 dan ke-2 masing-masing menjadi 7 dan
4?
b. Ditambahkan pembatas baru x1 4?
c. Fungsi tujuan berubah menjadi z = 3x1 + 2x2
d. Ditambahkan variabel baru x3 dengan koefisien pada fungsi tujuan
sebesar 3/2, sedangkan koefisien pada konstrain ke-1, ke-2, dan ke-3
masing-masing adalah 3/4, 3/4, dan –1 dimana x2  0
Programa Linier : Dualitas dan Analisis Sensitivitas

4. Perhatikan persoalan program linier di bawah ini :


Maksimumkan : z = 5x1 + 2x2 + 3x3
Berdasarkan :
x1 + 5x2 + 2x3 = 30
x1 - 5x2 - 6x3  40
x1 , x2 ,x3  0

Jika solusi optimum persoalan di ats adalah :


Basis x1 x2 x3 A1 S1 Solusi
x1 1 5 2 1 0 30
S1 0 -10 -8 -1 1 10
z 0 23 7 5+M 0 150

Bagaimanakah persoalan dualnya, dan berapakah solusi optimum variabel-


variabel dual tersebut ?

5. Formulasi suatu persoalan programa linier adalah sebagai berikut :


Maksimumkan : z = ax1 + bx2 + cx3 + dx4 + ex5
Berdasarkan :
a1x1 + b1x2 + c1x3 + d1x4 + e1x5  F
a2x1 + b2x2 + c2x3 + d2x4 + e2x5  G

a. Jika iterasi optimum dari persoalan di atas adalah :


Basis x1 x2 x3 x4 x5 S1 S2 Solusi
x5 -54/138 0 30/138 60/138 1 24/138 -1/23 114/138

x2 -15/23 1 16/23 9/23 0 -1/23 6/23 323/23

z 630/138 0 294/138 36/138 0 456/138 119/23 49362/138

Bagaimanakah formulasi persoalan ini yang sebenarnya ?


Programa Linier : Dualitas dan Analisis Sensitivitas

b. Jika pada solusi optimum itu ditambahkan konstrain baru


6x1 + 2x2 + 2x3 + 2x4 + 2x5  40 bagaimanakah solusi optimum yang
baru ?

6. Tentukan dual dari persoalan berikut :

Maksimumkan : z = 36x1 + 28x2 + 32x3


Berdasarkan :
2x1 + 2x2 + 8x3  30
3x1 + 2x2 + 2x3  40
x1 , x2 ,x3  0

Kemudian selesaikan soal ini dan tunjukkan marginal value dari bahan baku
pada konstraint pertama dan kedua.

7. Tentukan dual dari persoalan berikut :

Minimumkan : z = 40x1 + 20x2 + 60x3


Berdasarkan :
2x1 + 4x2 + 10x3  24
5x1 + x2 + 5x3  8
x1 , x2 ,x3  0

Kemudian selesaikan dualnya dengan metode Simplex dan tunjukkan


marginal value dari konstraint pertama dan kedua.

8. Sebuah perusahaan memproduksi jaket dan tas kulit. Sebuah jaket


memerlukan 8 meter persegi kulit dan sebuah tas hanya menggunakan 3
meter persegi. Persyaratan kerja untuk kedua produk tersebut masing-
Programa Linier : Dualitas dan Analisis Sensitivitas

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 ?

9. Tentukan dual dari persoalan dibawah ini :

Minimumkan : z = 12x1 + 26x2 + 80x3


Berdasarkan :
2x1 + 6x2 + 5x3 4
4x1 + 2x2 + x3  10
x1 + x2 + 2x3  6
x1 , x2 ,x3  0

10. Tunjukkan bahwa persoalan yang diberikan pada soal No. 9 memiliki nilai
optimal yang sama seperti dualnya dengan memecahkan kedua persoalan
ini secara langsung.

Anda mungkin juga menyukai