Integer Programming RO (Algoritma)
Integer Programming RO (Algoritma)
Contoh
Maksimumkan: Z = 8x1 + 5x2
Kendala : x1 + x2 ≤ 6
9x1 + 5x2 ≤ 45
x1, x2 ≥ 0 ; x2 integer
1
Tampaknya cukup untuk mendapatkan solusi bulat dari
masalah LP, dengan menggunakan metode simpleks biasa dan
kemudian membulatkan nilai-nilai pecah solusi optimum. Hal ini
bukan tugas mudah untuk membulatkan nilai-nilai pecah variabel
basis yang menjamin tetap memenuhi semua kendala dan tidak
menyimpang cukup jauh dari solusi bulat yang tepat. Karena itu
perlu prosedur yang sistematis untuk mendapatkan solusi bulat
optimum terhadap masalah itu. Ada beberapa pendekatan solusi
terhadap masalah integer programing yaitu salah satu di
antaranya adalah pendekatan dengan cutting plane.
2
1.3 Metode Cutting Plane Algorithm
Suatu prosedur sistematik untuk memperoleh solusi
integer optimum terhadap pure integer programming
pertama kali dikemukakan oleh R.E. Gomory pada tahun 1958.
Kemudian prosedur ini diperluas untuk menangani kasus yang
lebih sulit, yaitu mixed integer programming.
Pembentukan kendala Gomory adalah begitu penting
sehingga memerlukan perhatian khusus. Misalkan tabel optimum
masalah Linier Programming yang disajikan merupakan solusi
optimum kontinu. Secara historis, metode bidang pemotong
adalah metode pertama yang diperkenalkan dalam literatur
Operasi Riset. Oleh karena itu, maka yang disajikan dalam tulisan
ini adalah bagaimana menemukan penyelesaian optimal yang
integer dengan menggunakan metode algoritma bidang
pemotong.
3
bahwa, algoritma integer murni tidak membedakan antara
variabel biasa dan variabel slack dari masalah yang bersangkutan
dalam arti bahwa semua variabel harus integer. Adanya koefisien
pecahan dalam kendala tidak memungkinkan variabel slack untuk
memiliki nilai integer. Dalam kasus ini algoritma fraksional dapat
menyatakan bahwa tidak terdapat pemecahan yang layak,
sekalipun masalah tersebut memiliki pemecahan integer yang
layak dalam bentuk variabel bukan slack.
Perincian algoritma fraksional pertama membahas
masalah program linier yang dilonggarkan dipecahkan yaitu
dengan mengabaikan kondisi integer. Jika pemecahan optimal
ternyata integer, tidak ada lagi yang perlu dilakukan. Sebaliknya
batasan sekunder yang akan memaksa pemecahan bergerak ke
arah pemecahan integer dikembangkan sebagai berikut.
Anggaplah Tabel 5.1 merupakan tabel optimal terakhir untuk
program linier diketahui.
Variabel xi, (i = 1, 2, ... , m) mewakili variabel basis
dan variabel wj (j = 1, ..., n) adalah variabel nonbasis. Variabel-
veriabel ini telah diatur demikian untuk kemudahan.
Pertimbangkan persamaan ke-i di mana variabel dasar xi memiliki
nilai noninteger.
xi n
j
i i w j , βj noninteger (baris sumber) (1.1)
j 1
4
Tabel 1.1 Penyelesaian Optimal Metode Simpleks.
Dasar X1 ... xi ... xm w1 ... wj ... wn Pemecahan
Z 0 ... 0 ... 0 c1 ... cj ... cn βn
f
j 1
ij wj 0
n
Akibatnya: fi fij wj fi 1 (1.5)
j 1
n
Karena f i fij wj haruslah integer berdasarkan
j 1
6
dual simpleks dapat dipergunakan untuk ketidaklayakan ini
adalah yang setara dengan memotong bidang pemecahan ke arah
pemecahan integer yang optimal.
Jika pemecahan baru (setelah menerapkan dual simpleks)
adalah integer, maka proses iterasi berakhir. Jika tidak sebuah
pemotong fraksional baru akan dikembangkan dari tabel yang
dihasilkan dan metode dual simpleks dipergunakan sekali lagi
untuk ketidaklayakan ini. Prosedur ini diulangi sampai pemecahan
integer dicapai. Tetapi jika salah satu iterasi algoritma dual
simpleks tersebut menunjukkan bahwa tidak ada pemecahan
yang layak, maka masalah tersebut tidak memiliki pemecahan
integer yang layak.
7
Algoritma ini disebut sebagai metode fraksional karena
semua koefisien bukan nol dari pemotongan yang dihasilkan
adalah kurang dari satu. Algoritma fraksional dapat menunjukkan
bahwa ukuran tabel simpleks dapat menjadi sangat besar
sementara pemotongan-pemotongan baru ditambahkan ke
dalam suatu batasan masalah. Ini tidak benar, sebab pada
kenyataannya jumlah total batasan ke dalam suatu masalah yang
ditambahkan tidak melebihi dari jumlah variabel dalam masalah
semula yaitu (m + n). Hasil ini berlaku karena jika masalah yang
ditambahkan mencakup lebih dari (m + n) batasan, maka satu
variabel slack Si atau lebih yang berkaitan dengan pemotongan
fraksional tersebut harus menjadi basis. Dalam kasus ini,
persamaan yang bersangkutan menjadi berlebihan dan jelas
harus dikeluarkan dari tabel.
Algoritma fraksional memiliki dua kelemahan:
1.3.2.1 Kesalahan pembulatan yang berkembang dalam
perhitungan otomatis kemungkinan besar akan
mendistorsi data semula terutama dengan
bertambahnya ukuran masalah.
1.3.2.2 Pemecahan masalah tetap tidak layak dalam arti
bahwa tidak ada pemecahan integer yang dapat
diperoleh sampai pemecahan integer optimal
dicapai. Ini berarti bahwa tidak ada pemecahan
integer yang baik jika perhitungan dihentikan
sebelum mencapai pemecahan integer yang optimal.
8
simpleks. Pemotongan khusus lalu dikembangkan sedemikian
rupa sehingga penambahannya ke tabel akan mempertahankan
sifat integer dari semua koefisien. Tetapi fakta bahwa pemecahan
tetap tidak layak sampai pemecahan integer yang optimal dicapai
tetap menyajikan suatu kelemahan.
Kelemahan kedua dipertimbangkan dengan
mengembangkan algoritma bidang pemotong yang dimulai
dengan integer dan layak, tetapi tidak optimal. Iterasi berlanjut
untuk tetap layak dan integer sampai pemecahan optimum
dicapai. Dalam hal ini algoritma bersifat layak primal
sebagaimana dapat dibandingkan dengan algoritma fraksional
yang bersifat layak dual, tetapi algoritma ini tampaknya tidak
menjanjikan secara perhitungan.
n
f ij wj (1.8)
fi j 1
n
f kj wj (1.9)
fk j 1
9
Pemotongan persamaan (5.8) dikatakan lebih kuat daripada
persamaan (5.9) jika fi ≥ fk dan fij ≤ fkj untuk semua j dengan
pertidaksamaan yang ketat berlaku setidaknya satu kali.
Definisi kekuatan ini sulit diterapkan dalam perhitungan.
Jadi aturan empiris yang dirancang dapat mencerminkan definisi
ini. Kedua persamaan ini menyatakan pemotongan dari baris
f
sumber yang memiliki (5.8) maksi{fi} atau (5.9) max i n i .
fij
j 1
Persamaan (5.9) lebih efektif karena lebih dekat mewakili definisi
kekuatan yang diberikan.
Contoh 1.1
Maksimumkan:
Kendala:
Tabel Awal
10
Tabel Optimal
(i)
da
n (ii)
11
1) maxi (fi), artinya dari baris dengan pecahan terbesar atau
2)
, artinya dari baris dengan rasio
terbesar.
Kembali pada persoalan di atas, karena kedua harga variabel
keputusan pada solusi optimal mempunyai harga pecahan yang
Persamaan :
atau
12
Persamaan pembatas barunya adalah:
Tabel Perubahan