Roulette Wheel Selection Saran

124 anak2,cps+1:cpd=bapakcps+1:cpd; sisagenbapak=[]; sisagenibu=[]; for ii=1:jumgen, if ~ismemberbapakii,anak1,:, sisagenbapak=[sisagenbapak bapakii]; end if ~ismemberibuii,anak2,:, sisagenibu=[sisagenibu ibuii]; end end anak1,cpd+1:jumgen=sisagenbapak1:jumgen-cpd; anak1,1:cps=sisagenbapak1+jumgen- cpd:lengthsisagenbapak; anak2,cpd+1:jumgen=sisagenibu1:jumgen-cpd; anak2,1:cps=sisagenibu1+jumgen-cpd:lengthsisagenibu; variabel pada fungsi PindahSilang.m adalah bapak induk pertama yang terpilih, ibu induk kedua yang terpilih dan jumgen jumlah gen. Pertama 2 buah bilangan dibangkitkan secara acak untuk menentukan titik potong kedua induk. Kemudian dua kromosom anak mendapatkan gen-gen dari kromosom bapak dan ibu. Posisi-posisi gen yang masih kosong pada anak pertama diisi dengan gen dari bapak yang belum ada pada anak pertama, dan anak kedua diisi dengan gen dari ibu yang belum ada pada anak kedua. Hasil dari fungsi ini adalah dua kromosom baru yang membawa sifat dari induknya. 6. Mutasi dengan Swapping Mutation Operator pindah silang dari populasi awal yang sudah terbentuk diimplementasikan dalam perintah pada fungsi Mutasi.m berikut ini. function mutkrom = Mutasikromosom,jumgen,pmutasi 125 mutkrom=kromosom; for ii=1:jumgen, if randpmutasi, TM2=1+fixrandjumgen; while TM2==ii, TM2=1+fixrandjumgen; end tempopulasi=mutkromii; mutkromii=mutkromTM2; mutkromTM2=tempopulasi; end end variabel pada fungsi Mutasi.m diatas adalah adalah kromosom anak hasil pindah silang, jumgen jumlah gen dan pmutasi probabilitas mutasi. Pertama membangkitkan bilangan random dalam interval [0,1. Jika bilangan random yang dibangkitkan kurang dari pmutasi maka akan ditentukan posisi gen dalam kromosom yang akan ditukar. Kemudian menukar nilai gen yang terpilih dalam kromosom sehingga didapatkan kromosom baru hasil mutasi mutkrom. 7. Program Utama Sebagai program utama, fungsi SeptiaGenetika.m memanggil semua fungsi- fungsi diatas. Pada program utama berikut, memasukkan variabel-variabel jd jarak depot dengan agen, kapasitas permintaan dari setiap agen, JarakAgen jarak tempuh antara agen dengan agen lainnya, jumgen jumlah gen, kendaraan, q kapasitas kendaraan, ukpop ukuran populasi, yaitu banyaknya individu dalam populasi, psilang probabilitas pindah silang, pmutasi probabilitas mutasi, maxG jumlah generasi. Program di bawah ini juga ditambahkan perintah untuk menampilkan grafik. Pada akhir program variabel jalur terbaik menyatakan rute optimal yang didapatkan. clear all