# Addons/math/deoptim

**math/deoptim** - Differential Evolution algorithm

The `math/deoptim` addon is a J implementation of the Differential Evolution algorithm developed by Kenneth Price and Rainer Storn.

Differential Evolution is a form of evolutionary algorithm. It is relatively robust, simple and fast. DE finds the global minimum of a multidimensional, multimodal (i.e. exhibiting more than one minimum) function with good probability.

Browse history, source and examples in SVN.

## Verbs available

`deoptim`v Optimize using Differential Evolution `getDEoptim`v Calls deoptim but allows 2-col table input & output

## Installation

Use JAL/Package Manager.

Load `deoptim` addon with the following line

load 'math/deoptim'

## Examples of use

To see and interact with an example of using the algorithm to derive the coefficients of Chebychev polynomials load the example application shown on the right as follows:

load 'math/deoptim/demo/eg_deoptim'

To see more (and simpler) examples of usage, open and inspect the test_deoptim.ijs script. The test script is also part of the addon so you can open it locally using one of the following:

open 'math/deoptim/test/test_deoptim' NB. except jconsole

The interface to the functions are documented within the deoptim.ijs script itself.

open 'math/deoptim/deoptim' NB. except jconsole

## Authors

Contributed by Ric Sherlock

Suggestions and/or SVN improvements to the addon are welcome.

## See Also

- DE on Wikipedia - Wikipedia description of development of Differential Evolution.
- DE home page - Differential Evolution home page with code examples in other languages.