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
Fastest simplex algorithm package (faster than linprog) ?
4 messages · u0055 at wolke7.net, Arne Henningsen
Dear Uwe I suggest to use "lpSolve" or "lpSolveAPI." /Arne
On 8 June 2015 at 10:18, <u0055 at wolke7.net> wrote:
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
Arne Henningsen http://www.arne-henningsen.name
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:
Dear Uwe I suggest to use "lpSolve" or "lpSolveAPI." /Arne On 8 June 2015 at 10:18, <u0055 at wolke7.net> wrote:
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
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