Skip to content

Commit 3bd1726

Browse files
committed
Reset original row type
1 parent 11e3b7d commit 3bd1726

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

highs/mip/HighsPathSeparator.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ void HighsPathSeparator::separateLpSolution(HighsLpRelaxation& lpRelaxation,
8484
}
8585
}
8686

87+
std::vector<RowType> origrowtype = rowtype;
8788
std::vector<std::pair<HighsInt, double>> colSubstitutions(
8889
lp.num_col_, std::make_pair(-1, 0.0));
8990

@@ -117,13 +118,14 @@ void HighsPathSeparator::separateLpSolution(HighsLpRelaxation& lpRelaxation,
117118
// Overwrite existing substitution if fractional activity of new row is
118119
// larger
119120
if (colSubstitutions[col].first != -1) {
120-
if (fracActivity[colSubstitutions[col].first] /
121-
std::max(rowNorm[colSubstitutions[col].first],
122-
mip.mipdata_->feastol) <
121+
HighsInt k = colSubstitutions[col].first;
122+
if (fracActivity[k] / std::max(rowNorm[k], mip.mipdata_->feastol) <
123123
fracActivity[i] / std::max(rowNorm[i], mip.mipdata_->feastol) -
124124
mip.mipdata_->feastol) {
125125
colSubstitutions[col].first = i;
126126
colSubstitutions[col].second = val;
127+
rowtype[k] = origrowtype[k];
128+
rowtype[i] = RowType::kUnusuable;
127129
}
128130
continue;
129131
}

0 commit comments

Comments
 (0)