2017-02-06 6 views
0

Чтобы реализовать оптимизацию ADMM, я пытаюсь использовать quadprog. Уравнение Я хочу, чтобы свести к минимуму этоADMM quadprog R

`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` 

после developping моей функции у меня есть что-то вроде этого

`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? thanks

ответ

1

Постоянный термин не имеет никакого значения для самой минимизации. Просто оставьте это, найдите оптимальную точку с помощью quadprog и, если хотите, добавьте константу к значению как минимум.

 Смежные вопросы

  • Нет связанных вопросов^_^