GAOT Speaker: Moch. Rif’an
Inisializega function[pop]=initializega(num,bounds,evalFN,evalOps,options) Parameter input: Num : jumlah individu dalam satu populasi Bounds: matriks batas bawah dan batas atas dari allele
Inisializega evalFN: fungsi evaluasi evalOps: opsi untuk fungsi evaluasi, dan memiliki nilai default [ ] Options: matriks opsi untuk inisialisasi, dan terdiri atas kolom pertama adalah epsilon, dan kolom kedua adalah 1 jika float dan 0 jika biner.
ga function[x,endpop,bpop,traceinfo]= ga(bounds,evalFN,evalOps,startPop, opts,termFN,termOps,selectFN,select ops,xoverFNs,xOverOps,mutFNs,mut Ops)
ga Bounds: matriks batas bawah dan batas atas dari allele evalFN: fungsi evaluasi evalOps: opsi untuk fungsi evaluasi, dan memiliki nilai default [ NULL] startPop: matriks yang merupakan hasil inisialisasi
ga Opts: [epsilon prob_ops display] dengan epsilon merupakan perubahan yang dibutuhkan untuk mempertimbangkan dua penyelesaian berbeda, prob_ops adalah 0 jika digunakan algoritma versi biner dan 1 jika digunakan versi flot, display mengendalikan tampilan perkembangan algoritma, 1 menampilkan generasi terbaru dan penyelesaian terbaik, 0 tidak ada tampilan selama program berjalan. [1e ]
ga termFN: nama fungsi terminasi termOps: string option yang akan digunakan dalam fungsi terminasi. Bounds: matriks batas bawah dan batas atas dari allele SelectFN: nama fungsi seleksi.m file SelectOps: string yang digunakan dalam fungsi seleksi
ga xOverFNs: string fungsi crossover xOverOps: matriks parameter crossover mutFNs: string fungsi mutasi mutOps: matriks parameter mutasi
Fungsi evaluasi function [sol, val] = GA_Eval(sol,options) Parameter input: sol: individu dalam populasi Options: matriks opsi untuk inisialisasi, dan terdiri atas kolom pertama adalah epsilon, dan kolom kedua adalah 1 jika float dan 0 jika biner.[1 e-6 1]
Fungsi evaluasi Parameter output: sol: individu baru dalam populasi setelah ditambahkan nilai fitness val: nilai fitness
Fungsi Operator Simple crossover Uniform crossover arithXover cyclicXover dsb
Simple crossover function [c1,c2] = SimpleXover(p1,p2,bounds,Ops) Mengambil dua parent p1, p2 dan melakukan crossover sederhana tunggal Bounds: matriks batas bawah dan batas atas dari allele
Simple crossover Ops adalah [current_generation xoverops]
Simple crossover Membangkitkan angka random r dengan distribusi seragam dari 1 sampai m dan membuat dua individu baru dengan
Uniform crossover function [ch1,ch2,t] = UniformXover(par1,par2,bounds,Ops) Mengambil dua parent p1, p2 dan melakukan crossover pada beberapa gen dari dua buah chromosome Bounds: matriks batas bawah dan batas atas dari allele
Uniform crossover Ops adalah [current_generation xoverops]
Uniform crossover Membangkitkan angka random biner r, dan membuat dua individu baru dengan
Mutasi Mengubah satu individu menjadi satu individu baru Jenis: Inversionmutation multiNonUnivMutation nonUnivMutation binaryMutation boundaryMutation unifMutation dsb
unifMutation Mengubah satu parameter parent berdasarkan distribusi probabilitas uniform function [parent] = UnifMutation(parent,bounds,Ops)
unifMutation Memilih variabel r secara acak, dan mengubahnya menjadi angka acak uniform: Dengan: –r = angka random uniform (0,1) –a i = selisih batas atas dan bawah sebuah variabel I –b i = batas bawah sebuah variabel
Fungsi seleksi tournSelect roulette normGeomSelect
tournSelect function[newPop] = tournSelect(oldPop,options) newPop: Populasi baru yang diseleksi dari oldPop. oldPop: Populasi saat ini
roulette function[newPop] = roulette(oldPop,options) newPop: Populasi baru yang diseleksi dari oldPop. oldPop: Populasi saat ini
normGeomSelect function[newPop] = normGeomSelect(oldPop,options) newPop: Populasi baru yang diseleksi dari oldPop. oldPop: Populasi saat ini
Genetic Algorithms (VIIIa) Results from a small example: Minimize Initial PopulationGeneration 10
Genetic Algorithms (VIIIb) Generation 20 Generation 30 Generation 40 Generation 50
Transit Routing: Description
Transit Routing: Formulation (II) Representation……….
Transit Routing: Results Mandl’s Swiss network --- a benchmark problem
Encoding a set of weights in a chromosome
Encoding of the network topology
Ada Pertanyaan ?
Tugas untuk minggu depan Buatlah fungsi Single point crossover (int,bin) Multipoint crossover (int,bin) Uniform crossover (int,bin) Single point mutation (int,bin) Double point mutation (int,bin) Uniform mutation (int,bin) Selection (int,bin)
Parent1