1 / 34

GAOT

GAOT. Speaker: Moch. Rif’an rif_an91@yahoo.com. 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

moshe
Download Presentation

GAOT

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GAOT Speaker: Moch. Rif’an rif_an91@yahoo.com

  2. 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

  3. 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.

  4. ga • function[x,endpop,bpop,traceinfo]=ga(bounds,evalFN,evalOps,startPop,opts,termFN,termOps,selectFN,selectops,xoverFNs,xOverOps,mutFNs,mutOps)

  5. 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

  6. 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-6 1 0]

  7. 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

  8. ga • xOverFNs : string fungsi crossover • xOverOps : matriks parameter crossover • mutFNs : string fungsi mutasi • mutOps : matriks parameter mutasi

  9. 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.[1e-6 1]

  10. Fungsi evaluasi • Parameter output: • sol : individu baru dalam populasi setelah ditambahkan nilai fitness • val : nilai fitness

  11. Fungsi Operator • Simple crossover • Uniform crossover • arithXover • cyclicXover • dsb

  12. 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

  13. Simple crossover • Ops adalah [current_generation xoverops]

  14. Simple crossover • Membangkitkan angka random r dengan distribusi seragam dari 1 sampai m dan membuat dua individu baru dengan

  15. 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

  16. Uniform crossover • Ops adalah [current_generation xoverops]

  17. Uniform crossover • Membangkitkan angka random biner r, dan membuat dua individu baru dengan

  18. Mutasi • Mengubah satu individu menjadi satu individu baru Jenis: • Inversionmutation • multiNonUnivMutation • nonUnivMutation • binaryMutation • boundaryMutation • unifMutation • dsb

  19. unifMutation Mengubah satu parameter parent berdasarkan distribusi probabilitas uniform function [parent] = UnifMutation(parent,bounds,Ops)

  20. unifMutation • Memilih variabel r secara acak, dan mengubahnya menjadi angka acak uniform: • Dengan: • r = angka random uniform (0,1) • ai= selisih batas atas dan bawah sebuah variabel I • bi = batas bawah sebuah variabel

  21. Fungsi seleksi • tournSelect • roulette • normGeomSelect

  22. tournSelect function[newPop] = tournSelect(oldPop,options) • newPop : Populasi baru yang diseleksi dari oldPop. • oldPop : Populasi saat ini

  23. roulette function[newPop] = roulette(oldPop,options) • newPop : Populasi baru yang diseleksi dari oldPop. • oldPop : Populasi saat ini

  24. normGeomSelect function[newPop] = normGeomSelect(oldPop,options) • newPop : Populasi baru yang diseleksi dari oldPop. • oldPop : Populasi saat ini

  25. Genetic Algorithms (VIIIa) Results from a small example: Minimize Initial Population Generation 10

  26. Genetic Algorithms (VIIIb) Generation 20 Generation 30 Generation 50 Generation 40

  27. Transit Routing: Description

  28. Transit Routing: Formulation (II) Representation……….

  29. 0 2 5 3 4 9 7 6 1 8 14 11 10 13 12 Transit Routing: Results Mandl’s Swiss network --- a benchmark problem

  30. Encoding a set of weights in a chromosome

  31. Encoding of the network topology

  32. Ada Pertanyaan ?

  33. 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)

  34. Parent1

More Related