the nonlinear equiality constraint in multi-objective genetic algorithm (MOGA)

2 vues (au cours des 30 derniers jours)
Stanley Cheng
Stanley Cheng le 11 Nov 2014
Hi everyone,
I am using the multi-objective genetic algorithm (MOGA) in the Global Optimization Toolbox in matlab 2013b for the optimization in the project.
Because the matlab 2013b cannot support the nonlinear constraints including the equalities and inequalities, my idea is to apply the penalty method, i.e. if the nonlinear equalities or inequalities cannot be satisfied, a very large value will be assigned to the objective functions.
However, in one nonlinear equality A*b=C, (where A is a 4*6 matrix, b is a 6*1 vector, and C is a 4*1 vector), all of the 13 variables in the project are all contained in it.
For this equality constraint, the method dealing with it is:
first, D=A*b-C is defined,
then the value of dot(D,D) is verified:
if dot(D,D) is larger than eps, then a very large value is assigned to the objective functions; if dot(D,D) is not larger than eps, then the objective functions keep their previous values.
The problem I encounter is : dot(D,D) is always larger than eps. Even some tolerance is given to dot(D,D), like 0.5, dot(D,D) is still larger than the tolerance value.
I am not sure the method to tackle this equality is right or not in MOGA. But this important equality constraint must be met in the project.
Could anyone give some instructions about this? Thanks very much!

Réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by