|
ROL
|
Provides the interface to compute bundle trust-region steps. More...
#include <ROL_BundleStep.hpp>
Public Member Functions | |
| BundleStep (ROL::ParameterList &parlist) | |
| void | initialize (Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj, BoundConstraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Initialize step with bound constraint. | |
| void | compute (Vector< Real > &s, const Vector< Real > &x, Objective< Real > &obj, BoundConstraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Compute step. | |
| void | update (Vector< Real > &x, const Vector< Real > &s, Objective< Real > &obj, BoundConstraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Update step, if successful. | |
| std::string | printHeader (void) const |
| Print iterate header. | |
| std::string | printName (void) const |
| Print step name. | |
| std::string | print (AlgorithmState< Real > &algo_state, bool print_header=false) const |
| Print iterate status. | |
| Public Member Functions inherited from ROL::Step< Real > | |
| virtual | ~Step () |
| Step (void) | |
| virtual void | initialize (Vector< Real > &x, const Vector< Real > &s, const Vector< Real > &g, Objective< Real > &obj, BoundConstraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Initialize step with bound constraint. | |
| virtual void | initialize (Vector< Real > &x, const Vector< Real > &g, Vector< Real > &l, const Vector< Real > &c, Objective< Real > &obj, Constraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Initialize step with equality constraint. | |
| virtual void | initialize (Vector< Real > &x, const Vector< Real > &g, Vector< Real > &l, const Vector< Real > &c, Objective< Real > &obj, Constraint< Real > &con, BoundConstraint< Real > &bnd, AlgorithmState< Real > &algo_state) |
| Initialize step with equality constraint. | |
| virtual void | compute (Vector< Real > &s, const Vector< Real > &x, const Vector< Real > &l, Objective< Real > &obj, Constraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Compute step (equality constraints). | |
| virtual void | update (Vector< Real > &x, Vector< Real > &l, const Vector< Real > &s, Objective< Real > &obj, Constraint< Real > &con, AlgorithmState< Real > &algo_state) |
| Update step, if successful (equality constraints). | |
| virtual void | compute (Vector< Real > &s, const Vector< Real > &x, const Vector< Real > &l, Objective< Real > &obj, Constraint< Real > &con, BoundConstraint< Real > &bnd, AlgorithmState< Real > &algo_state) |
| Compute step (equality constraints). | |
| virtual void | update (Vector< Real > &x, Vector< Real > &l, const Vector< Real > &s, Objective< Real > &obj, Constraint< Real > &con, BoundConstraint< Real > &bnd, AlgorithmState< Real > &algo_state) |
| Update step, if successful (equality constraints). | |
| const ROL::Ptr< const StepState< Real > > | getStepState (void) const |
| Get state for step object. | |
| void | reset (const Real searchSize=1.0) |
| Get state for step object. | |
Private Attributes | |
| ROL::Ptr< Bundle< Real > > | bundle_ |
| ROL::Ptr< LineSearch< Real > > | lineSearch_ |
| unsigned | QPiter_ |
| unsigned | QPmaxit_ |
| Real | QPtol_ |
| int | step_flag_ |
| ROL::Ptr< Vector< Real > > | y_ |
| Real | linErrNew_ |
| Real | valueNew_ |
| ROL::Ptr< Vector< Real > > | aggSubGradNew_ |
| Real | aggSubGradOldNorm_ |
| Real | aggLinErrNew_ |
| Real | aggLinErrOld_ |
| Real | aggDistMeasNew_ |
| Real | T_ |
| Real | tol_ |
| Real | m1_ |
| Real | m2_ |
| Real | m3_ |
| Real | nu_ |
| int | ls_maxit_ |
| bool | first_print_ |
| bool | isConvex_ |
| Real | ftol_ |
| int | verbosity_ |
Additional Inherited Members | |
| Protected Member Functions inherited from ROL::Step< Real > | |
| ROL::Ptr< StepState< Real > > | getState (void) |
Provides the interface to compute bundle trust-region steps.
Definition at line 33 of file ROL_BundleStep.hpp.
|
inline |
Definition at line 85 of file ROL_BundleStep.hpp.
References aggDistMeasNew_, aggLinErrNew_, aggLinErrOld_, aggSubGradNew_, aggSubGradOldNorm_, bundle_, first_print_, ftol_, ROL::Step< Real >::getState(), isConvex_, linErrNew_, lineSearch_, ROL::LineSearchFactory(), ls_maxit_, m1_, m2_, m3_, nu_, QPiter_, QPmaxit_, QPtol_, ROL::ROL_EPSILON(), step_flag_, T_, tol_, valueNew_, verbosity_, y_, and zero.
|
inlinevirtual |
Initialize step with bound constraint.
Reimplemented from ROL::Step< Real >.
Definition at line 134 of file ROL_BundleStep.hpp.
References aggSubGradNew_, aggSubGradOldNorm_, bundle_, ROL::Vector< Real >::clone(), ROL::Step< Real >::getState(), ROL::AlgorithmState< Real >::gnorm, ROL::Step< Real >::initialize(), isConvex_, lineSearch_, and y_.
|
inlinevirtual |
Compute step.
Reimplemented from ROL::Step< Real >.
Definition at line 155 of file ROL_BundleStep.hpp.
References aggDistMeasNew_, aggLinErrNew_, aggLinErrOld_, ROL::AlgorithmState< Real >::aggregateGradientNorm, ROL::AlgorithmState< Real >::aggregateModelError, aggSubGradNew_, aggSubGradOldNorm_, bundle_, ROL::Vector< Real >::dot(), first_print_, ROL::AlgorithmState< Real >::flag, ftol_, ROL::Step< Real >::getState(), ROL::Objective< Real >::gradient(), isConvex_, ROL::AlgorithmState< Real >::iter, linErrNew_, lineSearch_, ls_maxit_, m1_, m2_, m3_, ROL::AlgorithmState< Real >::nfval, ROL::AlgorithmState< Real >::ngrad, nu_, QPiter_, QPmaxit_, QPtol_, ROL::ROL_EPSILON(), ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), ROL::AlgorithmState< Real >::snorm, step_flag_, T_, tol_, ROL::Objective< Real >::update(), ROL::AlgorithmState< Real >::value, ROL::Objective< Real >::value(), valueNew_, verbosity_, y_, ROL::Vector< Real >::zero(), and zero.
|
inlinevirtual |
Update step, if successful.
Reimplemented from ROL::Step< Real >.
Definition at line 357 of file ROL_BundleStep.hpp.
References aggLinErrNew_, aggSubGradNew_, bundle_, ROL::AlgorithmState< Real >::flag, ROL::Step< Real >::getState(), ROL::AlgorithmState< Real >::gnorm, ROL::AlgorithmState< Real >::iter, ROL::AlgorithmState< Real >::iterateVec, linErrNew_, ROL::Vector< Real >::plus(), QPiter_, ROL::AlgorithmState< Real >::snorm, step_flag_, ROL::AlgorithmState< Real >::value, and valueNew_.
|
inlinevirtual |
Print iterate header.
Reimplemented from ROL::Step< Real >.
Definition at line 392 of file ROL_BundleStep.hpp.
Referenced by print().
|
inlinevirtual |
Print step name.
Reimplemented from ROL::Step< Real >.
Definition at line 409 of file ROL_BundleStep.hpp.
Referenced by print().
|
inlinevirtual |
Print iterate status.
Reimplemented from ROL::Step< Real >.
Definition at line 415 of file ROL_BundleStep.hpp.
References ROL::AlgorithmState< Real >::aggregateGradientNorm, ROL::AlgorithmState< Real >::aggregateModelError, first_print_, ROL::Step< Real >::getStepState(), ROL::AlgorithmState< Real >::gnorm, ROL::AlgorithmState< Real >::iter, ROL::AlgorithmState< Real >::nfval, ROL::AlgorithmState< Real >::ngrad, printHeader(), printName(), QPiter_, ROL::AlgorithmState< Real >::snorm, step_flag_, and ROL::AlgorithmState< Real >::value.
|
private |
Definition at line 36 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), initialize(), and update().
|
private |
Definition at line 37 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and initialize().
|
private |
Definition at line 40 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), print(), and update().
|
private |
Definition at line 41 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 42 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 45 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), print(), and update().
|
private |
Definition at line 48 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and initialize().
|
private |
Definition at line 51 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and update().
|
private |
Definition at line 52 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and update().
|
private |
Definition at line 55 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), initialize(), and update().
|
private |
Definition at line 56 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and initialize().
|
private |
Definition at line 57 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and update().
|
private |
Definition at line 58 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 59 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 62 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 63 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 64 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 65 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 66 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 67 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 70 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 72 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and print().
|
private |
Definition at line 73 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), compute(), and initialize().
|
private |
Definition at line 75 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().
|
private |
Definition at line 77 of file ROL_BundleStep.hpp.
Referenced by BundleStep(), and compute().