How to express multi variable concave constrain?
For example, multi variable function f(x, y) = x * log2(1 + y) is a joint concave function of x and y when y >= 0, so how to express the constrain: x * log2(1 + y) >= k with cvx?
Assuming k is a positive constant, then
log2(1 + y) >= k/x
should work.
@Erling’s formulation is implemented in CVX as
log(1+y)/log(2) >= k*inv_pos(x)
because log2
is not supported for cvx expressions.
And this assumes x >= 0
; otherwise the constraint is not convex.