Методические материалы для изучения алгоритмов реализации методов безусловной оптимизации непрерывных одномерных и многомерных унимодальных функций. Корнилов А.Г. - 13 стр.

UptoLike

Составители: 

Рубрика: 

12
Метод золотого сечения.
Постановка задачи следующая: минимизировать функцию F(x) , если
известно , что функция непрерывна и унимодальна, интервал в котором
содержится х равен [a , b].
y
a c d b x
Алгоритм вычислений по методу золотого сечения следующий:
0) задать E
зад
1) выбрать две внутренние точки с и d , отстоящие от границ интервала на
величину
L )25,15,1( , где L = b - a
*
, т. е.
)(382,0)()25,15,1(
)(382,0)()25,15,1(
abbabbd
abaabaс
==
+=++=
2) вычислить значения F(c) и F(d)
3) установить какое соотношение существует между F(c) и F(d) .
и по нему определяется направление перемещение границы.
если F(d) > F(c) b
d ,
если F(d) < F(c) a c.
4) определить величину L= b - a
если L > E
зад,
то осуществляется переход в пункт (1),
иначе - пункт (5)
5) Процесс заканчивается , за минимальное значение функции принимается
наименьшее из F(d) , F(c)
Рассмотрим пример:
Найти минимум функции F(x) = x + 2/x в интервале [1 , 5] c погрешностью
определения местоположения минимума E
зад
= 0,1.
1) c = a + 0,382( 5 - 1 ) = 1 + 0,382( 5 - 1 ) = 2,53;
d = b - 0,382( 5 - 1 ) = 5 - 0,382( 5 - 1 ) = 3,47;
2) F(c) = F(x=2,53) = 2,53 + 0,79 = 3,32;
F(d) = F(x=3,47) = 3,47 + 0,58 = 4,05;
3) F(d) > F(c) b d т. е. [a=1 , b=d=3.47]
4). L= b - a = 3,47- 1 = 2,47 , L > E
зад
1) c = a + 0,382( 3,47 - 1 ) = 1 + 0,382*2,47 = 1,94;
*
В данном случае используется формула золотого сечения вида
35
2
                                                12


                                  Метод золотого сечения.

      Постановка задачи следующая: минимизировать функцию F(x) , если
известно , что функция      непрерывна и унимодальна, интервал в котором
содержится х равен [a , b].
     y




            a      c          d        b         x

      Алгоритм вычислений по методу золотого сечения следующий:
0) задать E зад
1) выбрать две внутренние точки с и d , отстоящие от границ интервала на
величину (1,5 − 1,25 ) • L , где L = b - a* , т. е.
                с = a + (1,5 + 1,25 ) • (b − a) = a + 0,382 • (b − a)
          d = b − (1,5 − 1,25 ) • (b − a ) = b − 0,382 • (b − a)
2) вычислить значения F(c) и F(d)
3) установить какое соотношение существует между F(c) и F(d) .
и по нему определяется направление перемещение границы.
     если F(d) > F(c) b → d ,
     если F(d) < F(c) a → c.
4) определить величину L= b - a

если L > E зад, то осуществляется переход в пункт (1),
иначе - пункт (5)
5) Процесс заканчивается , за минимальное значение функции принимается
наименьшее из F(d) , F(c)
 Рассмотрим пример:
       Найти минимум функции F(x) = x + 2/x в интервале [1 , 5] c погрешностью
определения местоположения минимума E зад = 0,1.
         1) c = a + 0,382( 5 - 1 ) = 1 + 0,382( 5 - 1 ) = 2,53;
              d = b - 0,382( 5 - 1 ) = 5 - 0,382( 5 - 1 ) = 3,47;
         2) F(c) = F(x=2,53) = 2,53 + 0,79 = 3,32;
             F(d) = F(x=3,47) = 3,47 + 0,58 = 4,05;
         3) F(d) > F(c) ⇒ b → d т. е. [a=1 , b=d=3.47]
         4). L= b - a = 3,47- 1 = 2,47 , L > E зад


             1) c = a + 0,382( 3,47 - 1 ) = 1 + 0,382*2,47 = 1,94;


*                                                                3− 5
    В данном случае используется формула золотого сечения вида
                                                                   2