|
ROL
|
#include <ROL_OptimizationProblem.hpp>
Public Member Functions | |
| virtual | ~OptimizationProblem (void) |
| OptimizationProblem (void) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< Constraint< Real > > &econ, const Ptr< Vector< Real > > &emul) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< Constraint< Real > > &icon, const Ptr< Vector< Real > > &imul, const Ptr< BoundConstraint< Real > > &ibnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd) | |
| OptimizationProblem (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x) | |
| virtual Ptr< Objective< Real > > | getObjective (void) |
| virtual Ptr< Vector< Real > > | getSolutionVector (void) |
| virtual Ptr< BoundConstraint< Real > > | getBoundConstraint (void) |
| virtual Ptr< Constraint< Real > > | getConstraint (void) |
| virtual Ptr< Vector< Real > > | getMultiplierVector (void) |
| EProblem | getProblemType (void) |
| void | setMeanValueObjective (const Ptr< SampleGenerator< Real > > &sampler) |
| Set objective function to mean value objective. | |
| void | setRiskNeutralObjective (const Ptr< SampleGenerator< Real > > &vsampler, const Ptr< SampleGenerator< Real > > &gsampler=nullPtr, const Ptr< SampleGenerator< Real > > &hsampler=nullPtr, const bool storage=true) |
| Set objective function to risk neutral objective. | |
| void | setMeanValueEquality (const Ptr< SampleGenerator< Real > > &sampler, const int index=0) |
| Set objective function to risk averse objective. | |
| void | setRiskNeutralEquality (const Ptr< SampleGenerator< Real > > &xsampler, const Ptr< BatchManager< Real > > &cbman, const int index=0) |
| void | setAlmostSureEquality (const Ptr< SampleGenerator< Real > > &sampler, const int index=0) |
| void | setStochasticEquality (std::vector< ParameterList > &parlist, const std::vector< Ptr< SampleGenerator< Real > > > &xsampler, const std::vector< Ptr< BatchManager< Real > > > &cbman) |
| void | setStochasticEquality (ParameterList &parlist, const Ptr< SampleGenerator< Real > > &xsampler, const Ptr< BatchManager< Real > > &cbman) |
| void | setMeanValueInequality (const Ptr< SampleGenerator< Real > > &sampler, const int index=0) |
| void | setRiskNeutralInequality (const Ptr< SampleGenerator< Real > > &xsampler, const Ptr< BatchManager< Real > > &cbman, const int index=0) |
| void | setRiskAverseInequality (ParameterList &parlist, const Ptr< SampleGenerator< Real > > &sampler, const int index=0) |
| void | setAlmostSureInequality (const Ptr< SampleGenerator< Real > > &sampler, const int index=0) |
| void | setStochasticInequality (std::vector< ParameterList > &parlist, const std::vector< Ptr< SampleGenerator< Real > > > &xsampler, const std::vector< Ptr< BatchManager< Real > > > &cbman) |
| void | setStochasticInequality (ParameterList &parlist, const Ptr< SampleGenerator< Real > > &xsampler, const Ptr< BatchManager< Real > > &cbman) |
| Real | getSolutionStatistic (int comp=0, int index=0) |
| Returns the statistic from the soluton vector. | |
| std::vector< Real > | getObjectiveStatistic (void) const |
| std::vector< Real > | getConstraintStatistic (const int index=0) const |
| void | reset (void) |
| void | checkSolutionVector (Vector< Real > &x, Vector< Real > &y, Vector< Real > &u, std::ostream &outStream=std::cout) |
| void | checkSolutionVector (OptimizationProblemCheckData< Real > &data, Vector< Real > &x, Vector< Real > &y, Vector< Real > &u, std::ostream &outStream=std::cout) |
| void | checkObjective (Vector< Real > &x, Vector< Real > &u, Vector< Real > &v, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
| void | checkObjective (OptimizationProblemCheckData< Real > &data, Vector< Real > &x, Vector< Real > &u, Vector< Real > &v, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
| void | checkMultiplierVector (Vector< Real > &w, Vector< Real > &q, Vector< Real > &l, std::ostream &outStream=std::cout) |
| void | checkMultiplierVector (OptimizationProblemCheckData< Real > &data, Vector< Real > &w, Vector< Real > &q, Vector< Real > &l, std::ostream &outStream=std::cout) |
| void | checkConstraint (Vector< Real > &x, Vector< Real > &u, Vector< Real > &v, Vector< Real > &c, Vector< Real > &l, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
| void | checkConstraint (OptimizationProblemCheckData< Real > &data, Vector< Real > &x, Vector< Real > &u, Vector< Real > &v, Vector< Real > &c, Vector< Real > &l, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
| void | check (std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
| void | check (OptimizationProblemCheckData< Real > &data, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
Private Member Functions | |
| void | initialize (const Ptr< Objective< Real > > &obj, const Ptr< Vector< Real > > &x, const Ptr< BoundConstraint< Real > > &bnd, const std::vector< Ptr< Constraint< Real > > > &econ, const std::vector< Ptr< Vector< Real > > > &emul, const std::vector< Ptr< Constraint< Real > > > &icon, const std::vector< Ptr< Vector< Real > > > &imul, const std::vector< Ptr< BoundConstraint< Real > > > &ibnd) |
| const Ptr< Constraint< Real > > | setRiskLessCon (const Ptr< Constraint< Real > > &con, const bool needRiskLess) const |
| const Ptr< Objective< Real > > | setRiskLessObj (const Ptr< Objective< Real > > &obj, const bool needRiskLess) const |
| std::vector< Real > | computeSampleMean (const Ptr< SampleGenerator< Real > > &sampler) const |
| void | initStochastic (void) |
| void | buildRiskVec (Ptr< Vector< Real > > &x) |
| void | buildRiskBnd (Ptr< BoundConstraint< Real > > &bnd) |
Private Attributes | |
| Ptr< Objective< Real > > | INPUT_obj_ |
| Ptr< Vector< Real > > | INPUT_sol_ |
| Ptr< BoundConstraint< Real > > | INPUT_bnd_ |
| std::vector< Ptr< Constraint< Real > > > | INPUT_econ_ |
| std::vector< Ptr< Vector< Real > > > | INPUT_emul_ |
| std::vector< Ptr< Constraint< Real > > > | INPUT_icon_ |
| std::vector< Ptr< Vector< Real > > > | INPUT_imul_ |
| std::vector< Ptr< BoundConstraint< Real > > > | INPUT_ibnd_ |
| Ptr< Objective< Real > > | INTERMEDIATE_obj_ |
| Ptr< Vector< Real > > | INTERMEDIATE_sol_ |
| Ptr< BoundConstraint< Real > > | INTERMEDIATE_bnd_ |
| std::vector< Ptr< Constraint< Real > > > | INTERMEDIATE_econ_ |
| std::vector< Ptr< Vector< Real > > > | INTERMEDIATE_emul_ |
| std::vector< Ptr< Constraint< Real > > > | INTERMEDIATE_icon_ |
| std::vector< Ptr< Vector< Real > > > | INTERMEDIATE_imul_ |
| std::vector< Ptr< BoundConstraint< Real > > > | INTERMEDIATE_ibnd_ |
| Ptr< SampleGenerator< Real > > | vsampler_ |
| Ptr< SampleGenerator< Real > > | gsampler_ |
| Ptr< SampleGenerator< Real > > | hsampler_ |
| std::vector< Ptr< SampleGenerator< Real > > > | exsampler_ |
| std::vector< Ptr< BatchManager< Real > > > | ecbman_ |
| std::vector< Ptr< SampleGenerator< Real > > > | ixsampler_ |
| std::vector< Ptr< BatchManager< Real > > > | icbman_ |
| Ptr< ParameterList > | parlistObj_ |
| std::vector< Ptr< ParameterList > > | parlistCon_ |
| Ptr< Objective< Real > > | obj_ |
| Ptr< Vector< Real > > | sol_ |
| Ptr< BoundConstraint< Real > > | bnd_ |
| Ptr< Constraint< Real > > | con_ |
| Ptr< Vector< Real > > | mul_ |
| Ptr< ConstraintManager< Real > > | conManager_ |
| EProblem | problemType_ |
| bool | isInitialized_ |
| bool | needRiskLessObj_ |
| std::vector< bool > | needRiskLessEcon_ |
| std::vector< bool > | needRiskLessIcon_ |
| bool | isStochastic_ |
Definition at line 54 of file ROL_OptimizationProblem.hpp.
|
inlinevirtual |
Definition at line 259 of file ROL_OptimizationProblem.hpp.
|
inline |
Definition at line 262 of file ROL_OptimizationProblem.hpp.
References isInitialized_, and isStochastic_.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), and OptimizationProblem().
|
inline |
Definition at line 266 of file ROL_OptimizationProblem.hpp.
References INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, isInitialized_, and isStochastic_.
|
inline |
Definition at line 282 of file ROL_OptimizationProblem.hpp.
References INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, isInitialized_, and isStochastic_.
|
inline |
Definition at line 303 of file ROL_OptimizationProblem.hpp.
References INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, isInitialized_, and isStochastic_.
|
inline |
Definition at line 327 of file ROL_OptimizationProblem.hpp.
References INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, isInitialized_, and isStochastic_.
|
inline |
Definition at line 356 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 365 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 374 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 383 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 393 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 400 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 408 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 416 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 425 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 431 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 438 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 445 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 453 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 459 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inlineprivate |
Definition at line 102 of file ROL_OptimizationProblem.hpp.
References bnd_, con_, conManager_, isInitialized_, isStochastic_, mul_, needRiskLessEcon_, needRiskLessIcon_, needRiskLessObj_, obj_, problemType_, setRiskLessCon(), setRiskLessObj(), sol_, ROL::TYPE_B, ROL::TYPE_E, ROL::TYPE_EB, and ROL::TYPE_U.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), and reset().
|
inlineprivate |
Definition at line 180 of file ROL_OptimizationProblem.hpp.
Referenced by initialize().
|
inlineprivate |
Definition at line 189 of file ROL_OptimizationProblem.hpp.
Referenced by initialize().
|
inlineprivate |
Definition at line 198 of file ROL_OptimizationProblem.hpp.
References dim.
Referenced by setMeanValueEquality(), setMeanValueInequality(), and setMeanValueObjective().
|
inlineprivate |
Definition at line 214 of file ROL_OptimizationProblem.hpp.
References ecbman_, exsampler_, icbman_, INPUT_econ_, INPUT_icon_, isStochastic_, ixsampler_, needRiskLessEcon_, needRiskLessIcon_, needRiskLessObj_, parlistCon_, and parlistObj_.
Referenced by setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
inlineprivate |
Definition at line 234 of file ROL_OptimizationProblem.hpp.
References INPUT_icon_, INTERMEDIATE_sol_, parlistCon_, and parlistObj_.
Referenced by setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
inlineprivate |
Definition at line 251 of file ROL_OptimizationProblem.hpp.
References INPUT_bnd_, INTERMEDIATE_bnd_, parlistCon_, and parlistObj_.
Referenced by setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
inlinevirtual |
Definition at line 465 of file ROL_OptimizationProblem.hpp.
References initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and obj_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inlinevirtual |
Definition at line 475 of file ROL_OptimizationProblem.hpp.
References initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and sol_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inlinevirtual |
Definition at line 485 of file ROL_OptimizationProblem.hpp.
References bnd_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inlinevirtual |
Definition at line 492 of file ROL_OptimizationProblem.hpp.
References con_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inlinevirtual |
Definition at line 499 of file ROL_OptimizationProblem.hpp.
References initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and mul_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inline |
Definition at line 506 of file ROL_OptimizationProblem.hpp.
References initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and problemType_.
Referenced by ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inline |
Set objective function to mean value objective.
We assume the objective function is parametrized by an additional variable (other than the optimization variable). This variable could, e.g., be random. The mean value objective function evaluates the the parametrized objective function at the sample average of the auxiliary variable.
| [in] | sampler | is the SampleGenerator defining the distribution of the auxiliary parameter |
Definition at line 526 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), computeSampleMean(), gsampler_, hsampler_, initStochastic(), INPUT_bnd_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_obj_, isInitialized_, and vsampler_.
|
inline |
Set objective function to risk neutral objective.
We assume the objective function is parametrized by an additional variable (other than the optimization variable). This variable could, e.g., be random. The risk neutral objective function evaluates the the average of parametrized objective function.
| [in] | vsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the value |
| [in] | gsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the gradient |
| [in] | hsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the Hessian |
| [in] | storage | whether or not to store the sampled value and gradient |
Definition at line 560 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), gsampler_, hsampler_, initStochastic(), INPUT_bnd_, INPUT_obj_, INPUT_sol_, INTERMEDIATE_obj_, isInitialized_, and vsampler_.
|
inline |
Set objective function to risk averse objective.
We assume the objective function is parametrized by an additional variable (other than the optimization variable). This variable could, e.g., be random. The risk averse objective function evaluates the the ``risk'' of parametrized objective function.
| [in] | parlist | contains the information defining the risk measure |
| [in] | vsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the value |
| [in] | gsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the gradient |
| [in] | hsampler | is the SampleGenerator defining the distribution of the auxiliary parameter for the Hessian */ void setRiskAverseObjective(ParameterList &parlist, const Ptr<SampleGenerator<Real>> &vsampler, const Ptr<SampleGenerator<Real>> &gsampler = nullPtr, const Ptr<SampleGenerator<Real>> &hsampler = nullPtr) { initStochastic(); Set objective function samplers vsampler_ = vsampler; gsampler_ = gsampler; hsampler_ = hsampler; if ( gsampler == nullPtr ) { gsampler_ = vsampler_; } if ( hsampler == nullPtr ) { hsampler_ = gsampler_; } Construct risk-averse/probabilistic objective function if ( vsampler_ == nullPtr ) { throw Exception::NotImplemented(">>> ROL::OptimizationProblem::setRiskAverseObjective: Objective function value sampler is null!"); } else { needRiskLessObj_ = false; parlistObj_ = makePtrFromRef(parlist); INTERMEDIATE_obj_ = makePtr<StochasticObjective<Real>>(INPUT_obj_,parlist,vsampler_,gsampler_,hsampler_); } Set vector and bound constraint buildRiskVec(INPUT_sol_); buildRiskBnd(INPUT_bnd_); |
isInitialized_ = false; }
void setStochasticObjective(ParameterList &parlist, const Ptr<SampleGenerator<Real>> &vsampler, const Ptr<SampleGenerator<Real>> &gsampler = nullPtr, const Ptr<SampleGenerator<Real>> &hsampler = nullPtr) { Determine Stochastic Objective Type std::string type = parlist.sublist("SOL").get("Type","Risk Neutral"); if ( type == "Risk Neutral" ) { bool storage = parlist.sublist("SOL").get("Store Sampled Value and Gradient",true); setRiskNeutralObjective(vsampler,gsampler,hsampler,storage); } else if ( type == "Risk Averse" || type == "Deviation" || type == "Error" || type == "Regret" || type == "Probability" ) { setRiskAverseObjective(parlist,vsampler,gsampler,hsampler); } else if ( type == "Mean Value" ) { setMeanValueObjective(vsampler); } else { throw Exception::NotImplemented(">>> ROL::OptimizationProblem::setStochasticObjective: Invalid stochastic optimization type!"); } Set vector and bound constraint buildRiskVec(INPUT_sol_); buildRiskBnd(INPUT_bnd_);
isInitialized_ = false; }
/* Equality Constraint
Definition at line 665 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), computeSampleMean(), exsampler_, initStochastic(), INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_sol_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, and isInitialized_.
Referenced by setStochasticEquality().
|
inline |
Definition at line 684 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), ecbman_, exsampler_, initStochastic(), INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_sol_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, and isInitialized_.
Referenced by setStochasticEquality().
|
inline |
Definition at line 707 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), exsampler_, initStochastic(), INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_sol_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, and isInitialized_.
Referenced by setStochasticEquality().
|
inline |
Definition at line 734 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), initStochastic(), INPUT_bnd_, INPUT_econ_, INPUT_emul_, INPUT_sol_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, isInitialized_, setAlmostSureEquality(), setMeanValueEquality(), and setRiskNeutralEquality().
Referenced by setStochasticEquality().
|
inline |
Definition at line 770 of file ROL_OptimizationProblem.hpp.
References setStochasticEquality().
|
inline |
Definition at line 780 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), computeSampleMean(), initStochastic(), INPUT_bnd_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_sol_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, isInitialized_, and ixsampler_.
Referenced by setStochasticInequality().
|
inline |
Definition at line 801 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), icbman_, initStochastic(), INPUT_bnd_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_sol_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, isInitialized_, and ixsampler_.
Referenced by setStochasticInequality().
|
inline |
Definition at line 825 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), initStochastic(), INPUT_bnd_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_sol_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, isInitialized_, ixsampler_, needRiskLessIcon_, and parlistCon_.
Referenced by setStochasticInequality().
|
inline |
Definition at line 848 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), initStochastic(), INPUT_bnd_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_sol_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, isInitialized_, and ixsampler_.
Referenced by setStochasticInequality().
|
inline |
Definition at line 876 of file ROL_OptimizationProblem.hpp.
References buildRiskBnd(), buildRiskVec(), initStochastic(), INPUT_bnd_, INPUT_ibnd_, INPUT_icon_, INPUT_imul_, INPUT_sol_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, isInitialized_, setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), and setRiskNeutralInequality().
Referenced by setStochasticInequality().
|
inline |
Definition at line 920 of file ROL_OptimizationProblem.hpp.
References setStochasticInequality().
|
inline |
Returns the statistic from the soluton vector.
| [in] | comp | is the component of the risk vector (0 for objective, 1 for inequality constraint) |
| [in] | index | is the inequality constraint index |
Definition at line 934 of file ROL_OptimizationProblem.hpp.
References computeStatistic(), INTERMEDIATE_icon_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
Referenced by main().
|
inline |
Definition at line 962 of file ROL_OptimizationProblem.hpp.
References INTERMEDIATE_sol_.
|
inline |
Definition at line 980 of file ROL_OptimizationProblem.hpp.
References INTERMEDIATE_sol_.
|
inline |
Definition at line 998 of file ROL_OptimizationProblem.hpp.
References conManager_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
|
inline |
Definition at line 1006 of file ROL_OptimizationProblem.hpp.
References checkSolutionVector().
Referenced by check(), and checkSolutionVector().
|
inline |
Definition at line 1015 of file ROL_OptimizationProblem.hpp.
References ROL::OptimizationProblemCheckData< Real >::checkSolutionVector, ROL::Vector< Real >::checkVector(), initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and obj_.
|
inline |
Definition at line 1031 of file ROL_OptimizationProblem.hpp.
References checkObjective(), and ROL_NUM_CHECKDERIV_STEPS.
Referenced by check(), and checkObjective().
|
inline |
Definition at line 1041 of file ROL_OptimizationProblem.hpp.
References ROL::OptimizationProblemCheckData< Real >::checkGradient, ROL::OptimizationProblemCheckData< Real >::checkHessSym, ROL::OptimizationProblemCheckData< Real >::checkHessVec, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, obj_, and ROL_NUM_CHECKDERIV_STEPS.
|
inline |
Definition at line 1064 of file ROL_OptimizationProblem.hpp.
References checkMultiplierVector().
Referenced by check(), and checkMultiplierVector().
|
inline |
Definition at line 1072 of file ROL_OptimizationProblem.hpp.
References ROL::OptimizationProblemCheckData< Real >::checkMultiplierVector, ROL::Vector< Real >::checkVector(), con_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
|
inline |
Definition at line 1088 of file ROL_OptimizationProblem.hpp.
References checkConstraint(), and ROL_NUM_CHECKDERIV_STEPS.
Referenced by check(), and checkConstraint().
|
inline |
Definition at line 1100 of file ROL_OptimizationProblem.hpp.
References ROL::OptimizationProblemCheckData< Real >::checkAdjointConsistencyJacobian, ROL::OptimizationProblemCheckData< Real >::checkApplyAdjointHessian, ROL::OptimizationProblemCheckData< Real >::checkApplyJacobian, con_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, and ROL_NUM_CHECKDERIV_STEPS.
|
inline |
Definition at line 1126 of file ROL_OptimizationProblem.hpp.
References check(), and ROL_NUM_CHECKDERIV_STEPS.
Referenced by check(), main(), and ROL::SROMGenerator< Real >::SROMGenerator().
|
inline |
Definition at line 1133 of file ROL_OptimizationProblem.hpp.
References checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), con_, initialize(), INTERMEDIATE_bnd_, INTERMEDIATE_econ_, INTERMEDIATE_emul_, INTERMEDIATE_ibnd_, INTERMEDIATE_icon_, INTERMEDIATE_imul_, INTERMEDIATE_obj_, INTERMEDIATE_sol_, mul_, ROL_NUM_CHECKDERIV_STEPS, and sol_.
|
private |
Definition at line 56 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 57 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
private |
Definition at line 58 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
private |
Definition at line 59 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 60 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 61 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskVec(), initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 62 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 63 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 65 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionStatistic(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 66 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskVec(), check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getConstraintStatistic(), getMultiplierVector(), getObjective(), getObjectiveStatistic(), getProblemType(), getSolutionStatistic(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), and reset().
|
private |
Definition at line 67 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), and reset().
|
private |
Definition at line 68 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 69 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 70 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionStatistic(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 71 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 72 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), checkObjective(), checkSolutionVector(), getBoundConstraint(), getConstraint(), getMultiplierVector(), getObjective(), getProblemType(), getSolutionVector(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), reset(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 74 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 75 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 76 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 77 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), setAlmostSureEquality(), setMeanValueEquality(), and setRiskNeutralEquality().
|
private |
Definition at line 78 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), and setRiskNeutralEquality().
|
private |
Definition at line 79 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), and setRiskNeutralInequality().
|
private |
Definition at line 80 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), and setRiskNeutralInequality().
|
private |
Definition at line 82 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), buildRiskVec(), and initStochastic().
|
private |
Definition at line 83 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), buildRiskVec(), initStochastic(), and setRiskAverseInequality().
|
private |
Definition at line 85 of file ROL_OptimizationProblem.hpp.
Referenced by checkObjective(), checkSolutionVector(), getObjective(), and initialize().
|
private |
Definition at line 86 of file ROL_OptimizationProblem.hpp.
Referenced by check(), getSolutionVector(), and initialize().
|
private |
Definition at line 87 of file ROL_OptimizationProblem.hpp.
Referenced by getBoundConstraint(), and initialize().
|
private |
Definition at line 88 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), getConstraint(), and initialize().
|
private |
Definition at line 89 of file ROL_OptimizationProblem.hpp.
Referenced by check(), getMultiplierVector(), and initialize().
|
private |
Definition at line 91 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and reset().
|
private |
Definition at line 93 of file ROL_OptimizationProblem.hpp.
Referenced by getProblemType(), and initialize().
|
private |
Definition at line 95 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setAlmostSureInequality(), setMeanValueEquality(), setMeanValueInequality(), setMeanValueObjective(), setRiskAverseInequality(), setRiskNeutralEquality(), setRiskNeutralInequality(), setRiskNeutralObjective(), setStochasticEquality(), and setStochasticInequality().
|
private |
Definition at line 97 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and initStochastic().
|
private |
Definition at line 98 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and initStochastic().
|
private |
Definition at line 99 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), initStochastic(), and setRiskAverseInequality().
|
private |
Definition at line 100 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), and OptimizationProblem().