Page 151 - 5637
P. 151

=   +    . Якщо   <  , то здійснюємо перехід до п. 2. Якщо   =  , то вважаємо


          =         =         ,   = 1, замінюємо   на   + 1 і переходимо до початку п. 1.

              2. Обчислюємо матрицю               , за такими формулами:

                                         =     ;    =   (             ) −   (  );                                      (7.8)










                                              =   +           −              .








        Замінюємо   на    + 1 і повертаємося до п. 1.
              При реалізації алгоритму у вигляді програми зазвичай в якості початкової матриці
            вибирається  одинична  матриця   ,  можна  також  використовувати  будь-яку  іншу

        симетричну  позитивно  певну  квадратну  (  ×  )-матрицю. Вельми  важливим  є
        правильний  вибір  алгоритму  одновимірного  пошуку,  здійснює  мінімізацію  функції
         (  +    ). так  як  на  цю  частину  алгоритму  припадає  більша  частина  загального


        обсягу  обчислень. Бажано,  щоб  точність  одновимірного  пошуку  була  вище  (або
        принаймні  еквівалентна)  точності  є  самого  алгоритму  Девідона-Флетчера-Пауелла.

        Відзначимо  також,  що  алгоритм  Девідона-Флетчера-Пауелла  досить  чутливий  до

        помилок,  одержуваних  при  обчисленні  градієнта    ( ). Тому  треба  обережно


        підходити до використання замість градієнта його оцінок, одержуваних за допомогою
        відносин різниць. Використання грубих оцінок градієнта приводить або до  значного


        зростання  кількості  обчислень  мінімізуючої  функції  порівняно  з  випадком,  коли
        використовуються  аналітичні  вирази,  або  взагалі  до  аварійного  завершення  процесу


        оптимізації [58, 64].

              B окремому випадку, коли функція   квадратична, в ході пошуку, виробляються

          – зв'язані напрямки пошуку   , … ,    тобто мають місце співвідношення      = 0




        при   ≠  . Після однієї ітерації алгоритм зупиняється в точці мінімуму (тобто                           є
        оптимальним рішенням задачі). Крім того, має місце співвідношення                          =       .

              Зазначимо,  що  алгоритм  Девідона-Флетчера-Пауелла  включається  в  більш

        загальний  клас  квазінютоновських  процедур,  в  яких  напрямок  пошуку  задається  у

        вигляді –    ( ), де   – деяка позитивно певна симетрична матриця. Різні принципи

        вибору матриці   породжують серію алгоритмів оптимізації (див. [1, 58, 60, 64, 65]).

        Програмні  аспекти  реалізації  алгоритмів  змінної  метрики  досить  повно  висвітлені  в
   146   147   148   149   150   151   152   153   154   155   156