简体   繁体   中英

simplex method with bounded variables tool

Is there any reliable tool or source code (preferably C++) for solving LPs with bounded variables by simplex method? In my problem all variables are bounded to 1.

I actually found some tools in StackOverflow posts: SoPlex, CLP and lpsolve.

Among them, SoPlex is more extensive I suppose. In the documentation, it is said that SoPlex considers variable bounds. Then it says:

"If all primal variables are within their bounds, the Simplex basis is said to be primal feasible. Analogously, if all dual variables are within their bounds, its is called dual feasible. If a basis is both, primal and dual feasible, the optimal solution has been found."

My impression is that it does not FORCE the basis to be within variable bounds, instead it checks if the variables of the solution are within the bounds. If so, it considers the solution optimal.

Are there any tools out there to find a feasible solution considering variable bounds?

LPs with bounded or boxed variables are completely normal and very common. Just like problems with ranged constraints, ie constraints with both a left and a right hand side.

SoPlex is capable of running both the primal and the dual simplex. It starts from a slack basis - all variables are on one bound - and shifts the bounds accordingly to make this basis primal or dual feasible for the respective simplex type.

Another possibility to get a feasible basis is to use the so-called phase 1. This solves a modified LP and switches then back to the original.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM