File tree Expand file tree Collapse file tree 2 files changed +5
-4
lines changed
Expand file tree Collapse file tree 2 files changed +5
-4
lines changed Original file line number Diff line number Diff line change @@ -3478,8 +3478,9 @@ bool Highs::infeasibleBoundsOk() {
34783478 if (perform_inward_integer_rounding &&
34793479 lp.integrality_ [iCol] == HighsVarType::kInteger ) {
34803480 // Assess bounds after inward integer rounding
3481- double integer_lower = std::ceil (lower);
3482- double integer_upper = std::floor (upper);
3481+ double feastol = this ->options_ .mip_feasibility_tolerance ;
3482+ double integer_lower = std::ceil (lower - feastol);
3483+ double integer_upper = std::floor (upper + feastol);
34833484 assert (integer_lower >= lower);
34843485 assert (integer_upper <= upper);
34853486 performed_inward_integer_rounding =
Original file line number Diff line number Diff line change @@ -46,8 +46,8 @@ HighsModelStatus HighsMipSolverData::feasibilityJump() {
4646 fjVarType = external_feasibilityjump::VarType::Continuous;
4747 } else {
4848 fjVarType = external_feasibilityjump::VarType::Integer;
49- lower = std::ceil (lower);
50- upper = std::floor (upper);
49+ lower = std::ceil (lower - feastol );
50+ upper = std::floor (upper + feastol );
5151 }
5252
5353 const bool legal_bounds = lower <= upper && lower < kHighsInf &&
You can’t perform that action at this time.
0 commit comments