Differential Evolution#

See Differential Evolution for information on differential evolution.

minimisers.DE.deopt(fname, problem, controls, S_struct)#

Minimise a user-supplied function with the differential evolution algorithm.

Parameters:
  • fname (string) – string naming a function to minimise.

  • problem (struct) – the Project struct.

  • controls (struct) – the Controls struct.

  • S_struct (struct) – problem data vector (data and controls).

Returns:

  • FVr_bestmem (vector) – a vector of the best parameter values.

  • problem (struct) – the Project struct.

minimisers.DE.leftWin(S_x, S_y)#

Compare the objective function for two DE candidate points.

Parameters:
  • S_x (struct) – The two points to compare.

  • S_y (struct) – The two points to compare.

Returns:

I_z – Whether S_x has a lower objective function value than S_y.

Return type:

bool

minimisers.DE.runDE(problemStruct, controls)#

Run the differential evolution algorithm for a given problem and controls.

Parameters:
  • problemStruct (struct) – the Project struct.

  • controls (struct) – the Controls struct.

Returns:

  • problemStruct (struct) – the output project struct.

  • result (struct) – the calculation and optimisation results object.