Pemanfaatan
Pemanfaatan
Algoritma
Algoritma
Hybrid
Hybrid
Ant Colony Optimization
Ant Colony Optimization
dalam
dalam
Menyelesaikan
Menyelesaikan
Permasalahan
Permasalahan
Capacitated
Capacitated
Minimum Spanning Tree
Minimum Spanning Tree
Tamam
Pendahuluan
Pendahuluan
Latar Belakang
Latar
Belakang
Tujuan
Tujuan
Dan
Dan
Manfaat
Manfaat
Rumusan
Rumusan
Masalah
Masalah
Batasan
Batasan
Masalah
Masalah
Pendahuluan
Latar
Latar
Belakang
Belakang
Latar
Latar
Belakang
Belakang
Tujuan
Tujuan
Rumusan
Rumusan
Masalah
Masalah
Batasan
Batasan
Masalah
Masalah
PendahuluanPendahuluan >< Tinjauan>< Tinjauan PustakaPustaka >< >< DesainDesain Sistem >< Sistem >< UjiUji CobaCoba
Masalah Capacitated minimum spanning tree Masalah Capacitated minimum spanning tree (CMST) sangat fundamental untuk desain (CMST) sangat fundamental untuk desain jaringan komunikasi terpusat dan telah jaringan komunikasi terpusat dan telah
dipelajari secara meluas diberbagai negara. dipelajari secara meluas diberbagai negara.
Tujuannya adalah untuk menemukan biaya Tujuannya adalah untuk menemukan biaya minimum dalam sebuah himpunan node yang minimum dalam sebuah himpunan node yang merentang dan sesuai dengan himpunan
merentang dan sesuai dengan himpunan batasan yang berasosiasi dengan semua batasan yang berasosiasi dengan semua garis dalam jaringan.
garis dalam jaringan.
Pada tugas akhir ini, disuguhkan algoritma Pada tugas akhir ini, disuguhkan algoritma baru dalam menyelesaikan permasalahan baru dalam menyelesaikan permasalahan CMST diatas, yaitu dengan menggunakan CMST diatas, yaitu dengan menggunakan algoritma Hybrid Ant Colony Optimization. algoritma Hybrid Ant Colony Optimization.
Tujuan
Tujuan pembuatanpembuatan tugas akhirtugas akhir ini ini adalah adalah mengimplementasikan
mengimplementasikan algoritmaalgoritma Hybrid Ant Colony Hybrid Ant Colony Optimization
Optimization untukuntuk menyelesaikanmenyelesaikan Permasalahan Permasalahan Capacitated Minimum Spanning Tree.
Capacitated Minimum Spanning Tree.
Tujuan
Tujuan
Latar
Latar
Belakang
Belakang
Tujuan
Tujuan
Rumusan
Rumusan
Masalah
Masalah
Batasan
Batasan
Masalah
Masalah
Pendahuluan
Bagaimana Bagaimana representasi representasi permasalahan permasalahan Capacitated Minimum Spanning Tree Capacitated Minimum Spanning Tree
Bagaimana Bagaimana cara kerjacara kerja AlgoritmaAlgoritma Hybrid Ant Hybrid Ant Colony Optimization
Colony Optimization
Bagaimana Bagaimana menyelesaikan menyelesaikan permasalahan permasalahan Capacitated Minimum Spanning Tree
Capacitated Minimum Spanning Tree dengan dengan menggunakan
menggunakan Algoritma Hybrid Ant Colony Algoritma Hybrid Ant Colony Optimization.
Optimization.
Rumusan
Rumusan
Masalah
Masalah
Latar
Latar
Belakang
Belakang
Tujuan
Tujuan
Rumusan
Rumusan
Masalah
Masalah
Batasan
Batasan
Masalah
Masalah
Pendahuluan
Tugas Akhir ini dikhususkan untukTugas Akhir ini dikhususkan untuk menelitimeneliti Algoritma
Algoritma Hybrid Ant Colony Optimization Hybrid Ant Colony Optimization dalam dalam menyelesaikan
menyelesaikan permasalahan Capacitated permasalahan Capacitated Minimum Spanning Tree.
Minimum Spanning Tree.
Batasan
Batasan
Masalah
Masalah
Latar
Latar
Belakang
Belakang
Tujuan
Tujuan
Rumusan
Rumusan
Masalah
Masalah
Batasan
Batasan
Masalah
Masalah
PendahuluanTinjauan
Tinjauan
Pustaka
Pustaka
CMST (Capacitated Minimum Spanning Tree)
CMST (Capacitated Minimum Spanning Tree)
ACO (Ant Colony Optimization)
ACO (Ant Colony Optimization)
Hybrid ACO (Hybrid Ant Colony Optimization
Hybrid ACO (Hybrid Ant Colony Optimization
Prim
Prim
Pendahuluan
Capacitated Minimum Spanning Tree (CMST)
Capacitated Minimum Spanning Tree (CMST) dapat dapat
dijelaskan
dijelaskan sebagai sebagai berikutberikut: :
Graf Graf terkoneksi terkoneksi penuh penuh dan dan tak tak berarah berarah G = (V,E) G = (V,E)
V V adalah adalah himpunan himpunan dari dari n node client n node client dan dan sebuah sebuah node
node akar akar unik unik 0 0
E E adalah adalah himpunan himpunan dari dari semua semua kemungkinan kemungkinan edge. edge.
Dengan Dengan setiap setiap node client i V node client i V \\{0} {0} berasosiasi berasosiasi dengan
dengan permintaan permintaan didi
Edge (i j) E nonEdge (i j) E non--negatif negatif cost cost cijcij. . Dengan Dengan ccij ij = = ccjiji. .
Setiap Setiap edge (link) edge (link) mempunyai mempunyai kapasitas kapasitas maximum maximum K.
K.
Permasalahan Permasalahan dari dari MST MST ini ini adalah adalah dimana dimana setiap setiap subtree
subtree berasal berasal dari dari node node akarakar, total , total permintaan permintaan client
client nodenya nodenya tidak tidak melebihi melebihi kapasitas kapasitas link K. link K.
CMST
CMST
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
Algoritma Ant Colony Optimization (ACO) Algoritma Ant Colony Optimization (ACO) terinspirasi dari perilaku koloni semut dalam
terinspirasi dari perilaku koloni semut dalam
mencari makanan.
mencari makanan.
Ketika mencari makanan koloni semut akan Ketika mencari makanan koloni semut akan melepas semut
melepas semut--semut untuk mencari sumber semut untuk mencari sumber makanan.
makanan.
Setiap semut akan mengeluarkan Setiap semut akan mengeluarkan pheromone pheromone sebagai tanda jalur yang telah ditempuhnya.
sebagai tanda jalur yang telah ditempuhnya.
Semut yang telah mencapai sumber makanan akan Semut yang telah mencapai sumber makanan akan kembali ke koloninya.
kembali ke koloninya.
Dalam Algoritma ACO, sebuah koloni dari semut Dalam Algoritma ACO, sebuah koloni dari semut buatan secara iteratif membentuk solusi untuk
buatan secara iteratif membentuk solusi untuk
suatu masalah menggunakan jalur
suatu masalah menggunakan jalur pheromone pheromone
buatan.
buatan.
Jalur Jalur pheromone pheromone berubah selama algoritma berjalan berubah selama algoritma berjalan untuk menyimpan informasi mengenai solusi
untuk menyimpan informasi mengenai solusi
terbaik terbaik
ACO (1)
ACO (1)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
Pendahuluan
Kebanyakan algoritma ACO memiliki algoritma Kebanyakan algoritma ACO memiliki algoritma sebagai berikut
sebagai berikut ::
procedure ACO
procedure ACO
Set
Set paramaterparamater, , inisialisasi inisialisasi jalur jalur pheromonepheromone while (
while (kondisi kondisi tidak tidak terpenuhiterpenuhi)) BuatSolusi BuatSolusi LocalSearch LocalSearch UpdateJalur UpdateJalur end while end while
ACO (2)
ACO (2)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
Pendahuluan
Hybrid ACO Hybrid ACO merupakan merupakan perkembangan perkembangan dari dari algoritma
algoritma ACO. ACO. Penggunaan Penggunaan kata kata hybrid hybrid sebenarnya
sebenarnya mengacu mengacu pada pada penggunaan penggunaan algoritma algoritma Saving Clark and Wright
Saving Clark and Wright dalam dalam pembangunan pembangunan solusinya solusinya..
Hybrid ACO (1)
Hybrid ACO (1)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
Pendahuluan
Penyelesaian Penyelesaian CMST CMST menggunakan menggunakan ACO ACO dapat dapat digambarkan
digambarkan sebagai sebagai berikutberikut::
Hybrid ACO (2)
Hybrid ACO (2)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
procedure ACO untuk MST baca data input
inisialisasi parameter dan matriks pheromone
repeat
for setiap semut
Buat solusi CVRP menggunakan Saving based Ant System(1)
Ubah cluster CVRP memakai Swap Local Search(2)
for tiap cluster
hitung MST menggunakan Prim(2)
update solusi terbaik
update matriks pheromone(3)
1.
1. Pembuatan Pembuatan SolusiSolusi
pembuatan pembuatan solusi sebenarnyasolusi sebenarnya digunakandigunakan untukuntuk pengembangan
pengembangan CVRP CVRP dandan berdasarkan berdasarkan pada pada Algoritma
Algoritma SavingSaving. .
Dalam Dalam ACO, dipakaiACO, dipakai matriksmatriks persegipersegi dengan dengan n
n kolom kolom dan barisdan baris. . SetiapSetiap masukanmasukan berisi berisi intensitas
intensitas pheromone pheromone pada pada edge edge ((i ji j) ) sebagai sebagai indikator
indikator usefulness usefulness dari dari kombinasi kombinasi node node i i dan dan j j
pada
pada iterasiiterasi sebelumnyasebelumnya, , sesuaisesuai dengan dengan evaluasi
evaluasi daridari solusisolusi yang yang ditemukan. ditemukan.
Pembuatan
Pembuatan
Solusi
Solusi
(1)
(1)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
•
•
Pembuatan Pembuatan Solusi Solusi • • Perbaikan Perbaikan Solusi Solusi • • Update Update Pheromone Pheromone
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
ij j i ij
c
c
c
s
0
0
ij
menghasilkan probabilitasmenghasilkan probabilitas untukuntuk mengkombinasikan
mengkombinasikan node node i i dan dan j j menjadi menjadi satu satu cluster
cluster dandan adalah bilanganadalah bilangan bulatbulat nonnon- -negatif
negatif sebagai bias sebagai bias dari pengaruhdari pengaruh relatifrelatif jalurjalur
pheromone
pheromone dan dan nilai nilai savingsaving..
Hasil Hasil dari pembangunandari pembangunan solusisolusi iniini adalah solusiadalah solusi CVRP yang
CVRP yang feasiblefeasible, yaitu, yaitu tiaptiap cluster cluster terpecahkan
terpecahkan dan dievaluasidan dievaluasi sebagaisebagai TSP.TSP.
Pembuatan
Pembuatan
Solusi
Solusi
(2)
(2)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
•
•
Pembuatan
Pembuatan
Solusi
Solusi
•
•
Perbaikan
Perbaikan
Solusi
Solusi
•
•
Update
Update
Pheromone
Pheromone
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
, ) ( ) ( jika sebaliknya 0
{
a a hl hl hl ij ij ij s s ijP
2.Perbaikan
2.Perbaikan SolusiSolusi
Penggunaan Penggunaan local search local search klasikklasik, bernama, bernama -
-interchange
interchange untuk CVRP. yang untuk CVRP. yang dipakai dibatasidipakai dibatasi pada
pada = 1, yaitu= 1, yaitu mengmeng--interchange node interchange node tunggal
tunggal. .
Pencarian MST Pencarian MST menggunakanmenggunakan AlgoritmaAlgoritma PrimPrim
Perbaikan
Perbaikan
Solusi
Solusi
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
•
•
Pembuatan Pembuatan Solusi Solusi • • Perbaikan Perbaikan Solusi Solusi • • Update Update Pheromone Pheromone
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
3.
3. Update PheromoneUpdate Pheromone
Pada Pada akhir dariakhir dari setiap iterasisetiap iterasi, , yaituyaitu ketikaketika semuasemua
ant
ant telah telah melalui fasemelalui fase pembangunanpembangunan solusisolusi dan dan
local search
local search, prosedur, prosedur update update pheromone pheromone
diaplikasikan
diaplikasikan padapada nilainilai pheromone pheromone tersebut. tersebut. Prosedurnya
Prosedurnya dapatdapat ditulisditulis sebagai sebagai berikut: berikut:
Dimana Dimana adalah adalah persistensi jalurpersistensi jalur..
Pada Pada saat saat awalawal, , nilai nilai pheromone pheromone didi--inisialisasi inisialisasi dengan
dengan nilai nilai 1 1
Update Pheromone
Update Pheromone
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
•
•
Pembuatan Pembuatan Solusi Solusi • • Perbaikan Perbaikan Solusi Solusi • • Update Update Pheromone Pheromone
Prim
Prim
PendahuluanPendahuluan >< Tinjauan>< Tinjauan Pustaka Pustaka >< Desain>< Desain Sistem >< Sistem >< UjiUji CobaCoba
E,
(ij)
ρ
)
Δτ
(
ρτ
τ
* ij ij ij
1
1
0
Algoritma Algoritma Prim Prim adalah adalah algoritma algoritma yang yang digunakan
digunakan untuk untuk menemukan menemukan minimum minimum spanning tree
spanning tree dalam dalam sebuah sebuah graf graf tak tak berarah berarah yang
yang berbobotberbobot. .
ArtinyaArtinya, , algoritma algoritma ini ini akan akan menemukan menemukan sebuah sebuah subset
subset dari dari edge edge yang yang membentuk membentuk sebuah sebuah tree tree dengan
dengan memasukkan memasukkan semua semua vertex vertex sebagai sebagai anggotanya
anggotanya. .
Total Total bobot bobot dari dari keseluruhan keseluruhan edge edge dalam dalam tree tree bernilai
bernilai paling minimum.paling minimum.
Algoritma
Algoritma
Prim (1)
Prim (1)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
PendahuluanLangkah
Langkah--langkah langkah Algoritma Algoritma Prim :Prim :
Input: Graf Input: Graf berbobot berbobot yang yang saling saling berhubungan berhubungan dengan
dengan vertexvertex--vertex vertex V V dan dan edgeedge--edge edge E.E.
InisialisasiInisialisasi: V: V--barubaru={x}, ={x}, dimana dimana x x adalah adalah node node tempat
tempat dimulainya dimulainya tree, Etree, E--barubaru={}={}
Ulangi Ulangi sampai sampai VV--barubaru=V:=V:
Pilih Pilih bobot bobot edge(u,vedge(u,v) paling minimal ) paling minimal dengan
dengan syarat syarat u u bagian bagian VV--baru barudan dan v v bukan
bukan..
Tambahkan Tambahkan v v pada pada VV--barubaru, , dan dan ((u,vu,v) ) pada pada E
E--barubaru..
Output: VOutput: V--baru baru dan dan EE--baru baru sebagai sebagai minimum minimum spanning tree
spanning tree
Algoritma
Algoritma
Prim (2)
Prim (2)
CMST
CMST
ACO
ACO
Hybrid
Hybrid
ACO
ACO
Prim
Prim
PendahuluanDesain
Desain
Sistem
Sistem
Deskripsi Umum
Deskripsi
Umum
Flowchart
Flowchart
Sistem
Sistem
Implementasi
Implementasi
Antar
Antar
Muka
Muka
Pendahuluan