# How can CVX maximize -sum_(i,j) x(i,j)*log(sum_j x(i,j))?

I want to maximize $$-\sum_{i,j}~x_{i,j}*log(\sum_j~x_{i,j})$$, where $$0 \leq x_{i,j} \leq 1$$.

CVX rejected me.
Cannot perform the operation: {real affine} .* {concave}’’

So how can write the code so that CVX accept?
Thanks so much!

It’s possible that the rel_entr function can help you here, but the sum definitely complicates things. I am not convinced this is convex, and even if it is, I don’t see how CVX can handle this.

Thanks so much Michael! I forgot to mention that $$0<x_{i,j}<1$$. It is convex.

Arguendo, it does not matter. CVX does not consider global convexity; that is, it does take into account bounds on the arguments when determining convexity. The DCP ruleset is non-negotiable, and convexity alone does not imply DCP-compatibility.