Optimizers::PADM

Doxygen

class PADM : public idol::Algorithm

Public 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)
inline virtual std::string name() const override
virtual double get_var_primal(const Var &t_var) const override
virtual double get_var_reduced_cost(const Var &t_var) const override
virtual double get_var_ray(const Var &t_var) const override
virtual double get_ctr_dual(const Ctr &t_ctr) const override
virtual double get_ctr_farkas(const Ctr &t_ctr) const override
virtual unsigned int get_n_solutions() const override
virtual unsigned int get_solution_index() const override
unsigned int get_outer_loop_iteration_count() const
unsigned int get_inner_loop_iteration_count() const
ADM::SubProblem &sub_problem_spec(unsigned int t_sub_problem_id)
virtual SolutionStatus get_status() const override
virtual SolutionReason get_reason() const override
virtual double get_best_obj() const override
virtual double get_best_bound() const override
virtual double get_relative_gap() const override
virtual double get_absolute_gap() const override
inline virtual const ::idol::Model &parent() const
inline bool get_param_logs() const
inline virtual void set_param_logs(bool t_value)
inline double get_param_time_limit() const
inline virtual void set_param_time_limit(double t_time_limit)
inline unsigned int get_param_thread_limit() const
inline virtual void set_param_threads(unsigned int t_threads)
double get_param_best_obj_stop() const
inline virtual void set_param_best_obj_stop(double t_best_obj_stop)
double get_param_best_bound_stop() const
inline virtual void set_param_best_bound_stop(double t_best_bound_stop)
inline double get_tol_mip_relative_gap() const
inline virtual void set_tol_mip_relative_gap(double t_tol_mip_relative_gap)
inline double get_tol_mip_absolute_gap() const
inline virtual void set_tol_mip_absolute_gap(double t_mip_tol_absolute_gap)
inline double get_tol_feasibility() const
inline virtual void set_tol_feasibility(double t_tol_feasibility)
inline double get_tol_optimality() const
inline virtual void set_tol_optimality(double t_tol_optimality)
inline double get_tol_integer() const
inline virtual void set_tol_integer(double t_tol_integer)
inline unsigned int get_param_iteration_limit() const
inline void set_param_iteration_limit(unsigned int t_iteration_limit)
inline bool get_param_presolve() const
inline virtual void set_param_presolve(bool t_value)
inline bool get_param_infeasible_or_unbounded_info() const
inline virtual void set_param_infeasible_or_unbounded_info(bool t_value)
inline const Timer &time() const
double get_remaining_time() const
inline bool is_terminated() const
virtual void terminate()
template<class T>
inline T &as()
template<class T>
inline const T &as() const
template<class T>
inline bool is() const
class IterationPlot

Public Functions

explicit IterationPlot(Plots::Manager &t_manager)
void update(unsigned int t_outer_loop_iteration, unsigned int t_inner_loop_iteration, const std::vector<double> &t_objective_values, const std::vector<double> &t_infeasibilities)