Having a problem in pareto front while running GAMULTIOBJ with integer variables
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello all,
Thank your for your continuous help and assistance.
I have a problem while running GAMULTIOBJ with integer variables. I set the population size and number of generations to 50. Consequently when generation terminated and plotting the pareto front, I got oniy 18 points where all of them are duplicated and some others should be omitted if GAMULTIOBJ is working properly.
Kindly find attached the results which i got. Thank you
0 commentaires
Réponses (1)
Walter Roberson
le 2 Jan 2022
The decision variable combinations are all different, it appears to me.
If you have combinations in which some variables effectively become "don't care" (their contribution is supressed by a different variable), then you are going to get equivalent outputs, unless you put in constraints to only permit a "cannonical" form.
For example,
x3 * 5 + (x3 > 4) * (x4 * 7 - x5 * 9)
then when x3 <= 4, all values for x4 and x5 will give equivalent output, and gamultiobj cannot know that it should only emit one of the combinations. You would have to put in a constraint such as
(x3 <= 4) * ((x4 > min_x4) + (x5 > min_x5))
which would be 0 (permitted) if x3 > 4 or if x4 == min_x4 and x5 == min_x5; this would force x4 and x5 to their minima if x3 <= 4
0 commentaires
Voir également
Catégories
En savoir plus sur Multiobjective Optimization dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!