Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
R
 
 
man
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

ExpDE

Build Status CRAN_Status_Badge CRAN Downloads

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.

Installation

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")

How to use

Full usage instructions and examples can be found in the documentation of ExpDE::ExpDE(). Type ?ExpDE to check it.

Available Operators

Differential mutation

  • Best (mutation_best)
  • Current-to-pbest (mutation_current_to_pbest - includes special case current-to-best)
  • Mean (mutation_mean)
  • Rand (mutation_rand)
  • Weighted global intermediate (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

  • Arithmetic (recombination_arith)
  • Binomial (recombination_bin)
  • BLX-α-β (recombination_blxAlphaBeta - includes special cases blxAlpha and Flat)
  • Eigenvector-based (recombination_eigen)
  • Exponential (recombination_exp)
  • Geometric (recombination_geo)
  • Linear BGA (recombination_lbga)
  • Linear (recombination_linear)
  • M-max (recombination_mmax)
  • N-point (recombination_npoint)
  • One-point (recombination_onepoint)
  • pbest (recombination_pbest)
  • SBX (recombination_sbx)
  • Wright (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 DE (selection_standard)

Stop criteria

  • Maximum number of iterations (stop_maxiter)
  • Maximum number of function evaluations (stop_maxeval)

Example: DE/best/1/sbx on the shifted sphere problem for N = 10

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

About

Modular DE algorithm for the experimental investigation of the effect of different recombination / mutation / selection operators.

Resources

Packages

No packages published

Languages

You can’t perform that action at this time.