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

  INSIGHT

  Volume 1 No. 1 | April 2018 : 116-124

  

Perbandingan Algoritma Genetika dengan

Algoritma Artificial Bee Colony dalam

Penyelesaian Masalah Traveling Salesman

  

Problem

  1

  2

  3 Krisna Agung Suanda , Ichsan Taufik , Popon Dauni

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

  

  

  

  

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 memiliki hasil yang berbeda-beda, karena belum tentu

1.1 LATAR BELAKANG

  suatu algoritma yang memiliki optimasi yang tinggi Traveling Salesman Problem (TSP) merupakan untuk suatu kasus memiliki optimasi yang tinggi pula sebuah permasalah optimasi yang dapat diterapkan pada untuk kasus yang lain. berbagai kegiatan seperti routing dan penjadwalan

  Adapun beberapa penelitian sebelumnya produksi. Masalah optimasi TSP terkenal dan telah tentang permasalahan traveling salesman problem, menjadi standar untuk mencoba algoritma yang dilakukan oleh Mohamad Irvan Faradian (2007) yang komputational. Pokok permasalahan dari TSP adalah membandingkan algoritma genetika dengan algoritma seorang salesman harus mengunjungi sejumlah kota konvensional pada permasalahan traveling salesman yang diketahui jaraknya satu dengan yang lainnya. problem [1]. Pada kajian tersebut menunjukan bahwa

  Semua kota yang ada harus dikunjungi oleh salesman algoritma genetika lebih unggul dibanding dengan tersebut dan kota tersebut hanya boleh dikunjungi tepat algoritma konvensional walaupun algoritma genetika satu kali. Permasalahannya adalah bagaimana salesman belum tentu solusi dari TSP yang optimal. Pada tersebut dapat mengatur rute perjalanannya sehingga penelitian lain, dilakukan oleh Rudy Adipranata, Felicia jarak yang ditempuhnya merupakan jarak minimum.

  Soedjianto, dan Wahyudi Tjondro (2006) yang Banyak metode yang dapat dipakai untuk membandingkan algoritma genetika dengan algoritma menyelesaikan TSP yaitu Hill Climbing Method, Ant exhaustive serta algoritma Jaringan Syaraf Tiruan Colony System, Dynamic Programming dan artificial

  Hopfield untuk pencarian jalur terpendek [2]. Pada bee colony. Masing-masing algoritma memiliki kajian tersebut menunjukan bahwa algoritma genetika kelebihan dan kekurangannya. Suatu algoritma lebih unggul daripada dua algortima lainnya di tinjau INSIGHT | Volume 1 No. 1 | April 2018 : 116-124

  ISSN 2620-5467 (Online)

  1. Algoritma Genetika a. Representasi kromosom.

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

  e. Fase onlooker

  d. Menghitung probabilitas

  c. Fase employe

  b. Inisialiasi lebah

  a. Representasi nektar

  2. Algoritma Artificial Bee Colony

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

  e. operator recominasi (crossover) dan mutasi.

  d. Seleksi.

  c. Fungsi evaluasi/fitness.

  b. Inisialisasi populasi.

  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:

  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.

  c. Aplikasi dirancang menggunakan PHP dengan framework code igniter.

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

  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. Membandingkan algoritma genetika dengan algoritma artificial bee colony dalam penyelesaian masalah 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.

  terpendek dalam penyelesaian Traveling Salesman Problem .

  bee colony sebagai metode untuk mencari jarak

  1.3 MAKSUD DAN TUJUAN Maksud dari penulisan skripsi ini adalah menerapkan algoritma genetika dan algoritma artificial

  b. Bagaimana perbandingan kinerja dari algoritma genetika dengan algoritma artificial bee colony 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.

  Algoritma Genetika Dengan Algoritma Artificial Bee Kolony Dalam Permasalahan Traveling Salesman Problem”.

  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 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].

  2.1 ALGORITMA GENETIKA Algoritma genetika adalah suatu algoritma pencarian yang berbasis pada mekanisme seleksi alam dan genetika. Algoritma genetika merupakan salah satu algoritma yang sangat tepat digunakan dalam

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

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

  Return JumMutasi

  TotalGen  JumGen * JumlahKromosom ρm  0.2 JumMutasi  0.2*TotalGen

  Algoritma

  TotalGen : integer JumMutasi : integer

  Deklarasi

  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}

  K  0 While k ≤ populasi do

  Algoritma

  {menghasilkan bilangan random bilangan a hingga b}

  k : integer R[] : array of integer function Random (input a-b: integer) integer

  Deklarasi

  {melakukan pemilihan induk pada proses crossover}

  procedure Crossover (input populasi: integer, ρc: real)

  Return jum

  Kromosom[i][j]) endfor Jum

  118 menyelesaikan masalah optimasi kompleks, yang sulit dilakukan oleh metode konvensional [6].

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

  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.

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

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

  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

  2.1.2 Contoh Persoalan TSP Yang Diselesaikan Dengan Algoritma Genetika INSIGHT | Volume 1 No. 1 | April 2018 : 116-124

  ISSN 2620-5467 (Online)

  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) Kromosom (2) = (6) =(C D E B) Kromosom (3) = (2) =(D B E C) Kromosom (4) = (3) =(C B D E) Kromosom (5) = (6) =(C D E B) Kromosom (6) = (1) =(B D E C)

  INSIGHT 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 paramet er 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).

  2.2 ALGORITMA ARTIFICIAL BEE COLONY Artificial bee colony (ABC) adalah algoritma optimasi yang terinspirasi berdasarkan kecerdasan perilaku lebah dalam mencari sumber makanan [6]. ABC pertama kali diperkenalkan pada tahun 2005 oleh Dervis Karaboga, dengan mempelajari perilaku lebah dikehidupan nyata dalam mencari nektar sebanyak mungkin dan menyebarkan informasi sumber makanan kepada lebah lain di sarang. Para lebah mencoba memaksimalkan jumlah nektar yang akan di serahkan ke sarang mereka dengan melakukan pembagian tugas INSIGHT | Volume 1 No. 1 | April 2018 : 116-124

  ISSN 2620-5467 (Online)

  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.

  Langkah 6. Selesai : Periksa apakah program berhenti telah sesuai dengan iterasi, kemudian periksa juga apakah hasil yang diperoleh telah memuaskan, jika tidak kembali ke langkah 2.

  INSIGHT

  Keluarkan solusi terbaik yang diraih ( + 1) = ( ) −

  • ∅( ( )) (7) dimana dinotasikan sebagai posisi lebah ke i, kemudian j adalah dimensi dari solusi atau sumber

  III. HASIL DAN PEMBAHASAN

  3.1 PENGUJIAN ALGORITMA GENETIKA makanan, t adalah angka iterasi, adalah posisi lebah

  DAN ALGORITMA ARTIFICIAL BEE ke k yang dipilih secara acak, dan ∅ adalah suatu

  COLONY bilangan riil yang dipilih secara acak pada range [-1,1].

  ( )

  Pada bagian ini akan disajikan hasil dari =

  ∑ ( ) =1 penggunaan algoritma Genetika dan algoritma Artificial

  (8) Bee Colony. Dimana hasil pengolahan ini menggunakan dimana permasalahan traveling salesman problem untuk adalah probabilitas ke i, kemudian adalah posisi lebah ke i , S menunjukkan jumlah menentukan jalur terpendek. Dimana variasi Employed Bee. permasalahan terdapat jumlah titik rute pada jalur yang harus di selesaikan yaitu 5,7,9,11,13,15, dan 17 jalur

  = + . ( − ) (9) titik. dimana r adalah bilangan riil yang dipilih

  Pengujian akan dilakukan dengan secara acak pada range [0,1]. menggunakan nilai-nilai parameter pada tabel 3.1,

2.2.1 Pseudo-code Algoritma Artificial Bee

  dimana dengan menggunakan nilai parameter yang

  Colony serupa diharapkan perbedeaan antara algoritma dapat

  1. Initialization terlihat jelas. Nilai parameter ini diambil berdasarkan Inisialisasi sumber makanan dan evaluasi jumlah beberapa pertimbangan yaitu untuk jumlah populasi dan nektar sumber makanan (fitness). jumlah pengulangan (Generation) pada Genetika Kirimkan lebah yang dipekerjakan ke sumber berjumlah lima pulih (50) dan jumlah lebah dan makanan saat ini. pengulangan (Limit) pada Artificial Bee Colony Interasi = 0 berjumlah lima puluh (50). Program yang digunakan

  2. Do while (kondisi penghentian tidak terpenuhi) dalam penelitian ini dalam bentuk web. Dimana 3. // employed bee program dijalankan dengan spesifikasi komputer yaitu:

  For each employed bee Intel(R) Core TM i5-4210U @2,7GHz, 4GB of RAM, cari sumber makanan baru di lingkungannya Sistem Operasi: Microsoft Windows 8.1. pengujian berikut keluaran solusi dilakukan direplikasi sebanyak 4 kali, dengan mencatat terbaik yang diraih waktu lamanya permasalahan diproses dan hasil jalur

  Evaluasi kebugaran sumber makanan baru terpendek yang dihasilkan. Hasil yang didapat disajikan Terapkan pilihan rakus dari sumber pada tabel 3.2 dan 3.3.

Tabel 3.1. Parameter pengujian algoritma

  makanan baru

  Artificial Bee

  End for

  No Paeameter Genetika Colony

  4. Hitung probabilitas P untuk setiap sumber

  50

  • 1 Populasi

  makanan

  2 - NP

  50

  3 Generation

  50

  5. // onlooker bee

  4 Limit

  50 For each onlooker bee

Tabel 3.2. Pengujian Kecepatan Pemprosesan Algoritma

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

  Waktu (detik)

  if (rand() < P)

  NO Jumlah titik Genetika ABC

  Kirim lebah ke sumber makanan yang

  1 5 3.09729 5.96558

  saya kenakan

  2 7 3.07780 6.74677

  lebah Temukan sumber makanan baru di

  3 9 3.40888 7.45970

  lingkungannya

  4 11 3.23713 7.77700

  Terapkan pilihan rakus dari sumber

  5 13 3.41805 10.29711

  makanan baru

  6 15 3.80822 11.45680

  i = i+1

  7 17 3.20626 9.83411

  else Dari Tabel 3.2. Merupakan hasil pengujian i = i+1 kecepatan pemprosesan algoritma. Pengujian ini i = mod((i-1),Sn/2) +1 dilakukan sebanyak 4 kali pengulangan pada setiap

  End if masing-masing jalur. Pada waktu pemprosesan waktu End while setiap jalur dijumlahkan lalu dibagi dengan banyaknya

  6. //scout bee percobaan maka didapat nilai rata-rata dari waktu

  7. Hafalkan solusi terbaik pemprosesan algoritma yaitu 3.32195s untuk algoritam Iterasi = iterasi +1; genetika dan 8.50529 untuk algoritma artificial bee End while

  Perbandingan Algoritma Genetika Dengan Algoritma Artificial

  122

  Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)

  ISSN 2620-5467 (Online)

  INSIGHT | Volume 1 No. 1 | April 2018 : 116-124 colony . Melihat dari tabel pengujian diatas dapat

  1. Halaman Utama 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 .

  10

  8 Genetika

  6 Gambar 3.2 Tampilan Halaman Utama

  4

  2. Halaman Proses artificial bee 2 colony kecepatan pemprosesan algoritma(s)

Gambar 3.1 Grafik Kecepatan Pemprosesan AlgoritmaTabel 3.3 Pengujian Jalur Terpendek Algoritma Panjang jalur terbaik

  N Jumlah Jalur terbaik (Km) O titik Genetika ABC Genetika ABC

  • – 1 – 3 – – 1 – 3 –

Gambar 3.3 Tampilan Halaman Proses

  1 5 14.9383 14.9383 2 – 4 – 0 2 – 4 – 0

  • – 2 – 3 – – 2 – 3 –

  IV. PENUTUP

  2 7 25.8881 25.8881 1 – 4 – 6 – 1 – 4 – 6 –

  5

  5

  • – 0 – 0

  4.1 KESIMPULAN

  • – 4 – 8 – – 4 – 8 –

  Kesimpulan yang diambil dari tugas akhir yang

  7 – 2 – 5 – 7 – 2 – 5 –

  3 9 33.5480 33.5480

  berjudul “ Perbandingan Algoritma Genetika Dengan

  6

  6

  • – 1 – 3 – – 1 – 3 –

  Algoritma Artificial Bee Colony Dalam Permasalahan

  • – 5 – 8 – – 5 – 8 – Traveling Salesman Problem” ini adalah sebagai

  1

  1

  • – 2 – 7 – – 2 – 7 –

  berikut:

  4 11 40.9448 40.9448 6 – 9 – 4 – 6 – 9 – 4 –

  1. Algoritma Genetika meiliki tingkat kecepatan

  10 – 3 – 0 10 – 3 – 0

  pemprosesan lebih baik dibandingkan dengan

  • – 2 – 10
  • – 2 – 10 –

  algoritma Artificial Bee Colony dikarenakan

  • – 8 – 9 –

  8

  • – 9 – 11 – 11 – 12 –

  pada saat pemprosesan sedang berlangsung

  5 13 60.1853 60.1853

  12

  • – 4 – 6 – 4 – 6 – 7 – algoritma Genetika yang lebih cepat.

  7 – 5 – 3 –

  5

  • – 3 – 1 – 1 – 0

  2. Pada tingkat skalabilitas sistem pemecahan kasus traveling salesman problem (TSP) dalam

  • – 6 – 5 – – 6 – 5 –

  4

  4

  • – 14 – 9 – 14 – 9 – perbandingan algoritma genetika dengan
  • – 2 – 8 – 7 2 – 8 – 7 –

  algoritma artificial bee colony. Algoritma

  6 15 131.1275 131.1275

  • – 12 – 11 12 – 11 –

  genetika 39,06% lebih unggul dibanding

  • – 10 – 3 – 10 – 3 – 1 –

  dengan algoritma artificial bee colony, karena

  1

  13

  • – 13 – 0 – 0
  • – 8 – 14 algoritma genetika akan mengkasilkan so
  • – 8 – 14 –
  • – 5 – 12 –

  lebih optomal pada setiap generasinya dan

  5 – 12 – 1 –

  1

  • – 3 – 7 – 3 – 7 – 11 – algoritma genetika tidak membutuhkan waktu

  11

  • – 4 –

  7 17 82.6859 82.6859 4 – 16 – 10

  yang lama karena tidak semua kemungkinan

  16 – 10 –

  • – 13 – 6 – 13 – 6 – dicoba tergantung pada kriteria berakhirnya

  15

  • – 2 – 9 –

  15

  • – 2 – 9

  dibanding dengan algoritma artificial bee

  • – 0

  colony yang semakin banyak jumlah tempat Dari Tabel 3.3 merupakan hasil pengujian jalur tujuan maka akurasi sistem semakin menurun terpendek algoritma. Pengujian ini dilakukan sebanyak dan ketepatan optimasi jarak terpendek 4 kali pengulangan pada setiap masing-masing jalur. semakin sulit didapat. Dari hasil pengujian jalur terpendek didapati bahwa ke

  4.2 SARAN dua algoritma menampilkan jalur terpendk yang sama Berdasarkan penelitian ini terdapat beberapa dari setiap masing-masing jalur sehingga dapat di kekurangan dari aplikasi perbandingan algoritma simpuklan bahwa kedua algoritma tersebut dapat genetika dengan algoritma artificial bee colony dalam memecahkan masalah untuk pencarian jalur terpendek permasalahan traveling salesman problem. Untuk tersebut. pengembangan lebih lanjut disarankan:

  Dibawah ini merupakan implementasi dari program yang dibuat:

  INSIGHT

  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 Optim ization,” 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: basuki.lecturer.pens.ac.id/lecture/AlgoritmaGenetika .pdf. [Accessed: 20-May-2017].

  Perbandingan Algoritma Genetika Dengan Algoritma Artificial

  124

  Bee Colony Dalam Penyelesaian Masalah Traveling Salesman Problem (Krisna Agung Suanda)