Класс одномерных унимодальных функций.
Положим, что . Покроем интервал сеткой с узлам и обозначим .
Положим, что необходимо построить одномерную унимодальную функцию, минимум которой находится в узле , т.е. в точке .Тогда для генерации такой функций может быть использован следующий алгоритм построения тестовых одномерных унимодальных функций.
  1. Генерируем дискретную случайную величину , равномерно распределенную на множестве 0,1,2,…,.
  2. Генерируем случайные числа по рекуррентной формуле

    где ,[0,] - случайные величины, равномерно распределенные в интервале , если , и в интервале (,0), если . Здесь - некоторая константа, определяющая максимальную скорость изменения искомой функции.
  3. Для получения функции () используем линейную интерполяцию полученных значений , . Минимум полученной функции () достигается в точке .
Класс одномерных многоэкстремальных функций.
Положим, то область допустимых значений есть интервал [,]. С помощью линейного преобразования

сведем этот интервал к интервалу [0,1]. Тогда в качестве тестовых одномерных многоэкстремальных функций можно использовать тригонометрические полиномы некоторой степени (отрезки ряда Фурье):
 (1)

Здесь , , , =[1,] случайные величины с некоторыми законами распределения.
Таким образом, алгоритм генерации тестовых одномерных многоэкстремальных функций состоит в генерации указанных случайных величин и использовании формулы (1).
Класс многоэкстремальных функций нескольких переменных.
В простейшем случае алгоритм генерации многоэкстремальных функций нескольких переменных можно построить на основе использования совокупности s квадратичных функций, каждая из которых в общем случае дает локальный минимум искомой функции:
 (2)

где квадратичная функция

 (3)

Здесь – размерность вектора варьируемых параметров , – точка -го локального минимума глубиной ; постоянные , , - случайные величины с некоторыми законами распределения.