62 bool nothing_to_recompute,
const UpdateRow& update_row,
63 Fractional cost_variation, std::vector<ColIndex>* bound_flip_candidates,
64 ColIndex* entering_col);
71 bool nothing_to_recompute,
const UpdateRow& update_row,
72 Fractional cost_variation, ColIndex* entering_col);
78 std::string
StatString()
const {
return stats_.StatString(); }
91 absl::BitGenRef random_;
95 GlopParameters parameters_;
101 num_perfect_ties(
"num_perfect_ties", this) {}
110 std::vector<ColIndex> equivalent_entering_choices_;
114 struct ColWithRatio {
115 ColWithRatio() =
default;
117 : col(_col), ratio(reduced_cost / coeff_m), coeff_magnitude(coeff_m) {}
120 bool operator<(
const ColWithRatio& other)
const {
121 if (ratio == other.ratio) {
122 if (coeff_magnitude == other.coeff_magnitude) {
123 return col > other.col;
125 return coeff_magnitude < other.coeff_magnitude;
127 return ratio > other.ratio;
136 std::vector<ColWithRatio> breakpoints_;
139 int64_t num_operations_ = 0;