[Couenne] integer infeasibility
Francois Margot
fmargot at andrew.cmu.edu
Thu May 26 12:57:02 EDT 2011
Hi:
I think that one should modify slightly the code in infeasibility.cpp
(both trunk and stable) around line 101 by returning 0 for the integer
infeasibility if the value is out of bounds. Without this, infinite
loops might occur, as the LP solver might return a value slightly out of
bounds, by more than the integer tolerance. I would suggest:
if (reference_ -> isInteger ()) {
double val = info->solution_[index];
if((val >= info->lower_[index]) && (val <= info->upper_[index])) {
CouNumber intinfeas = intInfeasibility (info -> solution_ [index]);
if ((intinfeas > info->integerTolerance_) && (intinfeas > retval)) {
retval = intinfeas;
}
}
}
Francois
More information about the Couenne
mailing list