ExpDE is a modular implementation of the Differential Evolution metaheuristic, which aims at providing a platform for the experimental investigation of the effect of different recombination / mutation / selection operators.
Install the package directly from CRAN using:
install.packages("ExpDE")
To get the latest version from Github, use:
# install.packages("devtools")
devtools::install_github("fcampelo/ExpDE")
Full usage instructions and examples can be found in the documentation of ExpDE::ExpDE()
. Type ?ExpDE
to check it.
mutation_best
)mutation_current_to_pbest
- includes special case current-to-best
)mutation_mean
)mutation_rand
)mutation_wgi
)It is also possible to run the algorithm without using any differential mutation operator (mutation_none
). Run mutation_operators()
for a list of available
variants.
recombination_arith
)recombination_bin
)recombination_blxAlphaBeta
- includes special cases blxAlpha
and Flat
)recombination_eigen
)recombination_exp
)recombination_geo
)recombination_lbga
)recombination_linear
)recombination_mmax
)recombination_npoint
)recombination_onepoint
)recombination_pbest
)recombination_sbx
)recombination_wright
) It is also possible to run the algorithm without using any recombination operator (recombination_none
). Run recombination_operators()
for a list of available
variants.
selection_standard
)stop_maxiter
)stop_maxeval
)popsize <- 200
mutpars <- list(name = "mutation_best", f = 0.6, nvecs = 1)
recpars <- list(name = "recombination_sbx", eta = 10)
selpars <- list(name = "selection_standard")
stopcrit <- list(names = "stop_maxeval", maxevals = 100000)
probpars <- list(name = "sphere", xmin = rep(2, 10), xmax = rep(20, 10))
seed <- 1234
showpars <- list(show.iters = "numbers", showevery = 10)
out <- ExpDE(popsize, mutpars, recpars, selpars,
stopcrit, probpars, seed, showpars)
If you find any bugs or has any suggestions for improvement, please feel free to contact me.
Cheers, Felipe
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.