![]() |
Dakota
Version 6.19
Explore and Predict with Confidence
|
ROL objective function for the Gaussian Process (GP) surrogate. More...
Inherits Objective< double >.
Public Member Functions | |
| GP_Objective (GaussianProcess &gp_model) | |
| Constructor for GP_Objective. More... | |
| double | value (const ROL::Vector< double > &p, double &tol) |
| Get the value of the objective function at a point. More... | |
| void | gradient (ROL::Vector< double > &g, const ROL::Vector< double > &p, double &tol) |
| Get the gradient of the objective function at a point. More... | |
Private Member Functions | |
| bool | pdiff (const std::vector< double > &pnew) |
| Compute the l2 norm of the difference between new and old parameter vectors. More... | |
| ROL::Ptr< const std::vector< double > > | getVector (const ROL::Vector< double > &vec) |
| Convert a const ROL Vector to a ROL::Ptr<const std::vector> More... | |
| ROL::Ptr< std::vector< double > > | getVector (ROL::Vector< double > &vec) |
| Convert a ROL Vector to a ROL::Ptr<std::vector> More... | |
Private Attributes | |
| GaussianProcess & | gp |
| Pointer to the GaussianProcess surrogate. | |
| int | nopt |
| Number of optimization variables. | |
| double | Jold |
| Previously computed value of the objective function. | |
| VectorXd | grad_old |
| Previously computed gradient of the objective function. | |
| VectorXd | pold |
| Previous value of the parameter vector. | |
ROL objective function for the Gaussian Process (GP) surrogate.
| GP_Objective | ( | GaussianProcess & | gp_model | ) |
Constructor for GP_Objective.
| [in] | gp_model | Reference to the GaussianProcess surrogate. |
References GaussianProcess::get_num_opt_variables(), GP_Objective::gp, GP_Objective::grad_old, GP_Objective::Jold, GP_Objective::nopt, and GP_Objective::pold.
| double value | ( | const ROL::Vector< double > & | p, |
| double & | tol | ||
| ) |
Get the value of the objective function at a point.
| [in] | p | ROL vector of parameters. |
| [in] | tol | Tolerance for inexact evaluation (not used here). |
References GP_Objective::getVector(), GP_Objective::gp, GaussianProcess::negative_marginal_log_likelihood(), GP_Objective::nopt, GP_Objective::pdiff(), GaussianProcess::set_opt_params(), and dakota::silence_unused_args().
| void gradient | ( | ROL::Vector< double > & | g, |
| const ROL::Vector< double > & | p, | ||
| double & | tol | ||
| ) |
Get the gradient of the objective function at a point.
| [out] | g | Gradient of the objective function. |
| [in] | p | ROL vector of parameters. |
| [in] | tol | Tolerance for inexact evaluation (not used here). |
References GP_Objective::getVector(), GP_Objective::gp, GaussianProcess::negative_marginal_log_likelihood(), GP_Objective::nopt, GP_Objective::pdiff(), GaussianProcess::set_opt_params(), and dakota::silence_unused_args().
|
private |
Compute the l2 norm of the difference between new and old parameter vectors.
| [in] | pnew | New value of the parameter vector. |
References dakota::near_zero, GP_Objective::nopt, and GP_Objective::pold.
Referenced by GP_Objective::gradient(), and GP_Objective::value().
|
inlineprivate |
Convert a const ROL Vector to a ROL::Ptr<const std::vector>
| [in] | vec | const ROL vector |
Referenced by GP_Objective::getVector(), GP_Objective::gradient(), and GP_Objective::value().
|
inlineprivate |
Convert a ROL Vector to a ROL::Ptr<std::vector>
| [in] | vec | ROL vector |
References GP_Objective::getVector().