Anda di halaman 1dari 13

METODE SIMPLEKS DALAM LINEAR PROGRAMMING

A. Pendahuluan

Metode simpleks merupakan salah satu teknik penyelesaian dalam program linier
yang digunakan sebagai teknik pengambilan keputusan dalam permasalahan yang
berhubungan dengan pengalokasian sumber daya secara optimal. Apabila suatu
masalah linier programming hanya mengandung dua kegiatan atau variabel – variabel
keputusan saja makan akan dapat diselesaikan dengan metode grafik. Teteapi bila
melibatkan lebih dari dua kegiatan maka metode grafik tidak dapat digunakan lagi
sehingga diperlukan metode simpleks. Metode simpleks merupakan suatu cara yang
lazim dipakai untuk menentukan kombinasi optimal dari tiga variabel atau lebih.

Biasanya masala – masalah linier programming yang melibtakan banyak variabel


– variabel keputusan dapat dengan cepat diselesaikan dengan menggunakan
computer. Bila variabel keputusan yang dikandung tidak terlalu banyak, masalah
tersebut dapat diselesaikan dengan suatu algortima yang biasanya sering disebut
metode simpleks tabel.

B. Langkah – langkah Metode Simpleks Tabel

Adapun langkah – langkah yang dapat dipakai yaitu sebgai berikut :

1. Langkah 1 : Mengubah fungsi tujuan dan batasan – batasan

Misalnya :

 Maksimumkan Z = 3X1 + 5X2

 Batasan (constrain)

(1) 2X1 8

(2) 3X2  15

(3) 6X1 + 5X2  30


a. Fungsi tujuan diubah menjadi fungsi implisit, artinya semua C i Xij di geser ke
kiri yaitu :
Z = 3X1 + 5X2 diubah menjadi Z - 3X1 - 5X2 = 0.
b. Fungsi batasan (diubah menjadi kesamaan & di + slack variabel)
Slack variabel adalah Xn+1 , Xn+2 , …… Xn+m
Karena tingkat atau hasil kegiatan – kegiatan yang ada diwakili oleh X 1 dan
X2 maka variabel slack dimulai dari X3 dan X4 dan seterusnya.

(1) 2X1  8 menjadi 2X1 + X3 = 8

(2) 3X2  15 menjadi 3X2 + X4 = 15

(3) 6X1 + 5X2  30 menjadi 6X1 + 5X2 + X5 = 30

Berdasarakan perubahan persamaan- persamaan di atas dapat disusun


formulasi yang diubah itu menjadi :

 Fungsi tujuan : Maksimumkan Z - 3X1 - 5X2 = 0

 Fungsi batasan

(1) 2X1 + X3 = 8

(2) 3X2 + X4 = 15

(3) 6X1 + 5X2 + X5 = 30

2. Langkah 2 : Menyusun persamaan – persamaan di dalam tabel

Beberapa Istilah dlm Metode Simpleks

- NK adalah nilai kanan persamaan, yaitu nilai di belakang tanda sama dengan
(=). Untuk batasan 1 sebesar 8, batasan 2 sebesar 15, dan batasan 3 sebesar
30.
- Variabel dasar adalah variabel yang nilainya sama dengan sisi kanan dari
persamaan. Pada persamaan 2X1 + X3 = 8, kalau belum ada kegiatan apa-apa,
berarti nilai X1 = 0, dan semua kapasitas masih menganggur, maka
pengangguran ada 8 satuan, atau nilai X3 = 8. Pada tabel tersebut nilai variabel
dasar (X3, X4, X5) pada fungsi tujuan pada tabel permulaan ini harus 0, dan
nilainya pada batasan-batasan bertanda positif.
Z = 3X1 + 5X2 diubah menjadi Z - 3X1 - 5X2 = 0.
(1) 2X1  8 menjadi 2X1 + X3 = 8
(2) 3X2  15 menjadi 3X2 + X4 = 15
(3) 6X1 + 5X2  30 menjadi 6X1 + 5X2 +X5 = 30
Tabel simpleks yang pertama

Variabel X X X X X
Z 1 2 3 4 5 NK
Dasar

Z 1 -3 -5 0 0 0 0

X 0 2 0 1 0 0 8
3
X 0 0 3 0 1 0 15
4
X 0 6 5 0 0 1 30
5

3. Langkah 3 : Memilih kolom kunci

Kolom kunci adalah kolom yang merupakan dasar untuk mengubah tabel
simpleks. Pilihlah kolom yang mempunyai nilai pada garis fungsi tujuan yang
bernilai negatif dengan angka terbesar. Dalam hal ini kolom X2 dengan nilai pada
baris persamaan tujuan –5. Kalau suatu tabel sudah tidak memiliki nilai negative
pada baris fungsi tujuan, berarti table itu tidak bisa dioptimalkan lagi. Berilah
tanda segi empat pada kolom X2, seperti tabel berikut :
Pemilihan kolom kunci pada tabel pertama

Variabel X X X X X Keterangan
Z 1 2 3 4 5 NK
Dasar (Indeks)

Z 1 -3 -5 0 0 0 0
X 0 2 0 1 0 0 8
3
X 0 0 3 0 1 0 15
4
X 0 6 5 0 0 1 30
5

4. Langkah 4 : Memilih baris kunci

 Baris kunci adalah baris yang merupakan dasar untuk mengubah tabel
simpleks, dengan cara mencari indeks tiap-tiap baris dengan membagi nilai-
nilai pada kolom NK dengan nilai yang sebaris pada kolom kunci.

Indeks = (Nilai Kolom NK)

(Nilai kolom kunci)

Untuk baris batasan 1 besarnya indeks = 8/0 = , baris batasan 2 = 15/3 = 5,


dan baris batasan 3 = 30/5 = 6. Pilih baris yang mempunyai indeks positif
dengan angka terkecil. Dalam hal ini batasan ke-2 yang terpilih sebagai baris
kunci. Beri tanda segi empat pada baris kunci. Nilai yang masuk dalam kolom
kunci dan juga masuk dalam baris kunci disebut angka kunci
Variabel X X X X N Keterangan
Z X
Dasar 4 K (Indeks)
1 2 3 5

Z 1 -3 -5 0 0 0 0
X 0 2 0 1 0 0 8 8/0 = ∞
3
X 0 0 3 0 1 0 15 15/3 = 5
4
X 0 6 5 0 0 1 30 30/5 = 6
5

Z
X
3
X 0 0 1 0 1/3 0 5
2
X
5

0/3 15/3

5. Langkah 5 Mengubah nilai – nilai baris kunci

Nilai baris kunci diubah dengan cara membaginya dengan angka kunci, seperti
tabel 3. bagian bawah (0/3 = 0; 3/3 = 1; 0/3 = 0; 1/3 = 1/3; 0/3 = 0; 15/3 = 5).
Gantilah variabel dasar pada baris itu dengan variabel yang terdapat di bagian atas
kolom kunci (X2).

6. Langkah 6 : Mengubah nilai – nilai selain pada baris kunci

Nilai – nilai pada baris lain selain pada baris kunci dapat diubah dengan rumus
sebagai berikut :

Rumus :

Baris baru = baris lama – (koefisien pada kolom kunci) x nilai baru baris kunci
Baris pertama (Z)

[-3 -5 0 0 0, 0]

(-5) [0 1 0 1/3 0, 5] (-)

Nilai
= [-3 0 0 5/3 0, 25]
baru
Ex : (-3) – (-5) x 0 = (-3)

Baris ke – 2 (Batasan 1)

[2 0 1 0 0, 8]

(0) [0 1 0 1/3 0, 5] (-)

Nilai
= [2 0 1 0 0, 8]
baru

Baris ke – 4 (Batasan 3)

[6 5 0 0 1, 30 ]

(5) [0 1 0 1/3 0, 5] (-)

Nilai
= [6 0 0 -5/3 1, 5]
baru

Tabel nilai lama

Variabel X X X X X
Z 1 2 3 4 5 NK
Dasar

Z 1 -3 -5 0 0 0 0

X 0 2 0 1 0 0 8
3
X 0 0 3 0 1 0 15
4
X 0 6 5 0 0 1 30
5
Tabel nilai baru

Variabel X X X X X
Z 1 2 3 4 5 NK
Dasar

Z 1 -3 0 0 5/3 0 25

X 0 2 0 1 0 0 8
3
X2 0 0 1 0 1/3 0 5
X 0 6 0 0 -5/3 1 5
5

7. Langkah 7 : Melanjutkan perbaikan – perbaikan/ perubahan – perubahan

Ulangilah langkah-langkah perbaikan mulai langkah 3 sampai langkah ke-6 untuk


memperbaiki tabel-tabel yang telah diubah/diperbaiki nilainya. Perubahan baru
berhenti setelah pada baris pertama (fungsi tujuan) tidak ada yang bernilai negatif

Variabel X X X X X Keterangan
Z 1 2 3 4 5 NK
Dasar (Indeks)

Z 1 -3 0 0 5/3 0 25
X 0 2 0 1 0 0 8 = 8/2 = 4
3
X 0 0 1 0 1/3 0 5
4
X 0 6 0 0 -5/3 1 5 = 5/6 (min)
5

Z 1
X 0
3
X 0
2
X 0 6/6 0 0 -5/18 1/6 5/6
1
6/6 (-5/3)/6
Nilai baris- baris baru yang lain kecuali baris kunci yaitu :

Baris ke -1

[-3 0 0 5/3 0, 25 ]
(-3) [1 0 0 -5/18 1/6, 5/6] (-)
Nilai
= [0 0 0 5/6 ½, 27.5 ]
baru

Baris ke-2 (Batasan 1)

[2 0 1 0 0, 8]

(2) [1 0 0 -5/18 1/6, 5/6] (-)

Nilai
= 0 0 1 5/9 -1/3, 61/3]
baru

Baris ke-3 tidak berubah karena nilai pada kolom kunci = 0

[0 1 0 1/3 0, 5]

(0) [1 0 0 -5/18 1/6, 5/6] (-)

Nilai
= 0 1 0 1/3 0, 5]
baru

Berikut adalah table simpleks hasil perubahan

Variabel X X X X X
Z 1 2 3 4 5 NK
Dasar
Z 1 0 0 0 5/6 ½ 27.5
X 0 0 0 1 5/9 -1/3 19/3
3
X 0 0 1 0 1/3 0 5
2
X 0 1 0 0 -5/18 1/6 5/6
1

Jika dilihat dari tabel baris pertama (Z) tidak ada lagi yang bernilai negative,
semuanya positif. Hal ini berarti tabel tidak dapat dioptimalkan lagi, sehingga hasil
dari tabel tersebut merupakan hasil optimal.

Dari tabel didapat :

X1 = 5/6 | X2 = 5 | Z maksimum = 27.5

C. Penyimpangan – penyimpangan dari Bentuk standar


a. Fungsi Batasan dengan tanda sama dengan (=) maka harus ditambah dengan
variabel buatan (artificial variable)

Contoh :

Misalnya pada contoh seblumnya batsan ke – 3 adalah 6X 1 + 5X2 < 30 diubah


menjadi 6X1 + 5X2 = 30 maka formulasi masalahnya menjadi sebagai berikut :

(1) Z – 3X1 – 5X2 =0

(2) 2X1 + X3 = 8
(3) 3X2 + X4 = 15

(4) 6X1 + 5X2 = 30

Karena tanda Batasan ke – 3 kesamaan, maka daerah feasible harus terletak pada
garis 6X1 + 5X2 = 30. Jika diselesaikan dengan metode simpleks table harus
ditambahkan satu variable lagi, karena pada batsan itu belum ada variable yang bisa
merupakan variable dasar pada table pertama. Variable itu adalah variable buatan
yang bersifat tidak negative (X5), sehingga persamaan tersebut menjadi sebagai
berikut :

6X1 + 5X2 + X5 = 30

Karena adanya variable buatan ini maka fungsi tujuan harus disesuaikan dengan
menambahkan bilangan M, sehingga menjadi : Z = 3X1 + 5X2 + MX5

Bilangan M bernilai sangat besar tetapi tak terhingga, sehingga nilai Z maksimum
bisa diperoleh apabila nilai X5 = 0. Kalua diubah menjadi fungsi implisit maka
persamaan tujuan menjadi sebagai berikut : Z - 3X1 + 5X2 + MX5 = 0

Persamaan tujuan diatas tidak memungkinkan penggunaan metode simpleks table,


karena nilai setiap variable dasar pada persamaan ini harus sebesar 0, padahal X5
merupakan variable dasar pada table permulaan. Oleh karena itu diubah dengan cara
menguranginya dengan M dikalikan dengan baris Batasan yang bersangkutan seperti
dibawah ini :

[ -3 -5 0 0 M, 0 ]

-M [6 5 0 0 1, 30 ]

[ (-6m-3) (-5M-5) 0 0 0, -30M ]

Tabel

Variabel X X X X X
Z 1 2 3 4 5 NK
Dasar
Z 1 -6M-3 -5M-5 0 0 0 -30M

X 0 2 0 1 0 0 8
3

X 0 0 3 0 1 0 15
4

X 0 6 5 0 0 1 30
5

Z 1 3 -5m-5 3M+3/2 0 0 -6M+12

X 0 1 0 1/2 0 0 4
1

X 0 0 3 0 1 0 15
4

X 0 0 5 -3 0 1 6
5

Z 1 0 0 -3/2 0 M+1 18

X 0 1 0 1/2 0 0 4
1

X 0 0 0 9/5 1 -3/5 19/3


4

X 0 0 1 -3/5 0 1/5 6/5


2

Z 1 0 0 0 5/6 M+1/2 27.5

X 0 1 0 0 -5/18 1/6 5/6


1

X 0 0 0 1 5/9 -1/3 61/3


3

X 0 0 1 0 1/3 0 5
2
Diperoleh hasil : X1 = 5/6, X2 = 5 dan Zmax = 27 ½

b. Minimisasi

Fungsi tujuan dari permasalahan linier programming yang bersifat minimisasi harus
diubah menjadi maksimisasi agar sesuai dengan bentuk standar, yaitu maksimisasi.
Caranya adalah dengan mengganti tanda positif dan negative pada fungsi tujuan
yaitu:

Sebagai contoh :

Minimumkan Z = 3X1 + 5X2 menjadi


Maksimunkan (-Z) = -3X1 - 5X2

c. Fungsi pembatas bertanda >

Bila suatu fungsi pembatas bertanda < dan akhirnya menjadi = agar dapat
diselesaikan dengan metode simpleks.

Misalnya :

6X1 + 5X2 > 30 dikalikan (-1) menjadi

-6X1 - 5X2 < -30 ditambah variable X5

-6X1 - 5X2 + X5 = -30

d. Bagian kanan persamaan bertanda negatif

Bila bagian kanan persamaan bertanda negative maka harus diubah menjadi positif.
Caranya dengan mengubah tanda positif negative dari tiap – tiap koefisien kemudian
ditambah dengan variable buatan. Misalnya diubah batasan dalam contoh di atas :

-6X1 - 5X2 + X5 = -30 dikalikan (-1)

6X1 + 5X2 - X5 = 30

e. Bila minimum nilai Xj boleh negative

Pada bentuk standar, nilai Xj harus selalu positif (dengan batsan Xj > 0). Terkadang
suatu masalah dapat menghasilkan formulasi linear programming yang
memungkinkan nilai Xj negative. Andaikata batsan X1 > 0 dalam contoh pada bentuk
standar di depan diubah menjadi X1 > -10

f. Bila nilai Xj boleh positif atau negative

Kalua hasil linear programming memungkinkan nilai Xj positif maupun negative dan
tidak ada batas negative tertentu (negative berapapun dimungkinkan) maka nilai Xj
diubah menjadi X’j - Xj” dengan ketentuan sebagai berikut :

X’j = mewakili nilai positif dari Xj


Xj” = mewakili nilai negative dari Xj

Anda mungkin juga menyukai