Основная идея метода заключается в том, что из точки n-мерного пространства, для которой значение
функции цели уже рассчитано, производится шаг в случайном направлении, определяемом случайным вектором
.
,
в которой вычисляется значение функции цели. Если при выполнении случайного шага
, приводящего в точку
, получается меньшее значение функции цели, то он считается удовлетворительным (удачным) и новое значение
запоминается совместно с координатами точки
. Затем делается новый шаг
в случайном направлении и т.д.
Если же случайный шаг
оказывается неудачным, то производится выборка следующего случайного вектора
и из точки
снова выполняется шаг. Пробные шаги из точки
делаются до тех пор, пока не будет найдена точка
, в которой функция цели имеет меньшее значение, после чего пробные шаги выполняются уже из точки
.
Поиск заканчивается, если после выполнения серии из s шагов меньшего значения функции цели найти не удается. Для практических расчетов число шагов в серии часто применяется равным размерности решаемой задачи n.
Эффективность поиска может несколько возрасти при применении шага переменной величины
. В данном случае после выполнения серии из s неудачных шагов поиск не заканчивается, а уменьшается только величина шага
, вслед за чем отсчет шагов в серии возобновляется. Критерием окончания поиска служит минимальный размер шага
, которым и задается точность определения оптимума.