Class solver::SteppingSolver
Optimization in discretized steps.
This base class assumes the solver runs in discretized steps t and handles the configuration of step_limit
, increments t
and calls make_step()
for every integer value [0, step_limit].
Inheritance
solver::SteppingSolver
Inherited Members
Constructors
SteppingSolver()
Declaration
solver::SteppingSolver<Model_T>::SteppingSolver()
Methods
~SteppingSolver()
Declaration
solver::SteppingSolver<Model_T>::~SteppingSolver() override
configure()
Read the maximum number of steps from configuration.
Declaration
void solver::SteppingSolver<Model_T>::configure(const utils::Json&json) override
init()
Initialize the solver.
Declaration
virtual void solver::SteppingSolver<Model_T>::init() override=0
make_step()
Declaration
virtual void solver::SteppingSolver<Model_T>::make_step(uint64_t step)=0
get_cost_function_evaluation_count()
Declaration
uint64_t solver::SteppingSolver<Model_T>::get_cost_function_evaluation_count() const
status()
Declaration
virtual void solver::SteppingSolver<Model_T>::status() const
run()
A stepping solver is run by invoking / make_step(t) for every value of t.
Declaration
void solver::SteppingSolver<Model_T>::run() override
get_solver_properties()
Declaration
utils::Structure solver::SteppingSolver<Model_T>::get_solver_properties() const override
get_runtime()
Declaration
double solver::SteppingSolver<Model_T>::get_runtime() const
get_seed()
Declaration
unsigned int solver::SteppingSolver<Model_T>::get_seed() const
current_steps()
Declaration
virtual uint64_t solver::SteppingSolver<Model_T>::current_steps() const
update_accumulated_info()
Declaration
void solver::SteppingSolver<Model_T>::update_accumulated_info()
fixed_step_per_tick()
Declaration
void solver::SteppingSolver<Model_T>::fixed_step_per_tick(uint64_t value)
reset()
Declaration
void solver::SteppingSolver<Model_T>::reset(double left_over_time)
handle_signals()
Declaration
bool solver::SteppingSolver<Model_T>::handle_signals()
seconds_per_step()
Declaration
double solver::SteppingSolver<Model_T>::seconds_per_step() const