Hi all,
I have verified that the function (a*exp(-x) - b)^(-1/2) is convex with respect to x, where a and b are the constants. If I express this function in a straight way, it cannot pass the convex validation procedure of the cvx in matlab. It would be greatly appreciated if you can show me some experience in addressing this type of functions.
Best,
fishing cvx
a, b have to be positive and x\leq 0. Then you can reduce to the question of representing
t\geq \frac{1}{\sqrt{e^{-x}-1}}
and this is equivalent to
t\geq e^z,\quad 1\geq e^x+e^{x-2z}
which you can input directly.
How can you come up with this? The original inequality is equivalent to
-x\geq\ln{(1+\frac{1}{t^2})}
and you see that if you could replace t with something exponential then you would have a log-sum-exp. You can recognize it here 5 Exponential cone optimization — MOSEK Modeling Cookbook 3.3.0 Similar method would work if the square root was some other power.
1 Like
Thank you so much Michal! This function is just one component in a specific contraint. So, I think introducing two auxiliary variables t and z you recommended would be a good choice.