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

5 次查看(过去 30 天)
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?

回答(1 个)

Umang Pandey
Umang Pandey 2023-9-26
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 个评论
ray
ray 2024-8-20
I also have the same problem. I tried this method but it didn’t work. Is there any other method? Thank you.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Multiobjective Optimization 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by