How can I set bounds for ga that change with the values of the optimization variables?
3 次查看(过去 30 天)
显示 更早的评论
Hi. I have lower and upper bounds for my ga optimization variables that depend on those variables' values. Is there a way to input the values of the variables in each iteration of the ga into functions that compute the lower and upper bounds vectors and input those lb and ub back into the ga?
0 个评论
采纳的回答
John D'Errico
2022-3-13
You cannot. Bounds are FIXED constants. They do not vary at all, and the optimizer assumes that as fact.
If you have a constraint that is a function of the parameters, then that is a nonlinear constraint. Or a linear one, if it can be writtten as a linear combination of the parameters.
更多回答(1 个)
Torsten
2022-3-13
Instead of using the array lb and ub, you will have to prescribe such bounds that depend on the solution variables in the Constraint Function, usually called "nonlcon" in the documentation.
2 个评论
Walter Roberson
2022-3-13
However, it is common to use lb ub and linear or nonlinear constraints. lb and ub are the fastest kind of constraints; linear constraints are a little slower (they require multiplications), and nonlinear constraints are slowest.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Genetic Algorithm 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!