empat unit yaitu ketika garis kendala III tempat melewati C(6,5). Pengurangan NRK kendala
III lebih besar dari empat akan membuat nilai dual price-nya tidak lagi nol karena S3 akan
berubah menjadi variabel basis. Bandingkan peraga 5.34 dengan Tabel 5.4.
LINDO
LINDO, kependekan dari Linear Interactive Discrete Optimizer, adalah sebuah program yang
dirancang untuk menyelesaikan kasus-kasus pemrograman linear. Sebuah kasus harus diubah
dahu;lu kedalam sebuah model matematis pemrograman linear yang menggunakan format
tertentu agar bisa diolah oleh program LINDO. Jadi, berbeda dengan program-program lain
yang menggunakan desain menu driven system di mana pemakai (user)tinggal memasukkan
data sesuai permintaan program secara bertahap.
LINDO : Input
Program ini menghendaki input sebuah matematika dengan struktr tertentu. Sebagi contoh,
proses pemasukaka data kasus pemrograman linear Bawika akan tampak sebagai berikut :
: (prompt
: MAX
Lindo)
2X1
3X2
? 5X1 + 6X2
<
60
X1 + 2X2
<
16
? X1 < 10
? X2 < 6
? END
: (kembali ke prompt Lindo)
Dalam hal ini, tanda ketidak negatifan tidak perlu dimunculkan karena tanda itu telah
diatur di dalam default program LINDO. Juga, kita hanya perlu menulis tanda kendala
pertidaksamaan > atau < untuk menyatakan > atau < karena hal itu juga sudah diatur
di dalam default program LINDO; sehingga, struktur input Bawika di atas bila dilihat kembali
dengan menggunakan fasilitas LOOK ALL akan menjadi:
1) MAX
2
X1 + 3 X2
SUBJECT TO
2) 5 X1 + 6 X2
3) X1 +
2
X2
<=
60
4) X1
<=
10
5) X2
<=
6
END
LINDO: Output
Output atau hasil olahan program LINDO pada dasarnya bisa dipisahkan menjadi dua bagian,
yaitu:
1. Optimal Solution atau Penyelesaian Optimal
2. Sensitivity Analysis atau Analisis Sensitivitas
Kita telah membahas kedua macam output tersebut pada bahasan-bahasan sebelumnya secara
manual. Kini kita akan mengolah kasus Bawika dengan Menggunakan program LINDO.
Setelah data dimasukkan, kita segera memerintahkan program untuk mengolah data tersebut
melalui fasilitas perintah GO. Sesaat kemudian program menayangkan hasil olahannya.
Peraga 5.36 menayangkan hasil olahan program LINDO untuk kasus Bawika.
[1] Objective Function Value. Informasi ini ditandai dengan notasi 1) untuk menunjukkan
bahwa di dalam struktur input LINDO, fungsi tujuan ditempatkan pada baris ke-1, dan fungsi
kendala mulai dari urutan baris ke-2. Fungsi tujuan Bawika adalah: Mask 2X1 + 3X2. Karena
nilai optimal variabel keputusan, seperti tercantum pada kolom value adalah X1 = 6 dan X2
= 5 maka nilai fungsi tujuan (Objective Function Value) adalah (lihat pula Peraga 5.37):
Sehingga :
2(6) + 3(5) = 27
OBJECTIVE FUNCTION VALUE
1) 27.0000000
[2] Value. Variabel keputusan pada output LINDO daitandai dengan label Variable. Karena
kasus Bawika mempunyai dua variabel keputusan dengan label X1 dan X2 maka kedua label
ini tercantum dibawah kolom Variable, sehingga seperti struktur sebuah matriks,
Bilangan di bawah label Value dan berada pada baris di mana X1 berada menunjukkan
nilai optimal variabel keputusan X1 yaitu 6; demikian pula dengan X2, yaitu 5, seperti
ditayangkan oleh peraga 5.37. sehingga,
VARIABLE
VALUE
X1
6.000000
X2
5.000000
[3] Reduced Cost. Membrikan informasi mengenai sampai sejauh mana nilai Cj harus
diturunkan agar nilai variable keputusan menjadi positif. Dari penjelasan ini kita bisa
mengerti bahwa nilai Reduced Cost akan selalu nol bila nilai variabel keputusan positif; dan
sebaliknya, nilai Reduced Cost akan menjadi positif bila nilai variabel keputusan adalah nol.
Informasi ini pada dasarnya sama dengan informasi analisis sensitivitas Cj pada saat nilai Xj =
0, namun dimunculkan dengan label lain dan ditempatkan di atas agar memperoleh perhatian
segera bila kasus Xj = 0 muncul.Oleh karena itu, dalam kasus Bawika ini,
VARIABLE
VALUE
REDUCED COST
X1
6.000000
.000000
X2
5.000000
.000000
[4] Slack or Surplus. Informasi ini menunjukkan nilai Slack atau Surplus masing-masing
kendala ketika nilai fungsi tujuan mencapai nilai ekstrem. Karena structure input LINDO
telah menempatkan fungsi kendala-kendala mulai urutan ke-2 maka pada label Raw dimulai
dengan angka 2 yang berarti baris ke-2. Dengan demikian, jelas sekali bahwa baris ke-2
menandai kendala ke-1, baris ke-3 menandai kendala ke-2, dan demikian seterusnya,
sehingga:
ROW SLACK OR SURPLUS
2)
3)
4)
5)
.000000
.000000
4.000000
1.000000
Karena seluruh kendala adalah kendala pembatas (<), maka informasi diatas
menunjukkan nilai slack variabel pada kendala ke-1, 2,3, dan 4. Disamping itu, informasi
diatas juga tercermin pada posisi masing-masing slack variabel di dalam table simpleks
optimal Perage 5.38. Posisi S1 dan S2 sebagai variabel nonbasis jelas menunjukkan bahwa S1 =
S2 = 0; sedang posisi S3 dan S4 sebagai variable basis menunjukkan bahwa nilai kedua slack
variabel itu adalah positif dimana b2 = 4 dan b4 = 1.
[5] Dual Price. Informasi ini menjelaskan tentang perubahan yang akan terjadi pada nilai
fungsi tujuan bila nilai ruas kanan kendala berubah satu unit. Dengan demikian,dual price
kendala I yang terletak pada baris ke-2 menjelaskan bahwa nilai fungsi tujuan akan menjadi
27,25 bila nilai ruas kanan kendala I bertambah satu unit. Oleh karena itu,
ROW SLACK OR SURPLUS
DUAL PRICES
2)
.000000
.250000
3)
.000000
.750000
4)
4.000000
.000000
5)
1.000000
.000000
Menjelaskan bahwa,
Nilai slack variable nol pada baris ke-2 dan ke-3 menandai kendala I dan II sebagai
kendala aktif, lihat Perage 5.36. Di samping itu, kita juga segera bisa mengetahui
bahwa S1 dan S2 adalah variabel nonbasis, lihat table 5.6. Oleh karena itu, nilai dual
price 0,25 dan 0,75 menjelaskan perubahan nilai fungsi tujuan bila NRK kendala I dan
II berubah satu unit.
Nilai salck variable 4 dan 1 pada baris ke-4 dan ke-5 menandai kendala III dan IV
sebagai kendala tidak aktif sehingga bisa segera dimengerti bahwa perubahan NRK
kendala-kendala itu jelas tidak akan mempengaruhi nilai fungsi tujuan. Itulah
sebabnya mengapa nilai dual price pada baris ke-4 dan ke-5 adalah 0, lihat Perage
5.38 dan 5.39.
Hasil olahan LINDO juga memberikan informasi mengenai jumlah iterasi yang diperlukan
optimal. Informasi:
Menjelaskan bahwa nilai optimal diperoleh setelah iterasi ke-3. Dalam hal ini, LINDO
mengikutsertakan table awal sebagai sebuah iterasi. Bandingkan dengan penyelesaian kasus
Bawika dengan table simpleks pada Bab 4.
LINDO: [II] Analisis Sensitivitas
Bagian ke-2 hasil olahan LINDO memuat informasi mengenai dua macam analisis
sensitivitas, yaitu:
1. Analisis sensitivitas koefisien fungsi tujuan (Cj)
2. Analisis sensitivitas Nilai Ruas Kanan (RHS)
CURRENT ALLOWABLE
COEF
INCREASE
X1
X2
600000
2.000000
3.000000
.500000
1.000000
ALLOWABLE
DECREASE
.500000
.
2
3
4
5
CURRENT
RHS
ALLOWABLE
INCREASE
60.000000
16.000000
10.000000
6.000000
8.000000
.800000
INFINITY
INFINITY
ALLOWABLE
DECREASE
4.000000
2.666667
4.000000
1.000000
CURRENT ALLOWABLE
COEF
INCREASE
X1
X2
600000
2.000000
3.000000
.500000
1.000000
ALLOWABLE
DECREASE
.500000
.
1. Perubahan nilai C1 naik menjadi 2,5 atau turun menjadi 1,5 tidak akan mengubah nilai
optimal variabel keputusan X1 = 6 dan X2 = 5.
2. Perubahan nilai C2 naik menjadi 4,0 atau turun menjadi 2,4tidak akan mengubah nilai
optimal variabel keputusan X1 = 6 dan X2 = 5.
Analisis Sensitivitas Nilai Ruas Kanan (RHS)
Dual price mencerminkan perubahan nilai fungsi tujuan yang diakibatkan oleh perubahan
setiap unit nilai ruas kanan kendala aktif. Dalam hal ini, analisis sensitivitas nilai ruas kanan
(right hand side) menjelaskan interval tersebut nilai dual price sudah tidak lagi valid untuk
mengestimasi perubahan nilai fungsi tujuan. Informasi:
RIGHTHAND SIDE RANGES (RHS)
ROW
CURRENT ALLOWABLE
ALLOWABLE
RHS
DECREASE
2
60.000000
4.000000
3
16.000000
2.666667
8.000000
.800000
INCREASE
menjelaskan bahwa interval perubahan RSH menjamin validitas nilai dual price. Lihat pula
Peraga 5.41.
1. Perubahan nilai ruas kanan kendala aktif ke-1 yang terletak pada baris ke-2 naik
menjadi 68 unit atau turun menjadi 56 unit tidak akan mengubah nilai dual price
kendala ke-1, yaitu 0,25.
2. Perubah nilai ruas kanan kendala aktif ke-2 yang terletak pada baris ke-3 naik menjadi
16,8 unit atau turun menjadi 13,33 unit tidak akan mengubah nilai dual price kendala
ke-2, yaitu 0,75.
3. Perubahan nilai ruas kanan kendala tidak aktif ke-3 yang terletak pada baris ke-4 naik
hingga tidak terbatas atau turun menjadi 6 unit tidak akan mengubah nilai dual price
kendala ke-3, yaitu 0,00.
4. Perubahan Nilai Ruas Kanan kendala tidak aktif ke-4 yang terletak pada baris ke-5
naik menjadi tidak terbatas atau turun menjadi 5 unit tidak akan mengubah nilai dual
price kendala ke-4, yaitu 0,00.
Dengan demikian, informasi nilai dual price tersebut bisa digunakan untuk mengestimasi
perubahan nilai fungsi tujuan yang disebabkan oleh perubahan nilai ruas kanan kendala
sejauh perubahan nilai ruas kanan kendala itu berada di dalam interval sensitivitasnya.
Setelah seluruh prosedur ini dilalui, LINDO kemudian segera menayangkan hasil olahan
kasus Sukra Rasmi seperti ditayangkan pada Peraga 5.42.
Bagian pertama hasil olahan LINDO yang ditayangkan pada Peraga 5.42 juga bisa dibaca
langsung dari table simpleks optimal itu harus dikembangkan lagi bila ingin menurunkan
kendala seperti bagian ke-2 hasil olahan LINDO Perage 5.42.
LINDO: Gupita
Seperti penyelesaian kasus Sukra Rasmi, penyelesaian kasus Gupita juga telah dibahas pada
Bab 3 (geometri) dan 4 (simpleks). Kini, kita akan menyelesaikan kasus Gupita dengan
menggunakan program LINDO. Hasil olahan program bisa dilihat pada Peraga 5.44. Bagian
pertama hasil olahan ini juga bisa dibaca langsung dari table optimal simpleks Gupita yang
ditayangkan kembali pada Peraga 5.45.