Parameter Genetika Penerapan Algoritma Matematika

keturunan secara random. Tidak setiap gen selalu dimutasi tetapi mutasi dikontrol dengan probabilitas tertentu yang disebut dengan mutation rate probabilitas mutasi dengan notasi Pm. Jenis operator mutasi antara lain: a. Mutasi Terarah Mutasi terarah tergantung dari informasi gen. Informasi gen tersebut berupa nilai pelanggaran gen violation score. Ini berarti bahwa setiap gen mempunyai peluang yang berbeda untuk terjadi mutasi. Gen yang mempunyai nilai pelanggaran yang leb ih besar maka gen tersebut mempunyai peluang untuk terjadi mutasi. Mutasi ini menghubungkan nilai pelanggaran relatif nilai pelanggaran suatu gen dibagi dengan nilai pelanggaran total suatu kromosom dengan probabilitas terjadinya mutasi dari suatu gen pada kromosom. Hubungan tersebut dinyatakan secara matematis sebagai berikut: nri = ni1+ntotal pmi = 1+nri2pm Keterangan persamaan: nri = nilai pelanggaran relative gen ke- i. ntotal = nilai pelanggaran total kromosom. pmi = probabilitas mutasi gen ke-i. pm = probabilitas mutasi

2.4.6 Parameter Genetika

Pengoperasian algoritma genetika dibutuhkan 4 parameter Suyanto, 2005 yaitu: 1. Probabilitas Persilangan Probability Crossover Menunjukkan kemungkinan crossover terjadi antara 2 kromosom. Jika tidak terjadi crossover maka keturunannya akan sama persis dengan kromosom orangtua, tetapi tidak berarti generasi yang baru akan sama persis dengan generasi yang lama. Jika probabilitas crossover 100 maka semua keturunannya dihasilkan dari crossover. Crossover dilakukan dengan harapan bahwa kromosom yang baru akan lebih baik. 2. Probabilitas Mutasi Probability Mutation Menunjukkan kemungkinan mutasi terjadi pada gen-gen yang menyusun sebuah kromosom. Jika tidak terjadi mutasi maka keturunan yang dihasilka n setelah crossover tidak berubah. Jika terjadi mutasi bagian kromosom akan berubah. Jika probabilitasnya 100 , semua kromosom dimutasi. Jika probabilitasnya 0, tidak ada yang mengalami mutasi. 3. Jumlah Individu Menunjukkan jumlah kromosom yang terdapat dalam populasi dalam satu generasi. Jika hanya sedikit kromosom dalam populasi maka algoritma genetika akan mempunyai sedikit variasi kemungkinan untuk melakukan crossover antara orangtua karena hanya sebagian kecil dari search space yang dipakai. Sebaliknya jika terlalu banyak maka algoritma genetika akan berjalan lambat. 4. Jumlah Populasi Menentukan jumlah populasi atau banyaknya generasi yang dihasilkan, digunakan sebagai batas akhir proses seleksi, persilangan, dan mutasi. BAB 3 ANALISA DAN PERANCANGAN SISTEM 3.1 Penjadwalan Job Shop Penjadwalan Job Shop merupakan suatu permasalahan untuk menentukan urutan operasi yang dilakukan dalam mesin yang ada dengan tujuan meminimumkan waktu proses total yang dibutuhkan. Diberikan sejumlah m mesin berbeda dan n job pekerjaan berbeda untuk dijadwalkan. Setiap pekerjaan terdiri dari sejumlah operasi yang harus dilakukan di suatu mesin tertentu selama durasi waktu tertentu. Ketika suatu operasi akan diproses di suatu mesin, ada kemungkinan operasi tersebut mengantri terlebih dahulu karena mesin tersebut sedang dipakai oleh operasi lain. Ada beberapa ketentuan pada mesin dan pekerjaan, di antaranya : 1. Suatu pekerjaan diproses hanya sekali dalam suatu mesin. 2. Suatu operasi tidak dapat diinterupsi. 3. Operasi dalam suatu pekerjaan harus diproses secara berurutan yaitu setelah operasi sebelumnya selesai dilakukan. 4. Setiap mesin hanya dapat memproses satu pekerjaan pada suatu waktu. Definisi formal untuk job shop adalah sebagai berikut : 1. Himpunan pekerjaan J = {j 1, j 2 ,… j n} 2. Himpunan mesin M = {m 1, m 2 ,… m n} 3. Himpunan operasi per job i O i = {O i1, O i 2 ,… O i n} 4. Tiap operasi memiliki waktu pemrosesan T = { τ 1, τ 2 ,… τ n} Masalah penjadwalan job shop merupakan masalah penjadwalan yang memiliki karakteristik sebagai berikut : 1. Penjadwalan job shop memiliki sejumlah job yang harus diselesaikan, direpresentasikan sebagai J = {J 1 ,J 2 ,...,J n }. 2. Penjadwalan job shop memiliki sejumlah resource yang digunakan untuk menyelesaikan setiap operasi, direpresentasikan sebagai R= {R 1 ,R 2 ,...,R m }. Pada beberapa referensi, resource biasa disebut machine dilambangkan dengan M. 3. Setiap job memiliki sejumlah operasi yang harus d iselesaikan pada tenggat waktu mulai dari ready time r t sampai due time d t . Suatu job J i memiliki sejumlah operasi yang direpresentasikan dengan O i = {O i 1,O i 2,...O i n}. 4. Setiap operasi memiliki waktu proses yang berbeda-beda. Himpunan operasi O i memiliki sejumlah waktu proses yang direpresentasikan dengan {τ i 1,τ i 2,...τ i n}. 5. Setiap operasi pada satu job memiliki precedence . Pada suatu job J i , O i 1 harus dikerjakan lebih dulu daripada O i 2 ,direpresentasikan dengan O i 1 , O i 2 € O i . Konsep penjadwalan job shop adalah menentukan waktu suatu operasi mulai dikerjakan dan mengalokasikan resource untuk mengerjakan operasi tersebut. Pada saat menjadwalkan suatu operasi selain menentukan kapan operasi tersebut mulai dikerjakan juga ditentukan resource mana yang dipakai oleh operasi tersebut. Oleh karena itu,pada saat menjadwalkan suatu operasi perlu diperhatikan dua constraint berikut : 1. Precedence constraint ; penjadwalan untuk setiap operasi dari job yang sama harus berurutan sesuai dengan precedence constra int job tersebut. Sebagai contoh, masalah job shop yang ditunjukkan oleh gambar II-4 memiliki beberapa precedence constraint . Salah satunya adalah pada operasi O 1 1 , O 1 2 , O 1 3 , dan O 1 5 yang berada pada job yang sama yaitu J 1 . Oleh karena itu, operasi O 1 5 harus dijadwalkan setelah operasi O 1 1 , O 1 2 , dan O 1 3 selesai diproses. Namun, operasi O 1 5 dan O 2 2 berada pada job yang berbeda, maka urutan penjadwalan kedua operasi ini tidak menjadi masalah. 2. Resource constraint , merupakan penjadwalan setiap operasi membutuhkan sebuah resource untuk mengerjakan operasi tersebut. Pada saat operasi ini mulai diproses resour ce tersebut harus sedang tidak dipakai operasi lain. Resource ini juga menjadi tidak dapat dipakai oleh operasi lain sampai operasi tersebut selesai. Jika penjadwalan suatu operasi melanggar salah satu constraint, maka penjadwalan operasi tersebut harus dialihkan waktunya, dimana pengalihan waktu ini bisa membuat proses penyelesaian job dapat berlangsung lebih lama dan bahkan membuat seluruh proses mengalami keterla mbatan. Suatu operasi yang akan dijadwalkan pada suatu waktu, penjadwalan tersebut harus memenuhi kedua constraint yang telah disebutkan diatas. Jika penjadwalan tersebut melanggar salah satu constra int , maka operasi tersebut harus dijadwalkan pada waktu yang lain. Ketika penjadwalan melanggar salah satu constraint, hal ini dikatakan penjadwalan tersebut mengalami konflik. Oleh karena itu, operasi itu akan dijadwalkan pada waktu yang lain. Jika penjadwalan pada waktu tersebut tetap menghasilkan konflik, maka harus dipilih kembali satu waktu lain yang tidak menimbulkan konflik, begitu seterusnya. Proses penjadwalan yang berulang-ulang dan terus menemui konflik ini membuat efisiensi dari algoritma penjadwalan itu semakin buruk. Adapun dua sasaran utama pada algoritma penjadwalan job shop adalah: 1. Feasibility ; menemukan solusi yang memenuhi setiap constraint. Jika sudah ditemukan solusi, dapat dilakukan optimisasi berdasarkan kriteria tertentu. 2. Efficiency ; meminimalisasi jumlah terjadinya konflik pada setiap penjadwalan operasi. Untuk dapat mencegah terjadinya konflik dalam proses penjadwalan operasi dapat diantisipasi dengan mendeteksi kapan resource untuk mengerjakan operasi tersebut sedang tidak dipakai.

3.2 Penerapan Algoritma Genetik Pada Optimasi Penjadwalan