32 std::unique_ptr<BendersBase> benders{
nullptr};
36 BENDERSMETHOD method{BENDERSMETHOD::BENDERS};
40 std::shared_ptr<ILogger> logger,
41 std::shared_ptr<Output::OutputWriter> writer,
42 std::shared_ptr<MathLoggerDriver> math_log_driver_,
44 boost::mpi::environment* env,
45 boost::mpi::communicator* world,
47 auto PrepareForExecution(
bool outer_loop) -> std::optional<BendersEnvironment>;
54 ProcessCriterionInput();
56 std::set<std::string> ReadAreaFile();
60 std::shared_ptr<ILogger> logger_;
61 std::shared_ptr<Output::OutputWriter> writer_;
62 std::shared_ptr<MathLoggerDriver> math_log_driver_;
63 boost::mpi::environment* env_ =
nullptr;
64 boost::mpi::communicator* world_ =
nullptr;
66 BENDERSMETHOD method_;
68 std::string context_ = bendersmethod_to_string(BENDERSMETHOD::BENDERS);
69 static constexpr const char*
const LOLD_FILE =
"LOLD.txt";