Are there any benefits in casting a convex program into a linear program?

90 Views Asked by At

I'm curious a relative broad question:

Suppose I have a convex program in hand. Hence, I could use many well-developed software packages to solve this problem for sure, e.g., CVX.

But, instead of using CVX, suppose I can recast the original convex program into a linear program. I was wondering if there is any benefit I can get from this recast linear program? Can I say I definitely get a better computational complexity? And is there any suggested paper/book related to my question that I can consult with?

Thank you.

1

There are 1 best solutions below

0
On BEST ANSWER

In my experience there are three practical reasons I want to do that:

  • Linear solvers are often faster. E.g. Cplex LP is often faster than Cplex QP/QCP (same thing for Gurobi). Even more pronounced: MIP is faster than MIQCP.
  • Linear solvers are often more robust. One reason may be because they have seen more LP problems than NLP problems.
  • Gurobi and Cplex don't offer general convex solvers. I.e. some of the fastest solvers are geared towards LP/MIPs.

Of course if the linearized version of the model adds much more complexity (e.g. piecewise linear) then the above advantages may not outweigh this added complexity.