2.3 Metode Penyelesaian Masalah Program Bilangan Bulat
Dapat kita lihat bahwasanya cukup untuk mendapatkan solusi bulat dari masalah program linier dengan menggunakan metode simpleks biasa dan kemudian
membulatkan nilai pecahan pada solusi optimum. Akan tetapi bukan tugas mudah untuk membulatkan nilai pecahan dalam variabel basis yang menjamin tetap
memenuhi semua kendala dan tidak menyimpang cukup jauh dari solusi bulat yang tepat. Akibatnya diperlukan prosedur yang sistematis untuk mendapatkan
solusi optimum yang berupa bilangan bulat terhadap suatu masalah. Beberapa metode yang dapat digunakan untuk menyelesaikan masalah program bilangan
bulat antara lain Syahputra, 2012: 1.
Metode Pendekatan Grafik 2.
Metode Cutting Plane 3.
Metode Branch and Bound
2.3.1 Metode Pendekatan Grafik
Masalah program bilangan bulat yang melibatkan dua variabel dapat diselesaikan dengan metode pendekatan grafik. Metode ini sama dengan metode grafik yang
biasa digunakan dalam program linier. Metode grafik relatif lebih mudah untuk menyelesaikan masalah program bilangan bulat dengan dua variabel yaitu dengan
menggambar grafik di atas kertas grafik kemudian menggambarkan sekumpulan
titik-titik bilangan bulat dalam ruang solusi layak Syahputra, 2012.
Dalam hal ini ada masalah berikut yang akan diselesaikan dengan pendekatan grafik sebagai berikut:
contoh 2.1: carilah nilai bilangan bulat
dan dari ketentuan berikut Wolff, 1985:
maks: = 3 + 20
kendala: + 8
≤ 32 2 +
≤ 14 ,
≥ 0 adalah bilangan bulat
Universitas Sumatera Utara
Model ini serupa dengan model program linier biasa. Perbedaannya terletak pada kendala terakhir yang menginginkan solusi bernilai bilangan bulat
positif, solusi grafik untuk masalah ini ditunjukkan pada gambar di bawah:
Gambar 2.1 Penyelesaian dengan Pendekatan Grafik
Solusi optimum masalah program linier di atas adalah = 5,3333,
= 3,3333 dan = 82,6666. Untuk mencari solusi optimum yang bernilai bilangan bulat pada masalah ini, garis Z digeser secara sejajar dari titik yang
menunjukkan solusi optimum menuju titik asal. Solusi optimum berupa bilangan bulat adalah titik bilangan bulat pertama yang bersinggungan dengan garis Z yaitu
= 0, = 4 dan = 80.
2.3.2 Metode Cutting Plane
Metode cutting plane merupakan metode yang digunakan untuk menyelesaikan program linier bilangan bulat, baik bilangan bulat murni maupun campuran
dengan penambahan batasan baru yang disebut gomory. Batasan gomory diberikan jika nilai dari variabel keputusan belum bulat bernilai pecahan.
Batasan-batasan tersebut secara efektif akan menyingkirkan beberapa ruang penyelesaian yang tidak berisi titik bilangan bulat yang layak, tetapi tidak pernah
menyingkirkan satupun titik bilangan bulat yang layak Taha, 1996.
Universitas Sumatera Utara
Metode cutting plane dikembangkan untuk menemukan solusi optimum bagi program bilangan bulat. Metode ini dilakukan dengan menambahkan suatu
kendala yang dinamakan kendala gomory. Penambahan kendala gomory dilakukan pada tabel optimal sehingga dapat mempersingkat perhitungan Siagian, 2006.
Metode cutting plane digunakan untuk permasalahan yang variabel keputusannya harus bulat. Program linier tidak efektif untuk menyelesaikan
permasalahan tersebut sehingga dikembangkan metode cutting plane yang lebih efektif dan memberikan hasil yang lebih baik. Langkah-langkah prosedur gomory
diringkas seperti berikut: 1.
Selesaikan masalah program bilangan bulat dengan menggunakan metode simpleks. Jika masalah sederhana, gomory dapat diselesaikan dengan
pendekatan grafik, sehingga pendekatan gomory kurang efisien. 2.
Periksa solusi optimum. Jika semua variabel basis memiliki nilai bilangan bulat, solusi optimum yang berupa bilangan bulat telah diperoleh dan proses
solusi telah berakhir. Jika satu atau lebih variabel basis masih memiliki nilai pecah, teruskan ke tahap 3.
3. Buatlah suatu batasan gomory dan cari solusi optimum melalui prosedur dual
simpleks. Kembali ke tahap 2 Taha, 1996.
Tabel 2.2 Solusi Optimum Masalah Program Linier
... ...
... ...
... Solusi
Variabel Basis
Harga Basis
... , ,
... ,
,
-
... ...
... ...
... ,
-
... ...
... ...
... ⋮
⋮ ⋮
⋮ ⋮
⋮ ⋮
⋮ ⋮
⋮ ⋮
,
-
... ...
... ...
... − 0
... ...
... ...
... ...
... ...
-
di mana: = variabel basis
, = variabel nonbasis
Universitas Sumatera Utara
Perhatikan persamaan ke A di mana variabel diasumsikan bernilai tidak
bilangan bulat sebagai berikut: = −
, di mana:
= variabel basis , = variabel nonbasis
= koefisien dari variabel keputusan dalam fungsi kendala yang berupa noninteger
= sumber daya yang tersedia dalam fungsi kendala yang berupa noninteger
kemudian pisahkan dan
menjadi bagian yang bulat dan bagian pecah non negatif seperti berikut:
=
B
C + sehingga
= −
B
C, di mana
0 ≤ ≤ 1 =
DB
EEEE + sehingga
= −
DB
EEEE, di mana
0 ≤ ≤ 1 dapat kita lihat contoh berikut:
B
C
DB
EEEE 3
2 1
1 2
− 7
3 −3
2 3
7 8
7 8
−1 −1
7 3
2 1
3 −
2 5
−1 3
5 sehingga adapun kendala gomory yang diinginkan sebagai berikut:
,
G
− , = −
di mana: ,
G
= slack gomory variable = bagian pecahan dari
= bagian pecahan dari , = variabel nonbasis
Universitas Sumatera Utara
Pada umumnya, persamaan kendala yang berhubungan dengan solusi pecah dipilih untuk menghasilkan suatu kendala gomory. Namun, sebagai aturan
main biasanya dipilih persamaan yang memiliki maksimum. Adapun tabel baru
setelah penambahan kendala gomory disajikan pada tabel berikut:
Tabel 2.3 Penambahan Kendala Gomory
... ... ...
... ...
... Solusi
Variabel Basis
Harga Basis
... ,
, ...
,
,
8A
,
-
... ... ...
... ...
,
-
... ... ...
... ...
⋮ ⋮
⋮ ⋮
⋮ ⋮ ⋮
⋮ ⋮
⋮ ⋮
,
-
... ... ...
... ...
,
8A
… 0 − −
... −
1 −
− 0 ...
... ... ...
... ...
... ...
...
-
Karena diperoleh solusi primal optimum tetapi tidak layak maka digunakan metode dual simpleks. Proses pembentukan kendala gomory berakhir
jika solusi baru semua berupa bilangan bulat. Jika tidak, suatu kendala gomory baru dibuat lagi dari tabel yang dihasilkan dan metode dual simpleks digunakan
lagi untuk mengatasi ketidaklayakan. Jika pada setiap iterasi metode dual simpleks menunjukkan bahwa tidak ada solusi layak, berarti masalah itu tidak
memiliki solusi integer yang layak. Metode cutting plane ini mempunyai dua kelemahan sebagai berikut:
1. Kesalahan pembulatan yang muncul dalam perhitungan otomatis akan
mendistorsi data semula terutama dengan bertambahnya ukuran masalah. 2.
Solusi masalah tetap tidak layak, artinya tidak ada solusi integer yang dapat diperoleh sampai solusi integer optimal dicapai. Ini berarti bahwa tidak ada
solusi integer yang baik jika perhitungan dihentikan sebelum mencapai solusi integer yang optimal Taha, 1996.
Kelemahan pertama dapat diatasi dengan penggunaan integer murni. Metode ini dimulai dengan tabel awal yang semuanya terdiri dari integer yang
Universitas Sumatera Utara
sesuai dengan metode dual simpleks. Kemudian dilakukan penambahan gomory sehingga penambahannya ke tabel akan mempertahankan sifat integer dari semua
koefisien. Dan kelemahan kedua dapat menggunakan metode cutting plane yang dimulai dengan integer dan layak, tetapi tidak optimal. Iterasi yang berlanjut tetap
layak dan integer sampai solusi optimum dicapai Taha, 1996. Dalam hal ini ada masalah diselesaikan dengan metode cutting plane
sebagai berikut: contoh 2.2:
carilah nilai bilangan bulat dan
dari ketentuan berikut Syahputra,2012: maks:
= 7 + 9 kendala:
− + 3 ≤ 6
7 + ≤ 35
, ≥ 0 adalah bilangan bulat
dari permasalahan di atas maka diperoleh solusi optimumnya sebagai berikut berikut:
Tabel 2.4 Solusi Optimum Contoh 2.2
7 9
Solusi Variabel Basis
Harga Basis ,
, 9
1 0,3282
0,0455 3,5000
7 1
-0,0455 0,1364
4,5000 − 0
2,5455 1,3636
63 sehingga dapat diperoleh solusi optimum sebagai berikut:
= 4,5000, = 3,5000 dan = 63
karena solusi tidak diperoleh bilangan bulat, suatu kendala gomory ditambahkan pada tabel tersebut. Kedua persamaan
dan pada masalah ini memiliki nilai
yang sama yaitu = = 0,5000, sehingga salah satu dapat digunakan,
misalkan yang digunakan persamaan , maka dapat diperoleh sebagai berikut:
+ 0,3282, + 0,0455, = 3,5000
kemudian kita pisahkan koefisien yang bernilai pecahan menjadi 2 bagian yaitu yang bernilai bilangan bulat dan bilangan pecahan
+ 0 + 0,3282 , + 0 + 0,0455 , = 3 + 0,5000
Universitas Sumatera Utara
sehingga kendala gomory menjadi
,
81
− 0,3282, − 0,0455, = −0,5000
sehingga dapat dibentuk tabel baru setelah penambahan kendala gomory sebagai berikut:
Tabel 2.5 Penambahan Kendala Gomory Pertama
7 9
Solusi Variabel
Basis Harga
Basis ,
,
,
81
9 1
0,3282 0,0455
3,5000 7
1 -0,0455
0,1364 4,5000
,
81
-0,3282 -0,0455 1
-0,5000 − 0
2,5455 1,3636
63 kemudian permasalahan di atas setelah
penambahan kendala gomory diselesaikan
dengan memakai metode dual simpleks, maka diperoleh hasilnya sebagai berikut:
Tabel 2.6 Solusi Optimum dengan Penambahan Kendala Gomory Pertama
7 9
Solusi Variabel
Basis Harga
Basis ,
,
,
81
9 1
1 3
7 1
0,1428 -0,1428
4,5714
,
81
1 0,1428
3,1428 1,5714
− 0 1
8 59
sehingga dapat diperoleh solusi optimum sebagai berikut: = 4,5714,
= 1,5714 dan = 55 karena solusi tidak diperoleh bilangan bulat, suatu kendala gomory ditambahkan
kembali pada tabel tersebut. Dapat dilihat bahwa persamaan memiliki
= 0,5714, sehingga persamaan dapat diperoleh sebagai berikut:
+ 0,1428, − 0,1428,
G
= 4,5714 kemudian kita pisahkan koefisien yang bernilai pecahan menjadi 2 bagian yaitu
yang bernilai bilangan bulat dan bilangan pecahan
Universitas Sumatera Utara
+ 0 + 0,1428 , − 0 + 0,1428 ,
G
= 4 + 0,5714 sehingga kendala gomory menjadi
,
82
− 0,1428, − 0,1428
,
81
= −0,5714 sehingga dapat dibentuk tabel baru setelah penambahan kendala gomory yang
baru sebagai berikut:
Tabel 2.7 Penambahan kendala Gomory Kedua
7 9
Solusi Variabel
Basis Harga
Basis ,
,
,
81
,
82
9 1
1 3
7 1
0,1428 -0,1428
4,5714
I
81
1 0,1428
3,1428 1,5714
I
82
-0,1428 -0,1428
1 -0,5714
− 0 1
8 59
kemudian permasalahan di atas setelah
penambahan kendala gomory yang baru diselesaikan
dengan memakai metode dual simpleks, maka diperoleh hasilnya sebagai berikut:
Tabel 2.8 Solusi Optimum dengan Penambahan Kendala Gomory Kedua
7 9
Solusi Variabel
Basis Harga
Basis ,
,
,
81
,
82
9 1
1 3
7 1
-1 1
4
,
81
1 -4
1 1
,
82
1 6
-7 4
− 0 2
7 55
sehingga dapat diperoleh solusi optimum dengan bilangan bulat sebagai berikut: = 4,
= 3 dan = 55
Universitas Sumatera Utara
2.3.3 Metode Branch and Bound