Transform non-convex optimization problem to convex one by add variable

345 Views Asked by At

my non-convex optimization problem is as follow: \begin{align} \min_x a_1 x_1^2 + a_2x_1 + a_3 - \frac{a_4}{x_1} \end{align} subject to: \begin{align} \frac{c_1}{x_1}+c_2\leq d_{\mathrm{max}} \end{align} \begin{align} x_{\mathrm{min}} \leq{x_1} \leq x_{\mathrm{max}} \end{align} where $x_{\mathrm{min}}> 0$. My question is: Can I add a new variable $x_2$ and related with it the constraint in order to transform my optimization problem to convex one? \begin{align} \min_x x_2 - \frac{a_4}{x_1} \end{align} subject to: \begin{align} \frac{c_1}{x_1}+c_2\leq d_{\mathrm{max}} \end{align} \begin{align} x_{\mathrm{min}} \leq{x_1} \leq x_{\mathrm{max}} \end{align} \begin{align} a_1 x_1^2 + a_2x_1 + a_3 \leq x_2 \end{align} Theoretically, based on Boyd book "Convex optimization" the problem is convex when the objective function is convex or concave and all constraints are convex but I put the transformed problem to MATLAB fmincon solver which applies SQP algorithm and sometimes I get no optimal solution (lower bound of $x_1$. When I change the algorithm to interior-point method everything is correct. Thus, I am thinking that the problem is in the transformation or in the applied algorithm.