[Top][All Lists]
[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