|
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 88 of file ROL_OptimizationProblem.hpp.
|
inlinevirtual |
Definition at line 293 of file ROL_OptimizationProblem.hpp.
|
inline |
Definition at line 296 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 300 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 316 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 337 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 361 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 390 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 399 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 408 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 417 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 427 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 434 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 442 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 450 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 459 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 465 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 472 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 479 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 487 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inline |
Definition at line 493 of file ROL_OptimizationProblem.hpp.
References OptimizationProblem().
|
inlineprivate |
Definition at line 136 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 214 of file ROL_OptimizationProblem.hpp.
Referenced by initialize().
|
inlineprivate |
Definition at line 223 of file ROL_OptimizationProblem.hpp.
Referenced by initialize().
|
inlineprivate |
Definition at line 232 of file ROL_OptimizationProblem.hpp.
References dim.
Referenced by setMeanValueEquality(), setMeanValueInequality(), and setMeanValueObjective().
|
inlineprivate |
Definition at line 248 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 268 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 285 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 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 obj_.
Referenced by main(), and ROL::OptimizationSolver< Real >::OptimizationSolver().
|
inlinevirtual |
Definition at line 509 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 519 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 526 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 533 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 540 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 560 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 594 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 699 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 718 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 741 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 768 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 804 of file ROL_OptimizationProblem.hpp.
References setStochasticEquality().
|
inline |
Definition at line 814 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 835 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 859 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 882 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 910 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 954 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 968 of file ROL_OptimizationProblem.hpp.
References computeStatistic(), INTERMEDIATE_icon_, INTERMEDIATE_obj_, and INTERMEDIATE_sol_.
Referenced by main().
|
inline |
Definition at line 996 of file ROL_OptimizationProblem.hpp.
References INTERMEDIATE_sol_.
|
inline |
Definition at line 1014 of file ROL_OptimizationProblem.hpp.
References INTERMEDIATE_sol_.
|
inline |
Definition at line 1032 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 1040 of file ROL_OptimizationProblem.hpp.
References checkSolutionVector().
Referenced by check(), and checkSolutionVector().
|
inline |
Definition at line 1049 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 1065 of file ROL_OptimizationProblem.hpp.
References checkObjective(), and ROL_NUM_CHECKDERIV_STEPS.
Referenced by check(), and checkObjective().
|
inline |
Definition at line 1075 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 1098 of file ROL_OptimizationProblem.hpp.
References checkMultiplierVector().
Referenced by check(), and checkMultiplierVector().
|
inline |
Definition at line 1106 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 1122 of file ROL_OptimizationProblem.hpp.
References checkConstraint(), and ROL_NUM_CHECKDERIV_STEPS.
Referenced by check(), and checkConstraint().
|
inline |
Definition at line 1134 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 1160 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 1167 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 90 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 91 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 92 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 93 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 94 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureEquality(), setMeanValueEquality(), setRiskNeutralEquality(), and setStochasticEquality().
|
private |
Definition at line 95 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskVec(), initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 96 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 97 of file ROL_OptimizationProblem.hpp.
Referenced by OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), setRiskNeutralInequality(), and setStochasticInequality().
|
private |
Definition at line 99 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 100 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 101 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 102 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 103 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 104 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 105 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 106 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 108 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 109 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 110 of file ROL_OptimizationProblem.hpp.
Referenced by setMeanValueObjective(), and setRiskNeutralObjective().
|
private |
Definition at line 111 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), setAlmostSureEquality(), setMeanValueEquality(), and setRiskNeutralEquality().
|
private |
Definition at line 112 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), and setRiskNeutralEquality().
|
private |
Definition at line 113 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), setAlmostSureInequality(), setMeanValueInequality(), setRiskAverseInequality(), and setRiskNeutralInequality().
|
private |
Definition at line 114 of file ROL_OptimizationProblem.hpp.
Referenced by initStochastic(), and setRiskNeutralInequality().
|
private |
Definition at line 116 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), buildRiskVec(), and initStochastic().
|
private |
Definition at line 117 of file ROL_OptimizationProblem.hpp.
Referenced by buildRiskBnd(), buildRiskVec(), initStochastic(), and setRiskAverseInequality().
|
private |
Definition at line 119 of file ROL_OptimizationProblem.hpp.
Referenced by checkObjective(), checkSolutionVector(), getObjective(), and initialize().
|
private |
Definition at line 120 of file ROL_OptimizationProblem.hpp.
Referenced by check(), getSolutionVector(), and initialize().
|
private |
Definition at line 121 of file ROL_OptimizationProblem.hpp.
Referenced by getBoundConstraint(), and initialize().
|
private |
Definition at line 122 of file ROL_OptimizationProblem.hpp.
Referenced by check(), checkConstraint(), checkMultiplierVector(), getConstraint(), and initialize().
|
private |
Definition at line 123 of file ROL_OptimizationProblem.hpp.
Referenced by check(), getMultiplierVector(), and initialize().
|
private |
Definition at line 125 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and reset().
|
private |
Definition at line 127 of file ROL_OptimizationProblem.hpp.
Referenced by getProblemType(), and initialize().
|
private |
Definition at line 129 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 131 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and initStochastic().
|
private |
Definition at line 132 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), and initStochastic().
|
private |
Definition at line 133 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), initStochastic(), and setRiskAverseInequality().
|
private |
Definition at line 134 of file ROL_OptimizationProblem.hpp.
Referenced by initialize(), initStochastic(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), OptimizationProblem(), and OptimizationProblem().