Title: | Maximum One-Factor-at-a-Time Designs |
Version: | 1.0 |
Imports: | SLHD, stats |
Description: | Identifying important factors from a large number of potentially important factors of a highly nonlinear and computationally expensive black box model is a difficult problem. Xiao, Joseph, and Ray (2022) <doi:10.1080/00401706.2022.2141897> proposed Maximum One-Factor-at-a-Time (MOFAT) designs for doing this. A MOFAT design can be viewed as an improvement to the random one-factor-at-a-time (OFAT) design proposed by Morris (1991) <doi:10.1080/00401706.1991.10484804>. The improvement is achieved by exploiting the connection between Morris screening designs and Monte Carlo-based Sobol' designs, and optimizing the design using a space-filling criterion. This work is supported by a U.S. National Science Foundation (NSF) grant CMMI-1921646 https://www.nsf.gov/awardsearch/showAward?AWD_ID=1921646. |
License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
Encoding: | UTF-8 |
RoxygenNote: | 7.2.1 |
NeedsCompilation: | no |
Packaged: | 2022-10-27 21:16:53 UTC; rv48 |
Author: | Qian Xiao [aut], V. Roshan Joseph [aut, cre] |
Maintainer: | V. Roshan Joseph <roshan@gatech.edu> |
Repository: | CRAN |
Date/Publication: | 2022-10-29 08:52:56 UTC |
Screening measures
Description
This function can be used for computing screening measures.
Usage
measure(design, y)
Arguments
design |
design matrix, which should have the Sobol' design structure |
y |
response vector |
Details
The measure
function computes the screening measures such as the total Sobol' indices (Sobol' 1993)
and \mu^*
measure of Campolongo et al. (2007). The design matrix should have the Sobol' design structure.
Please see Xiao et al. (2022) for details.
Value
t |
Total Sobol' index |
mustar |
|
Author(s)
Qian Xiao and V. Roshan Joseph
References
Sobol’, I. M. (1993), “On sensitivity estimation for nonlinear mathematical models,” Mathematical Modeling and Computational Experiments, 1, 407–414.
Campolongo, F., Cariboni, J., and Saltelli, A. (2007), “An effective screening design for sensitivity analysis of large models,” Environmental modelling and software, 22, 1509–1518.
Xiao, Q., Joseph, V. R., and Ray, D. M. (2022). “Maximum One-Factor-At-A-Time Designs for Screening in Computer Experiments”. Technometrics, to appear.
Examples
#Friedman function
fun <- function (X)
{
Y <- 10*sin(pi*X[1]*X[2]) + 20*(X[3] - 0.5)^2 + 10*X[4] + 5*X[5]
return(Y)
}
design = mofat(p=10, l=3)
y = apply(design, 1, fun)
#Screening measures
measure(design, y)
MOFAT
Description
This function can be used for generating MOFAT designs.
Usage
mofat(p, l, method = "best")
Arguments
p |
number of factors |
l |
number of base runs |
method |
choose among "uniform", "projection", and "best" |
Details
The mofat
function generates the MOFAT design
for a given number of factors (p\ge 2
) and
number of base runs (l \ge 3
). The total number of runs in the MOFAT design will be l(p+1)
.
A MOFAT design can be viewed as an optimized version of Morris screening design (Morris 1991) by exploiting
its connections with the Monte Carlo-based design of Sobol' (1993).
Please see Xiao et al. (2022) for details.
Three choices for the method
are given: "uniform", "projection", and "best". Option "uniform" gives l
equally-spaced levels
for the entire design, which are also balanced. "projection" option adjusts the levels of the two base matrices A and B such that
there are 2l
or 2l-1
levels in the design depending on l
is even or odd. Option "best" (default) chooses the best
among the first two options using maximin distance criterion.
Value
design |
MOFAT design |
Author(s)
Qian Xiao and V. Roshan Joseph
References
Morris, M. D. (1991), “Factorial sampling plans for preliminary computational experiments,” Technometrics, 33, 161–174.
Sobol’, I. M. (1993), “On sensitivity estimation for nonlinear mathematical models,” Mathematical Modeling and Computational Experiments, 1, 407–414.
Xiao, Q., Joseph, V. R., and Ray, D. M. (2022). “Maximum One-Factor-At-A-Time Designs for Screening in Computer Experiments”. Technometrics, to appear.
Examples
#MOFAT with three base runs
mofat(p=10, l=3, method="uniform")
mofat(p=10, l=3, method="projection")
#MOFAT with five base runs
mofat(p=10,l=5)
dim(mofat(p=125,l=5))