optimisation.algorithms.differential_evolution module

Define DifferentialEvolution.

class DifferentialEvolution

Bases: OptimisationAlgorithm

Downhill simplex method, which does not use derivatives.

All the attributes but solution are inherited from the Abstract Base Class OptimisationAlgorithm.

__init__() None

Instantiate the object.

__post_init__() None

Set additional information.

_abc_impl = <_abc._abc_data object>
_algorithm_parameters() dict

Create the kwargs for the optimisation.

_format_variables() tuple[ndarray, Bounds]

Convert the Variable to an array and Bounds.

_output_some_info() None

Show the most useful data from least_squares.

optimise() tuple[bool, SetOfCavitySettings, dict[str, list[float]]]

Set up the optimisation and solve the problem.

Returns:

  • success (bool) – Tells if the optimisation algorithm managed to converge.

  • optimized_cavity_settings (SetOfCavitySettings) – Best solution found by the optimization algorithm.

  • info (dict[str, list[float]]] | None) – Gives list of solutions, corresponding objective, convergence violation if applicable, etc.