最小化必须为正的差值



我有以下优化:

最小化:obj(x) = f(x) -常量

sbj。致:lb

sbj。To: f(x) -常数>= 0

我有一种感觉,这不是最方便的方式来放置优化问题。有没有另一种计算上更方便的方法?到目前为止,我尝试修改目标,例如使用obj(x) = (f(x) - constant)^2,这允许我避免第二个约束。但它会给我一些收敛性问题这取决于常数的值。一些想法?

我可以想到另外两种可能的方法——不确定它们是否更好,但那就是:

  1. 如果[f(x) -常数]^2给你收敛问题(不确定为什么?),试着用abs(f(x) -常数)代替它。警告:abs()函数并不总是表现最好的,有时它会混淆一些优化算法
  2. 在你的目标函数中,如果(f(x) -常数)变为负值,返回一个大值-与它变为负值的程度成正比。否则返回正常差值。

相关内容

  • 没有找到相关文章

最新更新