APLIKASI ALGORITMA KOLONI LEBAH DAN ALGORITMA GENETIKA DALAM PENDISTRIBUSIAN HASIL PRODUKSI UKM KERUPUK METUK.

(1)

1 BAB I PENDAHULUAN A. Latar Belakang

Alam menginspirasi para peneliti untuk mengembangkan model dalam meyelesaikan permasalahan mereka. Optimasi merupakan satu bidang yang secara berkala dikembangkan dan diterapkan. Algoritma genetika mensimulasikan seleksi alam dan operator genetika. Particle swarm optimization algoritm mensimulasikan kawanan burung dan kawanan ikan. Sistem kekebalan buatan mensimulasikan perkembangan sel pada sistem kekebalan. Algoritma optimasi koloni semut mensimulasikan kebiasaan semut dalam proses pencarian makanan. Algoritma koloni lebah mensimulasikan kebiasaan lebah madu dalam proses pencarian makanan. (Karaboga, 2009: 2)

Lebah merupakan serangga yang hidup secara berkelompok. Satu koloni lebah terbagi dalam tiga kelompok yaitu lebah ratu, lebah jantan dan lebah pekerja. Lebah ratu merupakan satu-satunya lebah yang mampu menghasilkan telur lebah dalam setiap koloni. Lebah jantan adalah lebah yang bertugas membuahi lebah ratu, dia akan mati setelah melakukan pembuahan. Lebah pekerja merupakan lebah yang mendedikasikan seluruh hidupnya hanya untuk bekerja, mereka mandul, sehingga mereka tidak aktif dalam proses pembuahan.

Lebah pekerja dalam setiap koloni terbagi menjadi tiga, yaitu lebah perawat, lebah pencari, dan lebah pengumpul. Lebah perawat bertugas di sarang sebagai perawat ratu serta telur dan larva lebah. Lebah pencari bertugas mencari lokasi bunga yang mengandung nektar dan pollen yang bagus. Lebah pengumpul bertugas


(2)

2

mengumpulkan pollen dan nektar bunga, mereka hanya akan berkunjung kebunga yang telah ditinggali jejak oleh lebah pencari.

Proses pencarian dan pengumpulan makanan pada lebah pertama-tama lebah pencari mencari bunga. Setelah menemukan, lebah pencari akan menginformasikan hasil pencariannya kepada lebah pengumpul. Informasi ini berupa lokasi dan kualitas serta kuantitas nektar dangan melakukan suatu tarian. Selanjutnya lebah pengumpul akan menuju lokasi tempat mengambil nektar dengan rute optimal berdasarkan informasi dari lebah pencari. Tingkah laku unik dari lebah pencari dan lebah pengumpul kemudian dijadikan algoritma koloni lebah yang mampu menyelesaikan traveling salesman problem (TSP).

Algoritma koloni lebah merupakan salah satu algoritma optimasi yang didesain dengan menirukan tingkah laku kawanan lebah dalam mencari dan mengekploitasi sumber-sumber makanan secara efisien. Ketika lebah pencari menemukan makanan, mereka akan mengundang sekaligus memberi informasi kepada lebah lainnya dengan melakukan tarian. Informasi mengenai sumber makanan terdiri dari: arah, jarak dari sarang, dan kualitas nektar. Semakin bagus kualitasnya, semakin lama durasi terian yang dilakukan oleh lebah. (Suyanto, 2010: 224).

Algoritma genetika pertama kali dirintis oleh John Holland pada tahun 1960-an. Algoritma genetika telah dipelajari, diteliti, dan diaplikasikan secara luas pada berbagai bidang. Algoritma genetika banyak digunakan pada masalah praktis yang berfokus pada pencarian parameter-parameter optimal. Keuntungan penggunaan algoritma genetika sangat jelas terlihat dari kemudahan implementasi


(3)

3

dan kemampuannya untuk menemukan solusi yang ‘bagus’ (bisa diterima) secara tepat untuk masalah-masalah berdimensi tinggi (Suyanto, 2005: 3). Suyanto menyelesaikan algoritma genetika menggunakan software Matlab. Pemilihan bahasa pemrograman Matlab lebih didasari pada kemudahan didalam mengimplementasikan komponen-komponen algoritma genetika yang banyak menggunakan operasi matriks (Suyanto, 2005: 17).

Kerupuk merupakan makanan ringan yang meggunakan bahan dasar tepung seperti tepung tapioka, sagu, terigu, beras, ketan, dan jenis tepung lainnya. Pemakaian kerupuk ini tergantung pada jenis kerupuk apa yang ingin dibuat (JB TEAM, 2010: 117). Harga yang murah, membuat kerupuk menjadi salah satu jenis makanan yang dapat dinikmati oleh semua kalangan. Kerupuk dapat dijumpai hampir di semua warung makan. Namun kerupuk bukanlah jenis makanan yang dapat disimpan dalam waktu yang lama. Kerupuk akan melempem dalam jangka waktu tertentu bergantung cara penyimpanannya. Sifat alami kerupuk yang mudah melempem menjadi permasalahan tersendiri oleh salesman kerupuk.

UKM Kerupuk Metuk merupakan suatu rumah produksi kerupuk yang beralamat di kecamatan Mojosongo kabupaten Boyolali. Pengambilan data dilakukan dengan mewawancarai salah satu salesman dan mengikuti salesman selama pendistribusian untuk mendapatkan waktu perjalanan dan pelayanan. Salesman kerupuk harus mampu menghantarkan kerupuk yang dibawanya dalam waktu maksimal empat jam untuk menjaga kualitas kerupuk sehingga tidak mengecewakan pelanggan. Oleh karena itu, algoritma koloni lebah dan algoritma genetika diharapkan mampu menyelesaikan permasalahan ini sehingga didapatkan


(4)

4

rute optimal berasarkan waktu tercepat dalam pendistribusian kerupuk UKM Kerupuk Metuk.

B. Rumusan Masalah

Permasalahan yang akan dibahas dalam penelitian ini adalah sebagai berikut.

1. Bagaimana model matematika pada permasalahan optimasi pendistribusian kerupuk UKM Metuk.

2. Bagaimana penyelesaian permasalahan optimasi pendistribusian kerupuk UKM Metuk dengan algoritma koloni lebah dan algoritma genetika.

3. Bagaimana waktu optimum pendistribusian hasil produksi UKM kerupuk metuk dengan algoritma koloni lebah.

4. Bagaimana rute optimal pendistribusian hasil produksi UKM kerupuk metuk dengan algoritm koloni lebah.

5. Bagaimana waktu optimum pendistribusian hasil produksi UKM kerupuk metuk dengan algoritma genetika.

6. Bagaimana perbedaan hasil waktu optimum dengan metode algoritma koloni lebah dan algoritma genetika.

C. Batasan Masalah

Untuk menghindari melebarnya masalah, maka dalam penelitian ini diberi pembatasan masalah sebagai berikut


(5)

5

1. Ruang lingkup penelitian adalah warung makan di Kecamatan Mojosongo, Teras, dan Boyolali, Kabupaten Boyolali, yang menerima suplay kerupuk dari UKM kerupuk metuk.

2. Penentuan rute optimal penistribusian hasil produksi UKM kerupuk metuk menggunakan algoritma koloni lebah.

3. Dalam pemilihan rute, gang-gang kecil diabaikan.

D. Tujuan Penelitian

Tujuan yang ingin dicapai dalam penelitian ini adalah sebagai berikut.

1. Membentuk model matematika pada permasalahan optimasi pendistribusian kerupuk UKM Metuk.

2. Menyelesaian permasalahan optimasi pendistribusian kerupuk UKM metuk dengan algoritma koloni lebah dan algoritma genetika.

3. Mendapatkan waktu optimum pendistribusian hasil produksi UKM kerupuk metuk dengan algoritma koloni lebah.

4. Mendapatkan rute optimal pendistribusian hasil produksi UKM kerupuk metuk

5. Mendapatkan waktu optimum pendistribusian hasil produksi UKM kerupuk metuk dengan algoritma genetika.

6. Mengetahui perbedaan hasil waktu optimum dengan metode algoritma koloni lebah dan algoritma genetika.


(6)

6 E. Manfaat Penelitian

Manfaat dari penelitian ini adalah sebagai berikut.

1. Meningkatkan pengetahuan tentang penentuan optimasi rute distribusi dengan menggunakan algoritma koloni lebah.

2. Menambah pengetahuan tentang aplikasi algoritma koloni lebah untuk mencari jalur optimal pendistribusian hasil produksi kerupuk.


(7)

7 BAB II

KAJIAN PUSTAKA A. Pengertian Graf

Sebuah graf G didefinisikan sebagai pasangan himpunan (V,E) , dengan V adalah himpunan tak kosong dari simpul-simpul (vertices) pada G. Sedangkan E adalah himpunan rusuk (edge) pada G yang menghubungkan sepasang simpul. Himpunan simpul pada G dinotasikan sebagai V, dan himpunan rusuk pada G dinotasikan sebagai E. Jadi G=(V, E) (Harju, 2012:4).

Menurut Siang (2002:187), suatu graf G terdiri dari 2 himpunan yang berhingga, yaitu himpunan simpul-simpul tidak kosong (V(G)) dan himpunan garis-garis (E(G)). Jadi, suatu graf G adalah pasangan himpunan V dan E, dituliskan G = (V,E), dengan V adalah suatu himpunan berhingga dan E adalah suatu himpunan rusuk yang bersisian dengan V.

Berikut adalah beberapa istilah yang sering digunakan dalam graf. 1. Gelang (Loop)

Menurut Munir (2005), suatu rusuk dikatakan gelang apabila ujung rusuknya berawal dan berakhir pada simpul yang sama.

2. Rusuk Ganda (Multiple Edges)

Pada sebuah graf, terdapat kemungkinan bahwa terdapat lebih dari satu rusuk yang bersisian dengan sepasang simpul. Rusuk tersebut dinamakan rusuk ganda.


(8)

8 3. Bertetangga (Adjacent)

Dua buah simpul pada graf tak berarah G dikatakan bertetangga bila keduanya terhubung langsung dengan sebuah rusuk. (Harju, 2012). Dengan kata lain, u bertetangga dengan v jika (u, v) adalah sebuah rusuk pada graf.

Gambar 2.1 Graf A

Pada Gambar 2.1, simpul v1 bertetangga dengan simpul v2, e1 merupakan gelang, dan antara v1 dan v3 terdapat rusuk ganda e5 dan e4. 4. Bersisian (Incident)

Untuk sembarang rusuk e = (u, v), rusuk e dikatakan bersisian dengan simpul u dan simpul v. Pada Gambar 2.1 rusuk e7 bersisian dengan v4 dan v5. Sedangkan e2 tidak bersisiang dengan v1 maupun v2.

5. Graf Kosong (Null Graph atau Empty Graph)

Graf kosong adalah graf yang himpunan rusuknya merupakan himpunan kosong. Graf kosong dapat dinotasikan dalam Nn, dimana n adalah banyaknya simpul.


(9)

9 6. Perjalanan (Walk)

Perjalanan u-v di G dengan u,v merupakan simpul-simpul pada graf G adalah barisan berganti-ganti antara simpul dan rusuk dari G, diawali dengan simpul u dan diakhiri dengan simpul v.

Gambar 2.3 Graf D

Barisan a, ab, b, bf, f, fc, c, ce, e merupakan sebuah contoh perjalanan dari graf pada Gambar 2.3.

7. Lintasan (Path)

Menurut Munir (2005), lintasan yang panjangnya n dari simpul awal v0 ke simpul tujuan vn di dalam graf D ialah barisan berselang-seling simpul-simpul dan rusuk-rusuk yang berbentuk v0, e1, v1, e2, v2, ..., vn-1, en, vn sedemikian sehingga e1 = (v0, v1), e2 = (v1, v2), ..., en = (vn-1,vn) adalah

rusuk-rusuk dari graf D. Barisan c, cb, b, bf, f, pada Gambar 2.3 merupakan sebuah lintasan.

8. Siklus (Cycle) atau Sirkuit (Circuit)

Sirkuit atau siklus adalah lintasan yang berawal dan berakhir pada simpul yang sama. Sebuah sirkuit dikatakan sirkuit sederhana (simple sirkuit) jika setiap rusuk yang dilalui berbeda. Contoh sirkuit dari graf pada Gambar 2.3 ,adalah a-b-c-d-e-f-a.

a

b

c

d

e f


(10)

10 9. Terhubung (Connected)

Dua buah simpul dalam graf, simpul u dan simpul v dikatakan terhubung jika terdapat lintasan dari u ke v. Jika dua buah simpul terhubung maka pasti simpul yang pertama dapat dicapai dari simpul yang kedua. Jika setiap simpul di dalam graf terhubung, maka graf tersebut disebut sebagai graf terhubung (Siang:2002). Definisi mengenai graf terhubung dibagi menjadi dua, yaitu untuk graf tak berarah dan untuk graf berarah.

a. Menurut Munir (2005), graf tak berarah G disebut graf terhubung (connected graph) jika untuk setiap pasang simpul u dan v di dalam himpunan V terdapat lintasan dari u ke v (yang juga harus berarti ada lintasan dari v ke u). Jika tidak, maka G disebut graf tak terhubung (disconnected graph). Gambar 2.4 adalah contoh dari graf tak berarah yang terhubung.

Gambar 2.4 Graf Tak Berarah Yang Terhubung

b. Graf berarah G dikatakan terhubung jika graf tak berarahnya terhubung (graf tak berarah dari G diperoleh dengan menghilangkan arahya) (Munir, 2005). Pada graf berarah, keterhubungan dua buah simpul dibedakan menjadi dua, yaitu terhubung kuat dan terhubung lemah.


(11)

11

Gambar 2.5 Graf Berarah Terhubung

Graf pada Gambar 2.5 (a) merupakan graf terhubung kuat, karena untuk sembarang sepasang simpul di dalam graf tersebut terdapat lintasan. Sedangkan graf pada Gambar 2.5 (b) merupakan graf terhubung lemah, karena tidak semua pasangan simpul mempunyai lintasan arah.

10. Graf Berbobot (Weighted Graph)

Graf berbobot adalah graf yang setiap rusuknya diberi sebuah harga (bobot) (Munir, 2005:376). Bobot pada tiap rusuk dapat berbeda-beda, tergantung pada masalah yang dimodelkan dengan graf. Bobot pada graf berbobot dapat menyatakan jarak antara dua buah kota, biaya perjalanan antar dua buah kota, ongkos produksi, dan lain sebagainya.


(12)

12 B. Jenis-Jenis Graf

Graf dapat dikelompokkan menjadi beberapa jenis sesuai dengan sudut pandang pengelompokannya. Pengelompokan graf dapat dipandang berdasarkan ada tidaknya rusuk ganda, berdasarkan jumlah simpul, atau berdasarkan orientasi arah pada rusuk (Munir, 2005:357).

Berdasarkan ada tidaknya gelang (loop) yaitu rusuk yang menghubungkan sebuah simpul dengan dirinya sendiri atau rusuk ganda pada suatu graf, maka secara umum graf dapat digolongkan menjadi dua jenis, graf sederhana dan graf tak sederhana.

1. Graf Sederhana (Simple Graph)

Graf sederhana adalah graf yang tidak mempunyai rusuk ganda dan atau, gelang. Pada graf sederhana, rusuk adalah pasangan tak terurut (unordered pairs) (Harju:2012). Jadi rusuk (u, v) sama dengan (v, u). Menurut Munir (2005) graf sederhana juga dapat didefinisikan sebagai G = (V, E), terdiri dari V, himpunan tidak kosong simpul-simpul dan E, himpunan pasangan tak terurut yang berbeda yang disebut rusuk. Berikut adalah contoh graf sederhana.


(13)

13

Menurut Siang (2002) beberapa graf sederhana khusus yang sering digunakan adalah sebagai berikut.

a. Graf Lengkap (Complete Graph)

Graf lengkap adalah graf sederhana yang setiap dua simpulnya bertetangga. Graf lengkap dengan n buah simpul dilambangkan dengan

Kn. Setiap simpul pada Kn berderajat n 1. Banyaknya rusuk pada graf

lengkap yang terdiri dari n buah simpul adalah n(n – 1)/2.

Gambar 2.8 Graf Lengkap (Complete Graph) b. Graf Lingkaran

Graf lingkaran adalah graf sederhana yang setiap simpulnya berderajat dua. Graf lingkaran dengan n simpul dilambangkan dengan

Cn.


(14)

14 c. Graf Teratur (Regular Graph)

Graf teratur adalah graf yang setiap simpulnya mempunyai derajat yang sama. Apabila derajat setiap simpul adalah r, maka graf tersebut disebut sebagai graf teratur derajat r.

Gambar 2.10 Graf Teratur Derajat 3 d. Graf Bipartit (Bipartite Graph)

Graf G yang himpunan simpulnya dapat dikelompokkan menjadi dua himpunan bagian V1 dan V2, sedemikian sehingga setiap rusuk di dalam G menghubungkan sebuah simpul di V1 ke sebuah simpul di V2 disebut graf bipartit dan dinyatakan sebagai G (V1, V2).

Gambar 2.11 Graf Bipartit (Bipartite Graph) 2. Graf Tak Sederhana (Unsimple Graph)

Graf yang mengandung rusuk ganda atau gelang dinamakan graf tak sederhana (unsimple graph) (Harju:2012). Ada dua macam graf tak sederhana, yaitu graf ganda (multigraph) atau graf semu (pseudograph). Graf ganda adalah graf yang mengandung rusuk ganda. Graf semu adalah graf yang mengandung gelang (loop).


(15)

15

Gambar 2.12 Contoh Graf Tak Sederhana (Graf Ganda dan Graf Semu) Selain berdasarkan ada tidaknya rusuk ganda dan jumlah simpul pada suatu graf, graf juga dapat dikelompokkan berdasarkan orientasi arah pada rusuknya.Pengelompokan berdasarkan orientasi arah pada rusuknya digolongkan menjadi dua yaitu graf tak berarah dan graf berarah (Bondy, Murty :1982).

1. Graf Tak Berarah (Undirected Graph)

Graf tak berarah adalah graf yang rusuknya tidak mempunyai orientasi arah. Urutan pasangan simpul yang dihubungkan oleh rusuk tidak diperhatikan (Siang, 2002:194). Jadi (V1, V2) = (V2, V1) adalah rusuk yang sama.

Gambar 2.13 Contoh Graf Tak Berarah 2. Graf Berarah (Directed Graph) (Harju, 2012:5)

Graf berarah adalah graf yang setiap rusuknya memiliki orientasi arah. Rusuk pada graf berarah disebut busur (arc). Pada graf berarah, (u, v) dan (v,


(16)

16

u) menyatakan dua buah busur yang berbeda. Jadi (u, v) ≠ (v, u). Untuk busur

(u, v), simpul u dinamakan simpul asal (initial vertex) dan simpul v dinamakan simpul terminal (terminal vertek). Graf berarah ini seringkali di jadikan dasar dalam pembentukan model mengenai aliran proses, peta lalu lintas, sistem jaringan listrik, jaringan telepon, analisis jejaring sosial, dan lain sebagainya. Pada graf berarah, adanya gelang diperbolehkan, tetapi rusuk ganda tidak.

Gambar 2.14 Graf Berarah

C. Traveling Salesman Problem

Traveling salesman problem (TSP) adalah mencari rute untuk salesman yang dimulai dari lokasi awal, mengunjungi serangkaian kota kemudian kembali ke lokasi semula sedemikian sehingga jarak total yang ditempuh adalah jarak minimal dan setiap kota dikunjungi tepat satu kali. (Gutin, 2006 : 1)

Menurut Radolp W Hall (2003: 423), tiga tujuan (kriteria) yang paling penting dalam penyelesaian program rute tersingkat adalah.

1. Meminimalkan jumlah kendaraan. 2. Meminimalkan waktu tempuh total.


(17)

17

Traveling salesman problem dapat di modelkan dalam graf tak berarah dan berbobot. Berikut representasi banyaknya sirkuit TSP dalam graf .

Gambar 2.15 Graf K

Dari Graf K berbobot dicari banyaknya sirkuit dari simpul A kembali lagi ke simpul A. Terdapat 6 sirkuit pada Graf K yaitu, A-B-C-D-A, A-D-C-B-A, A-C-D-B-A, A-B-D-C-A, A-D-B-C-A, dan A-C-B-D-A, sehingga banyaknya sirkuit (s) dapat dicari dengan

ݏ ൌ ሺ݊ െ ͳሻǨ

Rusuk-rusuk dalam graf K tidak berarah sehingga wA,B wB,A, sehingga banyaknya sirkuit menjadi

ݏ ൌ

ሺ௡ିଵሻǨ

karena sirkuit A-B-C-D-A = A-D-C-B-A, A-C-D-B-A= A-C-D-B-A, dan A-C-B-D-A = A-D-B-C-A. Jadi banyaknya semua kemungkinan sirkuit ditentukan dengan rumus (2.2). Pada Skripsi ini, sirkuit dalam permasalahan TSP disebut dengan rute perjalanan.

Menurut Gutin (2006: 16). Secara matematis, permasalahan TSP dapat diformulasikan sebagai.

1 . 2

2 . 2


(18)

18

݉݅݊݅݉݅ݖ݁ ෍ ෍ ܿ௜௝ݔ௜௝ ௡

௝ୀଵ ௡ ௜ୀଵ

dengan kendala

෍ ݔ௜௝ ൌ ͳǡ ௡

௜ୀଵ

݆ ൌ ͳǡ ʹǡ ǥ ǡ ݊

෍ ݔ௜௝ ൌ ͳǡ ௡

௝ୀଵ

݅ ൌ ͳǡ ʹǡ ǥ ǡ ݊ ݔ௜௝ א ሼͲǡͳሽǡ݅ǡ ݆ ൌ ͳǡ ʹǡ ǥ ǡ ݊

Jika disajikan dalam bentuk tabel

Tabel 2.1. Tabel Permasalahan TSP

v1 v2 ... vn ෍ ݔ௜௝

௡ ௝ୀଵ

v1

c

11

x

11

c

12

x

13 ...

c

1n

x

1n 1

v2

c

21

x

21

c

22

x

22 ...

c

2n

x

2n 1

... ... ... ... ...

vn

c

n1

x

n1

c

n2

x

n2 ...

c

nn

x

nn 1

෍ ݔ௜௝ ௡ ௜ୀଵ

1 1 1 n

cij pada tabel tersebut merepresentasikan waktu dari simpul i ke simpul j. Sedangkan xij merepresentasikan ada tidaknya jalur dari simpul i ke simpul j. Sesuai dengan kendala, xij bernilai 0 jika tidak ada jalur yang menghubungkan simpul i ke


(19)

19 D. Algoritma

1. Pengertian algoritma (Wahid, 2004:2)

Algortima adalah urutan langkah-langkah yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah (jika ada pemecahannya) dalam rentang waktu tertentu sedemikian rupa sehingga didapatkan hasil yang paling optimal.

2. Syarat algoritma (Wahid, 2004: 4)

Karakteristik atau syarat algoritma memenuhi sebagai berikut. a. Algoritma harus tidak ambigu (unambiguous).

b. Algoritma harus tepat (precise). c. Algoritma harus pasti (definite). d. Algortima harus berhingga (finite).

3. Cara penulisan algoritma (Wahid, 2004: 10-11)

Algoritma sebagai langkah-langkah pemecahan masalah dapat dituliskan dalam beberapa cara sebagai berikut.

a. Uraian deskriptif.

b. Pseudocode.

c. Bagan alir (flow chart).

Uraian deskriptif merupakan suatu algoritma yang menggunakan bahasa sehari-hari. Algoritma juga dapat dituliskan dalam kode-kode yang disepakati dan mempunyai arti sendiri. Kode-kode seperti ini disebut dengan

pseudecode. Kode-kode ini dapat dikembangkan sendiri, asalkan arti dari


(20)

20

notasi grafik yang setiapnya mempunyai arti tertentu. Notasi-notasi tersebut digunakan untuk menggambarkan bagan alir (flow chart).

E. Algoritma Koloni Lebah

Algoritma koloni lebah mensimulasikan kebiasaan lebah dalam pencarian makanan. Lebah madu merupakan contoh khusus dari alam yang menginspirasi algoritma optimasi. (Karaboga, 2009:2)

Langkah-langkah penyesuaian algoritma koloni lebah. 1. Forage (proses pencarian sumber makanan)

Tahapan ini diberikan pada setiap lebah yang akan mengunjungi sumber makanan. Aturan diberlakukan ketika lebah dihadapkan pada beberapa pilhan simpul. Pengambilan simpul selanjutnya ditentukan oleh nilai peluang yang berdasarkan nilai arc fitness dan waktu tempuh antar simpul.

Arc fitness dihitung untuk semua kemungkinan antara simpul i dan

simpul j pada transisi ke-n. Nilai fitness yang lebih besar akan diberikan untuk rute yang menjadi bagian dari preferred path (dinyatakan dengan θ). Arc

fitness dinyatakan oleh persamaan.

ߩ

௜௝ǡ௡

ە

ۖ

۔

ۖ

ۓ

ߣ

ǡ ݆ א ܨ

݅ǡ݊

ǡ

ܣ

݅ǡ݊

൐ ͳ

ͳ െ ߣ

ܣ

݅ǡ݊

ת ܨ

݅ǡ݊

൐ ͳ

ܣ

݅ǡ݊

െ ܨ

݅ǡ݊

ǡ ݆ ב ܨ

݅ǡ݊

ǡ

ܣ

݅ǡ݊

൐ ͳ

ͳ

ǡ

ܣ

݅ǡ݊

ൌ ͳ

Keterangan.


(21)

21

ρ

ij,n = arc fitness antara simpul i dan j pada transisi ke-n

λ = probabilitas kota yang diikuti pada θ.

Ai,n = himpunan simpul yang bisa dijangkau dari simpul i pada transisi ke-n.

Fi,n = himpunan berisi satu simpul yang direkomendasikan. Peluang untuk berpindah dari simpul i dan j pada transisi ke-n merupakan fungsi dari waktu dan arc fitness. Dapat didefinisikan.

ܲ

௜௝ǡ௡

ൣఘ೔ೕǡ೙൧ഀቈ భ

೏೔ǡೕ቉ ഁ

σ ൣఘ೔ೕǡ೙൧ഀቈ೏೔ǡೕభ ቉ ഁ ೕאಲ೔ೕǡ೙

ρ

ij = arc fitness antara simpul i dan j.

dij = waktu tempuh antara simpul i dan j.

Pij = peluang percabangan dari simpul i ke simpul j.

α = variabel biner yang menunjukan pengaruh dari arc fitness. β = variabel yang berfungsi untuk mengontrol signifikasi level untuk

waktu tempuh antar simpul

Persamaan (2.4) menyatakan bahwa Pij berbanding terbalik dengan dij,

sehingga dapat dikatakan semakin singkat waktu tempuh maka semakin besar kemungkinan rute tersebut akan terpilih.

2. Waggle dance

Ketika lebah telah menemukan sumber makanan, lebah akan menari dalam rentang waktu tertentu. Lama tarian lebah dipengaruhi oleh kuantitas nektar yang dikumpulkan lebah ke-i dan rata-rata profitabilitas koloni lebah.


(22)

22

Kuantitas nektar dan rata-rata profitabilitas koloni lebah dinotasikan dengan Pfi dan Pfcolony didefinisikan sebagai berikut.

݂ܲ௜ ൌݐͳ

௜ǡ ݐ௜ ൌ ™ƒ–—

݂ܲ௖௢௟௢௡௬ൌܰͳ

௕௘௘෍ ݂ܲ௜

ே್೐೐

௜ୀଵ

Nilai kuantitas nektar dan rata-rata profitabilitas koloni lebah ditentukan dari setiap lebah yang telah menyelesaikan tur. Kuantitas yang lebih tinggi akan dikumpulkan jika lebah melakukan perjalanan dengan waktu yang lebih singkat. Oleh karena itu Pfi berbanding terbalik dengan waktu tempuh. Durasi tarian dari lebah i yang dinotasikan Di ditentukan oleh linear fungsi sebagai berikut.

ܦ ൌ ܭ ௉௙೔

௉௙೎೚೗೚೙೤

K merupakan skala faktor yang mengendalikan besarnya nilai durasi.

Untuk mempermudah dalam pemahaman, berikut disajikan algoritma koloni lebah dalam bentuk flowchart.

(2.5)

(2.6)


(23)

23 Mulai

Input data, Kota Awal, parameter

Kriteria terpenuhi? Pembangunan rute

secara random

Pengujian rute dengan aturan forage Hitung waktu tempuh, Simpan waktu tempuh TBest

Hitung waktu tempuh baru, Simpan waktu tempuh T

T = T Best?

Simpan TBest Simpan T TBest

Update rute dan TBest

Waggle dance

Cetak rute dan waktu tempuh

Selesai ya

ya

tidak tidak


(24)

24 F. Algoritma Genetika

Algoritma klasik dalam evolusi komputasi dan digunakan untuk menyelesaikan masalah optimasi adalah Algoritma Genetika. (Pei Wei Tsang 2008:1)

Secara khusus di dalam algoritma genetika istilah kromosom berarti kandidat solusi dari permasalahan, seringkali dikodekan dalam bit string. Gen baik yang bit tunggal atau blok pendek dari bit yang berdekatan mengkodekan elemen tertentu dari kandidat solusi (misal dalam konteks optimasi fungsi multiparameter bit mengkodekan parameter tertentu yang mungkin diannggap sebagai sebuah gen). Allel dalam bit string (0 atau 1). Crossover biasanya terbentuk dari pertukaran material genetika antara dua kromosom tunggal induk haploid. Mutasi terbentuk dari pembalikan bit pada lokus yang terpilih secara acak. (Mithel Melanie, 1996: 5) Menurut Kusumadewi (2003:92). Secara umum, proses algoritma genetika adalah sebagai berikut.

1. Membangkitkan populasi awal secara acak.

2. Membentuk generasi baru dengan menggunakan operasi seleksi, operasi crossover dan operasi mutasi secara berulang-ulang sehingga diperoleh kromosom yang cukup untuk membentuk generasi baru sebagai representasi dari solusi baru.

3. Mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom hingga terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi, maka akan dibentuk lagi generasi baru dengan mengulang langkah 2. Kriteria berhenti yang digunakan adalah sebagai berikut.


(25)

25 a. Berhenti pada generasi tertentu.

b. Berhenti setelah dalam beberapa generasi berturut-berturut didapatkan nilai fitness tertinggi yang tidak berubah (konvergen). c. Berhenti bila dalam n generasi berikutnya tidak didapatkan nilai

fitness yang lebih optimal.

Proses algoritma genetika dapat diilustrasikan pada flow chart berikut

Gambar 2.17 Flowchart Algoritma Genetika Populasi Awal

Evaluasi

Konvergen? (mencari fitness terbaik)

Seleksi

Pindah Silang

Mutasi

Terbentuk Individu

Terbaik ya


(26)

57

DAFTAR PUSTAKA

Antonius Y. S. (2014). Optimasi Rute Seorang Loper Koran Di Fidi Agency

Menggunakan Algoritma Genetika Metode Seleksi Ranking.

Yogyakarta: Universitas Negeri Yogyakarta

Fathul Wahid. (2004). Dasar-Dasar Algoritma dan Pemrograman. Yogyakarta: Andi Offset.

Gutin, G and Punen, Abraham P. (2006). Combinatorial Optimization The

Traveling Salesman Problem And Its Variations. New York: Springer.

Hall , Radolp W. (2003). Handbook Of Transport Modeling. New York: Springer. Harju, Tero. (2012). Graph Theory. Finland: Department of Mathematics

University of Turky.

JB TEAM. (2010). Bisnis Rumah Tangga Camilan Dan Minuman. Yogyakarta: Jogja Bangkit Publiser

Karaboga, D dan Akay, B. (2009). Artificial Bee Colony (ABC), Harmony Search

and Bees Algorithms on Numerical Optimization. Kayseri: Erciyes

University

Melanie, Mitchell. (1996). An Introduction to Genetic Algorithms. Cambridge: MIT Press

Munir, R. (2005). Matematika Diskrit. Bandung : Informatika Bandung.

Siang, J. (2002). Matematika Diskrit dan Aplikasinya dalam Ilmu Komputer. Yogyakarta: Andi Penerbit.

Sri Kusumadewi. (2003). Artificial Intelligence (Teknik dan Aplikasinya). Yogyakarta: Graha Ilmu

Suyanto. (2005). Algoritma Genetika dalam MATLAB. Yogyakarta: Andi Offset. Suyanto. (2019). Algoritma Optimasi: Deterministik atau Probabilistik.

Yogyakarta: Graha Ilmu.

Tsai Pei-Wei. (2008). Enhanced Artificial Bee Colony Optimization. Taiwan : Department of Information Management, Cheng Shiu University Wong, L.P. (2008). Bee Colony Optimization With Local Search for Trafelling

Salesman Problem. Diakses dari

http://www.worldscientific.com/doi/abs/10.1142/S0218213010000200


(1)

21

ρ

ij,n = arc fitness antara simpul i dan j pada transisi ke-n

λ = probabilitas kota yang diikuti pada θ.

Ai,n = himpunan simpul yang bisa dijangkau dari simpul i pada

transisi ke-n.

Fi,n = himpunan berisi satu simpul yang direkomendasikan.

Peluang untuk berpindah dari simpul i dan j pada transisi ke-n merupakan fungsi dari waktu dan arc fitness. Dapat didefinisikan.

ܲ

௜௝ǡ௡

ൣఘ೔ೕǡ೙൧ഀቈ భ

೏೔ǡೕ቉ ഁ

σ ൣఘ೔ೕǡ೙൧ഀቈ೏೔ǡೕభ ቉ ഁ ೕאಲ೔ೕǡ೙

ρ

ij = arc fitness antara simpul i dan j.

dij = waktu tempuh antara simpul i dan j.

Pij = peluang percabangan dari simpul i ke simpul j.

α = variabel biner yang menunjukan pengaruh dari arc fitness.

β = variabel yang berfungsi untuk mengontrol signifikasi level untuk waktu tempuh antar simpul

Persamaan (2.4) menyatakan bahwa Pij berbanding terbalik dengan dij, sehingga dapat dikatakan semakin singkat waktu tempuh maka semakin besar kemungkinan rute tersebut akan terpilih.

2. Waggle dance

Ketika lebah telah menemukan sumber makanan, lebah akan menari dalam rentang waktu tertentu. Lama tarian lebah dipengaruhi oleh kuantitas nektar yang dikumpulkan lebah ke-i dan rata-rata profitabilitas koloni lebah.


(2)

22

Kuantitas nektar dan rata-rata profitabilitas koloni lebah dinotasikan dengan Pfi dan Pfcolony didefinisikan sebagai berikut.

݂ܲ௜ ൌݐͳ

௜ǡ ݐ௜ ൌ ™ƒ–—

݂ܲ௖௢௟௢௡௬ൌܰͳ

௕௘௘෍ ݂ܲ௜

ே್೐೐

௜ୀଵ

Nilai kuantitas nektar dan rata-rata profitabilitas koloni lebah ditentukan dari setiap lebah yang telah menyelesaikan tur. Kuantitas yang lebih tinggi akan dikumpulkan jika lebah melakukan perjalanan dengan waktu yang lebih singkat. Oleh karena itu Pfi berbanding terbalik dengan

waktu tempuh. Durasi tarian dari lebah i yang dinotasikan Di ditentukan oleh

linear fungsi sebagai berikut.

ܦ ൌ ܭ ௉௙೔

௉௙೎೚೗೚೙೤

K merupakan skala faktor yang mengendalikan besarnya nilai durasi.

Untuk mempermudah dalam pemahaman, berikut disajikan algoritma koloni lebah dalam bentuk flowchart.

(2.5)

(2.6)


(3)

23 Mulai

Input data, Kota Awal, parameter

Kriteria terpenuhi? Pembangunan rute

secara random

Pengujian rute dengan aturan forage Hitung waktu tempuh, Simpan waktu tempuh TBest

Hitung waktu tempuh baru, Simpan waktu tempuh T

T = T Best?

Simpan TBest Simpan T TBest

Update rute dan TBest

Waggle dance

Cetak rute dan waktu tempuh

Selesai ya

ya

tidak tidak


(4)

24

F. Algoritma Genetika

Algoritma klasik dalam evolusi komputasi dan digunakan untuk menyelesaikan masalah optimasi adalah Algoritma Genetika. (Pei Wei Tsang 2008:1)

Secara khusus di dalam algoritma genetika istilah kromosom berarti kandidat solusi dari permasalahan, seringkali dikodekan dalam bit string. Gen baik yang bit tunggal atau blok pendek dari bit yang berdekatan mengkodekan elemen tertentu dari kandidat solusi (misal dalam konteks optimasi fungsi multiparameter bit mengkodekan parameter tertentu yang mungkin diannggap sebagai sebuah gen). Allel dalam bit string (0 atau 1). Crossover biasanya terbentuk dari pertukaran material genetika antara dua kromosom tunggal induk haploid. Mutasi terbentuk dari pembalikan bit pada lokus yang terpilih secara acak. (Mithel Melanie, 1996: 5) Menurut Kusumadewi (2003:92). Secara umum, proses algoritma genetika adalah sebagai berikut.

1. Membangkitkan populasi awal secara acak.

2. Membentuk generasi baru dengan menggunakan operasi seleksi, operasi crossover dan operasi mutasi secara berulang-ulang sehingga diperoleh kromosom yang cukup untuk membentuk generasi baru sebagai representasi dari solusi baru.

3. Mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom hingga terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi, maka akan dibentuk lagi generasi baru dengan mengulang langkah 2. Kriteria berhenti yang digunakan adalah sebagai berikut.


(5)

25 a. Berhenti pada generasi tertentu.

b. Berhenti setelah dalam beberapa generasi berturut-berturut didapatkan nilai fitness tertinggi yang tidak berubah (konvergen). c. Berhenti bila dalam n generasi berikutnya tidak didapatkan nilai

fitness yang lebih optimal.

Proses algoritma genetika dapat diilustrasikan pada flow chart berikut

Gambar 2.17 Flowchart Algoritma Genetika Populasi Awal

Evaluasi

Konvergen? (mencari fitness terbaik)

Seleksi

Pindah Silang

Mutasi

Terbentuk Individu

Terbaik ya


(6)

57

DAFTAR PUSTAKA

Antonius Y. S. (2014). Optimasi Rute Seorang Loper Koran Di Fidi Agency Menggunakan Algoritma Genetika Metode Seleksi Ranking. Yogyakarta: Universitas Negeri Yogyakarta

Fathul Wahid. (2004). Dasar-Dasar Algoritma dan Pemrograman. Yogyakarta: Andi Offset.

Gutin, G and Punen, Abraham P. (2006). Combinatorial Optimization The Traveling Salesman Problem And Its Variations. New York: Springer. Hall , Radolp W. (2003). Handbook Of Transport Modeling. New York: Springer. Harju, Tero. (2012). Graph Theory. Finland: Department of Mathematics

University of Turky.

JB TEAM. (2010). Bisnis Rumah Tangga Camilan Dan Minuman. Yogyakarta: Jogja Bangkit Publiser

Karaboga, D dan Akay, B. (2009). Artificial Bee Colony (ABC), Harmony Search and Bees Algorithms on Numerical Optimization. Kayseri: Erciyes University

Melanie, Mitchell. (1996). An Introduction to Genetic Algorithms. Cambridge: MIT Press

Munir, R. (2005). Matematika Diskrit. Bandung : Informatika Bandung.

Siang, J. (2002). Matematika Diskrit dan Aplikasinya dalam Ilmu Komputer. Yogyakarta: Andi Penerbit.

Sri Kusumadewi. (2003). Artificial Intelligence (Teknik dan Aplikasinya). Yogyakarta: Graha Ilmu

Suyanto. (2005). Algoritma Genetika dalam MATLAB. Yogyakarta: Andi Offset. Suyanto. (2019). Algoritma Optimasi: Deterministik atau Probabilistik.

Yogyakarta: Graha Ilmu.

Tsai Pei-Wei. (2008). Enhanced Artificial Bee Colony Optimization. Taiwan : Department of Information Management, Cheng Shiu University Wong, L.P. (2008). Bee Colony Optimization With Local Search for Trafelling

Salesman Problem. Diakses dari

http://www.worldscientific.com/doi/abs/10.1142/S0218213010000200