【问题标题】:How to pass the following constraints to ga in matlab?如何在matlab中将以下约束传递给ga?
【发布时间】:2016-02-16 01:27:24
【问题描述】:

我在 Matlab 中使用遗传算法 (ga),但在为其提供少量约束时遇到了问题。 到目前为止,我只通过强加边界 LB 和 UB 来使用 ga。即,

0<a_1<50, 0<a_2<50, -2<a_3<0, -50<b<0.

但是,现在我需要满足几个进一步的条件:

-54-b<a_1<-b, -2<a_3<(a_1+b)/27, sqrt(12*a_1*a_3+12*a_3*b)<a_2<-1/3*(a_1+b+27*a_3)

为了引入这些约束,我可以在目标函数中引入惩罚因子,但 GA 将无法找到全局最优向量。你知道是否有正确的方法来实现这样的约束吗?

我是 ga 新手,任何建议都会非常有用!

【问题讨论】:

    标签: matlab constraints genetic-algorithm


    【解决方案1】:

    您也可以创建自己的约束函数,然后将此函数提供给ga()。查看this 了解更多信息。在此页面中,您将找到 Mathworks 提供的关于上下界和约束的约束最小化问题的简短教程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-11
      • 1970-01-01
      • 2021-09-27
      • 1970-01-01
      • 1970-01-01
      • 2014-04-28
      • 2019-07-03
      • 1970-01-01
      相关资源
      最近更新 更多