Anda di halaman 1dari 5

IntegerProgramming

(PemrogramanBulat)

Pemrograman bulat dibutuhkan ketika keputusan harus dilakukan dalam bentuk bilangan bulat
(bukanpecahanyangseringterjadibilakitagunakanmetodesimpleks).

Model matematis dari pemrograman bulat sebenarnya sama dengan model linear
programming,dengantambahanbatasanbahwavariabelnyaharusbilanganbulat.

Terdapat3macampermasalahandalampemrogramanbulat,yaitu:
1. Pemrograman bulat murni, yaitu kasus dimana semua variabel keputusan harus berupa
bilanganbulat.
2. Pemrograman bulat campuran, yaitu kasus dimana beberapa, tapi tidak semua, variabel
keputusanharusberupabilanganbulat
3. Pemrograman bulat biner, kasus dengan permasalahan khusus dimana semua variabel
keputusanharusbernilai0dan1

Banyak aplikasi kegunaan dari integer programming, misalnya dalam penghitungan


produksi sebuah perusahaan manufaktur, dimana hasil dari perhitungannya haruslah bilangan
bulat,karenaperusahaantidakdapatmemproduksiproduknyadalambentuksetengahjadi.Misal
perusahaanperkitanmobiltidakbisamerakit5,3mobilAdan2,5mobilBperhari,tetapiharuslah
bilanganbulat,denganmetodepembulatan,bisakitahasilkanmisalnya5mobilAdan2mobilB
perhari,tetapiapakahmetodepembulataniniefisien?Kitalihatpadapenjelasanselanjutnya.

Model pemrograman bulat dapat juga digunakan untuk memecahkan masalah dengan
jawabanyaatautidak(yesornodecision),untukmodelinivariabeldibatasimenjadidua,misal1
dan0,jadikeputusanyaatautidakdiwakiliolehvariabel,katakanlah,xj,menjadi:
1,untukkeputusan

0,untukkeputusan
Modeliniseringkalidisebutsebagaimodelpemrogramanbulatbiner

MetodeGrafis
ContohSoal:
Sebuah perusahaan manufaktur elektronik The Flash memproduksi 2 buah produk kipas angin
dan lampu gantung. Tiaptiap produk tersebut membutuhkan 2 tahapan produksi, yaitu
penyolderan (perakitan komponen elektronik) dan assembling (perakitan komponen non
elektronik) penyolderan membutuhkan waktu 2 jam untuk lampu dan 3 jam untuk kipas angin,
sedangkan assembling membutuhkan waktu 6 jam untuk lampu dan 5 jam untuk kipas angin.
Perusahaantersebuthanyamempunyaiwaktuuntukpenyolderan12jamdanassembling30jam
kerjaperminggunya.BilalampugantungmemberikankeuntungansebanyakRp.7000danKipas
anginmemberikankeuntunganRp.6000perunit,formulasikeputusanproduksiperusahaanThe
Flashadalahsebagaiberikut:

OperationResearch2
Integerprogramming

AjieWahyujati

Maksimisasiprofit=
Ditujukanpada:

7X1+6X2
2X1+3X212
6X1+5X230
X1,X20

X1=Lampu
X2=KipasAngin

DenganmetodelinearprogrammingdapatkitahitungbahwasolusioptimaldariTheFlashadalah
memproduksi 3 3 4 Lampu dan 1 1 2 Kipas Angin. Kita menyadari bahwa perusahaan tidak bisa
membuat dan menjual barang dalam bentuk pecahan, jadi kita memutuskan bahwa kita
menghadapipermasalahanintegerprogramming/pemrogramanbulat.

OperationResearch2
Integerprogramming

AjieWahyujati

MetodeRoundOff
Pemecahanpalingmudahdariproblemdiatasadalahdenganmelakukanpembulatan(roundoff)
darisolusioptimalkitalakukanpembulatanmenjadiX1=4danX2=2,tetapipembulatantersebut
diluarareakemungkinan produksi(lihatgrafik),jaditidakbisadilakukan.Pembulatanberikutnya
adalah ke dalam area kemungkinan produksi, yaitu X1 = 4 dan X2 = 1, produksi tersebut bisa
dilakukantetapibelumtentumerupakansolusioptimal

Lampu(X1)

KipasAngin(X2)

Profit($7X,+$6X2)

0
1
2
3
4
5
0
1
2
3
4
0
1
2
3
0
1
0

0
0
0
0
0
0
1
1
1
1
1
2
2
2
2
3
3
4

0
7
14
21
28
35
6
13
20
27
34
12
19
26
33
18
25
24

<Solusioptimalintegerprogramming

<Solusioptimalroundoff

Dari tabel diatas dapat kita ketahui bahwa solusi optimal dari permasalahan produksi tersebut
adalahX1=5danX2=0dengantotalkeuntungan35
Perhatikan bahwa batasan integer ini menyebabkan keuntungan lebih rendah daripada solusi
optimaldarilinearprogramming.Hasildariintegerprogrammingtidakakanpernahmelebihinilai
keuntunganoptimaldarisolusiLP.

OperationResearch2
Integerprogramming

AjieWahyujati

MetodeBranchandBound
DarikasusTheFlashdiatas,kitadapatkan:
Maksimisasiprofit= 7X1+6X2
Ditujukanpada:
2X1+3X212

6X1+5X230

X1,X2integer0

DenganLinearProgrammingsederhanadidapatkan:
2X1+3X2 =12
2X1+3X2=12x3 6X1+9X2=36
6X1+5X2=30x1 6X1+5X2=30
2X1+3(1.5)=12

4X2=6
2X1
=7.5

X2=1.5
X1
=3.75
Profit=7(3.75)+6(1.5)=35.25
KarenaX1danX2bukanbilanganbulat,makasolusiinitidakvalid,nilaikeuntungan35.25dijadikan
batasatasawal.
Dengan metode pembulatan kebawah, kita dapatkan X1=3 dan X2 = 1, dengan keuntungan = 27,
hasilinifeasiblekarenakeduavariabelmerupakanbilanganbulat,jadinilaikeuntungandijadikan
batasbawah.

Iterasi1
Permasalahan diatas kemudian dibagi menjadi 2 sub problem, A dan B. kita dapat melakukan
pencabangan(branch)padahasildenganvariabeltidakbulat(integer)

B
Maksimisasi:
7X1+6X2
Maksimisasi:
7X1+6X2
Ditujukanpada: 2X1+3X212
Ditujukanpada: 2X1+3X212

6X1+5X230

6X1+5X230
4

X1
3

X1
DenganmetodeLPsederhanadidapatkansolusi:
SolusioptimalsubproblemA:X1=4,X2=1.2,profit=35.2
SolusioptimalsubproblemB:X1=3,X2=2,profit=33.0

KarenasolusisubproblemBkeduavariabelnyamerupakanbilanganbulat,makakitaanggapsudah
feasible,makakitahentikancabangtersebutdannilaiprofitnyamenjadibatasbawahbaru.
SubproblemAmasihmempunyaivariabelbukanbilanganbulat,makamasihditeruskandannilai
profitnya(35.2)menjadibatasatasbaru

Iterasi2
SubproblemAkitacabangkanmenjadi2,menjadisubproblemCdanDdenganbatasantambahan
untuk subproblem C adalah X2 2 dan untuk subproblem D adalah X2 1. Logika dari
pengembangan subproblem ini adalah karena solusi optimal dari subproblem A X2 = 1.2 tidak
feasible,makasolusiintegerharuslahberadadalamwilayahX22atauX21

OperationResearch2
Integerprogramming

AjieWahyujati


D
C
Maksimisasi:
7X1+6X2
Maksimisasi:
7X1+6X2
Ditujukanpada: 2X1+3X212
Ditujukanpada: 2X1+3X212

6X1+5X230

6X1+5X230

X1

X1
4
3

X2

X2
2
1

SubproblemCtidakmempunyaisolusikarenaduabatasanawaltidakterpenuhibilaadabatasan
tambahanX14danX22,jadicabanginitidakdigunakan.
Solusi optimal dari cabang D adalah X1 = 41 6 dan X2 = 1, profit 35.16, jadi batas atas berubah
menjadi35.16.

Iterasi3
KitabuatcabangbaruEdenganbatasantambahanbatasanX14danFdenganbatasantambahan
X15
E

F
Maksimisasi:
7X1+6X2
Maksimisasi:
7X1+6X2
Ditujukanpada: 2X1+3X212
Ditujukanpada: 2X1+3X212

6X1+5X230

6X1+5X230

X1

X1
4
4

X1

X1
4
5
1
1

X2

X2
Solusi optimal E adalah X1 = 4 dan X2 = 1
Solusi optimal F adalah X1 = 5 dan X2 = 0
denganprofit34
denganprofit35

JadisolusioptimaluntukpemrogramanbulatiniadalahX1=5danX2=0denganprofit35

Tidakada

solusi
X22
feasible

A
E
X1=4
Feasible,integer

X1=4
X2=1.2
X2=1
X
4
solution
1

=35.2
X14
=34

X1=3.75
D
X21

X2=1.5
=35.25

X1=41 6
X2=1
=35.16

X13

B
X1=3
X2=2
=33

Iterasi1

OperationResearch2
Integerprogramming

X15

Iterasi2

F
X1=5
X2=0
=35

Iterasi3

Feasible,integer
solution
Optimal
Solution
AjieWahyujati

Anda mungkin juga menyukai