1.5.Определяем вторую координату по формуле (26), двигаясь в том же направлении:
x2 x1 h FS 3 0,8 0,1 5 1,3; R(1,3) 2,65.
Шаг сделан неудачно, поскольку R(x2) R(x1), т.е. –2,65 > – 12,38, следовательно, третий шаг будет осуществлен из последней удачной точки x1 в направлении, обратном ко второму шагу, т.е. справа налево.
1.6.Третью координату определяем по формуле x3 x1 h FS 4 0,8 0,1 3 0,5;
R(0,5) 9,16; R(0,5) R(0,8), т.е. –9,16 > –12,38 (шаг неудачный).
1.7. Находим x4 x1 h FS 5 0,8 0,2 1,0;
R(1)= – 11,67; R(1) > R(0,8), т.е. – 11,67 > –12,38 (шаг неудачный)
1.8.Находим x5 x1 h FS 6 0,8 0,1 1 0,7;
R(0,7)= – 11,73; R(0,7) > R(0,8), т.е. – 11,73 > –12,38 (шаг
|
|
|
|
|
неудачный) |
|
|
1.9.Находим x6 |
x1 |
h FS 7 0,8 0,1 1 0,9; R(0,9)= – 12,42. |
|||||
Поскольку 12,42<12,38, то шаг оказался удачным. |
|||||||
При этом исчерпаны в убывающей последовательности все числа |
|||||||
Фибоначчи, а поэтому поиск закончен. |
|
|
|||||
Ответ: Rmin R(0,9 0,1) 12,48. |
|
|
|||||
2. Метод локализации экстремума. |
|
|
|||||
I шаг. |
|
|
|
|
|
|
|
Весь диапазон от xmin до xmax |
разбиваем на четыре равных |
||||||
подынтервала. |
|
|
|
|
|
|
|
Поскольку xmin 0, |
а xmax 2, то имеем |
|
|||||
xmin 0; |
R(0) 0; |
||||||
x |
|
0,5; |
R(0,5) |
9,16; |
|||
1 |
|
|
|
|
|
||
x2 |
1,0; |
|
|
|
|||
вычисляем |
R(1,0) 11,67; |
||||||
x |
3 |
1,5; |
|
R(1,5) 11,33; |
|||
x |
|
|
|
|
|
100,67. |
|
max |
2, |
R(2,0) |
|||||
|
|
|
|
|
|
||
На основе анализа имеем минимальное значение функции R(1,0)
25
= =– 11,67. Тогда рассматриваемый диапазон сужается до [0,5…1,5], т.е. берутся два прилегающих подынтервала к точке x2 , имеющей минимум целевой функции. Далее осуществляем второй шаг: в связи
сэтим делим прилегающие подынтервалы пополам.
II шаг.
xmin |
0,5; |
R(0,5) 9,16; |
||||||
x |
|
0,75; |
|
R(0,75) |
12,12; |
|||
|
1 |
|
|
|
|
|||
x2 1,0; |
|
|
|
|
||||
|
вычисляем R(1,0) 11,67; |
|||||||
x |
3 |
1,25; |
|
R(1,25) 5,59; |
||||
x |
|
|
|
|
|
|
||
max |
1,5, |
R(1,5) 11,33. |
||||||
|
|
|
|
|
|
|
||
III шаг. |
|
|
|
|
|
|
|
|
xmin |
0,5; |
R(0,5) 9,16; |
||||||
x |
|
0,625; |
R(0,625) |
10,93; |
||||
1 |
|
|
|
|
|
|
||
x2 0,75; |
|
|
|
|
||||
|
вычисляем R(0,75) 12,12; |
|||||||
x |
|
0,875; |
R(0,875) |
|
12,48; |
|||
3 |
|
|
1,0, |
|
|
|
|
|
x |
max |
|
R(1,0) 11,67. |
|||||
|
|
|
|
|
|
|||
Поскольку на третьем шаге подынтервал разбиения еще не достиг заданной точности поиска, т.е. 0,125 > 0,1 (см. табл. 2), то осуществляем следующий шаг, выбирая в качестве наилучшей точки точку x3, при которой R(x3)=R(0,875) = 12,48. Тогда рассматриваемый интервал сузится до величины [0,75 – 1,0], а [0,5 – 0,75) отбрасываем.
1V шаг.
xmin 0,75; |
R(0,75) 12,12; |
|||||
x |
|
0,8125; |
R(0,8125) |
12,43; |
||
1 |
|
|
|
|
||
x2 0,875; |
|
|
|
|||
|
вычисляем R(0,875) 12,48; |
|||||
x |
3 |
0,9375; |
R(0,9375) 12,24; |
|||
x |
|
1,0, |
|
|
|
|
max |
|
R(1,0) 11,67. |
||||
|
|
|
|
|
||
Поскольку на четвертом шаге подынтервал разбиения оказался меньше заданной точности поиска (см. табл. 2), т.е. 0,0625 < 0,1, то расчеты заканчиваются. В качестве решения задачи принимаем наименьшую величину целевой функции на последнем шаге поиска.
Ответ: Rmin R(0,875 0,1) 12,48.
26
3. Метод золотого сечения.
На первом шаге весь диапазон изменения неизвестной от xmin =0 до xmax =2 разбиваем на три подынтервала следующим образом:
a=xmax –xmin =2 – 0=2;
|
|
|
x1 xmin z2 a =0 + 0,38 2 = 0,76; |
|||||||
|
|
|
|
x2 xmin z a =0 + 0,62 2 = 1,24. |
||||||
|
Определяем величины откликов на концах интервала (xmin и |
|||||||||
x |
max |
) и в точках разбиения (x и |
x |
2 |
). |
|||||
|
|
|
|
|
|
1 |
|
|
||
|
|
xmin 0; |
|
|
|
|
R(0) 0; |
|||
|
|
x1 0,76; |
|
|
|
|
|
|||
|
|
|
|
|
|
R(0,76) 12,19; |
||||
|
|
x |
|
1,24; |
|
вычисляем R(1,24) 5,14; |
||||
|
|
2 |
|
|
|
|
|
|
|
|
|
|
x |
|
|
2,0, |
|
|
|
R(2,0) 100. |
|
|
|
max |
|
|
|
|
|
|
||
Наименьшая величина отклика в точке x1 = 0,76, а R(0,76) = – 12,19. Окружаем эту точку прилегающими подынтервалами (0 – 0,76) и (0,76 – 1,24), а остальное (1,24 – 2) из рассмотрения исключаем. Тогда рассматриваемый интервал будет от 0 до 1,24, т.е. a = 1,24. В этом случае получаем новые точки разбиения.
x3 xmin z2 a=0 + 0,38 1,24 = 0,471; x4 xmin z a=0 + 0,62 1,24 = 0,76.
xmin 0; |
|
R(0) 0; |
|
x3 |
|
|
|
0,471; |
R(0,471) 8,69; |
||
x4 |
|
|
вычисляем |
0,76; |
|
R(0,76) 12,19; |
|
x2 |
1,24, |
|
|
|
R(1,24) 5,44. |
||
Наименьшая величина отклика в точке разбиения x4=0,76, а
R(0,76)=-12,19.
Согласно вышеизложенной методике рассматриваемый интервал сужается до x3–x2. Тогда имеем a = x3–x2= 1,24 – 0,471 = 0,769.
Отсюда
x5 x3 z2 a=0,471 + 0,38 0,769 = 0,471 + 0,292 = 0,76; x6 x3 z a=0,471 + 0,62 0,769 =0,471 + 0,476 = 0,948.
На новом шаге получим
27
x2 0,471; |
R(0,471) 8,69; |
||
x5 |
0,76; |
|
|
|
R(0,76) 12,19; |
||
x6 |
|
|
вычисляем |
0,948; |
|
R(0,948) 12,16; |
|
x3 |
1,24, |
|
|
|
R(1,24) 5,44. |
||
Наилучшая точка здесь x5 = 0,76, а R(0,76) = –12,19. Тогда a = =0,948 – 0,471 = 0,477.
Отсюда
x7=0,471 + 0,38 0,477 = 0,471 + 0,181 = 0,65; x8=0,471 + 0,62 0,477 =0,76 .
Имеем новое разбиение:
x2 0,471; |
R(0,471) 8,69; |
||||
x |
7 |
0,65; |
|
|
|
|
|
|
R(0,65) |
11,22; |
|
x8 |
0,76; |
|
вычисляем |
|
|
|
R(0,76) 12,19; |
||||
x3 |
0,948, |
|
|
|
|
|
R(0,948) 12,16. |
||||
Наилучшая точка x8 = 0,76, а R(0,76) = –12,19. Тогда a = 0,948 –
– 0,65 = 0,298.
Отсюда
x9 =0,65 + 0,38 0,298 =0,76; x10 =0,65 + 0,62 0,298 =0,835.
Имеем новое разбиение:
x7 0,65; |
|
R(0,65) 11,22; |
|
x |
0,76; |
|
R(0,76) 12,19; |
9 |
|
|
|
|
|
|
вычисляем |
x10 0,836; |
R(0,836) 12,48; |
||
x |
0,948, |
|
R(0,948) 12,16. |
6 |
|
|
|
Наилучшая точка x10 = 0,835, а R(0,835) = –12,48. Тогда a = 0,948
– – 0,76 = 0,188.
Отсюда
x11=0,76 + 0,38 0,188 =0,835; x12 =0,76 + 0,62 0,188 =0,876;
Имеем новое разбиение:
28
x9 |
0,76; |
|
R(0,76) 12,19; |
|||
x |
0,835; |
|
R(0,835) |
12,48; |
||
11 |
|
|
|
|
|
|
x |
0,876; |
|
вычисляем |
R(0,876) |
12,48; |
|
|
|
|||||
12 |
|
|
|
|||
x |
0,948, |
|
R(0,948) |
12,16. |
||
6 |
|
|
|
|
|
|
Наилучших две точки: R(0,835)=R(0,876)= –12,48.
Поскольку на последнем шаге наибольший подынтервал разбиения равен (0,948 – 0,876=0,072) и он меньше заданной точности поиска (0,1), то на этом расчеты прекращаются.
Ответ: R(0,876 0,1)= –12,48. 4. Метод сканирования.
Весь диапазон изменения неизвестной от xmin =0 до xmax =2 разбиваем с шагом, равным = 0,1 на 20 одинаковых подынтервалов и определяем величины откликов на концах интервала (xmin и xmax) и в точках разбиения. Имеем следующие результаты:
R(0) |
= 0; |
R(0,1) |
= – 1,9; |
R(0,2) |
= – 3,8; |
R(0,3) |
= – 5,67; |
R(0,4) |
= – 7,48; |
R(0,5) |
= – 9,16; |
R(0,6) |
= – 10,39; |
R(0,7) |
= – 11,73; |
R(0,8) |
= – 12,38; |
R(0,9) |
= – 12,48; |
R(1,0) |
= – 11,67; |
R(1,1) |
= – 9,93; |
R(1,2) |
= – 7,00; |
R(1,3) |
= – 2,65; |
R(1,4) =3,37; R(1,5) =11,33; R(1,6) =23,89; R(1,7) =34,14; R(1,8) =49,58; R(1,9) =68,09; R(2,0) =100,67.
Выбираем наименьшую величину отклика, которая и будет решением задачи.
Ответ: R(0,9 0,1) = – 12,48.
Отчет о работе оформляется в произвольной форме с обязательным обоснованием всех действий, подтвержденных расчетами, при этом он не должен вызывать затруднений при чтении.
Вопросы для самоконтроля
1.Дать перечень безградиентных методов поиска экстремума одномерных функций.
2.Сформулировать сущность метода сканирования.
3.Определить оптимум целевой функции методом локализации экстремума.
4.Какова последовательность вычислений при использовании метода золотого сечения?
5.Записать формулу рекуррентного соотношения, положенного в основу последовательности чисел Фибоначчи.
29