Duplicates in Pareto frontier using gamultiobj

조회 수: 1(최근 30일)
ew1124 2018년 11월 16일
답변: Alan Weiss 2018년 11월 19일
I am using gamultiobj in the Global Optimization Toolbox to solve a knapsack problem. I use the following code:
[xbest, fbest, exitflag] = gamultiobj(@KnapsackWeightMulti, 22, [], [], [], [], ...
lb, ub, @const_knap, opts)
When I examine the xbest variable generated, which to my understanding represents the Pareto frontier of solutions, many of the solutions are duplicates. Why is this?

채택된 답변

Alan Weiss
Alan Weiss 2018년 11월 19일
The genetic algorithm does not remove duplicate points that it finds.
I do not know how you are implementing the constraints for the problem, but I believe that this is an integer-constrained problem. It is entirely possible that gamultiobj does not have a large enough population to give you a diverse Pareto front with the constraints satisfied, or there might not be that many points on the Pareto front even with a large initial population that is well-dispersed. In other words, it is possible that the solution is, by its nature, just a few points, so gamultiobj has to have a lot of duplicates in its solution.
Alan Weiss
MATLAB mathematical toolbox documentation

추가 답변(0개)

Community Treasure Hunt

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

Start Hunting!

Translated by