170 likes | 611 Views
Pertemuan 24 BRANCH AND BOUND (2). Matakuliah : T0034 / Perancangan & Analisis Algoritma Tahun : 2008. 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.
E N D
Pertemuan 24BRANCH AND BOUND (2) Matakuliah : T0034 / Perancangan & Analisis Algoritma Tahun : 2008
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]
CONTOH KASUS [buku utama, ilustrasi 9.19] Kasus yang sama pada pertemuan 16 digunakan kembali untuk diselesaikan dengan Branch and Bound
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.
PERHITUNGAN RCM [buku utama, ilustrasi 9.20]
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)
LANGKAH MEMBANGUN SEARCH TREE • Pada saat Space Tree dimulai, nilai b untuk root node adalah nilai R untuk RCM root node. Nilai u adalah ∞. • Setiap kali E-node yang baru dibuka, akan dihitung RCM untuk node tersebut. • 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 • 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) • 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. • 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. • 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
TSP DENGAN B&B (1) [buku utama, ilustrasi 9.23]
TSP DENGAN B&B (2) [buku utama, ilustrasi 9.25]
TSP DENGAN B&B (3) [buku utama, ilustrasi 9.27]
TSP DENGAN B&B (4) [buku utama, ilustrasi 9.29]
LATIHAN • Diketahui Cost Matrix sebuah Graph TSP sebagai berikut : • Gambarkan Graph TSP nya ! • Temukan lintasan TSP terpendek dengan menggunakan Branch and Bound !
REVIEW • Apa yang sudah dipahami? • Apa yang akan dibahas selanjutnya?