• Tidak ada hasil yang ditemukan

OPTIMASI MASALAH PENJADWALAN JOB-SHOP UNTUK INDUSTRI PERALATAN PENGOLAHAN HASIL PERTANIAN DENGAN MENGGUNAKAN ALGORITMA GENETIKA.

N/A
N/A
Protected

Academic year: 2021

Membagikan "OPTIMASI MASALAH PENJADWALAN JOB-SHOP UNTUK INDUSTRI PERALATAN PENGOLAHAN HASIL PERTANIAN DENGAN MENGGUNAKAN ALGORITMA GENETIKA."

Copied!
108
0
0

Teks penuh

(1)

OPTIMASI MASALAH PENJADWALAN JOB-SHOP

UNTUK INDUSTRI PERALATAN PENGOLAHAN HASIL PERTANIAN DENGAN MENGGUNAKAN ALGORITMA GENETIKA

Oleh

AYIP BAYU SATRIO F34103096

DEPARTEMEN TEKNOLOGI INDUSTRI PERTANIAN FAKULTAS TEKNOLOGI PERTANIAN

INSTITUT PERTANIAN BOGOR BOGOR

(2)

Ayip Bayu Satrio. F34103096. Optimasi Masalah Penjadwalan Job-Shop untuk Industri Peralatan Pengolahan Hasil Pertanian dengan Menggunakan Algoritma Genetika. Di bawah bimbingan Yandra Arkeman dan Hendra Gunawan. 2007.

RINGKASAN

Penjadwalan produksi di dalam dunia industri, baik industri manufaktur maupun agroindustri, memiliki peranan penting sebagai bentuk pengambilan keputusan. Perusahaan berupaya untuk memiliki penjadwalan yang paling efekif dan efisien sehingga dapat meningkatkan produktivitas yang dihasilkan dengan total biaya dan waktu seminimum mungkin.

Salah satu masalah dalam penjadwalan produksi adalah adanya kesulitan menemukan teknik yang paling tepat untuk membuat jadwal produksi yang paling baik, optimal, dan memenuhi segala kriteria-kriteria penjadwalan yang telah ditetapkan. Teknik-teknik penyusunan jadwal produksi yang sudah ada (teknik konvensional) tidak dapat dipakai karena teknik-teknik tersebut memiliki banyak kelemahan dalam menangani masalah berskala besar dan kompleks.

Permasalahan penjadwalan job shop (job shop scheduling) dengan fungsi tujuan meminimumkan total waktu proses (makespan) dapat diterjemahkan sebagai memproses setiap pekerjaan (job) dari n job pada m mesin dengan urutan tertentu. Setiap pekerjaan terdiri dari serangkaian operasi. Setiap mesin dapat menangani tidak lebih dari satu pekerjaan pada suatu waktu dan setiap pekerjaan mengunjungi mesin hanya satu kali.

Pada penelitian ini akan dicari solusi untuk menyelesaikan permasalahan penjadwalan job shop dengan menggunakan metode Genetic Algorithms (Algoritma Genetika). Prinsip kerjanya yaitu berdasarkan analogi evolusi biologi, yang terdiri dari proses penginisialisasian populasi, proses penyeleksian, proses penyilangan, dan proses mutasi. Keunggulan dari algoritma genetika ini adalah strukturnya yang sederhana, mudah mengimplementasikannya, dan cepat dalam pencapaian solusi yang optimum (efektif dan efisien).

Penelitian ini bertujuan untuk mengaplikasikan algoritma genetika dalam bidang penjadwalan produksi tipe job shop berskala besar. Implementasi dari penelitian ini adalah perancangan program GA_JobShop (Genetic Algorithms for

Job Shop Scheduling) yang dibuat menggunakan bahasa pemrograman Borland

Delphi 7.0. Representasi kromosom menggunakan preference list based representation, proses penyilangan menggunakan Partially Mapped Crossover

(PMX) yang telah dimodifikasi, proses mutasi menggunakan reciprocal exchange

mutation yang telah dimodifikasi, dan seleksi menggunakan tournament selection.

Kasus ke-1 merupakan numerical example, yaitu data yang digunakan sebagai verifikasi dan validasi program GA_JobShop. Data kasus 1 dibuat dengan mengikuti aturan permasalahan pada sebuah penjadwalan tipe job shop. Kasus 2 mengacu pada persoalan yang terdapat di dalam buku Genetic Algorithms and

Engineering Design (Gen dan Cheng, 1997). Kasus ke-3 merupakan kasus riil di

industri peralatan pengolahan hasil pertanian CV Mitra Niaga Indonesia, Bogor. Penjadwalan tipe job shop memiliki ruang pencarian (search space) sebesar (n!)m, dengan n adalah jumlah job dan m adalah jumlah mesin. Kasus 1 (3

(3)

– 3 mesin) memiliki ruang pencarian sebesar 216 calon solusi. Kasus 3 (5 job – 12 mesin) memiliki ruang pencarian sebesar 8,92×1024 calon solusi.

Hasil penilitian menunjukkan bahwa program GA_JobShop sangat efisien dalam penyelesaian masalah penjadwalan tipe job shop berskala kecil maupun besar. Program GA_JobShop telah terbukti valid, hal ini dibuktikan pada Kasus 1. Nilai makespan optimum pada Kasus 1 yang didapatkan dengan cara enumeratif (menghitung semua alternatif penjadwalan yang dapat terjadi) sama dengan nilai

makespan optimum yang didapatkan dengan menggunakan algoritma genetika

(program GA_JobShop), yaitu 11. Pada Kasus 2, solusi optimum dapat tercapai pada generasi ke-3 dengan nilai makespan 11. Algoritma genetika hanya mengeksplorasi 27,78 % ruang pencarian (search space) untuk mendapatkan nilai yang minimum pada Kasus 2. Semakin besarnya ruang pencarian (search space) maka penggunaan algoritma genetika akan semakin efisien, terlihat pada Kasus 3. Kasus 3 (5 job – 12 mesin) memiliki nilai makespan sebesar 3589 dalam satuan waktu menit.

(4)

Ayip Bayu Satrio. F34103096. The Optimization of Job Shop Scheduling Problems for Manufacture Industry of Agriculture Product Processing Machinery with Using Genetic Algorithms. Supervised by Yandra Arkeman and Hendra Gunawan. 2007.

SUMMARY

Scheduling of production in industrial world, like in manufacture industry or agroindustry has an important role in making decision. The company is trying to have effective and efficient scheduling which can increase the productivity with small amount of cost and time.

One of the problem in scheduling production is founding problem in deciding which is the right technique to make better, optimal, fulfill all the criteria in making production schedule. Techniques in arranging the production schedule that already exist (conventional techniques) cannot be used because they have a lot of weaknesses in handling large scale and complex problems.

The problem of job shop scheduling with function to minimize the total of time process which can be translated to process every job from n jobs to m machines with certain sequence. Every job has its own sequence of operation. Every machine can handle no more than one job in a time and every job visit the machine only in one time.

In this research will find the solution to solve the problem of job shop scheduling using Genetic Algorithms method. The basic principal is based on analogy of biological evolution, which contains initialization population process, selection process, crossover process, and mutation process. The benefits of genetic algorithms are the simple structure, easy to implement, and very quick in accomplishing the optimum solution (effective and efficient).

The goal of this research is to applying genetic algorithms for large scale job shop scheduling of production. The implementation of this research is to design

GA_JobShop (Genetic Algorithms for Job Shop Scheduling) program which is

using Borland Delphi 7.0. The chromosome representation are using preference list

based representation, crossover process are using partially mapped crossover (PMX)

which is been modified, the mutation process are using reciprocal exchange mutation which is been modified, and the selection process are using tournament selection.

The first case is numerical example that is the data which is being used as verification and validation of GA_JobShop program. The data of the first case is made by following job scheduling rules. The second case refer to the problem which is contain in the book of Genetic Algorithms and Engineering Design (Gen dan Cheng, 1997). The third case is a real case in manufacture industry of agriculture product processing machinery of CV Mitra Niaga Indonesia, Bogor.

The job shop scheduling has a search space for about (n!)m, n as the amount of jobs and m as the amount of machines. Case 1 (3 jobs – 2 machines) has a search space for about 36 candidates of solutions. Case 2 (3 jobs – 3 machines) has a search space for about 216 candidates of solutions. Case 3 (5 jobs – 12 machines) has a search space for about 8,92×1024 candidates of solutions.

This research shows that the GA_JobShop program is very efficient in solving problem of job shop scheduling even in large scale or small scale.

GA_JobShop program has proven valid. This has been proven in the Case 1. The

(5)

search equals with makespan optimum value by getting with using genetic algorithms (GA_JobShop program) is 11. In the Case 2, the optimum solution can be achieved in the third generation with makespan value on 11. Genetic algorithms only explored 27,78 % of search space to get minimum value in Case 2. More search space will be more efficient to use genetic algorithms, it showed on the Case 3. The Case 3 (5 jobs 12 machines) has makespan value for about 3589 in minutes.

(6)

FAKULTAS TEKNOLOGI PERTANIAN INSTITUT PERTANIAN BOGOR

OPTIMASI MASALAH PENJADWALAN JOB-SHOP

UNTUK INDUSTRI PERALATAN PENGOLAHAN HASIL PERTANIAN DENGAN MENGGUNAKAN ALGORITMA GENETIKA

SKRIPSI

Sebagai salah satu syarat untuk memperoleh gelar

SARJANA TEKNOLOGI PERTANIAN

Pada Fakultas Teknologi Pertanian Institut Pertanian Bogor

Oleh

AYIP BAYU SATRIO F34103096

Dilahirkan di Jakarta Pada tanggal 16 Agustus 1985

Tanggal kelulusan : 19 Desember 2007

Disetujui : Bogor, Januari 2008

Hendra Gunawan, S.TP Dr. Ir. Yandra Arkeman, M.Eng

(7)

KATA PENGANTAR

Puji syukur kehadirat Allah SWT penulis panjatkan karena atas segala rahmat dan karunia-Nya, penulis dapat menyelesaikan skripsi ini. Penulis memilih topik Optimasi Masalah Penjadwalan Job Shop untuk Industri Peralatan Pengolahan Hasil Pertanian dengan Menggunakan Algoritma Genetika.

Penulis mengucapkan terima kasih kepada pihak yang telah membantu dalam penyelesaian skripsi ini terutama kepada :

1. Dr. Ir. Yandra Arkeman, MEng, selaku dosen pembimbing I yang telah memberikan ide, saran, dan pengarahan kepada penulis.

2. Hendra Gunawan, S.TP, selaku pembimbing II yang telah banyak memberikan pengarahan serta bantuan dalam memberikan pemahaman kepada penulis. 3. Ir. Ade Iskandar, M.Si, selaku pembimbing praktek penelitian di industri

peralatan pengolahan hasil pertanian CV Mitra Niaga Indonesia, Bogor. 4. Dr. Ir. Suprihatin, M.Si, selaku penguji pada ujian sidang sarjana.

5. Kedua orang tua, kakak dan adik penulis, yang selalu memberikan dorongan, motivasi dan doa dengan tulus.

6. Yuvi Andria, rekan sebimbingan yang telah banyak memberikan masukan-masukan yang bermanfaat dalam penyelesaian skripsi ini.

7. Ulfa Septianty yang selalu memberikan dorongan agar skripsi ini dapat terselesaikan dengan cepat.

8. Sahabat-sahabat penulis : Adhitia Kusuma, Fadil, Jiwo, Iqbal, Anggia Resha, Devan, yang selalu memberikan semangat dan doa kepada penulis.

9. Teman-teman RISDA.

10. Teman-teman TIN ’40, khususnya Amet, Ratih Bunda, Farah, Adit, Helmi, Derry, Arvi, Desminda, Imam, Puji, Budi, Reza, Fardian, Lucia, Adam, Vivi, , Devi, Mona,Silvy dan semuanya yang telah kompak semasa kuliah..

11. Teman-teman HIMALOGIN (Himpunan Mahasiswa Teknologi Industri). 12. Seluruh panitia seminar “SIX SIGMA” tahun 2005.

13. Teman-teman satu seperjuangan PL : Syahrian, Elly, Eka, Irawan, Ratna, Iib, Shinta, Andri, Angga, Kiki, CB, dan lain-lain.

(8)

15. Puzzle Band : Fadil, Dimas, Gulit, Bembi.

16. Para penghuni Wisma Galih, terutama Bang Riki, Aldo, Oza, Mas Ade, Budi, Ian, Uda Edwin, Uda Paul, Pak Amshor, Wita, Frans, Bian, Benny dan lain-lain.

17. Mas Jerry, yang telah membantu dalam translate bahasa inggris. 18. Kemal, yang telah meminjamkan KTM UI Fakultas Teknik.

19. Ade, rekan bisnis yang setia bekerja sama di Blite Outlet and Stationery, Bateng, Kampus Dalam.

20. Seluruh pihak yang telah membantu penulis hingga akhir penyelesaian skripsi. Semoga skripsi ini dapat bermanfaat bagi kita semua.

Bogor, Desember 2007

(9)

RIWAYAT HIDUP

Penulis dilahirkan di Jakarta pada tangal 16 Agustus 1985 sebagai anak kedua dari tiga bersaudara, anak dari pasangan Ayip Muchlis dan Kussri Saparti. Selama 5 tahun pertama, Penulis dibesarkan di Jakarta dan kemudian berpindah ke Bekasi.

Pada tahun 2003 Penulis lulus dari SMU Negeri 61 Jakarta Timur dan kemudian di tahun yang sama Penulis lulus ujian SPMB (Sistem Penerimaan Mahasiswa Baru) dengan memilih IPB (Departemen Teknologi Industri Pertanian) sebagai pilihan.

Pada tahun kedua dan ketiga masa perkuliahan, Penulis aktif di dalam organisasi Himpunan Mahasiswa Teknologi Industri (Himalogin) sebagai salah satu staff PR (Public Relation). Penulis sempat menjadi ketua salah satu acara seminar yang diadakan oleh Himalogin (Seminar Six Sigma) tahun 2005. Penulis juga sempat berpengalaman sebagai MC (Master of Ceremonial) pada acara “Lepas Landas Sarjana Fateta IPB” tahun 2004 dan “Seminar Nasional Pemanfaatan Surfaktan Berbasis Minyak Sawit untuk Industri” tahun 2005.

Pada tahun 2006 Penulis melakukan Praktek Lapangan di PT Alam Indah Bunga Nusantara, daerah Cipanas, Jawa Barat, dengan kajian “Mempelajari Aspek Manajemen Sumber Daya Manusia” selama 40 hari kerja (3 Juli – 25 Agustus).

(10)

DAFTAR ISI

Halaman

KATA PENGANTAR ... i

RIWAYAT HIDUP ... iii

DAFTAR ISI ... iv

DAFTAR TABEL ... vii

DAFTAR GAMBAR ... viii

DAFTAR LAMPIRAN ... xi

I. PENDAHULUAN ... 1

A. LATAR BELAKANG ... 1

B. TUJUAN PENELITIAN ... 3

C. RUANG LINGKUP ... 3

II. TINJAUAN PUSTAKA ... 4

A. PROSES PENJADWALAN PRODUKSI ... 4

B. PENJADWALAN TIPE JOB SHOP ... 7

C. TEKNIK OPTIMASI ... 8

D. ALGORITMA GENETIKA ... 9

1. Prosedur Umum Algoritma Genetika ... 10

2. Representasi Kromosom ... 12

3. Operator-operator Algoritma Genetika ... 14

a. Seleksi dan Reproduksi ... 15

b. Penyilangan ... 16

c. Mutasi ... 20

4. Fungsi Fitness ... 21

5. Bilangan Acak ... 22

6. Kriteria Penghentian ... 22

7. Perbandingan Algoritma Genetika dengan Teknik Optimasi Konvensional ... 22

E. PENELITIAN TERDAHULU ... 24

III. METODOLOGI PENELITIAN ... 26

(11)

B. PENDEKATAN METODE ILMIAH ... 27 IV. PEMBAHASAN ... 30 A. REPRESENTASI KROMOSOM ... 30 B. FUNGSI FITNESS ... 31 C. SELEKSI (SELECTION) ... 31 D. PENYILANGAN (CROSSOVER) ... 32 E. MUTASI (MUTATION) ... 32

F. IMPLEMENTASI PROGRAM (GA_JobShop) ... 33

G. STUDI KASUS ... 37

1. Kasus 1 : Penjadwalan Job Shop Kasus 3 job – 2 mesin ... 37

a. Tampilan Program GA_JobShop ... 44

b. Input Program ... 44

c. Parameter-parameter Algoritma Genetika ... 45

d. Inisialisasi Populasi Awal ... 46

e. Evaluasi dan Seleksi Kromosom ... 47

f. Penyilangan dan Mutasi ... 49

g. Hasil Running Program GA_JobShop ... 54

2. Kasus 2 : Penjadwalan Job Shop Kasus 3 job – 3 mesin ... 58

a. Input Program ... 58

b. Parameter-parameter Algoritma Genetika ... 59

c. Inisialisasi Populasi Awal ... 60

d. Evaluasi dan Seleksi Kromosom ... 61

e. Penyilangan dan Mutasi ... 62

f. Hasil Running Program GA_JobShop ... 64

g. Efisiensi Algoritma Genetika ... 68

3. Kasus 3 : Penjadwalan Job Shop Kasus 5 job – 12 mesin ... 69

a. Definisi masing-masing job ... 72

b. Fungsi masing-masing mesin ... 72

c. Input Program ... 73

d. Parameter-parameter Algoritma Genetika ... 75

e. Inisialisasi Populasi Awal ... 75

(12)

g. Penyilangan dan Mutasi ... 77

h. Hasil Running Program GA_JobShop ... 78

i. Efisiensi Algoritma Genetika ... 82

V. KESIMPULAN DAN SARAN ... 83

A. KESIMPULAN ... 83

B. SARAN ... 84

DAFTAR PUSTAKA ... 85

(13)

DAFTAR TABEL

Halaman Tabel 1. Waktu proses, urutan mesin, dan urutan proses pada Kasus 1

(3 job – 2 mesin) ... 37 Tabel 2. Waktu proses, urutan mesin, dan urutan proses pada Kasus 2

(3 job – 3 mesin) (Gen dan Cheng, 1997) ... 57 Tabel 3. Waktu proses (satuan waktu menit), urutan mesin, dan urutan

proses pada Kasus 3 (5 job – 12 mesin) ... 69 Tabel 4. Daftar nama-nama job pada Kasus 3 ... 70 Tabel 5. Daftar nama-nama mesin pada Kasus 3 ... 70 Tabel 6. Input waktu proses dan urutan proses masing-masing job pada

(14)

DAFTAR GAMBAR

Halaman Gambar 1. Nilai minimum f (x) sama dengan maksimum –f(x) (Maarif,

1989) ... 9 Gambar 2. Prosedur umum algoritma genetika (Hopgood, 2001) ... 12 Gambar 3. Representasi kromosom jenis permutation ... 13 Gambar 4. Ilustrasi proses seleksi kromosom induk (Magnin di dalam

Gunawan, 2003) ... 16 Gambar 5. Ilustrasi prosedur PMX (Gen dan Cheng, 1997) ... 19 Gambar 6. Ilustrasi inversion mutation (mutasi inversi) (Gen dan Cheng,

1997) ... 21 Gambar 7. Ilustrasi insertion mutation (mutasi penyisipan) (Gen dan Cheng,

1997) ... 21 Gambar 8. Ilustrasi displacement mutation (mutasi pemindahan) (Gen dan

Cheng, 1997) ... 21 Gambar 9. Ilustrasi reciprocal exchange mutation (mutasi penukaran balik)

(Gen dan Cheng, 1997) ... 21 Gambar 10. Diagram alir metode ilmiah (Taylor, 2002) ... 27 Gambar 11. Diagram alir penelitian penjadwalan tipe job shop ... 28 Gambar 12. Representasi kromosom dengan preference-list-based

representation... 30

Gambar 13. Struktur program utama GA_JobShop ... 34 Gambar 14. Ilustrasi alur proses pada Kasus 1 (3 job – 2 mesin) ... 39 Gambar 15. Representasi kromosom penjadwalan tipe job shop kasus

3 job – 2 mesin ... 39 Gambar 16. Cek nilai gen yang pertama pada mesin 1 dan 2 untuk urutan

proses ke-1 ... 40 Gambar 17. Penempatan job 1 urutan proses ke-1 pada mesin 1 ... 40 Gambar 18. Cek nilai gen yang kedua pada mesin 1 dan 2 untuk urutan

proses ke-1 ... 40 Gambar 19. Penempatan job 2 urutan proses ke-1 pada mesin 2 ... 41

(15)

Gambar 20. Cek nilai gen yang ketiga pada mesin 1 dan 2 untuk urutan

proses ke-1 ... 41

Gambar 21. Penempatan job 3 urutan proses ke-1 pada mesin 1 ... 41

Gambar 22. Cek nilai gen yang pertama pada mesin 1 dan 2 untuk urutan proses ke-2 ... 42

Gambar 23. Penempatan job 1 urutan proses ke-2 pada mesin 2 ... 42

Gambar 24. Cek nilai gen yang kedua pada mesin 1 dan 2 untuk urutan proses ke-2 ... 42

Gambar 25. Penempatan job 2 urutan proses ke-2 pada mesin 1 ... 43

Gambar 26. Cek nilai gen yang ketiga pada mesin 1 dan 2 untuk urutan proses ke-2 ... 43

Gambar 27. Penempatan job 3 urutan proses ke-2 pada mesin 2 ... 43

Gambar 28. Tampilan program GA_JobShop ... 44

Gambar 29. Input nilai-nilai utama pada program GA_JobShop (Kasus 1) ... 45

Gambar 30. Input nilai-nilai parameter pada program GA_JobShop (Kasus 1) ... 46

Gambar 31. Populasi awal P(0) untuk Kasus 1 ... 47

Gambar 32. Proses penyilangan kromosom(8) dan kromosom(16) generasi ke-0 untuk Kasus 1 ... 50

Gambar 33. Populasi baru P(1) pada Kasus 1 ... 51

Gambar 34. Kromosom-kromosom pada populasi P(6) sebelum mengalami penyilangan dan mutasi di populasi P(7) ... 52

Gambar 35. Populasi P(7) terjadi mutasi pada Kasus 1 ... 52

Gambar 36. Mutasi kromosom(10) pada generasi ke-7 untuk Kasus 1 ... 53

Gambar 37. Grafik nilai makespan maksimum, makespan rata-rata, dan makespan minimum untuk 100 generasi pada Kasus 1 ... 54

Gambar 38. Grafik frekuensi penyilangan dan mutasi untuk 100 generasi pada Kasus 1 ... 55

Gambar 39. Tahapan-tahapan penerjemahan salah satu kromosom terbaik pada Kasus 1 ... 56

Gambar 40. Ilustrasi alur proses pada Kasus 2(3 job – 3 mesin) ... 58

(16)

Gambar 42. Input nilai-nilai parameter pada program GA_JobShop (Kasus 2) 60

Gambar 43. Populasi awal P(0) untuk Kasus 2 ... 60

Gambar 44. Populasi P(1) pada Kasus 2 ... 62

Gambar 45. Populasi P(7) terjadi mutasi pada Kasus 2 ... 63

Gambar 46. Kromosom-kromosom induk pada populasi P(6) yang akan diseleksi untuk disilangkan dan dimutasi pada populasi P(7) ... 63

Gambar 47. Proses mutasi kromosom(2) pada populasi P(7) ... 64

Gambar 48. Grafik nilai makespan maksimum, makespan rata-rata, dan makespan minimum untuk 100 generasi pada Kasus 2 ... 65

Gambar 49. Grafik frekuensi penyilangan dan mutasi untuk 100 generasi pada Kasus 2 ... 66

Gambar 50. Tahapan-tahapan penerjemahan salah satu kromosom terbaik pada kasus 2 ... 68

Gambar 51. Ilustrasi alur proses pada Kasus 3 (satuan waktu dalam menit) ... 71

Gambar 52. Input nilai-nilai utama pada program GA_JobShop (Kasus 3) ... 73

Gambar 53. Input nilai-nilai parameter pada program GA_JobShop (Kasus 3) ... 75

Gambar 54. Populasi awal P(0) untuk Kasus 3 ... 76

Gambar 55. Populasi P(1) pada kasus 3 (bagian 1) ... 77

Gambar 56. Populasi P(1) pada kasus 3 (bagian 2) ... 78

Gambar 57. Populasi P(2) terjadi mutasi pada Kasus 3 ... 78

Gambar 58. Grafik nilai makespan maksimum, makespan rata-rata, dan makespan minimum (satuan waktu dalam menit) untuk 100 generasi pada Kasus 3 ... 79

Gambar 59. Grafik frekuensi penyilangan dan mutasi untuk 100 generasi pada Kasus 3 ... 80

Gambar 60. Penjadwalan yang optimum pada Kasus 3 (hasil penerjemahan kromosom terbaik) ... 81

(17)

DAFTAR LAMPIRAN

Halaman Lampiran 1. Listing program utama GA_JobShop ... 87 Lampiran 2. Terjemahan seluruh kromosom dari total search space pada

Kasus 1 (validasi program GA_JobShop) secara enumeratif ... 88 Lampiran 3. Denah industri peralatan pengolahan hasil pertanian CV

Mitra Niaga Indonesia, Bogor ... 93 Lampiran 4. Gambar alat dan mesin di industri peralatan pengolahan hasil

pertanian CV Mitra Niaga Indonesia, Bogor ... 94 Lampiran 5. Laporan awal hasil running program GA_JobShop untuk

Kasus 1 ... 95 Lampiran 6. Laporan detail hasil running program GA_JobShop untuk

Kasus 1 ... 96 Lampiran 7. Laporan awal hasil running program GA_JobShop untuk

Kasus 2 ... 108 Lampiran 8. Laporan detail hasil running program GA_JobShop untuk

Kasus 2 ... 109 Lampiran 9. Laporan awal hasil running program GA_JobShop untuk

Kasus 3 ... 125 Lampiran 10. Laporan detail hasil running program GA_JobShop untuk

(18)

I. PENDAHULUAN

A. LATAR BELAKANG

Penjadwalan produksi di dalam dunia industri, baik industri manufaktur maupun agroindustri, memiliki peranan penting sebagai bentuk pengambilan keputusan. Perusahaan berupaya untuk memiliki penjadwalan yang paling efekif dan efisien sehingga dapat meningkatkan produktivitas yang dihasilkan dengan total biaya dan waktu seminimum mungkin.

Dalam sebuah sistem produksi yang kompleks dapat terjadi penumpukan pekerjaan atau barang yang membentuk antrian panjang yang tidak dapat diselesaikan secara optimal. Sistem produksi yang melibatkan banyak proses, mesin dan juga waktu proses yang bervariasi akan menemui banyak hambatan bila tidak ada metode penjadwalan yang tepat dan akhirnya berakibat pada proses produksi secara keseluruhan. Sistem tidak dapat bekerja secara efektif dan efisien.

Penjadwalan produksi melakukan pembebanan mesin berdasarkan rencana proses yang telah dibuat perencana proses. Permasalahan yang sering muncul adalah rencana proses dibuat tidak memperhatikan beban kerja mesin sehingga sering terjadi penumpukan pada mesin unggul. Solusi permasalahan dapat dilakukan dengan memperhatikan alternatif urutan proses.

Salah satu masalah dalam penjadwalan produksi adalah adanya kesulitan menemukan teknik yang paling tepat untuk membuat jadwal produksi yang paling baik, optimal, dan memenuhi segala kriteria-kriteria penjadwalan yang telah ditetapkan. Teknik-teknik penyusunan jadwal produksi yang sudah ada (teknik konvensional) tidak dapat dipakai karena teknik-teknik tersebut memiliki banyak kelemahan dalam menangani masalah berskala besar dan kompleks.

Permasalahan penjadwalan job shop (job shop scheduling) dengan fungsi tujuan meminimumkan total waktu proses (makespan) dapat diterjemahkan sebagai memproses setiap pekerjaan (job) dari n job pada m mesin dengan urutan tertentu. Setiap pekerjaan terdiri dari serangkaian

(19)

operasi. Setiap mesin dapat menangani tidak lebih dari satu pekerjaan pada suatu waktu dan setiap pekerjaan mengunjungi mesin hanya satu kali.

Alternatif urutan proses meningkatkan fleksibilitas produksi karena alternatif solusi lebih banyak. Sebagai konsekuensi, waktu pencarian solusi menggunakan metoda optimasi naik secara eksponensial. Pendekatan heuristik akan dilakukan untuk memecahkan permasalahan penjadwalan dengan memperhatikan alternatif urutan proses. Pendekatan heuristik yang digunakan adalah algoritma genetika. Pemilihan ini didasarkan bahwa algoritma penjadwalan yang ada tidak dapat melakukan penjadwalan sekaligus memilih alternatif urutan proses.

Untuk mendapatkan hasil penjadwalan yang optimum maka digunakan algoritma genetika. Sebuah solusi penjadwalan dikatakan optimum apabila memiliki waktu rata-rata produksi seminimum mungkin. Hasil operasi genetik akan diubah kembali menjadi sebuah jadwal yang mudah dipahami oleh pengguna.

Pada penelitian ini akan dicari solusi untuk menyelesaikan permasalahan penjadwalan job shop dengan menggunakan metode Genetic

Algorithms (Algoritma Genetika). Prinsip kerjanya yaitu berdasarkan analogi

evolusi biologi, yang terdiri dari proses penginisialisasian populasi, proses penyeleksian, proses penyilangan, dan proses mutasi. Keunggulan dari algoritma genetika ini adalah strukturnya yang sederhana, mudah mengimplementasikannya, dan cepat dalam pencapaian solusi yang optimum (efektif dan efisien).

Penjadwalan produksi yang kurang baik dapat mengakibatkan keterlambatan pengiriman produk. Penjadwalan job shop merupakan suatu permasalahan optimasi kombinatorial yang kompleks yang membutuhkan waktu komputasi yang besar dalam proses pencarian solusi terbaiknya. Algoritma Genetika mampu menyelesaikan permasalahan penjadwalan job

(20)

B. TUJUAN PENELITIAN

Fokus penelitian ini adalah pada masalah penjadwalan tipe job shop (tanpa kendala) dengan menggunakan Algoritma Genetika. Tujuan yang ingin dicapai adalah sebagai berikut :

1. Membuat metode optimasi Algoritma Genetika untuk memecahkan masalah pada kasus penjadwalan job shop yang bersifat kompleks.

2. Mengaplikasikan metode Algoritma Genetika yang telah dibuat untuk memecahkan masalah pada kasus data numerical example dengan tujuan verifikasi dan validasi.

3. Mengaplikasikan metode Algoritma Genetika yang telah dibuat untuk memecahkan masalah pada kasus penjadwalan industri peralatan pengolahan hasil pertanian.

C. RUANG LINGKUP

Ruang lingkup pada penelitian ini dibatasi oleh beberapa hal berikut : 1. Metode optimasi yang digunakan adalah metode Algoritma Genetika. 2. Fungsi tujuan yang akan dievaluasi dalam penelitian ini adalah fungsi

makespan (waktu penyelesaian pekerjaan secara keseluruhan).

3. Objek pada penelitian ini adalah kasus penjadwalan industri peralatan pengolahan hasil pertanian.

(21)

II. TINJAUAN PUSTAKA

A. PROSES PENJADWALAN PRODUKSI

Baker (1974) mendefinisikan penjadwalan sebagai proses pengalokasian sumber-sumber yang ada untuk menjalankan sekumpulan tugas dalam jangka waktu tertentu. Penjadwalan merupakan kegiatan yang penting dalam perencanaan dan pengendalian produksi karena penjadwalan yang baik akan memaksimumkan efektivitas pemanfaatan setiap sumber daya yang ada.

Penjadwalan digambarkan sebagai alokasi sumber daya dari waktu ke waktu untuk melaksanakan suatu kumpulan pekerjaan. Menurut Russel dan Taylor (1995), penjadwalan merupakan tahap terakhir dari perencanaan sebelum dilaksanakannya proses produksi. Selain itu penjadwalan merupakan penjabaran kegiatan-kegiatan yang direncanakan yaitu yang berisikan kapan dimulainya kegiatan produksi sehingga perencanaan kebutuhan yang telah ditetapkan dapat dipenuhi tepat pada waktunya.

Sebuah penjadwalan dapat melakukan operasi dalam rentang waktu yang telah ditentukan oleh mesin. Penjadwalan yang menggunakan waktu yang terpendek merupakan masalah yang dicari penyelesaiannya (Gen dan Cheng, 1997).

Penjadwalan memiliki beberapa tujuan. Namun tujuan tersebut dapat saling berkontradiksi. Maka dari itu diperlukan upaya pengoptimasian penjadwalan. Adapun tujuan penjadwalan produksi antara lain (Nahmias, 1997) :

1. Memenuhi waktu pesanan

2. Meminimumkan total waktu penyelesaian (makespan) 3. Menghasilkan tingkat kegunaan mesin

4. Menetapkan urutan pekerjaan yang tepat

5. Meminimumkan biaya produksi dan tenaga kerja

Penjadwalan produksi dapat diklasifikasi berdasarkan kriteria sebagai berikut :

1. Penjadwalan produksi secara umum, yaitu : a. Penjadwalan maju (forward scheduling)

(22)

Operasi penjadwalan dimulai dari tanggal penerimaan order secara maju. Konsekuensinya terjadi persediaan bahan baku sampai pada gilirannya diproses.

b. Penjadwalan mundur (backward scheduling)

Teknik penjadwalan dimulai dari waktu penyelesaian operasi terakhir. Keuntungannya adalah mengurangi persediaan barang setengah jadi (work in process).

2. Penjadwalan produksi berdasarkan mesin yang digunakan, yaitu : a. Model Single-Machine

Model ini hanya berisi sejumlah m mesin yang sejenis, yang harus memproses sejumlah job yang terdiri dari satu operasi. Setiap job dapat dikerjakan pada salah satu mesin yang ada tersebut. Model ini banyak digunakan pada penjadwalan yang menggunakan metode dekomposisi, yaitu suatu model penjadwalan yang memecahkan permasalahan penjadwalan yang kompleks ke dalam sejumlah permasalahan yang lebih sederhana dalam bentuk single-machine. b. Model Paralle-Machine

Merupakan suatu bentuk umum dari model single-machine. Model ini terdapat pada industri yang proses produksinya terdiri dari berbagai tahapan, di mana tiap tahapan tersebut terdiri dari sejumlah mesin sejenis yang tersusun secara paralel. Setiap job dapat dikerjakan pada salah satu mesin yang ada. Ada suatu kondisi di mana mesin-mesin yang tersusun secara paralel tersebut tidak identik satu sama lain dalam hal kemampuan berprosesnya.

c. Model Flow Shop

Suatu proses manufaktur seringkali harus melewati banyak operasi yang membutuhkan jenis mesin yang berbeda pada tiap operasinya. Jika rute yang harus dilewati untuk setiap job adalah sama, maka bentuk konfigurasi ini disebut juga model flow shop. Mesin-mesin pada model ini disusun secara seri dan pada saat sebuah job selesai diproses pada satu mesin, maka job tersebut akan meninggalkan

(23)

mesin tersebut untuk kemudian mengisi antrian pada mesin berikutnya untuk diproses.

d. Model Job Shop

Dalam suatu proses manufaktur yang memerlukan banyak operasi, seringkali rute yang harus dilalui setiap job adalah tidak sama. Model seperti ini disebut juga model job shop. Bentuk sederhana dari model ini mengasumsikan bahwa setiap job hanya melewati satu jenis mesin sebanyak satu kali dalam rutenya pada proses tersebut. Namun ada juga model lainnya di mana setiap job diperbolehkan untuk melewati mesin sejenis lebih dari satu kali pada rutenya. Model ini disebut juga job shop dengan recirculation (pengulangan).

3. Penjadwalan produksi berdasarkan pola kedatangan pekerjaan, yaitu: a. Penjadwalan statis

Pekerjaan datang bersamaan dan siap dikerjakan pada mesin yang tidak bekerja. Kondisi semua stasiun kerja dan perlengkapannya selalu tersedia pada saat itu.

b. Penjadwalan dinamis

Pekerjaan datang terus-menerus pada waktu yang berbeda-beda. Pendekatan yang sering digunakan pada penjadwalan ini adalah penggunaan aturan dispatching yang berbeda untuk setiap stasiun kerja.

4. Penjadwalan produksi berdasarkan sifat informasi yang diterima, yaitu: a. Penjadwalan deterministik

Informasi yang diperoleh bersifat pasti, seperti waktu kedatangan job, waktu setup, dan waktu proses.

b. Penjadwalan stokastik

Informasi yang diperoleh tidak pasti, tetapi memiliki kecenderungan yang jelas atau menyangkut adanya distribusi probabilitas tertentu, misalnya kedatangan pekerjaan bersifat acak.

(24)

B. PENJADWALAN TIPE JOB SHOP

Salah satu model penjadwalan yang cukup banyak ditemui adalah penjadwalan job shop. Pada model ini, job-job yang diproses biasanya memiliki rute dan waktu pemrosesan yang berbeda-beda satu sama lain. Setiap

job terdiri dari operasi-operasi yang masing-masing diproses di satu mesin

tertentu karena rute proses dari setiap job berbeda, maka kemungkinan jadwal yang dapat dihasilkan dan kendala yang muncul menjadi sangat banyak. Akibatnya, model ini menimbulkan masalah penjadwalan yang kompleks dalam arti bahwa semua kendala dalam penjadwalan harus terpenuhi dan dalam arti bahwa jadwal yang bisa memenuhi fungsi tujuan penjadwalan secara optimal sangat sulit ditemukan di antara sekian banyak kemungkinan (Bagchi, 1999).

Penjadwalan job shop merupakan masalah penempatan sejumlah n-job pada sejumlah m-mesin dengan urutan proses. Setiap job dirancang sebagai satu set operasi dan mesin yang telah di-set untuk setiap operasinya. Setiap operasi dapat dikarakterisasi dengan mesin tertentu dan waktu proses produksi yang telah ditentukan. Untuk setiap proses produksi dapat digunakan batasan dalam menentukan job dan mesin yang akan digunakan, yaitu (Gen dan Cheng, 1997) :

1. Satu pekerjaan tidak akan menggunakan mesin yang sama sebanyak lebih dari satu kali

2. Tidak adanya batasan yang lebih tinggi pada saat operasi dengan pekerjaan yang berbeda

3. Sebuah operasi tidak akan bisa disela dengan operasi yang lain

4. Sebuah mesin hanya akan melakukan sebuah pekerjaan dalam satu waktu 5. Tidak adanya waktu atau pekerjaan yang dispesifikasi

Menurut Kusuma (2001), karakteristik penjadwalan produksi tipe

job-shop adalah penggunaan mesin oleh lebih dari satu pekerjaan sehingga ada

keterbatasan waktu penggunaan. Berbeda dengan masalah penjadwalan seri dan parallel, karakteristik pekerjaan yang harus diselesaikan pada penjadwalan tipe job-shop harus melewati beberapa mesin (routing) dan tiap rute yang ditempuh masing-masing pekerjaan berlainan.

(25)

Penjadwalan job-shop memiliki beberapa definisi (Kusuma, 2001) yang meliputi :

1. Jadwal fisibel, yaitu jadwal dimana seluruh operasi dari semua pekerjaan telah ditugaskan dan ketentuan rute operasi telah terpenuhi (tidak ada

overlap antar operasi).

2. Jadwal semi-aktif, yaitu sekumpulan jadwal fisibel dimana tidak satu pun operasi dapat dijadwalkan lebih awal tanpa mengubah susunan operasi pada mesin.

3. Jadwal aktif, yaitu sekumpulan jadwal fisibel dimana tidak satu pun operasi dapat dipindahkan lebih awal tanpa menunda operasi lain.

4. Jadwal non-delay, yaitu sekumpulan jadwal fisibel dimana tidak satu pun mesin dibiarkan menganggur jika pada saat yang bersamaan terdapat operasi yang memerlukan mesin tersebut.

Berdasarkan ada tidaknya kendala, masalah penjadwalan job-shop dapat dibagi menjadi dua tipe yaitu unconstrained job shop (tanpa kendala) dan constrained job shop (dengan kendala). Pada tipe unconstrained job shop, tidak ada kendala-kendala yang dapat menghambat proses implementasi pekerjaan pada setiap mesin produksi sehingga semua alternatif jadwal bersifat legal.

C. TEKNIK OPTIMASI

Optimasi adalah suatu aktivitas untuk mendapatkan hasil terbaik dari suatu permasalahan dengan batasan-batasan yang diberikan. Tujuan utama setiap keputusan yang diambil adalah untuk meminimumkan usaha yang diperlukan atau biaya operasional dan memaksimumkan keuntungan atau nilai tambah. Bila usaha yang diperlukan atau keuntungan yang diharapkan dalam suatu kondisi nyata dapat dinyatakan sebagai fungsi dari peubah keputusan, maka optimasi dapat didefinisikan sebagai proses pencapaian kondisi maksimum atau minimum dari fungsi tersebut. Dapat dilihat pada Gambar 1 bahwa apabila nilai x* merupakan nilai x dimana nilai fungsi f (x) minimum, maka pernyataan ini sama dengan nilai maksimum dari negatif fungsi tersebut (-f(x)) (Maarif, 1989).

(26)

x*

0 x

-f(x) f(x) f(x)

Gambar 1. Nilai minimum f (x) sama dengan maksimum –f(x)

(Maarif, 1989)

D. ALGORITMA GENETIKA

Seorang professor di Universitas Michigan bernama John Holland (1975) telah menemukan sebuah teknik baru yang berfungsi untuk memecahkan masalah-masalah rumit dan komplek yang tidak dapat dipecahakan oleh teknik konvensional. Teknik tersebut dijelaskan pertama kali di dalam bukunya yang berjudul Adaptation in Natural and Artificial

Systems. Teknik yang diperkenalkan tersebut diterjemahkan ke dalam bahasa

komputer dan prosesnya meniru proses alam, yaitu evolusi. Teknik tersebut dikenal dengan nama algoritma genetika (genetic algorithms).

Beberapa tahun kemudian, tepatnya pada tahun 1989, David Goldberg, meluncurkan buku berjudul Genetic Algorithm in Search, Optimization, and

Machine Learning setelah berhasil mengaplikasikan algoritma genetika untuk

perancangan sistem perpipaan distribusi gas alam. Berdasarkan hasil risetnya, ia berhasil membuktikan bahwa algoritma genetika menghasilkan solusi untuk menyelesaikan permasalahan perancangan sistem perpipaan distribusi gas alam berdasarkan parameter-parameter kesuksesan sistem perancangan pipa.

Algorima genetika diaplikasikan pada berbagai bidang antara lain, seperti pada desain mesin jet pesawat terbang, prediksi tingkat suku bunga, pengendalian persediaan (inventori), perencanaan dan penjadwalan produksi, dan otomatisasi sistem produksi (Gunawan, 2003).

(27)

1. Prosedur Umum Algoritma Genetika

Algoritma genetika adalah teknik pencarian dan optimasi yang meniru proses evolusi dan perubahan genetika pada struktur kromosom makhluk hidup. Algoritma genetika mulai bekerja pada sekumpulan calon solusi yang dinamakan populasi awal, yang kemudian dibangkitkan secara acak. Masing-masing individu di dalam populasi awal biasa disebut dengan kromosom. Kromosom biasa dalam bentuk string biner (kode 0 dan 1), meskipun tidak selalu. Selanjutnya kromosom-kromosom tersebut diregenerasi oleh operator-operator pada algoritma genetika melalui beberapa generasi. Masing-masing kromosom pada setiap generasi dilihat nilai fitness-nya (Goldberg, 1989).

Pada generasi baru, kromosom baru yang terbentuk disebut kromosom anak (offspring). Kromosom anak terbentuk dari (1) penggabungan antar dua kromosom yang menggunakan operator penyilangan atau (2) hasil modifikasi kromosom yang menggunakan operator mutasi. Generasi baru dibentuk oleh (1) pemilihan, yaitu dilihat dari nilai fitness-nya, baik kromosom induk maupun kromosom anak (offspring) dan (2) penyisihan, yaitu menjaga agar ukuran populasi tetap konstan. Kromosom yang lebih baik, besar kemungkinan untuk dipilih di generasi selanjutnya. Setelah dihasilkan beberapa generasi, terbentuklah sekumpulan kromosom terbaik yang diharapkan mampu memberikan solusi optimum (Gen dan Cheng, 1997).

Penciptaan Algoritma Genetika oleh Holland (1975) memberi asumsi bahwa solusi dari induk akan mencari nilai fitness yang tinggi dari beberapa kromosom yang berbeda sehingga pencarian akan dikombinasikan secara penyilangan yang selanjutnya akan direproduksi dan menghasilkan keturunan yang menjadi calon solusi pada generasi selanjutnya (Bagchi, 1999).

Setiap individu dalam sebuah populasi dipilih berdasarkan pada nilai fitness-nya. Nilai fitness akan semakin tinggi dengan adanya kesempatan kromosom untuk bereproduksi pada generasi berikutnya.

(28)

Untuk mengimplementasikan Algoritma Genetika, membuat suatu keputusan harus memenuhi syarat berikut ini (Hopgood, 2001) :

1. Merepresentasi calon solusi ke dalam sebuah bilangan/simbol yang dikenal dengan sebutan “kromosom”

2. Menentukan ukuran populasi

3. Mengevaluasi nilai fitness dari masing-masing populasi

4. Memilih individu-individu untuk bereproduksi pada generasi berikutnya dengan melihat nilai fitness-nya

5. Menciptakan sebuah generasi baru sebagai calon solusi dari populasi yang ada

6. Menghentikan proses evolusi apabila kriteria penghentian terpenuhi Di dalam basis algoritma, ada beberapa asumsi dibuat berdasarkan (Hopgood, 2001) :

1. Inisial populasi digenerasikan secara random 2. Individu dievaluasi berdasarkan fungsi fitness

3. Individual-individual diseleksi untuk reproduksi berdasarkan seleksi, kecocokan sebuah individu, dan kemiripan yang akan diseleksi

4. Reproduksi dari sebuah kromosom akan dihasilkan pada generasi berikutnya yang merupakan hasil dari perkembangbiakan antara sepasang kromosom dengan menggunakan operator penyilangan yang kemudian akan diaplikasikan pada operator mutasi untuk setiap keturunanan

(29)

Prosedur umum algoritma genetika dapat terlihat pada Gambar 2 berikut :

Gambar 2. Prosedur umum algoritma genetika (Hopgood, 2001)

2. Representasi Kromosom

Pengkodean (encoding) calon solusi untuk suatu masalah ke dalam sebuah bentuk representasi kromosom merupakan hal yang paling utama pada pengaplikasian algoritma genetika. Holland (1975) memperkenalkan pertama kali representasi kromosom ke dalam bentuk string biner, yang disimbolkan dengan angka nol (0) dan (1).

Menghasilkan generasi baru

Mulai

Seleksi individu Terjadi proses mutasi

dengan peluang Pm

Terjadi proses penyilangan dengan peluang Pc

Evaluasi nilai fitness masing-masing individu Inisialisasi populasi secara

acak Berhenti Kriteria penghentian terpenuhi ? Ya Tidak

(30)

Pada pengaplikasian algoritma genetika, khususnya di dunia industri, string biner jarang digunakan karena bukan merupakan kode alam. Oleh karena itu, telah diciptakan beberapa teknik pengkodean non-string untuk berbagai masalah khusus, sebagai contoh real number code (kode bilangan riil) untuk masalah optimasi berkendala dan integer coding (kode integer) untuk masalah optimasi kombinatorial. Sebuah masalah akan ditransformasikan ke dalam representasi kromosom yang tepat. Hal ini penting untuk pengaplikasian algoritma genetika dalam memecahkan masalah-masalah di dunia nyata (Gen dan Cheng, 1997).

Beberapa peneliti telah memperkenalkan beberapa bentuk representasi baru sesuai dengan masalah yang akan dipecahkan.

Permutation representation merupakan bentuk representasi baru yang

telah diperkenalkan oleh Gen dan Cheng (1997). Representasi ini cocok untuk digunakan untuk masalah perjalanan dan penjadwalan. Sebagai contoh, perjalanan ke 9 kota dengan urutan sebagai berikut :

3 – 2 – 5 – 4 – 7 – 1 – 6 – 9 – 8

Urutan perjalanan di atas dijadikan ke dalam bentuk representasi kromosom :

Gambar 3. Representasi kromosom jenis permutation

Setiap penerjemahan algoritma genetika di dalam masalah job-shop akan digunakan sebagai alat untuk mencari solusi yang sesuai untuk masalah operasi genetika job-shop yang terjadi sehingga didapatkan semua kromosom yang dapat digenerasikan. Sebuah kromosom memiliki fase inisial atau proses evolusi, proses ini akan menghasilkan sebuah penjadwalan yang layak. Fase ini akan menjadi sangat penting dan akan mempengaruhi langkah selanjutnya dalam algoritma genetika. Salah satu representasi untuk masalah penjadwalan job shop yang dapat digunakan adalah preference-list-based representation (Gen dan Cheng, 1997).

(31)

Preference-list-based representation pertama kali diperkenalkan

oleh Davis untuk berbagai macam masalah penjadwalan. Falenauer dan Bouffouix menemui keterkaitan antara masalah penjadwalan job shop dengan waktu dan tanggal yang telah ditetapkan. Croce, Tadei, dan Volta mengaplikasikan pada pencarian solusi penjadwalan job-shop (Gen dan Cheng, 1997).

Untuk pemecahan masalah job shop dengan pekerjaan sebanyak n dan mesin sebanyak m, sebuah kromosom akan terdiri dari m subkromosom untuk setiap mesin. Setiap subkromosom adalah simbol string dengan panjang n, dan setiap simbol akan teridentifikasi sebagai sebuah operasi untuk dikerjakan pada mesin seharusnya. Hal ini dilakukan karena representasi berdasarkan daftar referensi dan setiap mesin mempunyai daftar referensinya sendiri. Untuk jadwal di lapangan akan ditentukan dengan menggunakan kromosom yang berasal dari simulasi, dimana analisis didasarkan pada urutan menunggu pada jadwal, dan operasi yang muncul pertama kali akan ditunjukkan untuk melakukan pekerjaan untuk pertama kali.

3. Operator-operator Algoritma Genetika

Proses dalam algoritma genetika menggunakan inisial populasi yang akan digunakan sebagai input. Proses pada algoritma genetika tersebut terdiri dari beberapa operator, yaitu seleksi, reproduksi, penyilangan, dan mutasi untuk menghasilkan progenies (sebagai kandidat generasi berikutnya untuk mengatasi masalah optimasi). Progenies akan dievaluasi dan dicoba untuk hasil akhir. Jika kriteria hasil akhir telah ditemukan maka ketiga operator tersebut dapat diiterasikan ke dalam populasi, kemudian prosedur akan dilanjutkan sampai pada kriteria hasil akhir pada populasi. Prosedur akan terus dilanjutkan sampai pada penemuan hasil akhir. Di dalam iterasi dari operasi-operasi yang berlaku yaitu untuk menghasilkan keturunan yang disebut sebagai sebuah generasi penemuan akhir dari algoritma genetika (Bagchi, 1999).

(32)

a. Seleksi dan Reproduksi

Algoritma genetika selalu diawali dengan seleksi secara acak dari populasi dan kemudian dijadikan inisial solusi string acak dari populasi yang menampilkan sebuah variabel keputusan dari masalah yang ada. Masing-masing inisial string dievaluasi sampai pada sebuah pencarian nilai fitness. Jika masalah kepuasan (berdasarkan beberapa kemampuan penerimaan atau pemberhentian pada kriteria yang dicari) sudah ditemukan maka pencarian akan dihentikan (Bagchi, 1999).

Reproduksi selalu dilakukan oleh operator pertama yang diaplikasikan pada sebuah keberadaan populasi untuk menciptakan

progenies. Reproduksi dimulai dengan mencari kromosom induk yang

baik dari mating pool. Hal penting dari reproduksi adalah memilih kromosom dengan fitness di atas rata-rata dari keberadaan populasi yang ada dan memasukkan ke dalam mating pool. Hasil dari seleksi populasi dengan nilai fitness rata-rata yang lebih baik yang akan berlaku sebagai kromosom induk untuk generasi berikutnya (Bagchi, 1999).

Goldberg (1989) memperkenalkan teknik seleksi dalam algoritma genetika, salah satunya adalah teknik seleksi cakram rolet (roulette wheel selection). Teknik seleksi ini diilustrasikan sebagai teknik pemutaran cakram rolet. Suatu slot pada cakram rolet ditempati oleh setiap kromosom di dalam sebuah populasi. Ukuran slot sama dengan rasio antara nilai fitness suatu kromosom dengan total nilai

(33)

Gambar 4. Ilustrasi proses seleksi kromosom induk (Magnin di dalam

Gunawan, 2003)

Teknik seleksi lainnya adalah seleksi turnamen (tournament

selection). Seleksi ini akan membandingkan antara dua buah

kromosom dalam populasi yang dipilih secara acak. Salah satu dari kromosom akan terpilih apabila memenuhi atau mendekati nilai fitness (Hopgood, 2001).

b. Penyilangan

Penyilangan atau crossover juga dikenal sebagai rekombinasi. Operasi penyilangan akan mengalami pertukaran informasi di antara string yang ada di dalam mating pool untuk menciptakan string-string sebagai solusi. Representasi string-string yang ada berisi informasi yang terdiri dari gen-gen dengan bit yang merupakan string. Untuk contohnya, string dengan 010111 akan mempunyai informasi spesifik dengan 6 posisi yang jelas berbeda, seperti yang dilakukan kromosom dalam genetika alam. Di dalam penyilangan, dua string dapat diambil dari mating pool dan beberapa porsi dari string-string ini akan saling bertukaran. Implementasi penyilangan ini secara umum akan menggunakan satu titik untuk proses penyilangan dimana terjadi penyilangan secara acak yang merupakan pemilihan secara acak

(34)

sepanjang string yang ada dan semua bit-bit akan menyebrang dan saling bertukaran (Bagchi, 1999).

Penyilangan merupakan operator primer dalam algoritma genetika. Tingkat penyilangan atau peluang penyilangan (Pc) adalah rasio antara jumlah kromosom yang diharapkan mengalami penyilangan dalam setiap generasi dengan jumlah kromosom total dalam populasi. Tingkat penyilangan yang tinggi menyebabkan semakin besarnya kemungkinan algoritma genetika mengeksplorasi ruang pencarian sekaligus mempercepat ditemukannya solusi optimum. Akan tetapi jika tingkat penyilangan terlalu tinggi juga kurang efisien. Penentuan nilai Pc yang tepat sangat tergantung pada permasalahan yang dihadapi (Gunawan, 2003).

Nilai Pc biasanya cukup tinggi (berkisar antara 0,6 – 1). Proses penyilangan akan terjadi pada sepasang kromosom jika suatu bilangan yang dibangkitkan secara acak (r), 0 r 1, nilainya kurang dari atau sama dengan Pc. Bilangan acak tersebut dibangkitkan setiap kali akan menyilangkan sepasang kromosom. Tingkat penyilangan yang tinggi menyebabkan semakin besar kemungkinan algoritma genetika mengeksplorasi ruang pencarian sekaligus mempercepat ditemukannya solusi optimum. Peluang penyilangan yang tepat dan efektif hanya dapat diketahui melalui pengujian atau percobaan khusus terhadap masalah yang bersangkutan (Syarif dan Mitsuo, 2003).

Operator penyilangan yang diperkenalkan oleh Holland (1975) adalah one-point crossover (penyilangan satu titik), yang biasa digunakan untuk kromosom dengan representasi biner. Beberapa operator penyilangan telah diperkenalkan untuk digunakan pada

permutation representation, seperti partial-mapped crossover (PMX), order crossover (OX), cycle crossover (CX), position-based crossover, order-based crossover, dan heuristic crossover (Gen dan Cheng,

1997).

Goldberg dan Lingle (1985) telah memperkenalkan teknik PMX sebagai salah satu operator penyilangan. Teknik tersebut

(35)

merupakan kelanjutan perbaikan dari penyilangan dua titik (two-point

crossover) pada permutation representation. PMX digunakan untuk

memperbaiki prosedur adanya kromosom illegal dari penyilangan dua titik. Prosedur PMX adalah sebagai berikut :

Langkah 1 :

Pilih dua buah posisi (string) secara acak pada dua kromosom induk yang akan disilangkan. String-string yang berada di antara dua buah posisi tersebut dinamakan mapping section.

Langkah 2 :

Pertukarkan dua buah mapping section antara dua kromosom induk sehingga dihasilkan kromosom anak (offspring).

Langkah 3 :

Tentukan mapping relationship (hubungan pemetaan) di antara dua buah mapping section.

Langkah 4 :

Legalkan offspring (kromosom anak) hasil mapping relationship.

Contoh ilustrasi pengaplikasian prosedur PMX terdapat pada Gambar 5 berikut ini :

(36)

Langkah 1 :

Pilih mapping section secara acak pada dua buah kromosom induk.

Langkah 2 :

Pertukarkan mapping section antara dua kromosom induk sehingga menghasilkan dua kromosom anak.

Langkah 3 :

Tentukan mapping relationship antara dua buah mapping section.

Langkah 4 :

Legalkan offspring (kromosom anak) hasil mapping relationship.

Gambar 5. Ilustrasi prosedur PMX (Gen dan Cheng, 1997)

4 9 2 5 3 1 6 Parent 1 1 2 3 4 5 6 7 8 9 Parent 2 5 4 6 9 2 1 7 8 3 Offspring 2 5 4 3 4 5 6 7 8 3 Offspring 1 1 2 6 9 2 1 7 8 9 3 4 5 6 6 9 2 1 Offspring 2 2 9 3 4 5 6 7 8 1 Offspring 1 3 5 6 9 2 1 7 8 4

(37)

c. Mutasi

Mutasi adalah operator pendukung dalam algoritma genetika yang melakukan perubahan acak secara spontan pada struktur kromosom. Mutasi akan menghasilkan kromosom anak dengan satu atau lebih gen (string) yang berubah. Dalam algoritma genetika, mutasi sangat berperan penting, diantaranya adalah (a) menempatkan kembali kromosom-kromosom yang telah hilang dari populasi akibat proses seleksi dan (b) memunculkan kromosom-kromosom yang belum pernah ada pada populasi sebelumnya (Gen dan Cheng, 1997).

Peluang mutasi (Pm) didefinisikan sebagai persentase kromosom yang akan mengalami mutasi terhadap total kromosom di dalam populasi. Mutasi akan mencoba memunculkan kromosom baru pada sebuah populasi. Jika peluang mutasi terlalu kecil maka banyak kromosom yang memiliki potensi (nilai fitness yang tinggi) tidak akan pernah muncul. Akan tetapi, apabila peluang mutasi terlalu besar maka akan banyak bermunculan kromosom yang kemungkinan tidak memiliki potensi dalam pencapaian solusi optimum, kromosom anak (offspring) akan kehilangan kemiripan dengan kromosom induk yang memiliki potensi pada populasi sebelumnya dan algoritma genetika akan kehilangan kemampuan untuk belajar dari proses pencarian yang lalu (Gen dan Cheng, 1997).

Nilai Pm yang digunakan biasanya sangat kecil (berkisar antara 0,001 – 0,2). Proses mutasi akan terjadi pada suatu gen, jika suatu bilangan yang dibangkitkan secara acak r, 0 r 1, nilainya kurang dari atau sama dengan Pm (Syarif dan Mitsuo, 2003).

Beberapa operator mutasi yang digunakan pada permutation

representation adalah inversion mutation (mutasi inversi), insertion mutation (mutasi penyisipan), displacement mutation (mutasi pemindahan), dan reciprocal exchange mutation (mutasi penukaran balik). Ilustrasi proses mutasi dapat dilihat pada gambar-gambar di bawah ini (Gambar 6 – 9) :

(38)

Gambar 6. Ilustrasi inversion mutation (mutasi inversi)

(Gen dan Cheng, 1997)

Gambar 7. Ilustrasi insertion mutation (mutasi penyisipan)

(Gen dan Cheng, 1997)

Gambar 8. Ilustrasi displacement mutation (mutasi pemindahan)

(Gen dan Cheng, 1997)

Gambar 9. Ilustrasi reciprocal exchange mutation (mutasi penukaran

balik) (Gen dan Cheng, 1997)

4. Fungsi Fitness

Fungsi fitness merupakan alat ukur yang digunakan untuk mengevaluasi kromosom-kromosom pada setiap generasi. Kualitas sebuah kromosom di dalam suatu populasi ditunjukkan oleh besarnya nilai fitness. Penghitungan nilai fitness berdasarkan masalah yang akan diselesaikan.

Fungsi fitness digunakan untuk memberikan ciri dan mengukur seberapa baik sebuah solusi. Fungsi fitness adalah fungsi yang akan mengukur tingkat kebugaran suatu kromosom dalam populasi. Semakin

Kromosom Kromosom ($) 7 8 9 1 2 3 4 5 6 7 8 9 1 2 6 5 4 3 Kromosom 1 2 3 4 5 6 7 8 9 Kromosom ($) 1 2 6 3 4 5 7 8 9 Kromosom 1 2 3 4 5 6 7 8 9 Kromosom ($) 1 2 3 7 8 4 5 6 9 Kromosom 1 2 3 4 5 6 7 8 9 Kromosom ($) 1 2 6 4 5 3 7 8 9

(39)

besar nilai fitness, semakin bugar pula kromosom dalam populasi sehingga semakin besar kemungkinan kromosom tersebut dapat tetap bertahan pada generasi berikutnya (Chen, Ian dan Cao, 2003).

Pada masalah maksimasi, semakin tinggi nilai fitness sebuah kromosom maka besar kemungkinan untuk tetap bertahan di generasi berikutnya. Sebaliknya, pada masalah minimasi, semakin rendah nilai

fitness sebuah kromosom maka besar kemungkinan untuk tetap bertahan di

generasi berikutnya.

5. Bilangan Acak

Bilangan acak merupakan suatu bilangan (r), 0 r 1, yang harus diinput pada komputer untuk dibangkitkan secara acak. Bilangan acak tersebut dibangkitkan setiap kali akan menyilangkan sepasang kromosom, melakukan mutasi, serta memunculkan kromosom-kromosom pada populasi awal. Bilangan acak pada komputer tidak sama dengan bilangan acak yang terjadi pada alam. Alam memiliki bilangan acak yang sempurna, sedangkan komputer memiliki pola pengacakan tersendiri untuk masing-masing bilangan yang berbeda.

6. Kriteria Penghentian

Proses pencarian algoritma genetika akan terus berjalan hingga kriteria penghentian terpenuhi. Kriteria penghentian merupakan penghentian eksekusi program algoritma genetika, yaitu menentukan jumlah generasi maksimum, menentukan selisih nilai fitness rata-rata tertentu antara suatu generasi dengan generasi sebelumnya, atau menentukan batas tingkat keragaman struktur kromosom. Kriteria penghentian yang paling sering dipakai adalah penentuan jumlah generasi maksimum karena penggunaannya yang mudah pada implementasi program di komputer.

(40)

7. Perbandingan Algoritma Genetika dengan Teknik Optimasi Konvensional

Perbedaan algoritma genetika dengan teknik optimasi konvensional (Goldberg, 1989) adalah sebagai berikut :

a. Algoritma genetika bekerja pada sekumpulan solusi itu sendiri yang telah dikodekan, bukan pada solusi itu sendiri

Algoritma genetika memiliki ruang pencarian (search space) yang dapat didiskritkan (diputus-putus) meskipun fungsi objektifnya berupa fungsi kontinyu karena bekerja dengan pengkodean variabel solusi. Fungsi diskrit (fungsi terputus-putus) memiliki keuntungan yaitu tidak membutuhkan usaha tambahan seperti pencarian gradien pada fungsi kontinyu, sehingga algoritma genetika dapat diterapkan untuk optimasi di berbagai jenis fungsi dan bidang aplikasi.

b. Algoritma genetika melakukan pencarian pada suatu populasi (banyak titik calon solusi), bukan hanya pada satu titik

Teknik pencarian pada teknik optimasi konvensional dilakukan hanya pada satu titik tunggal. Titik ini kemudian diperbaiki perlahan-lahan dengan arah menaik (fungsi maksimasi) atau menurun (fungsi minimasi) melalui sejumlah iterasi hingga ditemukan solusi optimum. Teknik pencarian seperti ini dapat terjebak ke dalam solusi optimum lokal.

c. Algoritma genetika secara langsung memanfaatkan informasi fungsi objektif, bukan turunan atau informasi tambahan lainnya

Penyelesaian masalah optimasi umumnya menggunakan algoritma yang berupa langkah-langkah perhitungan yang secara asimtotik menuju solusi optimum. Teknik optimasi konvensional membangun deretan yang dimaksud berdasarkan gradien (turunan) fungsi objektif atau fungsi kendala untuk memperbaiki solusi tunggal. Algoritma genetika tidak membutuhkan informasi dan asumsi-asumsi demikian. Algoritma genetika hanya membutuhkan informasi nilai fungsi objektif dan memperbaiki sekumpulan solusi fisibel (legal)

(41)

dengan operator-operator genetika, yang pada akhirnya diharapkan dapat menghasilkan solusi optimum.

d. Algoritma genetika bekerja menggunakan aturan probabilistik, bukan aturan deterministik

Operator algoritma genetika tidak bekerja secara deterministik. Operator seleksi, penyilangan, maupun mutasi bekerja menggunakan aturan probabilistik atau pemilihan secara acak.

E. PENELITIAN TERDAHULU

Riswan (1993) melakukan penelitian tentang rancangan program komputer untuk penjadwalan job shop dengan metode Priority Dispatching. Penelitian ini memiliki tujuan yaitu membentuk rancangan program komputer yang dapat digunakan untuk menjadwalkan kerja mesin-mesin dan tugas-tugas di divisi job shop PT DC dalam waktu singkat. Pada hasil penjadwalan komputer, penjadwalan kerja mesin-mesin dan alokasi tugas-tugas lebih teratur dan terencana sehingga waktu penyelesaian setiap paket pesanan lebih baik dibandingkan dengan cara manual.

Gunawan (2003) melakukan penelitian tentang penjadwalan flow shop menggunakan algoritma genetika. Penelitian tersebut bertujuan untuk mengaplikasikan algoritma genetika dalam bidang penjadwalan produksi yaitu untuk masalah flow-shop deterministik tanpa kendala

(unconstrained-deterministic flow shop) berskala besar. Implementasi algoritma genetika

dalam program komputer menggunakan bahasa pemrograman Borland Pascal

7.0. Hasil penelitian menunjukkan bahwa algoritma genetika sangat efisien

dalam memecahkan masalah flow shop deterministik tanpa kendala berskala besar.

Aryawan (2003) melakukan penelitian tentang penerapan algoritma

Tabu Search dalam permasalahan penjadwalan job shop. Dalam penelitian ini, Tabu Search diterapkan pada sebuah permasalahan penjadwalan job shop

dengan tujuan untuk meminimalkan waktu proses total atau makespan (Cmax).

Hasil penjadwalan dibandingkan dengan hasil penjadwalan lain yang menggunakan empat macam metode Basic Dispatching Rules. Hasil

(42)

pengolahan data menunjukkan bahwa penjadwalan yang menggunakan Tabu

Search memiliki makespan yang lebih kecil apabila dibandingkan dengan

keempat metode lainnya.

Andria (2007) melakukan penelitian tentang optimasi model rantai pasokan agroindustri cocodiesel dengan menggunakan algoritma genetika. Model rantai pasokan agroindustri yang optimal adalah rantai yang memiliki kombinasi paling baik dan efisien sehingga dapat diperoleh TSCC (Total Supply

Chain Cost) yang paling minimum. Penelitian tersebut bertujuan untuk merancang model rantai pasokan agroindustri cocodiesel berdasarkan model transportasi, inventori, dan distribusi. Model rantai pasokan tersebut kemudian dioptimasi dengan menggunakan metode algoritma genetika. Hasil penelitian ini menunjukkan bahwa metode algoritma genetika sangat efisien dalam menemukan solusi TSCC minimum dari model rantai pasokan agroindustri.

(43)

III. METODOLOGI PENELITIAN

A. KERANGKA PEMIKIRAN

Penjadwalan secara umum didefinisikan sebagai penetapan waktu dari penggunaan peralatan, fasilitas, dan aktivitas manusia dalam sebuah organisasi. Penjadwalan produksi terdiri dari tiga tahapan utama. Pertama adalah tahapan loading, yaitu penentuan job yang harus diproses untuk setiap mesin. Kedua adalah tahapan sequencing, yaitu penentuan urutan pengerjaan untuk masing-masing job. Ketiga adalah tahapan detailed scheduling, yaitu pengaturan waktu mulai dan selesainya suatu job.

Penjadwalan bagi perusahaan manufaktur adalah aspek yang sangat penting karena penjadwalan merupakan salah satu bagian perencanaan dan pengendalian produksi. Jadwal yang baik diperoleh dari algoritma yang baik pula, sehingga perlu untuk menentukan suatu algoritma yang tepat untuk suatu masalah penjadwalan.

Penjadwalan tipe job shop merupakan penjadwalan yang kompleks karena merupakan kombinasi pengurutan job-job pada tiap mesin yang memprosesnya. Sebuah industri dengan tipe sistem produksi job-shop menggunakan parameter optimasi yaitu nilai makespan (waktu penyelesaian pekerjaan secara keseluruhan). Semakin meningkatnya alternatif penjadwalan produksi secara eksponensial, dengan banyaknya sumber daya yang digunakan merupakan permasalahan pada optimasi kombinatorial yang kompleks. Kombinasi yang optimum akan menghasilkan nilai makespan yang minimum.

Permasalahan pada penjadwalan tipe job shop yang rumit dan kompleks membutuhkan suatu metode yang mampu memecahkan masalah tersebut yang tidak dapat dipecahkan oleh metode-metode konvensional. Penggunaan algoritma genetika, yaitu metode pencarian secara acak yang meniru proses alam (proses evolusi), dapat memecahkan masalah penjadwalan tersebut dengan solusi yang mendekati optimum namun hanya membutuhkan waktu dan usaha yang lebih kecil.

Program algoritma genetika akan dirancang, dibuat, dan diimplementasikan untuk mencari solusi optimum pada permasalahan

(44)

penjadwalan tipe job shop dalam penelitian ini. Program tersebut bertujuan untuk meminimumkan nilai makespan (waktu penyelesaian pekerjaan secara keseluruhan). Penggunaan algoritma genetika dalam pencarian solusi yang optimum diharapkan mampu memecahkan masalah penjadwalan tipe job shop dengan lebih efektif dan efisien.

B. PENDEKATAN METODE ILMIAH

Penelitian ini menggunakan pendekatan metode ilmiah (scientific

method). Pendekatan metode ilmiah merupakan metodologi pemecahan

masalah secara sistematis, konsisten, dan logis. Model ilmiah terdiri dari tahap observasi, tahap identifikasi masalah, tahap konstruksi model, tahap verifikasi dan validasi model, tahap solusi, dan tahap implementasi (Taylor, 2002). Diagram metode ilmiah dapat dilihat pada Gambar 10 di bawah ini :

Gambar 10. Diagram alir metode ilmiah (Taylor, 2002)

Metode di atas merupakan metode yang bersifat umum. Metode penelitian penjadwalan tipe job shop yang menggunakan algoritma genetika diilustrasikan dalam bentuk diagram alir yang terdapat pada Gambar 11.

Observasi

Definisi Masalah

Perancangan Model

Verifikasi dan Validasi Model

Solusi

(45)

Gambar 11. Diagram alir penelitian penjadwalan tipe job shop Selesai Mulai Membuat skenario kasus sederhana sebagai Kasus 1 Mengambil kasus dari literatur sebagai

Kasus 2

Menggunakan data riil pada industri peralatan

pengolahan hasil pertanian (Kasus 3)

Menyelesaikan Kasus 1 dengan cara enumeratif (mencoba seluruh

alternatif penjadwalan yang dapat terjadi)

Membuat program algoritma genetika masalah penjadwalan :

GA_JobShop Menentukan fungsi makespan dengan metode

preference list based representation

Membandingkan nilai makespan hasil perhitungan enumeratif dengan hasil

pencarian algoritma genetika

Nilai makespan

sama ? tidak

(46)

Program algoritma genetika yaitu GA_JobShop (Genetic Algoritms for

Job Shop Scheduling) dibuat dengan bahasa pemrograman Borland Delphi

7.0. Terdapat tiga kasus yang akan dipecahkan oleh program GA_JobShop yaitu Kasus ke-1 merupakan kasus penjadwalan 3 job 2 mesin; Kasus ke-2 merupakan kasus penjadwalan 3 job 3 mesin; Kasus ke-3 merupakan kasus penjadwalan 5 job – 12 mesin. Kasus ke-1 merupakan skenario penjadwalan yang sangat sederhana (numerical example) dan Kasus ke-2 merupakan contoh penjadwalan tipe job shop yang diambil dari literatur yang terdapat pada buku

Genetic Algorithm and Engineering Design (Gen dan Cheng, 1997). Kasus

ke-3 merupakan studi kasus industri peralatan pengolahan hasil pertanian. Ketiga kasus tersebut dioptimasi dengan program GA_JobShop untuk didapatkan nilai makespan yang minimum.

Data skenario pada Kasus 1 dirancang sebagai numerical example. Data tersebut dihitung nilai makespan-nya dengan cara enumeratif kemudian dibandingkan dengan hasil yang diperoleh dari pencarian algoritma genetika (menggunakan program GA_JobShop) sebagai verifikasi dan validasi program yang telah dibuat. Verifikasi merupakan pemeriksaan apakah logika pada program sesuai dengan logika penjadwalan tipe job shop, sedangkan validasi merupakan proses penentuan apakah hasil output pada program merupakan representasi yang akurat dari aplikasi nyata (Hoover dan Perry, 1989). Apabila hasil perhitungan dengan program sudah sama dengan hasil perhitungan enumeratif maka program GA_JobShop dapat digunakan untuk memecahkan masalah dengan skala yang lebih besar, seperti Kasus 2 dan Kasus 3.

(47)

IV. PEMBAHASAN

A. REPRESENTASI KROMOSOM

Representasi kromosom yang digunakan untuk memecahkan masalah penjadwalan job shop salah satunya adalah metode preference-list-based

representation (Gen dan Cheng, 1997). Untuk pemecahan masalah job shop

dengan pekerjaan sebanyak n dan mesin sebanyak m, sebuah kromosom akan terdiri dari m sub-kromosom untuk setiap mesin. Setiap sub-kromosom adalah simbol string dengan panjang n dan setiap simbol akan teridentifikasi sebagai sebuah operasi untuk dikerjakan pada mesin seharusnya. Hal ini dilakukan karena representasi berdasarkan daftar referensi dan setiap mesin mempunyai daftar referensinya sendiri. Untuk jadwal di lapangan akan ditentukan dengan menggunakan kromosom yang berasal dari simulasi, dimana analisis didasarkan pada urutan menunggu pada jadwal, dan operasi yang muncul pertama kali akan ditunjukkan untuk melakukan pekerjaan untuk pertama kali. Jumlah mesin akan ditunjukkan oleh banyaknya sub-kromosom dan jumlah job akan ditunjukkan oleh banyaknya string di dalam sub-kromosom. Untuk lebih jelasnya, representasi kromosom dapat diilustrasikan pada Gambar 12.

Gambar 12. Representasi kromosom dengan preference-list-based

representation

B. FUNGSI FITNESS

1 2 3 n

1 2 3 n

1 2 3 n

Sub-kromosom Sub-kromosom Sub-kromosom Mesin 1 Mesin 2 Mesin m

(48)

x=1 y=1 m n x=1 y=1 m n

Evaluasi kromosom dilakukan pada tahap penentuan nilai dari fungsi

fitness masing-masing kromosom. Fungsi fitness bertujuan untuk mengukur

seberapa baik nilai sebuah kromosom dalam populasi. Pada penjadwalan job

shop, fungsi tujuannya adalah meminimumkan nilai makespan (total waktu

keseluruhan penyelesaian job). Fungsi tujuannya adalah sebagai berikut :

Min

t

xy

Keterangan : n = jumlah job m = jumlah mesin

txy= waktu proses job-x di mesin-y

Masalah penjadwalan job shop merupakan masalah minimasi

makespan. Fungsi fitness dibuat berbanding lurus dengan fungsi tujuan (nilai makespan) sehingga kromosom yang paling baik adalah kromosom yang

memiliki nilai fitness paling kecil. Persamaan fungsi fitness-nya adalah sebagai berikut :

F

k

=

M

k

=

t

xy

Keterangan :Fk = Nilai fitness kromosom ke-k pada populasi

Mk = Nilai makespan kromosom ke-k pada populasi C. SELEKSI (SELECTION)

Proses seleksi dilakukan dengan cara memilih kromosom yang memiliki nilai makespan minimum atau nilai fitness yang paling kecil. Teknik ini merupakan teknik seleksi turnamen (tournament selection), yaitu akan dipilih dua buah kromosom secara acak dalam suatu populasi, kemudian dibandingkan berdasarkan nilai fitness-nya. Kromosom yang memiliki nilai

Gambar

Gambar 2. Prosedur umum algoritma genetika (Hopgood, 2001)
Gambar 4. Ilustrasi proses seleksi kromosom induk (Magnin di dalam Gunawan,  2003)
Gambar 5. Ilustrasi prosedur PMX (Gen dan Cheng, 1997)492 531 6Parent 112345678 9Parent 2546921783Offspring 254345678 3Offspring 112692178934566921Offspring 2293456781Offspring 1356921784
Diagram metode ilmiah dapat dilihat pada Gambar 10 di bawah ini :
+7

Referensi

Dokumen terkait

Faktor-faktor yang dapat mempengaruhi kevalidan data antara lain panel, laboratorium, penyajian sampel produk, dan hal-hal yang mempengaruhi pada saat

Saliva adalah cairan yang tidak berwarna dengan konsistensi seperti lendir. Saliva merupakan sekresi yang berkaitan dengan mulut dan diproduksi oleh tiga pasang

“Perencanaan Bangunan Pelindung Pantai Untuk Penanganan Masalah Abrasi Di Pantai Sari Kota Pekalongan (Dengan Bantuan Program GENESIS)”9. Tidak lupa pula salawat dan salam

Setelah dilakukan uji stitistik yaitu Continuity Corection di dapatkan nilai P > dari α (0,299 > 0,05), dengan demikian dapat diketahui bahwa tidak ada hubungan

Dengan segala kerendahan hati, pada kesempatan ini penulis menyampaikan terima kasih kepada semua pihak yang telah membantu penyelesaian skripsi dengan judul

Skripsi ini berjudul “Aplikasi Watermarking Sebagai Teknik Penyembunyian Label Hak Cipta Pada Citra Digital Dengan Metode Randomly Sequenced Pulse Position Modulated Code”

Berdasarkan argumen tersebut, implikasi penelitian ini adalah bahwa perancang organisasi perlu mempertimbangkan kondisi ketidakpastian (seperti intensitas kompetisi pasar) untuk

Hipotesis yang diajukan pada penelitian ini adalah adanya uji organoleptik penambahan bumbu rawon pada telur asin, dan bumbu bacem pada telur asin,