help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] Getting more info from presolver


From: Andrew Makhorin
Subject: Re: [Help-glpk] Getting more info from presolver
Date: Fri, 20 Jun 2008 17:45:34 +0400

> It was actually more economical for me to go to the source code on
> this.  In the time it would take glpsol to provide the KKT info
> (several hours), I threw some lines into glpk and got the info I
> needed.  Of course, I have no idea if what I added will break other
> things or will work for all cases, it just gave me what I needed.  For
> completeness of this discussion thread, here is the message I was
> receiving originally:

> lpx_read_cpxlp: reading problem data from `dw_monolithic.cplex'...
> lpx_read_cpxlp: 440350 rows, 299500 columns, 969398 non-zeros
> lpx_read_cpxlp: 299500 integer columns, all of which are binary
> lpx_read_cpxlp: 1089422 lines were read
> glp_simplex: original LP has 440350 rows, 299500 columns, 969398 non-zeros
> PROBLEM HAS NO PRIMAL FEASIBLE SOLUTION
> glp_intopt: optimal basis to initial LP relaxation not provided
> Time used:   1.0 secs
> Memory used: 211.3 Mb (221541952 bytes)


> And with less than 10-20 lines of additional code I could get this:


> lpx_read_cpxlp: reading problem data from `dw_monolithic.cplex'...
> lpx_read_cpxlp: 440350 rows, 299500 columns, 969398 non-zeros
> lpx_read_cpxlp: 299500 integer columns, all of which are binary
> lpx_read_cpxlp: 1089422 lines were read
> glp_simplex: original LP has 440350 rows, 299500 columns, 969398 non-zeros
> General Row Analysis.  Row 437495.
> PROBLEM HAS NO PRIMAL FEASIBLE SOLUTION
> The problem row was 437495, DepartCap(CLE,2).
> glp_intopt: optimal basis to initial LP relaxation not provided
> Time used:   0.0 secs
> Memory used: 211.3 Mb (221541956 bytes)


> This is going to help me debug my code for generating my input file
> to glpsol.  I'd be happy to send you my changes, Andrew, if you
> thought it would be helpful.  They seem very minor, but again, I can't
> say I've considered every implication of their inclusion.


Probably printing information about the row/column, which is found
infeasible, would be useful. Thank you for your suggestion.

However, I would like to note that that row/column is the root of
a tree, where any row/column may cause infeasibility, and it would
be difficult to track all such rows/columns because of recursive
nature of the presolving process.


Andrew Makhorin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]