Persoalan yang berkaitan dengan optimisasi sangat kompleks dalam kehidupan sehari-hari. Nilai optimal yang didapat dalam optimisasi dapat berupa besaran
panjang, waktu, jarak dan lain-lain. Berikut ini adalah beberapa persoalan yang memerlukan optimisasi: menentukan rute terpendek dari suatu tempat ke tempat yang
lain, menentukan jumlah pekerja seminimal mungkin untuk melakukan suatu proses produksi agar pengeluaran biaya pekerja dapat diminimalkan dan hasil produksi tetap
maksimal, mengatur rute kendaraan umum agar semua lokasi dapat dijangkau, mengatur routing jaringan kabel telepon agar biaya pemasangan kabel tidak terlalu
besar.
2.3 Permasalahan Rute Terpendek Shortest Path Problem
Permasalahan rute terpendek Shortest Path Problem merupakan suatu jaringan pengarahan perjalanan dimana seseorang pengarah jalan ingin menentukan rute
terpendek antara dua kota berdasarkan rute alternatif yang tersedia, dimana kota tujuan hanya satu. Masalah ini sendiri menggunakan representasi graf untuk
memodelkan persoalan yang diwakili sehingga lebih memudahkan penyelesaiannya. Masalahnya adalah bagaimana cara mengunjungi verteks pada graf dari verteks awal
ke verteks akhir dengan bobot minimum, dimana dalam hal ini bobot yang digunakan adalah jarak dan kota-kota yang dikunjungi diasumsikan sebagai graf yang saling
terhubung connected graf antar suatu kota dengan kota yang lainnya. Graf G disebut terhubung jika untuk setiap verteks dari graf terdapat sisi yang menghubungkan kedua
verteks tersebut, atau dengan kata lain graf terhubung jika setiap dua verteks yaitu v
i
dan v
j
dalam suatu graf terdapat sedikitnya sebuah sisi. Sisi pada graf berarah disebut arc.
Berdasarkan data diatas, dapat dihitung rute terpendek dengan mencari jarak antara rute-rute tersebut. Apabila jarak antar rute belum diketahui, jarak dapat
dihitung berdasarkan koordinat tempat tersebut, kemudian menghitung rute terpendek yang dapat dilalui.
A
D F
C B
A
D E
C B
Gambar 2.8 Graf yang Berarah dan Tidak Berbobot.
Pada gambar 2.8 diatas, misalkan kita dari verteks A ingin menuju verteks F. Untuk menuju verteks F, dapat dipilih beberapa rute yang tersedia yaitu:
A → B → E → F
A → B → F
A → B → D → E → F
A → C → D → F
A → C → E → F
A → D → F
A → D → E → F
Rute terpendek dari ketujuh rute yang tersedia belum dapat ditentukan karena jarak atau bobot dari setiap sisi tidak diketahui. Rute terpendek dari verteks A menuju
verteks F dapat dihitung dengan mencari jarak diantara sisi-sisi tersebut. Apabila jarak antar sisi belum diketahui, jarak dapat dihitung berdasarkan koordinat verteks-verteks
tersebut, kemudian menghitung jalur terpendek yang dapat dilalui.
2.4 Algoritma Semut