13
PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY-TABU SEARCH UNTUK PENYELESAIAN TRAVELLING REPAIRMAN PROBLEM Muchammad Aminuddin, Budi Santosa Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember (ITS) Surabaya Kampus ITS Sukolilo Surabaya 60111 Email: [email protected] ; [email protected] Abstrak Travelling Repairman Problem (TRP) adalah salah satu varian dari Travelling Salesman Problem (TSP) yang memiliki fungsi tujuan untuk meminimasi total waktu tunggu customer untuk dilayani oleh repairman. Tujuan dari TRP menjadi sangat penting karena pada aplikasinya seorang customer membutuhkan pelayanan yang sangat mendesak dan harus segera dilayani sehingga erat kaitannya dengan kepuasan pelanggan. TRP merupakan masalah kombinatorial yang memerlukan waktu komputasi yang lama untuk ukuran problem yang besar sehingga memerlukan pendekatan metoda metaheuristik untuk penyelesaiannya. Cross Entropy merupakan suatu pendekatan metaheuristik yang telah menunjukkan hasil yang bagus untuk menyelesaikan beberapa permasalahan optimasi kombinatorial. Tabu Search merupakan algoritma yang sudah lama digunakan untuk penyelesaian optimasi kombinatorial. Pada penelitian ini dilakukan penggabungan antara algoritma Cross Entropy dan Tabu Search untuk mendapatkan hasil yang lebih baik dalam menyelesaikan Travelling Repairman Problem. Kata kunci : Travelling Repairman Problem, kombinatorial, Cross Entropy, Tabu Search, Hybrid Cross Entropy-Tabu Search Abstract Traveling Repairman Problem (TRP) is one variant of the Traveling Salesman Problem (TSP) which has the objective function to minimize the total waiting time for customers served by the repairman. The goal of the TRP to be very important because of the application in the real case that customers need the urgent services and must be served immediately so that it is related to customer satisfaction. TRP is a combinatorial problem that requires a long computational time for large scale problem so that need metaheuristic method approach to solve it. Cross Entropy is an metaheuristic approach that already shown better results to solve some combinatorial optimization problems. Tabu Search is an algorithm that has long been used for solving combinatorial optimization. This research combine between Cross Entropy algorithm and Tabu Search to get better results to solve the Travelling Repairman Problem. Keywords: Travelling Repairman Problem, combinatorial, Cross Entropy, Tabu Search, Hybrid Cross Entropy-Tabu Search 1. Pendahuluan Penelitian dalam permasalahan transportasi masih terus dilakukan untuk mencari algoritma baru untuk menyelesaikan sebuah permasalahan yang menghasilkan solusi yang lebih optimal dari penelitian sebelumnya. Salah satu permasalahan transportasi yang paling sering dibahas adalah Traveling Salesman Problem (TSP). TSP merupakan permasalahan dimana seorang salesman harus mengunjungi setiap kota, salesman tersebut berangkat dari kota awal dan berakhir pada kota yang sama, serta setiap kota harus dikunjungi tidak lebih dari satu kali. Fungsi tujuan dari TSP adalah untuk mencari rute terpendek yang bisa dilalui oleh salesman sehingga dihasilkan total jarak terpendek. Travelling Repairman Problem merupakan salah satu permasalahan NP-Hard. Travelling Repairman Problem (TRP) adalah salah satu varian dari Travelling Salesman Problem (TSP) dimana keduanya memiliki fungsi tujuan yang berbeda. Travelling Repairman Problem juga sering disebut dengan Minimum Latency Problem, Travelling Deliveryman Problem, atau juga TSP with cumulative costs. Tujuan dari Travelling Repairman Problem adalah untuk meminimasi total waktu tunggu customer untuk dilayani oleh

PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY-TABU SEARCH UNTUK PENYELESAIAN TRAVELLING REPAIRMAN PROBLEM

Muchammad Aminuddin, Budi Santosa

Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember (ITS) Surabaya

Kampus ITS Sukolilo Surabaya 60111 Email: [email protected] ; [email protected]

Abstrak

Travelling Repairman Problem (TRP) adalah salah satu varian dari Travelling Salesman Problem (TSP) yang memiliki fungsi tujuan untuk meminimasi total waktu tunggu customer untuk dilayani oleh repairman. Tujuan dari TRP menjadi sangat penting karena pada aplikasinya seorang customer membutuhkan pelayanan yang sangat mendesak dan harus segera dilayani sehingga erat kaitannya dengan kepuasan pelanggan. TRP merupakan masalah kombinatorial yang memerlukan waktu komputasi yang lama untuk ukuran problem yang besar sehingga memerlukan pendekatan metoda metaheuristik untuk penyelesaiannya. Cross Entropy merupakan suatu pendekatan metaheuristik yang telah menunjukkan hasil yang bagus untuk menyelesaikan beberapa permasalahan optimasi kombinatorial. Tabu Search merupakan algoritma yang sudah lama digunakan untuk penyelesaian optimasi kombinatorial. Pada penelitian ini dilakukan penggabungan antara algoritma Cross Entropy dan Tabu Search untuk mendapatkan hasil yang lebih baik dalam menyelesaikan Travelling Repairman Problem. Kata kunci : Travelling Repairman Problem, kombinatorial, Cross Entropy, Tabu Search, Hybrid

Cross Entropy-Tabu Search

Abstract Traveling Repairman Problem (TRP) is one variant of the Traveling Salesman Problem (TSP) which has the objective function to minimize the total waiting time for customers served by the repairman. The goal of the TRP to be very important because of the application in the real case that customers need the urgent services and must be served immediately so that it is related to customer satisfaction. TRP is a combinatorial problem that requires a long computational time for large scale problem so that need metaheuristic method approach to solve it. Cross Entropy is an metaheuristic approach that already shown better results to solve some combinatorial optimization problems. Tabu Search is an algorithm that has long been used for solving combinatorial optimization. This research combine between Cross Entropy algorithm and Tabu Search to get better results to solve the Travelling Repairman Problem

.

Keywords: Travelling Repairman Problem, combinatorial, Cross Entropy, Tabu Search, Hybrid Cross Entropy-Tabu Search

1. Pendahuluan Penelitian dalam permasalahan transportasi masih terus dilakukan untuk mencari algoritma baru untuk menyelesaikan sebuah permasalahan yang menghasilkan solusi yang lebih optimal dari penelitian sebelumnya. Salah satu permasalahan transportasi yang paling sering dibahas adalah Traveling Salesman Problem (TSP). TSP merupakan permasalahan dimana seorang salesman harus mengunjungi setiap kota, salesman tersebut berangkat dari kota awal dan berakhir pada kota yang sama, serta setiap kota harus dikunjungi tidak lebih dari satu kali. Fungsi tujuan dari TSP adalah untuk mencari

rute terpendek yang bisa dilalui oleh salesman sehingga dihasilkan total jarak terpendek. Travelling Repairman Problem merupakan salah satu permasalahan NP-Hard.

Travelling Repairman Problem (TRP) adalah salah satu varian dari Travelling Salesman Problem (TSP) dimana keduanya memiliki fungsi tujuan yang berbeda. Travelling Repairman Problem juga sering disebut dengan Minimum Latency Problem, Travelling Deliveryman Problem, atau juga TSP with cumulative costs. Tujuan dari Travelling Repairman Problem adalah untuk meminimasi total waktu tunggu customer untuk dilayani oleh

Page 2: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

2

Repairman, berbeda dengan fungsi tujuan TSP yaitu meminimasi total waktu atau jarak perjalanan yang ditempuh oleh salesman. Tujuan dari TRP menjadi sangat penting karena pada aplikasinya seorang customer membutuhkan pelayanan yang sangat mendesak dan harus segera dilayani. Contoh aplikasi TRP bermacam-macam, yang paling sering adalah pada bengkel. Seorang repairman harus mencari cara untuk mencapai lokasi customer dengan cepat sehingga total waktu tunggu customer seminimal mungkin, padahal dalam sekali berangkat seorang repairman bisa saja menerima banyak order dari customer dan kesemuanya harus dilayani. Penyelesaian permasalahan ini akan banyak memberikan kontribusi pada dunia nyata, salah satunya adalah pada usaha reparasi panggilan. Selain itu, aplikasi Travelling Repairman Problem juga bisa dilihat pada kasus tim penyelamat bencana alam (Dewilde et al.). Tim penyelamat harus mengunjungi beberapa desa untuk mengantarkan obat, semakin kecil waktu tunggu korban maka semakin banyak korban yang mampu diselamatkan. Oleh karena itu, tim penyelamat harus mencari rute yang optimal untuk meminimasi waktu tunggu korban agar semakin banyak yang diselamatkan.

Berbagai metoda telah dilakukan untuk menyelesaikan permasalahan Travelling Repairman Problem. Namun, masih sangat sedikit penelitian yang dilakukan untuk memecahkan permasalahan Travelling Repairman Problem dengan menggunakan metoda metaheuristik. Penelitian yang dilakukan hingga saat ini kebanyakan memecahkan permsalahan ini dengan menggunakan metoda eksak dan metoda heuristik, di antaranya Tabu Search (Dewilde et al.), Polynomial Time Algorithms (Wu, 2000), Exact Algorithm (Wu et al., 2004), Lagrangian Relaxation (Rocha et al.), dan Approximation Algorithm (Archer et al., 2008). Penyelesaian problem ini dengan metoda metaheuristik pertama kali dilakukan dengan algoritma GRASP+VND (Salehipour et al., 2008) dan yang terkahir dilakukan dengan algoritma Improved Genetic Algorithm (Bang and Nghia, 2010). Dengan demikian, penelitian pada permasalahan Travelling Repairman Problem masih sangat terbuka. Dalam penelitian ini digunakan pendekatan metoda metaheuristik untuk menyelesaikan permasalahan TRP karena metoda metaheuristik memiliki waktu

komputasi yang cepat dengan semakin meningkatnya ukuran permasalahan. Oleh karena itu, dipilih algoritma Cross Entropy (CE) karena algoritma ini telah menunjukkan hasil yang bagus untuk menyelesaikan beberapa permasalahan optimasi seperti job scheduling, orienteering problem, dan crew scheduling.

Penelitian dilakukan tidak hanya dengan mengembangkan algoritma CE, tetapi juga mengembangkan algoritma Tabu Search yang nantinya akan di-hybrid dengan CE sehingga diciptakan algoritma baru yaitu Hybrid Cross Entropy-Tabu Search Algorithm (CE-TS) untuk menyelesaikan permasahan TRP agar didapatkan hasil yang lebih baik. Dalam aplikasinya, algoritma CE ini memiliki ketergantungan terhadap jumlah sampel yang dibangkitkan untuk memperbaiki hasil optimalnya. Namun, waktu komputasinya akan semakin lama seiring dengan peningkatan jumlah sampel yang dibangkitkan. Algoritma CE-TS ini dikembangkan untuk memperbaiki hasil optimal yang didapatkan oleh algoritma CE tanpa melakukan penambahan jumlah sampel yang dibangkitkan dengan mengatur pembangkitan awal CE melalui algoritma Tabu Search sehingga matriks sampel awal yang dibangkitkan oleh CE sudah merupakan sampel yang bagus hasil dari Tabu Search. Algoritma Tabu Search ini dipilih untuk dilakukan hybrid dengan CE karena Tabu Search ini memiliki keunggulan dengan adanya Tabu List yang menjaga agar proses pencarian tidak jatuh pada lokal optimal yang pernah muncul pada pencarian sebelumnya. Tabu List ini juga bisa diatur ukurannya sehingga bisa ditentukan berapa sampel terbaik Tabu Search yang akan menjadi inisial solusi bagi CE.

2. Formulasi Matematis Travelling Repairman Problem (TRP)

Permasalahan TRP yang akan diselesaikan adalah permasalahan TRP yang mengacu pada formulasi matematis Travelling Repairman Problem berikut (Ezzine et al., 2010):

𝑀𝑖𝑛 𝑛 ∗��𝐶𝑖𝑗𝑋𝑖𝑗 −��𝐶𝑖𝑗𝑌𝑖𝑗

𝑛

𝑗=1

𝑛

𝑖=1

𝑛

𝑗=1

𝑛

𝑖=1

… … … … … . … … … … … (1)

Subject to.

�𝑋𝑖𝑗 = 1 ∀ (𝑖 = 1, … ,𝑛) … … … … . . … … … … … … (2)𝑛

𝑗=1

Page 3: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

3

�𝑋𝑗𝑖 = 1𝑛

𝑗=1

∀ (𝑖 = 1, … ,𝑛) … … … … … . . … … … … … (3)

𝜇𝑖 − 𝜇𝑗 + (𝑛 − 1)𝑋𝑖𝑗 + (𝑛 − 3)𝑋𝑗𝑖≤ (𝑛 − 2) ∀ (𝑖, 𝑗 = 2, … ,𝑛) … … … … … (4)

𝜇𝑗 ≤ (𝑛 − 2) + (3 − 𝑛)𝑋1𝑗+ 𝑋𝑗(𝑛+1) ∀ (𝑗 = 2, … ,𝑛) … . . … … (5)

𝜇𝑗 ≥ (𝑛 − 3)𝑋𝑗(𝑛−1) − 𝑋𝑗1 + 2 ∀ (𝑗 = 2, … ,𝑛) … . … . (6) 𝑌𝑖𝑗 ≤ (𝑛 − 1) ∗ 𝑋𝑖𝑗 ∀ (𝑖, 𝑗 = 1, … ,𝑛) … … … … … … . . . (7) 𝑌𝑖𝑗 ≤ 𝜇𝑖 ∀ (𝑖, 𝑗 = 1, … ,𝑛) … … … … … … . … … … . . … … (8) 𝑋𝑖𝑗 ∈ {0,1} … … … … … … … … . … … … … … … … … . . … … (9) 𝜇𝑖 ≥ 0 … . … … … … … … … … … … … … … … … … … . . … . (10) 𝑌𝑖𝑗 ≥ 0, 𝑌𝑖𝑗 𝑖𝑛𝑡𝑒𝑔𝑒𝑟… … … … … … . … … … … … . . … (11) Keterangan : Xij = 1 jika repairman melalui ruas (i, j)

0 jika tidak Yij = μi jika Xij

0 jika tidak = 1

μi

Fungsi tujuan TRP (1) adalah meminimasi total waktu tunggu customer secara keseluruhan. Konstrain (2) dan (3) adalah konstrain penugasan, dimana konstrain ini aka menjamin bahwa hanya akan ada satu panah (arc) yang masuk dan keluar sebuah kota sehingga setiap kota akan dikunjungi tepat satu kali. Konstrain (4) adalah konstrain untuk eliminasi subtour dimana pada konstrain ini nilai μ

= menunjukkan posisi node dalam tour

i akan muncul yang merupakan posisi node dalam tour. Konstrain (5) dan (6) adalah konstrain pembatas untuk μi dimana nilai μj akan mempengaruhi nilai μi pada konstrain (4). Konstrain (7) menunjukkan bahwa Yij akan bernilai positif jika kota j dikunjungi sesaat setelah kota i dikunjungi. Nilai variabel Yij

Perbedaan antara TRP dengan TSP pada formulasi di atas adalah bahwa jarak antara 1 node ke node yang lain tidak langsung ditambahkan untuk mendapatkan hasil akhir, tetapi sebagai contoh jarak dari node awal ke node pertama yang dikunjungi harus ditambahkan n-1 kali sebagai pengaruh waktu tunggu dari semua customer yang lain. Maka, variabel Y

akan didapatkan dari konstrain (8) yang menunjukkan posisi customer dalam tour.

ij

Pada formulasi matematis di atas, terdapat konstrain yang akan diakomodasi dalam algoritma Hybrid Cross Entropy-Tabu Search (CE-TS) di antaranya adalah fungsi tujuan pada konstrain (1), konstrain (2) dan (3) untuk menjamin bahwa semua customer harus dikunjungi oleh repairman tepat satu kali, dan konstrain (4) hingga (8) untuk memunculkan nilai Y

akan bernilai 0 jika arc antara i dan j bukan merupakan bagian dari rute atau bernilai

n-k+1 jika arc berada pada posisi k pada rute (Lechmann, 2009).

ij yang merupakan posisi customer dalam rute terhadap kota awal repairman. Nilai Yij

Fungsi tujuan TRP mengacu pada persamaan (1) telah diakomodasi dalam algoritma Hybrid CE-TS melalui evaluasi. Fungsi tujua memperhitungkan besar pengaruh waktu tunggu customer lain yang dapat diketahui dari nilai Y

inilah yang akan menjadi faktor penentu untuk menghitung pengaruh waktu tunggu customer lain terhadap waktu tunggu customer j.

ij. Nilai Yij

3. Pengembangan Algoritma

telah diakomodasi dalam algoritma melalui pengaturan indeks yang akan menjadi koefisien pengurang dalam fungsi tujuan.Konstrain (2) dan (3) telah mampu diakomodasi dalam algoritma Hybrid CE-TS melalui mekanisme pembangkitan sampel rute. Mekanisme pembangkitan rute yang digunakan pada Cross Entropy (CE) dan Tabu Search (TS) pada algoritma Hybrid CE-TS berbeda. Pada TS digunakan mekanisme pembangkitan rute yang random dengan menggunakan fungsi randperm dengan mengatur kota 1 sebagai kota awal repairman. Fungsi randperm ini mampu memunculkan rute sebanyak n kota dengan setiap kota tepat dikunjungi sekali. Pada algoritma CE, pembangkitan rute dilakukan dengan matriks transisi (node transition), yaitu dengan membangkitkan bilangan random untuk pemilihan rute dengan mekanisme roulette wheel selection.

Pada tahap ini dilakukan pengembangan algoritma Cross Entropy dan algoritma Tabu Search sehingga didapatkan suatu algoritma baru yang merupakan hybrid dari CE dan TS yang dapat diterapkan pada Travelling Repairman Problem (TRP).

3.1 Algoritma Cross Entropy (CE) untuk Travelling Repairman Problem Algoritma Cross Entropy digunakan untuk menyelesaikan permasalahan optimasi NP-Hard

Page 4: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

4

dengan membangkitkan sejumlah N kandidat solusi dengan mekanisme tertentu (dalam TRP menggunakan mekanisme node transition) dan tiap kandidat solusi dievaluasi fungsi tujuannya. Dari kandidat solusi yang ada kemudian diambil sampel elite sejumlah ρ x N untuk meng-update parameter yang akan digunakan untuk pembangkitan solusi pada iterasi selanjutnya sehingga kandidat solusi pada iterasi berikutnya berasal dari sampel terbaik pada iterasi sebelumnya

Pengembangan algoritma sesuai yang telah digambarkan dalam flowchart dijelaskan sebagai berikut. 1. Pengumpulan Data

Data yang dibutuhkan untuk pengujian algoritma adalah data koordinat kota yang dalam penelitian ini digunakan 3 problem dengan ukuran yang berbeda, yaitu Eil51 (51 kota), KroA100 (100 kota) dan KroA150 (150 kota).

2. Penentuan Parameter Pada tahap ini dilakukan penetapan parameter dari algoritma Cross Entropy, diantaranya adalah update smoothing parameter (α), proporsi sampel elite (ρ), dan jumlah populasi tiap iterasi (N).

3. Generate matriks probabilitas transisi Pada tahap ini dimunculkan matriks transisi P dimana nilainya tiap cell adalah 1

𝑛−1, dan

nilai dari semua diagonal matriks tersebut adalah nol.

4. Membangkikan N rute sebagai kandidat solusi Pada tahap ini akan dibangkitkan rute sejumlah N sampel sesuai matriks transisi P untuk dilakukan iterasi.

5. Perhitungan total waktu tunggu customer Penghitungan total waktu tunggu customer ini digunakan sebagai fitness untuk mengetahui mana sampel elite yang menghasilkan kandidat solusi terbaik yang selanjutnya akan diurutkan.

6. Pemilihan sampel elite Pada tahap ini dilakukan pemilihan sampel elite sesuai parameter jumlah sampel elite ρ x n.

7. Update matriks transisi Update matriks transisi dilakukan untuk mendapatkan matriks transisi untuk generate solusi pada iterasi selanjutnya.

8. Mengecek stopping criteria Stopping Criteria ditentukan untuk memutuskan apakah iterasi dilanjutkan atau tidak. Biasanya stopping criteria yang diberlakukan adalah maksimum iterasi. Bila stopping criteria belum tercapai, maka kembali ke langkah 4, namun bila stopping criteria tercapai, iterasi dihentikan dan dimunculkan solusi terbaik.

3.2 Algoritma Hybrid Cross Entropy-Tabu Search (CE-TS) untuk Travelling Repairman Problem Hasil optimal yang didapatkan algoritma Cross Entropy sangat bergantung pada jumlah sampel yang dibangkitkan. Namun, hal ini akan menjadi tidak efisien karena waktu komputasi yang dibutuhkan akan jauh lebih lama. Maka, algoritma Hybrid CE-TS ini dikembangkan dengan tujuan untuk memperbaiki hasil optimal yang didapatkan tanpa menambah jumlah sampel yang dibangkitkan dengan mekanisme pengaturan sampel awal CE dari hasil terbaik algoritma Tabu Search. Algoritma Hybrid CE-TS merupakan gabungan dari algoritma Cross Entropy dan Tabu Search. Algoritma Tabu Search berperan dalam membangkitkan rute-rute terbaik dalam Tabu List yang merupakan hasil iterasi dari Tabu Search. Tabu List ini berisi rute-rute yang sudah baik yang selanjutnya akan menjadi sampel elite awal bagi algoritma Cross Entropy.

Algoritma Hybrid Cross Entropy-Tabu Search untuk penyelesaian Travelling Repairman Peoblem secara umum akan dijelaskan sebagai berikut. 1. Pengumpulan Data

Data yang dibutuhkan untuk pengujian algoritma adalah data koordinat kota yang dalam penelitian ini digunakan 3 problem dengan ukuran yang berbeda, yaitu Eil51 (51 kota), KroA100 (100 kota) dan KroA150 (150 kota).

2. Penentuan Parameter Pada tahap ini dilakukan penetapan parameter dari algoritma Cross Entropy-Tabu Search, diantaranya adalah update smoothing parameter (α), proporsi sample elite (ρ), dan jumlah populasi tiap iterasi (N), TabuListMemberCount (jumlah rute yang dibangkitkan Tabu Search dan disimpan dalam Tabu List), dan itmax_tabu (iterasi maksimum Tabu Seacrh).

Page 5: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

5

3. Pembangkitan kandidat solusi Tabu Search menggunakan pertukaran tetangga (neighbourhood selection) Pada awal akan dilakukan pembangkitan 1 rute secara random, lalu matriks akan di-copy sebanyak n jumlah kota untuk kemudian dilakukan pertukaran tetangga sehingga akan muncul n kemungkinan solusi.

4. Pemilihan solusi terbaik dari kandidat solusi Kandidat solusi yang dibangkitkan akan dievaluasi fitness satu per satu dan akan diurutkan dari yang terkecil hingga terbesar. Rute terbaik akan dievaluasi apakah bisa masuk dalam Tabu List atau tidak.

5. Update Tabu List Rute terbaik dari langkah 4 akan dilakukan evaluasi apakah lebih baik daripada rute yang sudah ada dalam Tabu List atau tidak. Jika rute yang dibangkitkan lebih baik daripada rute yang ada dalam Tabu List, maka rute akan dimasukkan dalam Tabu List menggantikan rute yang lebih buruk dalam Tabu List. Rute terbaik tersebut akan digunakan untuk pembangkitan kandidat solusi pada iterasi berikutnya. Namun, jika rute yang dibangkitkan tidak lebih baik daripada rute yang ada dalam Tabu List, maka solusi tidak akan dimasukkan dalam Tabu List dan akan dilakukan pembangkitan rute secara random untuk pertukaran tetangga pada iterasi berikutnya.

6. Pengecekan kriteria pemberhentian Tabu Search Kriteria pemberhentian Tabu Search adalah maksimum iterasi yang ditetapkan pada langkah 2. Jika kriteria pemberhentian tercapai, maka rute dalam Tabu List akan menjadi inputan bagi algoritma Cross Entropy. Jika kriteria pemberhentian belum tercapai, maka kembali ke langkah 3 dan iterasi akan dilanjutkan hingga maksimum iterasi tercapai.

7. Penginputan rute dalam Tabu List sebagai sampel elite awal algoritma CE Tahap ini merupakan transisi antara algoritma Tabu Search dan Cross Entropy dimana hasil dari Tabu Search akan menjadi inputan bagi algoritma Cross Entropy. Tabu List berisi rute-rute terbaik hasil iterasi Tabu Search yang selanjutnya akan menjadi sampel elite awal untuk pembangkitan matriks transisi P. Matriks transisi P pada awal iterasi sudah mengandung probabilitas

sampel-sampel yang sudah bagus dari hasil Tabu Search sehingga langkah algoritma Cross Entropy akan lebih terarah.

8. Pembangkitan N rute sebagai kandidat solusi awal Pada tahap ini algoritma Cross Entropy mulai berjalan dimulai dengan membangkitkan rute sebanyak N berdasarkan matriks transisi yang sudah di-update dengan hasil dari Tabu Search.

9. Penghitungan fungsi tujuan Fungsi tujuan yang dihitung adalah total waktu tunggu customer untuk mengevaluasi fitness dari masing-masing rute yang dibangkitkan.

10. Pengurutan rute terbaik Rute yang telah dihitung fitness-nya akan diurutkan dari fitness terkecil hingga terbesar untuk mengetahui mana sampel elite yang menghasilkan kandidat solusi terbaik yang selanjutnya akan diurutkan.

11. Pemilihan sampel elite Pada tahap ini dilakukan pemilihan sampel elite sesuai parameter jumlah sampel elite ρ x n.

12. Update matriks transisi Update matriks transisi dilakukan untuk mendapatkan matriks transisi untuk generate solusi pada iterasi selanjutnya.

13. Pengecekan stopping criteria Stopping Criteria ditentukan untuk memutuskan apakah iterasi dilanjutkan atau tidak. Biasanya stopping criteria yang diberlakukan adalah maksimum iterasi. Bila stopping criteria belum tercapai, maka kembali ke langkah 4, namun bila stopping criteria tercapai, iterasi dihentikan dan dimunculkan solusi terbaik.

Untuk mengetahui lebih detail jalannya

algoritma Hybrid Cross Entropy-Tabu Search yang telah dikembangkan, maka akan diberikan penjelasan lebih detail langkah-langkah algoritma sebagai berikut.

Langkah 1 Inisialisasi Pada tahapan ini akan ditentukan parameter untuk metoda Hybrid CE-TS berupa N (jumlah sampel), 𝜌 (proporsi sampel elite), α (parameter smoothing), A (koordinat node), TabuListMemberCount (jumlah rute yang dibangkitkan Tabu Search dan disimpan dalam Tabu List), dan itmax_tabu (iterasi maksimum Tabu Seacrh). Pada contoh numerik ini

Page 6: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

6

digunakan parameter yaitu N = 10, 𝜌 = 0,3, α = 0,6, TabuListMemberCount = 3, dan itmax_tabu = 1000. Algoritma Tabu Search : Langkah 2 Pembangkitan kandidat solusi Tabu Search Pada tahapan ini akan dilakukan pembangkitan rute dari algoritma Tabu Search dengan melakukan pertukaran tetangga (neighbourhood selection). Langkah 3 Pemilihan solusi terbaik dari kandidat solusi Pada tahapan ini semua kandidat solusi yang dibangkitkan akan diitung fitness yaitu waktu tunggu customer untuk masing-masing rute. Kemudian akan diambil solusi terbaik dari kandidat solusi. Langkah 4 Update Tabu List Tabu List berisi rute-rute terbaik yang pernah dibangkitkan oleh Tabu Search. Solusi terbaik pada langkah 3 akan dimasukkan pada Tabu List. Untuk iterasi berikutnya, solusi baru yang lebih baik daripada solusi yang ada dalam Tabu List yang akan dimasukkan ke dalam Tabu List. Langkah 5 Pengecekan kriteria pemberhentian Tabu Search Kriteria pemberhentian Tabu Search adalah maksimum iterasi yang telah ditetapkan pada langkah 1 (inisialisasi). Jika iterasi maksimum Tabu Search telah tercapai, maka solusi terbaik Tabu Search akan menjadi sampel elite awal algoritma Cross Entropy. Jika iterasi maksimu Tabu Search belum tercapai, maka akan mengulangi langkah 2. Algoritma Cross Entropy Langkah 6 Pembangkitan matriks transisi Pembangkitan matriks transisi pada algoritma CE-TS ini berbeda dengan pembangkitan matriks transisi pada algoritma CE murni. Pada algoritma CE murni, matriks transisi awal untuk pembangkitan rute pada iterasi 1 akan dibangkitkan dengan memberi probabilitas yang sama untuk setiap Pij

Tabel 1 Rute-rute dalam Tabu List

, yaitu sebesar 1𝑛−1

. Pada metoda hybrid CE-TS, matriks transisi yang dibangkitkan pada iterasi 1 sudah merupakan matriks transisi hasil update dari rute yang ada dalam Tabu List. Rute terbaik Tabu Search dalam Tabu List ini diberi proporsi yang lebih besar, yaitu sebesar α sehingga akan mempengaruhi matriks transisi yang

dibangkitkan. Pada contoh numerik diperoleh Tabu List sebagai berikut.

No Tabu List Rute 1 1-4-5-3-2 2 1-4-5-2-3 3 1-3-5-2-4

Rute-rute dalam Tabu List akan dihitung peluang empirisnya. Peluang empiris sampel elite akan digunakan untuk meng-update matriks transisi awal. Matriks transisi yang telah di-update inilah yang akan digunakan untuk pembangkitan sampel rute CE pada iterasi 1. Berikut adalah peluang matriks transisi hasil update Tabu List pada contoh numerik.

𝑃 =

⎣⎢⎢⎢⎡

0 0,1 0,30,3 0 0,30,3 0,3 0

0,5 0,10,3 0,10,1 0,3

0,3 0,1 0,10,1 0,5 0,3 0 0,5

0,1 0 ⎦⎥⎥⎥⎤

Langkah 7 Pembangkitan rute sesuai dengan matriks transisi Pembangkitan rute dilakukan dengan roulette wheel selection dengan menggunakan matriks transisi yang telah di-update pada langkah 6. Berikut akan diberikan contoh pembangkitan rute dengan sesuai matriks transisi yang dibangkitkan menggunakan mekanisme roulette wheel selection. Step 1

𝑃 =

⎣⎢⎢⎢⎡

0 0,1 0,30,3 0 0,30,3 0,3 0

0,5 0,10,3 0,10,1 0,3

0,3 0,1 0,10,1 0,5 0,3

0 0,50,1 0 ⎦

⎥⎥⎥⎤

Kota 1 dipilih sebagai kota awal, kolom 1 akan dijadikan bernilai 0

Selanjutnya dilakukan normalisasi agar peluang tiap baris berjumlah 1

𝑃 =

⎣⎢⎢⎢⎡0 0,10 0,300 0 0,430 0,43 0

0,50 0,100,43 0,140,14 0,43

0 0,14 0,140 0,57 0,33 0 0,72

0,11 0 ⎦⎥⎥⎥⎤

Step 2 Bangkitkan bilangan random, misalkan

rand = 0,63 Nilai 0,63 terletak pada kumulatif antara 0,4

dan 0,9 sehingga terletak antara kolom 3 dan 4. Maka pilih customer 4 untuk dikunjungi setelah kota 1.

Page 7: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

7

kolom 4 akan dijadikan bernilai 0, selanjutnya dilakukan normalisasi agar peluang tiap baris berjumlah 1

𝑃 =

⎣⎢⎢⎢⎡0 0,20 0,600 0 0,750 0,50 0

0 0,200 0,250 0,50

0 0,14 0,140 0,62 0,38

0 0,720 0 ⎦

⎥⎥⎥⎤

Langkah-langkah di atas dilakukan hingga terbentuk suatu rute. Roulette Wheel Selection diulangi hingga terbentuk N sampel rute di tiap iterasi.

Dari langkah manual di atas bisa kita lihat bahwa matriks transisi berdimensi n x n dimana n adalah jumlah kota sehingga menjamin bahwa semua kota akan dikunjungi. Customer yang sudah terpilih peluangnya akan dijadikan 0 (tidak akan terpilih lagi) sehingga menjamin bahwa customer akan dikunjungi tepat sekali. Berikut ini adalah rute yang dibangkitkan pada iterasi 1.

Tabel 2 Rute yang dibangkitkan algoritma CE-TS pada iterasi 1

No Rute Rute No

Rute Rute

1 1-4-3-5-2 6 1-3-5-2-4 2 1-5-3-2-4 7 1-4-3-5-2 3 1-4-2-5-3 8 1-4-3-5-2 4 1-2-4-5-3 9 1-4-2-3-5 5 1-3-5-2-4 10 1-3-2-5-4

Langkah 8 Penghitungan fitness Rute yang dibangkitkan pada langkah 7 akan dihitung fitness-nya. Dalam algoritma Hybrid CE-TS, fungsi tujuan dari rute yang dibangkitkan dihitung melalui fungsi sebagai berikut. for i=1:n-1,

s=s+(n-1)*D(x(i),x(i+1))-(i-1)*D(x(i),x(i+1));

end

s=s;

bila dilakukan perhitungan manual terhadap rute nomor 1 : 𝑠 = 0 + �(5 − 1) ∗ 𝐷14 − (1 − 1) ∗ 𝐷14� + �(5 − 1) ∗ 𝐷43 − (1 − 1) ∗ 𝐷43� + �(5 − 1) ∗ 𝐷35 − (1 − 1) ∗ 𝐷35� + �(5 − 1) ∗ 𝐷52 − (1 − 1) ∗ 𝐷52�

𝒔 = 𝟎 + 𝟒𝑫𝟏𝟒 + 𝟑𝑫𝟒𝟑 + 𝟐𝑫𝟑𝟓 + 𝑫𝟓𝟐

Berikut ini adalah hasil perhitungan fitness untuk tiap-tiap rute yang dibangkitkan pada iterasi 1.

Tabel 3 Penghitungan Fitness tiap rute pada algoritma CE-TS

No Rute Fitness No

Rute Fitness

1 84.2208 6 133.7594 2 160.7259 7 84.2208 3 144.4736 8 84.2208 4 236.7906 9 150.3867 5 133.7594 10 164.2112

Langkah 9 Pengambilan sampel elite Hasil perhitungan fitness pada langkah 8 akan diurutkan dari yang terkecil hingga terbesar dengan nomor rute sebagai indeks yang melekat pada tiap rute. Berikut ini adalah hasil pengurutan fitness pada iterasi 1.

Tabel 4 Pengurutan sampel elite CE-TS pada iterasi 1

No Rute Fitness No

Rute Fitness

1 84.2208 3 144.4736 7 84.2208 9 150.3867 8 84.2208 2 160.7259 5 133.7594 10 164.2112 6 133.7594 4 236.7906

Setelah diurutkan, akan diambil sampel elite sebanyak 3 sesuai dengan 𝜌 yang telah ditentukan pada tahap inisialisasi. Berikut adalah sampel elite yang diambil pada iterasi 1.

Tabel 5 Sampel elite yang diambil algoritma CE-TS pada iterasi 1

No Rute Rute Fitness 1 1-4-3-5-2 84.2208 2 1-4-3-5-2 84.2208 3 1-4-3-5-2 84.2208

Langkah 10 Update parameter Setelah tahap pengambilan sampel elite, selanjutnya dilakukan update parameter berdasarkan sampel elite yang telah diambil. Peluang empiris dari sampel elite dihitung dengan rumus sebagai berikut.

𝑤𝑖𝑗 =𝑛𝑖𝑗𝜌𝑥𝑁

dimana wij adalah peluang empiris matriks transisi kota i ke kota j, nij adalah berapa kali

Page 8: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

8

kota j dikunjungi setelah kota i dari seluruh sampel elite yang diambil, dan ρ x N adalah jumlah sampel elite yang diambil. Rute yang menjadi sampel elite disajikan pada tabel 4.5. Contoh untuk rute 1-4 yang berarti kota 4 dikunjungi tepat setelah kota 1 dikunjungi. Rute ini muncul dua kali dari seluruh sampel elite, yaitu pada nomor rute 1 dan 6. Maka, peluang empiris untuk matriks transisi 𝑤𝑖𝑗 adalah 2/3. Berikut adalah peluang empiris dari keseluruhan sampel elite.

𝑤𝑖𝑗 =

⎣⎢⎢⎢⎡0 0 01 0 00 0 0

1 00 00 1

0 0 10 1 0 0 0

0 0⎦⎥⎥⎥⎤

Setelah didapatkan nilai 𝑤𝑖𝑗, selanjutnya dilakukan update parameter. Parameter yang di-update adalah parameter berupa matriks transisi yang akan digunakan untuk iterasi berikutnya. Update matriks transisi dilakukan dengan rumus sebagai berikut.

𝑃𝑖𝑗 = 𝛼 ∗ 𝑤 + (1 − 𝛼) ∗ 𝑃𝑜𝑙𝑑 Dimana, Pij adalah matriks transisi baru yang telah di-update, 𝛼 adalah parameter smoothing, 𝑤 adalah peluang empiris sampel elite, dan Pold

Langkah 11 Pengecekan kriteria pemberhentian

adalah matriks transisi sebelumnya. Berikut adalah hasil update parameter pada iterasi 1 dengan bobot matriks transisi lama 0,4 dan peluang empiris sampel elite 0,6.

𝑃 =

⎣⎢⎢⎢⎡

0 0,04 0,120,72 0 0,120,12 0,12 0

0,8 0,04

0,12 0,040,04 0,72

0,12 0,04 0,640,04 0,8 0,12 0 0,20

0,04 0 ⎦⎥⎥⎥⎤

Pada tahapan ini akan dilakukan pengecekan terhadap kriteria pemberhentian. Bila kriteria pemberhentian tercapai, maka iterasi dihentikan dan MATLAB akan menunjukkan hasil terbaik dari algoritma CE-TS. Bila kriteria pemberhentian belum terpenuhi, maka iterasi dilanjutkan dengan mengulangi langkah 7 (tahap pembangkitan rute dengan CE) menggunakan parameter matriks transisi yang telah di-update. Kriteria pemberhentian pada contoh numerik ini adalah ketika selisih maksimal dari matriks transisi sesudah dan sebelum di-update kurang dari 0,001. Langkah 12 Setelah dilakukan iterasi algoritma CE dari langkah 7 sampai langkah 11 hingga kriteria

pemberhentian tercapai, maka akan didapatkan solusi terbaik dari algoritma CE-TS untuk TRP.

4. Hasil Eksperimen Eksperimen dilakukan dengan menggunakan 3 jenis set data, yaitu Eil51 (51 kota), KroA100 (100 kota), dan KroA150 (150 kota) yang didapatkan dari TSPLIB 95. Eksperimen dilakukan dengan jumlah replikasi lebih dari 1 untuk mengetahui performansi algoritma secara lebih akurat. Parameter yang digunakan untuk algoritma Cross Entropy adalah α (smoothing parameter), ρ (proporsi sampel elite), dan N (jumlah sampel). Untuk algoritma Hybrid Cross Entropy-Tabu Search, terdapat beberapa parameter tambahan yang merupakan parameter untuk algoritma Tabu Search di antaranya jumlah rute yang disimpan dalan Tabu List dan iterasi maksimum Tabu Search. Output yang dibandingkan antara algoritma CE dan algoritma CE-TS adalah total waktu tunggu customer (latency), waktu komputasi, dan iterasi yang dibutuhkan untuk mencapai optimal. Selain itu, pembandingan hasil juga dilakukan antara algoritma yang dikembangkan dengan hasil dari algoritma Approximation Algorithm dari jurnal yang dibandingkan. Output yang dibandingkan dengan jurnal pembanding adalah total waktu tunggu customer.

4.1 Eksperimen dengan Set Data Eil51 (51kota)

Eksperimen akan dilakukan dengan software MATLAB sesuai algoritma yang telah dikembangkan. Parameter yang digunakan untuk algoritma CE adalah α = 0.6, ρ = 0.01, dan N = 10000. Sedangkan untuk algoritma CE-TS parameter yang digunakan adalah α = 0.6, ρ = 0.01, N = 10000, Tabu List = 10, dan iterasi maksimum Tabu Search = 300000. Kriteria pemberhentian yang digunakan baik untuk algoritma CE maupun CE-TS adalah ketika nilai maksimum selisih antara matriks transisi pada iterasi sekarang (P) dengan matriks transisi pada iterasi sebelumnya (Pold

Pada pengujian set data Eil51 ini juga dilakukan eksperimen terhadap algoritma Hybrid CE-TS yang telah dimodifikasi. Modifikasi dilakukan dengan menambahkan mekanisme seleksi pada tiap iterasi Cross Entropy. Seleksi dilakukan dengan menyimpan rute terbaik pada iterasi ke i-1 lalu

) tidak lebih dari toleransi yang ditentukan. Dalam hal ini, toleransi yang digunakan adalah 0.005.

Page 9: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

9

membandingkan antara rute terbaik antara iterasi ke i dan iterasi ke i-1. Jika rute pada iterasi ke i-1 lebih baik daripada rute pada iterasi ke i, maka rute terbaik pada iterasi ke i-1 akan menggantikan rute terburuk pada iterasi ke i. Berikut adalah hasil pengujian dengan metode seleksi dengan parameter CE-TS yang sama. Berikut adalah hasil uji algoritma dengan ukuran 51 kota dengan jumlah eksperimen sebanyak 5 kali. Berikut adalah hasil uji algoritma dengan ukuran 51 kota dengan jumlah eksperimen sebanyak 5 kali. Tabel 6 Perbandingan Hasil Eksperimen CE pada Set

Data Eil51 dengan AA dan Improved GA

Algoritma CE AA

Rata-rata Terbaik Waktu Tunggu 10.537 10.352 14.638

Gap 38,92% lebih baik

Tabel 7 Perbandingan Hasil Eksperimen CE-TS pada Set Data Eil51 dengan AA dan Improved GA

Algoritma CE-TS AA

Rata-rata Terbaik Waktu Tunggu 10.488,6 10.406 14.638

Gap 39,56% lebih baik

Tabel 8 Perbandingan hasil eksperimen CE-TS dengan Seleksi pada Set Data Eil51

Algoritma CE-TS dengan Seleksi AA

Rata-rata Terbaik Waktu Tunggu 10.785 10.385 14.638

Gap 35,73% lebih baik

Tabel 9 Perbandingan hasil eksperimen CE dan CE-TS pada Set Data Eil51

Algoritma

CE CE-TS CE-TS Seleksi

Rata-rata

Terbaik

Rata-rata

Terbaik

Rata-rata

Terbaik

Waktu Tunggu

10.537

10.352

10.488,6

10.406

10756

10385

Waktu Komputasi 3.655 3.31

3 4.362 4.126

4595,7

4429,3

Iterasi Optimal 37 34 37 35 41,

6 40

4.2 Eksperimen dengan Set Data KroA100 (100 kota)

Eksperimen akan dilakukan dengan software MATLAB sesuai algoritma yang telah dikembangkan. Parameter yang digunakan untuk algoritma CE adalah α = 0.6, ρ = 0.01, dan N = 10000. Sedangkan untuk algoritma CE-TS parameter yang digunakan adalah α = 0.6, ρ = 0.01, N = 10000, Tabu List = 10, dan iterasi maksimum Tabu Search = 300000. Kriteria pemberhentian yang digunakan baik untuk algoritma CE maupun CE-TS adalah ketika nilai maksimum selisih antara matriks transisi pada iterasi sekarang (P) dengan matriks transisi pada iterasi sebelumnya (Pold

Tabel 10 Perbandingan Hasil Eksperimen CE pada Set Data KroA100 dengan AA dan Improved GA

) tidak lebih dari toleransi yang ditentukan. Dalam hal ini, toleransi yang digunakan adalah 0.005. Berikut adalah hasil uji algoritma dengan ukuran 100 kota dengan jumlah eksperimen sebanyak 3 kali.

Algoritma CE AA

Rata-rata Terbaik Waktu Tunggu 1.168.967 1.123.700 1.307.340

Gap 11,84% lebih baik

Tabel 11 Perbandingan Hasil Eksperimen CE-TS pada Set Data KroA100 dengan AA dan Improved

GA

Algoritma CE-TS

AA Rata-rata Terbaik

Waktu Tunggu 1.183.367 1.173.100 1.307.340

Gap 10,48% lebih baik

Tabel 12 Perbandingan Hasil Eksperimen CE dan CE-TS pada Set Data KroA100

Algoritma CE CE-TS

Rata-rata

Terbaik

Rata-rata

Terbaik

Waktu Tunggu

1.168.967

1.123.700

1.183.367

1.173.100

Waktu Komputasi 41.008 39.581 41.720 41.208

Iterasi Optimal 93 90 91 89

Page 10: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

10

4.3 Eksperimen dengan Set Data KroA150 (150 kota)

Eksperimen akan dilakukan dengan software MATLAB sesuai algoritma yang telah dikembangkan. Parameter yang digunakan untuk algoritma CE adalah α = 0.6, ρ = 0.01, dan N = 10000. Sedangkan untuk algoritma CE-TS parameter yang digunakan adalah α = 0.6, ρ = 0.01, N = 10000, Tabu List = 5, dan iterasi maksimum Tabu Search = 300000. Kriteria pemberhentian yang digunakan baik untuk algoritma CE maupun CE-TS adalah ketika nilai maksimum selisih antara matriks transisi pada iterasi sekarang (P) dengan matriks transisi pada iterasi sebelumnya (Pold

Tabel 13 Perbandingan Hasil Eksperimen CE pada Set Data KroA150 dengan AA dan Improved GA

) tidak lebih dari toleransi yang ditentukan. Dalam hal ini, toleransi yang digunakan adalah 0.005. Berikut adalah hasil uji algoritma dengan ukuran 150 kota dengan jumlah eksperimen sebanyak 3 kali.

Algoritma CE AA

Rata-rata Terbaik Waktu Tunggu 2.391.900 2.391.900 2.494.782

Gap 4,3% lebih baik

Tabel 14 Perbandingan Hasil Eksperimen CE-TS pada Set Data KroA150 dengan AA dan Improved GA

Algoritma CE-TS AA

Rata-rata Terbaik Waktu Tunggu 2.567.267 2.481.700 2.494.782

Gap 2,9% lebih buruk

Tabel 15 Perbandingan hasil eksperimen CE dan CE-TS pada Set Data KroA150

5. Analisis Pembahasan akan dilakukan terhadap hasil eksperimen yang didapatkan untuk setiap uji coba set data yang dilakukan.

5.1 Analisis Hasil Eksperimen Set Data Eil51 Dari hasil eksperimen didapatkan hasil bahwa algoritma CE memiliki hasil rata-rata dan terbaik yang lebih baik daripada AA. Perbandingan algoritma CE-TS AA juga memberikan hasil yang sama. Hasil eksperimen algoritma CE-TS menunjukkan hasil rata-rata dan terbaik yang lebih baik daripada AA.

Perbandingan antara algoritma CE dengan CE-TS menunjukkan bahwa untuk problem 51 kota algoritma CE-TS memiliki total waktu tunggu customer rata-rata dan terbaik yang lebih baik daripada algoritma CE. Hal ini dikarenakan pada CE-TS rute awal yang dibangkitkan oleh TS dalam Tabu List sudah cukup bagus sehingga memberikan pengaruh yang cukup signifikan terhadap algoritma CE-TS karena langkah algoritma CE-TS lebih terarah. Namun, untuk waktu komputasinya CE memiliki waktu komputasi yang relatif lebih cepat karena pada CE-TS dilakukan dilakukan 2 kali pengerjaan, yaitu TS untuk pembangkitan solusi awal CE-TS yang baik dan CE untuk mendapatkan solusi optimal dari inputan inisialiasi rute dari TS.

Perbandingan antara algoritma CE-TS murni dan CE-TS dengan mekanisme seleksi menunjukkan bahwa algoritma CE-TS yang menggunakan mekanisme seleksi tidak lebih baik daripada algoritma CE dan CE-TS. Hal ini dikarenakan penyimpanan histori rute terbaik menyebabkan terjadi konvergensi yang lebih cepat sehingga rute terbaik yang lain tidak tereksplor.

5.2 Analisis Hasil Eksperimen Set Data KroA100 Perbandingan hasil total waktu tunggu customer antara CE dan CE-TS dengan algoritma AA sebagai jurnal pembanding memberikan hasil yang sama dengan hasil pada set data Eil51. Eksperimen menunjukkan bahwa algoritma CE dan CE TS mampu memberikan total waktu tunggu customer rata-rata dan terbaik yang lebih baik daripada AA.

Perbandingan antara performansi CE dan CE-TS untuk kasus 100 kota menunjukkan bahwa algoritma CE memberikan hasil total waktu tunggu customer rata-rata dan terbaik yang lebih baik daripada algoritma CE-TS. Hal ini disebabkan karena kemungkinan inisialiasi rute dari Tabu Search tidak cukup bagus untuk masuk ke dalam CE-TS sehingga didapatkan hasil yang kurang bagus. Dari segi waktu

Algoritma CE CE-TS

Rata-rata

Terbaik

Rata-rata

Terbaik

Waktu Tunggu

2.391.900

2.391.900

2.567.267

2.481.700

Waktu Komputasi

250.733,33

249.360

229.020

216.390

Iterasi Optimal 220 220 194 183

Page 11: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

11

komputasi, algoritma CE juga menghasilkan waktu komputasi yang sedikit lebih cepat. Namun, dibandingkan dengan ukuran data yang kecil, perbedaan waktu komputasi antara CE dan CE-TS untuk problem 100 kota tidak berbeda jauh walaupun dengan dengan parameter CE yang sama.

5.3. Analisis Hasil Eksperimen Set Data KroA150 Perbandingan hasil total waktu tunggu customer yang didapat pada algoritma CE menunjukkan bahwa CE mampu memberikan hasil yang lebih baik daripada AA. Sedangkan algoritma CE-TS memberikan hasil yang masih kurang baik dibandingkan dengan hasil dari algoritma AA. Dari hasil ini bisa kita lihat bahwa ternyata algoritma CE-TS tidak cukup handal untuk menyelesaikan problem dengan ukuran yang besar.

Hasil perbandingan algoritma CE dan CE-TS menunjukkan bahwa pada algoritma CE memberikan hasil yang lebih baik daripada algoritma CE-TS untuk problem berukuran 150 kota dari segi total waktu tunggu customer yang didapat, namun dari segi waktu komputasi algoritma CE-TS memiliki waktu komputasi yang lebih baik. Dari 3 replikasi, algoritma CE menunjukkan hasil yang lebih stabil daripada algoritma CE-TS karena hasil ketiga replikasi sama. Pada algoritma CE-TS, iterasi yang diperlukan lebih sedikit, namun sangat rawan terjebak pada local optimal walaupun sudah mendapatkan sampel awal yang bagus dari algoritma CE-TS. Algoritma CE-TS memiliki waktu komputasi yang lebih baik daripada CE, padahal pada CE-TS terdapat mekanisme pembangkitan sampel awal dengan Tabu Search yang membutuhkan waktu komputasi tertentu. Hal ini disebabkan karena pada algoritma CE-TS konvergensinya lebih cepat dengan adanya pembangkitan sampel awal yang lebih baik oleh Tabu Search. Namun, konvergensi yang terlalu cepat ini membuat algoritma CE-TS berpotensi terjebak pada local optimal.

5.4 Analisis Performansi Keseluruhan Pada bagian ini akan dilakukan analisis performansi algoritma setelah dilakukan eksperimen dengan 3 macam data. Pada eksperimen, digunakan jumlah sampel (N) sebesar 10000 untuk semua tipe data karena N sebanyak 10000 mampu membangkitkan sampel yang cukup banyak sehingga akan dimunculkan

kandidat solusi yang cukup banyak di setiap iterasi. Kandidat solusi yang banyak ini memungkinkan eksplorasi terhadap solusi lebih luas sehingga memungkinkan didapat hasil yang lebih baik. Jumlah sampel sebesar 10000 ini juga masih memiliki waktu komputasi yang wajar untuk menyelesaikan problem, namun tergantung ukurannya. Semakin besar ukuran problem maka akan semakin lama waktu komputasinya.

Nilai ρ yang digunakan adalah 0,01 sehingga sampel elite yang diambil dari 10000 sampel adalah sebesar 100 sampel. Sampel elite yang digunakan tidak terlalu besar dan tidak terlalu kecil karena akan mempengaruhi hasil yang didapat. Sampel elite yang terlalu kecil menyebabkan konvergensi yang terlalu cepat karena tiap update parameter probabilitas empiris sampel elite akan besar. Update parameter yang terlalu besar ini tidak baik untuk CE karena sampel yang diambil sebagai sampel elite belum tentu bagus. Nilai ρ yang tidak terlalu besar memberi keleluasaan untuk algoritma melakukan eksplorasi solusi lebih luas sehingga solusi yang lebih baik kemungkinan ditemukan.

Nilai α yang digunakan pada algoritma CE dan CE-TS adalah 0,6. Nilai α yang terlalu besar (misal 0,8 atau 0,9) akan memberikan proporsi yang lebih besar terhadap probabilitas empiris sampel elite sehingga CE akan lebih cepat mencapai konvergensi. Sampel elite yang diambil pada suatu iterasi belum tentu bagus karena pembangkitan sampel pada iterasi awal masih acak. Nilai α digunakan 0,6 akan memberikan bobot yang tidak terlalu kecil pada matriks transisi pada iterasi sebelumnya sehingga ruang eksplorasi solusi masih besar untuk mendapatkan hasil yang lebih bagus daripada iterasi sebelumnya.

Secara keseluruhan, hasil dari algoritma CE dan CE-TS telah memberikan hasil yang lebih baik dibandingkan dengan Approximation Algorithm. Namun, ternyata CE-TS tidak cukup handal dalam menyelesaikan problem berukuran besar. Hal ini disebabkan karena pada CE-TS pembangkitan sampel awal sudah diatur dengan memasukkan sampel yang sudah bagus dari hasil Tabu Search sebagai inisialisasi untuk CE, namun pada kenyataannya hasil yang didapat belum tentu bagus karena hasil yang didapat dari Tabu Search juga belum tentu baik. Untuk problem berukuran besar, algoritma Tabu

Page 12: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

12

Search tidak mampu menghasilkan hasil yang baik karena kemungkinan solusi yang semakin banyak. Pembangkitan solusi di Tabu Search ini sangat random dan tidak ada parameter khusus, hanya mengandalkan pada strategi local search sehingga untuk problem berukuran besar kemungkinan membutuhkan iterasi yang sangat banyak untuk mendapatkan solusi yang baik. Hal ini menjadi tidak efisien karena akan membutuhkan waktu lama pada iterasi Tabu Search. Jadi, bila dibandingkan dengan algoritma pembanding tersebut, posisi performansi CE dan CE-TS lebih baik dibandingkan dengan Approximation Algorithm.

6. Kesimpulan Kesimpulan yang dapat diambil dari seluruh rangkaian penelitian adalah sebagai berikut. • Algoritma Cross Entropy (CE) dan Hybrid

Cross Entropy-Tabu Search (CE-TS) berhasil dikembangkan untuk penyelesaian Travelling Repairman Problem (TRP).

• Algoritma Hybrid Cross Entropy-Tabu Search menghasilkan total waktu tunggu customer yang lebih baik daripada Cross Entropy pada problem berukuran kecil, namun pada problem berukuran besar algoritma Cross Entropy mampu menghasilkan total waktu tunggu customer lebih baik.

• Algoritma Cross Entropy dan Hybrid Cross Entropy-Tabu Search menghasilkan performansi yang secara keseluruhan lebih baik daripada algoritma Approximation Algorithm.

• Kekurangan algoritma Cross Entropy dan Hybrid Cross Entropy-Tabu Search adalah waktu komputasinya yang sangat lama karena harus membangkitkan sejumlah N-rute di setiap iterasi.

• Performansi algoritma Cross Entropy dan Hybrid Cross Entropy-Tabu Search sangat bergantung pada jumlah sampel yang dibangkitkan, namun semakin besar jumlah sampel yang dibangkitkan waktu komputasinya akan semakin lama.

7. Saran Saran yang dapat diberikan untuk perkembangan penelitian selanjutnya adalah penelitian selanjutnya bisa dikembangkan untuk varian Travelling Repairman Problem lain, seperti seperti TRP with repairtimes, TRP with profits, TRP with deadline, dan sebagainya.

8. Referensi Archer, A., Levin, A. & Williamson, D. P.

2008. A faster, better approximation algorithm for the minimum latency problem. SIAM Journal on Computing, 37, 1472-1498.

Archer, A. & Williamson, D. P. 2003. Faster approximation algorithms for the minimum latency problem. Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms. Baltimore, Maryland: Society for Industrial and Applied Mathematics.

Bang, B. H. & Nghia, N. D. 2010. Improved genetic algorithm for minimum latency problem. Proceedings of the 2010 Symposium on Information and Communication Technology. Hanoi, Viet nam: ACM.

Dewilde, T., Cattrysse, D., Coene, S. & CR, F. Year. Heuristics for the Traveling Repairman Problem with Profits. In., 34.

Ezzine, I., Semet, F. & Chabchoub, H. Year. NEW FORMULATIONS FOR THE TRAVELING REPAIRMAN PROBLEM. In, 2010. Citeseer.

Glover, F. & Laguna, M. 1998. Tabu search, Kluwer Academic Pub.

Langevin, A., Riopel, Diane 2005. Logistics Systems : Design and Optimization. Springer-Verlag Berlin Heidelberg.

Lechmann, M. 2009. The traveling repairman problem.

Pirim, H., Bayraktar, E. & Eksioglu, B. 2008. Tabu Search: A Comparative Study. IN-TECH.

Rocha, A., Fernandes, E. & Soares, J. Year. Solving the Traveling Repairman problem with differentiated waiting times through Lagrangian relaxation. In.: Citeseer, 972-99841.

Rocha, M. & Neves, J. 2004. Preventing premature convergence to local optima in genetic algorithms via random offspring generation. Multiple Approaches to Intelligent Systems, 127-136.

Rubinstein, R., & Kroese., D. 2004. The cross-entropy method: A unified approach to combinatorial optimization, Monte-Carlo simulation, and machine-learning. Springer-Verlag Berlin Heidelberg.

Page 13: PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY -TABU …digilib.its.ac.id/public/ITS-Undergraduate-16748-Paper-pdf.pdf · Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember

13

Salehipour, A., Sorensen, K., Goos, P. & Braysy, O. 2008. An efficient GRASP+ VND metaheuristic for the traveling repairman problem. Working Papers.

Santosa, B. & Willy, P. 2011. Metoda Metaheuristik : Konsep dan Implementasi, Surabaya, Guna Widya.

Shi, X. H., Liang, Y. C., Lee, H. P., Lu, C. & Wang, Q. X. 2007. Particle swarm optimization-based algorithms for TSP and generalized TSP. Information Processing Letters, 103, 169-176.

Wu, B., Huang, Z. & Zhan, F. 2004. Exact algorithms for the minimum latency problem. Information Processing Letters, 92, 303-309.

Wu, B. Y. 2000. Polynomial time algorithms for some minimum latency problems. Information Processing Letters, 75, 225-229.