AI-For-Beginners/translations/my/lessons/6-Other/21-GeneticAlgorithms
localizeflow[bot] 2cf3095b7a chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:44:13 +00:00
..
Diophantine.ipynb 🌐 Update translations via Co-op Translator 2025-08-30 10:45:29 +00:00
Genetic.ipynb 🌐 Update translations via Co-op Translator 2025-08-30 10:45:29 +00:00
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:44:13 +00:00

README.md

ဂျင်နက်တစ် အယ်လဂိုရီသမ်များ

Pre-lecture quiz

ဂျင်နက်တစ် အယ်လဂိုရီသမ်များ (GA) သည် AI ကို အဆင့်ဆင့်တိုးတက်မှုနည်းလမ်း အပေါ် အခြေခံထားပြီး၊ လူဦးရေတစ်စု၏ တိုးတက်မှုနည်းလမ်းများကို အသုံးပြု၍ ပေးထားသော ပြဿနာအတွက် အကောင်းဆုံးဖြေရှင်းနည်းကို ရယူရန် အသုံးပြုသည်။ ၎င်းကို 1975 ခုနှစ်တွင် John Henry Holland က အဆိုပြုခဲ့သည်။

ဂျင်နက်တစ် အယ်လဂိုရီသမ်များသည် အောက်ပါ အယူအဆများအပေါ် အခြေခံထားသည်-

  • ပြဿနာအတွက် သက်ဆိုင်သော ဖြေရှင်းနည်းများကို ဂျင်းများ အဖြစ် ကိုယ်စားပြုနိုင်သည်။
  • Crossover သည် ဖြေရှင်းနည်းနှစ်ခုကို ပေါင်းစပ်ပြီး သက်ဆိုင်သော ဖြေရှင်းနည်းအသစ်ကို ရယူနိုင်စေသည်။
  • Selection သည် fitness function တစ်ခုကို အသုံးပြု၍ ပိုမိုကောင်းမွန်သော ဖြေရှင်းနည်းများကို ရွေးချယ်ရန် အသုံးပြုသည်။
  • Mutations သည် အကောင်းဆုံးဖြေရှင်းနည်းကို ရှာဖွေရာတွင် တည်ငြိမ်မှုကို ဖျက်ဆီးပြီး local minimum မှ ထွက်နိုင်စေရန် အသုံးပြုသည်။

ဂျင်နက်တစ် အယ်လဂိုရီသမ်ကို အကောင်အထည်ဖော်လိုပါက အောက်ပါအချက်များလိုအပ်သည်-

  • ဂျင်းများ g∈Γ ကို အသုံးပြု၍ ပြဿနာဖြေရှင်းနည်းများကို ကုဒ်ဖြင့် ကိုယ်စားပြုရန် နည်းလမ်းတစ်ခု ရှာဖွေရန်
  • ဂျင်းများ Γ အပေါ် fitness function fit: Γ→R ကို သတ်မှတ်ရန်။ function တန်ဖိုးများ ပိုငယ်လျှင် ပိုကောင်းသော ဖြေရှင်းနည်းများကို ကိုယ်စားပြုသည်။
  • Crossover နည်းလမ်းကို သတ်မှတ်၍ ဂျင်းနှစ်ခုကို ပေါင်းစပ်ပြီး သက်ဆိုင်သော ဖြေရှင်းနည်းအသစ်ကို ရယူရန် crossover: Γ2→Γ။
  • Mutation နည်းလမ်းကို သတ်မှတ်ရန် mutate: Γ→Γ။

အများအားဖြင့် crossover နှင့် mutation သည် ဂျင်းများကို ကိန်းဂဏန်းအစီအစဉ်များ သို့မဟုတ် bit vectors အဖြစ် ပြောင်းလဲရန် ရိုးရှင်းသော အယ်လဂိုရီသမ်များဖြစ်သည်။

ဂျင်နက်တစ် အယ်လဂိုရီသမ်၏ အကောင်အထည်ဖော်မှုသည် အခြေအနေအလိုက် ကွဲပြားနိုင်သော်လည်း၊ အခြေခံဖွဲ့စည်းမှုမှာ အောက်ပါအတိုင်းဖြစ်သည်-

  1. မူလ လူဦးရေ G⊂Γ ကို ရွေးချယ်ပါ။
  2. ဒီအဆင့်တွင် ဆောင်ရွက်မည့် လုပ်ဆောင်မှုကို ရွေးချယ်ပါ- crossover သို့မဟုတ် mutation
  3. Crossover:
  • ဂျင်းနှစ်ခု g1, g2 ∈ G ကို ရွေးချယ်ပါ။
  • crossover g=crossover(g1,g2) ကို တွက်ချက်ပါ။
  • fit(g)<fit(g1) သို့မဟုတ် fit(g)<fit(g2) ဖြစ်ပါက- လူဦးရေတွင် သက်ဆိုင်သော ဂျင်းကို g ဖြင့် အစားထိုးပါ။
  1. Mutation - random ဂျင်း g∈G ကို ရွေးချယ်ပြီး mutate(g) ဖြင့် အစားထိုးပါ။
  2. fit တန်ဖိုးအလွန်ငယ်သို့ရောက်သည်အထိ သို့မဟုတ် အဆင့်အရေအတွက်ကန့်သတ်ချက်ကို ရောက်သည်အထိ အဆင့် 2 မှ ပြန်လုပ်ဆောင်ပါ။

အခြေခံလုပ်ငန်းများ

ဂျင်နက်တစ် အယ်လဂိုရီသမ်များဖြင့် အခြေခံအားဖြင့် ဖြေရှင်းနိုင်သော လုပ်ငန်းများမှာ-

  1. အချိန်ဇယား အကောင်းဆုံးဖြစ်စေရန်
  2. အကောင်းဆုံး ထုပ်ပိုးမှု
  3. အကောင်းဆုံး ဖြတ်တောက်မှု
  4. အလုံးစုံရှာဖွေမှုကို မြန်ဆန်စေရန်

✍️ လေ့ကျင့်မှုများ: ဂျင်နက်တစ် အယ်လဂိုရီသမ်များ

အောက်ပါ notebook များတွင် သင့်လေ့လာမှုကို ဆက်လက်လုပ်ဆောင်ပါ-

ဒီ notebook သို့ သွားပြီး ဂျင်နက်တစ် အယ်လဂိုရီသမ်များကို အသုံးပြုသော နမူနာနှစ်ခုကို ကြည့်ပါ-

  1. အမွေအနေနှင့် တရားမျှတမှု
  2. 8 Queens Problem

နိဂုံး

ဂျင်နက်တစ် အယ်လဂိုရီသမ်များကို လိုဂျစ်စတစ်နှင့် ရှာဖွေမှုဆိုင်ရာ ပြဿနာများအတွက် ဖြေရှင်းရန် အသုံးပြုသည်။ ၎င်းနယ်ပယ်သည် စိတ်ပညာနှင့် ကွန်ပျူတာသိပ္ပံကို ပေါင်းစပ်ထားသော သုတေသနမှ စိတ်အားထက်သန်မှုရရှိထားသည်။

🚀 စိန်ခေါ်မှု

"ဂျင်နက်တစ် အယ်လဂိုရီသမ်များကို အကောင်အထည်ဖော်ရန် ရိုးရှင်းသော်လည်း၊ ၎င်း၏ အပြုအမူကို နားလည်ရန် ခက်ခဲသည်။" source ဂျင်နက်တစ် အယ်လဂိုရီသမ်ကို အသုံးပြု၍ Sudoku puzzle ကို ဖြေရှင်းသည့် နမူနာတစ်ခုကို ရှာဖွေပြီး၊ ၎င်းအလုပ်လုပ်ပုံကို sketch သို့မဟုတ် flowchart အဖြစ် ရှင်းပြပါ။

Post-lecture quiz

ပြန်လည်သုံးသပ်ခြင်းနှင့် ကိုယ်တိုင်လေ့လာခြင်း

ဒီအလွန်ကောင်းမွန်သော ဗီဒီယို ကို ကြည့်ပါ၊ ဂျင်နက်တစ် အယ်လဂိုရီသမ်များဖြင့် neural networks ကို လေ့ကျင့်ခြင်းအားဖြင့် ကွန်ပျူတာသည် Super Mario ကို ကစားနိုင်ပုံကို ရှင်းပြထားသည်။ ၎င်းလိုမျိုး ကစားပုံကို သင်ယူရန် နောက်အပိုင်းတွင် ဆက်လက်လေ့လာပါ။

Assignment: Diophantine Equation

သင်၏ရည်မှန်းချက်မှာ Diophantine equation ဟုခေါ်သော integer roots ပါသော အချိုးအစားကို ဖြေရှင်းရန်ဖြစ်သည်။ ဥပမာအားဖြင့် a+2b+3c+4d=30 ဟုဆိုပါက၊ ၎င်းအချိုးအစားကို ဖြေရှင်းနိုင်သော integer roots ကို ရှာဖွေပါ။

ဤအလုပ်ကို ဒီ post မှ အားကျ၍ ဖန်တီးထားသည်။

အကြံပြုချက်များ-

  1. roots များကို [0;30] အတွင်းတွင် ရှိသည်ဟု သတ်မှတ်နိုင်သည်။
  2. gene အဖြစ် root values များ၏ စာရင်းကို အသုံးပြုပါ။

Diophantine.ipynb ကို စတင်ရန် အသုံးပြုပါ။