Program Linier Model Dual

946 downloads 2819 Views 354KB Size Report
5 Nov 2012 ... Bentuk umum masalah primal dual adalah sebagai berikut : ..... seperti metode simpleks pada primal, tetapi leaving variable dan entering.
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, tandatanda 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

= 30

2y1 + 3y2

+ t2

+ 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   yang original dari var i     abel basis pada iterasi     yang bersangku tan 

matriks di bawah   var iabel basis    awal pada iterasi     yang bersangku tan 



   simplex    multiplier    

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 variabelvariabel 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   var iabel basis awal     pada iterasi yang    bersangku tan 

matriks kolom  ruas kanan    original     



matriks kolom  ruas kanan     var iabel basis    

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   var iabel basis awal     pada iterasi yang    bersangku tan 

matriks kolom dari  kolom koefisien     pembatas yang    original 

matriks kolom dari  kolom koefisien     pembatas pada iterasi    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 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

2

0

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 -4x1 - 3x2

= -3 + S2

x1 + 2x2

= -6 + S3 = 3

x1 , x2 , S1 , S2 , S3  0

Tabel simpleks awalnya adalah : Iterasi

0

Basis

x1

x2

S1

S2

S3

Solusi

S1

-3

-1

1

0

0

-3

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

1

2

Basis

x1

x2

S1

S2

S3

Solusi

S1

-5/3

0

1

-1/3

0

-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

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 : x3  48

8 x1 + 6 x 2 + 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

xBV

 S1   x2      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, satusatunya 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 mengubah harga B

-1

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 : 2 8  1  CBV B   0 20 60  0 2  4   0 10 10 0  0,5 1,5 6  sehingga c2   0 10 10  2   30     35  30    5   1,5 1

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

C BV B 1

20

(60 + )] sehingga :

2 8  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 

0

10  0,5

6  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 hargaharga 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 : 2  8  48 1  B b  0 2  4  20  0  0,5 1,5 8 1

 24  2       8  2     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 :

C BV

48 B b  0 10 10 22  300 8  1

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

B

1

1 2  8  5   7  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 + 4 x1 + 2

x3 + x4  48

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 : 6

x1 + 2x2

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