我尝试使用来自C#库的Cobyla类来解决带约束的非线性优化问题。当约束是常量时,它可以正常工作,例如:
NonlinearConstraint(2, x => x[0] + x[1] <= 100.0)
我需要在约束中使用变量(值需要由用户更改),例如:
double limit = 100.0;
NonlinearConstraint(2, x => x[0] + x[1] <= limit)
但它不起作用。我得到了例外:
Accord.Math.dll中出现未处理的“System.NullReferenceException”类型异常
有人能告诉我如何使用变量正确定义NonlinearConstraint
的示例吗?