Learn R Programming

fanovaGraph (version 1.3.1)

estimateGraph: FANOVA graph estimation.

Description

Estimates the structure of the FANOVA graph by estimating the total interaction indices for the graph edges (a particular case of superset importance introduced by Liu and Owen, 2006), the main effect indices for the graph vertices and the overall variance for normalizing the indices (both by function fast99 from package sensitivity) and finding the clique structure of the estimated graph.

Usage

estimateGraph(f.mat, d, q = NULL, q.arg = NULL, N = NULL, method = "FixLO", nLO = NULL, nMC = NULL, nfast99 = 500, L = NULL, M = 6, Nsobol = NULL, confInt = TRUE, ...)

Arguments

f.mat
vectorized function for which the FANOVA graph shall be estimated
d
integer, number of input factors (vertices)
q
a vector of character strings of quantile functions corresponding to the factors distributions, it can be a single character string meaning same distribution for all, if not specified "qunif" is taken
q.arg
a list of lists of quantile functions parameters of the distributions in q, it can be a single list meaning same parameters for all, if not specified the default values of the respective distributions are taken
N
optional integer, total number of function evaluations, instead of N method related parameters (nLO, nMC, L or Nsobol) can be provided
method
character string specifying the estimation method of the total interaction indices, to be chosen between "FixLO", "FixFast", "RBD" and "Sobol", defaults to "FixLO", see references for further details
nLO
optional integer, only if method="FixLO", number of Monte Carlo simulations in fixing method of Liu and Owen
nMC
optional integer, only if method="FixFast", number of Monte Carlo simulations for the expectation in fixing method using FAST
nfast99
optional integer, only if method="fixed", number of design points for FAST algorithm, defaults to 500
L
optional integer, only if method="RBD", parameter L in RBD-FAST method
M
optional integer, only if method="RBD", parameter M in RBD-FAST method
Nsobol
optional integer, only if method="Sobol", number of Monte Carlo simulations in Sobol method
confInt
optional boolean, if TRUE, standard error and 95% confidence intervals of the indices are computed additionally for method="FixLO", defaults to TRUE
...
additional arguments to be passed to the function f.mat

Value

  • a list containing a graph structure that includes
  • dnumber of input factors
  • tiimatrix containing the unscaled total interaction indices and if confInt = TRUE their standard error and lower and upper confidence limits
  • i1matrix containing the unscaled main effect indices
  • Voverall variance
  • tii.scaledmatrix containing the scaled total interaction indices
  • cliqueslist of cliques

References

Fruth, J.; Roustant, O.; Kuhnt, S. (2012+) Total interaction index: A variance-based sensitivity index for interaction screening. Janon, A.; Klein, T.; Lagnoux-Renaudie, A.; Nodet, M.; Prieur, C. (2012+) Asymptotic normality and efficiency of two Sobol index estimators. Liu, R.; Owen, A.B. (2006) Estimating mean dimensionality of analysis of variance decompositions, Journal of the American Statistical Association, 101 474, 712-721. Mara, T.A (2009) Extension of the RBD-FAST method to the computation of global sensitivity indices, Reliability Engineering & System Safety, 94 no. 8, 1274-1281. Muehlenstaedt, T.; Roustant, O.; Carraro, L.; Kuhnt, S. (2011) Data-driven Kriging models based on FANOVA-decomposition, Statistics and Computing. Sobol', I. M. (1993) Sensitivity estimates for nonlinear mathematical models, Mathematical Modeling and Computational Experiment, 1, 407-414.

Examples

Run this code
# Ishigami function, true analytical values: D12 = D23 = 0, D13 =~ 3.374

estimateGraph(f.mat=ishigami.fun, d=3, q.arg=list(min=-pi,max=pi), N=10000, method="FixLO")
estimateGraph(f.mat=ishigami.fun, d=3, q.arg=list(min=-pi,max=pi), N=10000, method="FixFast")
estimateGraph(f.mat=ishigami.fun, d=3, q.arg=list(min=-pi,max=pi), N=10000, method="RBD")
estimateGraph(f.mat=ishigami.fun, d=3, q.arg=list(min=-pi,max=pi), N=10000, method="Sobol")

Run the code above in your browser using DataLab