Ipopt
3.12.12
|
Implementation of the probing strategy for computing the barrier parameter. More...
#include <IpQualityFunctionMuOracle.hpp>
Public Types | |
Public enums. Some of those are also used for the | |
quality function | |
enum | NormEnum { NM_NORM_1 =0, NM_NORM_2_SQUARED, NM_NORM_MAX, NM_NORM_2 } |
enum for norm type More... | |
enum | CentralityEnum { CEN_NONE =0, CEN_LOG, CEN_RECIPROCAL, CEN_CUBED_RECIPROCAL } |
enum for centrality type More... | |
enum | BalancingTermEnum { BT_NONE =0, BT_CUBIC } |
enum for the quality function balancing term type More... | |
Public Member Functions | |
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix) |
overloaded from AlgorithmStrategyObject More... | |
virtual bool | CalculateMu (Number mu_min, Number mu_max, Number &new_mu) |
Method for computing the value of the barrier parameter that could be used in the current iteration (using the LOQO formula). More... | |
Constructors/Destructors | |
QualityFunctionMuOracle (const SmartPtr< PDSystemSolver > &pd_solver) | |
Constructor. More... | |
virtual | ~QualityFunctionMuOracle () |
Default destructor. More... | |
![]() | |
MuOracle () | |
Default Constructor. More... | |
virtual | ~MuOracle () |
Default destructor. More... | |
![]() | |
bool | Initialize (const Journalist &jnlst, IpoptNLP &ip_nlp, IpoptData &ip_data, IpoptCalculatedQuantities &ip_cq, const OptionsList &options, const std::string &prefix) |
This method is called every time the algorithm starts again - it is used to reset any internal state. More... | |
bool | ReducedInitialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix) |
Reduced version of the Initialize method, which does not require special Ipopt information. More... | |
AlgorithmStrategyObject () | |
Default Constructor. More... | |
virtual | ~AlgorithmStrategyObject () |
Default Destructor. More... | |
![]() | |
ReferencedObject () | |
virtual | ~ReferencedObject () |
Index | ReferenceCount () const |
void | AddRef (const Referencer *referencer) const |
void | ReleaseRef (const Referencer *referencer) const |
Static Public Member Functions | |
static void | RegisterOptions (SmartPtr< RegisteredOptions > roptions) |
Methods for IpoptType. More... | |
Private Member Functions | |
Number | CalculateQualityFunction (Number sigma, const Vector &step_aff_x_L, const Vector &step_aff_x_U, const Vector &step_aff_s_L, const Vector &step_aff_s_U, const Vector &step_aff_y_c, const Vector &step_aff_y_d, const Vector &step_aff_z_L, const Vector &step_aff_z_U, const Vector &step_aff_v_L, const Vector &step_aff_v_U, const Vector &step_cen_x_L, const Vector &step_cen_x_U, const Vector &step_cen_s_L, const Vector &step_cen_s_U, const Vector &step_cen_y_c, const Vector &step_cen_y_d, const Vector &step_cen_z_L, const Vector &step_cen_z_U, const Vector &step_cen_v_L, const Vector &step_cen_v_U) |
Auxilliary function for computing the average complementarity at a point, given step sizes and step. More... | |
Number | PerformGoldenSection (Number sigma_up, Number q_up, Number sigma_lo, Number q_lo, Number sigma_tol, Number qf_tol, const Vector &step_aff_x_L, const Vector &step_aff_x_U, const Vector &step_aff_s_L, const Vector &step_aff_s_U, const Vector &step_aff_y_c, const Vector &step_aff_y_d, const Vector &step_aff_z_L, const Vector &step_aff_z_U, const Vector &step_aff_v_L, const Vector &step_aff_v_U, const Vector &step_cen_x_L, const Vector &step_cen_x_U, const Vector &step_cen_s_L, const Vector &step_cen_s_U, const Vector &step_cen_y_c, const Vector &step_cen_y_d, const Vector &step_cen_z_L, const Vector &step_cen_z_U, const Vector &step_cen_v_L, const Vector &step_cen_v_U) |
Auxilliary function performing the golden section. More... | |
Default Compiler Generated Methods | |
(Hidden to avoid implicit creation/calling). These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called. | |
QualityFunctionMuOracle () | |
Default Constructor. More... | |
QualityFunctionMuOracle (const QualityFunctionMuOracle &) | |
Copy Constructor. More... | |
void | operator= (const QualityFunctionMuOracle &) |
Overloaded Equals Operator. More... | |
Number | ScaleSigma (Number sigma) |
Auxilliary functions for scaling the sigma axis in the golden section procedure. More... | |
Number | UnscaleSigma (Number scaled_sigma) |
Additional Inherited Members | |
![]() | |
const Journalist & | Jnlst () const |
IpoptNLP & | IpNLP () const |
IpoptData & | IpData () const |
IpoptCalculatedQuantities & | IpCq () const |
bool | HaveIpData () const |
Implementation of the probing strategy for computing the barrier parameter.
Definition at line 22 of file IpQualityFunctionMuOracle.hpp.
enum for norm type
Enumerator | |
---|---|
NM_NORM_1 | |
NM_NORM_2_SQUARED | |
NM_NORM_MAX | |
NM_NORM_2 |
Definition at line 51 of file IpQualityFunctionMuOracle.hpp.
enum for centrality type
Enumerator | |
---|---|
CEN_NONE | |
CEN_LOG | |
CEN_RECIPROCAL | |
CEN_CUBED_RECIPROCAL |
Definition at line 59 of file IpQualityFunctionMuOracle.hpp.
enum for the quality function balancing term type
Enumerator | |
---|---|
BT_NONE | |
BT_CUBIC |
Definition at line 67 of file IpQualityFunctionMuOracle.hpp.
Ipopt::QualityFunctionMuOracle::QualityFunctionMuOracle | ( | const SmartPtr< PDSystemSolver > & | pd_solver | ) |
Constructor.
|
virtual |
Default destructor.
|
private |
Default Constructor.
|
private |
Copy Constructor.
|
virtual |
overloaded from AlgorithmStrategyObject
Implements Ipopt::MuOracle.
|
virtual |
Method for computing the value of the barrier parameter that could be used in the current iteration (using the LOQO formula).
Implements Ipopt::MuOracle.
|
static |
Methods for IpoptType.
|
private |
Overloaded Equals Operator.
|
private |
Auxilliary function for computing the average complementarity at a point, given step sizes and step.
|
private |
Auxilliary function performing the golden section.
Auxilliary functions for scaling the sigma axis in the golden section procedure.
|
private |
Pointer to the object that should be used to solve the primal-dual system.
Definition at line 96 of file IpQualityFunctionMuOracle.hpp.
|
private |
Upper bound on centering parameter sigma.
Definition at line 190 of file IpQualityFunctionMuOracle.hpp.
|
private |
Lower bound on centering parameter sigma.
Definition at line 192 of file IpQualityFunctionMuOracle.hpp.
|
private |
Norm to be used for the quality function.
Definition at line 194 of file IpQualityFunctionMuOracle.hpp.
|
private |
Flag indicating how centrality should be involved in the quality function.
Definition at line 197 of file IpQualityFunctionMuOracle.hpp.
|
private |
Flag indicating whether we use a balancing term in the quality function.
Definition at line 201 of file IpQualityFunctionMuOracle.hpp.
|
private |
Relative tolerance for golden bi-section algorithm in sigma space.
Definition at line 204 of file IpQualityFunctionMuOracle.hpp.
|
private |
Relative tolerance for golden bi-section algorithm in function value space.
Definition at line 207 of file IpQualityFunctionMuOracle.hpp.
|
private |
Maximal number of bi-section steps in the golden section search for sigma.
Definition at line 210 of file IpQualityFunctionMuOracle.hpp.
Definition at line 216 of file IpQualityFunctionMuOracle.hpp.
Definition at line 217 of file IpQualityFunctionMuOracle.hpp.
Definition at line 218 of file IpQualityFunctionMuOracle.hpp.
Definition at line 219 of file IpQualityFunctionMuOracle.hpp.
Definition at line 220 of file IpQualityFunctionMuOracle.hpp.
Definition at line 221 of file IpQualityFunctionMuOracle.hpp.
Definition at line 222 of file IpQualityFunctionMuOracle.hpp.
Definition at line 223 of file IpQualityFunctionMuOracle.hpp.
Definition at line 225 of file IpQualityFunctionMuOracle.hpp.
Definition at line 226 of file IpQualityFunctionMuOracle.hpp.
Definition at line 227 of file IpQualityFunctionMuOracle.hpp.
Definition at line 228 of file IpQualityFunctionMuOracle.hpp.
Definition at line 229 of file IpQualityFunctionMuOracle.hpp.
Definition at line 230 of file IpQualityFunctionMuOracle.hpp.
Definition at line 231 of file IpQualityFunctionMuOracle.hpp.
Definition at line 232 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 236 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 243 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 244 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 245 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 246 of file IpQualityFunctionMuOracle.hpp.
Definition at line 248 of file IpQualityFunctionMuOracle.hpp.
Definition at line 249 of file IpQualityFunctionMuOracle.hpp.
Definition at line 250 of file IpQualityFunctionMuOracle.hpp.
Definition at line 251 of file IpQualityFunctionMuOracle.hpp.
Definition at line 253 of file IpQualityFunctionMuOracle.hpp.
Definition at line 254 of file IpQualityFunctionMuOracle.hpp.
Definition at line 255 of file IpQualityFunctionMuOracle.hpp.
Definition at line 256 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 258 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 259 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 260 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 261 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 263 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 264 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 265 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 266 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 268 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 269 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 270 of file IpQualityFunctionMuOracle.hpp.
|
private |
Definition at line 271 of file IpQualityFunctionMuOracle.hpp.