Here's how to handle x*log(1+x/(x+y)) for x >= 0, y >= 0

x*log(1+x/(x+y)) for x >= 0, y >= 0 is jointly convex in x and y.

Similarly to Xlog( 1+ Y/(X+Y) ): DCP rules, and build-in functions in cvx , we can derive that

x*log(1+x/(x+y))
can be represented as
rel_entr(x+y,2*x+y) + rel_entr(2*x+y,x+y)

1 Like

this is beautifulļ¼Œxxxxxxxxx