Optimizare Multiobiectiv Utilizand Algoritmi Genetici
Optimizare Multiobiectiv Utilizand Algoritmi Genetici
Optimizare Multiobiectiv Utilizand Algoritmi Genetici
utilizand
algoritmi genetici
Multiobjective optimization
using
genetic algorithms
Multiobjective Optimization (MOO)
that minimizes
{f1(x), f2(x),…, fM(x)}
The boxed points represent feasible choices, and smaller values are preferred
to larger ones. Point C is not on the Pareto frontier because it is dominated by
both A and B points. Points A and B are not strictly dominated by any
other, and hence do lie on the Pareto frontier.
Case study
We want to minimize two competing objectives,
each having one decision variable.
f1 (x ) = ( x + 2) 2 − 10
f 2 (x ) = ( x − 2) 2 + 20
140
120
100
80
60
40
20
-20
-10 -8 -6 -4 -2 0 2 4 6 8 10
x
8 /20
Fitness assignment:
multiobjective ranking
30 -2.4099 21.5500
-10.0000 36.0023
28
-5.8569 23.8594
26 3.2289 20.1317
24
22
20
-10 -8 -6 -4 -2 0 2 4 6 8
Objective 1
Solutions from the Pareto front
6
-2.000282778881986
2.000661899149350
5 2.000661899148628
2.000661899149427
4 2.000661899148811
-2.000282778881986
3 -2.000282778881986
-2.000282778881986
1.035470952846574
2
0.505323859855575
0.755010732722052
1 -2.000282778881986
-2.000282778881986
0 2.000661899148662
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 -1.000282778881986
Rank 0.035470952846574
1.637152311139357
Score Histogram
5
4.5
3.5
Number of individuals
2.5
1.5
0.5
0
-10 -5 0 5 10 15 20 25 30 35 40
Score (range)
Problema se poate exporta in workspace
w1=0.2; w2=0.8;
Parametrii: R1 R2 RE RC
Cerinte de proiectare: Avo , Ro
Constrangere liniara de inegalitate
• Domeniile de valori ale pentru a avea tranzistorul in conductie
parametrilor
R1 − 9 R2 ≤ 0
10K ≤ R1 ≤ 200K
1K ≤ R2 ≤ 200K
Mai trebuie satisfacuta si conditia
0.5K ≤ RE ≤ 10K
VCE ≥ VCE _ c
0.5K ≤ RC ≤ 20K
Pentru ca T sa nu intre in saturatie
VCE = VCC − I C (RC + RE )
Rezulta o constrangere neliniara de
inegalitate
Cerinte de proiectare
Avo = Avo _ c
Ro = Ro _ c
• Deoarece optimizarea MOO cu AG nu permite utilizarea de
constrangeri neliniare de valori ale parametrilor vom include aceasta
constrangere in functia obiectiv.
A = [1 − 9 0 0] b = [0]
300
Formularea functiei
200
obiectiv (multiobiectiv)
y(1)
100
0
0 100 200 300 400 500 600
Avo_c=300; Avo
Ro_c=2.5; 3
Vce_c=2.5; 2
y(2)
y(1)=abs(Avo_c-av); 1
y(2)=abs(Ro_c-ro);
0
y(3)=zmf(vce,[0.5*Vce_c,Vce_c]) 0 1 2 3 4 5
Ro
0.5
circuitului, calculate pentru
fiecare individ in parte
0
0 0.5 1 1.5 2 2.5 3 3.5 4
Vce
24 /20
Rank histogram
15
Number of individuals
10
0
1 2 3 4 5 6 7 8
Rank
Average Spread: 0.0966314
1
Average Distance Between Individuals
100
0.9
90 0.8
80 0.7
Average Spread
0.6
Avergae Distance
70
0.5
60
0.4
50
0.3
40
0.2
30 0.1
20 0
20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200
Generation Generation
Pareto front
10
6
Objective 2
0
0 20 40 60 80 100 120
Objective 1
6 solutii selectate din cele 15 de pe frontul Pareto
"equal"
400
Avo 200
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
"equal"
20
Ro
10
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
"greater than"
6
Vce
2
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
solution
Cum poate alege utilizatorul solutia finala dintre cele de pe frontul Pareto?