Skip to content

Fastest simplex algorithm package (faster than linprog) ?

4 messages · u0055 at wolke7.net, Arne Henningsen

#
Dear R-SIGs,

I would like to solve a simplex problem on a web server on the fly.
The simplex algorithm should be fast,
because the surfers are waiting.

I'm using linprog package right now.
It works well, but it takes ca. 4 minutes.

Does anybody know a very fast simplex algorithm package ?
It should understand constraints including '=', '>=' and '<='.
It should run natively under one of these Linux versions:
Cent OS 7.1
Cent OS 6.6
Debian 8
Debian 7
Ubuntu 15.04
Ubuntu 14.10
Ubuntu 14.04
Fedora 21
openSUSE 13.1
openSUSE 11.4

Thanks and all the best,
Uwe
#
Dear Uwe

I suggest to use "lpSolve" or "lpSolveAPI."

/Arne
On 8 June 2015 at 10:18, <u0055 at wolke7.net> wrote:

  
    
#
Dear Arne,
Dear R-SIGs,

Thanks a lot for your suggestion.
I replaced "linprog" by "lpSolve".
The calculation time for my simplex problem
went down from 180 to 54 seconds :-)

54 seconds is still rel. long
for the surfers to wait for the server to respond.
Isn't there a faster way to calculate my simplex ?

I ported my simplex problem to windows and
calculated it with "whatsbest" from "LINDO SYSTEMS INC":
http://www.lindo.com/index.php?option=com_content&view=article&id=3&Itemid=11
Here it takes 1 second.
So there must be a faster way for calculating my problem.
Does anybody have any idea ?

Is the calculation time from "lpSolve"
depending on the OS (Linux or Windows) ?

Are there maybe any "preprocessors" out there,
which have a look to the simplex problem and
simplify it anyhow before running the simpex algo ?

Thanks and all the best,
Uwe


Am 08.06.2015 um 10:39 schrieb Arne Henningsen:
3 days later
#
Dear Arne,
Dear Brian,
Dear Joe,
Dear R-SIGs,

Thanks a lot for all your help.
My problem is solved :-)

Problem:
My problem was that calculating a simplex was to slowly.
I didn't use R directly.
My program is written in NodeJS,
the library "RIO" puts data to Rserve and
Rserve is coupled with R.
My calculation was slowly,
because the simplex input data had to travel this way and
the result data takes the same way back.
Input data is ca.
1000 free variables * 3000 constraints = 3000000 values.
This data transfer costs me ca. 40 seconds per round trip.

Solution:
My solution is to use node-lp_solve without using R:
https://github.com/smremde/node-lp_solve
Now the 3000000 values are connected program intern
to the simplex algo.

Thanks again and all the best,
Uwe