Description Usage Arguments Details Value Author(s) References Examples
Given the set of experimental points investigated in previous steps of the EMMA procedure and their
measured response values, emmatn
returns a new set of experimental points to be
investigated (and thus new experiments to be performed).
1 2 |
t |
A numeric value indicating the current time instant of the EMMA procedure. |
x |
An object of class |
na |
A numeric value indicating the number of experimental points to be selected when |
opt |
A character vector of the same length as the number of responses, indicating for each response function, if the response must be minimized ('mn') or maximized ('mx'). |
weight |
A numerical vector of the same length as the number of responses, reflecting the relevance of each response.
Use |
C |
A numeric value indicating the maximum number of iterations. The default is |
w1 |
The first numeric value used to calculate the inertia weight parameter of the time variant PSO algorithm.
The default is |
w2 |
The second numeric value used to calculate the inertia weight parameter of the time variant PSO algorithm.
The default is |
c1i |
The first numeric value used to calculate the acceleration coefficient |
c1f |
The second numeric value used to calculate the acceleration coefficient |
c2i |
The first numeric value used to calculate the acceleration coefficient |
c2f |
The second numeric value used to calculate the acceleration coefficient |
b |
A numeric value, used in the mutation operator, that determines the degree of dependence of the mutation
on the iteration number. The default is |
pr.mut |
A numeric vector of the same length as the number of iterations |
graph |
Logical; if 'yes', a plot of the MARS model is produced. A plot is produced only if the model contains more than one explanatory variable. |
fn1 |
The first function to be optimised; use |
fn2 |
The first function to be optimised; use |
fn3 |
The third function to be optimised; use |
fn4 |
The fourth function to be optimised; use |
nresp |
The response to be plotted. Use |
The parameters w1
and w2
are used to calculate the inertia weight w
of the PSO algorithm,
namely the parameter that controls the influence of the previous particle velocity on the present velocity.
High values of w
favour a global search, whereas lower values of w
encourage a local search.
In EMMA the inertia weight is allowed to decrease linearly with iteration from w1
to w2
thus
favouring the exploration initially and the exploitation subsequently. The parameters c1i
and c1f
are used to calculate the cognitive acceleration coefficient c1
of the PSO algorithm, whereas the
parameters c2i
and c2f
are used to calculate the social acceleration coefficient c2
of
the PSO algorithm.Higher values of c1
ensure larger deviation of the particle in the search space
(exploration), while higher values of c2
signify the convergence to the current global best (exploitation).
In EMMA c1
is allowed to decrease from c1i
to c1f
and c2
is allowed to increase from
c2i
to c2f
. See Tripathi et al. (2007) for more details.
An object of class emma
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 |
yspace |
Response values that have been either observed or predicted. Observed response values
are stored also in |
opt |
Indicates if each single function is either minimized ('mn') or maximized ('mx'). |
nd |
Number of experimental points selected initially ( |
na |
Number of experimental points selected in subsequent iterations ( |
tested |
IDs of the tested experimental points. |
time |
Current time instant of the EMMA procedure. |
weight |
Relative importance of each response. If only one response is investigated, then
|
Gb |
ID of the best experimental point investigated (global best). |
Pb |
ID of the best experimental point investigated by each particle (personal best). Use
|
Gb.arch |
Archive of the global bests identified. Because the global best changes as new experimental points are investigated, an archive is maintained. |
Pb.arch |
Archive of the personal bests identified. Because the personal bests change as new experimental points are investigated, an archive is maintained. |
v |
Velocities used to update the particles position. The position of a particle is uniquely determined by the predictors' values; it also defines the experiment to be performed. At each step of EMMA, the position of a particle is updated by adding a numerical value (velocity) to the current value of each single predictor. |
sam.x |
IDs of the experiments that have been selected in the current iteration of the procedure.
Use |
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. |
Laura Villanova, Kate Smith-Miles and Rob J Hyndman
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.
Tripathi P. K., Bandyopadhyay S., Pal S. K. (2007) 'Multi-objective particle swarm optimization with time variant inertia and acceleration coefficients' Information Sciences, 177, 5033:5049.
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | ## Not run:
#########################
## 1 response variable ##
#########################
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))
## simulated problem (with known objective function)
tn <- emmat0(in.name, nlev, lower, upper, out.name, nd = 10, fn1 = ackley)
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)
}
## applicative problem (with unknown objective function)
tn <- emmat0(in.name, nlev, lower, upper, out.name, nd = 10)
## use the measured response values to manually fill 'tn$ypop'
tn$ypop<-ackley(tn$xpop)
for(t in 1:(C-1))
{
tn <- emmatn(t, tn, na = 5, opt = "mn", weight, pr.mut = pr.mut,
graph = "yes")
tn$ypop <- ackley(tn$xpop)
tn <- emmacheck(tn, graph = "no")
if(tn$add == 1) tn$ypop<-ackley(tn$xpop)
}
## End(Not run)
##########################
## 2 response variables ##
##########################
in.name <- c("x1", "x2")
nlev <- c(20, 20)
lower <- c(-3, -3)
upper <- c(3, 3)
out.name <- c("y1", "y2")
weight <- c(0.2, 0.8)
C <- 10
pr.mut <- c(0.1, 0.07, 0.04, rep(0.01, C-3))
tn <- emmat0(in.name, nlev, lower, upper, out.name, nd = 10, fn1 = ackley,
fn2 = peaks)
for(t in 1:(C-1))
{
tn <- emmatn(t, tn, na = 5, opt = c("mn", "mx"), weight,
pr.mut = pr.mut, graph = "yes", fn1 = ackley, fn2 = peaks)
tn <- emmacheck(tn, graph = "no", fn1 = ackley, fn2 = peaks)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.