Professional Documents
Culture Documents
Într-un sens mai larg, algoritm genetic este orice model bazat pe ideea de
populaţie şi care foloseşte selecţie şi operatori de recombinare pentru a genera noi
puncte într-un spaţiu de căutare. Multe modele au fost introduse de cercetători dintr-o
perspectivă experimentală. Cercetătorii sunt orientaţi spre aplicaţii, fiind interesaţi de
algoritmii genetici doar ca mijloace de optimizare.
Ei sunt recomandaţi pentru aflarea soluţiilor neliniare ale unor probleme atunci
când nu este posibilă modelarea matematică şi nici euristică în domeniu.
Adevăraţii profesionişti combină adesea cele mai variate tehnologii inteligente
în scopul exploatării avantajelor fiecăreia, obţinând aşa-numitele sisteme hibride.
Sunt posibile combinări de genul:
1. folosirea reţelelor neuronale la ajustarea parametrilor în sistemele expert
fuzzy,
2. extragerea cunoaşterii din reţele neuronale pentru a fi utilizată în
sistemele expert,
1
3. folosirea algoritmilor genetici la crearea unor reţele neuronale mai
compacte şi mai eficiente,
4. folosirea unei reţele neuronale pentru asistarea funcţionării unui algoritm
genetic,
5. folosirea algoritmilor genetici la reglarea parametrilor unui sistem
expert fuzzy pentru controlul proceselor,
6. îmbunătăţirea performanţei unui sistem expert prin încorporarea
raţionamentului bazat pe cazuri, etc.
2
Aplicaţii ale algoritmilor genetici – Algoritmii genetici reprezintă o metodă cu
care pot fi atacate relativ uşor probleme dificile de optimizaresau control, cu rezultate
bune sau chiar optimale.
Când se vorbeşte de aplicarea unei idei din software, se referă în general la un
prototip care arată cum ar putea fi folosită respectiva idee într-un domeniu practic.
3
unul dintre studenţi a avut de susţinut două examene consecutive. Algoritmul a
obţinut o astfel de soluţie, nu întotdeauna aceeaşi, în 50% din rulări.
S-a aplicat metode similare pentru a genera orarul cursurilor; aici un cromozom
reprezintă, pentru fiecare curs, ora de începere şi locul de desfăşurare, existând
penalizări pentru lipsa de spaţiu în sala de curs, pentru distanţe prea mari între sălile
unde se desfăşoară două cursuri consecutive. Metodele tardiţionale de plnificare, sun
mai rapide dacă restricţiile sunt de tip “aceste evenimente nu pot avea loc simultan”,
dar algoritmii genetici reprezintă o soluţie superioară dacă există şi alte restricţii mai
complicate.
4
Un asemenea ciclu se repetă până când este identificată cea mai bună soluţie la
problema în cauză.
Abandonarea
Populaţia
Evaluarea Selecţia
Reproducerea
5
modul de utilizare a algoritmilor genetici în alocarea bugetară, în vederea asistării
guvernelor şi administraţiilor locale la adoptarea celor mai bune decizii.
Problemă :
Se consideră {0,1}L mulţimea şirurilor binare de lungime L. Pentru un şir s din
această mulţime notăm cu s1 numărul de componente egale cu 1 ale şirului. Fie N un
număr natural nenul mai mic decât L, şi f o funcţie care asociază fiecărui şir s o
valoare egală cu s1 dacă s1 nu este multiplu de N, şi 2s1 în caz contrar. Să se găsească
un şir s* care maimizează f. Se va lua valorile L=10 şi N=3.
Exemplu de utilizare :
Program ce constă în maximizarea unei funcţii definite f(s)=s1 Se deschide
fişierul ex1.prj din Borland şi se modifică fişierul ex1.c. Fişierul rezultat va avea
forma :
#include<stdio.h>
#include”sugar.h”
int evaluate(SuChromosome*chrom,double*fitness);
{
int i;
int N=3;
int count=0;
double result=0.0;
if(count%N==0)result=2*count;
return 0;
}
generation 10
population 10
length 10
în
generation 100
population 50
length 10