PENDAHULUAN
Hingga saat ini yang telah kita pelajari adalah penyelesaian permasalahan Linear
Programming (LP) dengan tanda pertidaksamaan ≤ yang biasanya kita jumpai dalam
permasalahan dengan fungsi tujuan maksimisasi. Prosedur dalam penyelesaian permasalahan
maksimisasi dapat juga kita gunakan untuk menyelesaikan permasalahan minimisasi yang
biasanya mempunyai tanda ≥ dan atau = pada fungsi kendalanya.
Pada bagian ini akan kita bahas penyelesaian permasalahan LP dengan fungsi tujuan
minimisasi. Pembahasan akan dimulai dengan memformulasikan permasalahan sesuai dengan
standard simpleks, kemudian dilanjutkan dengan melakukan iterasi atau perbaikan tabel
hingga optimal dan bagian terakhir pada bab ini akan dikemukakan beberapa issue teknis
yang sering kita jumpai dalam metode simpleks
TOPIK1
A. FORMULASI PERMASALAHAN MENURUT METODE SIMPLEKS UNTUK
TANDA PERTIDAKSAMAAN ≥ DAN ═
Pada topik ini akan kita bahas mengenai penyelesaian permasalahan LP dengan fungsi tujuan
minimisasi. Pada permasalahan minimisasi, biasanya kita jumpai tanda ≥ pada fungsi kendala.
Kendati demikian tidak menutup kemungkinan fungsi kendala mempunyai tanda ═ .
Pada fungsi kendala dengan tanda ≤ kita harus menambahkan slack variabel yang
menyatakan kapasitas yang tidak digunakan atau yang tersisa pada departemen tersebut. Hal
ini karena ada kemungkinan kapasitas yang tersedia tidak semuanya digunakan dalam proses
produksi.
Pada permasalahan minimisasi kita jumpai fungsi kendala dengan tanda ≥ , artinya bahwa kita
dapat menggunakan sumberdaya lebih dari yang tersedia. Pertanyaan yang muncul adalah
berapa besarnya kelebihan sumberdaya yang telah kita gunakan dari yang tersedia ?. Untuk
menyatakan kelebihan sumberdaya yang digunakan dari yang tersedia ini, maka kita harus
mengurangi kendala tersebut dengan surplus variabel. Surplus variabel ini sering juga disebut
sebagai slack variabel yang negatif.
Karena nilai solusi pada permasalahan LP harus non-negatif maka untuk mengatasi masalah
ini kita harus menambahkan artificial variabel (A). Artificial variabel ini secara phisik tidak
mempunyai arti, dan hanya digunakan untuk kepentingan perhitungan saja.
Untuk lebih memahami permasalahan ini marilah kita lihat permasalahan Galuh Chemical
Company. Galuh Chemical Company harus membuat 1000 unit campuran phospate dan
postassium. Biaya per unit phospate adalah $5, sedangkan biaya per unit postassium $6.
Jumlah phospate yang dapat digunakan tidak lebih dari 300 unit sedangkan postassium harus
digunakan minimal 150 unit. Berapa masing-masing jumlah phospate dan postassium yang
harus digunakan agar biaya total minimum ?
Permasalahan Galuh Chemical Company dapat kita formulasikan ke dalam bentuk LP sebagai
berikut :
Sedangkan kendala ketiga, X2 ≥ 150, harus dikurangi dengan surplus variabel dan ditambah
dengan artificial variabel, sehingga menjadi :
X2 – S2 + A2 = 150
Terakhir kita harus menuliskan fungsi tujuan. Karena dalam fungsi kendala ada artificial
variabel, maka kita harus memberikan koefisien +M untuk artificial variable tersebut di
fungsi tujuan. Koefisien +M ini menunjukkan angka yang sangat besar nilainya, sehingga
dalam kasus ini dapat diinterpretasikan biaya yang sangat tinggi.
Formulasi sesuai standard simpleks dari permasalahan Galuh Chemical Company secara
lengkap adalah :
Fungsi Tujuan : Minimisasikan biaya Z = 5X1 + 6X2 + 0S1 + 0S2 + MA1 + MA2
Fungsi kendala :
X1 + X2 + A1 = 1000
X1 + S1 = 300
X2 – S2 + A2 = 150
X1, X2, S1, S2, A1, A2 ≥ 0
Apabila pada fungsi kendala terdapat artificial variabel, sedangkan fungsi tujuannya
maksimisasi, maka koefisien artificial variabel pada fungsi tujuan adalah –M.
Angka pada baris Cj (5, 6, 0, 0, +M, +M) tersebut adalah koefisien pada fungsi tujuan.
Sedangkan angka (1, 1, 0, 0, 1, 0) pada baris A1 serta angka (1, 0, 1, 0 0, 0) pada baris S1 dan
angka (0, 1, 0, -1, 0, 1) pada baris A2 adalah koefisien pada kendala 1, 2 dan 3.
Angka pada baris Zj (+M, 2M, 0, -M , +M, +M ) diperoleh dari penjumlahan hasil kali kolom
Cj dengan kolom yang bersesuaian. Sebagai contoh kita akan menentukan nilai Zj kolom X1
= (M x 1) + (0 x 1) + (M x 0) = M. Dengan cara yang sama kita peroleh nilai Zj pada kolom
yang lain.
Angka pada baris Cj – Zj diperoleh dari angka pada baris Cj dikurangi dengan angka pada
baris Zj. Sebagai contoh kita akan menghitung nilai Cj – Zj pada kolom X1 = 5 (yaitu angka
pada baris Cj) – M (angka pada baris Zj) = 5 - M . Demikian juga untuk menghitung nilai Cj –
Zj untuk kolom-kolom yang lain digunakan cara yang sama.
Rangkuman:
Untuk melakukan perbaikan tabel kita harus menentukan pivot column dan pivot row
seperti yang telah kita bahas pada kasus maksimisasi. Hanya saja penentuan pivot column
pada kasus minimisasi berbeda dengan kasus maksimisasi. Pada kasus minimisasi, pivot
column ditentukan dengan cara memilih angka pada baris Cj – Zj yang mempunyai tanda
negatif serta angkanya paling besar.
Untuk lebih memahami bagaimana kita menentukan pivot column dan pivot row,
marilah kita lihat kembali tabel awal Galuh Chemical Company.
Tabel 3.2. Menentukan Pivot Column dan Pivot Row Kasus Galuh Chemical Company
Dari tabel di atas dapat dilihat bahwa variable yang mempunyai nilai Cj – Zj negatif
dan angkanya paling besar adalah variabel X2, karena M menyatakan bilangan yang sangat
besar nilainya. Dengan demikian variabel X2 disebut sebagai Pivot Column.
Untuk menentukan pivot row, kita akan membagi angka pada kolom kuantitas dengan
pivot column (kolom X2), kemudian kita pilih hasil bagi non-negatif terkecil. Pada kasus
Galuh Chemical Company, variabel yang merupakan pivot row (baris kunci) adalah variabel
A2. Oleh karena itu pada tabel berikutnya (Tabel 2), variabel A2 akan keluar dan digantikan
oleh variabel X2.
Dalam baris Cj – Zj tabel 3.1, dapat kita lihat terdapat 2 variabel yang mempunyai nilai
negatif yaitu X1 dan X2. Dalam aturan permasalahan minimisasi, apabila pada baris Cj-Zj
masih terdapat nilai negatif maka tabel tersebut belum optimal, oleh karena itu kita perlu
melakukan iterasi.
Dalam melakukan iterasi langkah yang kita lakukan sama seperti pada permasalahan
maksimisasi, yaitu menentukan pivot column dan pivot row terlebih dahulu. Penentuan pivot
column dan pivot row ini sudah kita lakukan pada bagian A topik ini. Yang merupakan pivot
column adalah variabel X2 sedangkan pivot row adalah variabel A2. Setelah pivot column dan
pivot row ditentukan maka kita akan menghitung baris X2 untuk tabel 2 ini yaitu dengan cara
baris A2 tabel awal dibagi pivot number (angka kunci), yaitu 1.
Angka-angka pada baris X2 secara lengkap dapat dilihat pada tabel berikut:
Langkah selanjutnya adalah mengisi baris yang lain yang bukan merupakan pivot row,
yaitu angka pada baris lama tabel sebelumnya dikurangi dengan hasil perkalian antara angka
pada pivot column baris bersangkutan, dengan angka pada baris baris yang menggantikan.
Dalam kasus Galuh Chemical Company ada 2 variabel yang akan dihitung nilai pada baris
yang baru yaitu baris A1 dan S1.
Tabel 2 dari kasus Galuh Chemical Company secara lengkap adalah sebagai berikut :
Perbaikan tabel ini akan kita lakukan hingga kita memperoleh tabel optimal, yaitu
apabila baris Cj – Zj sudah positif atau nol. Karena pada tabel 2 ini masih kita jumpai angka
yang bertanda negatif pada baris Cj-Zj yaitu angka pada kolom X1 (5-M) dan kolom S2 (6-
M), maka kita akan melakukan perbaikan tabel dengan membuat tabel 3 dan seterusnya
hingga memperoleh tabel optimal. Langkah-langkah yang harus dilakukan untuk membuat
tabel perbaikkan sama dengan langkah-langkah yang telah kita lakukan pada saat membuat
tabel 2 yaitu: tentukan pivot column, pivot row, pivot number, kemudian hitung angka pada
baris yang menggantikan serta angka pada baris yang lainnya.
Pivot column pada tabel 2 di atas adalah kolom X1 (karena mempunyai angka negatif terbesar
yaitu 5-M), dan pivot row adalah baris S1 (karena merupakan hasil bagi non-negatif terkecil).
Seperti halnya pada saat kita membuat tabel 2, untuk membuat tabel 3 ini setelah kita
menentukan pivot column dan pivot row maka kita akan menentukan pivot number dan
kemudian akan mengisi angka pada baris yang menggantikan yaitu baris X1. Pivot number
pada tabel 2 adalah 1, yaitu angka pada perpotongan kolom X1 dan baris S1. Angka-angka
pivot column, pivot row serta pivot number pada tabel 2 dapat dilihat pada tabel berikut ini:
Untuk mengisi angka-angka pada baris X1 tabel 3 kita akan membagi angka-angka
pada baris S1 tabel 2 dengan pivot number. Perhitungan selengkapnya adalah sebagai berikut :
Kolom X1 1÷1=1
Kolom X2 0÷1=0
Kolom S1 1÷1=1
Kolom S2 0÷1=0
Kolom A1 0÷1=0
Kolom A2 0÷1=0
Kolom Kuantitas 300 ÷ 1 = 300
Setelah mengisi angka-angka pada baris X1 maka untuk melengkapi tabel 3 kita harus
mengisi angka-angka pada baris A1 dan X2. Cara untuk mengisi angka-angka pada baris A1
dan X2 sama dengan cara untuk mengisi baris lainnya pada tabel 2 di atas. Perhitungan secara
lengkap dapat dilihat pada tabel berikut ini :
Dari tabel 3.4 ternyata belum optimal karena pada baris Cj-Zj masih kita jumpai angka
negatif yaitu pada kolom S2. Oleh karena itu kita akan membuat tabel yang ke 4. Pivot
column pada tabel 3 adalah kolom S2 sedangkan pivot row adalah baris A1. Perhatikan hasil
perhitungan berikut ini.
Baris A1: 550/1 = 550 pivot row
Baris X1 = 300/0 = 0 abaikan
Baris X2 = 150/ -1 = -150 abaikan
Karena pada baris Cj – Zj pada tabel 4 tersebut sudah positif dan nol maka tabel 4
merupakan tabel optimal. Dari tabel 4 dapat kita simpulkan bahwa jumlah X1 yang
diproduksi 300 unit, X2 700 unit dengan biaya total $ 5.700. S2 sebesar 550 menunjukkan
bahwa jumlah postassium yang dipakai lebih dari yang tersedia. Besarnya kelebihan tersebut
adalah 550.
Rangkuman:
Penyelesaian permasalahan simpleks untuk kasus minimisasi pada dasarnya sama dengan
penyelesaian permasalahan maksimisasi. Perbedaannya hanyalah pada saat menentukan
pivot column yaitu kita pilih angka pada baris Cj – Zj yang merupakan tanda negatif dan
angkanya paling besar. Tabel disebut optimal jika angka pada baris Cj – Zj sudah positif
atau nol.
Pada metode simpleks seringkali dijumpai beberapa kasus yaitu infeasibility,
unboundedness solution, degeneracy, serta alternative optima.