how can i change Pareto front axis in genetic algorithm?
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Gali Musa
am 20 Aug. 2017
Bearbeitet: Gali Musa
am 27 Aug. 2017
how can i change the axis in Pareto front plot in genetic algorithm? is there a way to plot the two objective functions on the y axis and indicate the optimal solution since there is an axis. Thank you
0 Kommentare
Akzeptierte Antwort
Elizabeth Reese
am 23 Aug. 2017
I am not exactly sure how you would like to "indicate the optimal solution" using the Pareto front, but here are a few ways to visualize the information about a Pareto front. I am elaborating on the example found at the link below which uses two fitness functions of one bounded variable.
The two fitness functions are cos(x) and sin(x) for 0 <= x <= 2*pi. If we want to visualize the two functions on the y-axis, we can execute the following code. This will plot black lines at each x on the Pareto front.
>> xs = linspace(lb,ub,500)';
>> figure
>> plot(xs,fitnessfcn(xs))
>> xlabel('x');
>> hold on;
>> plot([x';x'],fitnessfcn(x)','k')
>> legend('sin(x)','cos(x)','Pareto front')
Another way to visualize the Pareto front is to plot the parametric curve of the two objective functions over the input variable. This will look like the following.
>> fEvals = fitnessfcn(xs);
>> fEvalsPareto = fitnessfcn(x);
>> figure
>> plot(fEvals(:,1),fEvals(:,2))
>> hold on
>> plot(fEvalsPareto(:,1),fEvalsPareto(:,2),'*')
>> xlabel('sin(x)')
>> ylabel('cos(x)')
>> legend('fitness function','Pareto front')
4 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Multiobjective Optimization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!