Pembangunan Solusi Pembaharuan feromon global Perancangan Flowchart

23

3.3.3 Pembaharuan feromon global

Setelah semua semut menyelesaikan turnya, feromon akan diperbarui secara menyeluruh dengan menghitung perubahan nilai feromon antar kota. Persamaan perubahan ini adalah: ∆ τ ij,k = , jika i,j ∈ T k 3.4 Keterangan : ∆ τ ij,k = jumlah feromon yang di tambahkan oleh k T k = rute keseluruhan L k = panjang dari rute keseluruhan Selanjutnya penguapan feromon pada seluruh sisi TSP dengan menggunakan rumus berikut: τ ij baru ← 1 – p τ ij + ∆ τ ij,k 3.5 keterangan : τ ij baru = konsentrasi feromon yang baru τ ij = inisialisasi feromon antara kota i dan kota j p = parameter laju penguapan feromon 0 p ≤ 1 ∆ τ ij,k = jumlah feromon yang di tambahkan oleh semut k

3.3.4 Perancangan Flowchart

Flowchart digunakan untuk memperjelas perancangan dan algoritma yang akan dibuat, flowchart dari algoritma Semut dapat dilihat pada Gambar 3.1: 24 ya Gambar 3.1 Flowchart algoritma semut untuk penyelesaian TSP M ulai Input Alamat Inisialiasi Param et er Jalankan t ahap set iap semut Pilih Alamat Berikutnya unt uk set iap semut Sem ua dikunjungi Ubah ferom on unt uk perjalanan t erbaik Komputasikan panjang perjalanan set iap semut It erasi m aksim um Tampilkan hasil Selesai 25

3.3.5 Evaluasi Algoritma Semut

Algoritma Semut untuk mencari jalur terpendek dari sebuah graf pada tulisan ini menggunakan semut sebagai agen,setiap semut memiliki turnya masing-masing mulai dari kota awal dan kembali ke kota tersebut dengan mengunjungi masing-masing kota yang ada hanya sekali, untuk mendapatkan hasil terbaik. Algoritma ini dimulai dengan menempatkan setiap semut pada kota awalnya masing-masing yang diwakili oleh simpul yang ada pada graf tersebut. Tur yang dilakukan oleh setiap semut ini dimulai dari sebuah kota awal dan melewati sisi yang menghubungkan n kota yang ada kemudian kembali lagi ke kota awal tersebut. Setelah ditempatkan pada kota awalnya masing-masing, setiap semut memulai turnya dengan memilih kota berikutnya yang akan dikunjungi dengan persamaan probabilitas. Pemilihan kota ini dipengaruhi oleh panjang sisi yang menghubungkan setiap kota dan jumlah feromon yang berada pada sisi tersebut. Sisi yang lebih pendek akan menerima feromon dalam jumlah yang lebih besar. Setelah menentukan kota berikutnya yang akan dituju, semut berjalan melewati sisi yang menghubungkan kedua kota tersebut dan memperbarui jumlah feromon yang terdapat pada sisi yang dilewatinya. Kemudian semut memasukkan sisi dan kota yang dilewatinya itu kedalam daftar semut untuk menandakan bahwa sisi dan kota tersebut merupakan bagian dari tur mereka. Selanjutnya semut memilih lagi kota berikutnya yang akan dikunjungi. Setelah semua semut menyelesaikan tur mereka, panjang tur dari setiap semut dihitung dan dipilih yang paling pendek. Tur terpendek dari setiap siklus 26 akan menjadi tur terbaik. Dari analisa terhadap algoritma Semut ini, beberapa hal yang penting adalah: 1. Dalam pemilihan kota berdasarkan nilai probabilitas diperlukan nilai parameter q yang merupakan sebuah bilangan acak dimana 0 ≤ q ≤ 1. 2. Setiap semut harus memiliki daftar semut untuk menyimpan hasil turnya masing-masing. Daftar semut berisi kumpulan sisi dan simpul yang merupakan bagian dari tur setiap semut. Nilai dari masing-masing daftar semut akan dikosongkan kembali setiap kali semut akan memulai turnya. 3. Proses perbaikan jejak feromon dipengaruhi oleh dua parameter yaitu ρ suatu koefisien yang bernilai antara 0 sampai 1 dan Δτ didapat dari hasil perkalian antara panjang tur dengan jumlah simpul yang ada pada graf tersebut.

3.3.6 Implementasi TSP dengan Algoritma Semut

Diberikan sejumlah kota dan jarak antar kota. Tentukan sirkuit hamilton yang harus dilalui oleh semut, bila semut itu berangkat dari sebuah kota asal dan menyinggahi setiap kota tepat satu kali dan kembali lagi ke kota asal keberangkatan. Permasalahan melewati setiap kota tepat satu kali dan kembali ke kota asal adalah meliputi pencarian lintasan terpendek pada sebuah graf Hamilton. Apabila contoh kasus tersebut diubah menjadi persoalan pada graf, maka dapat dilihat bahwa kasus tersebut adalah bagaimana menentukan sirkuit Hamilton yang memiliki bobot minimum pada graf tersebut.