emmacheck: Checking the need for additional experiments

Description Usage Arguments Details Value Author(s) References Examples

View source: R/emmacheck.R

Description

The function evaluates if one additional experimental point is required. If this is the case, the function provides with details about the additional experiment to be performed.

Usage

1
emmacheck(x, graph, fn1 = NULL, fn2 = NULL, fn3 = NULL, fn4 = NULL, nresp)

Arguments

x

An object of class emmatn.

graph

Logical; if "yes", a plot of the MARS model is produced. Note that a plot is produced only if the model contains more than one explanatory variable.

fn1

The first function to be optimised. Use fn1 = NULL if the function is unknown (e.g. when designing experiments in applied problems).

fn2

The second function to be optimised. Use fn2 = NULL if the function is unknown (e.g. when designing experiments in applied problems).

fn3

The third function to be optimised. Use fn3 = NULL if the function is unknown (e.g. when designing experiments in applied problems).

fn4

The fourth function to be optimised. Use fn4 = NULL if the function is unknown (e.g. when designing experiments in applied problems).

nresp

The response to be plotted. Use nresp = 1 to plot the first response...

Details

Once the experiments identified by emma are implemented, the observed response values, the predicted response values, the target and the scalar distances from the target are updated. The solution with the response values closest to the target is thus identified. If such a solution has not been tested yet, emmacheck selects it as an additional experimental point that needs to be investigated.

Value

An object of class emmatn with the components listed below:

xpop

Experimental points investigated.

ypop

Response values observed at the experimental points investigated.

xspace

Experimental region. It is given by all the possible combinations of the factors' levels and contains xpop. The rownames uniquely identify the experimental points and are reported also in xpop.

yspace

Response values that have been either observed or predicted. Observed response values are stored also in ypop. Predicted response values are obtained using a MARS model fitted to the available data.

opt

Indicates if each single function is either minimized ('mn') or maximized ('mx').

nd

Number of experimental points selected initially (t=0).

na

Number of experimental points selected in subsequent iterations (t>0).

Gb

ID of the best experimental point investigated. Use xspace[Gb,] to visualise the best experimental point and use yspace[Gb,] to visualise the measured response value(s). Gb identifies the experimental point whose response values are closest to the target. The target is a set of desirable response values which are automatically selected on the basis of the measured and predicted response values.

add

Logical. If '0' indicates that an additional experimental point needs to be investigated; if '1' indicates that an additional experimental point is not required.

test

IDs of the tested experimental points.

time

Current time instant of the EMMA procedure.

weight

Importance of each response. If only one response is investigated, then weight = 1; if multiple responses are investigated, the sum of the values in weight must be 1.

Author(s)

Laura Villanova, Kate Smith-Miles and Rob J Hyndman

References

Villanova L., Falcaro P., Carta D., Poli I., Hyndman R., Smith-Miles K. (2010) 'Functionalization of Microarray Devices: Process Optimization Using a Multiobjective PSO and Multiresponse MARS Modelling', IEEE CEC 2010, DOI: 10.1109/CEC.2010.5586165

Carta D., Villanova L., Costacurta S., Patelli A., Poli I., Vezzu' S., Scopece P., Lisi F., Smith-Miles K., Hyndman R. J., Hill A. J., Falcaro P. (2011) 'Method for Optimizing Coating Properties Based on an Evolutionary Algorithm Approach', Analytical Chemistry 83 (16), 6373-6380.

Friedman J. H. (1991) 'Multivariate adaptive regression splines' (with discussion), The Annals of Statistics 19, 1:141.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
## define the problem variables
in.name <- c("x1", "x2")
nlev <- c(20, 20)
lower <- c(-2.048, -2.048)
upper <- c(2.048, 2.048)
out.name <- "y"
weight <- 1
C <- 10
pr.mut <- c(0.1, 0.07, 0.04, rep(0.01, C-3))

## Not run: 
#######################################################
## simulated problem (with known objective function) ##
#######################################################
##   identify the initial set of experimental runs (initialization)
tn <- emmat0(in.name, nlev, lower, upper, out.name, nd = 10, fn1 = ackley)

##   identify the experimental runs during subsequent steps of the 
##	EMMA procedure
for(t in 1:(C - 1))
{
  tn <- emmatn(t, tn, na = 5, opt = "mn", weight, pr.mut = pr.mut, 
	graph = "yes", fn1 = ackley)
  tn <- emmacheck(tn, graph = "no", fn1 = ackley)
}

## End(Not run)

###########################################################
## applicative problem (with unknown objective function) ##
###########################################################
##   identify the initial set of experimental runs (initialization)
tn <- emmat0(in.name, nlev, lower, upper, out.name, nd = 10)

## perform the experiments in \code{tn$xpop} and measure the response 
##	values, then load the measured response values in \code{tn$ypop}
tn$ypop <- ackley(tn$xpop)

##   identify the experimental runs during subsequent steps of the 
##	EMMA procedure
for(t in 1:(C-1))
{
  tn <- emmatn(t, tn, na = 5, opt = "mn", weight, pr.mut = pr.mut, 
	graph = "no")
  tn$ypop <- ackley(tn$xpop)
  tn <- emmacheck(tn, graph = "no")
  if(tn$add==1) tn$ypop <- ackley(tn$xpop)
}

emma documentation built on May 2, 2019, 2:47 p.m.