How can I express this concave function in CVX

Clearly restrictions are needed on g_i and h_i. For instance, if N = 1, g_1 = -1, h_1 = 1, x=1, y = 2, then the Hessian of the function has one negative eigenvalue and one positive eigenvalue; so the function is not concave there.

Presuming suitable restrictions are placed on g_i and h_i so as to ensure concavity, I will leave it to someone else to determine if it can be reformulated for CVX.

Have you read the CVX User’s Guide http://cvxr.com/cvx/doc/ ? If so, you should be aware that you need to follow CVX’s rules, which your program doesn’t.

Why isn't CVX accepting my model? READ THIS FIRST!

And also, that log2 is not supported by CVX; so you must either use log(...)/log(2) , or don’t bother with dividing by log2 if this appears as a multiplicative factor for the entire objective function (and then divide the resulting optimal objective value by log(2) ).