Documente Academic
Documente Profesional
Documente Cultură
Programare evolutivă
și algoritmi genetici
Programare evolutivă și algoritmi genetici
Consultații
▪ sala 2301, marți 15:00-16:20
▪ solicitare consultații: online.ase.ro sau cristian.uscatu@ie.ase.ro
▪ (folosiți adresa instituțională oferită de ASE: xxxxx@stud.ase.ro)
Programare evolutivă și algoritmi genetici
Instrumente de lucru
Python 3.7.4, PyCharm 2019.2.3, NumPy, MathPlotLib, OpenCV
Manual
C. Cocianu, C. Uscatu, Programare evolutivă și algoritmi genetici,
Editura ASE București, 2015
Alte cărți
Eiben, A. E., Smith, J. E., Introduction to Evolutionary Computing,
Springer-Verlag, 2003
Fulcher, J., Jain, L. C. (Eds.), Computational Intelligence: A
Compendium, Springer-Verlag, 2008
Engelbrecht, A.P., Computational Intelligence. An Introduction, John
Wiley & Sons, 2007
Programare evolutivă și algoritmi genetici
Evaluare pe parcurs
▪ Seminar 50%
▪ Probă practică 50%- săptămîna 10
▪ Lucrare scrisă 50% - săptămîna 14
Diverse
▪ Prezență, recuperare absențe, studiu individual, reguli, colaborare
online.ase.ro
Fișa disciplinei, prezentări, teme, alte materiale, comunicație
PEAG Calcul evolutiv (EC).
Suport de natură biologică
Evoluție a populației
Fenotip (axele x, y) -> evaluare, calitate (axa z)
Avans spre zone mai „înalte”
Probleme unimodale / multimodale
Inactivitate genetică, concentrare în puncte de maxim local
10
-5
-10
30
25
20 20
15
10 10
5
PEAG Tipuri de probleme
Probleme de optimizare
Se cunosc: model, date de ieșire dorite
Trebuie determinate: datele de intrare
Exemple: problema comis-voiajorului, planificarea activităților, problema celor N regine
Probleme de simulare
Se cunosc: date de intrare, model
Trebuie determinate: date de ieșire
Exemplu: întrebări „ce se întîmplă dacă?” („what-if”), economia evolutivă
PEAG Tipuri de probleme
− 1 , 𝑥 𝑒𝑠𝑡𝑒 𝑑𝑖𝑛 𝐶 1
{
h ( 𝑥 ) = 1 , 𝑥 𝑒𝑠𝑡𝑒 𝑑𝑖𝑛 𝐶 2
0 , indecis
PEAG Schema generală a unui EA
Mulțime candidați
Evaluează candidații
Factor stochastic
Alegere populație inițială
Selecție părinți: șanse proporționale cu calitatea
Recombinare
▪ Alegere perechi (tupluri) de părinți pentru recombinare
▪ Alegere secvențe de material genetic interschimbat
Mutație
▪ Alegere gene
▪ Alegere noi valori (alele)
PEAG Forma generală a unui EA
Pas 3. Repetă
3.1. Selectează părinți
3.2. Recombină perechi (sau n-tupluri) de părinți => progenituri
3.3. Aplică mutații asupra progeniturilor => noi candidați
3.4. Evaluează noii candidați
3.5. Selectează indivizii pentru generația următoare
3.6.
Pînă cînd este satisfăcută condiția de terminare
PEAG Clasificarea EA
Șiruri din
alfabet
finit
Algoritmi
genetici
Programar
e genetică
evolutive
Strategii
Vectori
de
numere
reale
Arbori
Programar
e evolutivă
Mașini cu
stări
finite
PEAG Exemplu
Spațiul genotipurilor
Mulțimea numerelor reale din
Populația este constituită din dim indivizi
Populația inițială este generată aleator
Selecție părinți
Alege jumătate din populația curentă prin metoda turnir (turneu)
Operatorul de recombinare
probabilitate de recombinare pc
Operatorul de mutație
probabilitate de mutație pm
PEAG Exemplu
Condiție de terminare
Număr maxim de generații permise
▪ sau
Calitatea populației nu se mai îmbunătățește semnificativ
PEAG Exemplu
Fie
dim=1000, eps=0.00001, pc =0.5, pm=0.1, 75 generații
PEAG Exemplu
PEAG Exemplu
Referințe:
Manual, capitolul 1
Spor la învăţat!