Upload
ikhsan-dromanceboy
View
220
Download
0
Embed Size (px)
DESCRIPTION
qw
Citation preview
OPTIMALISASI TRAVELLING SALESMAN WITH TIME WINDOWS
(TSPTW) DENGAN ALGORITMA SEMUT
Budi Prasetyo Wibowo, Purwanto, danSusy Kuspambudi Andaini
Universitas Negeri Malang
ABSTRAK: Travelling Salesman Problem with Time Windows adalah
permasalahan yang bertujuan untuk mencari biaya tour minimum dari
sekumpulan kota, dimana tiap kota hanya dikunjungi satu kali saja dalam
batas time windows tertentu, dan tiap kota harus dikunjungi pada batas
time windows mereka masing-masing. Untuk menyelesaikan masalah ini,
algoritma yang digunakan adalah algoritma semut. Ada beberapa tahap
algoritma dalam menyelesaikan masalah TSPTW dengan algoritma semut, yaitu aturan transisi status, tahap pembaruan pheromon, dan
perhitungan rute akhir dengan time windows. Perhitungan manual
menunjukkan bahwa algoritma semut mampu menyelesaikan masalah TSPTW lebih baik daripada algoritma genetika.
Kata kunci : Graph, TSPTW, Algoritma semut.
Permasalahan Travelling Salesman Problem With Time Windowssebagai
permasalahan mencari biaya tour minimum dari sekumpulan kota, di mana tiap
kota hanya dikunjungi satu kali saja. Agar feasible, maka tour tersebut harus
berawal dan berakhir disuatu depot tertentu, dalam batas time windows tertentu,
dan tiap kota harus dikunjungi pada batas time windowsmereka masing-masing
(Desrosiers dkk, 1995:40. Penentuan ini sangat penting bagi salesman, mengingat
dengan semakin kerasnya persaingan dalam bidang pelayanan jasa antar barang,
salesman dituntut untuk dapat memberikan pelayanan yang baik kepada
pelanggan dan ketepatan waktu menjadi penentu utama, sehingga produk yang
diantarkan bisa diterima oleh pelanggan dengan cepat dan tepat waktu.
Sudah ada beberapa algoritma yang digunakan untuk menyelesaikan
permasalahan ini. Pada skripsi ini membahas penyelesaian permasalahan TSPTW
dengan menggunakan algoritma semut.algoritma semut merupakan metode
penyelesaian permasalahan optimasi yang terinspirasi tingkah kalu koloni semut.
Menurut Dorigo dan Gambardella (1997) algoritma semut mampu mendapatkan
hasil otur terlabik dibandingkan algoritma genetika, algoritma simulated
annealing, dan annealing – genetic algorithm.
Pada algoritma semut, semut akan ditempatkan di beberapa titik graph
yang kemudian akan bergerak mengunjungi seluruh titik. Setiap semut akan
membuat jalur masing-masing sampai kembali ketempat semula dimana mereka
ditempatkan pertama kali. Solusi akhir adalah jalur terpendek dari seluruh jalur
yang dihasilkan oleh pencarian semut tersebut.
Rumusan masalah yang diajukan adalah (1) Bagaimana TSPTW dapat
diselesaikan dengan bantuan algoritma semut? (2) Bagaimana implementasi
algoritma semut dalam bahasa Delphi dapat menyelesaikan TSPTW? (3)
Bagaimana perbandingan pencarian hasil algoritma semut dengan algoritma
genetika?
PEMBAHASAN
Algoritma semutuntuk Travelling Salesman Problem With Time Windows
(TSPTW)
Penyelesaian permasalahan TSPTW dengan menggunakan Algoritma semut
melalui beberapa tahapan. Tahapan – tahapan itu didasarkan pada perilaku semut
dalam mencari sumber makanan. Semut akan meninggalkan jejak berupa
pheromon, sehingga semut lain tidak akan bepergian secara acak lagi.Tahapan-
tahapan yang dimaksud dapat dilihat melalui flowchart dari Algoritma semut
untuk TSPTW seperti pada gambar berikut.
Flowchart Algoritma semutuntuk TSPTW
1. AturanTransisi Status
Dengan menempatkan seekor semut pada titik t untuk menuju ke titik v,
kemudian diberikan bilangan acak q dimana 0 � � � 1, q0 adalah suatu parameter
yaitu probabilitas semut untuk melakukan eksplorasi pada setiap tahapan, dimana
(0 � �� � 1) dan pk (t,v) adalah probabilitas dimana semut k memilih untuk
bergerak ke titik v.
Jika � �qo maka pemilihan titik yang akan dituju menerapkan aturan yang
diunjukkan oleh persamaan temporary di bawah ini
Temporary (t,u) = ����, ��. ����, ��� , i = 1,2,3,…,n
v = max �����, ��. ����, ���� Dengan v = titik yang akan dituju
Sedangkan jika q > qo digunakan persamaan probabilitas
� � ����, �� �����, ��. ����, ���
∑ ����, ��. ����, ������
Dengan ���, � ��
�������, !�
dimana ��, � adalah nilai dari jejak pheromone pada titik (t,u), ���, � adalah
fungsi heuristic dimana dipilih sebagai invers jarak antara titik t dan u. "
merupakan suatu parameter yang mempertimbangkan kepentingan relatif dari
informasi heuristic, yaitu besarnya bobot yang diberikan terhadap parameter
informasi heuristic, sehingga solusi yang dihasilkan cenderung berdasarkan nilai
fungsi matematis. Nilai dari parameter " adalah # 0..
2. Pembaruan Pheromon Ketika melakukan tour untuk mencari solusi, semut mengunjungi titik-titikdan
mengubah tingkat pheromon pada titik-titik tersebut dengan menerapkan aturan
pembaruan pheromon yang ditunjukkan oleh persamaan di bawah ini:
���, �� % �1 ' (�. ���, �� ) (. ∆���, ��
∆���, �� �1
+��. ,
Dimana :
Lnn = panjang tour yang diperoleh
c = jumlah lokasi
( = parameter dengan nilai 0 sampai 1
∆� = perubahan pheromon
( adalah suatu parameter (koefisien evaporasi), yaitu besarnya koefisien
penguapan pheromon.
Faktor-faktor yang mempengaruhi pencarian rute dan waktu optimasi
dengan kendala time windows a. Banyaknya Kunjungan
Banyaknya pelanggan yang harus dikunjungi pada satu waktu tertentu
b. Waktu Tunggu
Ketika time windows belum terbuka maka akan mengakibatkan waktu
tunggu.
c. Waktu Pelayanan
Waktu yang dibutuhkan untuk melayani pelanggan
d. Waktu Perjalanan
Lama perjalanan yang dibutuhkan untuk mengunjungi masing-masing
kota.
Berikut ini akan ditunjukkan uji coba program yang dibuat penulis menggunakan
alat bantu Borland Delphi 7. Program ini berdasarkan urutan langkah algoritma
semut.
Uji coba program
Graph contoh uji coba program
Terdapat 5 kota yang harus dikunjungi permasalahan algoritma semut
untuk mencari rute terpendek dengan kendala time windows.
Keterangan : a. titik 0 merupakan depot di manastart dan finish.
b. satuan ukuran biaya perjalanan kelipatan 10 menit.
Tabel time windows uji coba
Dari table time windows terdapat waktu kunjungan masing-masing kota. Di mana
setiap kota harus hanya dikunjungi pada waktu yang sudah ditentukan.
Tabel Matrik Cost uji coba
Kota 0 1 2 3 4 5
0 0 9 4 3 2 8
1 9 0 7 7 4 4
2 4 7 0 5 8 1
3 3 7 5 0 6 4
4 2 4 8 6 0 5
Kota Time windows Lama Layanan
0 08.00 – 18.00 0
1 09.00 – 17.00 10
2 09.30 – 18.00 10
3 09.00 – 17.30 10
4 09.00 – 16.00 10
5 08.30 – 16.30 10
1
2
0 3
5
4
5 8 4 1 4 5 0
Hasil penyelesaian kasus TSPTW diatas dengan menggunakan program yang
sesuai dengan tahapan algoritma semut sebagai berikut :
Graph Hasil uji coba program
Dengan jumlah semut 6, dari hasil uji coba program di atas didapat hasil sebagai
berikut:
Rute semut 1 : 0 4 1 5 2 3 0
Rute semut 2 : 1 4 5 2 3 0 1
Rute Semut 3 :2 5 1 4 0 3 2
Rute semut 4 :3 5 2 1 4 0 3
Rute semut 5 : 4 0 3 5 2 1 4
Rute semut 6 : 5 2 3 4 0 1 5
Sehingga diperoleh pheromon baru :
0.0000 0.0035 0.0364 0.0163 0.0644 0.0202
0.0096 0.0000 0.0197 0.0015 0.0067 0.0067
0.0213 0.0015 0.0000 0.0010 0.0163 0.1087
0.0430 0.0170 0.0188 0.0000 0.0192 0.0250
0.0792 0.0270 0.0206 0.0074 0.0000 0.0104
Sehingga diperoleh rute akhir : 0 4 2 5 3 1 0
Dengan total cost adalah 290 menit.
KESIMPULAN DAN SARAN
Kesimpulan
1. Algoritma semutmampu menyelesaikan permasalahan TSPTW
menggunakan tahapan perhitungan yang ada.
2. Pembuatan program Delphi sebagai alat bantu perhitungan algoritma
semut bertujuan untuk membantu sales dalam menentukan rute perjalanan
yang lebih cepat. Urutan skema pengkodean dalam program ini yaitu
menentukan nilai pheromon awal, invers cost, pemilihan titik yang dituju,
pembaruan pheromon, dan menghitung total cost rute. Pengujian yang
telah dilakukan menunjukkan bahwa program ini dapat menyelesaikan
masalah TSPTW dengan cepat.
3. Berdasarkan analisa hasil, didapatkan bahwa algoritma semut lebih baik
dalam menyelesaikan masalah TSPTW yang dilakukan dengan
perhitungan manual. Pada contoh 1 dengan jumlah 6 titik, algoritma
genetika mendapatkan total cost 360 menit, sedangkan algoritma semut
mendapatkan total cost 300 menit. Begitu juga pada contoh 2, algoritma
genetika mendapatkan total cost 410 menit, sedangkan algoritma semut
350 menit
Saran
1. Tidak adanya variabel-variabel yang mempengaruhi pengiriman seperti
variabel kemacetan, penentuan hari kerja, dan waktu istirahat sales
Semakin banyak variabel, maka semakin baik solusinya.
2. Untuk program, masih banyak kekurangan misalnya dari segi tampilan
yang sederhana.
DAFTAR RUJUKAN
Andriani, Y. A.2005. Penggunaan Metode Nearest Neighbour dan Metode
Cheapest Link dalam Penyelesaian Travelling Salesman Problem.
Skripsi tidak diterbitkan. Malang: FMIPA Universitas Negeri Malang.
Blum, C. & Lopez-Ibanez, M. Beam-ACO Based on Stochastic Sampling: A Case
Study on the TSP with Time Windows. ALBCOM, Dept. Llenguatges
I Sistemes Informatics.
Dorigo, M. 1997. A Cooperative Learning approach to the Travelling Salesman
Problem. IEEE Transaction on Evolutionary Computation, 1 (1), 1-24
Dorigo, M. &Maniezzo, V. 1996. Ant system: optimization by a colony of
cooperating agents. IEEE Transactions on Systems, Man, and
Cybernetics--Part B , volume 26, numéro 1, pages 29-41, 1996.
Favaretto, D. Moretti, E. & Pallegrini, P. 2006. An Ant System Approach for
Variants of the Travelling Salesman Problem With Time
Windows.Journal of Information & Optimization Science, 27 (1), 35-
54.
Habibi, B. 2006. Penyelesaian Travelling Salesman dengan Menggunakan
Simulated Annealing. Skripsi tidak diterbitkan. Malang: FMIPA
Universitas Negeri Malang.
Herdhiyanto, F. 2005. Penyelesaian Travelling Salesman Problem Menggunakan
Algoritma Koloni Semut. Skripsi tidak diterbitkan. Malang: FMIPA
Universitas Negeri Malang.
Maharani, F. 2010. Penerapan Metode Pindah Silang Order Crossover (OX) dan
Partial Mapped Crossover (PMX) dalam Algoritma Genetika pada
Permasalahan Travelling Salesman Problem. Skripsi tidak
diterbitkan. Malang: FMIPA Universitas Negeri Malang.
Turangga, S. 2012. Penyelesaian Travelling Salesman With Time Windows
(TSPTW) dengan Algoritma Genetika. Skripsi tidak diterbitkan.
Malang: FMIPA Universitas Negeri Malang.
Wilson, R. J. & Watkins, J. J. (diterjemahkan Oleh Dra. Theresia MH Tirta
Seputro, M.Pd). Graph An Introductory Approach. Canada: Wiley &
Sons.