Linearising an exponential system for linear programming

166 Views Asked by At

I have a system of n constraint equations in the form of $\prod C_i/C_j \leq b_i$ where all the $b_i$ are known constants and C are unknowns. All the values of C are in the range $10^{-6}$ to $10^{-2}$ which will be the upper and lower bounds for the problem. I intend to perform a certain optimisation, and I know that linear programming guarantees a global optimum, so I linearise the system by taking natural logs. I let $x_i=ln(C_i)$. Therefore, my constraints are $$\sum ln(C_i)\leq ln(b_i)$$. $$\sum x_i\leq ln(b_i)$$ At this point I'm able to do the linear optimisation just fine. However, in a refined model of the system, I need to introduce a new constraint that the sum of some C values is constrained by a known limit, say L. For example, $C_3+C_4+C_7 \leq L$. I try to write this in terms of my decision variables $x_i$ so I write the equation as $e^{x_3}+e^{x_4}+e^{x_7} \leq L$. This equation is obviously non linear and can't be used in linear programming. I tried to check if I can linearise it with first order Taylor series; however, in this range of values for C the x values span quite a big range (around -14.8 to -4.6) and the linear approximation deviates too far no matter where I choose the center of approximation.

I also tried taking the ln of the original equation, but I did not find any helpful identities for the logarithm of a sum that could help me. So my question is if I can fit this new equation into a linear programming formulation in any way.