PENGEMBANGAN ALGORITMA SIMULATED ANNEALING PADA PERMASALAHAN HYBRID FLOWSHOP SCHEDULING UNTUK MINIMASI MAKESPAN DAN TOTAL TARDINESS Ainur Rofiq, Budi Santosa Jurusan Teknik Industri Institut Teknologi Sepuluh Nopember Sukolilo Surabaya 60111 Email:
[email protected] ;
[email protected]
Abstrak Hybrid Flowshop Scheduling (HFS) merupakan salah satu permasalahan penjadwalan yang banyak dibahas oleh peneliti saat ini. Berbeda dengan flowshop secara umum, dalam HFS terdapat m-machine dalam suatu stage sehingga permasalahan penjadwalan pada HFS menjadi lebih rumit daripada flowshop biasa. Contoh sistem produksi yang menggunakan lini produksi HFS seperti industri manufaktur baja, tekstil, dan industri kertas. Minimasi makespan dan total tardiness merupakan dua tujuan yang penting dalam suatu penjadwalan untuk efisiensi penjadwalan dan memenuhi kebutuhan customer. HFS juga termasuk permasalahan NP-Hard karena semakin banyak job dan jumlah mesin, maka semakin lama pula waktu komputasi yang dibutuhkan untuk mendapatkan solusi. Maka dari itu, metode metaheuristik simulated annealing akan digunakan untuk mendapatkan solusi makespan dan total tardiness yang minimum. Algoritma simulated annealing telah berhasil digunakan dalam beberapa kasus penjadwalan karena algoritma ini memiliki keunggulan tidak terjebak dalam lokal optima dengan menerima solusi yang lebih buruk. Dalam penelitian ini, algoritma ini akan dimodifikasi dengan meningkatkan nilai temperatur satu kali ketika nilai temperatur bernilai kecil untuk meningkatkan performansinya. Dari hasil eksperimen yang telah dilakukan, terbukti modified simulated annealing mampu mendapatkan hasil yang lebih baik daripada simulated annealing reguler, terutama ketika digunakan di dalam kasus yang besar. Keywords: Hybrid Flowshop Scheduling, Makespan, Simulated Annealing, Total Tardiness branch and bound, linear programming, dan lagrangian relaxation dirasa kurang efektif lagi dan diperlukan metode yang lain yang lebih efektif dari segi hasil dan waktu komputasi. Fungsi tujuan yang lebih dari satu tersebut lebih mendekati kondisi lapangan yang ada, sehingga permasalahan penjadwalan menjadi semakin kompleks dengan multi tujuan. Oleh karena itu, diperlukan pertimbangan secara simultan dari beberapa tujuan ketika akan membangkitkan jadwal sehingga didapatkan beberapa yang dapat mengoptimalkan beberapa tujuan. Pendekatan fungsi utilitas adalah salah satu metode yang sering digunakan di dalam permasalahan multi tujuan, dimana setiap tujuan mendapatkan bobot masingmasing sesuai dengan urutan prioritas. Tujuan dari penelitian ini adalah mengoptimalkan dua fungsi tujuan makespan dan total tardiness dalam penjadwalan hybrid flowshop. Simulated annealing (SA) merupakan salah satu metode metaheuristik yang meniru proses pendinginan baja yang mendidih secara perlahan (Santosa & Willy, 2011). Dalam beberapa penelitian, metode ini digunakan sebagai metode untuk penyelesaian masalah optimasi, seperti traveling salesman problem, vehicle routing problem, penjadwalan pekerjaan, dan beberapa permasalahan yang lain.
1. Pendahuluan Penjadwalan merupakan salah satu permasalahan penting dalam suatu sistem manufaktur. Permasalahan dalam penjadwalan berfokus pada bagaimana mengalokasikan sumber daya produksi yang terbatas, seperti mesin, alat material handling, operator, dan peralatan lainnya untuk melakukan proses pada serangkaian aktivitas operasi (job) dalam periode waktu tertentu dengan optimalisasi pada fungsi tujuan tertentu (Pinedo, 2002). Hybrid flowshop (HFS) merupakan salah satu penjadwalan flowshop yang memiliki beberapa mesin paralel dalam satu stage. Menurut Gómezgasquet et al. (2012), istilah hybrid flowshop pertama kali diperkenalkan oleh Gupta pada tahun 1998, dalam menggambarkan penjadwalan flowshop yang memiliki satu mesin pada stage pertama, dan 2 mesin pada stage kedua. Fungsi tujuan dari permasalahan penjadwalan flowshop antara lain untuk minimasi makespan, minimasi mean flowtime, minimasi tardiness, dan sebagainya. Permasalahan penjadwalan flowshop, termasuk hybrid flowshop merupakan permasalahan nonpolynomial hard (NP-Hard) karena semakin besar permasalahan, maka semakin lama pula waktu komputasi yang dibutuhkan untuk mencapai solusi optimal. Jadi, penggunaan metode eksak, seperti
1
Beberapa penelitian mengenai hybrid flowshop scheduling juga menggunakan metode simulated annealing, seperti Naderi et al. (2009) yang menggunakan metode simulated annealing pada HFS dengan tujuan minimasi makespan dan total tardiness menggunakan konstrain sequence dependent setup time, kemudian Naderi et al. (2009) yang juga menggunakan metode simulated annealing pada HFS dengan tujuan minimasi total completion time dan total tardiness menggunakan konstrain sequence dependent setup time dan transportation time, serta beberapa penelitian yang lain. Metode simulated annealing ini juga akan digunakan dalam menyelesaikan permasalahan hybrid flowshop dengan tujuan minimasi makespan dan total tardiness dengan menggunakan konstrain release date dimana setiap job hanya dapat dimulai untuk diproses setelah release date dan penelitian ini belum pernah ada sebelumnya. Simulated annealing tersebut akan dimodifikasi dengan mengatur nilai temperatur dengan cara menaikkan kembali nilai temperatur ketika sudah mencapai nilai tertentu. 2. Metodologi Penelitian Metodologi penelitian ini dibagi menjadi 3 tahapan utama, yakni tahap persiapan, tahap pengembangan dan pengujian algoritma, dan tahap analisis dan kesimpulan. Tahap persiapan awal ini adalah tahapan studi pustaka dari permasalahan yang akan diteliti dengan tujuan yang telah ditetapkan. Kemudian, Pada tahap pengembangan dan pengujian algoritma ini, ada beberapa langkah yang dilakukan dalam penelitian ini, antara lain pengumpulan data sekunder, penyusunan algoritma, validasi algoritma, pembuatan kode program, verifikasi, eksperimen, perbandingan dengan hasil dari algoritma Lain yang dalam hal ini modified simulated annealing akan dibandingkan antara simulated annealing reguler. Kemudian, dilakukan analisis dari hasil eksperimen yang dilakukan dan penarikan kesimpulan. Pada analisis, akan dilakukan analisis dari hasil perbandingan algoritma modified simulated annealing dengan algoritma simulated annealing tanpa modifikasi dalam permasalahan hybrid flowshop scheduling. Setelah dilakukan analisis terhadap performansi algoritma simulated annealing, langkah selanjutnya adalah penarikan kesimpulan dari hasil penelitian yang telah dilakukan.
tardiness) beserta fungsi pembatas (konstrain dikutip dari (Liao et al., 2012): j: indeks job s: indeks stage i: indeks mesin n: Jumlah job; j = 1,2,3,… n. k: Jumlah stage; i = 1,2,3,… k. ms: Jumlah mesin dalam stages; s=1,2, …k. pjs: waktu proses job j pada stages; s = 1,2,…k dan j = 1,2,…n Sjs: Waktu job j mulai diproses pada stage s Cjs: Waktu job j selesai diproses pada stage s L: konstanta dengan nilai yang sangat besar Xjis: variabel biner (0,1), bernilai 1 jika job j diproses oleh mesin i pada stages, bernilai 0 jika sebaliknya Yhjs: variabel biner (0,1), bernilai 1 jika jobh mendahului job j pada stages, bernilai 0 jika sebaliknya (1) Minimize Cmax (2) Minimize T Subject to: s = 1, …, k j=1, …, n (3) Cmax ≥ Cjs s = 1, …, k j=1, …, n (4) Cjs = Sjs + Pjs 𝑚𝑠 �𝑖=1 𝑋𝑗𝑖𝑠 = 1 s = 1, …, k j=1,…, n (5) Cjs ≤ Sj(s+1) s = 1, …, k-1 (6) untuk semua pasangan Shs ≥ Cjs – LYhjs job (h,j), s = 1, …, k (7) untuk semua pasangan Sjs ≥ Chs – (1-Yhjs)L job (h,j), s = 1, …, k (8) j=1, …, n (9) S j ≥ Rj (10) 𝐶𝑗0 = 𝑟𝑗 𝑇 = ∑𝑛𝑗=1 max (𝐶𝑗𝑠 − 𝑑𝑗 , 0) (11) Xjis ϵ (0,1), Yhjs ϵ (0,1) semua j = 1, …, n; i = 1, (12) …, ms; s = 1, …, k Fungsi tujuan dari permasalahan ini adalah minimasi makespan (Cmax) dan total tardiness (Tmax). Konstrain (3) dan (4) digunakan untuk mendefinisikan makespan. Makespan yang diperoleh setidaknya lebih besar atau sama dengan completion time dari job terakhir. Konstrain (4) merupakan completion time dar job j pada stage 2. Konstrain (5) digunakan untuk memastikan setiap job akan diproses oleh satu mesin dalam setiap stage. Konstrain (6) digunakan untuk memastikan bahwa setiap job dapat mulai diproses dalam suatu stage hanya setelah job tersebut selesai diproses pada stage sebelumnya. Konstrain (6) dan (7) bersama-sama berfungsi untuk memastikan bahwa setiap mesin hanya akan bisa memproses satu job dalam satu waktu. Ketika Yhjs=1, dan job h dikerjakan sebelum job j, konstrain (7) dibutuhkan. Kontrain (8) menunjukkan bahwa starting time job j pada stages harus setelah completion time job h. Ketika Yhjs=0, maka j dikerjakan sebelum job h. Konstrain (9) digunakan untuk membatasi bahwa
3. Model Hybrid Flowshop Scheduling Sebelum melangkah pada tahap pengujian algoritma, terlebih dahulu dijelaskan mengenai model permasalahan yang akan diselesaikan. Berikut ini adalah model matematis terdiri dari fungsi tujuan (minimasi makespan dan total
2
starting time job harus harus setelah ready time pada job tersebut. Konstrain (10) digunakan khusus untuk ketika job belum diproses, dimana job hanya bisa diproses setelah release date dari job tersebut. Konstrain (11) digunakan untuk menunjukkan perhitungan waktu total tardiness. Total tardiness adalah penjumlahan dari maksimum selisih completion time dengan due date yang telah ditetapkan. Konstrain (12) digunakan untuk membuat variabel pada Xjis dan Yhjs bernilai biner 0 atau 1.
Nilai z didapatkan dari penjumlahan dari masing-masing fungsi tujuan yang telah diberikan bobot sebelumnya. Dalam permasalahan ini, makespan dan total tardiness dianggap sama-sama penting sehingga kedua fungsi tujuan tersebut diberikan bobot yang sama, yakni 0.5. Dari tabel 4.14 di atas, dapat disimpulkan bahwa urutan job 23-1 dan 3-2-1 memiliki nilai z terkecil, sehingga kedua urutan job tersebut merupakan urutan job paling optimal dalam kasus sederhana ini. Kemudian, berikut ini adalah langkah-langkah algoritma simulated annealing. Berikut ini adalah ilustrasi perbedaan antara SA reguler dengan modified SA.
4. Pengujian Algoritma Setelah dijelaskan mengenai model permasalahan, kemudian akan dilakukan validasi dan verifikasi algoritma a. Validasi Algoritma Validasi yang dilakukan adalah dengan perhitungan dengan enumerasi menggunakan contoh kasus sederhana beserta langkah-langkah yang dilakukan dengan menggunakan metode yang diusulkan. Penyelesaian dengan enumerasi merupakan penyelesaian dengan mencoba semua kemungkinan yang ada dengan perhitungan manual. Pada contoh penyelesaian dengan enumerasi ini, akan digunakan contoh kasus hybrid flowshop scheduling sederhana dengan terdapat 3 job dan 3 stage. Tabel 1 Contoh Kasus Sederhana
Gambar 1 Perbedaan SA Reguler dan Modified SA Langkah-langkah dalam algoritma simulated annealing untuk menyelesaikan permasalahan hybrid flowshop scheduling pada kasus sederhana di atas. Langkah 1: Inisialisasi Parameter Parameter-parameter yang digunakan di dalam algoritma simulated annealing pada kasus sederhana ini adalah sebagai berikut: Temperatur awal (To) = 50 Reduction factor = 0.4 Siklus penurunan temperatur = 2 Langkah 2: Inisialisasi Solusi Awal Pembangkitan sampel awal yang akan didapatkan fungsi tujuan awal dilakukan secara random dengan menggunakan urutan job secara acak. Contoh hasil urutan job yang dibangkitkan adalah 1-3-2. Berikut ini adalah fungsi tujuan awal dengan urutan job 1-3-2 Makespan = 22 Total tardiness = 10 Langkah 3: Penentuan Iterasi Awal dan Siklus Awal Langkah ini merupakan langkah awal sebelum masuk ke dalam iterasi, yakni dengan menentukan memulai iterasi.Pada tahapan ini, iterasi dimulai
Dengan terdapat 3 job dan 3 stages, maka terdapat 6 kemungkinan kombinasi urutan job. Keterangan: Tabel 2 Ganttchart Urutan Terbaik Kasus Sederhana
Berikut ini adalah rekap hasil makespan dan total tardiness dari kombinasi urutan 3 job dalam permasalahan hybrid flowshop scheduling. Tabel 3 Hasil Perhitungan Kasus Sederhana
3
dari nilai 0, yang artinya iterasi masih belum dimulai. Langkah 4: Membangkitkan Bilangan Random untuk Menentukan Swap, Slide, dan Flip Guna Mendapatkan Urutan Baru Langkah ini digunakan untuk mendapatkan solusi baru dengan cara melakukan swap, slide, atau flip. Jika bilangan random yang dibangkitkan adalah antara 0 – 0.33, maka metode flip akan digunakan. 0.34 – 0.67, maka metode swap akan digunakan. 0.68 – 1, maka metode slide akan digunakan. Hasil bilangan random yang dibangkitkan adalah 0.23 yang berarti metode flip yang akan digunakan. Job yang akan dilakukan flip adalah job 2 dan job 3. Urutan awal 1-3-2 Urutan baru 1-2-3 Langkah 5: Menentukan Nilai Fungsi Tujuan Baru dari Solusi Baru yang telah Didapatkan Akan dicari nilai dari fungsi tujuan, yakni nilai makespan dan total tardiness. Solusi urutan job terbaru adalah 1-2-3. Makespan = 23 Total tardiness = 13 Langkah 6: Membandingkan Solusi Lama dengan Solusi Baru Cara mendapatkan tujuan tunggal dari multi tujuan dalam hal ini adalah dengan menggunakan fungsi utilitas, Fungsi tujuan makespan dan total tardiness merupakan fungsi tujuan yang sama penting dalam penelitian ini sehingga diberikan bobot yang sama, yakni 0.5. Solusi Lama (Makespan = 22, total tardiness = 10) Z1 = w1*f(x1) + w2*f(x2) Z1 = 0.5*22 + 0.5*10 Z1 = 16 Solusi Baru (Makespan = 23, total tardiness = 13) Z2 = w1*f(x1) + w2*f(x2) Z2 = 0.5*23 + 0.5*13 Z2 = 18 Dalam algoritma simulated annealing, jika solusi baru lebih baik daripada solusi lama, maka solusi baru tersebut akan diterima. Tetapi, jika solusi baru tidak lebih baik daripada solusi lama, maka akan dilakukan perhitungan dengan kriteria metropolis untuk ditentukan apakan solusi baru yang tidak lebih baik tersebut akan diterima atau ditolak dan akan dibandingkan dengan hasil bilangan random yang dibangkitkan. Jika bilangan random lebih kecil daripada kriteria metropolis, maka solusi yang baru yang tidak lebih baik diterima, dan sebaliknya. Diketahui bahwa solusi yang baru tidak lebih baik daripada solusi lama. Oleh karena itu, maka dilakukan perhitungan kriteria Metropolis seperti di bawah ini. ΔE = Z2 – Z1 = 18 – 16 = 2 T = Temperatur sekarang = 50 P(E) = e-ΔE/kT P(E) = 0.9608
ran = nilai bilangan random yang dibangkitkan = 0.5639 Karena ran
Eksperimen pertama yang dilakukan adalah eksperimen uji parameter. merupakan parameter yang penting dalam algoritma ini sehingga perlu dilakukan uji parameter untuk mendapatkan nilai parameter yang baik agar mendapatkan hasil yang lebih baik. Uji parameter pertama adalah uji parameter untuk faktor pereduksi temperatur (c) yang berada antara 0 dan 1. Uji parameter faktor pereduksi yakni dengan menguji parameter c dengan nilai 0,2; 0,5; dan 0,9. Uji parameter ini dilakukan dengan menggunakan data uji 10 job 10 stage.
4
Tabel 5 Uji Parameter Faktor Pereduksi
Pada hasil eksperimen yang dilakukan pada kedua algoritma SA dan modified SA dengan menggunakan data uji 10 job dan 5 stage, solusi yang didapatkan terdapat perbedaan meskipun perbedaan tersebut tidak terlalu signifikan. Tetapi, dari hasil eksperimen dengan 10 job 5 stage ini sudah mulai tampak bahwa performansi modified SA sedikit lebih baik daripada SA biasa, dimana modifikasi dengan menaikkan temperatur kembali setelah temperatur memasuki nilai yang kecil cukup efektif untuk mengeluarkan solusi dari jebakan lokal optima. Dari hasil eksperimen kedua algoritma pada kasus 15 job 10 stage dan 20 job 10 stage, kedua algoritma menunjukkan hasil yang cukup berbeda dimana modified SA memberikan performansi yang lebih baik daripada SA. Pada uji ini, replikasi dilakukan sebanyak 30 kali untuk masing-masing algoritma karena hasil yang didapatkan sering menunjukkan solusi yang berbeda-beda. Hal ini juga menunjukkan keberagaman hasil solusi untuk kasus yang lebih besar. Dari performansi yang ditunjukkan oleh modified SA pada kasus yang besar ini dapat dikatakan bahwa pengembangan yang dilakukan cukup efektif untuk membuat solusi berhasil keluar dari jebakan lokal optima, yang memang menjadi kelemahan dari algoritma SA biasa khususnya ketika suhu sudah tidak besar lagi.
Dari hasil eksperimen uji parameter, maka faktor pereduksi yang digunakan adalah 0.5 karena memberkan performansi yang paling bagus dan temperatur awal yang disesuaikan dengan besarnya permasalahan yang akan diselesaikan. Setelah dilakukan uji parameter, maka kemudian dilakukan eksperimen pada kelima kasus dari data yang telah ada. Setiap kasus akan diuji eksperimen masing-masing 30 kali percobaan. Tabel 6 Hasil Eksperimen
7. Kesimpulan Algoritma simulated annealing reguler dan modified simulated annealing dapat digunakan dalam menyelesaikan permasalahan hybrid flowshop scheduling untuk minimasi makespan dan total tardiness. Algoritma simulated annealing yang telah dimodifikasi dengan menaikkan temperatur ketika temperatur bernilai kecil terbukti menghasilkan solusi yang lebih baik daripada simulated annealing reguler. Performansi algoritma modified SA mulai terlihat lebih baik ketika data yang digunakan termasuk permasalahan yang besar.
6. Analisis Hasil Eksperimen Dalam uji eksperimen uji parameter yang dilakukan, nilai faktor pereduksi yang diuji adalah 0.2, 0.5, dan 0.9. Dari hasil eksperimen yang telah dilakukan terhadap ketiga nilai uji parameter faktor pereduksi dengan 3 kali percobaan untuk masingmasing nilai, hasil terbaik yang didapatkan adalah pada nilai faktor pereduksi 0.5 dibandingkan dengan nilai faktor pereduksi 0.2 dan 0.9. Kemudian, ketika dibandingkan dengan menggunakan faktor pereduksi 0.5, solusi yang didapatkan tidak berbeda jauh, tetapi waktu komputasi yang dibutuhkan dengan menggunakan faktor pereduksi 0.5 lebih singkat. Hal ini dapat ditarik kesimpulan bahwa dengan menggunakan faktor pereduksi 0.5 sudah cukup untuk mendapatkan solusi yang baik dengan waktu komputasi yang reliabel. Pada pengujian yang dilakukan dengan data uji 5 job 5 stage dengan menggunakan algoritma simulated annealing reguler dengan modified simulated annealing, solusi yang didapatkan adalah sama dari 10 kalo running yang dilakukan untuk masing-masing algoritma. Hal ini dikarenakan data uji yang digunakan untuk algoritma ini masih tergolong dalam kasus kecil dimana kedua algoritma tersebut masih dapat memberikan hasil yang optimal.
8. Referensi Allahverdi, A., Gupta, J. N. D., & Aldowaisan, T. (1999). "A review of scheduling research involving setup considerations". 27. Arroyo, E. C. (2005). "Genetic local search for multi-objective flowshop scheduling problems". 167, 717-738. Basori, S. (2011). Pendekatan Cross Entropy untuk Minimasi Bikriteria Makespan dan Total Tardiness pada Penjadwalan Produksi Flowshop dengan Mesin Paralel. Tugas Akhir ST, Institut Teknologi Sepuluh Nopember, Surabaya. Behnamian, J., Ghomi, S. M. T. F., Jolai, F., & Amirtaheri, O. (2012). "Minimizing
5
makespan on a three-machine flowshop batch scheduling problem with transportation using genetic algorithm". Applied Soft Computing Journal, 12(2), 768-777. Carlier, J., & Neron, E. (2000). "An exact method for solving the multiprocessor flowshop". R.A.I.R.O- R.O, 34, 1-25. Gómez-gasquet, P., Andrés, C., & Lario, F.-c. (2012). "An agent-based genetic algorithm for hybrid flowshops with sequence dependentsetup times to minimise makespan". 39, 8095-8107. Hanka, M. K. R. (2013). Pengembangan Algoritma Hybrid Cross Entropy-Genetic Algorithm pada Permasalahan Multiobjective Job Shop Scheduling untuk Minimasi Makespan dan Mean Flow Time. Tugas Akhir ST, Institut Teknologi Sepuluh Nopember, Surabaya. Jungwattanakit, J., Reodecha, M., Chaovalitwongse, P., & Werner, F.(2007)."Constructive and Simulated annealing Algorithms for Hybrid flowshop Problems with Unrelated Parallel Machines".Thammasat Int. J. Sc. Tech.,Vol. 12, No. 1. Khabbazi, M. R. (2011). "A simulated annealing algorithm approach to hybrid flowshop schedulingwith sequence-dependent setup times". 965-978. Lee, G.-c. (2009). "Estimating order lead times in hybrid flowshops with different scheduling rules". Computers & Industrial Engineering, 56(4), 1668-1674. Liao, C.-j., Tjandradjaja, E., & Chung, T.-p. (2012). "An approach using particle swarm optimization and bottleneck heuristic to solve hybrid flowshop scheduling problem". Applied Soft Computing Journal, 12(6), 1755-1764. Lin, S.-w., Yu, V. F., & Chou, S.-y. (2009). "Solving the truck and trailer routing problem based on a simulated annealing heuristic"". 36. Liu, H., Gao, L., & Pan, Q. (2011). "A hybrid particle swarm optimization with estimation of distribution algorithm for solving permutation flowshop scheduling problem". Expert Systems with Applications, 38(4), 4348-4360. McKendall, A. R., Shang, J., & Kuppusamy, S. (2006). "Simulated annealing heuristics for the dynamic facility layout problem". 33, 2431-2444. Moursli, O., & Pochet, Y. (2000). "A branch-andbound algorithm for the hybrid flowshop". 64, 113-125.
Mousavi, S. M., Zandieh, M., & Yazdani, M. (2013). "A simulated annealing / lokal search to minimize the makespan and total tardiness on a hybrid flowshop". 369-388. Naderi, B., Tavakkoli-moghaddam, R., & Khalili, M. (2010). "Electromagnetism-like mechanism and simulated annealing algorithms for flowshop scheduling problems minimizing the total weighted tardiness and makespan". KnowledgeBased Systems, 23(2), 77-85. Naderi, B., Zandieh, M., Ghoshe, A. K., & Roshanaei, V. (2009). "An improvedsimulated annealing for hybrid flowshops with sequence-dependent setup and transportation times to minimize total completion time and total tardiness". Expert Systems with Applications, 36(6), 9625-9633. Naderi, B., Zandieh, M., & Roshanaei, V. (2009). "Schedulinghybrid flowshops with sequence dependent setup times to minimize makespan and maximum tardiness". 1186-1198. Niu, Q. (2009). "A Quantum-Inspired Immune Algorithm for Hybrid flowshop with MakespanCriterion". 15(4), 765-785. Pan, Q.-k., Fatih, M., & Liang, Y.-c. (2008). "A discrete differential evolution algorithm for the permutation flowshop scheduling problem". Computers & Industrial Engineering, 55(4), 61-82. Pinedo, M. L. (2002). Scheduling:Theory, Algorithms, and Systems (2 ed.). USA: Springer. Riyanto, O. A. W. (2011). Algoritma Differential Evolution-Variable Neighborhood Search untuk Minimasi Makespan dan Maximum Lateness pada Penjadwalan JobHybrid flowshop with Job-Sequence Dependent Setup-Time. Tesis M.T., Institut Teknologi Sepuluh Nopember, Surabaya. Ruiz, R., & Vázquez-rodríguez, J. A. (2010). "The hybrid flowshop scheduling problem". European Journal of Operational Research, 205(1), 1-18. Santosa, B., & Willy, P. (2011). Metoda Metaheuristik Konsep dan Implementasi. Surabaya: Guna Widya. Wang, X., & Tang, L. (2009). "A tabu search heuristic for the hybrid flowshop scheduling with finite intermediate buffers". 36, 907-918. Yu, V. F., Lin, S.-w., Lee, W., & Ting, C.-j. (2010). "A simulated annealing heuristic for the capacitated location routing problem". Computers & Industrial Engineering, 58(2), 288-29
6