Integer programming Pemrograman 0-1 Pada Penentuan Minimum Spanning Tree Yang Memenuhi Kendala Biaya

2.5 Integer programming

Integer programming merupakan bentuk khusus atau variasi dari linier programming, di mana salah satu atau lebih peubah-peubahnya dalam vektor penyelesaiannya memiliki nilai integer. Dalam linier programming, salah satu asumsi yang melandasinya adalah divisibilitas dari peubah dan kendalanya. Dengan demikian, pada linier programming permasalahan dihadapkan pada kegiatan-kegiatan dan variabel yang bersifat kontinyu, sedangkan pada integer programming setiap variabel akan bersifat diskrit. Contoh 2.3 Permasalahan integer programming dengan 2 dua variabel basis 1 2 1 2 1 1 2 5 1 0 2 0 2 , 0, in t M a xim ize Z x x Su b je c t to x x x x x Gambar 2.8 Penyelesaian integer programming dengan metode grafik Solusi untuk linier programming pada permasalahan di atas adalah 1 1 Z di mana 1 2 x dan 2 1, 8 x . Hal pertama yang dilakukan untuk mendapatkan solusi integer adalah dengan melakukan pembulatan nilai dari variabel yang tidak integer, misalkan akan dilakukan pembulatan pada 2 x sehingga 2, 2 namun pembulatan ini 2 x 1 x 1 2 1 Pembulatan ke atas LP Optimal Pembulatan bawah Integer Optimal Z= 10 2 1 2 x 1 2 10 20 x x 0, 2 2,1.8 Universitas Sumatera Utara melanggar kendala pertama. Kemudian coba dilakukan pembulatan ke bawah pada 2 x sehingga 2,1 dengan 7 Z , tetapi nilai 7 Z bukanlah solusi integer optimal dari permasalahan ini karena solusi integer optimal dari permasalahan ini adalah 0, 2 dengan 1 0 Z . Nilai integer optimal terletak begitu jauh dari solusi LP optimal dan tidak memungkinkan hasil integer optimal ini didapat dengan cara melakukan pembulatan dari LP optimal. Hal yang dilakukan dalam menemukan solusi integer optimal adalah dengan cara mengenumerasikan semua solusi yang mungkin dan memilih satu solusi terbaik. Cara ini tentu mudah apabila permasalahan yang dihadapi tidak terlalu rumit, di mana tidak banyak variabel yang terlibat namun hal ini akan berbeda jika permasalahan yang dihadapi melibatkan variabel yang banyak. Misalkan terdapat sebuah permasalahan yang berbentuk pemrograman 0-1 yang melibatkan 20 variabel, maka banyaknya enumerasi yang mungkin di bentuk adalah 20 2 1.048.576 dan ini masih memungkinkan apabila menggunakan bantuan komputer. Jika dihadapkan pada 100 variabel, maka 100 30 2 1.268 10 x yang mana hampir tidak memungkinkan apabila dikerjakan pada komputer tercepat sekalipun.

2.6 Metode Balas