Suppose that in CVXR
I have a definition A <- Variable(3,3)
and would like to maximize the function "sum of the square roots of the non-diagonal elements". However, if I write something like
sum(sqrt(A))-sum(sqrt(diag(A)))
, the first function being concave, but the second one too, this does not comply with the DCP Ruleset
and therefore rejected by the CVX
engine. However, it is clear that the function is concave -- we have simply removed some of the elements in the sum,
there being no ways of saying "consider non-diagonal elements, please".
What can be done?
CVXR: addressing non-diagonal elements of a matrix of variables
220 Views Asked by Ilonpilaaja At
1
Have you tried writing the second term (
term2
below) as a sum of the actual diagonals? For example,