• Tidak ada hasil yang ditemukan

Pemrograman Integer (Integer Programming)

LANDASAN TEOR

2.2 Pemrograman Integer (Integer Programming)

Persoalan Integer Programming (IP) adalah persoalan pemrograman

(programming) di mana pemecahan optimalnya harus menghasilkan bilangan

bulat (integer) jadi bukan pecahan. Dengan perkataan lain dari antara berbagai bilangan bulat, harus dicari nilai-nilai variabel yang fisibel dan membuat fungsi tujuan (Objective function) maksimum (Supranto, 1980).

Pemrograman integer (Integer Programming) adalah suatu model pemrograman linier dengan variabel yang digunakan berupa bilangan bulat. jika semua variabel harus berupa bilangan bulat, maka masalah tersebut dinamakan

pure integer programming. Jika hanya sebagian yang harus berupa integer, maka disebut mixed integer programming. Integer programming dengan semua variabelnya harus bernilai 0 atau 1 disebut 0-1 integer programming (Garfinkel dan Nemhauser, 1972).

Program bilangan bulat adalah suatu bentuk dari program linier yang asumsi divisibilitasnya melemah. Bentuk ini muncul karena kenyataannya tidak semua variabel keputusan merupakan suatu angka pecahan (Dimyati dan A. Dimyati 1987).

Menurut Taha (1975), optimasi bilangan bulat bukan merupakan sebuah persoalan matematika baru, dan dalam penelitian operasional dikenal sejak tahun 1940. Optimasi bilangan bulat penting digunakan pada pemecahan masalah yang disusun sebagai sebuah hasil perkembangan pada bidang penelitian operasional, terutama sekali pada persoalan program linier. Hal itu diperlukan untuk pemecahan model penyusunan pada beberapa atau semua variabel keputusan agar

integer (bilangan bulat).

Pemrograman bilangan bulat (Integer programming)

dibutuhkan ketika keputusan harus dilakukan dalam bentuk bilangan bulat (bukan pecahan yang sering terjadi bila kita gunakan metode simpleks). Model matematis dari pemrograman bulat sebenarnya sama dengan model linear programming, dengan tambahan batasan bahwa variabel keputusannya harus bilangan bulat. Integer programming adalah suatu program linier dengan tambahan persyaratan bahwa semua atau beberapa variabel bernilai bulat non negatif, tetapi tidak perlu bahwa parameter model juga bernilai bulat.

Secara umum menurut Dimyati dan A. Dimyati (1992), model persoalan pemrograman bilangan bulat (Integer Programming) dapat diformulasikan sebagai berikut:

Maks/Min :

bilangan bulat (integer) untuk

Algoritma yang dianggap cukup baik untuk memberikan solusi optimum dalam pemrograman bilangan bulat (Integer Programming) adalah pencabangan dan pembatasan (branch and bound) dan pemotongan bidang datar (cutting plane) (Dimyati dan A. Dimyati, 1992).

Ada berbagai pendekatan untuk masalah IP. Pendekatan yang akan dibahas di bawah ini termasuk Pembulatan (Rounding), Cabang dan Batas (Branch and Bound), Pemotongan Bidang Datar (Cutting Plane), Relaksasi Lagrangian (Lagrangian

Relaxation) dan Benders Dekomposisi (Benders Decomposition) (Bruce A. McCarl

dan T.H.Spreen, 1997).

a. Pemotongan Bidang Datar (Cutting Plane)

Ada berbagai algoritma yang tersedia untuk penyelesaian masalah IP. Alasan banyaknya inilah bahwa tidak ada algoritma telah terbukti secara komputasi yang efisien untuk semua masalah, dan dengan demikian pencarian kontinu untuk algoritma-algoritma yang lebih efektif. Berdasarkan masalah pure

integer programming, yaitu, masalah LP standar dengan pembatasan integer

pada semua variabel. Ide fundamental yang mendasari algoritma gomory’s cutting plane adalah untuk menambahkan kendala untuk masalah satu per satu sehingga akhirnya memiliki masalah LP dengan solusi optimal dengan koordinat integer (Paul R. Thie, 1979).

Pendekatan yang dilakukan dalam teknik pemotongan bidang datar

(Cutting plane) adalah dengan membuat pembatas tambahan yang memotong

ruang layak dari LP relaksasi sehingga dapat mengeliminasi solusi yang tidak integer . Proses pemotongan akan terus berlangsung sehingga diperoleh jawab dengan seluruh variabel (yang dikehendaki) berharga bilangan bulat (integer) (Dimyati dan A. Dimyati, 1992).

Menurut Dimyati dan A. Dimyati (1992), keberhasilan teknik ini sangat terbatas, bergantung pada struktur persoalan yang dihadapi. Artinya

hanya persoalan tertentu yang dapat diselesaikan dengan teknik ini. Karena itu, sekarang teknik ini hampir tidak pernah lagi digunakan.

Algoritma IP pertama kali diselesaikan dengan konsep cutting plane.

Cutting plane menghapus bagian dari daerah fisibel tanpa menghapus poin

solusi bilangan bulat. Ide dasar di balik sebuah cutting plane adalah bahwa titik bulat yang optimal dekat dengan solusi LP optimal, tetapi tidak jatuh di persimpangan kendala sehingga kendala tambahan perlu dipaksakan. Akibatnya, kendala yang ditambahkan untuk memaksa solusi LP integer menjadi tidak layak tanpa menghilangkan solusi bilangan bulat. Hal ini dilakukan dengan menambahkan kendala memaksa variabel nonbasis lebih besar dari nilai nol kecil (Bruce A. McCarl dan T.H.Spreen, 1997).

Beberapa poin yang perlu diperhatikan untuk membuat pendekatan

Cutting plane. Pertama banyak pemotongan yang mungkin perlu diperbaiki

untuk memperoleh sebuah solusi integer. Kedua solusi integer pertama yang ditemukan adalah solusi optimal. Solusi ini ditemukan setelah pemotongan hanya ditambahkan ke daerah hasil solusi optimal. Akibatnya jika algoritma solusi ditemukan, keluar tanpa sebuah solusi yang dapat diterima (Bruce A. McCarl dan T.H.Spreen, 1997).

Algoritma bekerja sebagai berikut, pertama-tama menyelesaikan masalah LP asli dengan mengabaikan pembatasan yang integer. Kemudian, jika solusi ini memiliki semua koordinat integer, maka itu merupakan solusi optimal untuk masalah IP, masalah selesai. jika tidak, buat kendala baru yang akan menambah masalah. Kendala ini akan memiliki dua sifat dasar: pertama, solusi optimal noninteger untuk masalah LP asli tidak akan memenuhi kendala ini, dan kedua, semua solusi layak integer masalah asli akan memenuhi kendala asli baru. Sehingga kendala ini pada dasarnya memotong subset dari himpunan solusi layak untuk masalah LP, tapi subset yang tidak berisi integer yang layak, tambahkan kendala baru lagi (Paul R. Thie, 1979).

Langkah-langkah dari algoritma gomory’s cutting plane untuk masalah IP murni:

1. Memecahkan masalah LP yang sesuai hanya mengabaikan pembatasan integer pada X. Jika solusi ini memiliki semua koordinat integer, maka itu adalah solusi optimal untuk masalah asli.

2. Jika tidak kendala baru ditambahkan ke masalah.

a) Untuk membangun kendala ini, memilih baris dari solusi akhir tabel optimal dari masalah LP dengan non terpisahkan konstan istilah bi. (menggunakan baris yang mengandung istilah konstan dengan nilai pecahan terbesar dapat mengurangi jumlah iterasi yang diperlukan untuk konvergensi.)

b) Seandainya baris ke-i dipilih dan persamaan yang sesuai adalah

Maka bentuk kendala

Dimana

fij = aij – [ aij ] = bagian pecahan dari aij

fi = bi – [ bi ] = bagian pecahan dari bi

x = sebuah variabel slack baru, terbatas menjadi nonnegatif dan integral

c) Tambahkan kendala ini ke masalah dan kembali ke langkah 1. (Paul R. Thie, 1979).

Kelemahan dari algoritma cutting plane adalah kesalahan-kesalahan pada pembulatan yang dilakukan dalam perhitungan dapat menghasilkan jawaban bilangan bulat yang salah. Selain itu jawaban dari persoalan masih belum fisibel berarti tidak ada jawaban bilangan bulat yang diperoleh sampai jawaban bilangan bulat yang optimal dicapai tadi, dan ini berarti bahwa tidak ada jawaban bilangan bulat yang baik jika perhitungan dihentikan lebih awal sebelum mencapai hasil jawaban yang optimal (Aswan, 1979).

Pembulatan adalah pendekatan yang paling naif untuk solusi masalah IP. Pendekatan pembulatan melibatkan pemecahan masalah sebagai masalah LP diikuti dengan upaya untuk membulatkan solusi ke solusi yang integer dengan: a) menghilangkan semua bagian pecahan, atau b) mencari tahu solusi yang memenuhi dimana nilai-nilai variabel yang disesuaikan dengan dekatnya lebih besar atau lebih kecil nilai integer. Pembulatan mungkin adalah pendekatan yang paling umum untuk memecahkan masalah IP. Masalah LP Sebagian besar melibatkan variabel dengan nilai pecahan solusi yang pada kenyataannya adalah integer (yaitu, kursi diproduksi, ayam dipotong). Istilah pecahan dalam solusi tidak masuk akal, tetapi kadang-kadang dapat diterima jika pembulatan memperkenalkan perubahan yang sangat kecil dalam nilai variabel (pembulatan yaitu 1003421,1-1.003.421 atau bahkan 1.003.420 mungkin dapat diterima) (Bruce A. McCarl dan T.H.Spreen, 1997).

Secara umum, pembulatan sering praktis, tetapi harus digunakan dengan hati-hati. Salah satu harus membandingkan solusi yang dibulatkan dan tidak dibulatkan untuk melihat apakah setelah pembulatan: a) kendala memenuhi secara memadai, dan b) apakah perbedaan antara LP optimal dan pembulatan nilai fungsi objektif cukup kecil. Jika demikian IP biasanya tidak efektif dan solusi yang bulat dapat digunakan. Di sisi lain, jika ditemukan fungsi tujuan bulat diubah secara bermakna atau kendala melanggar dari sudut pandang pragmatis, maka latihan IP formal perlu dilakukan (Bruce A. McCarl dan T.H.Spreen, 1997).

c. Relaksasi Lagrangian (Lagrangian Relaxation)

Relaksasi Lagrangian (Geoffrion (1974), Fisher (1981, 1985)) merupakan salah satu bidang pengembangan algoritmik IP. Relaksasi Lagrangian mengacu pada prosedur dimana beberapa kendala yang direlaksasikan ke dalam fungsi tujuan menggunakan sebuah pendekatan yang dibentuk oleh pengganda Lagrangian. Bentuk dasar Relaksasi Lagrangian untuk program bilangan bulat campuran:

Maksimum CX + FY Kendala AX + GY ≤ b

X ≥ 0, Y ≥ 0 dan integer

melibatkan penemuan suatu himpunan Lagrange Multiplier untuk beberapa kendala dan merelaksasi himpunan kendala ke dalam fungsi tujuan. Mengingat bahwa yang dipilih untuk direlaksasi himpunan kedua kendala menggunakan lagrange multiplier masalah menjadi:

Maksimum CX + FY – λ( DH + HY – e ) AX + GY ≤ b

X ≥ 0, Y ≥ 0 dan integer

Ide utama adalah untuk menghilangkan kendala yang sulit dari masalah sehingga program integer jauh lebih mudah untuk dipecahkan. Masalah IP dengan struktur seperti itu dari masalah transportasi dapat langsung diselesaikan dengan LP. Caranya kemudian adalah memilih kendala yang tepat untuk direlaksasi dan untuk mengembangkan nilai-nilai untuk pengali lagrange mengarah ke solusi yang tepat.

Relaksasi Lagrangian telah digunakan dalam dua pengaturan: 1) untuk meningkatkan kinerja batas pada solusi, dan 2) untuk mengembangkan solusi yang dapat disesuaikan secara langsung atau melalui heuristik sehingga mereka layak dalam keseluruhan masalah (Fisher (1981, 1985)) . Sebuah hasil penting Relaksasi Lagrangian adalah merelaksasi masalah yang memberikan batas atas solusi untuk masalah yang tidak direlaksasi pada setiap tahap. Relaksasi Lagrangian telah banyak digunakan dalam algoritma cabang dan terikat untuk menurunkan batas atas untuk masalah untuk melihat apakah traversal bawah yang dicabangkan layak (Bruce A. McCarl dan T.H.Spreen, 1997).

d. Dekomposisi Bender (Benders Decomposition)

Algoritma lain untuk IP disebut Dekomposisi Bender. Algoritma ini memecahkan program bilangan bulat campuran melalui eksploitasi struktural. Benders mengembangkan prosedur, selanjutnya disebut Dekomposisi Bender, yang menguraikan masalah mixed integer menjadi dua masalah yang diselesaikan secara iteratif - masalah utama bilangan bulat dan subproblem linier.

Keberhasilan prosedur melibatkan struktur subproblem dan pilihan subproblem tersebut. Prosedur dapat bekerja sangat buruk untuk struktur tertentu.

Masalah dekomposisi mixed IP adalah: Maksimum FX + CZ

Kendala GX ≤ b1

HX + AZ ≤ b2

DZ ≤ b3

X integer, Z ≥ 0

Pengembangan dekomposisi masalah ini berlangsung dengan iteratif mengembangkan titik layak X* dan memecahkan subproblem yang:

Maksimum CZ

Kendala AZ ≤ b2 – HX* (α)

DZ ≤ b3 (γ)

Z ≥ 0

Solusi untuk subproblem ini menghasilkan variabel dual dalam tanda kurung. Q merupakan penafsiran dari CZ. Dalam mengubah "master" Masalah dibentuk sebagai berikut:

Maksimum FX + Q X,α,γ,Q Q ≤αi (b2 - HX) + γib3 i = 1, 2, . . . p GX ≤ b1 X integer, Q 0

Penggunaan dekomposisi Benders melibatkan penguraian masalah yang tepat dan / atau struktur masalah yang akan menuju kesatu titik dengan cepat. Pernyataan umum yang dapat dibuat adalah:

a) Metode dekomposisi tidak bekerja dengan baik ketika variabel X yang dipilih oleh masalah master tidak menghasilkan subproblem layak. Dengan demikian, semakin akurat kendala dalam masalah master menggambarkan kondisi subproblem, semakin cepat akan konvergensi. (Lihat Geoffrion dan Graves, Danok, McCarl dan White (1978), Polito, Magnanti dan Wong, dan Sherali untuk diskusi.)

b) Daerah feasible dari masalah master baik lebih dibatasi. (Lihat Magnanti dan Wong,. Dan Sherali)

c) Bila mungkin, kendala harus dimasukkan dalam masalah master menghalangi solusi layak yang belum realistis (suboptimal) untuk keseluruhan masalah. (Lihat kendala mesin minimum di Danok, McCarl dan White, 1978.)

(Bruce A. McCarl dan T.H.Spreen, 1997).

Dokumen terkait