х3=(0,04; 0,08)T - 0,24 (0,24; 0,2)T = (-0,0176; 0,032)T.
82 . Вычислим
и : = 0,0749 < 0,15; = 0,0116 < 0,15.Полагаем k =3 и переходим к шагу 3.
33. Вычислим
: = (-0,012;-0,0816)T.43. Вычислим
: = 0,082 < 0,1. Расчет окончен. Найденаточка х3=(-0,0176;0,032)T, f(х3) = 0,00127.II. Анализ точки х3.
В примере 1.1 (гл.2 §1) было показано, что функция f(x) является строго выпуклой и, следовательно, точка х3 является найденным приближением точки глобального минимума х*. ■
1.3 Метод покоординатного спуска
Стратегия поиска
Стратегия решения задачи состоит в построении последовательности точек {хk}, k = 0,1,..., таких, что
k= 0,1,... . Точки последовательности {хk}вычисляются по циклам в соответствии с правилом . (4)где j- номер цикла вычислений; j = 0,1,2,...; k- номер итерации внутри цикла, k= 0,1,...,n-1; еk+1, k = 0,l,..., n- 1 -единичный вектор, (k+1) -я проекция которого равна 1; точка х00 задается пользователем, величина шага
выбирается из условия или .Если выбранное условие при текущем
не выполняется, шаг уменьшается вдвое и точка вычисляется заново. Легко видеть, чтопри фиксированном jза одну итерацию с номером kизменяется только одна проекция точки хjk, имеющая номер k +1, а в течение всего цикла с номером j , т.е. начиная с k= 0 и кончая k= п -1, изменяются все п проекций точки хj0. После этого точке хjпприсваивается номер хj + 0,1, и она берется за начальную точку для вычислений в j + 1 цикле. Расчет заканчивается в точке хjkпри выполнении по крайней мере одного из трех критериев окончания счета: , или , или двукратного выполнения неравенств , .Полученные в результате вычислений точки могут быть записаны как элементы последовательности {хl}, где
- порядковый номер точки, т.е.Геометрическая интерпретация метода для п = 2 приведена на рис. 5.
Рис. 5
Пример 1.3. Найти локальный минимум функции
.□ I. Определение точки xjk, в которой выполнен по крайней мере один из критериев окончания расчетов.
1. Зададим х00,
М: х00 = (0,5; 1)Т, ; М=10. Найдем градиент функции в произвольной точке2. Зададим j= 0.
30. Проверим выполнение условия
: j = 0<10 = М.40. Зададим k= 0.
50. Проверим выполнение условия
: k = 0<1 = n-1.60. Вычислим
: = (3; 2,5)T.70. Проверим условие
: = 3,8 > 0,1.80. Зададим
= 0,5 .90. Вычислим
, где , .Отсюда х01 = (-1;1)T.
100. Проверим условие
: = 2-2 = 0. Вывод: полагаем = 0,25 и переходим к шагу 9.901. Вычислим х01 с шагом
= 0,25: х01 = (-0,25; 1)T.1001. Проверим условие
: = 0,875 - 2 = -1,125 < 0.110. Проверим условия
, : = 0,75 > 0,15; = 1,125 > 0,15.Полагаем k=1 и переходим к шагу 5.
51. Проверим условие
: k = 1 = n-1.61. Вычислим
: = (0; 1,75)T.71. Проверим условие
: = 1,75 > 0,1.81. Зададим
=0,5.91. Вычислим
, где ; .Отсюда х02 = (-0,25; 0,125)Т .
101. Проверим условие
: = 0,109 - 0,875 = - 0,766 < 0.111. Проверим условия
, : = 0,875 > 0,15, = 0,766 > 0,15.Полагаем k= 2, переходим к шагу 5.
52. Проверим условие
: k = 2 > n -1. Зададим j= 1, х10 = х02, переходим к шагу 3.31. Проверим условие
: j= 1 < 10 = М.41. Зададим k= 0.
52. Проверим условие
: k = 0 <1 = п-1.62. Вычислим
: = = (-0,875; 0,00)T .72. Проверим условие
: = 0,875 > 0,1.