download

Matakuliah
Tahun
: T0034 / Perancangan & Analisis Algoritma
: 2008
Pertemuan 24
BRANCH AND BOUND (2)
TSP DENGAN B&B
• Langkah-langkah penyelesaian
– Gambarkan problem dengan weigthed digraph G={V,E}
– C(i,j) = nilai (cost) pada edge <i,j>, dimana C(i,j)= ∞ , jika tidak ada
edge antara i dan j.
– Dengan definisi nilai (cost) di atas, bangun Cost Matrix dari TSP.
– Lakukan reduksi terhadap Cost Matrix, didapat Reduced Cost
Matrix.
– Gunakan fungsi pembatas (bound), untuk membangun Search Tree
dari Reduced Cost Matrix.
– Dan seterusnya hingga didapat set solusi yang diinginkan.
[buku utama, bab 9.4]
Bina Nusantara
CONTOH KASUS
[buku utama, ilustrasi 9.19]
Kasus yang sama pada pertemuan 16 digunakan kembali
untuk diselesaikan dengan Branch and Bound
Bina Nusantara
REDUCED COST MATRIX
• Untuk setiap baris, cari nilai terkecil, nyatakan
dengan c(i). Kurangi semua nilai di baris itu
dengan c(i).
• Untuk setiap kolom, cari nilai terkecil, nyatakan
dengan c(j). Kurangi semua nilai di kolom itu
dengan c(j).
• Jumlahkan total semua nilai c(i) dan c(j) menjadi
nilai R (total reduction). Nilai ini adalah total nilai
yang berhasil direduksi / dikurangi.
Bina Nusantara
PERHITUNGAN RCM
[buku utama, ilustrasi 9.20]
Bina Nusantara
SEARCH TREE TSP DENGAN B&B
• Sifat Search Tree :
– 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 node x dapat dimatikan
(dinyatakan sebagai D-node)
Bina Nusantara
LANGKAH MEMBANGUN SEARCH TREE
1. Pada saat Space Tree dimulai, nilai b untuk root node adalah nilai R untuk RCM root node. Nilai u
adalah ∞.
2. Setiap kali E-node yang baru dibuka, akan dihitung RCM untuk node tersebut.
3. Cara membuat RCM baru untuk node (i,j):
–
–
–
–
–
–
RCM baru dibuat berdasarkan RCM dari parent node
Beri warna merah pada elemen di posisi (i,j)
Ubah seluruh nilai di baris i menjadi ∞, beri warna biru
Ubah seluruh nilai di kolom j menjadi ∞, beri warna biru
Ubah elemen di posisi (j,1) menjadi ∞, beri warna ungu
Lakukan reduksi matriks, jumlahkan seluruh nilai yang berhasil direduksi menjadi nilai R
4. Dengan dihitungnya RCM, maka bisa dihitung nilai b untuk root tersebut dengan rumus :
– b(i,j) = b(parent) + c(i,j) of parent RCM + R(new RCM)
– c(i,j) adalah nilai elemen (i,j) dari parent RCM (lokasinya ditandai dengan warna hijau di new RCM)
5. Dari semua E-node yang telah dihitung RCM-nya, dipilih yang memiliki cost b paling kecil (Least Cost
B&B). Node yang dipilih akan dibuka dan menghasilkan E-node baru. Proses ini merupakan proses
Branch.
6. Ketika E-node terbawah dibuka (diitemukan kandidat solusi), maka nilai u diset menjadi nilai b dari node
terbawah. Kemudian diperiksa apakah nilai b terkecil berikutnya dari seluruh tree ada yang bernilai lebih
kecil dari u. Semua E-node yang memiliki nilai b > u dinyatakan sebagai D-node. Proses pembuatan
Space Tree dilanjutkan dari E-node yang tersisa. Inilah yang dinamakan proses Bound.
7. Jika tidak ada, maka jalur dari root menuju E-node terakhir merupakan solusi yang dicari. Cost b node
terbawah adalah panjang lintasan TSP yang dicari.
• Baca rincian ilustrasi 9.21 hingga ilustrasi 9.29 untuk memahami penyelesaian Traveling Salesman
Problem dengan teknik Branch and Bound
Bina Nusantara
TSP DENGAN B&B (1)
[buku utama, ilustrasi 9.23]
Bina Nusantara
TSP DENGAN B&B (2)
[buku utama, ilustrasi 9.25]
Bina Nusantara
TSP DENGAN B&B (3)
[buku utama, ilustrasi 9.27]
Bina Nusantara
TSP DENGAN B&B (4)
[buku utama, ilustrasi 9.29]
Bina Nusantara
LATIHAN
• Diketahui Cost Matrix sebuah Graph TSP sebagai
berikut :   17  8 12
10  15 11

 8 16  9

12 19 10 
15 7 19 
14
10

13
 
• Gambarkan Graph TSP nya !
• Temukan lintasan TSP terpendek dengan
menggunakan Branch and Bound !
Bina Nusantara
REVIEW
• Apa yang sudah dipahami?
• Apa yang akan dibahas selanjutnya?
Bina Nusantara