使用Luca Di Gaspero写的quadprog++库,我所要解决的问题是:
目标函数 :0.5 * x G x + g0 x
s.t.
CI^T x + ci0 >= 0
没有等式约束,所以我的程序设置为:
MatrixCE(0.0, n, 1);
ce0[0]=0;
运行时进入if条件报错:
if (!add_constraint(R, J, d, iq, R_norm))
{
// Equality constraints are linearly dependent
throw std::runtime_error("Constraints are linearly dependent");
return f_value;
}
推测可能是等式约束设置不正确,所以求助大家,该怎么设置?
https://blog.csdn.net/huangdianye/article/details/85053875
https://blog.csdn.net/sinat_27318881/article/details/82503100