Mixed integer optimisation with genetic algorithm problem

4 visualizaciones (últimos 30 días)
Calen  Walshe
Calen Walshe el 3 de Abr. de 2012
Comentada: Bob Hickish el 17 de En. de 2017
Hi,
I'm trying to run setup an optimisation problem using a genetic algorithm with the following specification.
options = gaoptimset(@ga)
[x,fval,exitflag,output,population,scores] = ga(@alpha3_0,6,[0,0,0,1,-1,0],[0],[],[],[25,15,80,45,45,15],[80,15,150,200,200,100],[],[1, 2],options)
The aim is to have integer constraints on parameters 1 and 2 as well as the specified linear inequality.
According to the documentation this should be possible as it states that while equality constraints are not enforced but that the solver shouldn't have a problem with mixed integer problems and inequality constraints.
The results of this so far has been that the optimisation runs without any problems other than that the inequality constraint is completely ignored.
Any help would be greatly appreciated.
Cheers,
Calen
  3 comentarios
Calen  Walshe
Calen Walshe el 4 de Abr. de 2012
As far as I can tell, it only occurs during intermediate generations. Is it typical for values outside the bounds to be presented to the fitness function ignored in the result? The simulation I'm running is quite time consuming, so it would be good if I could find a way not to present values outside of the constraint to the model.
Bob Hickish
Bob Hickish el 17 de En. de 2017
Will update the above question if I find an answer (for other people looking into this).

Iniciar sesión para comentar.

Respuestas (1)

Seth DeLand
Seth DeLand el 4 de Abr. de 2012
Hi Calen, The GA solver uses a penalty function when optimizing mixed-integer problems. The penalty function takes into account both the fitness function and the constraint violation. There's some more info here.
So it is possible for infeasible points to get evaluated, and they return a high value for the penalty function. You could try adjusting the PenaltyFactor and InitialPenalty values to increase the penalty applied to points that violate the constraint. This won't stop all infeasible points from being evaluated, but it will make their penalty value worse which hopefully results in the solver moving away from those points faster.
  3 comentarios
Calen  Walshe
Calen Walshe el 24 de Abr. de 2012
Thank you both very much for the feedback. I think I've found a configuration that will work well for the problem I'm working on .
Cheers,
Calen
suvrat
suvrat el 26 de En. de 2014
i am facing the same problem could you please tell me how you work on this problem.

Iniciar sesión para comentar.

Categorías

Más información sobre Genetic Algorithm en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by