Inheritance diagram for GaussProcApproximation:

Public Member Functions | |
| GaussProcApproximation () | |
| default constructor | |
| GaussProcApproximation (const ProblemDescDB &problem_db, const size_t &num_acv) | |
| standard constructor | |
| ~GaussProcApproximation () | |
| destructor | |
Protected Member Functions | |
| int | min_coefficients () const |
| build the derived class approximation type in numVars dimensions | |
| int | num_constraints () const |
| return the number of constraints to be enforced via anchorPoint | |
| void | find_coefficients () |
| find the covariance parameters governing the Gaussian process response | |
| const Real & | get_value (const RealVector &x) |
| retrieve the function value for a given parameter set x | |
| const Real & | get_variance (const RealVector &x) |
| retrieve the variance of the predicted value for a given parameter set x | |
| const RealBaseVector & | get_gradient (const RealVector &x) |
| for a given parameter set x | |
Private Member Functions | |
| void | GPmodel_build () |
| Function to compute hyperparameters governing the GP. | |
| void | GPmodel_apply (const RealVector &new_x, bool variance_flag, bool gradients_flag) |
| Function returns a response value using the GP surface. | |
| void | normalize_training_data () |
| Normalizes the initial inputs upon which the GP surface is based. | |
| void | get_trend () |
| linear, if order = 2, trend is quadratic. | |
| void | get_beta_coefficients () |
| Gets the beta coefficients for the calculation of the mean of the GP. | |
| int | get_cholesky_factor () |
| error checking | |
| void | get_process_variance () |
| the correlation lengthscales | |
| void | get_cov_matrix () |
| calculates the covariance matrix for a given set of input points | |
| void | get_cov_vector () |
| set of inputs upon which the GP is based | |
| void | optimize_theta_global () |
| parameters using NCSUDirect | |
| void | optimize_theta_multipoint () |
| parameters using a gradient-based solver and multiple staring points | |
| void | predict (bool variance_flag, bool gradients_flag) |
| Calculates the predicted new response value for x in normalized space. | |
| Real | calc_nll () |
| matrix) | |
| void | calc_grad_nll () |
| to the correlation lengthscales, theta | |
| void | get_grad_cov_vector () |
| to each componeent of x. | |
| void | run_point_selection () |
| estimate the necessary parameters | |
| void | initialize_point_selection () |
| initial subset of the training points | |
| void | pointsel_get_errors (RealVector &) |
| training points and find the errors | |
| int | addpoint (int, IntVector &) |
| Adds a point to the effective training set. Returns 1 on success. | |
| int | pointsel_add_sel (RealVector &) |
| them | |
| Real | maxval (RealVector &) |
| Return the maximum value of the elements in a vector. | |
| void | pointsel_write_points () |
| Writes out the training set before and after point selection. | |
| void | lhood_2d_grid_eval () |
| likelihood on a grid | |
| void | writex (char[]) |
| specified file | |
| void | writeCovMat (char[]) |
| Writes out the covariance matrix to a specified file. | |
Static Private Member Functions | |
| static void | negloglik (int mode, int n, const NEWMAT::ColumnVector &X, NEWMAT::Real &fx, NEWMAT::ColumnVector &grad_x, int &result_mode) |
| by minimizing the negative log likelihood | |
| static void | constraint_eval (int mode, int n, const NEWMAT::ColumnVector &X, NEWMAT::ColumnVector &g, NEWMAT::Matrix &gradC, int &result_mode) |
| this function is empty: it is an unconstrained optimization. | |
| static double | negloglikNCSU (const RealVector &x) |
| function used by NCSUOptimizer to optimize negloglik objective | |
Private Attributes | |
| RealDenseMatrix | trainPoints |
| used to create the Gaussian process | |
| RealDenseMatrix | trainValues |
| An array of response values; one response value per sample site. | |
| RealDenseVector | trainMeans |
| The mean of the input columns of trainPoints. | |
| RealDenseVector | trainStdvs |
| The standard deviation of the input columns of trainPoints. | |
| RealDenseMatrix | normTrainPoints |
| Current working set of normalized points upon which the GP is based. | |
| RealDenseMatrix | trendFunction |
| matrix to hold the trend function | |
| RealDenseMatrix | betaCoeffs |
| matrix to hold the beta coefficients for the trend function | |
| RealSymDenseMatrix | covMatrix |
| between points Xi and Xj in the initial set of samples | |
| RealDenseMatrix | covVector |
| between a new point X and point Xj from the initial set of samples | |
| RealDenseMatrix | approxPoint |
| single point, but it could be generalized to be a vector of points. | |
| RealDenseMatrix | gradNegLogLikTheta |
| with respect to the theta correlation terms | |
| RealSpdDenseSolver | covSlvr |
| the covariance matrix | |
| RealDenseMatrix | gradCovVector |
| with respect to a particular componenet of X | |
| RealDenseMatrix | normTrainPointsAll |
| Set of all original samples available. | |
| RealDenseMatrix | trainValuesAll |
| All original samples available. | |
| RealDenseMatrix | trendFunctionAll |
| Trend function values corresponding to all original samples. | |
| size_t | numObs |
| The number of observations on which the GP surface is built. | |
| size_t | numObsAll |
| The original number of observations. | |
| short | trendOrder |
| linear, if order = 2, trend is quadratic. | |
| RealVector | thetaParams |
| same point. sige is the underlying process error. | |
| Real | procVar |
| The process variance, the multiplier of the correlation matrix. | |
| RealVector | pointsAddedIndex |
| all points which have been added | |
| int | cholFlag |
| A global indicator for success of the Cholesky factorization. | |
| bool | usePointSelection |
| a flag to indicate the use of point selection | |
Static Private Attributes | |
| static GaussProcApproximation * | GPinstance |
| pointer to the active object instance used within the static evaluator | |
The GaussProcApproximation class provides a global approximation (surrogate) based on a Gaussian process. The Gaussian process is built after normalizing the function values, with zero mean. Opt++ is used to determine the optimal values of the covariance parameters, those which minimize the negative log likelihood function.
| void GPmodel_apply | ( | const RealVector & | new_x, | |
| bool | variance_flag, | |||
| bool | gradients_flag | |||
| ) | [private] |
Function returns a response value using the GP surface.
The response value is computed at the design point specified by the RealVector function argument.
1.5.1