idol
A C++ Framework for Optimization
Loading...
Searching...
No Matches
idol::Optimizers::PADM Class Reference
Inheritance diagram for idol::Optimizers::PADM:
Inheritance graph
Collaboration diagram for idol::Optimizers::PADM:
Collaboration graph

Classes

class  IterationPlot
 

Public Member Functions

 PADM (const Model &t_model, ADM::Formulation t_formulation, std::vector< idol::ADM::SubProblem > &&t_sub_problem_specs, PenaltyUpdate *t_penalty_update, SolutionStatus t_feasible_solution_status, Plots::Manager *t_plot_manager)
 
std::string name () const override
 
double get_var_primal (const Var &t_var) const override
 
double get_var_reduced_cost (const Var &t_var) const override
 
double get_var_ray (const Var &t_var) const override
 
double get_ctr_dual (const Ctr &t_ctr) const override
 
double get_ctr_farkas (const Ctr &t_ctr) const override
 
unsigned int get_n_solutions () const override
 
unsigned int get_solution_index () const override
 
unsigned int get_outer_loop_iteration_count () const
 
unsigned int get_inner_loop_iteration_count () const
 
ADM::SubProblemsub_problem_spec (unsigned int t_sub_problem_id)
 
SolutionStatus get_status () const override
 
SolutionReason get_reason () const override
 
double get_best_obj () const override
 
double get_best_bound () const override
 
double get_relative_gap () const override
 
double get_absolute_gap () const override
 

Protected Member Functions

void add (const Var &t_var) override
 
void add (const Ctr &t_ctr) override
 
void add (const QCtr &t_ctr) override
 
void remove (const Var &t_var) override
 
void remove (const Ctr &t_ctr) override
 
void remove (const QCtr &t_ctr) override
 
void update () override
 
void write (const std::string &t_name) override
 
void hook_before_optimize () override
 
void hook_optimize () override
 
void set_solution_index (unsigned int t_index) override
 
void update_obj_sense () override
 
void update_obj () override
 
void update_rhs () override
 
void update_obj_constant () override
 
void update_mat_coeff (const Ctr &t_ctr, const Var &t_var) override
 
void update_ctr_type (const Ctr &t_ctr) override
 
void update_ctr_rhs (const Ctr &t_ctr) override
 
void update_var_type (const Var &t_var) override
 
void update_var_lb (const Var &t_var) override
 
void update_var_ub (const Var &t_var) override
 
void update_var_obj (const Var &t_var) override
 
void update_penalty_parameters ()
 
void run_inner_loop ()
 
bool is_feasible () const
 
std::pair< bool, bool > solve_sub_problem (unsigned int t_sub_problem_id)
 
void compute_objective_value ()
 
void make_history ()
 
void log_inner_loop (unsigned int t_inner_loop_iteration)
 
void log_outer_loop ()
 
double infeasibility_linf (unsigned int t_sub_problem_id, const PrimalPoint &t_solution) const
 
double infeasibility_l1 (unsigned int t_sub_problem_id, const PrimalPoint &t_solution) const
 
void detect_stagnation (bool t_feasibility_has_changed)
 
void detect_stagnation_due_to_rescaling ()
 
void restart ()
 
void check_feasibility ()
 
void check_time_limit ()
 
void check_outer_iteration_limit ()
 
void write_solution (const std::string &t_name)
 
void write_iteration_history (const std::string &t_name)
 
double get_var_result (const Var &t_var, const std::function< double(const Var &, unsigned int)> &t_function) const
 
void build () override
 
virtual void set_status (SolutionStatus t_status)
 
virtual void set_reason (SolutionReason t_reason)
 
virtual void set_best_bound (double t_value)
 
virtual void set_best_obj (double t_value)
 

Detailed Description

Definition at line 18 of file Optimizers_PADM.h.

Member Function Documentation

◆ build()

void idol::Algorithm::build ( )
inlineoverrideprotectedinherited

Definition at line 21 of file Algorithm.h.

◆ name()

std::string idol::Optimizers::PADM::name ( ) const
inlineoverride

Definition at line 27 of file Optimizers_PADM.h.

◆ set_best_bound()

virtual void idol::Algorithm::set_best_bound ( double  t_value)
inlineprotectedvirtualinherited

Definition at line 25 of file Algorithm.h.

◆ set_best_obj()

virtual void idol::Algorithm::set_best_obj ( double  t_value)
inlineprotectedvirtualinherited

Definition at line 26 of file Algorithm.h.

◆ set_reason()

virtual void idol::Algorithm::set_reason ( SolutionReason  t_reason)
inlineprotectedvirtualinherited

Definition at line 24 of file Algorithm.h.

◆ set_status()

virtual void idol::Algorithm::set_status ( SolutionStatus  t_status)
inlineprotectedvirtualinherited

Definition at line 23 of file Algorithm.h.