为了实现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功能? 感谢
答案 0 :(得分:1)
常数项对最小化本身没有任何意义。离开它,用quadprog找到最佳点,如果你愿意, 将常量添加到最小值。