Differential evolution

A 2D slice through a 32-dimensional search. Bright is good, dark is bad; the ring marks the true optimum, the cross marks the best individual so far.

best fitness—
distance to optimum—
generation—
evaluations / sec—

starting…

The objective is one WGSL function — replace objStep/objDone with your own and the rest of the machinery is unchanged. The tutorial covers the pieces.