mymaximin {AHM}R Documentation

The mymaximin function generates the matrix of maximin design points. It uses the simplex centroid design as the base design, then in a stochastics way sample the candidate design points generated by the function partition.

Description

This method is modified based on Prof. Bobby Gramacy's Computer Experiment lecture at Virginia Tech. Prof. Gramacy's lecture website

Usage

mymaximin(pool, n = 50, m = 3, iter = 1e+05, Xorig = NULL)

Arguments

pool

partition the base design points provided to the function

n

numeric, sample size

m

numeric, 3 stands for 3 components, i.e. c1, c2, and c3

iter

numeric, iterations used in the stochastic sampling

Xorig

matrix, initial design points

Value

Return a matrixt of the design points for the major components

Examples


# The case of unconstrainted experiments
library(mixexp)
num_size = 8 # num points in the design for the major component
Xorig = as.matrix(SCD(3))
# all possible combinations sum to 1
pool_3d =partitions::compositions(1000, 3,include.zero = TRUE)/1000
res_C = mymaximin(pool=pool_3d, n=num_size, m=3, iter=1e5, Xorig=Xorig)
DesignPoints(res_C,cornerlabs = c("c3","c2","c1"),axislabs=c("c1","c2","c3"))

# The case of constrainted experiments
library(mixexp)
num_size = 8 # num points in the design for the major component
# all possible combinations sum to 1
pool_3d =partitions::compositions(1000, 3,include.zero = TRUE)/1000
c1_min=0.2
c1_max=0.45
c2_min=0.4
c2_max=0.6
c3_min=0.1
c3_max=0.25
tmp = Xvert(nfac=3,lc=c(c1_min,c2_min,c3_min),uc =c(c1_max,c2_max,c3_max),ndm=1,pseudo=FALSE)
Xorig=tmp[c(1:6,13),c(1:3)]
colnames(Xorig)=c("V1","V2","V3")
pool_3d = t(dplyr::filter(as.data.frame(t(as.matrix(pool_3d))),t(pool_3d)[,1] > c1_min &
                     t(pool_3d)[,1] <= c1_max &
                     t(pool_3d)[,2] > c2_min &
                     t(pool_3d)[,2] <= c2_max &
                     t(pool_3d)[,3] > c3_min &
                     t(pool_3d)[,3] <= c3_max
)
)
res_C = mymaximin(pool=pool_3d, n=num_size, m=3, iter=1e5, Xorig=Xorig)
DesignPoints(res_C,cornerlabs = c("c3","c2","c1"),axislabs=c("c1","c2","c3")
                     ,x1lower=c1_min,x2lower=c2_min,x3lower=c3_min
                     ,x1upper=c1_max,x2upper=c2_max,x3upper=c3_max, pseudo=FALSE)


[Package AHM version 1.0.1 Index]