PEMROGRAMAN LINIER PEMROGRAMAN LINIER
Metode Simpleks
Metode Simpleks
Metode Simpleks Metode Simpleks
Metode simpleks digunakan untuk
memecahkan permasalahan PL dengan
dua atau lebih variabel keputusan.
Prosedur Metode Simpleks:
Prosedur Metode Simpleks:
Kasus Maksimisasi Kasus Maksimisasi
a. a. Formulasi Fungsi Tujuan dan Fungsi Formulasi Fungsi Tujuan dan Fungsi Kendala Dari Permasalahan PL
Kendala Dari Permasalahan PL Maksimumkan
Maksimumkan : : 7 7 X X 1 1 + 5 + 5 X X 2 2 Dengan kendala :
Dengan kendala : 4 4 X X 1 1 + 3 + 3 X X 2 2 ≤ ≤ 240 240
2 2 X X 1 1 + + X X 2 2 ≤ ≤ 100 100
X X i i ≥ ≥ 0, i = 1,2 0, i = 1,2
b. Mengkonversi Bentuk Pertidaksamaan Dalam b. Mengkonversi Bentuk Pertidaksamaan Dalam
Fungsi Kendala Menjadi Bentuk Standar Fungsi Kendala Menjadi Bentuk Standar Ada tiga bentuk fungsi kendala:
Ada tiga bentuk fungsi kendala: ≤ ≤ , , ≥ ≥ , dan , dan = = . . Konversi fungsi kendala bertanda
Konversi fungsi kendala bertanda ≤ ≤ menjadi menjadi bentuk standar dilakukan dengan
bentuk standar dilakukan dengan menambahkan
menambahkan slack variable slack variable pada fungsi pada fungsi kendala tersebut.
kendala tersebut.
S S lack variable lack variable merepresentasikan sumber daya merepresentasikan sumber daya yang mengganggur pada suatu fungsi kendala.
yang mengganggur pada suatu fungsi kendala.
Penambahan
Penambahan slack variable slack variable dimaksudkan agar dimaksudkan agar pada fungsi kendala tersebut diperoleh solusi pada fungsi kendala tersebut diperoleh solusi
fisibel awal (
fisibel awal ( initial feasible solution, initial feasible solution, sama sama dengan titik origin pada grafik).
dengan titik origin pada grafik).
4 4 X X 1 1 + 3 + 3 X X 2 2 + + S S 1 1 = 240 = 240 Jika
Jika X X 1 1 = = X X 2 2 = 0 = 0 (titik origin pada grafik) (titik origin pada grafik) maka maka S S 1 1 = 240 = 240
Dengan demikian, formulasi dalam bentuk Dengan demikian, formulasi dalam bentuk
standar dari permasalahan yang dibahas:
standar dari permasalahan yang dibahas:
Maksimumkan:
Maksimumkan: 7 7 X X 1 1 + 5 + 5 X X 2 2 + 0 + 0 S S 1 1 + + 0 0 S S 2 2 Dengan kendala :
Dengan kendala : 4 4 X X 1 1 + 3 + 3 X X 2 2 + + S S 1 1 + 0 + 0 S S 2 2 = 240 = 240 2 2 X X 1 1 + + X X 2 2 + 0 + 0 S S 1 1 + + S S 2 2 =100 =100
X X i i , S , S 1 1 ≥ ≥ 0, i = 1, 0, i = 1, 2 2
c. Membuat Table Simpleks Awal c. Membuat Table Simpleks Awal
-
CJ
XX112
S2 S1 S2 SJ ZJ
CZJ
7 5 0 0
X X
11X X
22S S
11S S
220 S S
114 3 1 0 240
0 S S
222 1 0 1 100
Z Z
JJ0 0 0 0 0
C C
JJ- - Z Z
JJ7 5 0 0
Right Hand C Side
C
JJBasic
Variable
Pada dasarnya, semua angka pada formulasi diplotting Pada dasarnya, semua angka pada formulasi diplotting
dalam tabel simpleks awal.
dalam tabel simpleks awal.
Ada dua macam variabel Ada dua macam variabel : :
Variabel Basis (Basic Variable) dan Variabel Non Basis Variabel Basis (Basic Variable) dan Variabel Non Basis
(Non Basic Variable).
(Non Basic Variable).
C C
J Jmenotasikan profit per unit (untuk permasalahan mak menotasikan profit per unit (untuk permasalahan mak - - simisasi) dari masing
simisasi) dari masing -masing variabel dalam formulasi. - masing variabel dalam formulasi.
Baris
Baris Z Z
JJberisikan angka gross profit (laba kotor). Untuk berisikan angka gross profit (laba kotor). Untuk kolom
kolom j j , Z , Z
JJditentukan dari jumlah perkalian antara profit ditentukan dari jumlah perkalian antara profit per unit variabel basis dan angka pada kolom
per unit variabel basis dan angka pada kolom j. j . Baris
Baris C C
JJ- - Z Z
JJdisebut baris disebut baris net profit yang net profit yang
mengindikasikan besarnya net profit tambahan yang mengindikasikan besarnya net profit tambahan yang
akan diperoleh jika variabel pada kolom menjadi variabel akan diperoleh jika variabel pada kolom menjadi variabel
basis pada iterasi berikutnya.
basis pada iterasi berikutnya.
d. d. Algoritma metode simpleks dengan Algoritma metode simpleks dengan
mengaplikasikan lima langkah berikut ini:
mengaplikasikan lima langkah berikut ini:
Langkah 1: menentukan variabel kolom Langkah 1: menentukan variabel kolom
yang akan masuk basis yang akan masuk basis
Variabel kolom mana yang akan dipilih Variabel kolom mana yang akan dipilih
untuk menggantikan variabel basis pada untuk menggantikan variabel basis pada
iterasi berikutnya ditentukan berdasarkan iterasi berikutnya ditentukan berdasarkan
nilai
nilai C C J J - - Z Z J J terbesar (untuk problem terbesar (untuk problem
maksimisasi). Selanjutnya, kolom terpilih maksimisasi). Selanjutnya, kolom terpilih
disebut dengan kolom pivot.
disebut dengan kolom pivot.
CJ
XX112
S2 S1 S2 SJ ZJ
C -
ZJ
7 5 0 0
X X
11X X
22S S
11S S
220 S S
114 3 1 0 240
0 S S
222 1 0 1 100
Z Z
JJ0 0 0 0 0
C C
JJ- - Z Z
JJ7 5 0 0
Right Hand C Side
C
JJBasic
Variable
Langkah 2: menentukan variabel yang akan Langkah 2: menentukan variabel yang akan
keluar basis keluar basis
variabel basis yang akan keluar basis pada variabel basis yang akan keluar basis pada
iterasi berikutnya berdasarkan atas nilai rasio iterasi berikutnya berdasarkan atas nilai rasio
antara
antara Right Hand Side Right Hand Side dan angka pada kolom dan angka pada kolom pivot pada Langkah 1.
pivot pada Langkah 1.
Baris variabel basis yang memiliki nilai rasio Baris variabel basis yang memiliki nilai rasio
dengan angka
dengan angka nonnegatif nonnegatif ( ( positif positif ) terkecil dipilih ) terkecil dipilih sebagai baris yang akan digantikan. Baris
sebagai baris yang akan digantikan. Baris variabel basis ini disebut
variabel basis ini disebut baris pivot. baris pivot .
Variabel Basis X X
11RHS Rasio S S
114 240 60 S S
222 100 50
X11
S2 S
CJ
XX112
S2 S1 S2 SJ ZJ
C - ZJ
7 5 0 0
X X
11X X
22S S
11S S
220 S S
114 3 1 0 240
0 S S
222 1 0 1 100
Z Z
JJ0 0 0 0 0
C C
JJ- - Z Z
JJ7 5 0 0
Right Hand C Side
C
JJBasic Variable
Angka pada perpotongan antara kolom pivot dan baris pivot disebut
dengan angka pivot.
Langkah 3: menentukan angka baru untuk Langkah 3: menentukan angka baru untuk
baris pivot baris pivot
Perhitungan angka baru untuk baris pivot Perhitungan angka baru untuk baris pivot
pada iterasi berikutnya: membagi setiap pada iterasi berikutnya: membagi setiap
angka pada baris pivot dengan angka angka pada baris pivot dengan angka
pivot, atau
pivot, atau
Langkah 4: menentukan angka baru untuk Langkah 4: menentukan angka baru untuk
baris lainnya baris lainnya
Perhitungan angka baru pada baris selain Perhitungan angka baru pada baris selain
baris pivot pada iterasi berikutnya:
baris pivot pada iterasi berikutnya:
Angka baru
Angka baru = = angka pada baris lama angka pada baris lama – –
[(angka diatas atau dibawah angka pivot) [(angka diatas atau dibawah angka pivot) * * (angka baru baris pivot)],
(angka baru baris pivot)],
atau atau
X12
X1 S2
S