TEKNIK OPTIMASI PENELITIAN TERDAHULU

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 -fx Maarif, 1989. x x -fx fx fx Gambar 1. Nilai minimum f x sama dengan maksimum –fx 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.

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. Untuk mengimplementasikan Algoritma Genetika, membuat suatu keputusan harus memenuhi syarat berikut ini Hopgood, 2001 : 1. Merepresentasi calon solusi ke dalam sebuah bilangansimbol 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 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. M enghasilkan generasi baru M ulai Seleksi individu Terjadi proses mut asi dengan peluang Pm Ter jadi proses penyilangan dengan peluang Pc Evaluasi nilai fitness masing-masing individu Inisialisasi populasi secara acak Berhent i Krit eria penghent ian t erpenuhi ? Ya Tidak 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. 3 2 5 4 7 1 6 9 8 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.

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 fitness semua kromosom. 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-string yang ada di dalam mating pool untuk menciptakan string- string sebagai solusi. Representasi 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 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 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 : 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 7 8 9 1 2 3 4 5 6 Parent 2 7 8 3 5 4 6 9 2 1 Offspring 2 7 8 3 5 4 3 4 5 6 Offspring 1 7 8 9 1 2 6 9 2 1 3 4 5 6 6 9 2 1 Offspring 2 7 8 1 2 9 3 4 5 6 Offspring 1 7 8 4 3 5 6 9 2 1

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 : 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 7 8 9 1 2 3 4 5 6 Kromosom 7 8 9 1 2 6 3 4 5 Kromosom 7 8 9 1 2 3 4 5 6 Kromosom 5 6 9 1 2 3 7 8 4 Kromosom 7 8 9 1 2 3 4 5 6 Kromosom 7 8 9 1 2 6 4 5 3 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.

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 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 C max . Hasil penjadwalan dibandingkan dengan hasil penjadwalan lain yang menggunakan empat macam metode Basic Dispatching Rules. Hasil 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.

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