GNOME Bugzilla – Bug 611407
GLPK solver error message is uninformative
Last modified: 2010-03-03 00:07:41 UTC
Error is shown if I try to run solver using GLPK. GLPK (glpsolve, libgplk0, development packages) is installed
What is the precise error? Do you have a glpsol binary on your system?
Yes,I have
> What is the precise error?
Sorry, I've found that GLPK works. Probably error was caused by non-linearity of problem. But error message was quite uninformative: "Time 0:00. Error". Maybe you can show output of glpsol or interpret it's return code?
Closing. If you find a sample where we are that uninformative, please refile.
Is "Time 0:00. Error" informative? It would be great if some information was given, e.g. "Problem is non-linear"
Is suspect that that may be the only info we get from GLPK. (And anybody will agree that it is quite uninformative.) Would you be able to show us that problem?
Created attachment 154977 [details] Sample optimization problem
Here it is
welinder@anemone:~/gnome/gnumeric/src> GNM_DEBUG=solver ./gnumeric ~/Download/problem.gnumeric Registering glpk Registering lpsolve Spawning glpsol --noscale --write /tmp/program-IQEH8U.out --cpxlp /tmp/program-27QH8U.cplex glp_read_lp: reading problem data from `/tmp/program-27QH8U.cplex'... glp_read_lp: 4 rows, 4 columns, 4 non-zeros glp_read_lp: 12 lines were read glp_simplex: original LP has 4 rows, 4 columns, 4 non-zeros PROBLEM HAS NO DUAL FEASIBLE SOLUTION Time used: 0.0 secs Memory used: 0.0 Mb (43380 bytes) glp_write_sol: writing basic solution to `/tmp/program-IQEH8U.out'... glp_write_sol: 10 lines were written Solver process exited with code 0 Unregistering glpk Unregistering lpsolve
And here's the solution file written: 4 4 1 1 0 1 0 0 1 0 0 1 0 0 1 0 0 2 0 0 2 0 0 2 0 0 2 0 0 The second line is key here: "1" and "1" mean that both the primal and the dual have *undefined* status. This is wrong, but I guess we should work around it.
This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report. (You now get "infeasible")