Hello, I’m trying to exress x*log(1+1/y) in cvx with rel_entr( ). Can anyone please help me? Thanks a lot.
It is not convex, so it can’t be done.
Thanks. But I think it’s a concave function.
It is not concave either. Because, when x=1, log(1+1/y) is convex . When y=x, ylog(1+1/y) is concave( x>0,y>0).
As @Michal_Adamaszek has shown,
x*log(1+x/y) = rel_entr(x+y,y) + rel_entr(y,x+y)
, which is convex (not concave).
So if your post has a typo and is supposed to have x/y
rather than 1/y
, here is the formulation to use. Otherwise, you’re out of luck with CVX, as @jackfsuia says.