Crossover {hySAINT} | R Documentation |
Performing crossover
Description
This function gives offspring from parents. It performs crossover at a fixed probability of 0.6.
Usage
Crossover(X, myParent, EVAoutput, heredity = "Strong", r1, r2, numElite = 40)
Arguments
X |
Input data. An optional data frame, or numeric matrix of dimension
|
myParent |
A numeric matrix with dimension |
EVAoutput |
The output from function |
heredity |
Whether to enforce Strong, Weak, or No heredity. Default is "Strong". |
r1 |
At most how many main effects do you want to include in your model?.
For high-dimensional data, |
r2 |
At most how many interaction effects do you want to include in your model? |
numElite |
Number of elite parents. Default is 40. |
Value
Offspring. If crossover occurred, it returns a numeric matrix with dimensions
choose(numElite,2)
by r1+r2
. Otherwise, numElite
by r1 + r2
.
See Also
Examples
set.seed(0)
interaction.ind <- t(combn(10,2))
X <- matrix(rnorm(100*10,1,0.1), 100, 10)
epl <- rnorm(100,0,0.01)
y <- 1+X[,1]+X[,2]+X[,3]+X[,1]*X[,2]+X[,1]*X[,3]+epl
EVAoutput <- EVA(X, y, r1 = 5, sigma = 0.01,
interaction.ind = interaction.ind)
myParent <- Initial(X = X, y = y, EVAoutput, r1 = 5, r2 = 2)
Offsprings <- Crossover(X, myParent, EVAoutput, r1 = 5, r2 = 2)