cbx.objectives.snowflake#

class cbx.objectives.snowflake(alpha=0.5)[source]#

Bases: cbx_objective

Snowflake

The snowflake function is a function with many local minima and six global minima [1]. Using polar coordinates, it is as

\[f(r, \phi) = \min\{f_0(r,\phi), f_1(r,\phi), f_2(r,\phi), 0.8\},\]

where for \(i\in\{0,1,2\}\) we define

\[f_i(r,\phi) = r^8 - r^4 + \sqrt{\left|\cos\left(\phi + i\cdot \frac{\pi}{3}\right)\right|} \cdot r^{0.3}.\]

This function was introduced to showcase the performance of the PolarCBO algorithm [2].

Parameters:

alpha (float) – Scales the input. Default is .5

Visualization#

(Source code, png, hires.png, pdf)

../../_images/cbx-objectives-snowflake-11.png

References