branch and bound algorithms - simulation...
TRANSCRIPT
![Page 1: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/1.jpg)
1
Branch and Bound Algorithms
![Page 2: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/2.jpg)
2
Branch and Bound
• Branch and bound adalah algoritma yang berbasis pada BFS untuk mencari solusi persoalan secara lebih efisien dengan membentuk pohon ruang status (state-space tree).
• Basis penerapan Branch and Bound adalah untuk persoalan optimasi. Terminologi yang digunakan dalam persoalan optimasi:– Feasible solution point-point dalam ruang pencarian yang
memenuhi constraint
– Optimal solution feasible solution yang memenuhi fungsi objektif.
![Page 3: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/3.jpg)
3
Branch and bound
Dibandingkan dengan backtracking, branch and bound membutuhkan dua properti tambahan:
1. Untuk setiap node pada pohon ruang status, tambahkan bound value.
2. Nilai terbaik saat ini dari solusi yang diperoleh.
![Page 4: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/4.jpg)
4
Application1: Assignment Problem
• Memberikan n jobs kepada n people sedemikian rupa sehingga meminimumkan cost.
• Assignment problem dinyatakan dalam matriks cost n x n, perhatikan cost matrix di bawah ini.
• Hitung lower bound (lb): 2+3+1+4=10 (lb untuk root)
![Page 5: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/5.jpg)
5
Application1: Assignment Problem
Gambar berikut menunjukkan level 0 dan 1 dari pohon ruang statrus.
![Page 6: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/6.jpg)
6
Application1: Assignment Problem
Gambar berikut menunjukkan level 0,1, dan 2 dari pohon ruang statrus.
![Page 7: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/7.jpg)
7
Application1: Assignment Problem
![Page 8: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/8.jpg)
8
Application2: Knapsack Problem
• Diberikan n items yang diketahui weights wi
dan profit vi, i=1,2,…,n, dan kapasitas knapsack W.
• Langkah pertama mengurutkan density vi / wi
secara descending:
v1/w1≥v2/w2≥…≥vn/wn
• Langkah kedua, menghitung upper bound (ub):
ub = v + (W-w)(vi+1/wi+1)
![Page 9: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/9.jpg)
9
Application2: Knapsack Problem
• Perhatikan tabel knapsack berikut ini. Kapasitas
knapsack W adalah 10.
![Page 10: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/10.jpg)
10
Application2: Knapsack Problem
• Setiap level dari pohon ruang status
menyatakan subsets dari n items.
• Path dari root memiliki dua cabang,
masing-masing menyatakan:
– Cabang kiri inclusion item
– Cabang kanan exclusion item
• Hitung ub root 0 + 10.10 = 100
![Page 11: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/11.jpg)
11
Application2: Knapsack Problem
![Page 12: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/12.jpg)
12
Application3: TSP
• Tentukan lb dengan panjang l dari
setiap tour dengan formula:
– Untuk setiap kota i, 1≤i≤n, hitung hasil
penjumlahan jarak si dari kota i ke dua kota
terdekatnya.
– Lakukan penjumlahan tersebut sebanyak
n, kemudian hasilnya bagi dengan 2.
Lb = s/2
![Page 13: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/13.jpg)
13
Application3: TSP Problem
• Perhatikan graf berbobot berikut ini
![Page 14: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/14.jpg)
14
Application3: TSP Problem
• Sebagai contoh, lb awal menghasilkan
Lb = [(1+3)+(3+6)+(1+2)+(3+4)+(2+3)]/2 =
14
• Persamaan lb tersebut dimodifikasi
untuk edge(a,d) dan (d,a) atau tour
lainnya:
[(1+5)+(3+6)+(1+2)+(3+5)+(2+3)]/2 = 16
![Page 15: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/15.jpg)
15
Application3: TSP Problem
![Page 16: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/16.jpg)
16
Exercises
• Terapkan algoritma branch and bound untuk
persoalan knapsack berikut ini.
![Page 17: Branch and Bound Algorithms - Simulation Laboratoryphg-simulation-laboratory.com/wp-content/uploads/2016/04/M17Branch... · • Branch and bound adalah algoritma yang berbasis pada](https://reader034.vdocuments.site/reader034/viewer/2022052206/5c8c91d009d3f2a66a8d2d7a/html5/thumbnails/17.jpg)
17
Exercises
• Terapkan algoritma branch and bound untuk
persoalan TSP dari graph berikut ini.