EEzGP_fit {EzGP}R Documentation

The Fitting Function of EEzGP Model

Description

Fits an Efficient Easy-to-Interpret Gaussian process (EEzGP) model to a dataset as described in reference 1. The input variables are mixed (with both quantitative and qualitative inputs). The output variable is quantitative and scalar.

Usage

EEzGP_fit(
  X,
  Y,
  p,
  q,
  m,
  tau = 0,
  lb = "T",
  ub = "T",
  x0 = "T",
  xtol_rel = 1e-05,
  maxeval = 100,
  algorithm = "NLOPT_LD_LBFGS"
)

Arguments

X

Matrix or data frame containing the inputs of training data. Each row represents the input setting of a data point and the columns are values of quantitative variables and qualitative variables.

Y

Vector containing the outputs of training data points.

p

Number of quantitative factors in the given dataset X.

q

Number of qualitative factors in the given dataset X.

m

A vector containing numbers of levels in qualitative factors.

tau

Nugget if needed. The default nugget is 0, otherwise it has to be a non-negative real value.

lb

Vector with lower bounds of the parameter estimation. "T" for applying the default setting of lb (a vector of length number of parameters whose elements are all 0.1), otherwise one must provide a vector with the length being the number of parameters.

ub

Vector with upper bounds of the parameter estimation. "T" for applying the default setting of ub (a vector of length number of parameters whose first q+1 elements are 100 and the rest number of parameters - q - 1 elements are 10), otherwise one must provide a vector with length of the number of parameters.

x0

Vector with starting values for the optimization. "T" for applying the default setting of x0 (a vector made by (lb + ub)/2), otherwise one must provide a vector with the length being the number of parameters.

xtol_rel

Stopping criterion for relative change reached.

maxeval

Termination condition by specifying a maximum number of function.

algorithm

Optimization algorithm. See NLopt Algorithms for more availiable algorithms.

Value

A model of class "EzGP model" list of the following items:

References

  1. "EzGP: Easy-to-Interpret Gaussian Process Models for Computer Experiments with Both Quantitative and Qualitative Factors", Qian Xiao, Abhyuday Mandal, C. Devon Lin, and Xinwei Deng (doi:10.1137/19M1288462)

See Also

EEzGP_predict to use the fitted EEzGP model for prediction.

Examples

# Example with 3 quantitative and 3 qualitative variables (dataset included in the package):
#     Fit an EEzGP model (with default settings), and then perform the prediction.
p = 3
q = 3
m=c(3,3,3)
tau = 0
X = EzGP_data[1:25, 1:(p+q)]
Y = EzGP_data[1:25, p+q+1]
X_new = EzGP_data[26:30, 1:(p+q)]
# EEzGP Model and Prediction
model <- EEzGP_fit(X, Y, p, q, m)
pred <- EEzGP_predict(X_new, model, MSE_on = 1)
result <- LLF_gradients(X, Y, p, q, m, model$param, tau = 0, models = 1)
# Results showing
model
pred
result

[Package EzGP version 0.1.0 Index]