Anda di halaman 1dari 24

INTEGER PROGRAMMING

RISET OPERASI
PEMROGRAMAN BILANGAN
BULAT
Pemrograman bilangan bulat adalah sebuah model
penyelesaian matematis yang memungkinkan hasil
penyelesaian kasus pemrograman linear yang berupa bilangan
pecahan diubah menjadi bilangan bulat tanpa meninggalkan
optimalitas penyelesaian.

Teknik Integer programming salah satunya adalah Branch dan


Bound.
• pemograman bilangan bulat atau integer programming (IP) adalah bentuk lain
dari pemogramann linier atau linier programming (LP) di mana asumsi
divisibilitasnya melemah atau hilang sama sekali.
• Bentuk ini muncul karena dalam kenyataannya tidak semua variabel keputusan
dapat berupa bilangan pecahan.
• Misalnya, jika variabel keputusan yang dihadapi adalah jumlah produk yang
harus diproduksi untuk mencapai keuntungan maksimal, maka jawaban 1 1/2
adalah sangat tidak mungkin karena kita tidak bisa memproduksi produk
setengah-setengah.
• Dalam hal ini haruslah ditentukan apakah akan
memproduksi satu atau dua produk.
• Pendekatan pembulatan dari solusi nilai pecahan dari
pemograman linier ini tetap memenuhi semua kendala dan
menyimpang cukup jauh dari solusi bulat yang tepat.
• Integer programming merupakan teknik dari linier
programming dengan tambahan persyaratan semua atau
beberapa variabel bernilai bulat nonnegatif.
JENIS INTEGER PROGRAMMING

• Pure (all) integer programming (pemograman bilangan bulat murni).


• Apabila seluruh variabel keputusan dari permasalahan pemograman linier harus berupa
bilangan bulat (positif atau nol). Dalam hal ini asumsi divisibilitas dari pemograman liniernya
hilang sama sekali.

Minimize Z = 3 X1 + 5 X2

Subject to 2X1 + 4X2 ≥ 4

3X1 + 2X2 ≥ 5

X1, X2 ≥ 0; X1, X2 integer


• Mixed integer programming (pemograman bilangan bulat campuran).
• Apabila hanya terdapat sebagian dari variabel keputusan dari permasalahan pemograman linier
yang diharuskan berupa bilangan bulat (positif atau nol). Dalam hal ini asumsi divisibilitasnya
melemah.

Contoh:
Maximize Z = 6 X1 – 4 X2

Subject to X1 + X 2 ≤ 2

–3X1 – 2X2 ≤ 12

X1, X2 ≥ 0; X2 integer
• Zero one integer programming (pograma bilangan bulat nol-satu
• Apabila variabel keputusannya diharuskan berharga 0 (nol) atau 1 (satu).
Kondisi ini ditemukan dalam kasus di mana persoalan yang dihadapi
merupakan persoalan keputusan “ya” atau “tidak”.

Contoh:
Maximize Z = 40 X1 + 50 X2

Subject to 2X1 + 3X2 ≤ 3.000

4X1 + 2X2 ≤ 2.500

X1, X2 = 0 atau 1
pemograman Linier Relaksasi
• pemograman linier relaksasi merupakan bentuk pemograman linier yang diperoleh dengan mengabaikan pembatas
integer. Sebagai contoh adalah permasalahan pemograman bilangan bulat di bawah ini:

Minimize Z = 3 X 1 + 5 X2

Subject to 2X1 + 4X2 ≥ 4

3X1 + 2X2 ≥ 5

X1, X2 ≥ 0; X1, X2 integer

• pemograman linier relaksasi dari permasalahan di atas :

Minimize Z = 3 X 1 + 5 X2

Subject to 2X1 + 4X2 ≥ 4

3X1 + 2X2 ≥ 5

X1, X2 ≥ 0
Metode Pemecahan pemograman Bilangan Bulat

• Metode Grafis

Metode ini sama seperti metode pemecahan dalam pemograman linier dalam bentuk grafis, namun dengan
tambahan pembatas yakni variabel keputusan—sebagian atau semua—berupa bilangan bulat.

• Metode Round Off

Metode ini memberikan cara konvensional atau kolot terhadap permasalahan pemograman bilangan bulat, yakni
melakukan pembulatan (round off) terhadap solusi optimal bila dimungkinkan

• Metode Branch-and-Bound

Metode ini dilakukan dengan mengibaratkan suatu permasalahan sebagai pohon (tree), kemudian permasalahan
tersebut dibagi atau dibuat percabangan (branching) ke dalam subset yang lebih kecil
Contoh

Maximize Z = 7 X1 + 6 X2
Subject to 2X1 + 3X2 ≤ 12
6X1 + 5X2 ≤ 30
X1, X2 ≥ 0; X1, X2 integer
di mana
X1 = lampu
X2 = kipas angin
Metode Grafis
• Terlihat kalau metode grafis tidak mampu memberikan solusi yang
nyata pada permasalahan di atas, karena tidak mungkin
perusahaan membuat dan menjual barang dalam bentuk pecahan.
• Hal yang dapat dilakukan adalah menggeser titik optimal yang
masih masuk dalam daerah fisibel, yakni: titik (4,1) atau (3,2).
Titik (4,1) akan memberikan solusi sebesar 34, sedangkan titik
(3,2) akan memberikan solusi sebesar 33.
• Karena titik (4,1) memberikan solusi optimal yang lebih
maksimal, maka diperoleh solusi optimal sebesar 34, dengan X1 =
4 dan X2 = 1 (perusahaan akan mendapatkan profit sebesar $ 34
dengan memproduksi lampu sebanyak 4 buah dan kipas angin
sebanyak 1 buah).
Metode Round Off
• Ternyata metode simpleks memberikan solusi yang sama
dengan metode grafis, yakni: Z = 35,25; X1 = 3,75; X2 =
1,5.
• Dengan melakukan pembulatan, dengan mudah kita akan
mendapatkan harga X1 = 4 dan X2 = 2 dan Z = 40.
• Namun, ternyata pembulatan tersebut tidak layak dilakukan
karena titik (4,2) berada di luar daerah fisibel / DMK (lihat
grafik).
Metode Branch-and-Bound

• Dengan perhitungan menggunakan metode simpleks,


didapatkan solusi optimal Z = 35,25; X1 = 3,75; X2 = 1,5.
• Karena X1 dan X2 bukan bilangan bulat, maka solusi ini tidak
valid, dan nilai Z (profit) sebesar 35,25 dijadikan sebagai batas
atas awal (first upper bounded). Artinya, solusi optimal
nantinya tidak akan lebih besar dari 35,25.
• Kemudian dengan metode pembulatan ke bawah, kita dapatkan
X1 = 3 dan X2 = 1 dengan Z = 27 dijadikan batas bawah
(lower bounded). Artinya, solusi optimal nantinya harus di atas
27.
• Dengan kedua batasan ini, maka solusi optimal yang akan
dicari haruslah berada pada rentang 27 sampai 35,25.
Iterasi 1

Subset 1
Maximize Z = 7 X1 + 6 X2
Subject to 2X1 + 3X2 ≤ 12
6X1 + 5X2 ≤ 30
X1 ≥ 4

Subset 2
Maximize Z = 7 X1 + 6 X2
Subject to 2X1 + 3X2 ≤ 12
6X1 + 5X2 ≤ 30
X1 ≤ 3
Iterasi 1

Permasalahan
Z = 35,25
X1 = 3,75
X2 = 1,50
X1 ≥ 4 X1 ≤ 3

Subset 1 Subset 2
Z = 35,2 Z = 33
X1 = 4 X1 = 3
X2 = 1,2 X2 = 2

Calon solusi
Iterasi 2
Subset 3 Subset 4

Maximize Z = 7 X1 + 6 X2 Maximize Z = 7 X1 + 6
X2
Subject to 2X1 + 3X2 ≤ 12
Subject to 2X1 + 3X2 ≤ 12
6X1 + 5X2 ≤ 30
X1 ≥ 4 6X1 + 5X2 ≤ 30

X2 ≥ 2 X1 ≥ 4
X2 ≤ 1
Iterasi 2

Permasalahan
Z = 35,25
X1 = 3,75
X2 = 1,50
X1 ≥ 4 X1 ≤ 3

Subset 1 Subset 2
Z = 35,2 Z = 33
X1 = 4 X1 = 3
X2 = 1,2 X2 = 2

Calon solusi
X2 ≥ 2 X2 ≤ 1

Subset 3 Subset 4
Z = 35,16
Infeasible X1 = 4 1/6
X2 = 1
fathomed
Iterasi 3

Subset 5 Subset 6
Maximize Z = 7X1 + 6X2 Maximize Z = 7X1 + 6X2
Subject to 2X1+3X2 ≤ 12 Subject to 2X1+3X2 ≤ 12
6X1+5X2 ≤ 30 6X1+5X2 ≤ 30
X1 ≥ 4 X1 ≥ 4
X2 ≤ 1 X2 ≤ 1
X1 ≥ 5 X1 ≤ 4
Permasalahan
Z = 35,25
X1 = 3,75
X2 = 1,50
X1 ≥ 4 X1 ≤ 3

Subset 1 Subset 2
Z = 35,2 Z = 33
X1 = 4 X1 = 3
X2 = 1,2 X2 = 2

Calon solusi
X2 ≥ 2 X2 ≤ 1

Subset 3 Subset 4
Z = 35,16
Infeasible X1 = 4 1/6
X2 = 1
fathomed
X1 ≥ 5 X1 ≤ 4

Subset 5 Subset 6
Z = 35 Z = 34
X1 = 5 X1 = 4
X2 = 0 X2 = 1

Solusi optimal Calon Solusi


Perbandingan 3 metode

METODE NILAI VARIABEL KEPUTUASA SOLUSI KETERANGAN

GRAFIS X1 = 4 Z = 34 FESIBLE
X2 = 1
ROUND OFF X1 = 4 Z = 40 INFEASIBLE
X2 = 2
BRANCH-AND- X1 = 5 Z =35 FEASIBLE
BOUND X2 = 0
KASUS PEMROGRAMAN LINEAR DHARMIKA

Penyelesaian Dharmika

Max 2X1 + 3X2


ST
X1 + 2X2 ≤ 16
3X1 + 2X2 ≤ 30
X1, X2 ≥ 0 dan integer
TERIMA KASIH

Anda mungkin juga menyukai