For this type of function, how can I effectively transform it into a form acceptable to CVX

I believe the objective function is convex for x, y both >= 0. But I don’t see how to formulate that in a DCP-compliant manner, and don’t know whether it is possible. Perhaps @Michal_Adamaszek does?

As for C2, it would be appreciated if you made the minimal effort to look at answers to your previous questions.

Edit: There was a typo in my calculations. The objective function is neither convex nor concave.

Thank you very much for your answer. Regarding the C2, I always remember the method you used to reply to me. At present, my problem is the conversion of the objective function. :grinning:

Ignoring CVX rules, i.e., if applied to numerical arguments rather than CVX expressions,
objective = x + inv_pos(-rel_entr(x/y,x/y+1))/log(2)

Edit: There was a typo in my calculations. The objective function is neither convex nor concave.

When x is fixed the objective function is a concave rather than convex function of y judging from a quick look at the plot.

Thank you very much. I understand what you mean. When we only consider mathematical expressions, we can indeed convert expressions into the form you said. I plan to refer to some other documents to see if there are any similar documents to cite this idea.

I want to know, because my expression can be divided into two parts, just look at the first part, it is about the monotonically increasing function of the variable x. In the second part, we can use fractional programming to transform it into a non-fragmented form, which can then be transformed into a standard CVX form. In the case where I only solve the variables x and y that meet the second part, does the value found satisfy the optimal solution of the entire expression

@Michal_Adamaszek You got me to check my calculations, and I discovered a typo in my MAPLE calculations. The objective function is indefinite, i.e., neither convex nor concave, as a function of x and y, even when restricted to values of x and y satisfying the constraints. For example, at x = 0.5, y = 1, which satisfies the constraints, the Hessian has one each of positive and negative eigenvalues.

I could have saved racking my brain to find a DCP formulation.


In other words, I optimized the second part, can the optimal value represent the entire objective function. If not, what’s wrong with my logic

The 2nd part ias neither convex nor concave, and therefore so is the sun, Therefore CVX can not accept this function for use in an objective function or constraint. Please carefully read the link I provided in my previous post, and follow its advice.

In the second part, we can use a dinkelbach method to change it into the form of numerator-denominator. I think this can meet the requirements of CVX, because I did not use this fractional target as the optimization target. My idea is to find a Intermediate variable q to optimize this non-fractal goal, where q is y*/(xlog(1+y/x*))

If y is fixed, the objective function = x + y*log(2)*inv_pos(-rel_entr(x,x+y)), which is a convex expression which CVX accepts. But if x and y are both optimization variables, it is neither convex nor concave.