| FANOVA {mlegp} | R Documentation |
Functional Analysis of Variance (FANOVA) Functions for Gaussian Processes
OverallMean(gp, lower = apply(gp$X, 2, min), upper = apply(gp$X, 2, max))
FunctionalVariance(gp, lower = apply(gp$X, 2, min), upper = apply(gp$X, 2, max), mu0 = NULL)
ANOVAMainEffect(gp, effectNum, lower = apply(gp$X, 2, min), upper = apply(gp$X, 2, max))
ANOVAInteractionEffect(gp, effectNums, mu0 = NULL, lower = apply(gp$X, 2, min), upper = apply(gp$X, 2, max),
maxpts = NULL)
gp |
an object of type gp |
lower |
a vector of minimum values for ALL parameters of the gp design matrix |
upper |
a vector of maximum values for ALL parameters of the gp design matrix |
effectNum |
the effect number or name of the desired main effect |
effectNums |
a vector of 2 elements corresponding to the effect numbers or names of the desired interaction effect |
mu0 |
the overall mean, useful for speeding up computations |
maxpts |
the maximum number of function evaluations used in the calculation of each predicted output, see adapt |
Implements the FANOVA decomposition of Schonlau and Welch (2006), for main and two-way factor effects, using a prior distribution of all components that is ~ independent U(a,b), where (a,b) corresponds to the (min,max) value of that
component in the design. For all parameters, (a,b) can be overwritten via the arguments lower and upper.
OverallMean and ANOVAMainEffect use the function integrate for integration; FunctionalVariance and ANOVAInteractionEffect also use the library adapt for multi-dimensional integration.
OverallMean returns the mean value of the Gaussian process predictor
FunctionalVariance returns the overall variance of the Gaussian process predictor
ANOVAMainEffect returns the variation due to the single effect specified by effectNum
ANOVAInteractionEffect returns the variation due to the joint two-way effect specified by effectNms
If R starts to hang, changing the default value of maxpts is needed (though convergence no longer guaranteed)
From adapt:
Setting maxpts to NULL asks the function to keep doubling maxpts
(starting at max(minpts,500, r(ndim))) until the desired
precision is achieved or R runs out of memory...
Garrett M. Dancik gdancik@iastate.edu
Schonlau, M. and Welch, W. 2006. Screening the Input Variables to a Computer Model Via Analysis of Variance and Visualization, in Screening: Methods for Experimentation in Industry, Drug Discovery, and Genetics. A Dean and S. Lewis, eds. (New York: Springer).
http://www.public.iastate.edu/~gdancik/mlegp/
The user does not have to directly call these functions, and instead should use FANOVADecomposition
integrate and package adapt for details on single and multi-dimensional integration
## Not run:
## do not run the following code unless the library adapt is loaded ##
## fit the Gaussian process ##
x1 = kronecker(seq(0,1,by=.25), rep(1,5))
x2 = rep(seq(0,1,by=.25),5)
z = 4 * x1 - 2*x2 + x1 * x2 + rnorm(length(x1))
fit = mlegp(cbind(x1,x2), z, param.names = c("x1", "x2"))
## calculate the proportion of total variance accounted for by x1 ##
ANOVAMainEffect(fit, "x1") / FunctionalVariance(fit) * 100
## check this against 'FANOVADecomposition' ##
FANOVADecomposition(fit)
## End(Not run)