How do I get wider pareto front with 'gamultiobj'?

5 Ansichten (letzte 30 Tage)
SEO BOIL
SEO BOIL am 10 Jun. 2022
Kommentiert: ray am 20 Aug. 2024
I'm trying to solve multi-objective problem with 'gamultiobj', which has 6 design variables and 2 objective functions.
The problem is that I can get only small part of pareto front (i.e. narrow lcoal pareto front) with default options in 'gamultiobj'.
I want to get more wider local pareto front. What should I do for this?

Antworten (1)

Umang Pandey
Umang Pandey am 26 Sep. 2023
Hi,
To obtain a more expansive Pareto front using the “gamultiobj” function, you can make a few adjustments in the "Optimizations options” using the optimoptions” function.
1. Increasing the Population Size: Increasing the initial population size will allow a greater scope for “exploration”, potentially leading to a more expansive solution set. This can be done by changing the "PopulationSize" option in the following manner:
options = optimoptions('gamultiobj', 'PopulationSize', 400);
2. Modify Pareto Fraction: The "ParetoFraction" option has a direct effect on the number of solutions obtained. The default value is 0.35. So, if the initial population size is “N”, the number of solutions obtained will be “0.35N”. You can increase the pareto fraction to obtain more points in the solution space in the following manner:
options = optimoptions('gamultiobj', 'ParetoFraction', 0.60);
There can be other ways to do this, like increasing the number of generations ("MaxGenerations"), modifying the Crossover and Selection function, etc.
Please refer to the following documentation for more information:
Best,
Umang
  1 Kommentar
ray
ray am 20 Aug. 2024
I also have the same problem. I tried this method but it didn’t work. Is there any other method? Thank you.

Melden Sie sich an, um zu kommentieren.

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!

Translated by