My purpose is to find the optimal value of the function, \sum_{i=1}^{10}\log_2(1+\frac{x_iy_i}{x_i+y_i}),\quad x,y\in{R}^{10}_+,
subject to \sum_{i=1}^{10}x_i+y_i=2, which is concave on the defined domain. so I want to maximize it as an objective function in CVX. but the code doesn’t work (dcp error). Is it possible to write this function in a way that CVX will recognize its concavity?
Because the CVX developer did not include support for log2.
However, you can formulate as log2(x) = log(x)/log(2), which CVX will accept if x is a concave expression following CVX’;s rules. Or if it is the only term in the objective, you can just leave out the /log(2), and the argmax will be the same.