
- •Введение
- •Часть 1. Линейное программирование
- •1.1. Построение линейных экономико-математических моделей
- •Примеры задач
- •1.2. Формы записи задач линейного программирования
- •1.3. Свойства решений задач линейного программирования
- •1.4. Геометрический смысл и графический метод решения задач линейного программирования
- •1.5. Симплексный метод решения задач линейного программирования
- •1.6. Симплексный метод с искусственым базисом
- •1.7. Элементы теории двойственности
- •А. Симметричная двойственная пара
- •В. Несимметричная двойственная пара
- •1.8. Основные теоремы двойственности
- •1.9. Транспортная задача
- •Алгоритм метода потенциалов
- •1.10. Задача об оптимальных назначениях
- •Часть 2. Нелинейное программирование
- •2.1. Дробно-линейное программирование
- •2.1.1. Постановка задачи
- •Общую задачу дробно-линейного программирования (в дальнейшем длп) обычно записывают в виде:
- •2.1.2. Графическое решение задач длп
- •2.1.3. Симплекс-метод в длп
- •2.2. Общая задача нелинейного программирования. Классификация вычислительных методов
- •Условия (1) и (2), а также
- •По постановке задачи.
- •2. По характерным чертам алгоритмов.
- •2.3. Эффективные методы одномерной минимизации
- •2.4. Графический метод решения задач нелинейного программирования
- •2.5. Методы минимизации для задач без ограничений, использующие производные
- •2.6. Методы минимизации, не использующие производные
- •2.7. Методы решения задач нелинейного программирования с ограничениями
- •2.7.1. Методы линейной аппроксимации
- •2.7.2. Понятие о методах штрафных функций
- •Список использованной литературы:
- •Содержание
- •Часть 1. Линейное программирование 3
- •Часть 2. Нелинейное программирование 47
2.2. Общая задача нелинейного программирования. Классификация вычислительных методов
Общую задачу нелинейного программирования (в дальнейшем НЛП) обычно записывают в виде:
(2.2.1)
При
этом подразумевается, что либо
,
либо любая из функций, задающих
ограничения, являются нелинейными.
Приведем определения и терминологию, характерные для задач нелинейного программирования:
Вектор
,
доставляющий экстремум
,
называется оптимальной
точкой, а
соответствующее значение
– оптимальным
значением целевой функции. Пара
,
называется оптимальным
решением.
Целевая
функция называется унимодальной,
если она имеет единственный экстремум,
в противном случае она называется
мультимодальной.
У мультимодальной функции различают
глобальный
(или
абсолютный)
экстремум и локальные
(относительные)
экстремумы. Локальный
минимум
определяется как точка, в достаточно
малой окрестности которой
Для глобального
минимума
это неравенство верно во всей области
D.
Подобным образом (но со знаком неравенства
≥) определяются локальный
и глобальный
максимум.
Функция
называется выпуклой
в области
D,
если для любых двух точек
имеет место неравенство:
(2.2.2)
Если
в (2.2.2) знак неравенства <, то f
называется строго
выпуклой,
соответственно, если это неравенство
выполняется со знаками ≥ (>), то функция
называется вогнутой
(строго вогнутой).
Верны и такие соотношения: если функция
выпукла, то
вогнута и наоборот.
Дифференцируемая выпуклая функция обладает следующими свойствами:
3)
в области выпуклости
имеет только один экстремум.
Здесь мы применили обозначения:
градиент
функции f,
соответственно
–
транспонированный градиент, т. е.
вектор-строка;
– матрица
Гессе функции f
или матрица, составленная из вторых
частных производных:
(2.2.3)
Условие Н ≥ 0 означает неотрицательную определенность матрицы Н.
Из свойства 3) следует, что понятие выпуклости связано с понятием унимодальности, однако является более сильным:
F(х)
Рис. 2.2.1
На рисунке мы видим график разрывной недифференцируемой функции, которая, тем не менее, является унимодальной.
Определив понятие выпуклой функции, можно сформулировать важный частный случай общей задачи нелинейного программирования – задачу выпуклого программирования:
(2.2.4)
При этом подразумевается, что функция f выпукла, а все функции gi вогнуты, т. е. ограничения образуют выпуклое множество. Исходя из перечисленных выше свойств, можно утверждать: локальный минимум задачи (2.2.4) одновременно является и глобальным. Аналогично, если целевая функция вогнута и ограничения образуют выпуклое множество, то локальный максимум совпадает с глобальным.
Пример 2.2.1. Рассмотрим задачу нелинейного программирования:
+
4 → min;
Очевидно,
,
следовательно, линиями уровня целевой
функции будут концентрические окружности
с центром в точке (2; 0).
х1
← допустимая область
Рис. 2.2.2
Очевидно, минимум целевой функции достигается в точке А, в которой «минимальная» линия уровня касается допустимой области. При этом глобальный и локальный минимумы совпадают. Проверим матрицы Гессе:
Значит, f выпукла, а g2 вогнута, g1 – линейная функция, т. е. является одновременно и выпуклой и вогнутой. Таким образом, данная задача относится к задачам выпуклого программирования.
В
данной задаче экстремум достигается
в граничной точке области D.
Такой экстремум будем называть условным
оптимумом.
Соответственно, ограничение-неравенство
,
которое обращается в нуль для точки
экстремума, называется активным
ограничением.
Одним из важнейших типов задач нелинейного программирования являются задачи квадратичного программирования. Их постановка такова:
(2.2.5)
Здесь
Q
– положительно определенная квадратная
симметрическая матрица; А – матрица
коэффициентов левых частей ограничений;
и
– векторы
из констант. Таким образом, задача
квадратичного программирования
– это задача минимизации квадратичной
целевой функции неотрицательных
переменных при линейных ограничениях.
В
дальнейшем нам понадобятся аппроксимации
целевой функции
в окрестности точки
с помощью усеченного ряда Тейлора
Линейная (или 1-го порядка):
(2.2.6)
Квадратичная (или 2-го порядка):
Приведем теперь (без доказательств) необходимые и достаточные условия оптимальности решения для общей задачи нелинейного программирования.
А. Задачи без ограничений
Необходимые
условия локального минимума в точке
:
Достаточные условия: