16 std::optional<double> m_initial_costs;
17 std::optional<double> m_update_factor;
18 std::optional<unsigned int> m_max_updates_before_phase_I;
22 double m_initial_costs;
23 double m_update_factor;
24 unsigned int m_max_updates_before_phase_I;
27 std::list<Var> m_artificial_variables;
29 void save_objective_function(
const Model& t_original_formulation);
33 bool all_artificial_variables_are_non_basic(
const PrimalPoint &t_primal_values)
const;
37 Strategy(
double t_initial_costs,
double t_update_factor,
unsigned int t_max_updates_before_phase_I);
44 m_initial_costs.has_value() ? m_initial_costs.value() : 1e4,
45 m_update_factor.has_value() ? m_update_factor.value() : 2.,
46 m_max_updates_before_phase_I.has_value() ? m_max_updates_before_phase_I.value() : 4
54 ArtificialCosts& with_max_updates_before_phase_I(
unsigned int t_value);
56 ArtificialCosts& with_update_factor(
double t_value);
58 ArtificialCosts& with_initial_costs(
double t_value);