diff --git a/bench/cec2020/helperFunctions.go b/bench/cec2020/helperFunctions.go index 80c8936..64a8817 100644 --- a/bench/cec2020/helperFunctions.go +++ b/bench/cec2020/helperFunctions.go @@ -98,3 +98,17 @@ func ShiftRotate(x []float64, os []float64, mr []float64, shiftRate float64, shi } } } + +// Asy is the asymptotic function. +func Asy(x []float64, beta float64) { + nx := len(x) + + for i := range x { + if x[i] > 0 { + fi := float64(i) + fnx := float64(nx) + + x[i] = math.Pow(x[i], 1+((beta*fi)/(fnx-1)*math.Pow(x[i], 0.5))) + } + } +}