0

I'm looking for ways to generate test problems for simplex-method linear programming solvers
(A x <= b, x >= 0) that have many vertices, so (I believe) would make difficult test problems.

There's quite a bit of theory that looks relevant, e.g. How many vertices can a convex polytope have? But I don't see how to turn this into code for A b -- I don't need all the vertices, and Vertex enumeration would explode memory anyway.

For example, a 1000 x 1000 assignment problem gives a sparse 2k x 1m A matrix with 2m non-zeros. GLPK simplex solves this in 34 seconds -- not much of a test case.

denis
  • 21,378
  • 10
  • 65
  • 88

1 Answers1

0

Extended Latin squares give LP matrices with 4n^3 rows (constraints), n^4 columns (variables), and 4 non-zeros in each column. For examples, n=16 -- 2^14 rows, 2^16 columns, 2^18 non-zeros -- runs for 10 hours in the opensource GLPK simplex solver, on my 2.7 GHz iMac.

(The Klee-Minty cube, which was once a difficult test case for simplex methods, runs in < 1 second in GLPK simplex, with d=200. Some intuition on why some LP problems are difficult would be welcome.)

denis
  • 21,378
  • 10
  • 65
  • 88