在CVXPY中由表达式组成的矩阵上施加PSD约束的正确方法

时间:2020-02-27 10:15:56

标签: cvxpy

我正在将CVXPY用于半定程序。在这里,我将对问题使用非常常规的设置。

我有一个变量X,它是一个PSD矩阵。现在,我想在另一个矩阵W中使用此变量,该矩阵将逐个元素地构造。另外,我想将此新矩阵W约束为PSD。

这是我现在实现的方式:

import cvxpy as cp

X = cp.Variable((3,3), PSD=True)

row_1 = cp.hstack((0, 1, X[0,0]))
row_2 = cp.hstack((1, 0, X[1,2]))
row_3 = cp.hstack((X[0,0], X[1,2], 0))

W = cp.vstack((row_1, row_2, row_3))
constraint = [W >> 0]

这是合理的方法还是有更好的方法?

0 个答案:

没有答案