54 conjugate_gradient_optimizer<ObjectiveFunction, LineSearcher>,
125 iteration_logger.template append<index_type>(
127 iteration_logger.template append<index_type>(
129 iteration_logger.template append<value_type>(
131 iteration_logger.template append<value_type>(
Definition of backtracking_line_searcher class.
Class to write logs of iterations.
Class of tags of logs without memory management.
Class to perform backtracking line search.
Class of conjugate gradient method for optimization.
typename variable_type::Scalar variable_scalar_type
Type of scalars in variables.
void configure_iteration_logger(logging::iterations::iteration_logger< this_type > &iteration_logger) const
Configure an iteration logger.
bool has_first_iteration_done_
Whether the first iteration has been done.
auto gradient() const -> const variable_type &
Get gradient for current optimal variable.
variable_type prev_grad_
Previous gradient.
typename objective_function_type::variable_type variable_type
Type of variables.
auto calc_direction() -> variable_type
Calculate search direction.
void init(const variable_type &init_variable)
Initialize.
variable_type direction_
Search direction.
typename line_searcher_type::objective_function_type objective_function_type
Type of the objective function.
conjugate_gradient_optimizer(const objective_function_type &obj_fun=objective_function_type())
Constructor.
Base class of implementations of descent methods for optimization.
typename objective_function_type::value_type value_type
Type of function values.
auto gradient() const -> const variable_type &
Get gradient for current optimal variable.
auto opt_variable() const -> const variable_type &
Get current optimal variable.
auto iterations() const noexcept -> index_type
Get the number of iterations.
typename objective_function_type::variable_type variable_type
Type of variables.
void init(const variable_type &init_variable)
Initialize.
auto evaluations() const noexcept -> index_type
Get the number of function evaluations.
typename line_searcher_type::objective_function_type objective_function_type
Type of the objective function.
auto gradient_norm() const -> value_type
Calculate norm of gradient.
auto opt_value() const -> const value_type &
Get current optimal value.
auto line_searcher() -> line_searcher_type &
Access object to perform line search.
Concept of objects to perform line search in optimization.
Concept of multi-variate first-order differentiable objective functions in optimization.
Definition of descent_method_base class.
Definition of index_type type.
Definition of iteration_logger class.
Definition of line_searcher concept.
Definition of log_tag_view class.
Definition of multi_variate_differentiable_objective_function concept.
Namespace of optimization algorithms.
constexpr auto conjugate_gradient_optimizer_tag
Tag of conjugate_gradient_optimizer.