the nonlinear equiality constraint in multi-objective genetic algorithm (MOGA)
3 views (last 30 days)
Show older comments
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!
0 Comments
Answers (0)
See Also
Categories
Find more on Genetic Algorithm in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!