Determinant Maximization problem

144 views
Skip to first unread message

Sandeep hegde

unread,
Mar 15, 2021, 1:47:10 PM3/15/21
to cvxpy
Hello members, I am trying to solve the 'log_det' problem of the form

Max det(Y)
subject to [[Y,  (A-BL)'Y],
                   [Y(A-BL),  Y]] >=0
L_i@Y@L_i' <=1

Here A,B, and L are numpy arrays and values are known. Y is cvx variable of shape (n,n)
Here is my code:

Y = cvx.Variable((n,n))
obj = cvx.Maximize(cvx.log_det(Y))
constraints = []
F = np.array([
[Y, Y@(A-B@L).T],
[(A-B@L)@Y, Y ]])

for i in range(m):
   constraints+= [L[i,:]@Y@L[i,:].T<=1]

 constraints+= [F>>0]      //F should be positive semidefinite

p = cvx.Problem(obj,constraints)
res = p.solve()    //error showing line

When I use this function, I get the error:
AttributeError: 'numpy.ndarray' object has no attribute 'parameters'.

What am I missing in the formulation? Can someone please help me out?

Thank you
Sandeep

Steven Diamond

unread,
Mar 15, 2021, 6:30:59 PM3/15/21
to cvxpy
It should be 
```
F = cvx.bmat([
[Y, Y@(A-B@L).T],
[(A-B@L)@Y, Y ]])
```
Play around with that.

Reply all
Reply to author
Forward
0 new messages