Program linier adalah teknik penyelesaian optimal atas suatu problema keputusan dengan cara menentukan terlebih dahulu fungsi tujuan (memaksimalkan atau meminimalkan) dan kendala-kendala yang ada ke dalam model matematik persamaan linier. Sedangkan metode simpleks adalah sesuatu pemecahan dasar yang optimum dan pada setiap tahap menghasilkan suatu nilai dari fungsi tujuan yang selalu lebih besar atau sama dari tahap sebelumnya.
Metode simpleks sesungguhnya sama saja dengan metode grafik di dalam mencari titik penyelesaian optimal di daerah kelayakan atau mencari nilai titik-titik ekstrim di daerah kelayakan (Sitorus, 1997). Pada masa sekarang masalah-masalah linear programming yang melibatkan banyak variable-variabel keputusan dapat dengan cepat diselesaikan melalui bantuan komputer, tetapi bila variabel keputusan yang dikandung tidak terlalu banyak, masalah tersebut dapat diselesaikan dengan suatu logaritma yang biasanya sering disebut metode simpleks tabel.
Untuk dapat menyelesaikan metode simpleks dengan mudah maka pekerjaan yang perlu diperhatikan terleih dahulu adalah membuat “tabel dasar” atau “ basic-table‟. Tahapan pekerjaan ini merupakan pekerjaan yang paling penting dalam metode simpleks, sebab bila pada tahapan ini ternyata ada kekeliruan, maka penyelesaian lebih lanjut juga keliru. Biasanya bila pada tahap penyusunan tabel dasar ini ada kekeliruan, misalnya tanda koefisien fungsi tujuan atau koefisien input-output, maka feasible-solution tidak dapat diperoleh.
Ada beberapa pengertian yang perlu diperhatikan dalam pemecahan problem
Linear programing (LP) dengan metode simpleks, yaitu:
a. Penetapan atau penyusunan tabel dasar (basic-table) yaitu tabel awal yang berisikan informasi tentang besaran parameter dalam problem Linear programing (LP); misalnya besaran koefisien fungsi tujuan ( cost-coefficients, Cij); besaran koefisien input-output (aij) pada faktor pembatas dan besaran sumber daya yang tersedia (bij)
b. Penetapan problem Linear programing (LP) yang maksimum atau minimum. Bila salah satu problem ini telah ditetapkan, maka konsekuensinya ialah terhadap tanda ≤ atau ≥ . Seperti dijelaskan
sebelumnya tanda ≤ mengisyaratkan problem maksimisasi dan sebaliknya tanda ≥ mengisyaratkan problema minimisasi.
c. Penetapan non-negative coefficients, artinya koefisien fungsi tujuan (Cij) dan koefisien input-output (aij) tidak boleh negatif. Sebab bila ada nilai negatif, maka tidak terjadi penyelesaian optimum, tetapi yang diperoleh adalah penyelesaian yang tidak terbatas.
d. Semua bentuk persamaan yang ikut dalam model merupakan garis lurus. e. Koefisien fungsi tujuan (Cij) maupun koefisien input-output (aij) bersifat
divisible artinya dapat dibagi menjadi bilangan(besaran) kecil. Maksudnya untuk memudahkan perhitungan. Sebab kalau menggunakan bilangan atau besaran yang nilainya besar, maka akan menyulitkan perhitungan secara manual.
Contoh : 20x1 + 60x2≤ 80
Persamaan tersebut dapat disederhanakan menjadi: 2x1 + 6x2 ≤ 8 ; atau
x1 + 3x2≤ 4
f. Penetapan equality, artinya semua tanda ≤ atau ≥ digantikan dengan tanda sama dengan (=).
g. Penetapan pivot-eement artinya bilangan yang dipakai sebagai dasar melakukan iterasi.
h. Perhitungan iterasi yaitu mengubah nilai atau bilangan disesuaikan maksud analisis.
i. Penetapan feasible-solution artinya hasil akhir penyelesaian problem LP yang memungkinkan (feasible) untuk ditarik suatu kesimpulan.
j. Penetapan hal-hal yang dikategorikan sebagai nonfeasible-solution yaitu akhir penyelesaian LP yang tidak feasible. Bila terjadi kasus seperti ini, maka pekerjaan harus diulang mulai awal lagi, dicek apakah koefisien yang dipakai sudah benar, tandanya apa sudah positif atau cara melakukan iterasi sudah benar atau belum.
Beberapa istilah yang digunakan dalam metode simpleks menurut hotniar (2005: 56-57), penjelasannya diantaranya sebagai berikut :
1. Iterasi, seperti yang disebutkan sebelumnya adalah tahapan perhitungan dimana nilai dalam perhitugan itu tergantung dari nilai tabel sebelumnya. 2. Variabel non basis, adalah variabel yang nilainya diatur menjadi nol pada
sembarag iterasi. Dalam terminologi umum, jumlah variabel non basis selalu sama dengan derajat bebas dalam sistem persamaan.
3. Variabel basis, merupakan variabel yang nilainya bukan nol pada sembarang iterasi. Pada solusi awal, variabel basis merupakan variabel slack (jika fungsi kendala menggunakan pertidaksamaan ≤) atau variabel buatan (jika fungsi kendala menggunakan pertidaksamaan ≥ atau =). Secara umum jumlah variabel batas selalu sama dengan jumlah fungsi pembatas (tanpa fungsi non negatif)
4. Solusi atau Nilai kanan (NK), merupakan nilai sumber daya pembatas yang masih tersedia. Pada solusi awal, nilai kanan atau solusi sama dengan jumlah sumber daya pembatas awal yang ada, karena aktivitas belum dilaksanakan.
5. Variabel slack adalah variabel yang ditambahkan ke model matematik kendala untuk mengkonversikan pertidaksamaan ≤ menjadi persamaan
(=). Penambahan variabel ini terjadi pada tahap inisialisasi. Pada solusi awal, variabel slack akan berfungsi sebagai variabel basis.
6. Variabel surplus adalah variabel yang dikurangkan dari model matematik kendala untuk mengkonversikan pertidaksamaan ≤ menjadi persamaan (=). Penambahan variabel ini terjadi pada tahap inisialisasi. Pada solusi awal, variabel surplus tidak dapat berfungsi sebagai variabel bebas.
7. Variabel buatan adalah variabel yang ditambahkan ke model matematik kendala dengan bentuk ≥ atau = untuk difungsikan sebagai variabel basis awal. Penambahan variabel ini terjadi pada tahap inisialisasi. Variabel ini harus bernilai 0 pada solusi optimal, karena kenyataanya variabel ini tidak ada. Variabel ini hanya ada di atas kertas.
8. Kolom pivot (kolom kerja) adalah kolom yang memuat variabel masuk. Koefisien pada kolom ini akan menjadi pembagi nilai kanan untuk menentukan baris pivot (baris kerja).
9. Baris pivot (baris kerja) adalah salah satu baris dari antara variabel baris yang memuat variabel keluar.
10.Elemen pivot (elemen kerja) adalah elemen yang terletak pada perpotongan kolom dan baris pivot. Elemen pivot akan menjadi dasar perhitungan untuk tabel simpleks berikutnya.
11.Variabel masuk adalah variabel yang terpilih untuk mejadi variabel basis pada iterasi berikutnya. Variabel masuk dipilih satu dari antara variabel non basis pada setiap iterasi. Variabel ini pada iterasi berikutnya akan bernilai positif.
12.Variabel keluar, variabel yang keluar dari variabel basis pada iterasi berikutnya dan digantikan dengan variabel masuk. Variabel keluar dipilih satu dari antara variabel basis pada setiap iterasi dan bernilai 0.
2.10.1 Slack dan Surplus variables
Perubahan tanda ≥ atau ≤ ini dilakukan dengan menambahkan slack variables
pada program LP “memaksimumkan” dan menambahkan surplus variables pada
program LP “meminimumkan”. Contohnya adalah sebagai berikut 1. Slack Variables
Untuk problem Lp “memaksimumkan” diperlukan bantuan penambahan
Slack variables. Sebagai contoh adalah sebagai berikut: 2x1 + 6x2 ≤ 8
x1 + 3x2 ≤ 4
Dapat diubah ke bentuk equelity (sama dengan) dengan menambahkan Slack variables, yaitu:
2x1 + 6x2 + s1 = 8 x1 + 3x2 + s3 = 4
karena koefisien Slack variables adalah positif, maka solusi optimum langsung dapat diduga kalau dapat dihitung, maka perhitungan dengan cara Simplex dapat langsung dikerjakan. Dalam terminologi penyelesaian cara simplex seperti i, disebut dengan istilah penyelesaian “tahap tunggal” (single phase). Proses seperti ini dapat digambarkan seperti di Gambar 2.1
Gambar 2.1 Diagramatis Cara Penyelesaian Proses Tahap Tunggal pada Metode Simplex
2. Surplus Variables
Penyelesaian problem LP „meminimumkan” memerlukan bantuan surplus
variables agar penyelesaian problem LP dengan cara Simplex dapat diselesaikan. Misalnya: Semula : x1 + x2–s1 = 4 2x1 + 2x2 –s2 = 7 Diubah menjadi: x1 + x2 –s1 + s3 = 4