В любых алгоритмах используется движение по направлению вектора градиента, но алгоритмы отличаются по способу движения по направлению градиента.
1. Движение осуществляется до критической точки (как это осуществлялось в алгоритме наискорейшего подъёма или наискорейшего спуска). В этом случае определяется величина t*, которая задаёт глубину продвижения.
2. Движение осуществляется на заданный шаг ∆t, после чего снова определяется градиент z( 0 ) (градиентный метод движения шагами).
В этом случае координаты новой точки определяем из условия:
= 0 + ∆t ∙ z 0 , или
х1 = х10 + ∆t∙ ( 0 );
х2 = х20 + ∆t∙ ( 0 );
…
хn = хn0 + ∆t∙ ( 0 ); где ∆t – заданная величина.
3. Если для выбора направления движения используются несколько z, вычисленных на предыдущих шагах, то такой метод получил название метода сопряжённых градиентов. В этом случае учитываются граничные значения нескольких z; новое значение градиента определяется как их линейная комбинация.