• Tidak ada hasil yang ditemukan

View of Perbandingan Algoritma Genetika dengan Algoritma Artificial Bee Colony dalam Penyelesaian Masalah Traveling Salesman Problem

N/A
N/A
Protected

Academic year: 2018

Membagikan "View of Perbandingan Algoritma Genetika dengan Algoritma Artificial Bee Colony dalam Penyelesaian Masalah Traveling Salesman Problem"

Copied!
9
0
0

Teks penuh

(1)

Perbandingan Algoritma Genetika dengan

Algoritma Artificial Bee Colony dalam

Penyelesaian Masalah

Traveling Salesman

Problem

Krisna Agung Suanda1, Ichsan Taufik2, Popon Dauni3

Jurusan Teknik Informatika Fakultas Sains dan Teknologi UIN Sunan Gungung Djati Bandung

1sanada.krisna@gmail.com, 2ichsan@uinsgd.ac.id, 3popon.dauni@if.uinsgd.ac.id

Abstract-This study aims to build a problem solving application system Traveling Salesman Problem using Genetic Algorithm and Artificial Bee Colony Algorithm. Traveling Salesman Problem (TSP) is an optimization problem that can be applied to various activities such as routing and production scheduling. On the problem of Traveling Salesman problem is how to calculate the minimum path and process time of the algorithm where the point of the path is connected one samalain and only passed once. This application system is built using PHP and MySQL database. The overall result in this application system is the minimum distance and processing time calculated using Genetic Algorithm and Artificial Bee Colony Algorithm. The results are displayed in the form of text and visualization of the path shown in the Map. Generally these two algorithms display the same minimum path but at the processing time of the algorithm, the Genetic Algorithm is superior to the Artificial Bee Colony Algorithm in TSP settlement. For the 5-17 point of data the Genetic Algorithm yields 39.06% faster process time than the Artificial Bee Colony Algorithm.

Keywords: Traveling Salesman Problem (TSP), Genetic Algorithm, Artificial Bee Colony Algorithm

Abstrak-Penelitian ini bertujuan untuk membangun suatu sistem aplikasi penyelesaian masalah Traveling Salesman Problem dengan menggunakan Algoritma Genetika dan Algoritma Artificial Bee Colony. Traveling Salesman Problem (TSP) merupakan sebuah permasalah optimasi yang dapat diterapkan pada berbagai kegiatan seperti routing dan penjadwalan produksi. Pada permasalahan Traveling Salesman problem adalah bagaimana menghitung jalur minimum serta waktu proses dari algoritma tersebut dimana titik jalur terhubung satu samalain dan hanya dilewati satu kali. Sistem aplikasi ini dibangun dengan menggunakan PHP dan database MySQL. Hasil keseluruhan pada sistem aplikasi ini adalah jarak minimum serta waktu proses yang dihitung dengan menggunakan Algoritma Genetika dan Algoritma Artificial Bee Colony. Hasil yang ditampilkan berupa teks dan visualisasi jalur yang ditampilkan dalam Map. Secara umum kedua algoritma tersebut menampilkan jalur minimum yang sama namun pada waktu pemprosesan algoritma, Algoritma Genetika lebih unggul dari pada Algoritma Artificial Bee Colonydalam penyelesaian TSP. Untuk data 5-17 titik tujuan Algoritma Genetika menghasilkan waktu proses 39,06% lebih cepat dibandingkan dengan Algoritma Artificial Bee Colony.

Kata kunci : Traveling Salesman Probem(TSP), Algoritma Genetika, Algoritma Artificial Bee Colony

I. PENDAHULUAN 1.1 LATAR BELAKANG

Traveling Salesman Problem (TSP) merupakan sebuah permasalah optimasi yang dapat diterapkan pada berbagai kegiatan seperti routing dan penjadwalan produksi. Masalah optimasi TSP terkenal dan telah menjadi standar untuk mencoba algoritma yang komputational. Pokok permasalahan dari TSP adalah seorang salesman harus mengunjungi sejumlah kota yang diketahui jaraknya satu dengan yang lainnya. Semua kota yang ada harus dikunjungi oleh salesman tersebut dan kota tersebut hanya boleh dikunjungi tepat satu kali. Permasalahannya adalah bagaimana salesman tersebut dapat mengatur rute perjalanannya sehingga jarak yang ditempuhnya merupakan jarak minimum.

Banyak metode yang dapat dipakai untuk menyelesaikan TSP yaitu Hill Climbing Method, Ant Colony System, Dynamic Programming dan artificial bee colony. Masing-masing algoritma memiliki kelebihan dan kekurangannya. Suatu algoritma

memiliki hasil yang berbeda-beda, karena belum tentu suatu algoritma yang memiliki optimasi yang tinggi untuk suatu kasus memiliki optimasi yang tinggi pula untuk kasus yang lain.

(2)

117 dari jarak yang dihasilkan serta waktu yang dibutuhkan

untuk melakukan perhitungan pada algoritma. Pada penelitian lain dilakukan oleh nurhalimatul sa'dia (2015) dalam membandingkan algoritma artificial bee colony dengan algoritma defferential evolution plus dalam penjadwalan flowshop [3]. dalam kajian tersebut membuktikan bahwa algoritma differential evolution plus memiliki kecepatan kekonvergenan yang lebih baik dibandingkan dengan algoritma artificial bee colony.

Algoritma genetika merupakan sebuah algoritma yang meniru cara kerja proses genetika pada makhluk hidup, dimana terdapat proses seleksi, rekombinasi dan mutasi untuk mendapatkan kromosom terbaik pada suatu generasi. Dengan meniru teori evolusi, algoritma genetika dapat digunakan untuk mencari solusi permasalahan-permasalahan dalam dunia nyata. Sebelum algoritma dapat dijalankan, maka sebuah kode yang sesuai untuk persoalan harus dirancang, Untuk ini maka solusi layak dalam ruang permasalahan di kodekan dalam bentuk kromosom yang terdiri atas komponen genetika terkecil yaitu gen. Dengan teori evolusi dan teori genetika, di dalam penerapan algoritma genetika akan melibatkan beberapa operator, yaitu reproduksi, crossover, dan mutasi. Jenis dari operator dasar algoritma genetika bermacam-macam dan terus berkembang [4].

Algoritma Artificial bee colony dirancang oleh karaboga pada tahun 2005, berdasarkan prilaku kecerdasan lebah dalam koloni untuk mencari sumber makanan. Algoritma ini memiliki 3 komponen utama dalam mencari sumber makanan terbaik, yaitu employed bee, onlooker bee, dan scout bee. Employed bee bertugas mencari sumber makanan berdasarkan kecerdasannya dan mengevaluasi jumlah nektarnya, jumlah employed bee sama dengan jumlah sumber makanan. Setelah employed bee menemukan sumber makanan terbaik mereka kembali ke sarang dan memberikan informasi kepada onlooker bee yang telah menunggu intuk mengeksploitasi sumber makanan tersebut [5]. Pada masalah TSP yang menjadi sumber makanan adalah kemungkinan solusi yang dibangkitkan secara acak lalu masuk ke dalam tahap algoritma, berulang sampai ditemukan solusi terbaik.

Berdasarkan pemaparan dari penelitian di atas, maka tugas akhir ini mengambil judul ”Perbandingkan Algoritma Genetika Dengan Algoritma Artificial Bee Kolony Dalam Permasalahan Traveling Salesman

Problem”.

1.2 RUMUSAN MASALAH

Berdasarkan latar belakang masalah di atas, rumusan masalah yang di hadapi adalah: a. Menerapkan hasil perhitungan algoritma

genetika dengan algoritma artificial bee colony pada permasalahan traveling salesman problem.

b. Bagaimana perbandingan kinerja dari algoritma genetika dengan algoritma artificial bee colony dalam permasalahan traveling salesman problem.

1.3 MAKSUD DAN TUJUAN

Maksud dari penulisan skripsi ini adalah menerapkan algoritma genetika dan algoritma artificial

bee colony sebagai metode untuk mencari jarak

terpendek dalam penyelesaian Traveling Salesman Problem.

Tujuan yang ingin di capai pada penelitian ini adalah:

a. Membangun satu aplikasi traveling salesman problem dengan menggunakan algoritma genetika dengan algoritma artificial bee colony.

b. Membandingkan algoritma genetika dengan algoritma artificial bee colony dalam penyelesaian masalah traveling salesman problem.

1.4 BATASAN MASALAH

Adapun batasan masalah dalam penelitian ini adalah:

a. Algoritma genetika dan algoritma artificial bee colony diterapkan hanya untuk pencarian jarak terpendek pada masalah TSP.

b. Menggunakan jarak yang sebenarnya berdasarkan map antara titik satu ke titik yang lainnya.

c. Aplikasi dirancang menggunakan PHP dengan framework code igniter.

II. METODE PENELITIAN

Pada bab ini akan dibahas mengenai penggunaan algoritma genetika dan algorritma artificial bee colony untuk menyelesaikan masalah jalur terpendek. Beberapa proses penting yang harus dilakukan untuk mengimplementasikan algoritma genetika dan algoritma artificial bee colony dalam mencari jalur terpendek yaitu sebagai berikut:

1. Algoritma Genetika

a. Representasi kromosom. b. Inisialisasi populasi. c. Fungsi evaluasi/fitness. d. Seleksi.

e. operator recominasi (crossover) dan mutasi.

f. Penentuan parameter, yaitu ukuran populasi (popsize), jumlah pengulangan (generation)

2. Algoritma Artificial Bee Colony a. Representasi nektar b. Inisialiasi lebah c. Fase employe

d. Menghitung probabilitas e. Fase onlooker

f. Penentian parameter, yaitu ukuran populasi (NP), jumlah pengulangan (Limit)

2.1 ALGORITMA GENETIKA

(3)

Perbandingan Algoritma Genetika Dengan Algoritma Artificial Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)

118 menyelesaikan masalah optimasi kompleks, yang sulit

dilakukan oleh metode konvensional [6].

Algoritma genetika pertama kali diperkenalkan oleh John Holland (1975) dari Universitas Michigan. John Holland mengatakan bahwa setiap masalah yang berbentuk adaptasi (alami maupun buatan) dapat diformulasikan ke dalam terminologi genetika. Goldberg mendefinisikan algoritma genetika ini sebagai suatu pencarian algoritma berdasarkan pada mekanisme seleksi alam dan genetika alam [6].

Gambar 2.1 Diagram Alir Proses Algoritma Genetika Pada Gambar 2.1 dapat dijelaskan sebagai berikut:

1. Populasi awal

Proses ini merupakan proses yang digunakan untuk membangkitkan populasi awal secara random sehingga didapatkan solusi awal.

2. Evaluasi fitness

Proses ini merupakan proses untuk mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai terpenuhi kriteria berhenti.

3. Seleksi

Proses seleksi merupakan proses untuk menentukan individu-individu mana saja yang akan dipilih untuk dijadikan crossover.

4. Crosssover

Proses crossover ini merupakan proses untuk menambah keanekaragaman suatu populasi.

5. Mutasi

Mutasi merupakan proses mengubah nilai dari satu atau beberapa gen dalam satu kromosom.

6. Kriteria berhenti

Kriteria berhenti merupakan kriteria yang digunakan untuk menghentikan proses algoritma genetika.

7. Hasil

Hasil merupakan seleksi optimum yang didapat oleh algoritma genetika.

2.1.1 Pseudo-code Algoritma Genetika

function Fitness (Kromosom[i]) integer

{menghitung nilai fitness dari masingmasing kromosom}

Deklarasi Jum : integer j : integer

Kromosom[][] : array of integer of integer function Jarak(input A, B : integer) integer {menghasilkan jarak antara dua kota A dan B} Algoritma

Jum Jarak(A,Kromosom[i][1]) for j 2 to 4 do

Jum  Jum + Jarak(Kromosom[i][j-1], Kromosom[i][j])

endfor

Jum  sum + Jarak(Kromosom[i][4],A) Return jum

procedure Crossover (input populasi: integer, ρc: real) {melakukan pemilihan induk pada proses crossover} Deklarasi

k : integer

R[] : array of integer

function Random (input a-b: integer) integer {menghasilkan bilangan random bilangan a hingga b} Algoritma

K  0

While k ≤ populasi do

R[k]  Random(0-1)

if R[k] < ρc then

pilih Kromosom[k] sebagai induk endif

k  k+1 endwhile

function JumlahMutasi(input JumGen,

JumlahKromosom: integer, ρm: real) integer {menghitung jumlah proses mutasi}

Deklarasi

TotalGen : integer JumMutasi : integer Algoritma

TotalGen  JumGen * JumlahKromosom

ρm  0.2

JumMutasi  0.2*TotalGen Return JumMutasi

(4)

119 Berikut contoh persoalan TSP yang diselesaikan

dengan menggunakan algoritma genetika. terdapat 5 buah kota yang akan dilalui oleh seorang pedangang keliling, misalnya Kota A,B,C,D,E. Perjalanan dimulai dari kota A dan berakhir di kota A. Jarak antar kota diperlihatkan pada graf di bawah ini:

Persoalan tersebut akan diselesaikan dengan menggunakan algoritma genetika. Kriteria berhenti ditentukan terlebih dahulu yaitu apabila setelah dalam beberapa generasi berturut-turut diperoleh nilai fitness yang terendah tidah berubah. Pemilihan nilai fitness yang terendah sebagai syarat karena nilai tersebut yang merepresentasikan jarak terdekat yang dicari pada persoalan ini.

Ada 4 kota yang akan menjadi gen dalam kromosom yaitu kota-kota selain kota asal.

1.Inisialisasi

Misalkan kita menggunakan 6 buah populasi dalam satu generasi, yaitu

• Kromosom(1) = (B D E C)

• Kromosom(2) = (D B E C)

• Kromosom(3) = (C B D E)

• Kromosom(4) = (E B C D)

• Kromosom(5) = (E C B D)

• Kromosom(6) = (C D E B) 2.Evaluasi kromosom

Kita akan menghitung nilai fitness dari tiap kromosom yang telah dibangkitkan:

Fitness(1) = AB+BD+DE+EC+CA = 8+3+7+4+6 = 28

Fitness(2) = AD+DB+BE+EC+CA = 10+3+9+4+6 = 32

Fitness(3) = AC+CB+BD+DE+EA = 6+8+3+7+10 = 34

Fitness(4) = AE+EB+BC+CD+DA = 10+9+8+5+10 = 42

Fitness(5) = AE+EC+CB+BD+DA = 10+4+8+7+10 = 39

Fitness(6) = AC+CD+DE+EB+BA = 6+5+7+9+8 = 35

3.Seleksi kromosom

Oleh karena pada persoalan TSP yang diinginkan yaitu kromosom dengan fitness yang lebih kecil akan mempunyai probabilitas untuk terpilih kembali lebih besar maka digunakan inverse.

Q(1) = 28 Q(i) = 1 : fitness i 1: 28 = 0.036

Q(2) = 32 1: 32 = 0.031 Q(3) = 34 1: 34 = 0.029 Q(4) = 42 1: 42 = 0.024 Q(5) =39 1: 39 = 0.026 Q(6) = 35 1: 35 = 0.028

Total = 0.036+0.031+0.029+ 0.024+0.026+0.028= 0.174

Kemudian hitung fitness relative dengan menggunakan rumus berikut: P(i) = Q(i) : Total

P(1) = 0.036 : 0.174 = 0.207 P(2) = 0.031 : 0.174 = 0.178 P(3) = 0.029 : 0.174 = 0.167 P(4) = 0.024 : 0.174 = 0.138 P(5) = 0.026 : 0.174 = 0.149 P(6) = 0.028 : 0.174 = 0.161

Dari probabilitas di atas dapat terlihat bahwa kromosom ke-1 mempunyai fitness paling kecil mempunyai probabilitas untuk terpilih pada generasi selanjutnya lebih besar dari kromosom lainnya.

Untuk proses seleksi kita menggunakan roulete wheel, untuk itu kita terlebih dahulu menghitung persentasi dari masing-masing kromosom.

Kromosom (1) = 0.207 x 100 = 20.7 % Kromosom (2) = 0.178 x 100 = 17.8 % Kromosom (3) = 0.167 x 100 = 16.7 % Kromosom (4) = 0.138 x 100 = 13.8 % Kromosom (5) = 0.149 x 100 = 14.9 % Kromosom (6) = 0.161 x 100 = 16.1 %

Setelah nilai persentasi didapat lalu kita cari nilai komulatif dari probabilitas yang sudah di persentasi kan:

C (1) = 20.7

C (2) = 20.7 + 17.8 = 38.5 C (3) = 20.7 + 17.8 + 16.7 = 55.2 C (4) = 20.7 + 17.8 + 16.7 + 13.8 = 69

C (5) = 20.7 + 17.8 + 16.7 + 13.8 + 14.9 = 83.9 C (6) = 20.7 + 17.8 + 16.7 + 13.8 + 14.9 + 16.1 = 100

Proses roulete-wheel adalah membangkitkan nilai acak R antara 0-1. Jika R[k]<C[k] maka kromosom ke-k sebagai induk, selain itu pilih kromosom ke-k sebagai induk dengan syarat C[k-1] < R[k] < C[k]. Kita putar roulete-wheel sebanyak jumlah kromosom yaitu 6 kali (membangkitkan bilangan acak R).

R (1) = 10 R (2) = 91 R (3) = 29 R (4) = 50 R (5) = 99 R (6) = 17

Setelah itu, maka populasi baru terbentuk yaitu: Kromosom (1) = (1) =(B D E C)

(5)

Perbandingan Algoritma Genetika Dengan Algoritma Artificial Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)

120 4.Crossover ( Pindah Silang )

Pindah silang pada TSP dapat diimplementasikan dengan skema order crossover. Pada skema ini, satu bagian kromosom ditukarkan dengan tetap menjaga urutan kota yang bukan bagian dari kromosom tersebut. Kromosom yang dijadikan induk dipilih secara acak dan jumlah kromosom yang di crossover dipengaruhi oleh

parameter crossover probability (ρc). Misal kita

tentukan pc = 25% maka diharapkan dalam 1 generasi ada 50% (3 kromosom) dari populasi mengalami crossover. Pertama kita bangkitkan bilangan acak R sebanyak jumlah populasi yaitu 6 kali.

R(1) = 45 R(2) = 24 R(3) = 20 R(4) = 80 R(5) = 70 R(6) = 17

Kromosom ke-k yang dipilih sebagai induk jika R(k) < pc. Maka yang dijadikan induk adalah kromosom (2), kromosom (3), dan kromosom (6). Setelah melakukan pemilihan induk, proses selanjutnya adalah menentukan posisi crossover. Hal tersebut dilakukan dengan membangkitkan bilangan acak antara 1 sampai dengan panjang kromosom-1. Dalam kasus TSP ini bilangan acaknya adalah antara 1-3. Misal diperoleh bilangan acaknya 1, maka gen yang ke-1 pada kromosom induk pertama diambil kemudian ditukar dengan gen pada kromosom induk kedua yang belum ada pada induk pertama dengan tetap memperhatikan urutannya. Bilangan acak untuk 3 kromosom induk yang akan di crossover adalah:

C(2) = 2 C(3) = 1 C(6) = 2

Proses crossover:

Kromosom (2) = Kromosom (2) >< Kromosom (3) = (C D E B) >< (D B E C)

= (C D B E)

Kromosom (3) = Kromosom (3) >< Kromosom (6) = (D B E C) >< (B D E C)

= (D B E C)

Kromosom (2) = Kromosom (2) >< Kromosom (2) = (B D E C) >< (C D E B)

= (B D C E)

Kromosom yang terbentuk dari crossover adalah: Kromosom (1) = (B D E C)

Kromosom (2) = (C D B E) Kromosom (3) = (D B E C) Kromosom (4) = (C B D E) Kromosom (5) = (C D E B) Kromosom (6) = (B D C E) 5. Mutasi

Pada kasus TSP ini skema mutasi yang digunakan adalah swapping mutation. Jumlah kromosom yang mengalami mutasi dalam satu populasi ditentukan oleh parameter mutation rate (ρm). Proses mutasi dilakukan dengan cara menukar gen yang dipilih

secara acak dengan gen sesudahnya. Jika gen tersebut berada di akhir kromosom, maka ditukar dengan gen yang pertama. Pertama kita hitung dulu panjang total gen yang ada pada satu populasi:

Panjang total gen = jumlah gen dalam 1 kromosom * jumlah Kromosom

= 4*6 = 24

Untuk memilih posisi gen yang mengalami mutasi dilakukan dengan membangkitkan bilangan acak antara 1 – Panjang total gen yaitu 1- 24. Misal kita

tentukan ρm = 20 %. Maka jumlah gen yang akan dimutasi adalah = 0,2*24 = 4,8 = 5.

5 buah posisi gen yang akan dimutasi setelah diacak adalah posisi 3, 7, 10, 20, 24

Proses mutasi:

Kromosom (1) = (B D C E) Kromosom (2) = (C D E B) Kromosom (3) = (D E B C) Kromosom (4) = (C B D E) Kromosom (5) = (B D E C) Kromosom (6) = (E D C B)

Proses algoritma genetik untuk 1 generasi telah selesai. Maka nilai fitness setelah 1 generasi adalah:

Fitness (1) = AB+BD+DE+EC+CA = 8 + 3 + 7 + 4 + 6 = 28

Fitness (2) = AC+CD+DE+EB+BA = 6 + 5 + 7 + 9 + 8 = 35

Fitness (3) = AD+DE+EB+BC+CA = 10 + 7 + 9 + 8 + 6 = 40 Fitness (4) = AC+CB+BD+DE+EA = 6 + 8 + 3 + 7 + 10 = 34

Fitness (5) = AB+BD+DE+EC+CA = 8 + 3 + 7 + 4 + 6 = 28

Fitness (6) = AE+ED+DC+CB+BA = 10 + 7 + 5 + 8 + 8 = 38

Sebelumnya telah ditentukan kriteria berhenti yaitu bila setelah dalam beberapa generasi berturut-turut diperoleh nilai fitness yang terendah tidak berubah. Pada 1 generasi telah terlihat bahwa terdapat nilai fitness terkecil yang tidak berubah. Apabila perhitungan dilanjutkan hingga ke generasi ke-N maka diyakinkan bahwa nilai fitness yang terendah tetap tidak akan berubah. Walaupun perhitungan cukup dijabarkan hingga generasi ke-1 saja namun solusi yang mendekati optimal telah didapatkan. Yaitu pada fitnes ke-1 dan fitnes ke-5 dengan nilai tekecil yaitu 28 dengan titik tujuan (B D C E) dan (B D E C).

(6)

121 kepada setiap lebah. Dalam satu koloni ABC terbagi

menjadi tiga jenis lebah; (1) Employed Bee, (2) Onlooker Bee, (3) Scout Bee.

Employed Bee memiliki peran sebagai lebah pekerja yang mengumpulkan nektar dari sumber makanan yang ditemukan. Ketika Employed Bee menemukan sumber makanan, Employed Bee akan melakukan local search dan mencoba memanfaatkan lokasi disekitar sumber makanan yang ditemukannya dan mencari sumber makanan lain yang lebih baik. Employed Bee akan mengingat letak sumber makanan tersebut dan seberapa baik kualitasnya. Employed Bee memiliki memory, jadi mereka tahu dimana tempat yang telah mereka kunjungi sebelumnya dan seberapa baik kualitas sumber makanan disana [7], [8].Setelah mendapatkan nektar mereka kembali ke sarang dan menyerahkan nektar yang didapat sekaligus memberikan informasi tentang sumber makanan kepada Onlooker Bee.

Kemudian tugas Onlooker Beeadalah mengumpulkan dan mengevaluasi semua informasi tentang sumber makanan yang didapat dari penjelajahan Employed Bee. Setelah itu Onlooker Bee akan memilih mana sumber makanan yang memiliki kemungkinan terbesar menghasilkan nektar terbaik, artinya apakah sebanding nektar yang didapat dengan usaha lebah mencapai sumber makanan tersebut. Kemudian Onlooker Bee akan melakukan sebuah isyarat yaitu sebuah tarian untuk memberi tahu lebah lain agar memilih sumber makanan yang memiliki kemungkinan terbaik dalam menghasilkan nektar. Lebah lain akan melihat seberapa lama Onlooker Bee menari, semakin lama lebah itu menari maka semakin besar juga keuntungan yang akan didapat jika memilih sumber makanan tersebut [9]. Onlooker Bee mencari sumber makanan secara global dari informasi yang telah didapat dari Employed Bee untuk mendapatkan nilai optimal global.

Kemudian tugas dari Scout Bee adalah berkelana ke segala arah secara random mencari sumber makanan baru yang belum pernah dikunjungi oleh Employed Bee. Hal ini dilakukan agar lebah tidak terjebak pada satu sumber makanan saja. Jika sumber makanan yang baru ditemukan menghasilkan nektar tebaik dari sebelumnya, maka sumber makanan yang lama akan ditinggalkan dan digantikan dengan yang baru. Lebah akan melupakan sumber makanan yang lama dan akan mengingat sumber makanan yang baru. Jika sumber makanan yang dimanfaatkan Employed Bee telah habis maka Employed Bee akan meninggalkan sumber makanan tersebut dan bertindak sebagai Scout Bee mencari makanan secara random ke segala arah.

Gambar 2.2 Diagram Alir Proses Algoritma Artificial Bee Colony

Pada Gambar 2.2 akan dijelaskan sebagai berikut:

Langkah 1. Inisialisasi :Menentukan solusi awal dengan merandom sembarang nilai sebanyak populasi yang telah ditentukan dan hitung nilai fitness dari setiap solusi yang terbentuk. Setiap populasi menggambarkan sebagai posisi dari sumber makanan dan dinotasikan sebagai 𝑥𝑖𝑗 , dimana i adalah banyaknya solusi yang telah ditentukan (𝑖 = 1,2, … , 𝑁𝐹) dan setiap solusi memiliki D vektor dimensi, jadi j menunjukkan dimensi dari solusi (𝑗 = 1,2, … ,𝐷).

Langkah 2. Employed Bee: Setelah inisialisasi solusi awal, Employed Bee akan melakukan pencarian sumber makanan baru di sekitar sumber makan lama dengan menggunakan persamaan (7), kemudian hitung nilai fitness pada sumber makanan baru, jika nilai fitness sumber makanan baru lebih besar dari pada sumber makanan lama, maka sumber makanan lama akan digantikan dengan yang baru seperti metode Greedy. Pencarian sumber makanan baru oleh Employed Bee akan berakhir sampai memenuhi iterasi yang telah ditentukan.

Langkah 3. Onlooker Bee : Hitung probabilitas dari setiap sumber makanan yang terpilih menggunakan persamaan (8). Setelah itu pilih sumber makanan menggunakan metode rhoulette wheel untuk setiap Onlooker Bee. Kemudian sumber makanan yang terpilih akan digunakan sebagai patokan untuk mencari sumber makan baru disekitarnya menggunakan persamaan (7). Setelah itu hitung nilai fitnessnya dan lakukan pemilihan sumber makanan baru dengan metode Greedy.

Langkah 4. Scout Bee : Jika sumber makanan tidak mengalami perbaikan sampai batas yang telah ditentukan, maka sumber makanan tersebut akan ditinggalkan dan Employed Bee akan menjadi Scout Bee mencari sumber makanan baru secara random menggunakan persamaan (9).

Langkah 5. Best Food : Simpan nilai fitness terbesar dan sumber makanan terbaik selama pencarian oleh para lebah.

(7)

Perbandingan Algoritma Genetika Dengan Algoritma Artificial Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)

122

𝑥𝑦(𝑡 + 1) = 𝜃𝑖𝑗+ ∅(𝜃𝑖𝑗(𝑡) − 𝜃𝑘𝑗(𝑡)) (7)

dimana 𝑥𝑖 dinotasikan sebagai posisi lebah ke i, kemudian j adalah dimensi dari solusi atau sumber makanan, t adalah angka iterasi, 𝜃𝑘 adalah posisi lebah ke k yang dipilih secara acak, dan ∅ adalah suatu bilangan riil yang dipilih secara acak pada range [-1,1].

𝑃𝑖= 𝐹(𝜃𝑖)

∑𝑆𝑘=1𝐹(𝜃𝑘) (8)

dimana 𝑃𝑖 adalah probabilitas ke i, kemudian

𝜃𝑖 adalah posisi lebah ke i , S menunjukkan jumlah Employed Bee.

𝜃𝑖𝑗= 𝜃𝑖𝑗𝑚𝑖𝑛+ 𝑟. (𝜃𝑖𝑗𝑚𝑎𝑥− 𝜃𝑖𝑗𝑚𝑖𝑛)

(9)

dimana r adalah bilangan riil yang dipilih secara acak pada range [0,1].

2.2.1 Pseudo-code Algoritma Artificial Bee

Colony 1. Initialization

Inisialisasi sumber makanan dan evaluasi jumlah nektar sumber makanan (fitness).

Kirimkan lebah yang dipekerjakan ke sumber makanan saat ini.

Interasi = 0

2. Do while (kondisi penghentian tidak terpenuhi) 3. // employed bee

For each employed bee

cari sumber makanan baru di lingkungannya berikut keluaran solusi

terbaik yang diraih

Evaluasi kebugaran sumber makanan baru Terapkan pilihan rakus dari sumber makanan baru

End for

4. Hitung probabilitas P untuk setiap sumber makanan

5. // onlooker bee For each onlooker bee

While (jumlah penonton saat ini i <= Sn/2) if (rand() < P)

Kirim lebah ke sumber makanan yang saya kenakan

lebah

Temukan sumber makanan baru di lingkungannya

Terapkan pilihan rakus dari sumber makanan baru

i = i+1 else

i = i+1

i = mod((i-1),Sn/2) +1 End if

End while 6. //scout bee

7. Hafalkan solusi terbaik Iterasi = iterasi +1; End while

Keluarkan solusi terbaik yang diraih

III. HASIL DAN PEMBAHASAN 3.1 PENGUJIAN ALGORITMA GENETIKA

DAN ALGORITMA ARTIFICIAL BEE COLONY

Pada bagian ini akan disajikan hasil dari penggunaan algoritma Genetika dan algoritma Artificial Bee Colony. Dimana hasil pengolahan ini menggunakan permasalahan traveling salesman problem untuk menentukan jalur terpendek. Dimana variasi permasalahan terdapat jumlah titik rute pada jalur yang harus di selesaikan yaitu 5,7,9,11,13,15, dan 17 jalur titik.

Pengujian akan dilakukan dengan menggunakan nilai-nilai parameter pada tabel 3.1, dimana dengan menggunakan nilai parameter yang serupa diharapkan perbedeaan antara algoritma dapat terlihat jelas. Nilai parameter ini diambil berdasarkan beberapa pertimbangan yaitu untuk jumlah populasi dan jumlah pengulangan (Generation) pada Genetika berjumlah lima pulih (50) dan jumlah lebah dan pengulangan (Limit) pada Artificial Bee Colony berjumlah lima puluh (50). Program yang digunakan dalam penelitian ini dalam bentuk web. Dimana program dijalankan dengan spesifikasi komputer yaitu: Intel(R)Core TM i5-4210U @2,7GHz, 4GB of RAM, Sistem Operasi: Microsoft Windows 8.1. pengujian dilakukan direplikasi sebanyak 4 kali, dengan mencatat waktu lamanya permasalahan diproses dan hasil jalur terpendek yang dihasilkan. Hasil yang didapat disajikan pada tabel 3.2 dan 3.3.

Tabel 3.1. Parameter pengujian algoritma

No Paeameter Genetika Artificial Bee Colony

1 Populasi 50 -

2 NP - 50

3 Generation 50 -

4 Limit - 50

Tabel 3.2. Pengujian Kecepatan Pemprosesan Algoritma

NO Jumlah titik Waktu (detik)

Genetika ABC

1 5 3.09729 5.96558

2 7 3.07780 6.74677

3 9 3.40888 7.45970

4 11 3.23713 7.77700

5 13 3.41805 10.29711

6 15 3.80822 11.45680

7 17 3.20626 9.83411

(8)

123 colony. Melihat dari tabel pengujian diatas dapat

disimpulkan bahwa algoritma genetika lebih cepat dibanding dengan algoritma aritificial bee colony. Untuk memperjelas hasil pengujian kecepatan pemprosesan dari kedua algoritma, berikut grafik kecepatan algoritma genetika dengan algoritma artificial bee colony.

Gambar 3.1 Grafik Kecepatan Pemprosesan Algoritma Tabel 3.3 Pengujian Jalur Terpendek Algoritma

N

Dari Tabel 3.3 merupakan hasil pengujian jalur terpendek algoritma. Pengujian ini dilakukan sebanyak 4 kali pengulangan pada setiap masing-masing jalur. Dari hasil pengujian jalur terpendek didapati bahwa ke dua algoritma menampilkan jalur terpendk yang sama dari setiap masing-masing jalur sehingga dapat di simpuklan bahwa kedua algoritma tersebut dapat memecahkan masalah untuk pencarian jalur terpendek tersebut.

Dibawah ini merupakan implementasi dari program yang dibuat:

1. Halaman Utama

Gambar 3.2 Tampilan Halaman Utama

2. Halaman Proses

Gambar 3.3 Tampilan Halaman Proses

IV. PENUTUP 4.1 KESIMPULAN

Kesimpulan yang diambil dari tugas akhir yang

berjudul “ Perbandingan Algoritma Genetika Dengan Algoritma Artificial Bee Colony Dalam Permasalahan

Traveling Salesman Problem” ini adalah sebagai

berikut:

1. Algoritma Genetika meiliki tingkat kecepatan pemprosesan lebih baik dibandingkan dengan algoritma Artificial Bee Colony dikarenakan pada saat pemprosesan sedang berlangsung algoritma Genetika yang lebih cepat.

2. Pada tingkat skalabilitas sistem pemecahan kasus traveling salesman problem (TSP) dalam perbandingan algoritma genetika dengan algoritma artificial bee colony. Algoritma genetika 39,06% lebih unggul dibanding dengan algoritma artificial bee colony, karena algoritma genetika akan mengkasilkan solusi lebih optomal pada setiap generasinya dan algoritma genetika tidak membutuhkan waktu yang lama karena tidak semua kemungkinan dicoba tergantung pada kriteria berakhirnya dibanding dengan algoritma artificial bee colony yang semakin banyak jumlah tempat tujuan maka akurasi sistem semakin menurun dan ketepatan optimasi jarak terpendek semakin sulit didapat.

4.2 SARAN

Berdasarkan penelitian ini terdapat beberapa kekurangan dari aplikasi perbandingan algoritma genetika dengan algoritma artificial bee colony dalam permasalahan traveling salesman problem. Untuk pengembangan lebih lanjut disarankan:

(9)

Perbandingan Algoritma Genetika Dengan Algoritma Artificial Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)

124 1. Diharapkan pada penelitian selanjutnya untuk

mencoba algoritma pembanding lainnya untuk permasalahan traveling salesman problem (TSP) untuk mendapatkan tingkat skalabilitas dan performa sistem yang lebih baik.

2. Diharapkan pada penelitian selanjutnya dapat menampilkan nilai rute lainnya selain rute terbaik.

3. Diharapkan pada penelitian selanjutnya terdapat grafik pembanding, sehingga dapat melihat perbandingan antara algoritma satu dengan yang lainnya.

V. REFERENSI

[1] M. I. Faradian, “Perbandingan Penggunaan Algoritma Genetika Dengan Algoritma Konvensional

Pada Traveling Salesman Problem,” Bandung, 2007.

[2] R. Adipranata, F. Soedjianto, and W. Tjondro,

“Perbandingan Algoritma Exhaustive, Algoritma

Genetika, Dan Algoritma Jaringan Syaraf Tiruan Hopfield Untuk Pencarian Rute Terpendek,” Open Arch. Initiat., pp. 1–10, 2016.

[3] S. Nurhalimatus, “Perbandingan Algoritma Artificial Bee Colony Dan Algoritma Differential Evolution

Plus Untuk Penjadwalan Flowshop,” Universitas

Jember, 2015.

[4] R. M. Puspita, Arini, and S. U. Masrurah,

“Pengembangan Aplikasi Penjadwalan Kegiatan

Pelatihan Teknologi Informasi Dan Komunikasi

Dengan Algoritma Genetika,” J. Online Inform., vol. 1, no. 2, pp. 76–81, 2016.

[5] D. Karaboga, “An Idea Based on Honey Bee Swarm For Numerical Optimization,” Turkey, 2005. [6] A. Desiani and M. Arhami, Konsep Kecerdasan

Buatan, 1st ed. Yogyakarta: Andi, 2006.

[7] N. Pathak and S. P. Tiwari, “Travelling Salesman

Problem Using Bee Colony With S PV,” Int. J. Soft Comput. Eng., vol. 2, no. 3, 2013.

[8] A. S. Bhagade and P. V Puranik, “Artificial Bee Colony ( ABC ) Algorithm for Vehicle Routing

Optimization Problem,” Int. J. Soft Comput. Eng., vol. 2, no. 2, pp. 329–333, 2012.

[9] A. Basuki, “Algoritma Genetika Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan

Machine Learning,” 2003. [Online]. Available:

Gambar

Gambar 2.1 Diagram Alir Proses Algoritma Genetika  Pada Gambar 2.1 dapat dijelaskan sebagai berikut:
Gambar 2.2 Diagram Alir Proses Algoritma Artificial Bee Colony  Pada Gambar 2.2 akan dijelaskan sebagai
Tabel 3.1. Parameter pengujian algoritma
Gambar 3.2 Tampilan Halaman Utama

Referensi

Dokumen terkait

Pemanfaatan terbesar danau, sungai, lautan dan air tanah adalah untuk irigasi pertanian.Daerah aliran sungai merupakan lahan yang berfotensi menjadi sumber air .Daerah

Dari kegiatan yang telah dilaksanakan baik observasi yang kemudian di triangulasikan pada tahap wawancara selanjutnya dapat ditarik kesimpulan bahwa penerapan nilai karakter

Faktor yang mempengaruhinya adalah perbedaan penyerapan atau atenuasi jaringan, kualitas radiasi dan radiasi hambur.Kontras radiografi juga dipengaruhi oleh reseptor kontras

Sedangkan untuk latihan berbeban atau weight training merupakan salah satu bentuk latihan fisik yang dalam pelaksanaannya dapat menggunakan bantuan tubuhnya sendiri bahkan

Bagaimana media pembelajaran dengan menggunakan modul berbasis web dapat meningkatkan motivasi belajar siswa dengan pembelajaran yang tidak memakai modul berbasis

Hal ini disebabkan deret divergen tidak mempunyai sifat-sifat fundamental yang baik seperti pada deret konvergen, dan pustaka tentang operasi pada deret divergen sangat

(2) Apabila dalam jangka waktu sebagaimana dimaksud pada ayat (1) telah terlampaui dan Bupati atau Pejabat yang ditunjuk tidak memberi suatu keputusan, permohonan yang

Gambaran alam bumi pada perwujudan padmasana ditandai dengan adanya tingkatan perut dan permukaan bumi yang disimbolisasikan sebagai ornamen bedawang nala dan elemen gunung