множників Лагранжа, які складаються в зведенні задачі пошуку екстремуму з обмеженнями до задачі пошуку екстремуму (точніше, сідлової точки, що приблизно те ж саме) без обмежень або з обмеженнями простого виду, облік яких не складає труднощів ( це видно на прикладі операції проектування на ненегативний ортант). Однак ці методи застосовні практично тільки в опуклому випадку. Від цього недоліку позбавлені методи штрафних функцій, які дозволяють у вельми загальному випадку зводити екстремальні завдання зі складними обмеженнями до завдань без обмежень або з простими обмеженнями, а в поєднанні з методами пошуку безумовного екстремуму служать універсальним засобом вирішення задач математичного програмування (звичайно, не позбавленим недоліків ).
Розглянемо загальну задачу математичного програмування (4). Методи штрафних функцій засновані на описі безлічі Х за допомогою функцій зі спеціальними властивостями. Одна група методів використовує функції виду F (х, с), які володіють наступними властивостями:
В якості такої функції можна взяти, наприклад, квадратичну функцію штрафу яка є дифференцируемой, якщо діфференцируєми функції обмежень gi (x). Можна показати, що якщо f (x) і gi (x), i=1, 2, _, m, безупинні на замкнутому, обмеженому безлічі R і Х? , То
При цьому якщо х0 (сn) реалізує максимум в правій частині (15), то будь гранична точка послідовності {x0 (сn)} є рішення задачі (4).
Таким чином, за допомогою методу штрафних функцій загальну задачу математичного програмування можна звести наближено (при чималому сn) до задачі без обмежень або з простими обмеженнями (на простому множині R).
Недоліком методів штрафних функцій є погіршення властивостей допоміжних завдань (у правій частині (15)) при великих значеннях сn, зокрема чутливість до помилок обчислень. Ці недоліки подолані в деяких варіантах штрафних функцій, в яких можна обмежитися кінцевими значеннями штрафних констант сn, а також у близьких до них методах модифікованої функції Лагранжа [2].
Більш докладно з завданнями і методами нелінійного програмування можна познайомитися в [3-5].
Якщо говорити про практичну реалізацію методів вирішення задач математичного програмування, то треба мати на увазі, що жоден з них не володіє універсальністю, що дозволяє застосовувати його ефективно до різних класів задач. Тому методи слід вибирати залежно від виду максімізіруемой функції і функцій обмежень. Ще більш ефективними є використання комбінацій методів і застосування їх у певній послідовності, якщо брати отримане одним методом наближене рішення в якості початкового наближення для наступного методу. Така ідея реалізується в існуючих пакетах і системах оптимізації, і для практичного вирішення завдань головне - навчитися грамотно користуватися ними (з цього питання див., наприклад, [6]).
У сучасній теорії оптимізації розглядаються і складніші, ніж (4), класи екстремальних задач, які виникають у процесах прийняття рішень в умовах многокритериальности (векторна оптимізація), невизначеності (стохастичне програмування, мінімаксні завдання і т. д.), конфлікту (теорія ігор). Ці розділи оптимізації разом з математичним програмуванням складають нову наукову дисципліну - теорію дослідження операцій (див., наприклад, [7]). Разом з тим математичний апарат дослідження операцій широко використовує...