Dastlabki populyatsiyani yaratish [ tahrir | kodni tahrirlash ]
Birinchi qadamdan oldin siz tasodifiy boshlang'ich populyatsiyani yaratishingiz kerak; u butunlay raqobatbardosh bo'lib chiqsa ham, genetik algoritm baribir uni tezda yashovchan populyatsiyaga o'tkazishi mumkin. Shunday qilib, birinchi bosqichda, ayniqsa, odamlarni juda mos qilishga urinib bo'lmaydi, ular populyatsiyadagi shaxslar formatiga mos kelishi kifoya qiladi va fitnes funktsiyasini ular bo'yicha hisoblash mumkin. Birinchi bosqichning natijasi N populyatsiyadan iborat H populyatsiyasidir.
Tanlash (tanlash) [ tahrir | kodni tahrirlash ]
Tanlash bosqichida evolyutsiyaning ushbu bosqichida "tirik" qoladigan butun populyatsiyaning ma'lum bir qismini tanlash kerak. Tanlashning turli usullari mavjud. Jismoniy shaxsning omon qolish ehtimoli h fitnes funktsiyasi qiymatiga bog'liq bo'lishi kerak Fitness(h). Omon qolish darajasi s ning o'zi odatda genetik algoritmning parametri bo'lib, u shunchaki oldindan berilgan. Seleksiya natijasida H populyatsiyasining N ta individidan sN individlari qolishi kerak, ular yakuniy H' populyatsiyasiga kiritiladi. Qolgan shaxslar vafot etadi.
Turnir tanlovi - birinchi navbatda, tasodifiy ravishda ma'lum miqdordagi shaxslar tanlanadi (odatda ikkita), so'ngra ular orasidan fitnes funktsiyasining eng yaxshi qiymatiga ega bo'lgan shaxs tanlanadi.
Ruletka usuli - shaxsni tanlash ehtimoli qanchalik ko'p bo'lsa, uning fitnes funktsiyasining qiymati shunchalik yaxshi bo'ladi{\displaystyle p_{i}={\frac {f_{i}}{\sum _{i=1}^{N}{f_{i}}}}} , qayerda{\displaystyle p_{i}} i shaxslarni tanlash ehtimoli,{\displaystyle f_{i}} i jismoniy shaxslar uchun fitnes funksiyasining qiymati,{\displaystyle N} - populyatsiyadagi individlar soni
Reyting usuli - tanlash ehtimoli fitnes funktsiyasi qiymati bo'yicha tartiblangan shaxslar ro'yxatidagi o'rniga bog'liq.{\displaystyle p_ {i}={\ frac {1}{N}}(a-(ab){\frac {i-1}{N-1}})} , qayerda{\displaystyle a\in [1,2]} ,{\ displaystyle b = 2-a} ,{\displaystyle i} - jismoniy shaxslar ro'yxatidagi jismoniy shaxsning fitnes funktsiyasi qiymati bo'yicha tartiblangan seriya raqami (ya'ni,{\displaystyle \forall {\text{}}i{\text{}}\forall {\text{}}j>i{\text{}}{\text{}}f_{i}\leq f_{j }} - agar biz fitnes funksiyasining qiymatini minimallashtirsak)
Yagona reyting - shaxsni tanlash ehtimoli quyidagi ifoda bilan aniqlanadi:{\displaystyle p_{i}={\begin{holatlar}\frac {1}{\mu }},&{\mbox{if}}1\leq i\leq \mu \\0,&{\mbox {agar }}\mu
Sigma kesish - genetik algoritmning muddatidan oldin yaqinlashishini oldini olish uchun maqsad funktsiyasi qiymatini o'lchaydigan usullar qo'llaniladi. Shaxsni tanlash ehtimoli kattaroq bo'lsa, masshtablangan maqsad funktsiyasining qiymati shunchalik optimal bo'ladi{\displaystyle p_{i}={\frac {F_{i}}{\sum _{i=1}^{N}{F_{i}}}}} , qayerda{\displaystyle F_{i}=1+{\frac {f_{i}-f_{avg}}{2\sigma}}} ,{\displaystyle f_{avg}} maqsad funksiyasining butun populyatsiya uchun o‘rtacha qiymati, s – maqsad funksiya qiymatining standart og‘ishi [15] .
Do'stlaringiz bilan baham: |