• Tidak ada hasil yang ditemukan

PENERAPAN ALGORITMA SEMUT PADA TRAVELLING SALESMAN PROBLEM UNTUK MENCARI RUTE OPTIMAL JALUR BUS TRANS JOGJA (STUDI KASUS TERMINAL GIWANGAN-BANTUL KOTA).

N/A
N/A
Protected

Academic year: 2017

Membagikan "PENERAPAN ALGORITMA SEMUT PADA TRAVELLING SALESMAN PROBLEM UNTUK MENCARI RUTE OPTIMAL JALUR BUS TRANS JOGJA (STUDI KASUS TERMINAL GIWANGAN-BANTUL KOTA)."

Copied!
38
0
0

Teks penuh

(1)

1 BAB I PENDAHULUAN

A. Latar Belakang

Jumlah penduduk yang semakin meningkat menyebabkan masalah kemacetan banyak terjadi di kota-kota besar seperti di Yogyakarta. Untuk mengurangi kemacetan tersebut, diperlukan suatu pemecahan masalah, antara lain penyediaan angkutan umum. Berdasarkan “Kajian dan Review Penyediaan Angkutan Umum Perkotaan dan Feeder di DIY” oleh Dishubkominfo, masyarakat perkotaan yang menggunakan angkutan umum adalah masyarakat kelompok captive dan sebagian masyarakat kelompok choice. Kelompok captive adalah orang-orang yang tergantung pada angkutan umum untuk kepentingan mobilitasnya karena mereka tidak memenuhi paling tidak salah satu dari ketiga syarat (finansial, legal, dan fisik). Secara finansial mereka mampu membeli kendaraan pribadi, secara legal mereka meiliki Surat Ijin Mengemudi (SIM), sedangkan secara fisik mereka mampu mengendarai kendaraan. Salah satu contoh kondisi, masyarakat kelompok captive mampu membeli mobil secara finansial tetapi tidak cukup sehat atau tidak memiliki Surat Ijin Mengemudi (SIM).

(2)

2

fisik masyarakat kelompok choice dapat menggunakan kendaraan pribadi sehingga mereka mempunyai pilihan dalam pemenuhan kebutuhan mobilitasnya dengan menggunakan kendaraan pribadi atau angkutan umum. Berdasarkan penjelasan di atas, di kota manapun akan selalu terdapat kebutuhan angkutan umum karena selalu ada anggota masyarakat yang masuk kelompok captive.

Terdapat banyak pilihan angkutan umum di Yogyakarta yang diperuntukkan untuk mengurangi masalah kemacetan, antara lain bus regular, ojek, taksi, becak, dan andong. Salah satu angkutan umum yang beroperasi yaitu Bus Trans Jogja. Bus Trans Jogja adalah sarana transportasi bus yang cepat, murah, dan ber-Air Conditioning

(AC) di sekitar Kota Yogyakarta yang mulai beroperasi sejak bulan Maret 2008. Bus

Trans Jogja yang dikelola oleh PT Jogja Tugu Trans hingga saat ini memiliki 8 (delapan) jalur yang beroperasi, yaitu: Jalur 1A dan 1B yang melewati Terminal Prambanan – Bandara Adisucipto – Stasiun Tugu – Malioboro – Jogja Expo Center (JEC). Jalur 2A dan 2B yang melalui Terminal Jombor – Malioboro – Kridosono – UGM – Terminal Condongcatur, Jalur 3A dan 3B melewati Terminal Giwangan – Kotagede – Bandara Adisucipto – Ringroad Utara – Pingit – Malioboro – Pojok Beteng Kulon. Jalur 4A melalui Terminal Giwangan – Jl. Taman Siswa – Lempuyangan – Kridosono dan jalur 4B melewati Terminal Giwangan – Timoho – Jl. Urip Sumoharjo – Kridosono.

(3)

3

provinsi dan regional, Terminal Condong Catur sebagai angkutan desa, Terminal Jombor, Bandar Udara Adi Sucipto, dan Terminal Prambanan. Selain enam titik penting tersebut, terdapat pula halte yang terdapat di dekat obyek wisata dan tempat publik, seperti sekolah, universitas, rumah sakit, bank, kantor polisi, serta perpustakaan. Namun sayangnya, jangkauan rute Bus Trans Jogja selama ini masih terbatas hanya melewati kota Yogyakarta dan sedikit bagian dari Kabupaten Sleman. Jangkauan rute Bus Trans Jogja belum melewati kabupaten lainnya yang ada di DIY, seperti Gunungkidul, Kulonprodo, dan Bantul.

Salah satu kabupaten di DIY yang saat ini sedang berkembang pesat adalah Kabupaten Bantul, yang beberapa tahun terakhir menggeliat di bidang ekonomi, pariwisata, kuliner, serta pendidikan. Potensi daerah terus dikembangkan dan dikemas semenarik mungkin agar menarik wisatawan lokal maupun mancanegara untuk berkunjung ke Bantul. Contoh potensi wisata di Kabupaten Bantul antara lain yaitu Pantai Parangtristis, Wisata Kebun Buah Mangunan, Makam Raja-Raja Imogiri, pusat kerajinan gerabah Kasongan, pusat kerajinan kulit di Manding, dan Pasar Seni Gabusan.

(4)

4

trayek yang beroperasi semakin berkurang. Hilangnya sebagian trayek disebabkan oleh tidak adanya penumpang yang bergerak dari dan ke daerah tersebut dalam jumlah yang memadai, serta disebabkan karena banyaknya trayek yang tumpang tindih.

Berdasarkan penjelasan di atas, Pemerintah Daerah (Pemda) DIY melalui Dinas Perhubungan Kominfo (Dishubkominfo) bermaksud untuk menambah trayek Bus Trans Jogja dari empat jalur untuk dikembangkan sampai ke ibu kota kabupaten Sleman, Bantul, Kulonprogo, dan Gunungkidul. Penambahan trayek perlu dilakukan agar dapat menjangkau daerah lebih luas sekaligus membuat penumpang nyaman dengan fasilitas Bus Trans Jogja. Minang, Agus (2013) dalam Koran online Harian Jogja mengatakan bahwa, berdasarkan data Dishubkominfo, Bus Trans Jogja akan dibuat menjadi 17 rute baru yang akan beroperasi hingga keluar batas kota. Untuk di sisi selatan DIY, Trans Jogja direncanakan akan melayani hingga pusat pemerintahan Bantul. Hal ini menjadikan tugas yang penting bagi pengelola Bus Trans Jogja dan Pemda Bantul untuk mencari rute bagi Trans Jogja agar setiap tempat strategis tersebut dapat terlalui dengan panjang rute seminimal mungkin. Rute optimal dalam penelitian ini adalah rute terpendek karena setiap halte harus dilewati dengan memperhitungkan variabel jarak.

(5)

5

perjalanan yang masing-masing simpul dikunjungi tepat satu kali sampai kembali ke simpul awal. Algoritma semut menjadi salah satu metode pemecahan TSP dengan mengadaptasi perilaku koloni semut. Perilaku koloni semut adalah semut dapat berkomunikasi dengan mudah dalam memecahkan masalah koloninya mencari makanan dan kembali ke sarang.

Selama perjalanan mencari makanan, semut berangkat dari sarangnya dan meninggalkan jejak berupa feromon, yaitu suatu subtansi kimia yang akan memberikan informasi kepada semut-semut selanjutnya yang akan mengikuti jejak feromon semut pertama. Jika semut yang mengikuti jejak tersebut semakin banyak, maka jalur perjalanannya semakin terlihat jelas. Jejak yang jarang dilewati akan menguap sehingga semut tidak melewati jejak tersebut lagi.

(6)

6

jalur yang akan dilalui Bus Trans Jogja menjangkau hingga Pusat Pemerintahan Bantul.

Peneliti tertarik untuk membantu pihak pengelola Bus Trans Jogja dalam menentukan rute optimal yang diperluas hingga Bantul dengan cara melakukan penelitian tentang penerapan algoritma semut pada permasalahan MTSP. Penulisan tugas akhir ini bertujuan untuk mencari rute optimal untuk efisiensi jarak tempuh perjalanan Bus Trans Jogja.

B. Batasan Masalah

Batasan masalah dalam penulisan tugas akhir adalah sebagai berikut.

1. Rute yang digunakan adalah jalan dua arah yang dapat dilewati minimal satu bus; 2. Ruang lingkup wilayah penulisan Tugas Akhir ini dibatasi pada Kecamatan

Kasihan dan Kecamatan Bantul, Kabupaten Bantul DIY;

3. Hambatan-hambatan tidak dipertimbangkan dalam penelitian ini, misalnya kecelakaan, kemacetan, dan kerusakan ruas jalan.

C. Rumusan Masalah

Berdasarkan latar belakang masalah di atas, maka rumusan masalah pada penelitian ini adalah bagaimana cara menerapkan algoritma semut pada masalah TSP untuk mencari rute optimal jalur Bus Trans Jogja di wilayah Bantul DIY?

D. Tujuan

(7)

7 E. Manfaat

Penulisan tugas akhir ini diharapkan dapat memberikan manfaaat sebagai berikut. 1. Mahasiswa dapat menganalisa permasalahan MTSP menggunakan algoritma

semut;

2. Penelitian ini diharapkan dapat memberikan tulisan yang bermanfaat tentang permasalahan MTSP menggunakan algoritma semut;

3. Pembaca mendapatkan bacaan yang bermanfaat tentang rute optimal Bus Trans Jogja yang melewati Kabupaten Bantul DIY dengan bantuan algoritma semut; 4. Penelitian ini diharapkan dapat menjadi bahan acuan bagi perusahaan Jogja Tugu

(8)

8 BAB II KAJIAN TEORI

Pada bab kajian teori akan dibahas tentang teori graf, algoritma, algoritma semut, dan travelling salesman problem. Teori graf digunakan untuk menerapkan aplikasi rute Trans Jogja. Optimasi digunakan untuk mencari nilai optimal dalam menjalankan algoritma semut. Travelling salesman problem digunakan sebagai salah satu bentuk permasalahan rute terpendek Terminal Giwangan hingga Bantul Kota dengan menggunakan data berupa jarak antar halte. Data yang didapat dimodelkan ke dalam bentuk graf kemudian diselesaikan dengan metode algoritma semut.

A. Teori Graf 1. Definisi Graf

Suatu graf dapat dipandang sebagai kumpulan titik yang disebut simpul dan segmen garis yang menghubungkan dua simpul yang disebut dengan rusuk.

Definisi 2.1 (Mardiyono, 1996:1)

Graf G yang dilambangkan dengan = , � terdiri atas dua himpunan dan � yang saling asing. bukan himpunan kosong dengan unsur-unsurnya disebut simpul, sedangkan unsur himpunan � disebut rusuk. Setiap rusuk menghubungkan dua simpul yang disebut simpul-simpul ujung dari rusuk tersebut.

(9)

9

Gambar 2.1 Contoh Graf 2. Keterhubungan

Menurut Chartrand & Zang (2005:13), sebuah graf G dikatakan terhubung jika setiap dua simpul graf G terhubung. Dengan kata lain, graf G dikatakan terhubung jika ada suatu lintasan antara sembarang dua simpul. Graf dapat digunakan sebagai model dari suatu sistem, salah satunya yaitu model sistem rute perjalanan. Gambar 2.2 digunakan sebagai ilustrasi untuk membedakan graf berdasarkan rusuk yang dilalui dan simpul yang dituju dan disinggahi.

(10)

10

Berikut akan dijelaskan keterhubungan graf yaitu jalan (walk), jejak (trail), lintasan (path), sikel (cycle), dan sirkuit (circuit).

a. Jalan (Walk)

Definisi 2.2 (Mardiyono, 1996: 41)

Misalkan graf G dengan rusuk = { , , , … , } dan simpul � = { , , , … , }, yang membentuk barisan berhingga =

{ , , , , , , … , , }. Maka, definisi jalan (walk) adalah suatu barisan

yang suku-sukunya berupa simpul dan rusuk yang diurutkan secara bergantian sedemikian hingga rusuk ujung adalah simpul dan . Pada gambar 2.2, contoh suatu jalan (walk) adalah barisan berhingga = { , , , , , , , , }.

b. Jejak (Trail)

Definisi 2.3 (Mardiyono, 1996: 41)

Jejak (Trail) adalah walk tanpa rusuk berulang. Pada gambar 2.2, contoh jejak adalah = { , , , , , , , , , , , , }.

c. Lintasan (Path)

Definisi 2.4 (Mardiyono, 1996: 41)

(11)

11 d. Sirkuit (circuit)

Definisi 2.5

Sirkuit adalah jalan tertutup (closed walk) dengan rusuk tidak berulang atau dengan kata lain sirkuit adalah jejak (trail) yang tertutup. Contoh sirkuit pada gambar 2.2 adalah

= { , , , , , , , , , , , , , , }

e. Lintasan Hamilton Definisi 2.6

Lintasan Hamilton adalah lintasan yang melalui setiap simpul di dalam graf tepat satu kali.

f. Sirkuit Hamilton Definisi 2.7

Sirkuit Hamilton adalah graf sirkuit yang mengunjungi tiap simpul pada graf terhubung G tepat satu kali, kecuali simpul awal (yang juga merupakan simpul akhir) dilewati dua kali. Contoh Lintasan Hamilton dan Sirkuit Hamilton sebagai berikut:

Gambar 2.3 Contoh Sirkuit Hamilton dan Lintasan Hamilton

(12)

12

Pada gambar 2.3, graf G1 merupakan contoh lintasan Hamilton = { , , , }, graf G2 adalah contoh sirkuit hamilton dengan rute = { , , , , }, sedangkan graf G3 tidak memiliki lintasan Hamilton dan sirkuit

Hamilton. 3. Jenis Graf

Graf dapat dibedakan berdasarkan ada tidaknya rusuk ganda, ada tidaknya

loop (gelang), dan ada tidaknya arah (Mardiyono, 1996). Berikut ini dijelaskan

beberapa jenis graf, yaitu:

a. Graf Sederhana (Simple Graph) Definisi 2.8

Graf sederhana adalah graf yang tidak mempunyai rusuk ganda dan tidak mempunyai loop (gelang). Graf sederhana terbagi menjadi beberapa jenis, yaitu: 1) Graf Nol

Definisi 2.9

Graf Nol adalah suatu graf yang himpunan rusuknya merupakan himpunan kosong dengan notasi Hn, dengan = jumlah simpul.

Gambar 2.4 Contoh Graf Nol

Pada gambar 2.4, Graf H1 dan H4 masing-masing merupakan graf nol dengan banyak simpul 1 dan 4.

(13)

13 2) Graf Lengkap

Definisi 2.10

Graf lengkap adalah suatu graf yang setiap pasang simpulnya berikatan. Graf lengkap yang dinotasikan dengan n simpul adalah Kn. Semua contoh pada gambar 2.5 dibawah ini adalah graf lengkap dan dinotasikan sebagai K1, K2, K3, dan K4.

Gambar 2.5 Contoh Graf Teratur b. Graf Berarah

Definisi 2.11 (Mardiyono, 1996: 10)

Graf berarah adalah graf yang setiap rusuk mempunyai arah tertentu. Pada gambar 2.6 graf J1 merupakan contoh graf berarah.

(14)

14 c. Graf Tak Berarah

Definisi 2.12 (Mardiyono, 1996: 10)

Graf tak berarah adalah graf yang setiap rusuk tidak mempunyai arah tertentu. Pada gambar 2.7 graf J2 merupakan contoh graf tak berarah.

Gambar 2.7 Contoh Graf Tak Berarah

B. Optimasi

Optimasi adalah proses pencarian satu atau lebih penyelesaian layak yang berhubungan dengan nilai-nilai ekstrim dari satu atau lebih nilai objektif pada suatu masalah sampai tidak terdapat solusi ekstrim yang dapat ditemukan. (Intan Berlianty & Miftahol Arifin, 2010: 9).

Optimal memiliki definisi yaitu nilai terbaik atau paling menguntungkan (Wikipedia: 2013). Pencarian rute optimal pada penelitian ini adalah pencarian rute terpendek. Metode yang digunakan untuk menyelesaikan masalah pencarian jalur terpendek yaitu metode konvensional dan metode heuristik.

1. Metode Konvensional

Metode konvensional adalah metode yang menggunakan perhitungan matematis biasa. Metode konvensional dilakukan dengan membandingkan jarak

(15)

15

masing-masing antar simpul dan kemudian mencari jarak terpendeknya. Ada beberapa metode konvensional yang biasa digunakan untuk melakukan pencarian jalur terpendek, diantaranya : algoritma Djikstra, Algoritma Bellman-Ford, dan algoritma Floyd-Warshall (Iing Mutakhiroh, Indrato, Taufik Hidayat, 2007). 2. Metode Heuristik

Metode heuristik adalah sub-bidang dari kecerdasan buatan yang digunakan untuk melakukan pencarian dan penentuan jalur terpendek. (Iing Mutakhiroh, Indrato, Taufik Hidayat, 2007). Ada beberapa algoritma pada metode heuristik yang biasa digunakan dalam permasalahan optimasi, diantaranya algoritma genetika, logika fuzzy, jaringan syaraf tiruan, simulated anneling, algoritma semut, dll.

Beberapa Jenis Heuristik Searching (Intan Berlianty dan Miftahol Arifin, 2010:15) adalah:

a. Algoritma Immune b. Algoritma Koloni Semut c. Algoritma Genetika d. Logika Fuzzy e. Tabu Search

f. Generate and test

C. Travelling Salesman Problem (TSP)

(16)

16

lainnya, diantaranya masalah efisiensi pengiriman surat atau barang, layanan

delivery service dari suatu tempat makan, dan efisiensi petugas bank yang

melakukan pengisian Automatic Teller Machine (ATM) di n kota.

Penerapan awal Algoritma Semut adalah pada permasalahan TSP. TSP dipilih menjadi kasus rute terpendek pertama yang diterapkan karena TSP merupakan suatu modifikasi perilaku koloni semut buatan yang dengan mudah diadaptasi ke dalam Algoritma Semut. Selain itu, TSP juga mudah dipahami dan penguraian langkah-langkah algoritma tidak dikaburkan dengan banyak istilah teknis (Marco Dorigo & Gianni Di Caro, 1999:146).

TSP didefinisikan sebagai suatu permasalahan dalam mencari rute terpendek dengan membangun sebuah perjalanan yang masing-masing simpul dikunjungi tepat satu kali sampai kembali ke simpul awal. Dengan kata lain, TSP bertujuan mencari rute terpendek sebuah graf menggunakan sirkuit Hamilton. TSP hanya memiliki satu salesman dan depot tunggal sebagai simpul awal.

TSP digambarkan sebagai graf lengkap berbobot = , � dengan adalah himpunan simpul, sedangkan � adalah himpunan rusuk yang menghubungkan simpul. Setiap rusuk , ∈ � adalah nilai (jarak) yang merupakan jarak dari

kota ke kota , dengan , ∈ . Pada TSP simetris, yaitu jarak dari kota ke

kota sama dengan jarak dari ke kota , berlaku = untuk semua rusuk , ∈ �. Misalkan dalam graf lengkap G dengan buah simpul ( > , maka

graf tersebut mempunyai − ! buah sirkuit hamilton. Pada teorema lain, jika

(17)

17 − !

buah Sirkuit Hamilton saling asing, sedangkan untuk jumlah simpul >

dan n genap terdapat − ! buah sirkuit hamilton.

TSP dimodelkan sebagai graf dengan n buah simpul yang mewakili kota-kota yang harus dikunjungi oleh sejumlah m salesman. Misalkan diberikan matriks n x n sebagai berikut.

Tabel 2.1 Matriks

1 2 3 … N

1 …

2 …

3 …

… … … …

n …

adalah variabel biner dari kota i ke kota j yang bernilai sebagai berikut.

= { , ,

Selanjutnya, semua sel dalam baris dan kolom dijumlahkan satu persatu. 1. Penjumlahan sel baris pertama.

= , untuk = .

2. Penjumlahan sel baris kedua. ∑ = , untuk = .

3. Penjumlahan sel baris ketiga. ∑ = , untuk = .

(18)

18

4. Penjumlahan sel dilakukan seterusnya hingga baris ke-n. Berikut ini penjumlahan sel untuk baris ke-n.

Kemudian dilanjutkan penjumlahan sel dalam kolom pertama hingga ke-n. 1. Penjumlahan sel kolom pertama.

(19)

19

persamaan ∑ = agar dapat diketahui bahwa rute dari i ke j terlewati atau

tidak. adalah jarak dari kota i ke kota j. Tujuan akhir TSP adalah mencari rute

minimal, sehingga persamaan tersebut menjadi:

= ∑ ∑

= =

. , = , , , … , .

dengan kendala:

= = = , , , , … , (2.5)

= = = , , , , … , (2.6)

= = = (2.7)

Persamaan (2.5) dan Persamaan (2.6) menjamin bahwa setiap kota hanya dikunjungi sekali oleh salesman, sedangkan persamaan (2.7) menyatakan jika jarak dari dan menuju kota yang sama adalah nol.

(20)

20

Gambar 2.8 Contoh Kasus TSP

Dari gambar 2.8 diketahui bahwa graf tersebut adalah graf berbobot dan tidak berarah. Berdasarkan gambar tersebut, akan ditentukan sirkuit Hamilton terpendek � yang harus dilalui seorang salesman dengan mengunjungi setiap kota tepat satu kali dan kembali lagi ke kota asal.

Graf lengkap dengan = simpul seperti yang ditunjukkan pada gambar

2.8 mempunyai − != Sirkuit Hamilton, yaitu:

� = , , , , dengan panjang rute 6+8+9+9=32. � = , , , , dengan panjang rute 5 + 9 + 4 + 6 = 24. � = , , , , dengan panjang rute 9 + 4 + 8 + 5 = 26.

Terlihat, sirkuit Hamilton terpendek dari kasus diatas adalah � = � dengan panjang sirkuit 24.

D. Algoritma

Kata “algoritma” berasal dari nama matematikawan Persia abad kesembilan,

Abu Ja’far Mohammed Ibn Musa Al-Khowarizmi. Sampai pada tahun 1950,

(21)

21

(greatest common divisor). Definisi algoritma yaitu metode langkah demi

langkah dari pemecahan suatu masalah. Pada Kamus Besar Bahasa Indoonesia (KBBI), definisi algoritma adalah suatu urutan logis pengambilan keputusan untuk pemecahan masalah.

Algoritma mempunyai peran penting dalam matematika dan ilmu komputer yang didasarkan pada prinsip-prinsip matematika. Solusi masalah bisa dijalankan oleh komputer apabila solusi diubah penjabarannya menjadi serangkaian langkah-langkah yang tepat (Richard, 1998:134).

Algoritma mempunyai ciri khas seperti yang dikutip dari Richard (1998:35) sebagai berikut:

1. Masukan (Input)

Algoritma memerlukan masukan untuk diolah. Pada penelitian ini masukan adalah jarak tiap halte Bus Trans Jogja.

2. Keluaran (Output)

Setiap algoritma memberikan satu atau beberapa hasil keluaran. Pada penelitian ini keluaran algoritma berupa jarak optimal.

3. Presisi (Precision)

Ciri algoritma selanjutnya adalah setiap langkah dinyatakan secara jelas (presisi).

4. Determinism

(22)

22 5. Terhingga (Finiteness)

Algoritma berhenti setelah beberapa instruksi terhingga dilaksanakan. 6. Kebenaran (Correctness)

Produksi keluaran dari algoritma bernilai benar. Dengan kata lain, algoritma secara tepat menyelesaikan masalah.

7. Umum (Generality)

Algoritma berlaku umum pada himpunan data yang dimasukkan (input). E. Algoritma Semut

Algoritma semut pertama kali dipublikasikan Marco Dorigo tahun 1992 dalam tesisnya yang termasuk algoritma pertama yang bertujuan untuk mencari jalur optimal dalam graf berdasarkan perilaku semut mencari jalur dari sarang ke sumber makanan.

Sesuai namanya, algoritma semut terinspirasi oleh observasi perilaku semut sungguhan. Semut merupakan serangga sosial yang hidup secara berkelompok atau berkoloni dan mempertahankan hidup koloni dengan perilakunya yang khas daripada hidup individu. Perilaku serangga sosial dalam mencari makanan telah menarik minat para ilmuwan karena mereka dapat mencapai strukturisasi koloni yang tinggi jika dibandingkan dengan kesederhanaan hubungan individu dalam koloni (Intan Berliyanti dan Miftahol Arifin, 2010: 62).

(23)

23

yang berasal dari kelenjar endokrin dan digunakan makhluk hidup untuk mengenali sesama spesies, individu lain, kelompok, dan untuk membantu proses reproduksi. Feromon yang tertinggal akan memberikan informasi kepada semut-semut selanjutnya yang akan mengikuti jejak feromon semut-semut pertama. Proses peninggalan feromon disebut stigmergy, yaitu proses lingkungan yang dimodifikasi agar semut dapat mengingat jalan pulang ke sarang sekaligus sebagai sarana komunikasi semut dengan koloninya.

Semut dapat menemukan jalur terpendek dalam algoritma semut dengan perilaku yang secara alamiah akan menemukan jalur terpendek dari sarang ke sumber makanan lalu kembali ke sarang. Jejak feromon merupakan media yang digunakan untuk berkomunikasi antar individu tentang informasi jalur dan digunakan untuk memutuskan kemana harus pergi. Seekor semut bergerak dengan meninggalkan seumlah feromon (dalam jumlah bervariasi) di tanah, sehingga menandai jalur yang diikuti jejak dari zat tersebut.

(24)

24

Gambar 2.9 berikut adalah ilustrasi bagaimana semut dapat membangun rute optimal dengan diberi hambatan (obstacle).

Gambar 2.9 Jalur Semut dengan Hambatan (Obstacle)

(25)

25

semut yang memilih jalur BCD akan mencapai D sebelum semut lain yang menempuh jalur BHD. Hasilnya semut selanjutnya yang datang dari ED akan menemukan jejak kuat di jalur DCB yang disebabkan oleh setengah koloni semut secara tidak sengaja melewati hambatan melalui ABCD yang secara otomatis melewati BCD.

Pada akhirnya, semut-semut lebih memilih (dalam probabilitas) jalur DCB daripada jalur DHB. Akibatnya, jumlah semut yang melewati jalur BCD meningkat dalam satuan waktu daripada semut yang melewati jalur BHD. Hal ini menyebabkan jumlah feromon pada jalur yang lebih pendek meningkat lebih cepat daripada jalur lainnya. Oleh karena itu, probabilitas tiap semut memilih jalur dengan cepat jalur yang lebih pendek. Hasil akhir adalah dengan cepat, semut-semut memilih jalur yang lebih pendek seperti yang ditunjukkan gambar 2.9 c). Namun, hasil akhir tersebut tidak deterministik, sehingga memungkinkan eksplorasi rute alternatif. Semakin banyak semut yang melewati suatu lintasan, maka semakin banyak jejak feromon yang ditinggalkan. Akibatnya, jejak yang jarang dilewati akan menguap sehingga semut tidak melewati jejak tersebut lagi. 1. Langkah-langkah dalam Algoritma Semut

Beberapa langkah dalam menjalankan Algoritma Semut dijelaskan sebagai berikut:

(26)

26

1) Intensitas jejak feromon antar simpul � dan perubahannya ∆�

Penetapan nilai feromon awal dimaksudkan agar tiap-tiap ruas memiliki nilai ketertarikan untuk dikunjungi oleh tiap-tiap semut. � harus diinisialisasikan

sebelum memulai siklus dan digunakan dalam persamaan probabilitas tempat yang akan dikunjungi. Nilai dari semua feromon pada awal perhitungan

ditetapkan dengan angka kecil, yaitu 0 ≤ � ≤ 1. Δ� adalah perubahan harga

intensitas jejak semut. ∆� diinisialisasikan setelah selesai satu siklus dan

digunakan untuk memperbaharui intensitas jejak semut serta digunakan untuk menentukan � untuk siklus selanjutnya.

2) Banyak simpul (n) termasuk dij (jarak antar simpul)

Banyak simpul (n) merupakan jumlah simpul yang akan dikunjungi semut pada tiap siklus. Nilai n ditentukan oleh pengguna.

3) Penentuan simpul awal dan simpul tujuan

Semut yang akan melakukan tur harus memulai perjalanan dari simpul awal ke simpul tujuan. Dalam kasus TSP, simpul tujuan merupakan simpul awal. 4) Tetapan siklus-semut

merupakan konstanta yang digunakan dalam persamaan untuk menentukan

Δ� dengan nilai ≥ .

5) Tetapan pengendali intensitas jejak semut

(27)

27

feromon yang ditinggalkan tidak mungkin bertambah kuat tetapi akan terus berkurang. Nilai parameter α diberi nilai 0 ≤ α ≤ 1.

6) Tetapan pengendali visibilitas (β)

digunakan dalam persamaan probabilitas simpul yang akan dikunjungi dan berfungsi sebagai pengendali visibilitas dengan nilai ≥ . Hal tersebut dimaksudkan untuk menghindari akumulasi yang tidak terbatas pada perhitungan visibilitas.

7) Visibilitas antar simpul (� )

Visibilitas antar simpul (� ) digunakan dalam persamaan probabilitas simpul

yang akan dikunjungi. Sebelum memasuki perhitungan probabilitas dalam perhitungan algoritma semut maka terlebih dahulu dilakukan perhitungan awal untuk menghitung visibilitas antar simpul. Visibilitas antar simpul ini bergantung

pada jarak antar titik. Nilai � diperoleh dari persamaan :

=

(2.11)

dengan :

= jarak dari simpul awal ke simpul tujuan

8) Jumlah semut ( )

(28)

28 9) Tetapan penguapan jejak semut �

Tetapan penguapan jejak semut � digunakan untuk memperbaharui intensitas

jejak feromon semut � untuk siklus selanjutnya dan ditetapkan suatu parameter � dengan nilai ≥ � ≥ .

10) Jumlah siklus maksimum ��

Jumlah siklus maksimum �� bersifat tetap selama algoritma

dijalankan, sedangkan � akan selalu diperbaharui. � diperbaharui pada setiap

siklus algoritma mulai dari siklus pertama (NC – 1) sampai tercapai jumlah siklus

maksimum �� = �� atau sampai terjadi konvergensi. b. Pengisian kota pertama ke dalam tabu list

Setelah inisialisai � dilakukan, lalu semut pertama ditempatkan pada simpul

pertama dan mulai inisialisasi untuk simpul kedua. Hasil inisialisasi simpul pertama harus diisikan sebagai elemen pertama dalam tabu list. Tabu list digunakan untuk menyimpan simpul-simpul yang telah dilewati. Hasil dari langkah tersebut adalah terisinya elemen pertama setiap semut dengan indeks simpul pertama, yang berarti bahwa setiap dapat berisi indeks semua simpul.

c. Penyusunan rute kunjungan

(29)

29

titik-titik lainnya dinyatakan sebagai {N-tabuk}, maka untuk menentukan kota

tujun digunakan persamaan probabilitas kota untuk dikunjungi sebagai berikut:

= {∑�[� ] .[� ]=1[��] .[��] , untuk �{� − } ,

(2.12)

dengan sebagai simpul awal dan sebagai simpul tujuan.

d. Perhitungan panjang jalur setiap semut, pencarian rute terpendek, dan perhitungan perubahan harga intensitas feromon

1) Perhitungan panjang jalur setiap semut (Lk)

Perhitungan panjang tur setiap semut atau � dilakukan setelah semua semut menyelesaikan satu siklus. Perhitungan ini dilakukan berdasarkan tabuk masing-masing dengan persamaan sebagai berikut

L =

,

+ ∑

−= , +

(2.13)

dengan

= , + adalah jarak rusuk dari titik s sampai titik s+1

pada tabu list yang ditempati oleh semut k, dan , merupakan jarak

antara simpul n (akhir) dan simpul pertama (awal) pada tabu list yang ditempati oleh semut k.

2) Pencarian rute terpendek

Setelah perhitungan � tiap semut selesai, akan diperoleh rute terpendek pada setiap iterasi � �� . Panjang rute terpendek secara keseluruhan disimbolkan dengan � .

(30)

30

Koloni semut akan meninggalkan jejak feromon pada lintasan antar simpul yang dilaluinya. Adanya penguapan dan perbedaan jumlah semut yang lewat menyebabkan kemungkinan terjadinya perubahan harga intensitas feromon

antarsimpul. ∆� adalah perubahan intensitas jejak feromon antar simpul dan

adalah tetapan siklus semut. Persamaan ∆� disajikan sebagai berikut:

∆� = {LQk ,

,

e. Perhitungan harga intesitas jejak feromon untuk siklus selanjutnya dan atur ulang harga perubahan jejak feromon antar simpul.

1) Perhitungan harga intesitas jejak feromon untuk siklus selanjutnya

Intensitas jejak feromon semut antar simpul pada semua lintasan antar simpul ada kemungkinan berubah karena adanya penguapan dan perbedaan jumlah semut yang melewati. Untuk siklus selanjutnya, semut yang akan melewati lintasan tersebut harga intensitasnya telah berubah. Harga intensitas jejak kaki semut untuk siklus selanjutnya dihitung dengan persamaan:

� = � . � + ∆� (2.15)

dengan ρ adalah tetapan penguapan jejak semut, � adalah intensitas jejak

feromon antarsimpul, dan ∆� adalah perubahan intensitas jejak feromon.

2) Atur ulang harga perubahan intensitas jejak feromon antar simpul

Perubahan harga intensitas feromon antar simpul untuk siklus selanjutnya perlu diatur kembali agar memiliki nilai sama dengan nol.

jika semut menggunakan (i,j) dalam perjalanannya

lainnya

(31)

31 f. Pengosongan tabu list

Langkah berikutnya adalah pengosongan tabu list. Tabu list dikosongkan dan langkah b diulangi jika NCmax belum tercapai atau belum terjadi konvergensi (semua semut hanya menemukan satu tur yang sama dengan jarak yang sama pula). Tabu list dikosongkan agar dapat diisi lagi dengan urutan simpul yang baru pada siklus selanjutnya. Langkah algoritma diulang lagi dari pengisian kota pertama ke dalam tabu list dengan parameter intensitas jejak feromon yang telah diperbaharui.

Perhitungan akan dilanjutkan hingga semut telah menyelesaikan perjalanannya mengunjungi tiap-tiap simpul. Hal tersebut akan diulangi hingga

(32)

32

2. Flowchart (diagram alir) Algoritma Semut

Berikut disajikan langkah-langkah Algoritma Semut dalam bentuk

(33)

33 F. Keadaan Geografis Kabupaten Bantul

Keadaan geografis di Kabupaten Bantul berguna untuk mengetahui garis besar tentang daerah yang menjadi obyek penelitian. Penjelasan yang diperlukan antara lain, keadaan alam atau kontur daerah Kabupaten Bantul, kepadatan penduduk, dan profesi masyarakat Bantul.

Keadaan alam Kabupaten Bantul terletak di sebelah selatan Provinsi Daerah Istimewa Yogyakarta, berbatasan dengan:

Sebelah Utara : Kota Yogyakarta dan Kab. Sleman Sebelah Selatan : Samudera Hindia

Sebelah Timur : Kab. Gununkidul Sebelah Barat : Kab. Kulonprogo

Secara geografis, Kabupaten Bantul terletak antara 07° 44' 04" - 08° 00' 27" Lintang Selatan dan 110° 12' 34" - 110° 31' 08" Bujur Timur.

Kabupaten Bantul memiliki luas wilayah 506,85 Km2 (15,90% dari Luas wilayah Propinsi DIY) dengan topografi sebagai dataran rendah 40% dan lebih dari separuhnya (60%) daerah perbukitan yang kurang subur. Secara garis besar, wilayah Kab. Bantul terdiri dari :

1) Bagian Barat, adalah daerah landai yang kurang serta perbukitan yang membujur dari Utara ke Selatan seluas 89,86 km2 (17,73 % dari seluruh wilayah). 2) Bagian Tengah, adalah daerah datar dan landai merupakan daerah pertanian yang subur seluas 210.94 km2 (41,62 %).

(34)

34

4) Bagian Selatan, adalah sebenarnya merupakan bagian dari daerah bagian Tengah dengan keadaan alamnya yang berpasir dan sedikir berlagun, terbentang di Pantai Selatan dari Kecamatan Srandakan, Sanden dan Kretek.

Tata guna lahan di Kabupaten Bantul adalah sebagai berikut : 1. Pekarangan : 18.327,15 Ha (36,16 %)

2. Sawah : 16.823,84 Ha (33,19 %) 3. Tegalan : 7.554,45 Ha (14,90 %) 4. Tanah Hutan : 1.697,80 Ha ( 3,35 %)

Kabupaten Bantul dialiri enam sungai yang mengalir sepanjang tahun dengan panjang 114 km2, yaitu :

1. Sungai Oyo : 35,75 km 2. Sungai Opak : 19,00 km 3. Sungai Code : 7,00 km 4. Sungai Winongo : 18,75 km 5. Sungai Bedog : 9,50 km 6. Sungai Progo : 24,00 km

Pemerintahan di Kabupaten Bantul terdiri dari 17 Kecamatan, 75 Desa, dan 933 Dusun. Data hasil registrasi penduduk awal tahun 2012 adalah sebagai berikut: 1. Total penduduk 1.015.465 jiwa dengan total penduduk laki-laki sebanyak 502.762 jiwa (49,52%) dan total penduduk perempuan adalah 512.703 jiwa (50,48%).

(35)

35

3. Mutasi penduduk Bantul tahun 2011 terdiri dari kelahiran (L) sebanyak 9.499 (0,94%), kedatangan (D) sejumlah 14.358 (1,41%), kematian (M) sebanyak 4.578 (0,45%), dam kepergian (P) sejumlah 11.350 (1,12%).

(36)

90

DAFTAR PUSTAKA

Arya, V., Goyal, A., dan Jaiswal, V. (2014). An Optimal Solution to Multiple

Travelling Salesperson Problem Using Modified Genetic Algorithm. International Journal of Application or Innovation in Engineering & Management (Volume 3 Isu 1). Hlmn 425-430.

Berliyanti, Intan dan Arifin, Miftahol. (2010). Teknik-Teknik Optimasi Heuristik. Yogyakarta: Graha Ilmu.

Cahyono, Ebtanto Heru. (2012). Algoritma Semut dan Penerapannya dalam Penentuan Jalur Trans Jogja. Skripsi. FMIPA UNY.

Chartrand, Gary dan Zang, Ping. (2005). Introduction of Graph Theory. New York: McGraw Hill.

Colorni, A., Dorigo, M., dan Maniezzo, V. (1991). Distributed Optimization by Antt

Colonies. Proceedings of European Conference On Artificial Life. Paris: Elsevier Publishing. Hlmn 134-142.

Dwi K., Chandra Maulana. (2014). Ant Algorithm pada Penentuan Jalur Shuttle Bus PO Efisiensi Yogyakarta. Skripsi. FMIPA UNY

Dorigo, Marco dan Caro, Gianni Di. (1999). Ant Algorithms for Discrete

Optimization. Belgium. Hlmn 137-172.

Dorigo, M. Maniezzo V & Colorni A. (1996). The Ant System: Optimization by a

Colony of Cooperating agents. IEEE Transactions on Systems, New Delhi,

India.

Hardjasutanto, Fabrian Oktavino. (2011). Penerapan Algoritma Semut untuk Pencarian Jalur Terpendek. Makalah Semester I tahun 2011/2012. Bandung: Sekolah Teknik Informatika ITB.

Junjie, Pan dan Dingwei, Wang. (2006). Ant Colony Optimization Algorithm for

Multiple Travelling Salesman Problem. Proceeding of the First onference on Innovative Computing, Information, and Control (ICICIC’06). China.

(37)

91

Laptik, R., Navakauskas, D. (2009). Electronics and Electrical Engineering.

Elektronika Ir Elektrotechnika. Lithuania. Hlmn 21-24.

Leksono, Agus. (2009). Algoritma Ant Colony Optimization (ACO) untuk Menyelesaikan Travelling Salesman Problem (TSP). Skripsi. Prodi Matematika Undip Semarang.

Mardiyono. (1996). Matematika Diskret. Yogyakarta: IKIP Yogyakarta

Mindaputra, Eka. (2009). Penggunaan Algoritma Ant Coloby System dalam Travelling Salesman Problem (TSP) pada PT. Eka Jaya Motor. Skripsi. FMIPA UNDIP

Mulia, Dedy. Aplikasi Algoritma Ant System (AS) dalam Kasus Travelling Salesman

Problem (TSP). Skripsi. Fakultas Sains dan Teknologi. UIN Syarif

Hidayatullah Jakarta.

Munawar, Ahmad dkk. (2013). Kajian Review Penyediaan Angkutan Umum Perkotaan dan Feeder di DIY. Dishubkominfo: Yogyakarta

Mutakhiroh, I., Indarto, dan Hidayat, T. (2007). Pencarian Jalur Terpendek Menggunakan Algoritma Semut. Seminar Nasional. Yogyakarta: FTI UII. Hlmn B81-B85.

Sari, Deisy Novitha dan Maharani, Septya. (2014). Algoritma Semut Untuk Optimasi Penentuan Jalur Terpendek Fasilitas Umum (Studi Kasus: Kota Samarinda). SCAN (Vol. IX, No. 1 Februari 2014). Hlmn 41-45.

Stutzle, Thomas dan Dorigo, Marco. (1999). ACO Algorithms for the Traveling

Salesman Problem. IRIDIA, Universite Libre de Bruxelles. Belgium.

Halaman i-xxiii.

Susilo, B., Efendi, R., Maulida, S. (2011). Implementasi dan Analiaa Kinerja Algoritma Ant System (AS) dalam Penyelesaian Multiple Travelling

Salesman Problem. Seminar Nasional Aplikasi Teknologi Transformasi.

Hlmn 48-54.

Tomarere, Leonardo Z. (2009). Studi Perbandingan Algoritma Ant Colony System dan Algoritma Ant System pada Permasalahan Travelling Salesman Problem.

Skripsi. Sekolah Teknik Elektro dan Informatika Bandung.

(38)

http://www.harianjogja.com/baca/2013/11/09/penataan-92

transportasi-jogja-bus-trans-jogja-akan-sampai-bantul-dan-godean-463857, pada tanggal 4 Maret 2014.

Gambar

Gambar 2.1 Contoh Graf �
Gambar 2.3 Contoh Sirkuit Hamilton dan Lintasan Hamilton
gambar 2.6 graf J1 merupakan contoh graf berarah.
Gambar 2.7 Contoh Graf Tak Berarah
+5

Referensi

Dokumen terkait