Nonconvex constrained optimization
Loading...
Searching...
No Matches
lbfgsb-adapter.hpp File Reference
#include <alpaqa/config/config.hpp>
#include <alpaqa/inner/inner-solve-options.hpp>
#include <alpaqa/inner/internal/panoc-stop-crit.hpp>
#include <alpaqa/inner/internal/solverstatus.hpp>
#include <alpaqa/lbfgsb-adapter-export.h>
#include <alpaqa/problem/type-erased-problem.hpp>
#include <guanaqo/atomic-stop-signal.hpp>
#include <chrono>
#include <iostream>
Include dependency graph for lbfgsb-adapter.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LBFGSBParams
 Tuning parameters for the L-BFGS-B solver LBFGSBSolver. More...
struct  LBFGSBStats
struct  LBFGSBProgressInfo
class  LBFGSBSolver
 L-BFGS-B solver for ALM. More...
struct  InnerStatsAccumulator< lbfgsb::LBFGSBStats >

Namespaces

namespace  alpaqa
namespace  alpaqa::lbfgsb

Functions

InnerStatsAccumulator< lbfgsb::LBFGSBStats > & operator+= (InnerStatsAccumulator< lbfgsb::LBFGSBStats > &acc, const lbfgsb::LBFGSBStats &s)

Class Documentation

◆ alpaqa::lbfgsb::LBFGSBStats

struct alpaqa::lbfgsb::LBFGSBStats
Collaboration diagram for LBFGSBStats:
Class Members
SolverStatus status = SolverStatus::Busy
real_t ε = inf<config_t>
nanoseconds elapsed_time {}
nanoseconds time_progress_callback {}
unsigned iterations = 0
real_t final_ψ = 0
unsigned direction_update_rejected = 0

◆ alpaqa::lbfgsb::LBFGSBProgressInfo

struct alpaqa::lbfgsb::LBFGSBProgressInfo
Collaboration diagram for LBFGSBProgressInfo:
Class Members
unsigned k
SolverStatus status
crvec x
real_t ψ
crvec grad_ψ
real_t τ_max
real_t τ
real_t ε
crvec Σ
crvec y
unsigned outer_iter
const TypeErasedProblem< config_t > * problem
const LBFGSBParams * params

◆ alpaqa::InnerStatsAccumulator< lbfgsb::LBFGSBStats >

struct alpaqa::InnerStatsAccumulator< lbfgsb::LBFGSBStats >
Collaboration diagram for InnerStatsAccumulator< lbfgsb::LBFGSBStats >:
Class Members
nanoseconds elapsed_time {} Total elapsed time in the inner solver.
nanoseconds time_progress_callback {} Total time spent in the user-provided progress callback.
unsigned iterations = 0 Total number of inner PANOC iterations.
real_t final_ψ = 0 Final value of the smooth cost \( \psi(\hat x) \).
unsigned direction_update_rejected = 0 Total number of times that the L-BFGS update was rejected (i.e.

it could have resulted in a non-positive definite Hessian estimate).