1. Most egy peldan mutatjuk be az algoritmus mukodeset. Adott a kovetkezo fuggveny: y=sin(x/512)+cos((2*x)/512). Az x fuggetlen valtozo tartomanya 0 es 1023 kozott mozog. Hatarozzuk meg a fuggveny szelsoerteket genetikus algoritmus segitsegevel. A megoldas megtalalasa tobb iteracio vegrehajtasat jelenti, itt csak egy iteraciot mutatunk be. 2. Mivel az x tartomanya 0 es 1023 kozott van, minden egyedet 10 bites kromoszomaval reprezentalunk. Ebben a peldaban a populacio 8 egyedbol fog allni. A kromoszoma L=10 hosszusagu bitsztringbol all, az egyedek szama a populacioban pedig N=8, es az algoritmus futasa soran allando, nem valtozik. 3. A kezdopopulaciot veletlenszeruen hatarozzuk meg, minden bit, illetve gen 50%-os valoszinuseggel vehet fel 0 vagy 1 erteket. A kromoszomanak minden valtozata 1/(2^L) valoszinuseggel jelenhet meg, ebben az esetben ez 1/1024. A kovetkezo abran lathatjuk a veletlen kezdopopulaciot. 4. Az elso lepes a kezdopopulacio egyedeinek kiertekelese, ami annyit jelent, hogy kiszamitjuk az aktualis populacioban talalhato egyedek celfuggveny-erteket. Ezt f-fel jeloljuk. 5. Utana a kiertekelt egyedek fitneszet skalazassal hatarozzuk meg. A populacio atlagos celfuggveny-erteke 3.026/8=0.378. Ezutan az ff=f/f_atl keplet alapjan szamitjuk ki az egyedek josagat, illetve fitneszet. A fitneszek osszege 8, tehat ha az egyes ff ertekeket elosztjuk 8-cal, az egyedek szazalekban mert fitneszet nyerjuk. Az utolso oszlop a szazalekos oszlop alapjan elkeszitett kummulativ szumma. Gyakorlatban a kivalasztast ugy vegezzuk, hogy letrehozunk egy veletlen szamot 0 es 1 kozott, es megnezzuk hogy a kummulativ szumma melyik tartomanyaba kerul. Ha peldaul a veletlenul letrehozott szam 0 es 0.2315 kozott van, akkor az elso egyed kerul kivalasztasra, es igy tovabb. A kummulativ szumma a rulettkerek szelekcio megvalositasara szolgal. 6. A rulettkerek alapjan belathato hogy az 5. egyednek (ami 41) van a legnagyobb eselye a tulelesre, a fuggveny grafikonjan is lathatjuk hogy ennek az egyednek van a legnagyobb fitnesze. 7. Mivel a populacio 8 egyedbol all, a rulettkereket kepletesen 8-szor fogjuk megforgatni. Feltetlezzuk, hogy a kovetkezo egyedek lettek szelektalva: 4, 5, 1, 4, 7, 1, 6, 5 Amint latjuk, a legnagyobb fitnesszel rendelkezo egyedek tobbszor is ki lettek valasztva (ezek a 4., 5. es az 1.), valamely egyedek pedig egyszer se lettek kivalasztva (ezek a 2., 3. es a 8.). 8. A szelektalt egyedeket keresztezzuk, es ebben a peldaban egypontos keresztezest alkalmazunk ami annyit jelent, hogy a kromoszomat egy veletlen pontban elvagjuk, a bal oldalakat erintetlenul hagyjuk, a jobb oldalakat pedig felcsereljuk. Az egypontos keresztezesen kivul letezik meg ketpontos, es tobbpontos keresztezes is. 9. A kovetkezo lepes a mutacio amelyik egy meglevo kromoszomat kis mertekben modosit. A mutacio valoszinusege kicsi, genenkent nehany szazalek, legyen ebben az esetben 4%. Mivel a populacio 80 genbol all (8*10), ezert 80*0.04=3.2~3 bit lesz megvaltoztatva. A mutacio az adott poziciokon a 0-t egyesre, az 1-est 0-ra valtja. 10. Ezen az abran lathato a regi es az uj generacio egyedeinek helyzete. 11. Az utolso lepes a reprodukcio. Ez a muvelet lehet generacios valtas amikor az osszes szulo egyed elveszik, helyukbe az utodok lepnek. A masik lehetoseg az ugynevezett elitizmust alkalmazni. 12. Ez annyit jelent hogy a szuloegyedek kozul kivalasztjuk a legjobb egyedet vagy egyedeket, es valtoztatas nelkul athozzuk oket az utodok koze. Ezt azert tesszuk mert nem szeretnenk hogy a jo fitneszu szulok elvesszenek. A genetikus algoritmusoknal nincs garancia arra hogy ket jo fitneszu szulo utoda is jo fitneszu lesz, az is megtortenhet hogy az utodok legjobb egyede rosszabb a szulopopulacio legjobb egyede fitneszetol. Az elitizmussal ovatosan kell banni mert ha tul nagy szazalekra hatarozzuk meg akkor az a veszely fenyeget hogy a populacio nem lesz valtozatos. 13. Az algoritmus addig vegzi a szelekcio - rekombinacio - mutacio - reprodukcio ciklust amig egy elore meghatarozott kilepesi feltetel nem teljesul. A kilepesi feltetelt tobbfelekeppen lehet meghatarozni. A legegyszerubb ha az algoritmus futasa egy adott szamu generacio utan er veget. Egy masik lehetoseg hogy a kilepesi feltetelt az aktualis generacio allapota hatarozza meg. Peldaul, az algoritmus akkor all le ha az atlagos vagy a legjobb fitnesz nem valtozott nehany (peldaul 10) generacio alatt. Itt most a kanonikus genetikus algoritmust mutattuk be amelyik csak alapul szolgal a gyakorlatban hasznalatos modszerekhez. Az algoritmus sikeresseget befolyasolja a populacio merete, a szelekcio tipusa, a keresztezes es a mutacio valoszinusege, es meg sok mas tenyezo.