0

I need Big Datasets to test a parallel version of the simplex algorithm i am writing. The only Datasets i can find are in a Format called MPS but i cannot find a parser for MPS in Python or C.

I would like them to directly contain the Matrix A and the vectors b and c if possible (in an easy to parse format).

Or are there any easy to use parsers for MPS in C, Python, Java or Javascript?

thanks!

Lou K.
  • 76
  • 1
  • 5
  • 1
    Most LP solvers contain an MPS reader, so you can "borrow" from an open source solver. Not to discourage you, but there is basically no good way to make the Simplex work in parallel. – Erwin Kalvelagen May 29 '18 at 11:54
  • cvxopt has (a limited) mps-reader (python). CoinOR (Clp or maybe within Utils) will have some advanced C++(?) reader. GLPK should have a C-based one (and there are python-wrappers). For some datasets, like netlib, people already transformed those mps-files to matlab-matrices which can be read by scipy (e.g. [here](https://github.com/YimingYAN/LP-Test-Problems)). – sascha May 29 '18 at 12:42
  • 1
    See [Huangfu and Hall](https://arxiv.org/pdf/1503.01889.pdf) for a recent effort in parallelizing a sparse dual Simplex method: some success. Not so easy though (interior point methods are easier: there are good results in parallelizing the linear algebra). – Erwin Kalvelagen May 30 '18 at 14:53
  • 1
    In terms of parallelizing simplex, it's important to compare with state-of-the art *serial* solvers as parallelizing a dense-simplex is much easier, but won't be much helpful for most use-cases. That's where Erwin's scepticism probably comes from (besides theoretical results). In regards to Huanfu/Hall, there is an active code-base with improvements (preprocessing, experimental/research-like crashing) the solver [here](https://github.com/ERGO-Code/HiGHS) (Hall being one of the contribs). Maybe that's something interesting for @ErwinKalvelagen too (as he sometime looks at open-source projects). – sascha May 30 '18 at 15:19
  • (off-topic: sorry) @ErwinKalvelagen What about a blog-entry summarizing your experience in starting a company/start-up in math-opt consulting (what it seems you provide). That could be quite an interesting read. – sascha May 30 '18 at 15:21
  • Thanks for your help and suggestions! I looked into the MPS parsers you suggested but i also found a [website](http://web.tecnico.ulisboa.pt/~mcasquilho/compute/or/Fx-LP-generator.php) that generates problems like the ones i need. i will also look at the solvers you listed. I will try to parallelize dense-simplex using cuda, which i think should be possible, the only thing that worries me for now is finding the pivots. – Lou K. May 30 '18 at 17:37

0 Answers0