Antares Xpansion
Investment simulations for Antares studies
Loading...
Searching...
No Matches
MasterUpdate.h
1#pragma once
2#include "BendersBase.h"
3#include "antares-xpansion/benders/outer_loop/IMasterUpdate.h"
4#include "common.h"
5
6namespace Outerloop
7{
8
10{
11public:
12 explicit MasterUpdateBase(pBendersBase benders,
13 double tau,
14 double outer_loop_stopping_threshold);
15 explicit MasterUpdateBase(pBendersBase benders,
16 double tau,
17 double outer_loop_stopping_threshold,
18 const std::string& name);
19 bool Update(double lambda_min, double lambda_max) override;
20 [[nodiscard]] double Rhs() const override;
21
22private:
23 void CheckTau(double tau);
24 void UpdateConstraints();
25 void AddMinInvestConstraint();
26 int additional_constraint_index_ = -1;
27 pBendersBase benders_;
28 double lambda_ = 0;
29 // tau
30 double dichotomy_weight_coeff_ = 0.5;
31 double outer_loop_stopping_threshold_ = 1e-1;
32 // rename min invest constraint
33 std::string min_invest_constraint_name_ = "Min_Investment_Constraint";
34 bool stop_update_ = true;
35};
36} // namespace Outerloop
Definition IMasterUpdate.h:6
Definition MasterUpdate.h:10