STOKASTIK
PARANITA ASNUR
BILANGAN BULAT
DEFINISI DAN OPERASI
Definisi bilangan bulat
Bilangan bulat merupakan bilangan yang terdiri dari bilangan cacah dan negatifnya. Yang
termasuk dalam bilangan cacah yaitu 0,1,2,3,4,… sehingga negatif dari bilangan cacah yaitu -1,-
2,-3,-4,… dalam hal ini -0 = 0 maka tidak dimasukkan lagi secara terpisah.
Bilangan bulat dapat dituliskan tanpa menggunakan komponen desimal atau pecahan.
Himpunan semua bilangan bulat dilambangkan dengan Z atau yang berasal dari Zahlen ( bahasa
jerman untuk bilangan ).
Garis bilangan
Perkalian bilangan positif dengan bilangan Perkalian bilangan negatif dengan bilangan
negatif, hasilnya negatif. negatif, hasilnya positif.
Contoh: Contoh:
1) 4 x (-5) = (-5) + (-5) +(-5) +(-5) = -20 1) -4 x (-5) = -[-5 + (-5) + (-5) + (-5)] = -[-20] =
2) 7 x (-8) = -56 20
3) 12 x (-15) = -180 2) -7 x (-8) = 56
3) -12 x (-15) = 180
Pembagian bilangan bulat (Sifat-sifat pembagian bilangan
bulat)
Pembagian bilangan positif dengan bilangan Pembagian bilangan negatif dengan bilangan
positif, hasilnya positif positif, hasilnya negatif
Contoh Contoh:
1) 63 : 7 = 9 1) -63 : 7 = -9
2) 143 : 11 = 13 2) -120 : 10 = -12
Pembagian bilangan positif dengan bilangan Pembagian bilangan negatif dengan bilangan
negatif, hasilnya negatif negatif, hasilnya positif.
Contoh: Contoh:
1) 63 : (-9) = -7 1) -72 : (-8) = 9
2) 72 : (-6) = -12 2) -120 : (-12) = 10
Sifat Operasi Hitung Bilangan Bulat
Sifat komutatif Operasi Campuran
Sifat komutatif (pertukaran) pada penjumlahan dan Aturan dalam mengerjakan operasi campuran
perkalian.
a+b=b+a
adalah sebagai berikut.
a x b = b x a, berlaku untuk semua bilangan bulat 1 .Operasi dalam tanda kurung dikerjakan terlebih
dahulu.
2. Perkalian dan pembagian adalah setara, yang
Sifat asosiatif ditemui terlebih dahulu dikerjakan terlebih
Sifat asosiatif (pengelompokan) pada penjumlahan dan dahulu.
perkalian. 3. Penjumlahan dan pengurangan adalah setara,
(a + b) + c = a + (b+c) yang ditemui terlebih dahulu dikerjakan terlebih
(a x b) x c = a x (bxc), berlaku untuk semua bilangan bulat
dahulu.
4. Perkalian atau pembagian dikerjakan lebih
Sifat distributif (penyebaran) dahulu daripada penjumlahan atau
a x (b + c) = (a x b) + (a x c), yang berlaku untuk semua pengurangan.
bilangan bulat.
PERCABANGAN
DAN PEMBATASAN
BRANCH AND BOUND
Algoritma percabangan dan pembatasan (Branch And Bound)
Bound yang artinya menghitung node mana yang merupakan active node (E-node) dan node mana yang
merupakan dead node (D-node) dengan menggunakan syarat batas constraint (kendala)
Metode ini hanya dapat digunakan untuk masalah optimasi saja (optimazion problem).
Teknik branch and bound
1. FIFO Branch and Bound
Adalah teknik Branch and Bound yang menggunakan bantuan queue untuk perhitungan Branch and
Bound secara First In First Out
–N-Queen Problem
–Shortest Path
Fifo branch and bound
Menggunakan queue
E-node dimasukkan ke dalam queue, kemudian dibangun branch (cabang) berikutnya.
D-node tidak digunakan untuk membangun branch berikutnya.
Didapatkan Partial Space Tree yang dicari.
Lifo branch and bound
Menggunakan stack
E-node dimasukkan ke dalam stack, kemudian dibangun branch (cabang)
berikutnya.
D-node tidak digunakan untuk membangun branch berikutnya.
Didapatkan Partial Space Tree yang dicari.
Least cost branch and bound
Pada teknik FIFO dan LIFO, node dibuka sesuai urutannya
Pada LC Branch and Bound, node yang memiliki cost terendah dibuka terlebih dulu
(menjadi E-node berikutnya)
Pada sebuah node x berlaku b ≤ c(x) ≤ u
– b adalah batas bawah
– c(x) adalah cost node x
– u adalah batas atas
Jika terjadi b > u maka simpul x dapat dimatikan (dinyatakan sebagai D-node).
Contoh LC Branch and Bound yaitu Traveling Salesman Problem dapat dipecahkan
dengan Least Cost Branch and Bound
Algoritma branchand bound untuk ILP (integer linier
programing)
Misalkan diberikan suatu masalah pemrograman bilangan bulat sebagai berikut:
Maksimasi Z = cx
dengan pembatas
Ax = b
x ≥ 0
xj bilangan bulat untuk j € I
dimana I adalah himpunan variabel bilangan bulat. Langkah-langkah yang harus dilakukan untuk
menyelesaikan masalah tersebut adalah :
Langkah pertama adalah memecahkan masalah ILP sebagai LP dengan mengabaikan
pembatas bilangan bulat (bounding). Kemudian misalkan masalah LP dinyatakan sebagai LP-
1 yang mempunyai nilai optimal dari fungsi tujuan Z1.
Ø PL-1
Maksimasi Z = cx
dengan pembatas
Ax = b
x ≥ 0
Jika solusi optimal dari LP-1 mengandung beberapa variabel bilangan bulat yang mempunyai
nilai pecahan, maka solusi optimal bilangan bulat untuk ILP belum diperoleh dan Z1 menjadi
batas atas (upper bound) dari nilai maksimum Z untuk ILP.
Langkah berikutnya adalah mempartisi daerah layak dari LP-1 dengan mencabangkan (branching) salah
satu variabel bilangan bulat yang nilainya pecahan.
Misalkan variabel xj dipilih untuk dicabangkan dengan nilai pecahan βj dalam LP-1. Kemudian dibuat
dua masalah pemrograman linier baru, LP-2 dan LP-3 dengan memasukkan masing-masing pembatas
baru xj ≤ [β] dan xj ≥ [β]+1 dan selesaikan kedua permasalahan hingga diperoleh x1,x2,dan z yang baru
dari masalah tersebut :
Ø PL-2 Ø PL-3
Maksimasi Z = cx Maksimasi Z = cx
dengan pembatas dengan pembatas
Ax = b Ax = b
xj ≤ [β] xj ≥ [β]+1
x ≥ 0 x≥0
Lakukan poin dua hingga semua node dalam kondisi fathomed. Fathoming suatu
node (masalah LP) terjadi jika:
a. Solusi optimal LP merupakan bilangan bulat (tidak terdapat lagi bilangan
pecahan). dan nilainya lebih besar dari nilai solusi optimal sebelumnya yang
semua variabelnya adalah bilangan bulat (jika ada)
b. Masalah LP adalah tak layak (terjadi ketika salah satu atau kedua variabel
masih mempunyai nilai pecahan, namun z nya lebih kecil daripada z
sebelumnya)
c. Nilai optimal Z dari masalah LP tidak lebih baik daripada batas bawah (lower
bound) saat ini.
Pemograman Bilangan Bulat
(Integer Programming)
Sebuah program linear dengan persyaratan tambahan bahwa semua variabelnya merupakan
bilangan bulat
Abaikan persyaratan bilangan bulat dan selesaikan pemrograman linearnya dengan salah satu
teknik yang telah dipelajari sebelumnya (misalkan dengan metoda grafik). Jika solusi
optimalnya berbentuk bilangan bulat maka pemecahan tersebut juga merupakan pemecahan
optimal untuk program bilangan bulat
2. Aproksimasi kedua
Jika solusi optimal dengan teknik sebelumnya tidak bulat (keadaan ini sering terjadi) maka
komponen-komponen dari aproksimasi pertama dapat dibulatkan ke bilangan bulat terdekat
yang layak sehingga diperoleh aproksimasi kedua. Prosedur ini lebih efektif apabila
aproksaimasinya mengandung bilangan besar
Langkah/proses :
Jika aproksimasi pertama masih mengandung variabel yang tidak bulat, misalnya X*j maka i1 <
< i2 dimana i1 dan i2 adalah dua bilangan bulat tak negatif yang berturutan.
Buatlah 2 program (model) bilangan bulat yang baru dengan cara memperluas program (model)
sebelumnya dengan kendala xj ≤ i1 atau kendala Xj ≥ i2. Proses ini disebut pencabangan
(Branching)
Contoh 1
Diketahui model matematis sbb:
Maksimumkan : Z = 10X1 + X2
dengan kendala : 2 X1 + 5 X2 ≤ 11
dan : x1 dan X2 bulat tak negatif
Z* = 50
0 4
x2 ≤
Z* = 50.2 (5, 0)
5 2 x2 ≥ 1 Z* = 30
Z* = 55 x1 ≤
(5, 0.2) 5
1
x1 (3, 1)
≥ 6 Tidak Layak
(5.5 , 0)
3
Latihan
Maksimumkan z = 3X1 + 4 X2
Dengan kendala 2X1 + X2 ≤ 6
2X1 + 3X2 ≤ 9
Dan X1 dab X2 bulat tak negatif
Catatan:
Pemilik menetapkan shift per hari untuk 4 workstation seperti dibawah ini :
Shift 1 (Workstation 1) : pukul 08.00-09.30
Shift 2 (Workstation 2) : pukul 09.30-13.00
Shift 3 (Workstation 3) : pukul 13.00-16.00
Shift 4 (Workstation 4) : pukul 16.00-18.00
Kapasitas produksi untuk kemeja dan kaos per harinya dalam
home-industry tersebut adalah 200 buah dan 120 buah. Produk
kemeja dan kaos tersebut memiliki waktu proses per produk
yang berbeda-beda disetiap workstation seperti yang tertera
pada Tabel 3.1
Pemilik menetapkan harga jual kemeja sebesar
Rp.35000 dan kaos sebesar Rp.40000. Pemilik
akan mengambil profit sebesar 45% dari harga jual
kemeja dan 50% dari harga jual kaos, sehingga
keuntungan yang didapat sebesar Rp.15750 untuk
satu kemeja dan sebesar Rp.20000 untuk satu
kaos. Berapa kemeja dan kaos yang harus
diproduksi setiap harinya agar home-industry
tekstil tersebut memperoleh keuntungan yang
optimal?
Model matematika
Definisi :
X1 = Jumlah Produksi Kemeja
X2 = Jumlah Produksi kaos
Fungsi Tujuan :
Memaksimasikan Z = 15750 X1 + 20000 X2
Pembatas :
0.45 X1 + 0.5 X2 ≤ 90
1.05 X1 + 0.45 X2 ≤ 210
0.9 X1 + 0.45 X2 ≤ 180
0.6 X1 + 0.5 X2 ≤ 120
X1 ≤ 200
X2 ≤ 120
X1 , X2 ≥ 0