alpaqa 0.0.1
Nonconvex constrained optimization
Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
PANOCSolver< DirectionProviderT > Class Template Reference

#include <alpaqa/inner/decl/panoc.hpp>

Detailed Description

template<class DirectionProviderT>
class alpaqa::PANOCSolver< DirectionProviderT >

PANOC solver for ALM.

Definition at line 88 of file inner/decl/panoc.hpp.

+ Collaboration diagram for PANOCSolver< DirectionProviderT >:

Public Types

using Params = PANOCParams
 
using DirectionProvider = DirectionProviderT
 
using Stats = PANOCStats
 
using ProgressInfo = PANOCProgressInfo
 

Public Member Functions

 PANOCSolver (Params params, PANOCDirection< DirectionProvider > &&direction_provider)
 
 PANOCSolver (Params params, const PANOCDirection< DirectionProvider > &direction_provider)
 
Stats operator() (const Problem &problem, crvec Σ, real_t ε, bool always_overwrite_results, rvec x, rvec y, rvec err_z)
 
PANOCSolverset_progress_callback (std::function< void(const ProgressInfo &)> cb)
 
std::string get_name () const
 
void stop ()
 
const Paramsget_params () const
 

Public Attributes

PANOCDirection< DirectionProviderdirection_provider
 

Private Attributes

Params params
 
AtomicStopSignal stop_signal
 
std::function< void(const ProgressInfo &)> progress_cb
 

Member Typedef Documentation

◆ Params

Definition at line 90 of file inner/decl/panoc.hpp.

◆ DirectionProvider

using DirectionProvider = DirectionProviderT

Definition at line 91 of file inner/decl/panoc.hpp.

◆ Stats

using Stats = PANOCStats

Definition at line 92 of file inner/decl/panoc.hpp.

◆ ProgressInfo

Definition at line 93 of file inner/decl/panoc.hpp.

Constructor & Destructor Documentation

◆ PANOCSolver() [1/2]

PANOCSolver ( Params  params,
PANOCDirection< DirectionProvider > &&  direction_provider 
)
inline

Definition at line 95 of file inner/decl/panoc.hpp.

◆ PANOCSolver() [2/2]

PANOCSolver ( Params  params,
const PANOCDirection< DirectionProvider > &  direction_provider 
)
inline

Definition at line 98 of file inner/decl/panoc.hpp.

Member Function Documentation

◆ operator()()

PANOCSolver< DirectionProviderT >::Stats operator() ( const Problem problem,
crvec  Σ,
real_t  ε,
bool  always_overwrite_results,
rvec  x,
rvec  y,
rvec  err_z 
)
Parameters
[in]problemProblem description
[in]ΣConstraint weights \( \Sigma \)
[in]εTolerance \( \varepsilon \)
[in]always_overwrite_resultsOverwrite x, y and err_z even if not converged
[in,out]xDecision variable \( x \)
[in,out]yLagrange multipliers \( y \)
[out]err_zSlack variable error \( g(x) - z \)

Definition at line 25 of file inner/panoc.hpp.

+ Here is the call graph for this function:

◆ set_progress_callback()

PANOCSolver & set_progress_callback ( std::function< void(const ProgressInfo &)>  cb)
inline

Definition at line 111 of file inner/decl/panoc.hpp.

+ Here is the call graph for this function:

◆ get_name()

std::string get_name

Definition at line 19 of file inner/panoc.hpp.

◆ stop()

void stop ( )
inline

Definition at line 118 of file inner/decl/panoc.hpp.

+ Here is the call graph for this function:

◆ get_params()

const Params & get_params ( ) const
inline

Definition at line 120 of file inner/decl/panoc.hpp.

Member Data Documentation

◆ params

Params params
private

Definition at line 123 of file inner/decl/panoc.hpp.

◆ stop_signal

AtomicStopSignal stop_signal
private

Definition at line 124 of file inner/decl/panoc.hpp.

◆ progress_cb

std::function<void(const ProgressInfo &)> progress_cb
private

Definition at line 125 of file inner/decl/panoc.hpp.

◆ direction_provider

PANOCDirection<DirectionProvider> direction_provider

Definition at line 128 of file inner/decl/panoc.hpp.


The documentation for this class was generated from the following files: