0

为了实现 ADMM 优化,我尝试使用 quadprog。我想最小化的方程是

`min x^T*S*x + 1(x) + lambda^T*(x-z) + rho/2*||x-z||²`

quadprog 最小化以下格式的函数

`min -d^T*b + 1/2*b^T*D*b`

在开发我的功能后,我确实有这样的东西

`min x^T*C*x + lambda^T*(x-z) - rho*x*z + rho/2*z² + 1 - lambda^T*z`

所以我可以设置 quadprog 参数,我有 Dmat = S + diag(rho/2)dvec = rho*z - lambda. 但我确实有不变的价值观:rho/2 * z² + 1 - lambda*z那仍然存在!

如何将其添加到 quadprog 函数?谢谢

4

1 回答 1

2

常数项对最小化本身没有任何意义。只需将其关闭,使用 quadprog 找到最佳点,如果您愿意,可以将常数添加到最小值。

于 2017-03-06T12:56:28.063 回答