Bab 3 PEMBAHASAN
3.1 Program Integer.
Program integer atau dikenal dalam bahasa Inggris dengan integer programming merupakan bentuk khusus atau variasi dari program linier atau program nonlinier, di
mana satu atau lebih dari peubah – peubahnya dalam vektor penyelesaiannya memiliki nilai – nilai bukan pecahan atau angka bulat yang disebut integer
Suatu peubah disebut integer, jika peubah tersebut hanya diperkenankan memiliki nilai – nilai integer yang terletak di antara batas yang tetap fixed bounds.
Misalnya, jika peubah X hanya dapat memiliki nilai – nilai -1, 0, 1, dan 2; maka
disebut nilai – nilai integer yang terletak di antara selang -1 dan +2.
3.2 Model Dasar
Model umum dari suatu program integer adalah sebagai berikut : Optimumkan maksimumkan atau minimumkan
j n
i j
X C
Z
∑
=
=
1
3.1 Syarat ikatan :
j n
i ij
X a
∑
= 1
≤ atau
i
b ≥
3.2 Dan
≥
j
X m
i ,
, 2
, 1
= 3.4
j
X integer n
j ,
, 2
, 1
= 3.5
Universitas Sumatera Utara
3.3 Percabangan Branching
Jika aproksimasi pertama mengandung variabel yang tidak bulat, katakanlah
j
x ,
maka
2 1
i x
i
j
, di mana
1
i dan
2
i adalah dua bilangan bulat tak negatif yang berturutan. Dari sini kemudian dibentuk dua program bilangan bulat yang baru dengan
cara memperluas program bilangan bulat semula dengan kendala
1
i x
j
≤ atau kendala
2
i x
j
≥ . Proses ini disebut pencabangan branching, yang mempunyai efek
mempersempit daerah layak sedemikian rupa sehingga mengeliminasi pemecahan bilangan tak bulat bagi
j
x dari tinjauan selanjutnya tetapi masih tetap mempertahankan semua pemecahan bilangan bulat yang mungkin terhadap persoalan
yang semula.
3.4 Pembatasan Bounding
Anggaplah bahwa fungsi obyektifnya akan dimaksimumkan. Proses pencabangan akan terus dilakukan hingga diperoleh sebuah pendekatan pertama yang bulat yang mana
adalah suatu pemecahan bilangan bulat. Nilai dari obyektif bagi pemecahan bilangan bulat yang pertama ini menjadi suatu batas terbawah bagi persoalan ini dan semua
program yang aproksimasi pertamanya, bulat atau pun tidak, menghasilakan nilai – nilai dari fungsi obyektif yang lebih kecil daripada batas terbawah ini diabaikan.
Pencabangan ini terus berlanjut dari program – program yang memiliki aproksimasi pertama tak bulat yang memberikan nilai – nilai fungsi obyektif yang
lebih besar daripada batas terbawah. Jika dalam proses percabangan ini, ditemukan sebuah pemecahan bilangan bulat baru, yang nilai fungsi obyektifnya lebih besar
daripada batas terbawah yang ditinjau, maka nilai dari fungsi obyektif itu menjadi batas terbawah yang baru. Program yang menghasilkan batas terbawah yang lama
selanjutnya diabaikan, begitu pula program – program yang pendekatan – pendekatan pertamanya memberikan nilai – nilai fungsi obyektif yang lebih kecil daripada batas
terbawah yang baru ini. Proses pencabangan ini terus berlanjut hingga tidak ada bagi program – program dengan pendekatan pertama tak-bulat yang ditinjau. Pada tahap
ini, pemecahan batas terbawahnya adalah pemecahan optimal bagi program bilangan
Universitas Sumatera Utara
bulat yang sama. Jika fungsi obyektifnya hendak diminimumkan, maka prosedurnya tetap sama, kecuali bahwa yang digunakan adalah batas teratas upper bounds.
Contoh 3.1:
Maksimumkan :
2 1
4 3
x x
z +
= Kendala
6 2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
1
x dan
2
x bulat tak negatif Dengan
mengabaikan persyaratan
bilangan bulat,
diperoleh 5
, 1
, 25
, 2
2 1
= =
x x
dengan 75
, 12
= z
sebagai pemecahan program linier yang bersangkutan. Karena
2
x lebih jauh menyimpang dibandingkan dengan
1
x , maka yang akan digunakan untuk membentuk cabang – cabang adalah
1
2
≤ x
dan 2
2
≥ x
. Program 2
Program 3 Maksimumkan:
2 1
4 3
x x
z +
= maksimumkan:
2 1
4 3
x x
z +
= Kendala:
6 2
2 1
≤ +
x x
kendala: 6
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
1
2
≤ x
2
2
≥ x
1
x dan
2
x bulat tak negatif
1
x dan
2
x bulat tak negatif Aproksimasi pertama bagi program 2 adalah
5 ,
2
1
= x
, 1
2
= x
dengan 5
, 11
= z
. Aproksimasi pertama program 3 adalah 5
, 1
1
= x
, 2
2
= x
dengan 5
, 12
= z
. Karena program 2 dan 3 memiliki aproksimasi pertama yang tak-bulat, maka dapat dibentuk percabangan dari salah satunya. Pilih program 3 karena memiliki
Universitas Sumatera Utara
harga fungsi obyektif yang terbesar mendekati optimal. Disini 2
1
1
x sehingga
program – program yang barunya adalah: Program 4
Program 5 Maksimumkan:
2 1
4 3
x x
z +
= maksimumkan:
2 1
4 3
x x
z +
= Kendala:
6 2
2 1
≤ +
x x
kendala: 6
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
2
2
≥ x
2
2
≥ x
1
1
≤ x
2
1
≥ x
1
x dan
2
x bulat tak negatif
1
x dan
2
x bulat tak negatif Ternyata tidak ada pemecahan bagi program 5, sedangkan program 4 adalah
1
1
= x
, 3
7
2
= x
, dengan 33
, 12
= z
. Percabangan dapat dilanjutkan dari program 2 ataupun program 4. Dipilih program 4 karena memiliki nilai z yang terbesar. Disini
3 2
2
x maka program yang barunya adalah
Program 6 program 7
Maksimumkan:
2 1
4 3
x x
z +
= maksimumkan:
2 1
4 3
x x
z +
= Kendala:
6 2
2 1
≤ +
x x
kendala: 6
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
9 3
2
2 1
≤ +
x x
2
2
≥ x
2
2
≥ x
1
1
≤ x
, 2
2
≤ x
1
1
≤ x
, 3
2
≥ x
1
x dan
2
x bulat tak negatif
1
x dan
2
x bulat tak negatif
Universitas Sumatera Utara
Pemecahan bagi program 6 adalah 1
1
= x
, 2
2
= x
dengan 11
= z
. Karena ini berbentuk pemecahan bilangan bulat, maka z = 11 menjadi suatu batas terbawah bagi
persoalan ini. Dengan demikian, setiap program yang menghasilkan suatu nilai-z yang lebih kecil daripada 11 akan dikesampingkan. Pendekatan pertama bagi program 7
adalah
1
= x
, 3
2
= x
dengan 12
= z
. Karena hasil ini berbentuk pemecahan bilangan bulat dengan nilai-z yang lebih besar daripada batas terbawah sebelumnya,
maka 12
= z
menjadi batas terbawah baru, dan program 6 dikesampingkan. Dengan demikian, cabang ini memberikan pemecahan optimal bagi program 1 :
1
= x
, 3
2
= x
dengan 12
= z
.
3.5 Fuzzy integer linier programming