ROL
|
Provides an interface to run optimization algorithms. More...
#include <ROL_Algorithm.hpp>
Public Member Functions | |
virtual | ~Algorithm () |
Algorithm (const ROL::Ptr< Step< Real > > &step, const ROL::Ptr< StatusTest< Real > > &status, bool printHeader=false) | |
Constructor, given a step and a status test. More... | |
Algorithm (const ROL::Ptr< Step< Real > > &step, const ROL::Ptr< StatusTest< Real > > &status, const ROL::Ptr< AlgorithmState< Real > > &state, bool printHeader=false) | |
Constructor, given a step, a status test, and a previously defined algorithm state. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, Objective< Real > &obj, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on unconstrained problems (Type-U). This is the primary Type-U interface. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on unconstrained problems (Type-U). This general interface supports the use of dual optimization vector spaces, where the user does not define the dual() method. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, Objective< Real > &obj, BoundConstraint< Real > &bnd, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on bound constrained problems (Type-B). This is the primary Type-B interface. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj, BoundConstraint< Real > &bnd, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on bound constrained problems (Type-B). This general interface supports the use of dual optimization vector spaces, where the user does not define the dual() method. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, Vector< Real > &l, Objective< Real > &obj, Constraint< Real > &con, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on equality constrained problems (Type-E). This is the primary Type-E interface. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, const Vector< Real > &g, Vector< Real > &l, const Vector< Real > &c, Objective< Real > &obj, Constraint< Real > &con, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on equality constrained problems (Type-E). This general interface supports the use of dual optimization and constraint vector spaces, where the user does not define the dual() method. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, Vector< Real > &l, Objective< Real > &obj, Constraint< Real > &con, BoundConstraint< Real > &bnd, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on equality and bound constrained problems (Type-EB). This is the primary Type-EB interface. More... | |
virtual std::vector< std::string > | run (Vector< Real > &x, const Vector< Real > &g, Vector< Real > &l, const Vector< Real > &c, Objective< Real > &obj, Constraint< Real > &con, BoundConstraint< Real > &bnd, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout) |
Run algorithm on equality and bound constrained problems (Type-EB). This general interface supports the use of dual optimization and constraint vector spaces, where the user does not define the dual() method. More... | |
std::string | getIterHeader (void) |
std::string | getIterInfo (bool withHeader=false) |
ROL::Ptr< const AlgorithmState < Real > > | getState (void) const |
void | reset (void) |
Private Attributes | |
ROL::Ptr< Step< Real > > | step_ |
ROL::Ptr< StatusTest< Real > > | status_ |
ROL::Ptr< AlgorithmState< Real > > | state_ |
bool | printHeader_ |
Provides an interface to run optimization algorithms.
Provides an interface to run unconstrained optimization algorithms.
Definition at line 29 of file ROL_Algorithm.hpp.
|
inlinevirtual |
Definition at line 39 of file ROL_Algorithm.hpp.
|
inline |
Constructor, given a step and a status test.
Definition at line 43 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::printHeader_, ROL::Algorithm< Real >::state_, ROL::Algorithm< Real >::status_, and ROL::Algorithm< Real >::step_.
|
inline |
Constructor, given a step, a status test, and a previously defined algorithm state.
Definition at line 55 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::printHeader_, ROL::Algorithm< Real >::state_, ROL::Algorithm< Real >::status_, and ROL::Algorithm< Real >::step_.
|
inlinevirtual |
Run algorithm on unconstrained problems (Type-U). This is the primary Type-U interface.
Definition at line 68 of file ROL_Algorithm.hpp.
References ROL::BoundConstraint< Real >::deactivate(), and ROL::Vector< Real >::dual().
Referenced by main(), and ROL::Algorithm< Real >::run().
|
inlinevirtual |
Run algorithm on unconstrained problems (Type-U). This general interface supports the use of dual optimization vector spaces, where the user does not define the dual() method.
Definition at line 83 of file ROL_Algorithm.hpp.
References ROL::BoundConstraint< Real >::deactivate(), and ROL::Algorithm< Real >::run().
|
inlinevirtual |
Run algorithm on bound constrained problems (Type-B). This is the primary Type-B interface.
Definition at line 98 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::dual(), and ROL::Algorithm< Real >::run().
|
inlinevirtual |
Run algorithm on bound constrained problems (Type-B). This general interface supports the use of dual optimization vector spaces, where the user does not define the dual() method.
Definition at line 112 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::clone(), ROL::EExitStatusToString(), ROL::Vector< Real >::print(), ROL::Algorithm< Real >::printHeader_, ROL::Algorithm< Real >::state_, ROL::Algorithm< Real >::status_, and ROL::Algorithm< Real >::step_.
|
inlinevirtual |
Run algorithm on equality constrained problems (Type-E). This is the primary Type-E interface.
Definition at line 186 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::dual(), and ROL::Algorithm< Real >::run().
|
inlinevirtual |
Run algorithm on equality constrained problems (Type-E). This general interface supports the use of dual optimization and constraint vector spaces, where the user does not define the dual() method.
Definition at line 204 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::clone(), ROL::EExitStatusToString(), ROL::Vector< Real >::print(), ROL::Algorithm< Real >::printHeader_, ROL::Algorithm< Real >::state_, ROL::Algorithm< Real >::status_, and ROL::Algorithm< Real >::step_.
|
inlinevirtual |
Run algorithm on equality and bound constrained problems (Type-EB). This is the primary Type-EB interface.
Definition at line 278 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::dual(), and ROL::Algorithm< Real >::run().
|
inlinevirtual |
Run algorithm on equality and bound constrained problems (Type-EB). This general interface supports the use of dual optimization and constraint vector spaces, where the user does not define the dual() method.
Definition at line 294 of file ROL_Algorithm.hpp.
References ROL::Vector< Real >::clone(), ROL::EExitStatusToString(), ROL::Vector< Real >::print(), ROL::Algorithm< Real >::printHeader_, ROL::Algorithm< Real >::state_, ROL::Algorithm< Real >::status_, and ROL::Algorithm< Real >::step_.
|
inline |
Definition at line 364 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::step_.
|
inline |
Definition at line 368 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::state_, and ROL::Algorithm< Real >::step_.
|
inline |
Definition at line 372 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::state_.
|
inline |
Definition at line 376 of file ROL_Algorithm.hpp.
References ROL::Algorithm< Real >::state_.
|
private |
Definition at line 31 of file ROL_Algorithm.hpp.
Referenced by ROL::Algorithm< Real >::Algorithm(), ROL::Algorithm< Real >::getIterHeader(), ROL::Algorithm< Real >::getIterInfo(), and ROL::Algorithm< Real >::run().
|
private |
Definition at line 32 of file ROL_Algorithm.hpp.
Referenced by ROL::Algorithm< Real >::Algorithm(), and ROL::Algorithm< Real >::run().
|
private |
Definition at line 33 of file ROL_Algorithm.hpp.
Referenced by ROL::Algorithm< Real >::Algorithm(), ROL::Algorithm< Real >::getIterInfo(), ROL::Algorithm< Real >::getState(), ROL::Algorithm< Real >::reset(), and ROL::Algorithm< Real >::run().
|
private |
Definition at line 35 of file ROL_Algorithm.hpp.
Referenced by ROL::Algorithm< Real >::Algorithm(), and ROL::Algorithm< Real >::run().