Fakultas Ilmu Komputer
Universitas Brawijaya
456
Implementasi Algoritma Genetika Untuk Penjadwalan Customer Service
(Studi Kasus: Biro Perjalanan Kangoroo)
Chusnah Puteri Damayanti1, Rekyan Regasari Madi Putri2, Mochammad Ali Fauzi3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya
Email: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Karena kebutuhan akan transportasi yang tinggi dari masyarakat, biro perjalanan atau travel harus siap siaga melayani masyarakat. Pada travel dibutuhkan karyawan yang harus sedia untuk melayani pelanggan disebut customer service. Customer service harus memberikan informasi yang tepat, akurat dan cepat kepada pelanggan. Pada Travel Kangoroo yang memiliki lebih dari 300 armada, memiliki dua lokasi kantor yaitu pusat dan cabang serta jam operasional yang panjang membutuhkan customer service yang sedia melayani pelanggan. Serta terdapat berbagai aturan yang harus dipenuhi untuk membuat penjadwalan customer service. Sehingga, pada penelitian ini permasalahan penjadwalan diselesaikan dengan menggunakan algoritma genetika. Algoritma genetika mampu menyelesaikan permasalahan yang kompleks dan memiliki cakupan luas. Melalui pengujian yang telah dilakukan, diperoleh parameter terbaik yang menghasilkan nilai fitness paling optimal dengan ukuran populasi sebesar 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate 0.7:0.3. Dengan menggunakan parameter tersebut, penjadwalan customer service memiliki hasil yang optimal walaupun masih ada pelanggaran yang terjadi dengan waktu komputasi yang lebih singkat dibandingkan dengan manual.
Kata Kunci: biro perjalanan, penjadwalan, customer service, algoritma genetika, crossover, mutation Abstract
Due to the high demand of public transport, travel agency must be ready to serve the citizen. Travel need to be ready to serve the customer; called customer service. Customer service should provide information that is precise, accurate and fast to customers. At Travel Kangaroo which owns more than 300 fleet, has two locations namely central office and branches as well as long operating hours, a responsive customer service needed to serve the customers There are various rules that must be fulfilled in making the schedule of customer service too. Thus, in this study scheduling problems solved using genetic algorithms. Genetic algorithms can solve a complex problem as well as it has wide scope. Through the examination, it was obtained the best parameters that produce the most optimal fitness value with a population size of 110, 110 and comparison generation size crossover rate and mutation rate of 0.7: 0.3. By using these parameters, scheduling customer service have optimal results, although there are violations that occur with shorter computation time compared with the manual.
Keywords: travel, scheduling, customer service, genetic algorithm, crossover, mutation
1. PENDAHULUAN
Penjadwalan didefinisikan sebagai rencana pengaturan urutan kerja serta pengalokasian sumber, baik waktu maupun fasilitas untuk setiap operasi yang harus diselesaikan (Vollman, 1998). Penjadwalan secara manual masih umum dilakukan saat ini. Hal tersebut dirasa sulit dilakukan dan dapat memakan waktu yang cukup lama serta tingkat kesalahan yang dapat terjadi pun cukup besar.
Biro perjalanan atau travel membutuhkan penjadwalan dalam mengatur jam kerja karyawan karena kebutuhan akan transportasi yang tinggi. Untuk mengantisipasi hal tersebut, tentunya harus ada karyawan yang selalu ada untuk berhubungan langsung dengan pelanggan, yaitu Customer service. Customer service harus mampu memberikan informasi yang dibutuhkan pelanggan secepatnya, dan informasi yang diberikan harus benar, tepat, dan cepat sehingga customer akan merasa puas (Yunarto, 2006).
Pada penelitian ini, penjadwalan customer service dibuat per 30 hari kerja dimana hari sabtu, minggu dan hari libur termasuk hari kerja. Setiap karyawan memiliki susunan satu hari libur dan empat hari kerja dan minimal memiliki istirahat selama 8 jam setiap harinya. Terdapat dua lokasi kantor yaitu cabang dan pusat. Pembagian jam kerja karyawan pada kantor pusat dibagi menjadi tiga shift yaitu pagi, siang dan malam. Dimana, karyawan perempuan tidak boleh ada di shift malam. Seluruh karyawan harus memiliki jumlah jam kerja yang sama selama satu bulan dan jadwal tidak boleh saling bertabrakan satu sama lain. Dikarenakan kesulitan memenuhi aturan-aturan tersebut, peneliti bersama dengan PT Cybersama Technology, akan membuat implementasi algoritma genetika untuk penjadwalan customer service.
Algoritma genetika telah sukses diterapkan pada berbagai masalah kombinatorial, seperti perencanaan dan penjadwalan produksi pada industri manufaktur (Mahmudy, Marian & Luong 2012b, 2013b, 2013e). Algoritma genetika dapat menghasilkan solusi mendekati optimum yang dilakukan dalam waktu singkat dan dapat diterima secara mudah dalam
menyelesaikan masalah, meskipun tidak
dihasilkan solusi yang paling optimum.
Tujuan dari penelitian ini yaitu:
mengimplementasikan algoritma genetika dalam penjadwalan customer service pada bidang travel,mengidentifikasi tingkat efektifitas yang dalam hal ini nilai fitness terbaik yang dihasilkan dalam implementasi algoritma genetika untuk penjadwalan customer service, dan mengetahui efisiensi waktu dalam penjadwalan customer service dengan algoritma genetika dibandingkan dengan cara manual.
Penelitian ini melakukan pembuatan jadwal untuk customer service dengan harapan akan
memberikan efektifitas dalam melakukan
pekerjaannya. Dengan algortima genetika, dapat mengurangi kesalahan-kesalahan yang dapat terjadi dalam penjadwalan serta memangkas waktu yang dibutuhkan untuk membuat jadwal kerja dari pembuatan jadwal secara manual.
Sehingga, dapat meningkatkan efisiensi
pekerjaan customer service.
Langkah-langkah yang dilakukan dalam pembuatan penelitian atau metodologi yang digunakan penulis penelitian terdiri dari studi literatur, analisis kebutuhan, pengumpulan data, perancangan sistem, implementasi sistem, pengujian sistem, analisis hasil dan terakhir
penarikan kesimpulan. Data dalam skripsi ini didapatkan dari PT Cybersama Technology melalui wawancara dan studi dokumen yang diberikan.
2. ALGORITMA GENETIKA
Algoritma genetika adalah algoritma
optimasi numerik yang terinspirasi dari seleksi natural dan genetika natural (Coley, 1999).
Terdapat beberapa tahapan dari algoritma genetika yaitu:
1. Inisialisasi Kromosom
Inisialisasi dilakukan untuk membangkitkan himpunan solusi baru secara acak/random
yang terdiri atas sejumlah string
chromosome dan ditempatkan pada pen
ampungan yang disebut populasi
(Mahmudy, 2015). Representasi kromosom
dapat menggunakan bilangan biner,
bilangan integer, real coded, maupun permutasi.
2. Crossover
Crossover merupakan operasi yang bekerja untuk menggabungkan 2 kromosom induk menjadi kromosom baru. Jumlah solusi
jadwal yang mengalami crossover
ditentukan oleh parameter crossover rate. Metode crossover yang paling umum digunakan adalah metode one-cut-point, yang secara acak memilih satu titik potong dan menukarkan bagian kanan dari tiap
induk untuk menghasilkan offspring
(Mahmudy, 2015). 3. Mutasi
Mutasi dilakukan dengan memilih satu induk secara acak dari populasi. Metode mutasi yang digunakan adalah dengan memilih satu titik acak kemudian mengubah nilai gen pada titik tersebut. Metode mutasi yang paling sederhana adalah reciprocal exchange mutation. Metode ini bekerja dengan memilih dua posisi (exchange point / XP) secara random kemudian menukarkan nilai pada posisi tersebut (Mahmudy, 2015). Selain itu juga terdapat metode insertion exchange mutation.
4. Evaluasi
Evaluasi adalah fungsi yang digunakan untuk mengetahui ketahanan kromosom masih pantas diteruskan eksistensinya (Tyas, Rahman, & Dewi, 2013). Setelah itu
dihitung nilai fitness yang
Semakin besar nilai fitness maka semakin baik individu tersebut.
5. Seleksi
Proses terakhir dalam algoritma genetika adalah seleksi yaitu memilih individu-individe terbaik berdasarkan nilai fitness yang telah dihasilkan. Metode seleksi ada metode seleksi elitism, binary tournament dan roulette wheel selection.
3. ATURAN PENJADWALAN
Terdapat 5 constraint atau pelanggaran yang
harus dipenuhi dalam proses evaluasi
implementasi algoritma genetika untuk
penjadwalan customer service seperti yang ditunjukkan oleh Tabel 1. Pada sample uji yang digunakan pada penelitian ini digunakan 10 customer service dengan ID A, B, C, E, F, G, H, I, J. Lokasi dan shift dari penjadwalan customer service biro perjalanan Kangoroo ditunjukkan oleh Tabel 2.
Tabel 1 Aturan Penjadwalan
No. Kode Constraint Bobot
1 P1 Setiap Customer
service tidak boleh berjaga lebih dari satu shift dalam satu hari. 0.005 2 P2 Customer service perempuan tidak boleh memiliki shift malam. 0.005 3 P3 Customer service harus memiliki istirahat minimal 8 jam, yang artinya tidak boleh memiliki shift malam lalu
langsung shift pagi di hari berikutnya di kantor pusat maupun cabang.
0.005
4 P4 Jumlah jam kerja
setiap customer service sama sesuai dengan jumlah pembagian tiap shift yang telah ditentukan.
0.005
5 P5 Aturan hari kerja 0.005
setiap customer service adalah 4 hari kerja dan 1 hari libur secara berturut-turut.
Tabel 2 Lokasi dan Shift Penjadwalan
No . Lokasi Shift Jam Penjagaa n Jumlah Custome r service Berjaga 1 Pusat Pagi 05:00 - 13:00 2 Siang 12:00 - 20:00 2 Mala m 20:00 - 04:00 2 2 Caban g Pagi 05:00 - 13:00 1 Siang 12:00 - 20:00 1 4. PROSES MANUALISASI 4.1 Inisialisasi Kromosom
Ukuran populasi atau popsize yang telah ditentukan dalam proses manualisasi ini adalah 3 individu. Pada proses manualisasi ini satu kromosom terdiri dari 240 gen yang didapat dari representasi jumlah hari dikalikan dengan jumlah shift pada kantor pusat yaitu 3 shift dengan terdapat 2 customer service yang berjaga pada tiap shiftnya, dan jumlah shift pada kantor cabang yaitu 2 shift dengan masing-masing 1 customer service yang berjaga pada setiap shiftnya. Kromosom yang terbentuk dibuat memanjang ke samping. Nilai gen yang diisikan pada setiap slot gen pada suatu kromosom adalah ID dari customer service. ID customer service diperoleh dengan mengacak nilai indeks dari urutan ID customer service
Gambar 1 Inisialisai Kromosom
Inisialisasi kromosom yang telah terbentuk yaitu sebanyak 3 individu ditunjukkan oleh tabel 3, 4 dan 5. Hari … Lokasi … Shift P P S S M M P S P P S S M M P S P P S S M M P S … P P S S M M P S CS A C F J D E B H G A D I D C B F H D A B I J C E … B I A D J H E F 30 Pus Cab Pus Cab Pus Cab Pus Cab
Tabel 3 Inisialisasi Kromosom Individu 1 PARENT1 HARI 1 2 3 4 5 6 7 PUSAT PAGI C B C I G B J I A D G E J F SIANG E J C C D D D G C C I F J B MALAM E G A G A I H I F A B I C D CABANG PAGI J D A F A B C SIANG D A D G A C J
Tabel 4Inisialisasi Kromosom Individu 2
PARENT2 HARI 1 2 3 4 5 6 7 PUSAT PAGI J D G I F H C I D E A I A D SIANG D J J I D D F H F J G C H G MALAM H B G I H G G D J I G J I C CABANG PAGI J B I C C G I SIANG B D H J B B J
Tabel 5 Inisialisasi Kromosom Individu 3
PARENT3 HARI 1 2 3 4 5 6 7 PUSAT PAGI I F I I E E J E I C G J C I SIANG F J B H E H A D I G C D C B MALAM I D E A B D B F E E C J D H CABANG PAGI E D H F B J G SIANG D I A J H A H 4.2. Crossover
Metode crossover yang digunakan dalam penelitian ini adalah one cut point crossover. Pada proses manualisasi ini dipilih parent1 dan parent2 untuk melakukan crossover. Titik potong dari one cut point crossover adalah titik ke 28.
Gambar 2 Proses Crossover
4.3. Mutasi
Mutasi merupakan proses pengubahan gen keturunan secara random. Dalam penjadwalan customer service ini digunakan metode mutasi reciprocal exvhange mutation yaitu dengan memilih dua posisi (exchange point /XP) customer service dalam gen tertentu secara
random kemudia nilainya saling ditukarkan pada posisi tersebut. Dalam proses manualisasi ini di tentukan parent 3 sebagai induk untuk melakukan mutasi. Dikarenakan offspring atau jumlah anak adalah 2 maka dipilih parent 1 sebagai induk kedua, dengan titik tukar titik 20 dan 42.
Gambar 3 Proses Mutasi
Gambar 4 Proses Mutasi
4.4. Cek Constraint P1
Pengecekan dilakukan dengan menghitung kemunculan setiap kode karyawan persatu hari. Jika kode customer service muncul lebih dari satu kali dalam satu hari maka dinilai sebagai penalti yang bernilai 1.
Gambar 5 Cek Constraint P1
Kotak yang berwarna merah menunjukkan penalty yang dilakukan oleh suatu kode customer service. Jadi pelanggaran P1 berjumlah 14.
4.5. Cek Constraint P2
Constraint P2 adalah setiap customer service perempuan tidak boleh memiliki shift malam. Batasan kedua ini dihitung dari jumlah shift malam customer service perempuan dalam satu jadwal.
Gambar 6 Cek Constraint P2
Kode berwarna biru menunjukkan customer service perempuan yang ada di shift malam. Jumlah penalti P2 adalah 7.
P1 C I E G E I J D B A J C G F D A C D C C A A A D I G C I G B F G G E D F A I A A B J D J I C B C J F D B H D C J P2 J I D H H D J B D D J F B J B D G E J J G I I H I A I G I G C J F I D C H J C B H A D H G I G B C D F G G C I J C1 C I E G E I J D B A J C G F D A C D C C A A A D I G C I I G C J F I D C H J C B H A D H G I G B C D F G G C I J C2 J I D H H D J B D D J F B J B D G E J J G I I H I A I G G B F G G E D F A I A A B J D J I C B C J F D B H D C J P3 I E F D I F E D F I J I D E D I I C B G E E H A I G H C A C F J E J E D B J B H E C H C D D J A J I A B B H G H M1 I E F D I F E D F I J I D E D I I C B C E E H A I G H C A C F J E J E D B J B H E G H C D D J A J I A B B H G H P1 C I E G E I J D B A J C G F D A C D C C A A A D I G C I G B F G G E D F A I A A B J D J I C B C J F D B H D C J M2 C I E G E I J D B A J C G F D A C D C J A A A D I G C I G B F G G E D F A I A A B C D J I C B C J F D B H D C J HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG C I E G E I J D B A J C G F D A C D C C A A A D I G C I G B F G HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG G E D F A I A A B J D J I C B C J F D B H D C J 5 6 7 P C P C P P C 4 P C P C P C 1 2 3 C HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG C I E G E I J D B A J C G F D A C D C C A A A D I G C I G B F G HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG G E D F A I A A B J D J I C B C J F D B H D C J 5 6 7 P C P C P P C P C P C P C 1 2 3 C 4
4.6. Cek Constraint P3
Constraint P3 adalah setiap customer service harus memiliki istirahat minimal 8 jam. Pengecekan constraint ini dilakukan dengan mengecek kode yang berjaga shift pagi pada hari ini baik di lokasi pusat maupun cabang apakah sama dengan kode yang berjaga di shift malam hari sebelumnya.
Gambar 7 Cek Constraint P3
Kode berwarna kuning menunjukkan
pelanggaran yang terjadi. Jadi jumlah
pelanggaran P3 adalah 2. 4.7. Cek Constraint P4
Batasan P4 adalah jumlah jam kerja setiap customer service sama sesuai dengan jumlah pembagian tiap shift yang telah ditentukan. Jumlah hari kerja dan pembagian shift setiap karyawan harus sesuai dengan yang telah ditentukan.
Gambar 8 Cek Constraint P4
Pelanggaran P4 berjumlah 36 dikarenakan terdapat 36 pelanggaran yang terjadi pada setiap shift di setiap customer service. Adapun jumlah pembagian kerja pada proses manualisasi ini untuk karyawan laki-laki shift pagi lokasi pusat adalah 2 hari, shift siang lokasi pusat adalah 2
hari, shift malam lokasi pusat adalah 2 hari, shift pagi lokasi cabang adalah 0 hari, dan shift siang lokasi cabang adalah 0 hari. Sedangkan untuk customer service perempuan adalah shift pagi lokasi pusat adalah 2 hari, shift siang lokasi pusat adalah 2 hari, shift malam lokasi pusat adalah 0 hari, shift pagi lokasi cabang adalah 1 hari, dan shift siang lokasi cabang adalah 1 hari.
4.8. Cek Constraint P5
Constraint P5 adalah aturan hari kerja setiap customer service adalah 4 hari kerja dan 1 hari libur secara berturut-turut. Sehingga telah ditentukan hari libur dari setiap karyawan. Jika seharusnya karywan tersebut libur di hari itu dan dia ada jadwal berjaga, maka akan dihitung sebagai penalti.
Gambar 9 Cek Constraint P5
Terdapat pelanggran yang dilakukan oleh pegawai B sebanyak 2, pegawai C sebanyak 1, pegawai E sebanyak 1, pegawai G sebanyak satu dan pegawai I sebanyak 1 sehingga jumlah pelanggaran constraint P7 adalah 6.
4.9. Perhitungan Fitness
Nilai kebugaran atau fitness dalam algoritma genetika menunjukkan seberapa optimal hasil individu yang dihasilkan. Semakin besar fitness semakin baik hasil yang terbentuk. Perhitungan nilai fitness pada penelitian ini menggunakan persamaan 𝑓𝑖𝑡𝑛𝑒𝑠𝑠 = 1 1+𝑝𝑒𝑛𝑎𝑙𝑡𝑖 (1) 𝑓𝑖𝑡𝑛𝑒𝑠𝑠 = 1 1+(0.005∑𝑃1+0.005∑𝑃2+0.005∑𝑃3+0.005∑𝑃4+0.005∑𝑃5) = 1 1 + ((0.005 ∗ 14) + (0.005 ∗ 7) + (0.005 ∗ 2) + (0.005 ∗ 36) + (0.005 ∗ 6)) = 1 1.325 = 0.7547 4.10. Seleksi
Metode seleksi yang digunakan dalam penelitian ini adalah elitism selection. Elitism selection yaitu mengumpulkan seluruh parent dan offspring hasil crossover dan mutasi menjadi satu, lalu dari seluruhnya dipilih yang
HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG C I E G E I J D B A J C G F D A C D C C A A A D I G C I G B F G HARI LOKASI SHIFT P P S S M M PC SC P P S S M M PC SC P P S S M M PC SC PEG G E D F A I A A B J D J I C B C J F D B H D C J P C P C P C 5 6 7 P C P C P C P C 1 2 3 4 SHIFT A B C D E P 0 0 0 0 0 S 0 0 0 0 0 M 0 0 0 0 0 P 0 0 0 0 0 S 0 0 0 0 0 P 1 1 1 1 1 S 1 1 1 1 1 M 1 1 1 1 1 P 0 0 0 0 0 S 0 0 0 0 0 P4 5 3 4 5 3 SHIFT F G H I J P 0 0 0 0 0 S 0 0 0 0 0 M 0 0 0 0 0 P 0 0 0 0 0 S 0 0 0 0 0 P 1 1 1 1 1 S 1 1 1 1 1 M 0 0 0 0 0 P 1 1 1 1 1 S 1 1 1 1 1 P4 4 3 5 4 0 PENGEC EKAN KESESUA IAN PUSAT CABANG PEGAWAI PEGAWAI PENGEC EKAN KESESUA IAN PUSAT CABANG LOKASI JUMLAH TIAP SHIFT PUSAT CABANG LOKASI JUMLAH TIAP SHIFT PUSAT CABANG A B C D E F G H I J 1 0 0 1 1 2 0 1 0 2 1 2 2 1 1 1 0 1 1 0 0 1 3 3 0 3 2 0 0 0 0 0 0 4 0 1 1 0 0 1 3 0 2 0 5 3 0 0 1 1 1 1 0 1 0 6 0 2 2 1 0 0 0 0 1 2 7 0 1 1 2 0 1 0 1 0 2 PEGAWAI HARI
bernilai fitness paling besar sesuai jumlah populasi yang ditentukan.
Tabel 6 Nilai Fitness yang Dihasilkan
Individu Fitness P1 0.7634 P2 0.7605 P3 0.7547 C1 0.7519 C2 0.7435 M1 0.7576 M2 0.7605
Setelah melewati proses sebanyak 2 generasi hasil seleksi diperlihatkan pada tabel 7.
Tabel 7 Hasil Seleksi
Individu Awal Fitness
P1 P1 0.7634
P2 P2 0.7605
P3 M2 0.7605
5. PENGUJIAN DAN HASIL 5.1. Pengujian Berdasarkan Ukuran Populasi
Pengujian implementasi algoritma genetika
untuk penjadwalan customer service
berdasarkan ukuran populasi bertujuan untuk mengetahui nilai fitness yang paling optimal yang dapat dilakukan oleh sistem. Pengujian ukuran populasi dilakukan dengan membuat ukuran populasi kelipatan 10 dari ukutran populasi 10 hingga 130. Pengujian berdasarkan ukuran populasi dilakukan pada ukuran generasi 10, crossover rate 0.5 dan mutation rate 0.5. Masing-masing ukuran populasi diuji sebanyak 5 kali.
Gambar 10 Rata-rata Nilai Fitness Pengujian Berdasarkan Ukuran Populasi
Gambar 11 Rata-rata Waktu Pengujian Berdasarkan Ukuran Populasi
Dari Gambar 10 dan 11 dapat dilihat bahwa ukuran populasi dengan hasil nilai fitness paling optimal dengan rata-rata sebesar 0.580235367 dengan ukuran populasi 110. Setelah ukuran populasi 110 saat pengujian dilanjutkan, terjadi penurunan nilai fitness dan nilai fitness yang dihasilkan selanjutnya bertambah tetapi tidak secara signifikan. Pada umumnya, semakin tinggi ukuran populasi maka berpengauh terhadap rata-rata nilai fitness yang didapatkan namun semakin tinggi ukuran populasi juga berpengaruh pada waktu pemrosesan algoritma genetika yang semakin lama (Suprayogi, dkk, 2015). Namun pada kasus ini, semakin besar nilai ukuran populasi belum tentu akan menghasilkan nilai fitness yang lebih optimal. Hal tersebut dikarenakan inisialisasi awal kromosom pada algoritma genetika dilakukan secara acak.
5.2. Pengujian Berdasarkan Ukuran Generasi
Pengujian berdasarkan ukuran generasi dilakukan untuk mengetahui nilai ukuran generasi yang akan menghasilkan nilai fitness paling optimal. Parameter yang digunakan yaitu ukuran populasi hasil dari pengujian berdasarkan
ukuran populasi yang telah dilakukan
sebelumnya yaitu sebesar 110 dengan crossover rate 0.5 dan mutation rate 0.5. Ukuran generasi pada pengujian berdasarkan ukuran generasi 10 hingga 130 dengan kelipatan 10. Masing-masing dari ukuran generasi tersebut dilakukan pengujian sebanyak 5 kali.
0,54 0,55 0,56 0,57 0,58 0,59 10 30 50 70 90 110 130 N ilai Fi tn e ss Ukuran Populasi 0 200 400 600 800 1000 1200 10 20 30 40 50 60 70 80 90 100 110 120 130 Wa kt u (d etik ) Ukuran Populasi
Gambar 12 Rata-rata Nilai Fitness Pengujian Berdasarkan Ukuran Generasi
Gambar 13 Rata-rata Waktu Pengujian Berdasarkan Ukuran Generasi
Ukuran generasi 110 menghasilkan nilai fitness paling baik yaitu 0.6704. Nilai fitness yang dihasilkan dari pengujian ini mengalami kenaikan seiring dengan bertambahnya ukuran generasi. Dari hasil pengujian berdasarkan ukuran generasi ini dapat disimpulkan jika jumlah generasi terlalu sedikit maka area pencarian algoritma semakin sempit sehingga solusinya kurang optimal. Sebaliknya jika semakin banyak generasi maka semakin besar
waktu komputasinya dan belum tentu
menghasilkan solusi yang lebih optimal (Mahmudy, 2013).
5.3. Pengujian Berdasarkan Perbandingan Crossover rate dan Mutation Rate
Pengujian berdasarkan perbandingan
Crossover Rate dan Mutation Rate dilakukan untuk mengetahui nilai perbandingan antara crossover rate dengan mutation rate yang akan menghasilkan nilai fitness paling optimal. Parameter yang digunakan yaitu ukuran populasi dan ukuran generasi dengan hasil yang paling optimal dari pengujian yang telah dilakukan sebelumnya yaitu ukuran populasi sebesar 110 dan ukuran generasi sebesar 110. Perbandingan crossover rate dan mutation rate pada pengujian ini yaitu 0.1:0.9, 0.2:0.8, 0.7:0.3, 0.6:0.4, 0.5:0.5,
0.4:0.6, 0.3:0.7, 0.2:0.8, dan 0.1:0.9. Masing-masing dari perbandingan crossover rate dan mutation rate tersebut dilakukan pengujian sebanyak 5 kali.
Gambar 14 Rata-rata Nilai Fitness Pengujian Berdasarkan Perbandingan Crossover Rate dan
Mutation Rate
Gambar 15 Rata-rata Waktu Pengujian Berdasarkan Perbandingan Crossover Rate dan Mutation Rate
Rata-rata nilai fitness terbesar yang dapat dihasilkan implementasi penjadwalan customer service dengan menggunakan algoritma genetika
sebesar 0.695049 dengan perbandingan
crossover rate dan mutation rate sebesar 0.7:0.3. Hasil dari pengujian ini menunjukkan bahwa semakin besar nilai crossover rate dibandingkan dengan mutation rate maka nilai fitness akan semakin besar. Sebaliknya jika
perbandingan mutation rate lebih besar
dibandingkan crossover rate maka nilai fitness akan semakin kecil. Hal tersebut dikarenakan proses crossover menghasilkan anak yang lebih bervariasi dari induk sehingga memungkinkan hasil yang lebih baik. Selain itu, penggunaan
metode reciprocal exchange mutation
menghasilkan anak yang hampir mirip dengan induk sehingga nilai fitness yang dihasilkan cenderung tidak berubah secara signifikan begitupun anak yang dihasilkan akan hampir sama dengan induknya. Tetapi pada pengujian ini, crossover rate yang terlalu besar juga belum tentu menghasilkan nilai fitness yang bertambah
0,5 0,55 0,6 0,65 0,7 10 30 50 70 90 110 130 N ilai Fi tn e ss Ukuran Generasi 0 5000 10000 15000 20000 10 30 50 70 90 110 130 Waktu ( d e tik) Ukuran Generasi 0 0,2 0,4 0,6 0,8 n ilai fitn es s
Crossover Rate : Mutation Rate
0 10000 20000 30000 40000 50000 60000 Wa kt u (d etik )
secara signifikan.
Hasil pengujian terbaik didapatkan pada ukuran populasi 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate 0.7:0.3. Nilai fitness terbaik sebesar 0.70922 dengan masih terdapat pinalti yang dilanggar. Pelanggaran pinalti 1 sebesar 29, pelanggaran pinalti 2 sebesar 6, pelanggaran pinalti 3 sebesar 4, pelanggaran pinalti 4 sebesar 28 dan pelanggaran pinalti 5 sebesar 15.
5.4. Pengujian Perbaikan Bobot
Dikarenakan hasil yang belum optimal pada pengujian sebelumnya, maka peneliti
memutuskan untuk melakukan optimasi.
Optimasi yang dilakukan oleh peneliti secara manual dengan cara mengubah nilai bobot fitness pada pelanggaran yang terjadi. Bobot pelanggaran ke 3 dan ke 4 diubah menjadi 0.001 yang sebelumnya bernilai 0.005. Sedangkan untuk bobot pinalti 1, 2, dan 5 tetap dibiarkan 0.005.
Pada pengujian perbaikan bobot ini parameter yang digunakan adalah hasil dari pengujian yang telah dilakukan sebelumnya yaitu ukuran populasi 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate sebesar 0.7:0.3. pengujian dilakukan sebanyak 5 kali dengan parameter yang sama.
Hasil pengujian terbaik didapatkan pada ukuran populasi 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate
0.7:0.3. Nilai fitness terbaik sebesar
0.822368421 dengan masih terdapat pinalti yang dilanggar. Pelanggaran pinalti 1 sebesar 28, pelanggaran pinalti 2 sebesar 0, pelanggaran pinalti 13 sebesar 4, pelanggaran pinalti 4 sebesar 38 dan pelanggaran pinalti 5 sebesar 5.
Gambar 16 Grafik Nilai Fitness Pengujian Perbaikan Bobot
Gambar 17 Grafik Waktu Pengujian Perbaikan Bobot
5.5. Pengujian Pengaruh Konvergensi
Pengujian pengaruh konvergensi dilakukan pada perubahan bobot dengan parameter tebaik yaitu ukuran populasi 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate 0.7:0.3. Titik ukuran generasi yang dianggap sebagai dimulainya titik konvergen adala 70% dari 110 yaitu titik 77. Sehingga pada generasi ke 77 dan setelahnya akan diberlakukan konvergensi saat selisih nilai fitness kurang dari 0.0055 atau sama dengan nilai fitness
sebelumnya. Dari pengujian yang telah
dilakukan didapatkan pada saat generasi ke 77 algorima genetika untuk penjadwalan customer service telah mengalami konvergensi dengan nilai fitness yang sama seperti generasi sebelumnya yaitu sebesar 0.7874015748 dengan pelanggaran pinalti 1 sebesar 29, pinalti 2 sebesar 5, pinalti 3 sebesar 14, pinalti 4 sebesar 40 dan pinalti 5 sebesar 12..
5.6 Pengujian Waktu
Kita anggap bahwa 3 hari pembuatan jadwal hanya dilakukan pada jam kerja karyawan yaitu dari pukul 08.00 hingga pukul 17.00 yaitu 9 jam dikalikan 3 hari menjadi 97200 detik, akan dihitung presentase waktu program
untuk membuat jadwal dibandingkan
denganmanual. Rumus pengujian waktu sebagai berikut:
𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑠𝑒𝑤𝑎𝑘𝑡𝑢 = 100× 𝑤𝑎𝑘𝑡𝑢𝑠𝑖𝑠𝑡𝑒𝑚
𝑤𝑎𝑘𝑡𝑢𝑚𝑎𝑛𝑢𝑎𝑙 (2)
Untuk hasil pengujian tanpa perbaikan bobot diambil nilai rata-rata waktu dengan nilai fitness yang menghasilkan rata-rata nilai fitness
terbaik yaitu 30532.4 detik. Sehingga
perhitungan presentase waktu menghasilkan sebagai berikut: 𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝑤𝑎𝑘𝑡𝑢 = 100 𝑥 30532.4 97200 0,78 0,79 0,8 0,81 0,82 0,83 1 2 3 4 5 N ilai Fitn es s Percobaan ke-0 10000 20000 30000 40000 50000 1 2 3 4 5 Wa kt u (d etik ) Percobaan
ke-𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝑤𝑎𝑘𝑡𝑢 = 31.41 %
Sedangkan untuk presentase waktu yang dibutuhkan program dengan dilakukannya perbaikan bobot memiliki rata-rata waktu sebesar 28826.6 detik. Sehingga perhitungan presentase waktu penjadwalan menghasilkan hasil sebagai berikut:
𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝑤𝑎𝑘𝑡𝑢 = 100 𝑥 28826.6 97200 𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝑤𝑎𝑘𝑡𝑢 = 29.66 %
Dapat disimpulkan bahwa implementasi algoritma genetika untuk penjadwalan customr service menghabiskan waktu yang lebih sedikit daripada yang dibutuhkan untuk pembuatan
jadwal secara manual. Program hanya
membutuhkan 30% waktu yang dibutuhkan untuk pembuatan jadwal dibandingkan dengan cara manual sehingga lebih efisien dalam waktu.
6. PENUTUP
Implementasi dari program penjadwalan
customer service telah sesuai dengan
manualisasi yang telah dilakukan sebelumnya seluruhnya bernilai sama persis.
Dari pengujian yang telah dilakukan, didapatkan ukuran populasi 110, ukuran generasi 110 dan perbandingan crossover rate dan mutation rate 0.7:0.3 menghasilkan nilai fitness yang terbaik yaitu mempunyai rata-rata sebesar 0.70922 dikarenakan nilai fitness yang masih belum terlalu optimal maka peneliti
melakukan modifikasi pada nilai bobot
constraint ketiga dan keempat yang sebelumnya bernilai 0.005 diubah menjadi 0.001 sedangkan yang lain tetap bernilai sama. Dari pengujian perbaikan bobot tersebut dihasilkan nilai fitness terbaik sebesar 0.822368421. terjadi kenaikan nilai fitness mencapai 0.1 hal tersebut dapat terjadi karena pelanggaran yang terjadi pada constraint yang lebih utama sebenarnya sudah sedikit tetapi dikarenakan nilai bobot setiap constraint sama, nilai fitness akan menjadi lebih kecil. Lalu memungkinkan constraint yang seharusnya tidak dilanggar, menjadi dilanggar kembali pada proses berikutnya.
Pada implementasi algoritma genetika untuk
penjadwalan customer service, untuk
menghasilkan jadwal yang baik maka diperlukan waktu yang cukup lama. Waktu yang dibutuhkan program untuk memproses satu penjadwalan dapat mencapai 12 jam tergantung dengan kondisi laptop atau komputer. Sedangkan proses
pembuatan jadwal secara manual dengan menggunakan Microsoft Excel dapat memakan waktu hingga 3 hari selama jam kerja. Program untuk penjadwalan customer service dengan penerapan algoritma genetika hanya memakan waktu 30% saja dibandingkan dengan cara manual dengan Microsoft Excel.
Pada penelitian berikutnya dapat digunakan metode mutasi lain seperti insertion exchange mutation dan penggunaan metode seleksi lainnya seperti binary tournament selection dan roulette wheel selection untuk menghasilkan hasil yang lebih optimal. Optimasi pada pengecekan pinalti baiknya dilakukan untuk mengurangi lama waktu yang dibutuhkan program. Lalu, pemfokusan untuk konvergensi dalam algoritma genetika juga perlu dilakukan agar penjadwalan menjadi lebih baik.
DAFTAR PUSTAKA
Baker, K.R., 1974. Introduction to Scheduling and Sequencing. New York: Wiley. Tersedia
di: Google Books
<http://booksgoogle.com> [Diakses 24
Agustus 2016]
Coley, David A., 1999. An Introduction to Genetic Algorithms for Scientists and Engineers. Singapura: World Publishing.
Tersedia di: Google Books
<http://booksgoogle.com> [Diakses 4
September 2016]
Mahmudy, WF, Marian, RM & Luong, LHS 2012b, 'Solving part type selection and loading problem in flexible manufacturing system using real coded genetic algorithms – Part II: optimization', International Conference on Control, Automation and Robotics, Singapore, 12-14 September, World Academy of Science, Engineering and Technology, pp. 706-710.
Mahmudy, W. F., 2013. Algoritma Evolusi. Malang: Program teknologi dan Ilmu Komputer (PTIIK) Universitas Brawijaya.
Mahmudy, W. F., 2015. Dasar-Dasar ALgoritma Evolusi (Modul Kuliah Semester Ganjil 2015-1016). Malang: Program Teknologi dan Ilmu Komputer (PTIIK) Universitas Brawijaya.
Mahmudy, WF, Marian, RM & Luong, LHS 2013b, 'Real coded genetic algorithms for
problem – Part II: optimization', Advanced Materials Research, vol. 701, pp. 364-369. Mahmudy, WF, Marian, RM & Luong, LHS
2013e, 'Optimization of part type selection and loading problem with alternative production plans in flexible manufacturing system using hybrid genetic algorithms – Part 2: genetic operators & results', 5th International Conference on Knowledge and
Smart Technology (KST), Chonburi,
Thailand, 31 Jan - 1 Feb, pp. 81-85.
Suprayogi, DA & Mahmudy, WF, 2015. “Penerapan Algoritma Genetika Travelling Salesman Problem with Time Window. Studi Kasus Rute Antar Jemput Laundry”, Jurnal Buana Informatika, vol. 6, no. 2, pp. 121-130.
Tyas, R. A., Rahman, M. A., & Dewi, C. 2013. Impelementasi Algoritma Genetika Untuk Optimasi 0/1 Multi-Dimensional Knapsack Problem Dalam penentuan Menu Makanan Sehat. DORO Repository Jurnal
Mahasiswa PTIIK Universitas Brawijaya, vol. 1, no. 4.
Vollman, T.E., William, L.B.,., dan D. Clay, W., 1998. Manufacturing Planning and Control Systems. New York: The McGraw-Hill Company. Tersedia di: Google Books
<http://booksgoogle.com> [Diakses 23
Agustus 2016]
Yunarto, H.I., 2006. BCI: In Sales and
Distribution. Jakarta: Elex Media
Komputindo. Tersedia di: Google Books
<http://booksgoogle.com> [Diakses 25