
- •Учебно-методические материалы к изучению дисциплины «Методы оптимизации» (конспект лекций)
- •1. Классификация задач оптимизации
- •2. Классификация математических методов и моделей в экономике
- •3. Линейное программирование
- •3.1. Постановка задачи линейного программирования
- •3.2. Экономическая интерпретация задач линейного программирования
- •3.3. Требования совместности условий
- •3.4. Графический метод решения задач линейного программирования
- •3.5. Симплекс-метод
- •3.6. Модифицированный симплекс-метод
- •3.7. Построение опорных планов
- •3.8. Условия оптимальности
- •3.9. Метод искусственного базиса
- •3.10. Транспортная задача
- •3.11. Двойственные задачи линейного программирования
- •3.12. Устойчивость оптимизационного решения
- •4. Нелинейное программирование
- •4.1. Классификация и общая постановка задач нелинейного программирования
- •4.2. Метод множителей Лагранжа
- •4.3. Возможные обобщения метода множителей. Седловая точка функции Лагранжа
- •4.4. Оптимальные решения при ограничениях-неравенствах. Теорема Куна - Таккера
- •4.5. Выпуклое программирование. Задача выпуклого программирования
- •4.6. Квадратичное программирование
- •4.7. Градиентные методы
- •5. Оптимизация на графах
- •5.1. Основные понятия теории графов
- •5.2. Связность
- •5.3. Подграфы
- •5.4. Матрица графов
- •5.5. Потоки в сетях
- •5.6. Задача о максимальном потоке сети
- •5.7. Задача о кратчайшем пути
- •5.8. Задача коммивояжера
- •5.9. Оптимизация сетевого графика
- •5.10. Методы оптимизации производственной программы
- •6. Динамическое программирование
- •6.1. Общая постановка задачи динамического программирования
- •6.2. Принцип оптимальности. Уравнение Беллмана
- •6.3. Простейшие экономические задачи, решаемые методом динамического программирования
- •7. Математические модели потребительского поведения и спроса
- •7.1. Отношение предпочтения и функция полезности
- •7.2. Решение задачи об оптимальном выборе потребителя
- •7.3. Функции спроса. Коэффициент эластичности
4.6. Квадратичное программирование
Задачи квадратичного
программирования
имеют следующие особенности: целевая
функция
представляет собой сумму вида
функции,
входящие в ограничения, линейны
относительно хj,
т.е.
обычно присутствует
требование неотрицательности переменных.
Структура задач
квадратичного программирования
позволяет широко
использовать теорию Куна - Таккера для
поиска оптимальных решений. Различные
интерпретации
необходимых условий существования
экстремума (4)
(п. 4.4) привели к разработке целого ряда
алгоритмов, многие
из которых преследуют цель свести
решение исходной
квадратичной задачи к вариантам линейного
программирования. Что касается
достаточных условий экстремума,
то в данном случае они выражены в
требовании выпуклости (вогнутости)
функции
.
Можно показать,
что рассматриваемая квадратичная
форма обладает свойством выпуклости
(вверх), если она является неположительно
(или отрицательно) определенной
в U, т.е.
для всех хj,
xk,
удовлетворяющих
принятым ограничениям.
Учитывая сказанное, обратимся к задаче: найти
при
(5)
Положив
,
говорить в дальнейшем
только о глобальном экстремуме z. .
Рассмотрим необходимые условия существования X*, z*. Здесь
и
Обозначим для удобства через pj
- производную
,
а через производную
qi
-
.
Тогда искомые условия можно трактовать
так: значения
определяются теми решениями системы
(6)
которые удовлетворяют требованиям
Переход к системе (6) позволяет в
большинстве случаев упростить процедуру
отыскания
за счёт использования симплекс-алгоритма.
Возвращаясь к (6), заметим, что
рассматриваемая система содержит
т+п линейных уравнений с 2(n+m)
неизвестными
.
Предполагая уравнения (6) независимыми
(поскольку независимы условия, из которых
они получены), можно сказать, что п+т
из названных 2(п+т) переменных
являются свободными.
Если некоторое решение (6) удовлетворяет требованиям
то среди его компонент должно быть как минимум п+т равных нулю; таким образом, оно может иметь вид «ровно п+т компонент отличны от нуля, ровно п+т компонент равны нулю» или «менее п+т компонент отличны от нуля, более п+т компонент равны нулю».
Очевидно, подобные
решения являются базисными, и для
отыскания X*
должен существовать метод, аналогичный
симплекс-методу, оперирующему с базисными
решениями. Возникает вопрос: нельзя ли
сразу, выбрать
произвольно п+т
свободных
переменных среди
положить их
равными нулю, а затем определить
через них остальные переменные в
соответствии,
с уравнениями (6)? Ответ, здесь может
быть только
отрицательным, потому что произвольный
выбор решения
может привести к нарушению условий
.
Приходится обращаться
к специальным методам определения
.
Одним из них
является так называемый метод
Вольфа, предусматривающий
исследование задач линейного
программирования
с целью получить решения задачи
квадратичного программирования.