Anda di halaman 1dari 5

Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007) ISSN: 1907-5022

Yogyakarta, 16 Juni 2007

PENCARIAN JALUR TERPENDEK MENGGUNAKAN ALGORITMA SEMUT


I’ing Mutakhiroh, Indrato, Taufiq Hidayat
Laboratorium Pemrograman dan Informatika Teori, Universitas Islam Indonesia, Yogyakarta
e-mail: ukhti_iing@yahoo.com, indra_adv@yahoo.com, taufiqhid@fti.uii.ac.id

ABSTRAKSI
Secara umum, pencarian jalur terpendek dapat dibagi menjadi dua metode, yaitu metode konvensional
dan metode heuristik. Metode konvensional cenderung lebih mudah dipahami daripada metode heuristik, tetapi
jika dibandingkan dari hasil yang diperoleh, metode heuristik lebih variatif dan waktu perhitungan yang
diperlukan lebih singkat. Pada metode heuristik terdapat beberapa algoritm,salah satunya algoritma semut.
Algoritma semut adalah algoritma yang diadopsi dari perilaku koloni semut. Secara alamiah koloni
semut mampu menemukan rute terpendek dalam perjalanan dari sarang ke tempat-tempat sumber makanan.
Koloni semut dapat menemukan rute terpendek antara sarang dan sumber makanan berdasarkan jejak kaki
pada lintasan yang telah dilewatii. Semakin banyak semut yang melewati suatu lintasan, maka akan semakin
jelas bekas jejak kakinya. Algoritma Semut sangat tepat digunakan untuk diterapkan dalam penyelesaian
masalah optimasi, salah satunya adalah untuk menentukan jalur terpendek.

Kata kunci: Pencarian jalur terpendek, Heuristik, Algoritma Semut

1. PENDAHULUAN konvensional dan metode heuristik. Metode


Pada awal diciptakan, komputer hanya konvensional cenderung lebih mudah dipahami
difungsikan sebagai alat hitung saja. Namun seiring daripada metode heuristik, tetapi jika dibandingkan,
dengan perkembangan jaman, maka peran komputer hasil yang diperoleh dari metode heuristik lebih
semakin mendominasi kehidupan. Lebih dari itu, variatif dan waktu perhitungan yang diperlukan
komputer diharapkan dapat digunakan untuk lebih singkat . Metode heuristik terdiri dari beberapa
mengerjakan segala sesuatu yang bisa dikerjakan macam algortima yang biasa digunakan. Salah
oleh manusia baik dalam bidang pendidikan, satunya adalah algoritma semut (Ant Colony,
kesehatan, industri, dan kehidupan sehari-hari Antco). Antco diambil dari perilaku koloni semut
sehingga peran komputer dan manusia akan saling dalam pencarian jalur terpendek antara sarang dan
melengkapi. Beberapa hal yang menjadi kekurangan sumber makanan.
manusia diharapkan dapat digantikan oleh komputer. Antco diadopsi dari perilaku koloni semut
Begitu juga dengan komputer yang tak akan berguna yang dikenal sebagai sistem semut (Dorigo, 1996).
tanpa sentuhan manusia. Secara alamiah koloni semut mampu menemukan
Untuk menggunakan atau memfungsikan rute terpendek dalam perjalanan dari sarang ke
sebuah komputer maka harus terdapat program yang tempat-tempat sumber makanan. Koloni semut dapat
terdistribusi di dalamnya, tanpa program tersebut menemukan rute terpendek antara sarang dan
komputer hanyalah menjadi sebuah kotak yang tak sumber makanan berdasarkan jejak kaki pada
berguna. Program yang terdapat pada komputer lintasan yang telah dilalui. Semakin banyak semut
sangat bervariasi dan setiap program tersebut pasti yang melewati suatu lintasan maka akan semakin
menggunakan algoritma. Algoritma merupakan jelas bekas jejak kakinya, hal ini akan menyebabkan
kumpulan perintah untuk menyelesaikan suatu lintasan yang dilalui semut dalam jumlah sedikit
masalah. Perintah-perintahnya dapat diterjemahkan semakin lama akan semakin berkurang kepadatan
secara bertahap dari awal hingga akhir. Masalah semut yang melewatinya, atau bahkan akan tidak
tersebut dapat berupa apapun dengan catatan untuk dilewati sama sekali dan sebaliknya. Mengingat
setiap masalah memiliki kriteria kondisi awal yang prinsip algoritma yang didasarkan pada perilaku
harus dipenuhi sebelum menjalankan algoritma. koloni semut dalam menemukan jarak perjalanan
Dalam kehidupan, sering dilakukan paling pendek tersebut, Algoritma Semut sangat
perjalanan dari satu tempat atau kota ke tempat yang tepat digunakan untuk diterapkan dalam
lain dengan mempertimbangkan efisiensi, waktu dan penyelesaian masalah optimasi, salah satunya adalah
biaya sehingga diperlukan ketepatan dalam untuk menentukan jalur terpendek.
menentukan jalur terpendek antar suatu kota. Hasil
penentuan jalur terpendek akan menjadi 1.1 Rumusan Masalah
pertimbangan dalam pengambilan keputusan untuk Seringkali penyelesaian masalah jalur
menununjukkan jalur yang akan ditempuh. Hasil terpendek masih menggunakan metode konvensional
yang didapatkan juga membutuhkan kecepatan dan bahkan menggunakan perhitungan manual.
keakuratan dengan bantuan komputer. Pemanfaatan metode heuristik masih sangat jarang
Secara umum, pencarian jalur terpendek digunakan, sehingga dapat dirumuskan sebuah
dapat dibagi menjadi dua metode, yaitu metode masalah yaitu dengan pemanfaatan algoritma semut

B-81
Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007) ISSN: 1907-5022
Yogyakarta, 16 Juni 2007

yang diharapkan nantinya dapat menyelesaikan mampu menemukan rute terpendek dalam perjalanan
masalah pencarian jalur terpendek dengan hasil yang dari sarang ke tempat-tempat sumber makanan.
lebih variatif dan dengan waktu perhitungan yang
lebih singkat.
L R L R
1.2 Batasan Masalah
Dari latar belakang dan rumusan masalah
yang telah dijelaskan, penulisan dibatasi pada satu
jenis metode heuristik, yaitu algoritma semut (Ant (a) (b)
Colony Algorithm, Antco).
L R L R
1.3 Tujuan Penulisan
Penulisan bertujuan menyelesaikan masalah
optimasi menggunakan metode heuristik, khususnya
algoritma semut, mencoba mengimplementasikan (c) (d)
dengan sebuah kasus sederhana, dan mempelajari Gambar 1. Perjalanan semut menemukan sumber
lebih dalam tentang cabang dari ilmu kecerdasan makanan.
buatan.
Koloni semut dapat menemukan jalur
1.4 Manfaat Penulisan terpendek antara sarang dan sumber makanan
Manfaat yang dapat diambil dari penelitian berdasarkan jejak kaki pada lintasan yang telah
adalah: dilewati. Semakin banyak semut yang melewati
1. Menawarkan penyelesaian yang lebih mudah suatu lintasan maka semakin jelas bekas jejak
dalam perhitungan (sesuai dengan tujuan kakinya. Hal ini menyebabkan lintasan yang dilalui
algoritma heuristik) untuk pencarian jalur semut dalam jumlah sedikit semakin lama semakin
terpendek berkurang kepadatan semut yang melewatinya, atau
2. Dapat diaplikasikan menjadi sebuah perangkat bahkan akan tidak dilewati sama sekali. Sebaliknya
lunak lintasan yang dilalui semut dalam jumlah banyak
semakin lama akan semakin bertambah kepadatan
2. TELAAH PUSTAKA semut yang melewatinya atau bahkan semua semut
2.1 Pencarian jalur terpendek melewati lintasan tersebut.
Secara umum penyelesaian masalah Gambar 1.a menujukkan perjalanan semut
pencarian jalur terpendek dapat dilakukan dalam menemukan jalur terpendek dari sarang ke
menggunakan dengan dua metode, yaitu metode sumber makanan, terdapat dua kelompok semut
algoritma konvensional dan metode heuristik. yang melakukan perjalanan. Kelompok semut L
Metode algoritma konvensional diterapkan dengan berangkat dari arah kiri ke kanan dan kelompok
cara perhitungan matematis seperti biasa, sedangkan semut R berangkat dari kanan ke kiri. Kedua
metode heuristik diterapkan dengan perhitungan kelompok berangkat dari titik yang sama dan dalam
kecerdasan buatan dengan menentukan basis posisi pengambilan keputusan jalan sebelah mana
pengetahuan dan perhitungannya. yang akan diambil. Kelompok L membagi dua
a. Metode konvensional kelompok lagi. Sebagian melewati jalan atas dan
Metode konvensional berupa algoritma yang sebagian melewati jalan bawah. Hal ini juga berlaku
menggunakan perhitungan matematis biasa. pada kelompok R. Gambar 1.b dan Gambar 1.c
Ada beberapa metode konvensional yang biasa menunjukkan bahwa kelompok semut berjalan pada
digunakan untuk melakukan pencarian jalur kecepatan yang sama dengan meninggalkan feromon
terpendek, diantaranya Djikstraa, Floyd- atau jejak kaki di jalan yang telah dilalui. Feromon
Warshall, dan algoritma Bellman-Ford yang ditinggalkan oleh kumpulan semut yang
b. Metode heuristik melewati jalan atas telah mengalami banyak
Adalah sub bidang dari kecerdasan buatan yang penguapan karena semut yang melewati jalan atas
digunakan untuk melakukan pencarian dan berjumlah lebih sedikit dibandingkan jalan yang di
penentuan jalur terpendek. Ada beberapa bawah. Hal ini disebabkan jarak yang ditempuh
algoritma pada metode heuristik yang biasa lebih panjang dibandingkan jalan bawah. Sedangkan
digunakan dalam pencarian jalur terpendek. feromon yang berada pada bagian bawah
Salah satunya adalah algoritma semut. penguapannya cenderung lebih lama. Karena semut
yang melewati jalan bawah lebih banyak daripada
2.2 Algoritma semut semut yang melewati jalan atas. Gambar 1.d
Algoritma Semut diadopsi dari perilaku menunjukkan bahwa semut-semut yang lain pada
koloni semut yang dikenal sebagai sistem semut akhirnya memutuskan untuk melewati jalan bawah
(Dorigo, 1996). Secara alamiah koloni semut karena feromon yang ditinggalkan masih banyak,
sedangkan feromon pada jalan atas sudah banyak

B-82
Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007) ISSN: 1907-5022
Yogyakarta, 16 Juni 2007

menguap sehingga semut-semut tidak memilih jalan dari kota-kota yang tidak terdapat pada tabuk sebagai
atas. Semakin banyak semut yang melewati jalan kota tujuan selanjutnya. Perjalanan koloni semut
maka semakin banyak semut yang mengikutinya, berlangsung terus menerus hingga mencapai kota
semakin sedikit semut yang melewati jalan, maka yang telah ditentukan. Jika s menyatakan indeks
feromon yang ditinggalkan semakin berkurang urutan kunjungan, kota asal dinyatakan sebagai
bahkan hilang. Dari sinilah kemudian terpilihlah tabuk(s) dan kota-kota lainnya dinyatakan sebagai
jalur terpendek antara sarang dan sumber makanan. {N-tabuk}, maka untuk menentukan kota tujuan
digunakan persamaan probabilitas kota untuk
3. PEMBAHASAN dikunjungi sebagai berikut,
Dalam algoritma semut, diperlukan beberapa
variabel dan langkah-langkah untuk menentukan
jalur terpendek, yaitu: p kij =
[τ ij ]α ⋅ [ηij ]β untuk j∈{N-tabuk}
∑ [τ ik' ]α ⋅ [ηik' ]β
Langkah 1: k '∈{ N − tabu k }
a. Inisialisasi harga parameter-parameter
algoritma. p kij = 0 , untuk j lainnya
Parameter-parameter yang di inisialisasikan dengan i sebagai indeks kota asal dan j sebagai
adalah: indeks kota tujuan.
1. Intensitas jejak semut antar kota dan
perubahannya (τij) Langkah 4:
2. Banyak kota (n) termasuk x dan y a. Perhitungan panjang jalur setiap semut.
(koordinat) atau dij (jarak antar kota) Perhitungan panjang jalur tertutup (length closed
3. Penentuan kota berangkat dan kota tujuan tour) atau Lk setiap semut dilakukan setelah satu
4. Tetapan siklus-semut (Q) siklus diselesaikan oleh semua semut.
5. Tetapan pengendali intensitas jejak semut Perhitungan dilakukan berdasarkan tabuk
(α) masing-masing dengan persamaan berikut:
n−1
6. Tetapan pengendali visibilitas (β)
7. Visibilitas antar kota = 1/dij (ηij) Lk = dtabuk (n),tabuk (1) + ∑dtabuk (s),tabuk (s+1)
s=1
8. Jumlah semut (m)
9. Tetapan penguapan jejak semut (ρ) dengan dij adalah jarak antara kota i ke kota j
10. Jumlah siklus maksimum (NCmax) bersifat yang dihitung berdasarkan persamaan:
tetap selama algoritma dijalankan, d ij = ( x i − x j ) 2 + ( y i − y j ) 2
sedangkan τij akan selalu diperbaharui
harganya pada setiap siklus algoritma mulai b. Pencarian rute terpendek.
dari siklus pertama (NC=1) sampai tercapai Setelah Lk setiap semut dihitung, akan diperoleh
jumlah siklus maksimum (NC=NCmax) atau harga minimal panjang jalur tertutup setiap
sampai terjadi konvergensi. siklus atau LminNC dan harga minimal panjang
jalur tertutup secara keseluruhan adalah atau
b. Inisialisasi kota pertama setiap semut. Lmin.
Setelah inisialisasi τij dilakukan, kemudian m
semut ditempatkan pada kota pertama yang c. Perhitungan perubahan harga intensitas jejak
telah ditentukan. kaki semut antar kota.
Koloni semut akan meninggalkan jejak-jejak
Langkah 2: kaki pada lintasan antar kota yang dilaluinya.
Pengisian kota pertama ke dalam tabu list. Adanya penguapan dan perbedaan jumlah semut
Hasil inisialisasi kota pertama semut pada langkah 1 yang lewat, menyebabkan kemungkinan
harus diisikan sebagai elemen pertama tabu list. terjadinya perubahan harga intensitas jejak kaki
Hasil dari langkah ini adalah terisinya elemen semut antar kota. Persamaan perubahannya
pertama tabu list setiap semut dengan indeks kota adalah:
m
∆τ ij = ∑ ∆τ ijk
pertama.
k =1
Langkah 3:
Penyusunan jalur kunjungan setiap semut ke dengan ∆τ kij adalah perubahan harga intensitas
setiap kota. Koloni semut yang sudah terdistribusi ke jejak kaki semut antar kota setiap semut yang
kota pertama akan mulai melakukan perjalanan dari dihitung berdasarkan persamaan
kota pertama sebagai kota asal dan salah satu kota- Q
kota lainnya sebagai kota tujuan. Kemudian dari ∆τ kij =
kota kedua, masing-masing koloni semut akan Lk
melanjutkan perjalanan dengan memilih salah satu untuk (i,j) ∈ kota asal dan kota tujuan dalam
tabuk

B-83
Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007) ISSN: 1907-5022
Yogyakarta, 16 Juni 2007

∆τ kij = 0 , untuk (i,j) lainnya Parameter–parameter yang digunakan adalah:


α = 1.00
β = 1.00
Langkah 5: ρ = 0.50
a. Perhitungan harga intensitas jejak kaki semut τij (awal) = 0.01
antar kota untuk siklus selanjutnya. Maksimum siklus (NCmax) = 2
Harga intensitas jejak kaki semut antar kota Tetapan siklus semut (Q) = 1
pada semua lintasan antar kota ada Banyak semut (m) = 4
kemungkinan berubah karena adanya
penguapan dan perbedaan jumlah semut yang Dari jarak kota yang telah diketahui dapat
melewati. Untuk siklus selanjutnya, semut yang dihitung visibilitas antar kota (ηij) = 1/dij
akan melewati lintasan tersebut harga
intensitasnya telah berubah. Harga intensitas Tabel 2. visibilitas antar kota
jejak kaki semut antar kota untuk siklus
selanjutnya dihitung dengan persamaan: A B C D E
τ ij = ρ ⋅ τ ij + ∆τ ij A 0 0.2 0.143 0.33 0
b. Atur ulang harga perubahan intensitas jejak kaki B 0.2 0 0.25 0 0
semut antar kota. C 0.1 0.25 0 0 0.2
Untuk siklus selanjutnya perubahan harga
D 0.3 0 0 0 0.25
intensitas jejak semut antar kota perlu diatur
kembali agar memiliki nilai sama dengan nol. E 0 0 0.2 0.25 0

Langkah 6: Siklus ke-1:


Pengosongan tabu list, dan ulangi langkah Panjang jalur semut:
dua jika diperlukan. Tabu list perlu dikosongkan
untuk diisi lagi dengan urutan kota yang baru pada Tabel 3. Hasil pada siklus pertama
siklus selanjutnya, jika jumlah siklus maksimum semut ke- Rute panjang rute
belum tercapai atau belum terjadi konvergensi.
Algoritma diulang lagi dari langkah dua dengan 1 A C B
harga parameter intensitas jejak kaki semut antar 2 A C E 12
kota yang sudah diperbaharui. 3 A B C E 14
a. Contoh kasus 4 A D E 7
Jika diketahui suatu graph di bawah yang
ingin diketahui jalur terpendek dari kota A ke kota Siklus ke-2:
E: Panjang jalur semut:

Tabel 4. Hasil pada siklus kedua


A
semut ke- Rute panjang rute
1 A B C E 14
D
2 A B C E 14
B
3 A B C E 14
4 A D E 7
E
C Dari dua siklus diatas, diketahui lintasan
terpendek diperoleh oleh semut ke-4 dengan jalur A-
Gambar 2. Ilustrasi graph dengan 5 kota
D-E dengan panjang lintasan 7.
Dengan jarak antar kota (dij) sebagai berikut:
4. KESIMPULAN
a. Pemanfaatan teknologi informasi pada
Tabel 1. jarak antar kota
pencarian jalur terpendek menghasilkan suatu
A B C D E hasil atau keluaran yang akurat dan tepat, untuk
A 0 5 7 3 pilihan perjalanan seseorang dengan
mempertimbangkan beberapa parameter yang
B 5 0 4 lain.
C 7 4 0 5 b. Secara konsep algoritma, metode konvesional
D 3 0 4 lebih mudah untuk dipahami. Namun, hasil
E 5 4 0

B-84
Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007) ISSN: 1907-5022
Yogyakarta, 16 Juni 2007

yang diperoleh dari metode heuristik lebih PUSTAKA


variatif. Kusumadewi, S., Artificial Intelligence (Teknik dan
c. Algoritma semut tepat untuk digunakan dalam Aplikasinya), Yogyakarta: Graha Ilmu, 2003
permasalahan optimasi. Kusumadewi, S., dan Hari, p., Penyelesaian
d. Untuk kasus penentuan jalur terpendek antara Masalah Optimasi dengan Teknik-teknik
kota A dan E dari dua siklus yang dilewati Heuristi, Yogyakarta: Graha Ilmu, 2005
terbukti bahwa jalur terpendeknya hanya Efendi, R., Penerapan algoritma semut untuk
melewati satu kota yaitu kota D dengan panjang pemecahan masalah spanning tree pada
rute 7 kasus pemasangan jaringan kabel telepon”,
Tugas Akhir Jurusan Teknik Informatika,
5. SARAN Universitas Islam Indonesia, 2003
a. Diharapkan ada penelitian lebih lanjut untuk Zuhri,Z., “Optimasi rute dengan algoritma semut”
mengetahui efisiensi dari pencarian jalur ,makalah system cerda, volume 1, Nomor
terpendek menggunakan Metode heuristik. 1,Universitas Islam Indonesia, 2002.
b. Diharapkan penelitian berikutnya yang dapat Dorigo,M., The Ant System: Optimization by a
membandingkan antar metode-metode heuristik colony of cooperating agents, IEEE
yang lain. transactions on Systems, Man, and
Cybernetics–Part B, Vol.26, No.1, 1996.
Dorigo,M dan Gambardella,L.M., Ant Colony
System:A Cooperative Learning Approach to
theTraveling Salesman Problem, Université
Libre de Bruxelles Belgium,1996.

B-85

Anda mungkin juga menyukai