hybrid cross entropy- tabu search untuk … · logo tinjauan pustaka 1 travelling salesman problem...
TRANSCRIPT
PENGEMBANGAN ALGORITMA HYBRID CROSS ENTROPY-
TABU SEARCH UNTUK
LOGO
TABU SEARCH UNTUK PENYELESAIAN TRAVELLING
REPAIRMAN PROBLEM
Pembimbing :Ir. Budi Santosa, M.S., Ph.DNIP. 196905121994021001
Peneliti :Muchammad Aminuddin
NRP. 2507100041
LOGO ContentsContents
PENDAHULUAN1
TINJAUAN PUSTAKA22
METODOLOGI PENELITIAN3
5
EKSPERIMEN DAN ANALISIS4
KESIMPULAN DAN SARAN
LOGO PENDAHULUANPENDAHULUAN
LATAR BELAKANG1
PERUMUSAN MASALAH22
TUJUAN PENELITIAN3
5
BATASAN PENELITIAN4
MANFAAT PENELITIAN
LOGO Latar Belakang (1)Latar Belakang (1)
TSP (Travelling Salesman Problem)
NPNP--Hard ProblemHard Problem
TRP
TSP
Pengembangan
(Travelling Salesman Problem)
(Travelling Repairman Problem)
LOGO Latar Belakang (2)Latar Belakang (2)
Dynamic Polynomial Time GRASP + VNDDynamic Programming
Polynomial TimeAlgorithms
Branch and Bound
Lagrangian Relax-ation
GRASP + VND
Improved Genetic Algorithm
Hybrid Cross Entropy-Tabu Search
Approximation Algorithm
LOGO Latar Belakang (3)Latar Belakang (3)
Traveling Repairman
Problem
Penentuan rute petugas bengkel untukmelayani order dari customer di lokasi
yang berbeda
Penentuan rute tim penyelamat bencana untuk mengunjungi beberapa
pos penyelamatan korban
Pengembangan model algoritma Hybrid Cross Entropy-Tabu Search untuk menyelesaikan permasalahan Travelling Repairman Problem
sehingga bisa digunakan untuk menyelesaikan kasus serupa dengan dimensi yang berbeda-beda
LOGO Perumusan MasalahPerumusan Masalah
Bagaimana penggabungan algoritma Cross Entropy dan Tabu Search untuk menyelesaikan Entropy dan Tabu Search untuk menyelesaikan permasalahan Travelling Repairman Problemagar didapatkan rute yang lebih baik dengan total waktu tunggu customer yang minimum
LOGO Tujuan PenelitianTujuan Penelitian
Mendapatkan
CE-TS for TRP
Membandingkan performansi algoritma Mendapatkan
algoritma Hybrid Cross Entropy-Tabu Search untuk kasus Travelling Repairman Problem
performansi algoritma Hybrid Cross Entropy-Tabu Search untuk penyelesaian Travelling Repairman Problemdengan algoritmalain
Menghasilkan kode MATLAB untuk implementasi permasalahan Travelling Repairman Problem dalam kasus yang berbeda
LOGO Ruang Lingkup PenelitianRuang Lingkup Penelitian
Penelitian ini menggunakan data sekunder yang didapatkan dari TSPLIB95
Komputasi model dilakukan dengan software Matlab, dengan jenis spesifikasi komputer yang telah dengan jenis spesifikasi komputer yang telah ditentukan sebelumnya
Jarak antar node menggunakan euclidean distance (sesuai dengan data penelitian jurnal pembanding)
Waktu tunggu customer pada suatu rute yang terbentuk didekati dengan jarak posisi customer dalam rute dihitung dari kota awal repairman
LOGO Manfaat PenelitianManfaat Penelitian
Adanya pendekatan baru yang merupakan pengembangan dari algoritma Hybrid Cross pengembangan dari algoritma Hybrid Cross Entropy-Tabu Search dalam menyelesaikan
Travelling Repairman Problem pada berbagai kasus
LOGO TINJAUAN PUSTAKATINJAUAN PUSTAKA
TRAVELLING SALESMAN PROBLEM1
TRAVELLING REPAIRMAN PROBLEM2
CROSS ENTROPY (CE)3
5
CROSS ENTROPY UNTUK TSP4
TABU SEARCH
CRITICAL REVIEW6
LOGO Perbedaan TSP dan TRPPerbedaan TSP dan TRP
TSPMinimasi total jarak tempuh
salesman
TRPMinimasi total waktu tunggu
customersalesman
Fokus pada minimasi
traveling cost
customer
Fokus pada costumer
satisfaction
Hal kritis pada TRP ini adalah sedikit perubahan pada struktur rute TRP akan menyebabkan perubahan signifikan pada TRP sehingga sangat rawan terjebak pada local optimal.
LOGO Formulasi TSPFormulasi TSPFormulasi matematis TSP (Langevin, 2005) :
Subject to
Keterangan :
(1)
Keterangan :xij = 1 jika rute dari kota i ke kota j dilalui 0 jika tidakcij = jarak atau biaya (cost) dari kota i ke kota jS = jumlah kota
(2)
(3)
(4)
LOGO Formulasi TRPFormulasi TRP
Keterangan :Xij = 1 jika repairman melalui ruas (i,j)
0 jika tidakYij = µi jika Xij = 1
0 jika tidak
i menunjukkan posisi node dalam tour
Formulasi matematis TRP (Ezzine et al., 2010) :
Subject to
(1)
(2)
(3)
(4)
(5)
(6)(7)
(8)(9)(10)
(11)
LOGO Cross EntropyCross Entropy
Algoritma umumCross Entropy
Update Parameter dari sampel elite untuk membangkitkan
sampel random yang lebih baik pada Iterasi selanjutnya
Pembangkitan sampel Random dengan
mekanisme tertentu
LOGO Algoritma CE for TSPAlgoritma CE for TSP
23
Pembangkitan Pengambilan
1
4
5
Generate matriks transisi-Node Transition-Node Placement
Pembangkitan kandidat solusi rute berdasarkan matriks transisi
Pengambilan sampel elite sesuai parameter rho*N
Update Parameter
LOGO Tabu SearchTabu Search
Tabu Search dikembangkan oleh Fred Glover 1988 merupakan metaheuristik yang berdasarkan prosedur local search untuk menjelajahi kemungkinan solusi di luar local optimal.Keunggulan : penggunaan adaptive memory, yaitu struktur memori yang fleksibel yang disebut Tabu List.
Algoritma Tabu SearchAlgoritma Tabu SearchBEGIN
T = [ ];s = solusi awal;s* = sREPEAT
Temukan yang terbaik yang diterima s` ϵ N(s);IF f(s`) < f(s*) THEN s* = s;s = s`;Update Tabu List;
UNTIL kriteria pemberhentian:STOP
LOGO Critical ReviewCritical Review• Metoda ini menggunakan pendekatan dynamic
programming, hasil lebih baik dari penelitian sebelumnya
Polynomial time algorithms(Wu, B. Y, 2000)
• Metoda yang digunakan adalah dynamic programming dan branch and bound, keduanya meningkatkan performansi signifikan
Exact Algorithm(Wu, B., Z. Huang, 2004)
Lagrangian Relaxation
wajar
• Metoda metaheuristik pertama untuk TRP, mampumenyelesaikan TRP dengan waktu komputasi yangwajar
• Perbaikan dari Approximation Algorithm padatahun 2003, best result known pada tahun 2007.
• Solusi memiliki rata-rata rasio yang lebih baik daripenelitian sebelumnya, tetapi hasil belum cukupoptimal untuk aplikasi praktis
• Metoda masih terbatas pada permasalahan dengan ukuran yang kecil
Lagrangian Relaxation(Rocha, A., E. Fernandes,
2005)
Approximation Algorithm(Archer, A., Levin, A., and D.P.
Williamson, 2007)
GRASP+ VND(Salehipour, A., K. Sörensen,
2008)
Improved Genetic Algorithm(Bang, B. H. and N. D. Nghia,
2010)
LOGO Algoritma Cross Entropy (1)Algoritma Cross Entropy (1)START
Pengumpulan Data
Penentuan Parameter
Generate Matriks Transisi P
A
LOGO Algoritma Cross Entropy (2)Algoritma Cross Entropy (2)A
Pembangkitan n-Rute sebagai
kandidat solusi
Penghitungan fitness untuk
masing-masing rute
Pemilihan sampel elite sesuai
parameter ρ x N
B C
LOGO Algoritma Cross Entropy (3)Algoritma Cross Entropy (3)B
Update matriks transisi dengan
acuan sampel elite
Apakah
C
Apakah stopping criteria
terpenuhi?
Pemunculan solusi optimal CE
STOP
LOGOHybrid Cross Entropy-Tabu Search (1)Hybrid Cross Entropy-Tabu Search (1)
START
Pengumpulan Data
Penentuan ParameterParameter
Pembangkitan Kandidat solusi Tabu Search
(menggunakan neighborhood selection)
Pemilihan solusi terbaik dari kandidat
solusi
A
Algoritma Tabu Search
B
LOGOHybrid Cross Entropy-Tabu Search (2)Hybrid Cross Entropy-Tabu Search (2)
A
Update Tabu List
Apakah maksimum
B
maksimum iterasi Tabu
Searchtercapai?
Penginputan rute-rute dalam Tabu List sebagai
sampel awal CE
C
Algoritma Cross Entropy
LOGOHybrid Cross Entropy-Tabu Search (3)Hybrid Cross Entropy-Tabu Search (3)
C
Pembangkitan matriks transisi P berdasarkan pembobotan peluang
empiris rute dalam Tabu List
Penghitungan fitness untuk
masing-masing rute
Pembangkitan N-rute sebagai
kandidat solusi awal
D
Pemilihan sampel elite sesuai
parameter ρ x N
E
LOGOHybrid Cross Entropy-Tabu Search (4)Hybrid Cross Entropy-Tabu Search (4)
D
Apakah
Update matriks transisi dengan
acuan sampel elite
E
Apakah stopping criteria
terpenuhi?
STOP
LOGO Neighborhood SelectionNeighborhood Selection- Rute dibangkitkan secara random
misal : 1-3-5-4-2-1- Copy rute sebanyak n (banyaknya kota)
1-3-5-4-2-11-3-5-4-2-11-3-5-4-2-11-3-5-4-2-11-3-5-4-2-11-3-5-4-2-1
- Lakukan pertukaran tetangga tiap rute yang telah di-copy
1 - 5 - 3 - 4 - 2 - 1
1 - 3 - 4 - 5 - 2 - 1
1 - 3 - 5 - 2 - 4 - 1
1 - 3 - 5 - 4 - 2 - 1
1 - 3 - 5 - 4 - 2 - 1
1 - 3 - 5 - 4 - 2 - 1
Hitung fitness masing-masing
LOGO Tabu ListTabu List
Berisi rute-rute terbaik hasil iterasi Tabu Search. Tabu List adalah short term memory dalam Tabu Serach yang mencegah solusi yang sudah pernah muncul dan tidak terpilih (tabu) muncul kembali.
Aturan update Tabu List :Aturan update Tabu List :- Jika rute yang dibangkitkan melalui neighborhood selection lebih baik daripada rute yang ada dalam Tabu List saat ini, maka rute akan masuk dalam Tabu List dan rute tersebut digunakan untuk neighborhood selection selanjutnya- Jika rute yang dibangkitkan melalui neighborhood selection tidak lebih baik daripada rute yang ada dalam Tabu List, maka tidak ada update Tabu List dan dibangkitkan rute secara random untuk neighborhood selection selanjutnya
LOGO Pembangkitan matriks transisi dalam Hybrid CE-TS
Pembangkitan matriks transisi dalam Hybrid CE-TS
No Tabu List Rute1 1-4-5-3-22 1-4-5-2-33 1-3-5-2-4
Rute dalam Tabu List pada contoh numerik
P = α * Wij + (1-α) * Pold
0 0 0,33 0,67 00,33 0 0,33 0,33 00,33 0,33 0 0 0,330,33 0 0 0 0,670 0,67 0,33 0 0
+
0 0,25 0,25 0,25 0,250,25 0 0,25 0,25 0,250,25 0,25 0 0,25 0,250,25 0,25 0,25 0 0,250,25 0,25 0,25 0,25 0
P = α * Wij + (1-α) * Pold
P = α * (1-α) *
P =
0 0,1 0,3 0,5 0,10,3 0 0,3 0,3 0,10,3 0,2 0 0,1 0,30,3 0,1 0,1 0 0,50,1 0,5 0,3 0,1 0
Pada CE, matriks transisi awal adalah matriks di atas yang didapatkan dengan memberikan bobot yang sama untuk setia Pij, yaitu 1/(n-1)
LOGO Pembangkitan Rute dengan Matriks Transisi menggunakan Roulette Wheel Selection
Pembangkitan Rute dengan Matriks Transisi menggunakan Roulette Wheel Selection
P =
Kota pertama langsung dipilih kota 1 sebagai kota awal jadikan 0 untuk kolom 1,
00,30,30,30,1
0,100,20,10,5
0,30,300,10,3
0,50,30,100,1
0,10,10,30,50
Roulette Wheel Selection dilakukan hingga terbentuk sebanyak N-rute
Kota pertama langsung dipilih kota 1 sebagai kota awal jadikan 0 untuk kolom 1, dan lakukan normalisasi
Kota kedua (lihat baris 1):Rand = 0,43 berada antara kota 3 dan 4 sehingga dipilih kota 4Lalu, jadikan 0 untuk kolom 4, lalu lakukan normalisasi
Kota ketiga (lihat baris empat):Rand = 0,55 berada antara kota 4 dan 5 sehingga dipilih kota 5Lalu, jadikan 0 untuk kolom 5, lalu lakukan normalisasi
LOGO ValidasiValidasiKota ke-
Koordinatx y
1 15 372 22 53 13 224 17 29
Koordinat kota untuk Validasi
Valid
Metoda Rute Total Wait Time
Waktu Komputasi
Enumerasi 1-4-3-5-2-1 84.2208 -Cross Entropy(CE)
1-4-3-5-2-1 84.2208 0.0468
Hybrid CrossEntropy-TabuSearch (CE-TS)
1-4-3-5-2-1 84.2208 0.390003
4 17 295 11 17
Perbandingan hasil antara Enumerasi, CE-dan CE-TS
LOGO Eksperimen dengan Set Data Eil51 (51 kota)
Eksperimen dengan Set Data Eil51 (51 kota)
AlgoritmaCE AA
Rata-rata TerbaikWaktu Tunggu 10.537 10.352 14.638
Gap 38,92% lebih baik
AlgoritmaCE-TS AA
Rata-rata TerbaikWaktu Tunggu 10.488,6 10.406 14.638
Gap 39,56% lebih baik
AlgoritmaCE-TS dengan Seleksi AA
Rata-rata Terbaik
Keterangan :CE Cross EntropyCE-TS Hybrid Cross Entropy-Tabu SearchAA Approximation Algorithm
Waktu Tunggu 10.785 10.385 14.638Gap 35,73% lebih baik
AlgoritmaCE 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.313 4.362 4.126 4595,7 4429,3
Iterasi Optimal 37 34 37 35 41,6 40
LOGO Eksperimen dengan Set Data KroA100 (100 kota)
Eksperimen dengan Set Data KroA100 (100 kota)
AlgoritmaCE AA
Rata-rata TerbaikWaktu Tunggu 1.168.967 1.123.700 1.307.340
Gap 11,84% lebih baik
AlgoritmaCE-TS
AARata-rata Terbaik
AlgoritmaCE CE-TS
Rata-rata Terbaik Rata-rata TerbaikWaktu Tunggu 1.168.967 1.123.700 1.183.367 1.173.100
Waktu Komputasi 41.008 39.581 41.720 41.208Iterasi Optimal 93 90 91 89
Rata-rata TerbaikWaktu Tunggu 1.183.367 1.173.100 1.307.340
Gap 10,48% lebih baik
Keterangan :CE Cross EntropyCE-TS Hybrid Cross Entropy-Tabu SearchAA Approximation Algorithm
LOGO Eksperimen dengan Set Data KroA150 (150 kota)
Eksperimen dengan Set Data KroA150 (150 kota)
AlgoritmaCE AA
Rata-rata TerbaikWaktu Tunggu 2.391.900 2.391.900 2.494.782
Gap 4,3% lebih baik
AlgoritmaCE-TS AA
Rata-rata Terbaik
AlgoritmaCE CE-TS
Rata-rata Terbaik Rata-rata TerbaikWaktu Tunggu 2.391.900 2.391.900 2.567.267 2.481.700
Waktu Komputasi 250.733,33 249.360 229.020 216.390Iterasi Optimal 220 220 194 183
Rata-rata TerbaikWaktu Tunggu 2.567.267 2.481.700 2.494.782
Gap 2,9% lebih buruk
Keterangan :CE Cross EntropyCE-TS Hybrid Cross Entropy-Tabu SearchAA Approximation Algorithm
LOGO AnalisisAnalisis
•Algoritma CE-TS memberikan hasil yang lebih bagus daripada CE untuk problem kecil, namun untuk problem yang lebih besar CE memberikan hasil yang lebih bagus daripada CE-TS.• Pada problem yang besar, hasil Tabu Search pada algoritma CE-TS belum tentu bagus karena kemungkinan solusi yang sangat banyak, belum tentu bagus karena kemungkinan solusi yang sangat banyak, namun untuk problem kecil hasil Tabu Search relatif bagus sehingga cukup membantu algoritma CE dengan mengatur pembangkitan awal CE dengan sampel yang bagus sehingga mempengaruhi hasil akhir CE-TS.•Bila dibandingkan dengan algoritma pembanding, CE dan CE-TS memberikan performansi yang lebih bagus daripada algoritma Approximation Algorithm (Archer et al., 2008), namun tidak lebih baik bila dibandingkan dengan Improved GA (Bang and Nghia, 2010).
LOGO KesimpulanKesimpulan
1. Algoritma Cross Entropy (CE) dan Hybrid Cross Entropy-Tabu Search (CE-TS) dapat diaplikasikan untuk penyelesaian Travelling Repairman Problem (TRP)
2. Algoritma Hybrid Cross Entropy-Tabu Search menghasilkan total waktu tunggu customer yang lebih baik daripada Cross 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.
3. Algoritma Cross Entropy dan Hybrid Cross Entropy-Tabu Search menghasilkan performansi yang lebih baik daripada algoritma Approximation Algorithm, namun masih kurang baik jika dibandingkan dengan algoritma Improved Generic Algorithm.
LOGO SaranSaran
Penelitian selanjutnya bisa dikembangkan untuk varianTravelling Repairman Problem lain, seperti seperti TRP withrepairtimes, TRP with profits, TRP with deadline, dansebagainya.
LOGO Daftar Pustaka (1)Daftar Pustaka (1)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.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.
LOGO Daftar Pustaka (2)Daftar Pustaka (2)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.75, 225-229.