Register a GA-based seriation metaheuristic for use with seriate().
Arguments
- ismProb
probability to use
GA::gaperm_ismMutation()(inversion) versusGA::gaperm_simMutation()(simple insertion).
Details
Registers the method "GA" for seriate(). This method can be used
to optimize any criterion in package seriation.
The GA uses by default the ordered cross-over (OX) operator. For mutation,
the GA uses a mixture of simple insertion and simple inversion operators.
This mixed operator is created using
seriation::gaperm_mixedMutation(ismProb = .8), where ismProb
is the probability that the simple insertion mutation operator is used. See
package GA for a description of other available cross-over and
mutation operators for permutations. The appropriate operator functions in
GA start with gaperm_.
We warm start the GA using "suggestions" given by several heuristics.
Set "suggestions" to NA to start with a purely random initial
population.
See Example section for available control parameters.
Note: Package GA needs to be installed.
References
Luca Scrucca (2013): GA: A Package for Genetic Algorithms in R. Journal of Statistical Software, 53(4), 1–37. URL doi:10.18637/jss.v053.i04 .
Examples
if (FALSE) { # \dontrun{
register_GA()
get_seriation_method("dist", "GA")
data(SupremeCourt)
d <- as.dist(SupremeCourt)
## optimize for linear seriation criterion (LS)
o <- seriate(d, "GA", criterion = "LS", verbose = TRUE)
pimage(d, o)
## Note that by default the algorithm is already seeded with a LS heuristic.
## This run is no warm start (no suggestions) and increase run to 100
o <- seriate(d, "GA", criterion = "LS", suggestions = NA, run = 100,
verbose = TRUE)
pimage(d, o)
o <- seriate(d, "GA", criterion = "LS", suggestions = NA, run = 100,
verbose = TRUE, )
pimage(d, o)
} # }