Ipopt Documentation  
 
Loading...
Searching...
No Matches
Ipopt::RestoIpoptNLP Class Reference

This class maps a IpoptNLP into one that is used for the restoration phase of Ipopt. More...

#include <IpRestoIpoptNLP.hpp>

+ Inheritance diagram for Ipopt::RestoIpoptNLP:

Public Member Functions

virtual bool Initialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
 Initialization method.
 
virtual bool InitializeStructures (SmartPtr< Vector > &x, bool init_x, SmartPtr< Vector > &y_c, bool init_y_c, SmartPtr< Vector > &y_d, bool init_y_d, SmartPtr< Vector > &z_L, bool init_z_L, SmartPtr< Vector > &z_U, bool init_z_U, SmartPtr< Vector > &v_L, SmartPtr< Vector > &v_U)
 Initialize (create) structures for the iteration data.
 
virtual bool GetWarmStartIterate (IteratesVector &)
 Method accessing the GetWarmStartIterate of the NLP.
 
void FinalizeSolution (SolverReturn, const Vector &, const Vector &, const Vector &, const Vector &, const Vector &, const Vector &, const Vector &, Number, const IpoptData *, IpoptCalculatedQuantities *)
 
virtual void GetSpaces (SmartPtr< const VectorSpace > &x_space, SmartPtr< const VectorSpace > &c_space, SmartPtr< const VectorSpace > &d_space, SmartPtr< const VectorSpace > &x_l_space, SmartPtr< const MatrixSpace > &px_l_space, SmartPtr< const VectorSpace > &x_u_space, SmartPtr< const MatrixSpace > &px_u_space, SmartPtr< const VectorSpace > &d_l_space, SmartPtr< const MatrixSpace > &pd_l_space, SmartPtr< const VectorSpace > &d_u_space, SmartPtr< const MatrixSpace > &pd_u_space, SmartPtr< const MatrixSpace > &Jac_c_space, SmartPtr< const MatrixSpace > &Jac_d_space, SmartPtr< const SymMatrixSpace > &Hess_lagrangian_space)
 Accessor method for vector/matrix spaces pointers.
 
virtual void AdjustVariableBounds (const Vector &new_x_L, const Vector &new_x_U, const Vector &new_d_L, const Vector &new_d_U)
 Method for adapting the variable bounds.
 
bool IntermediateCallBack (AlgorithmMode mode, Index iter, Number obj_value, Number inf_pr, Number inf_du, Number mu, Number d_norm, Number regularization_size, Number alpha_du, Number alpha_pr, Index ls_trials, SmartPtr< const IpoptData > ip_data, SmartPtr< IpoptCalculatedQuantities > ip_cq)
 User callback method.
 
Number Rho () const
 Accessor Method for obtaining the Rho penalization factor for the ell_1 norm.
 
Number Eta (Number mu) const
 Method to calculate eta, the factor for the regularization term.
 
SmartPtr< const VectorDR_x () const
 Method returning the scaling factors for the 2-norm penalization term.
 
Constructors/Destructors
 RestoIpoptNLP (IpoptNLP &orig_ip_nlp, IpoptData &orig_ip_data, IpoptCalculatedQuantities &orig_ip_cq)
 
 ~RestoIpoptNLP ()
 Destructor.
 
virtual bool objective_depends_on_mu () const
 Accessor methods for model data.
 
virtual Number f (const Vector &x)
 Objective value (incorrect version for restoration phase)
 
virtual Number f (const Vector &x, Number mu)
 Objective value.
 
virtual SmartPtr< const Vectorgrad_f (const Vector &x)
 Gradient of the objective (incorrect version for restoration phase)
 
virtual SmartPtr< const Vectorgrad_f (const Vector &x, Number mu)
 Gradient of the objective.
 
virtual SmartPtr< const Vectorc (const Vector &x)
 Equality constraint residual.
 
virtual SmartPtr< const Matrixjac_c (const Vector &x)
 Jacobian Matrix for equality constraints.
 
virtual SmartPtr< const Vectord (const Vector &x)
 Inequality constraint residual (reformulated as equalities with slacks.
 
virtual SmartPtr< const Matrixjac_d (const Vector &x)
 Jacobian Matrix for inequality constraints.
 
virtual SmartPtr< const SymMatrixh (const Vector &x, Number obj_factor, const Vector &yc, const Vector &yd)
 Hessian of the Lagrangian (incorrect version for restoration phase)
 
virtual SmartPtr< const SymMatrixh (const Vector &x, Number obj_factor, const Vector &yc, const Vector &yd, Number mu)
 Hessian of the Lagrangian.
 
virtual SmartPtr< const SymMatrixuninitialized_h ()
 Provides a Hessian matrix from the correct matrix space with uninitialized values.
 
virtual SmartPtr< const Vectorx_L () const
 Lower bounds on x.
 
virtual SmartPtr< const MatrixPx_L () const
 Permutation matrix (x_L_ -> x)
 
virtual SmartPtr< const Vectorx_U () const
 Upper bounds on x.
 
virtual SmartPtr< const MatrixPx_U () const
 Permutation matrix (x_U_ -> x.
 
virtual SmartPtr< const Vectord_L () const
 Lower bounds on d.
 
virtual SmartPtr< const MatrixPd_L () const
 Permutation matrix (d_L_ -> d)
 
virtual SmartPtr< const Vectord_U () const
 Upper bounds on d.
 
virtual SmartPtr< const MatrixPd_U () const
 Permutation matrix (d_U_ -> d.
 
virtual SmartPtr< const SymMatrixSpaceHessianMatrixSpace () const
 Accessor method to obtain the MatrixSpace for the Hessian matrix (or it's approximation)
 
virtual SmartPtr< const VectorSpacex_space () const
 x_space
 
Accessor method for the information of the original NLP.

These methods are not overloaded from IpoptNLP.

IpoptNLPOrigIpNLP () const
 
IpoptDataOrigIpData () const
 
IpoptCalculatedQuantitiesOrigIpCq () const
 
Counters for the number of function evaluations.
virtual Index f_evals () const
 
virtual Index grad_f_evals () const
 
virtual Index c_evals () const
 
virtual Index jac_c_evals () const
 
virtual Index d_evals () const
 
virtual Index jac_d_evals () const
 
virtual Index h_evals () const
 
- Public Member Functions inherited from Ipopt::IpoptNLP
SmartPtr< NLPScalingObjectNLP_scaling () const
 Returns the scaling strategy object.
 
 IpoptNLP (const SmartPtr< NLPScalingObject > nlp_scaling)
 
virtual ~IpoptNLP ()
 Destructor.
 
 DECLARE_STD_EXCEPTION (Eval_Error)
 thrown if there is any error evaluating values from the nlp
 
- Public Member Functions inherited from Ipopt::ReferencedObject
 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)
 

Private Member Functions

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.

 RestoIpoptNLP ()
 Default Constructor.
 
 RestoIpoptNLP (const RestoIpoptNLP &)
 Copy Constructor.
 
void operator= (const RestoIpoptNLP &)
 Default Assignment Operator.
 

Private Attributes

bool initialized_
 Flag indicating if initialization method has been called.
 
Pointers for the original NLP information.
SmartPtr< IpoptNLPorig_ip_nlp_
 Pointer to the original IpoptNLP.
 
SmartPtr< IpoptDataorig_ip_data_
 Pointer to the original IpoptData.
 
SmartPtr< IpoptCalculatedQuantitiesorig_ip_cq_
 Pointer to the original IpoptCalculatedQuantities.
 
SmartPtr< CompoundVectorSpacex_space_
 Necessary Vector/Matrix spaces.
 
SmartPtr< CompoundVectorSpacec_space_
 
SmartPtr< CompoundVectorSpaced_space_
 
SmartPtr< CompoundVectorSpacex_l_space_
 
SmartPtr< CompoundMatrixSpacepx_l_space_
 
SmartPtr< CompoundVectorSpacex_u_space_
 
SmartPtr< CompoundMatrixSpacepx_u_space_
 
SmartPtr< CompoundVectorSpaced_l_space_
 
SmartPtr< CompoundMatrixSpacepd_l_space_
 
SmartPtr< CompoundVectorSpaced_u_space_
 
SmartPtr< CompoundMatrixSpacepd_u_space_
 
SmartPtr< CompoundMatrixSpacejac_c_space_
 
SmartPtr< CompoundMatrixSpacejac_d_space_
 
SmartPtr< CompoundSymMatrixSpaceh_space_
 
Storage for Model Quantities
SmartPtr< CompoundVectorx_L_
 Lower bounds on x.
 
SmartPtr< CompoundMatrixPx_L_
 Permutation matrix (x_L_ -> x)
 
SmartPtr< CompoundVectorx_U_
 Upper bounds on x.
 
SmartPtr< CompoundMatrixPx_U_
 Permutation matrix (x_U_ -> x)
 
SmartPtr< CompoundVectord_L_
 Lower bounds on d.
 
SmartPtr< CompoundMatrixPd_L_
 Permutation matrix (d_L_ -> d)
 
SmartPtr< CompoundVectord_U_
 Upper bounds on d.
 
SmartPtr< CompoundMatrixPd_U_
 Permutation matrix (d_U_ -> d.
 
Values particular to the restoration phase problem statement
Number rho_
 Penalty parameter for the $l_1$ norm, given by resto_penalty_parameter.
 
Number eta_factor_
 scaling factor for eta calculation
 
Number eta_mu_exponent_
 exponent for mu in eta calculation
 
SmartPtr< const Vectordr_x_
 Scaling factors for the $x$ part of the regularization term.
 
SmartPtr< const Vectordr2_x_
 Squared scaling factors for the $x$ part of the regularization term, for grad_f.
 
SmartPtr< const DiagMatrixDR2_x_
 Matrix with squared scaling factors, for h()
 
SmartPtr< const Vectorx_ref_
 $x$ part of the reference point in the regularization term
 
Algorithmic parameter
bool evaluate_orig_obj_at_resto_trial_
 Flag indicating if evaluation of the objective should be performed for every restoration phase objective function evaluation.
 
HessianApproximationType hessian_approximation_
 Flag indicating how Hessian information is obtained.
 
Counters for the function evaluations
Index f_evals_
 
Index grad_f_evals_
 
Index c_evals_
 
Index jac_c_evals_
 
Index d_evals_
 
Index jac_d_evals_
 
Index h_evals_
 

Detailed Description

This class maps a IpoptNLP into one that is used for the restoration phase of Ipopt.

Given a IpoptNLP

\begin{eqnarray*} \mathrm{min} && f(x), \\ \mathrm{s.t.} && c(x) = 0, &\qquad y_c\\ && d_L \leq d(x) \leq d_U, &\qquad y_d \\ && x_L \leq x \leq x_U, &\qquad z_L, z_U \end{eqnarray*}

parameters \(\rho\), \(\eta\), and a reference point \(x_r\), a RestoIpoptNLP is the NLP

\begin{eqnarray*} \mathrm{min} && \rho (p_c^Te + n_c^Te + p_d^Te + n_d^Te) + \frac{\eta}{2} \Vert D_r (x-x_r) \Vert_2^2, \\ \mathrm{s.t.} && c(x) - p_c + n_c = 0, &\qquad y_c\\ && d_L \leq d(x) - p_d + n_d \leq d_U, &\qquad y_d \\ && x_L \leq x \leq x_U, &\qquad z_L, z_U \\ && p_c, n_c, p_d, n_d \geq 0. &\qquad ... \end{eqnarray*}

where \(D_r = \mathrm{diag}(\frac{1}{\max\{1,|x_{r,i}|\}},\ldots,\frac{1}{\max\{1,|x_{r,n}|\}})\).

Parameter \(\rho\) is determined by option resto_penalty_parameter (default = 1000). Parameter \(\eta = \eta_f \sqrt{\mu}\), where \(\eta_f\) is determined by option resto_proximity_weight (default = 1).

Definition at line 47 of file IpRestoIpoptNLP.hpp.

Constructor & Destructor Documentation

◆ RestoIpoptNLP() [1/3]

Ipopt::RestoIpoptNLP::RestoIpoptNLP ( IpoptNLP orig_ip_nlp,
IpoptData orig_ip_data,
IpoptCalculatedQuantities orig_ip_cq 
)

◆ ~RestoIpoptNLP()

Ipopt::RestoIpoptNLP::~RestoIpoptNLP ( )

Destructor.

◆ RestoIpoptNLP() [2/3]

Ipopt::RestoIpoptNLP::RestoIpoptNLP ( )
private

Default Constructor.

◆ RestoIpoptNLP() [3/3]

Ipopt::RestoIpoptNLP::RestoIpoptNLP ( const RestoIpoptNLP )
private

Copy Constructor.

Member Function Documentation

◆ Initialize()

virtual bool Ipopt::RestoIpoptNLP::Initialize ( const Journalist jnlst,
const OptionsList options,
const std::string &  prefix 
)
virtual

Initialization method.

Set the internal options and initialize internal data structures.

Reimplemented from Ipopt::IpoptNLP.

◆ InitializeStructures()

virtual bool Ipopt::RestoIpoptNLP::InitializeStructures ( SmartPtr< Vector > &  x,
bool  init_x,
SmartPtr< Vector > &  y_c,
bool  init_y_c,
SmartPtr< Vector > &  y_d,
bool  init_y_d,
SmartPtr< Vector > &  z_L,
bool  init_z_L,
SmartPtr< Vector > &  z_U,
bool  init_z_U,
SmartPtr< Vector > &  v_L,
SmartPtr< Vector > &  v_U 
)
virtual

Initialize (create) structures for the iteration data.

Implements Ipopt::IpoptNLP.

◆ GetWarmStartIterate()

virtual bool Ipopt::RestoIpoptNLP::GetWarmStartIterate ( IteratesVector )
inlinevirtual

Method accessing the GetWarmStartIterate of the NLP.

Implements Ipopt::IpoptNLP.

Definition at line 84 of file IpRestoIpoptNLP.hpp.

◆ FinalizeSolution()

void Ipopt::RestoIpoptNLP::FinalizeSolution ( SolverReturn  ,
const Vector ,
const Vector ,
const Vector ,
const Vector ,
const Vector ,
const Vector ,
const Vector ,
Number  ,
const IpoptData ,
IpoptCalculatedQuantities  
)
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 91 of file IpRestoIpoptNLP.hpp.

◆ objective_depends_on_mu()

virtual bool Ipopt::RestoIpoptNLP::objective_depends_on_mu ( ) const
inlinevirtual

Accessor methods for model data.

Method for telling IpoptCalculatedQuantities that the restoration phase objective function depends on the barrier parameter

Reimplemented from Ipopt::IpoptNLP.

Definition at line 112 of file IpRestoIpoptNLP.hpp.

◆ f() [1/2]

virtual Number Ipopt::RestoIpoptNLP::f ( const Vector x)
virtual

Objective value (incorrect version for restoration phase)

Implements Ipopt::IpoptNLP.

◆ f() [2/2]

virtual Number Ipopt::RestoIpoptNLP::f ( const Vector x,
Number  mu 
)
virtual

Objective value.

Implements Ipopt::IpoptNLP.

◆ grad_f() [1/2]

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::grad_f ( const Vector x)
virtual

Gradient of the objective (incorrect version for restoration phase)

Implements Ipopt::IpoptNLP.

◆ grad_f() [2/2]

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::grad_f ( const Vector x,
Number  mu 
)
virtual

Gradient of the objective.

Implements Ipopt::IpoptNLP.

◆ c()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::c ( const Vector x)
virtual

Equality constraint residual.

Implements Ipopt::IpoptNLP.

◆ jac_c()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::jac_c ( const Vector x)
virtual

Jacobian Matrix for equality constraints.

Implements Ipopt::IpoptNLP.

◆ d()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::d ( const Vector x)
virtual

Inequality constraint residual (reformulated as equalities with slacks.

Implements Ipopt::IpoptNLP.

◆ jac_d()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::jac_d ( const Vector x)
virtual

Jacobian Matrix for inequality constraints.

Implements Ipopt::IpoptNLP.

◆ h() [1/2]

virtual SmartPtr< const SymMatrix > Ipopt::RestoIpoptNLP::h ( const Vector x,
Number  obj_factor,
const Vector yc,
const Vector yd 
)
virtual

Hessian of the Lagrangian (incorrect version for restoration phase)

Implements Ipopt::IpoptNLP.

◆ h() [2/2]

virtual SmartPtr< const SymMatrix > Ipopt::RestoIpoptNLP::h ( const Vector x,
Number  obj_factor,
const Vector yc,
const Vector yd,
Number  mu 
)
virtual

Hessian of the Lagrangian.

Implements Ipopt::IpoptNLP.

◆ uninitialized_h()

virtual SmartPtr< const SymMatrix > Ipopt::RestoIpoptNLP::uninitialized_h ( )
virtual

Provides a Hessian matrix from the correct matrix space with uninitialized values.

This can be used in LeastSquareMults to obtain a "zero Hessian".

Implements Ipopt::IpoptNLP.

◆ x_L()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::x_L ( ) const
inlinevirtual

Lower bounds on x.

Implements Ipopt::IpoptNLP.

Definition at line 185 of file IpRestoIpoptNLP.hpp.

◆ Px_L()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::Px_L ( ) const
inlinevirtual

Permutation matrix (x_L_ -> x)

Implements Ipopt::IpoptNLP.

Definition at line 191 of file IpRestoIpoptNLP.hpp.

◆ x_U()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::x_U ( ) const
inlinevirtual

Upper bounds on x.

Implements Ipopt::IpoptNLP.

Definition at line 197 of file IpRestoIpoptNLP.hpp.

◆ Px_U()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::Px_U ( ) const
inlinevirtual

Permutation matrix (x_U_ -> x.

Implements Ipopt::IpoptNLP.

Definition at line 203 of file IpRestoIpoptNLP.hpp.

◆ d_L()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::d_L ( ) const
inlinevirtual

Lower bounds on d.

Implements Ipopt::IpoptNLP.

Definition at line 209 of file IpRestoIpoptNLP.hpp.

◆ Pd_L()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::Pd_L ( ) const
inlinevirtual

Permutation matrix (d_L_ -> d)

Implements Ipopt::IpoptNLP.

Definition at line 215 of file IpRestoIpoptNLP.hpp.

◆ d_U()

virtual SmartPtr< const Vector > Ipopt::RestoIpoptNLP::d_U ( ) const
inlinevirtual

Upper bounds on d.

Implements Ipopt::IpoptNLP.

Definition at line 221 of file IpRestoIpoptNLP.hpp.

◆ Pd_U()

virtual SmartPtr< const Matrix > Ipopt::RestoIpoptNLP::Pd_U ( ) const
inlinevirtual

Permutation matrix (d_U_ -> d.

Implements Ipopt::IpoptNLP.

Definition at line 227 of file IpRestoIpoptNLP.hpp.

◆ HessianMatrixSpace()

virtual SmartPtr< const SymMatrixSpace > Ipopt::RestoIpoptNLP::HessianMatrixSpace ( ) const
inlinevirtual

Accessor method to obtain the MatrixSpace for the Hessian matrix (or it's approximation)

Implements Ipopt::IpoptNLP.

Definition at line 232 of file IpRestoIpoptNLP.hpp.

◆ x_space()

virtual SmartPtr< const VectorSpace > Ipopt::RestoIpoptNLP::x_space ( ) const
inlinevirtual

x_space

Implements Ipopt::IpoptNLP.

Definition at line 237 of file IpRestoIpoptNLP.hpp.

◆ GetSpaces()

virtual void Ipopt::RestoIpoptNLP::GetSpaces ( SmartPtr< const VectorSpace > &  x_space,
SmartPtr< const VectorSpace > &  c_space,
SmartPtr< const VectorSpace > &  d_space,
SmartPtr< const VectorSpace > &  x_l_space,
SmartPtr< const MatrixSpace > &  px_l_space,
SmartPtr< const VectorSpace > &  x_u_space,
SmartPtr< const MatrixSpace > &  px_u_space,
SmartPtr< const VectorSpace > &  d_l_space,
SmartPtr< const MatrixSpace > &  pd_l_space,
SmartPtr< const VectorSpace > &  d_u_space,
SmartPtr< const MatrixSpace > &  pd_u_space,
SmartPtr< const MatrixSpace > &  Jac_c_space,
SmartPtr< const MatrixSpace > &  Jac_d_space,
SmartPtr< const SymMatrixSpace > &  Hess_lagrangian_space 
)
virtual

Accessor method for vector/matrix spaces pointers.

Implements Ipopt::IpoptNLP.

◆ AdjustVariableBounds()

virtual void Ipopt::RestoIpoptNLP::AdjustVariableBounds ( const Vector new_x_L,
const Vector new_x_U,
const Vector new_d_L,
const Vector new_d_U 
)
virtual

Method for adapting the variable bounds.

This is called if slacks are becoming too small.

Implements Ipopt::IpoptNLP.

◆ IntermediateCallBack()

bool Ipopt::RestoIpoptNLP::IntermediateCallBack ( AlgorithmMode  mode,
Index  iter,
Number  obj_value,
Number  inf_pr,
Number  inf_du,
Number  mu,
Number  d_norm,
Number  regularization_size,
Number  alpha_du,
Number  alpha_pr,
Index  ls_trials,
SmartPtr< const IpoptData ip_data,
SmartPtr< IpoptCalculatedQuantities ip_cq 
)
virtual

User callback method.

Implements Ipopt::IpoptNLP.

◆ OrigIpNLP()

IpoptNLP & Ipopt::RestoIpoptNLP::OrigIpNLP ( ) const
inline

Definition at line 292 of file IpRestoIpoptNLP.hpp.

◆ OrigIpData()

IpoptData & Ipopt::RestoIpoptNLP::OrigIpData ( ) const
inline

Definition at line 297 of file IpRestoIpoptNLP.hpp.

◆ OrigIpCq()

IpoptCalculatedQuantities & Ipopt::RestoIpoptNLP::OrigIpCq ( ) const
inline

Definition at line 302 of file IpRestoIpoptNLP.hpp.

◆ Rho()

Number Ipopt::RestoIpoptNLP::Rho ( ) const
inline

Accessor Method for obtaining the Rho penalization factor for the ell_1 norm.

Definition at line 311 of file IpRestoIpoptNLP.hpp.

◆ f_evals()

virtual Index Ipopt::RestoIpoptNLP::f_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 318 of file IpRestoIpoptNLP.hpp.

◆ grad_f_evals()

virtual Index Ipopt::RestoIpoptNLP::grad_f_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 322 of file IpRestoIpoptNLP.hpp.

◆ c_evals()

virtual Index Ipopt::RestoIpoptNLP::c_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 326 of file IpRestoIpoptNLP.hpp.

◆ jac_c_evals()

virtual Index Ipopt::RestoIpoptNLP::jac_c_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 330 of file IpRestoIpoptNLP.hpp.

◆ d_evals()

virtual Index Ipopt::RestoIpoptNLP::d_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 334 of file IpRestoIpoptNLP.hpp.

◆ jac_d_evals()

virtual Index Ipopt::RestoIpoptNLP::jac_d_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 338 of file IpRestoIpoptNLP.hpp.

◆ h_evals()

virtual Index Ipopt::RestoIpoptNLP::h_evals ( ) const
inlinevirtual

Implements Ipopt::IpoptNLP.

Definition at line 342 of file IpRestoIpoptNLP.hpp.

◆ Eta()

Number Ipopt::RestoIpoptNLP::Eta ( Number  mu) const

Method to calculate eta, the factor for the regularization term.

◆ DR_x()

SmartPtr< const Vector > Ipopt::RestoIpoptNLP::DR_x ( ) const
inline

Method returning the scaling factors for the 2-norm penalization term.

Definition at line 356 of file IpRestoIpoptNLP.hpp.

◆ RegisterOptions()

static void Ipopt::RestoIpoptNLP::RegisterOptions ( SmartPtr< RegisteredOptions roptions)
static

◆ operator=()

void Ipopt::RestoIpoptNLP::operator= ( const RestoIpoptNLP )
private

Default Assignment Operator.

Member Data Documentation

◆ orig_ip_nlp_

SmartPtr<IpoptNLP> Ipopt::RestoIpoptNLP::orig_ip_nlp_
private

Pointer to the original IpoptNLP.

Definition at line 369 of file IpRestoIpoptNLP.hpp.

◆ orig_ip_data_

SmartPtr<IpoptData> Ipopt::RestoIpoptNLP::orig_ip_data_
private

Pointer to the original IpoptData.

Definition at line 372 of file IpRestoIpoptNLP.hpp.

◆ orig_ip_cq_

SmartPtr<IpoptCalculatedQuantities> Ipopt::RestoIpoptNLP::orig_ip_cq_
private

Pointer to the original IpoptCalculatedQuantities.

Definition at line 375 of file IpRestoIpoptNLP.hpp.

◆ x_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::x_space_
private

Necessary Vector/Matrix spaces.

Definition at line 380 of file IpRestoIpoptNLP.hpp.

◆ c_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::c_space_
private

Definition at line 382 of file IpRestoIpoptNLP.hpp.

◆ d_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::d_space_
private

Definition at line 384 of file IpRestoIpoptNLP.hpp.

◆ x_l_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::x_l_space_
private

Definition at line 386 of file IpRestoIpoptNLP.hpp.

◆ px_l_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::px_l_space_
private

Definition at line 388 of file IpRestoIpoptNLP.hpp.

◆ x_u_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::x_u_space_
private

Definition at line 390 of file IpRestoIpoptNLP.hpp.

◆ px_u_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::px_u_space_
private

Definition at line 392 of file IpRestoIpoptNLP.hpp.

◆ d_l_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::d_l_space_
private

Definition at line 394 of file IpRestoIpoptNLP.hpp.

◆ pd_l_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::pd_l_space_
private

Definition at line 396 of file IpRestoIpoptNLP.hpp.

◆ d_u_space_

SmartPtr<CompoundVectorSpace> Ipopt::RestoIpoptNLP::d_u_space_
private

Definition at line 398 of file IpRestoIpoptNLP.hpp.

◆ pd_u_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::pd_u_space_
private

Definition at line 400 of file IpRestoIpoptNLP.hpp.

◆ jac_c_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::jac_c_space_
private

Definition at line 402 of file IpRestoIpoptNLP.hpp.

◆ jac_d_space_

SmartPtr<CompoundMatrixSpace> Ipopt::RestoIpoptNLP::jac_d_space_
private

Definition at line 404 of file IpRestoIpoptNLP.hpp.

◆ h_space_

SmartPtr<CompoundSymMatrixSpace> Ipopt::RestoIpoptNLP::h_space_
private

Definition at line 406 of file IpRestoIpoptNLP.hpp.

◆ x_L_

SmartPtr<CompoundVector> Ipopt::RestoIpoptNLP::x_L_
private

Lower bounds on x.

Definition at line 412 of file IpRestoIpoptNLP.hpp.

◆ Px_L_

SmartPtr<CompoundMatrix> Ipopt::RestoIpoptNLP::Px_L_
private

Permutation matrix (x_L_ -> x)

Definition at line 415 of file IpRestoIpoptNLP.hpp.

◆ x_U_

SmartPtr<CompoundVector> Ipopt::RestoIpoptNLP::x_U_
private

Upper bounds on x.

Definition at line 418 of file IpRestoIpoptNLP.hpp.

◆ Px_U_

SmartPtr<CompoundMatrix> Ipopt::RestoIpoptNLP::Px_U_
private

Permutation matrix (x_U_ -> x)

Definition at line 421 of file IpRestoIpoptNLP.hpp.

◆ d_L_

SmartPtr<CompoundVector> Ipopt::RestoIpoptNLP::d_L_
private

Lower bounds on d.

Definition at line 424 of file IpRestoIpoptNLP.hpp.

◆ Pd_L_

SmartPtr<CompoundMatrix> Ipopt::RestoIpoptNLP::Pd_L_
private

Permutation matrix (d_L_ -> d)

Definition at line 427 of file IpRestoIpoptNLP.hpp.

◆ d_U_

SmartPtr<CompoundVector> Ipopt::RestoIpoptNLP::d_U_
private

Upper bounds on d.

Definition at line 430 of file IpRestoIpoptNLP.hpp.

◆ Pd_U_

SmartPtr<CompoundMatrix> Ipopt::RestoIpoptNLP::Pd_U_
private

Permutation matrix (d_U_ -> d.

Definition at line 433 of file IpRestoIpoptNLP.hpp.

◆ rho_

Number Ipopt::RestoIpoptNLP::rho_
private

Penalty parameter for the $l_1$ norm, given by resto_penalty_parameter.

Definition at line 439 of file IpRestoIpoptNLP.hpp.

◆ eta_factor_

Number Ipopt::RestoIpoptNLP::eta_factor_
private

scaling factor for eta calculation

Definition at line 442 of file IpRestoIpoptNLP.hpp.

◆ eta_mu_exponent_

Number Ipopt::RestoIpoptNLP::eta_mu_exponent_
private

exponent for mu in eta calculation

Definition at line 445 of file IpRestoIpoptNLP.hpp.

◆ dr_x_

SmartPtr<const Vector> Ipopt::RestoIpoptNLP::dr_x_
private

Scaling factors for the $x$ part of the regularization term.

Definition at line 448 of file IpRestoIpoptNLP.hpp.

◆ dr2_x_

SmartPtr<const Vector> Ipopt::RestoIpoptNLP::dr2_x_
private

Squared scaling factors for the $x$ part of the regularization term, for grad_f.

Definition at line 450 of file IpRestoIpoptNLP.hpp.

◆ DR2_x_

SmartPtr<const DiagMatrix> Ipopt::RestoIpoptNLP::DR2_x_
private

Matrix with squared scaling factors, for h()

Definition at line 452 of file IpRestoIpoptNLP.hpp.

◆ x_ref_

SmartPtr<const Vector> Ipopt::RestoIpoptNLP::x_ref_
private

$x$ part of the reference point in the regularization term

Definition at line 455 of file IpRestoIpoptNLP.hpp.

◆ evaluate_orig_obj_at_resto_trial_

bool Ipopt::RestoIpoptNLP::evaluate_orig_obj_at_resto_trial_
private

Flag indicating if evaluation of the objective should be performed for every restoration phase objective function evaluation.

Definition at line 487 of file IpRestoIpoptNLP.hpp.

◆ hessian_approximation_

HessianApproximationType Ipopt::RestoIpoptNLP::hessian_approximation_
private

Flag indicating how Hessian information is obtained.

Definition at line 490 of file IpRestoIpoptNLP.hpp.

◆ initialized_

bool Ipopt::RestoIpoptNLP::initialized_
private

Flag indicating if initialization method has been called.

Definition at line 494 of file IpRestoIpoptNLP.hpp.

◆ f_evals_

Index Ipopt::RestoIpoptNLP::f_evals_
private

Definition at line 498 of file IpRestoIpoptNLP.hpp.

◆ grad_f_evals_

Index Ipopt::RestoIpoptNLP::grad_f_evals_
private

Definition at line 499 of file IpRestoIpoptNLP.hpp.

◆ c_evals_

Index Ipopt::RestoIpoptNLP::c_evals_
private

Definition at line 500 of file IpRestoIpoptNLP.hpp.

◆ jac_c_evals_

Index Ipopt::RestoIpoptNLP::jac_c_evals_
private

Definition at line 501 of file IpRestoIpoptNLP.hpp.

◆ d_evals_

Index Ipopt::RestoIpoptNLP::d_evals_
private

Definition at line 502 of file IpRestoIpoptNLP.hpp.

◆ jac_d_evals_

Index Ipopt::RestoIpoptNLP::jac_d_evals_
private

Definition at line 503 of file IpRestoIpoptNLP.hpp.

◆ h_evals_

Index Ipopt::RestoIpoptNLP::h_evals_
private

Definition at line 504 of file IpRestoIpoptNLP.hpp.


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