Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Специальные методы исследования операций и математические модели. Курс лекций
.pdf
Рис. 1. Структура системы управления
Объект управления
Состояние внешней среды
Управляющие воздействия
Состояние объекта управления
Управляющая система
Степень достижения цели
Система управления
Предположение 1.2. Известна функция реализации s = (a, x), сопостав-
ляющая каждой паре (a, x), где a A и x X(a), состояние s, в которое переходит объект из исходного (текущего) состояния, если в состоянии a внешней
среды применить к нему управление x.
Правильно построенная модель должна описывать: множества A и S;
множества X(a) для всех a A; функцию реализации s = (a, x), определенную
для всех a A и x X(a). Далее мы будем рассматривать только такие модели.
Предположение 1.3. ЛПР имеет цель, которая указывает множество же-
лательных состояний объекта управления для каждого возможного состояния
внешней среды a A.
Определения и обозначения
*
S
(a) для a A – множество желательных состояний объекта управления
при состоянии a внешней среды.
Решение целесообразно, если его реализация переводит объект в жела-
тельное состояние.
*
X
(a) = {x X(a) | (a, x) S
*
(a)} – множество целесообразных решений
при состоянии a внешней среды.
Модель выбора решения имеет вид: для данного a A найти x X
Для описания множества S
*
(a) желательных состояний обычно использу-
*
(a).
ют оценочную функцию.
Определение. Функция h(a, s), определенная на множестве A S, являет-
ся оценочной, если h(a, s) ≥ h(a′, s′) тогда и только тогда, когда при состоянии a
внешней среды и состоянии s объекта управления цель управления достигается
11

не хуже, чем при состоянии a′ внешней среды и состоянии s′ объекта управле-
f (x) → max при условии x X.
(1.1)
F(a, x) → max при условии x X(a).
(1.2)
5
ния.
Предположение 1.4. Оценочная функция h(a, s) определена.
Следствие 1.15. При каждом состоянии a внешней среды желательными
состояниями объекта управления являются те, в которых функция h(a, s) достигает максимума по s на множестве S: S
*
(a) = {s S | h(a, s) ≥ h(a, s′) для всех s′ S}.
От оценки состояний объекта управления легко перейти к оценке реше-
ний.
Определение. Подставив функцию реализации вместо второго аргумента
оценочной функции, получим целевую функцию (ЦФ) F(a, x) = h(a, (a, x)).
Из определений следует, что чем лучше достигается цель, тем больше
значение ЦФ. Другими словами, значение целевой функции F(a, x) является по-
казателем эффективности (качества) решения x при состоянии a внешней
среды.
Следствие 1.25. Множество решений, целесообразных при состоянии a
внешней среды, состоит из точек максимума функции F(a, x) по x на множестве
X(a):
*
X
(a) = {x X(a) | F(a, x) ≥ F(a, x′) для всех x′ X(a)}.
Заметим, что функция реализации, оценочная функция и целевая функция
обычно описываются формулами, но могут быть заданы и другими способами
(таблично или алгоритмически).
Определения и обозначения
Если множество X
*
(a) описано в соответствии со следствием 1.2, его эле-
менты (целесообразные решения) называют оптимальными решениями в состоянии a внешней среды.
Задача максимизации функции f (x) на множестве X записывается следу-
ющим образом:
Решением задачи (1.1) является любой элемент x* X такой, что f (x*) ≥ f (x)
для всех x X.
Если x* – решение задачи (1.1), то f (x*) – оптимальное значение целевой
функции.
При сделанных предположениях для любого a A задача выбора реше-
ния является задачей максимизации:
Определение. Задача (1.2) – это задача параметрической оптимизации
(параметром является состояние внешней среды a A).
Доказательство очевидно.
12

Дополнительная литература к разделу 1
f (x) → max при условии x X Rn.
(2.1)
6
1. Ашманов, С. А. Математические модели и методы в экономике. М.:
Изд-во МГУ, 1980. – С. 7–9.
2. Замков, О. О. Математические методы в экономике / О. О. Замков, А. В. Тол-
стопятенко, Ю. Н. Черемных. – 3-е изд., перераб. – М.: Дело и Сервис, 2001. Гл. 1.
3. Иванилов, Ю. П. Математические модели в экономике / Ю. П. Ивани-
лов, А. В. Лотов. – М.: Наука, 1979. Гл. 1.
4. Розен, В. В. Математические модели принятия решений в экономике. –
М.: Книжный дом «Университет», Высшая школа, 2002 (лекция 1).
5. Хуторецкий, А. Б. Модели исследования операций: введение в предмет,
нелинейное программирование, выпуклое программирование, линейное программирование. – Новосибирск: Изд-во СО РАН, 2006. Гл. 1.
6. Экономико-математические методы и прикладные модели / под ред.
В. В. Федосеева. – М.: ЮНИТИ, 1999. Гл. 1.
2. Задача нелинейного программирования
2.1. Основные понятия
Обозначения
R – множество всех действительных чисел.
Rn – арифметическое пространство размерности n, множество всех векто-
ров-столбцов вида x = (x1, …, xn)T, где xi R для всех i.
Предположение 2.1. В модели конечное число переменных, все они при-
нимают действительные значения.
Широкий класс моделей, удовлетворяющих предположению 2.1, описы-
вает следующее определение.
Определение. Задача математического программирования имеет вид
Пусть в задаче (1.2) n переменных, принимающих действительные значения. Тогда решение x можно представить вектором из Rn и для каждого состояния внешней среды a A задача (1.2) является задачей математического программирования.
Задачу минимизации на множестве X Rn можно привести к виду (2.1),
используя следующее утверждение.
Теорема 2.1 (о замене минимизации максимизацией)6. Точка x0 минимизирует функцию f (x) на множестве М, если и только если она максимизирует
функцию – f (x) на том же множестве.
Теперь конкретизируем описание множества допустимых решений X в
задаче (2.1).
Доказательство поручаем читателю.
13

Предположение 2.2. Множество допустимых решений X есть множество
nm,
nm,
f (x) → max при условиях:
(2.2)
x M Rn,
(2.3)
gi(x) ≤ bi для i
,,11m
(2.4)
gi(x) = bi для i
,,11mm
(2.5)
m,1
.,1 m
j
jj
yx
всех решений конечной системы ограничений: уравнений и (или) нестрогих неравенств.
Задача (2.1), дополненная предположением 2.2, становится задачей нели-
нейного программирования (ЗНП).
Обозначения и определения
Для целых чисел m и n положим
= {m, …, n}, если m ≤ n, и
если m > n.
Задачу нелинейного программирования можно записать следующим образом:
где f и gi для i
для i
– функции из Rn в R, определенные на множестве M, и bi R
В задаче (2.2) – (2.5) m ограничений. Есть ограничения-неравенства (2.4),
если m1 > 0, и ограничения-равенства (2.5), если m1 < m.
Скалярное произведение векторов x = (x1, .., xn)T и y = (y1, .., yn)T:
|x| = x, x
x, y =
1/2
для x Rn – евклидова норма в Rn.
.
Окрестностью радиуса ε > 0 (ε-окрестностью) точки x0 Rn называют
множество
= ,
O(x0, ε) = {x Rn | |x – x0| < ε}.
Функция f(x) на множестве X имеет локальный максимум в точке x0, если
x0 X и существует такая окрестность O точки x0, что f (x0) ≥ f (x) для всех
x X ∩ O.
Точка x0 является точкой глобального максимума функции f(x) на множе-
стве X, если x0 X и f (x0) ≥ f (x) для всех x X.
Точка локального максимума функции f (x) на множестве X является ло-
кальным решением задачи оптимизации
Решениями (оптимальными решениями) задачи (2.2) – (2.5) являются
точки глобальных максимумов функции (2.2) на множестве допустимых решений задачи.
Рис. 2 иллюстрирует введенные понятия. На нем изображен фрагмент
графика функции f (x), x R. Пусть множество X – это отрезок [a, b].
14

Рис. 2. Локальные максимумы и оптимальное решение
n
R
n,1
.M
X
x
y = f (x)
c
b
d
a
0
y
На множестве X функция f (x) имеет локальные максимумы в точках a, c,
d и b. Для каждой из этих точек указано фигурирующее в определении локаль-
ного максимума множество X ∩ O. Глобальный максимум функции f (x) на X
достигается в точке b. В задаче максимизации функции f (x) на X локальные решения соответствуют точкам a, c, d и b. Оптимальное решение задачи находится в b, точке «самого высокого» локального максимума.
Множество M, фигурирующее в определении ЗНП, обычно выбирают так,
чтобы оно имело простую структуру. Это может быть, например, пространство
Rn, положительный ортант
для j
}.
или параллелепипед {x = (x, ..., xn)T | αj ≤ xj ≤ βj
2.2. Достаточные условия разрешимости задачи
Поиск решения задачи нелинейного программирования, как правило, существенно упрощается, если удается предварительно доказать, что искомое
решение существует (то есть, задача разрешима). Сформулируем определения и
результаты, которые обычно помогают установить существование решения.
Относительно множества M Rn все точки пространства можно классифицировать следующим образом.
Определения и обозначения. Пусть M Rn.
Для множества M точка x Rn является внутренней, если какая-то ее
окрестность вложена в M; внешней, если некоторая ее окрестность не пересекается с M; граничной, если в любой ее окрестности есть и точки из M, и точки из
Rn / M.
Множество всех граничных точек множества M называют его границей и
обозначают
Множество M является замкнутым, если M M.
Множество всех внутренних точек множества M обозначают int M.
Множество M является открытым, если M = int M.
Лемма 2.1. Пусть X – множество допустимых решений задачи (2.2) –
(2.5). Если X и его граница вложены в открытое множество M Rn, на котором
функции g1, …, gm непрерывны, то множество X замкнуто.
Доказательство. Пусть x
. Из определения граничной точки следу-
ет, что существует последовательность точек xk из X, сходящаяся к x: lim xk = x.
15

Из непрерывности функции gi на M следует, что lim gi(xk) = gi(x). Для каждого k
1
,1 m
mm ,11
1
,1 m
mm ,11
.
1ki
ii
xa
7
8
выполнены условия gi(xk) ≤ bi при i
к пределу, получим gi(x) ≤ bi при i
и gi(xk) = bi при i
и gi(x) = bi при i
. Переходя
. Следова-
тельно, x X. #
Следующая теорема Вейерштрасса – классический признак разрешимости задачи математического программирования.
Теорема 2.2 (достаточное условие существования максимума)7. Непре-
рывная функция на непустом, замкнутом, ограниченном множестве X Rn достигает максимума.
Достаточные условия замкнутости множества допустимых решений в задаче нелинейного программирования дает лемма 2.1. Сочетая ее с теоремой
Вейерштрасса, получим достаточное условие разрешимости задачи нелинейного программирования.
Следствие 2.1. Если задача (2.2) – (2.5) удовлетворяет условиям леммы
2.1, множество допустимых решений задачи непусто и ограниченно, а целевая
функция непрерывна на этом множестве, то задача разрешима.
При неограниченном множестве допустимых решений часто помогает
следующее обобщение теоремы Вейерштрасса.
Теорема 2.2 (обобщенная теорема Вейерштрасса)8. Пусть функция f (x)
непрерывна на замкнутом множестве X Rn. Если множество Q(α) = {x X |
f (x) ≥ α} непусто и ограниченно для некоторого α R, то f (x) достигает макси-
мума на X.
Если задача (2.2) – (2.5) удовлетворяет условиям леммы 2.1, то в теореме
2.2 требование замкнутости множества X можно опустить (как это сделано в
следствии 2.1 применительно к теореме 2.1).
Очевидно, что глобальный максимум функции f на X является и ее локальным максимумом на этом множестве. Следовательно, если разрешимость
задачи нелинейного программирования доказана, то ее оптимальные решения
можно искать среди локальных решений. Поэтому важны необходимые и (или)
достаточные условия локальных решений.
2.3. Необходимые условия первого порядка
2.3.1. Предварительные сведения: выпуклые множества
Определения
Линейной комбинацией векторов x1, …, xk из Rn с коэффициентами a1, …,
ak из R называют вектор
x =
Никольский С. М. Курс математического анализа. 6-е изд., стереотип.– М.: ФИЗМАТЛИТ, 2001, § 7.11,
теорема 2.
Поляк Б. Т. Введение в оптимизацию. –М.: Наука, 1983. – С. 183 (теорема 4).
16

Вектор x Rn является выпуклой линейной комбинацией или взвешенным
i
ii
xa
k,1
i
i
a
j
jj
yx
9
x
O
средним векторов x1, …, xk из Rn, если
x =
, где ai R+ для i
и
= 1.
Множество M Rn называется выпуклым, если любая выпуклая линейная
комбинация элементов из M принадлежит этому множеству.
Отрезок в Rn с концами x0 и x1 – это множество всех выпуклых линейных
комбинаций векторов x0 и x1 из Rn: [x0, x1] = {(1 – )x0 + x1 | [0, 1]}.
Теорема 2.3 (критерий выпуклости множества)9. Для выпуклости множе-
ства M Rn необходимо и достаточно, чтобы любой отрезок с концами из M
лежал в этом множестве. Рис. 3 иллюстрирует определение выпуклого множества и теорему 2.3.
Рис. 3. Выпуклое (слева) и невыпуклое множества в R
Определения и обозначения
Прямая в Rn, проходящая через точку x0 Rn в направлении v Rn \ {0n}
– это множество точек {x0 + v | R}.
{x0 + v | R+}, где x0 Rn, v Rn \ {0n} – луч в Rn, исходящий из точки x0
в направлении v.
Скалярное произведение векторов x = (x1, .., xn)T и y = (y1, .., yn)T:
x, y =
Гиперплоскость в Rn – это множество {x Rn | a, x = b}, где a Rn \ {0n},
b R.
Замкнутое полупространство в Rn – это множество {x Rn | a, x ≤ b},
где a Rn \ {0n} и b R.
|x| = x, x
1/2
для x Rn – евклидова норма в Rn.
Шар с центром x0 Rn и радиусом r R+ – это множество B(x0, r) = {x Rn |
|x – x0| ≤ r}.
2
.
Необходимость очевидна. Доказательство достаточности: Рокафеллар Р. Выпуклый анализ. – М.: Мир,
1973 (теорема 2.2).
17

Теорема 2.4 (примеры выпуклых множеств)10.
m
i
iii
bxgy
1
)(
1
,1 m
10
11
B
A
(а) Пустое и одноэлементное множества являются выпуклыми подмножествами Rn.
(б) Пространство Rn, замкнутое полупространство, гиперплоскость, прямая, луч, отрезок, шар в Rn – выпуклые множества.
Теорема 2.5 (о пересечении выпуклых множеств). Пересечение выпуклых
множеств является выпуклым множеством.
Заметим, что объединение и теоретико-множественная разность выпуклых множеств не обязательно выпуклы. На рис. 4 изображены выпуклые множества A и B. Видно, что их пересечение (двойная штриховка) выпукло, а объединение (заштрихованная часть прямоугольника) и разность B \ A (только вертикальная штриховка) не выпуклы.
Рис. 4. Теоретико-множественные операции над выпуклыми
множествами
Важный класс выпуклых множеств – многогранные множества.
Определение. Многогранное множество – это совокупность всех реше-
ний конечной системы линейных уравнений и нестрогих линейных неравенств
(пересечение конечного числа гиперплоскостей и замкнутых полупространств).
Теорема 2.6 (о выпуклости многогранного множества)11. Всякое много-
гранное множество выпукло.
2.3.2. Принцип Лагранжа
Определения и обозначения
Функция Лагранжа для задачи (2.2) – (2.5) имеет вид
L(x, y0, y) = y0 f (x)
.
Для задачи P вида (2.2) – (2.5) положим Y(P) = {y = (y1, …, ym) | yi ≥ 0 для
i
}.
ентом функции f (x, y) по x в точке (x0, y0) называют вектор-столбец, составленный из частных производных функции по xj, вычисленных в этой точке:
Пусть x = (x1, …, xn)T Rn, y – произвольный вектор переменных. Гради-
Доказательство оставляем читателю в качестве упражнения.
Доказательство легко следует из определения многогранного множества и теорем 2.4, 2.5.
18

),(00yxf
x
= (
),(00yx
x
f
j
1
,1 m
mm ,11
0
y
i
y
m,1
),,(
0
yyxL
x
, x – x* ≤ 0 для всех x M,
(2.6)
i
y
(gi(x*) – bi) = 0 для i
1
,1 m
.
(2.7)
0
y
1
y
m
y
0
y
i
y
0
y
0
y
0
y
0
y
{0, 1}.
(
i
y
≥ 0 для i
1
,1 m
(2.9)
(
0
y
, y*) ≠ (0, 0m).
(2.10)
12
13
| 1 ≤ j ≤ n)T.
Если функция f, зависит только от x, то ее градиент обозначают f '(x) 12.
Теорема 2.713. Предположим, что в задаче P вида (2.2) – (2.5) множество
M выпукло, функции f и gi для i
для i
непрерывно дифференцируемы в некоторой окрестности x*. Ес-
ли x* – локальное решение задачи, то существуют число
= (
| i
) Y(P), не равные нулю одновременно и такие, что
Определения. Числа
,
ваются множителями Лагранжа; множитель
а
при 1 ≤ i ≤ m – ограничению с номером i.
(
, y*) – вектор множителей Лагранжа.
дифференцируемы в точке x*, функции gi
≥ 0 и вектор y* =
, …,
, фигурирующие в теореме 2.7, назы-
сопоставлен целевой функции,
Заметим, что вектор множителей Лагранжа определен с точностью до положительного множителя: если набор (
2.7, то (
, y*) при > 0 тоже удовлетворяет этим условиям. Поэтому можно
, y*) удовлетворяет условиям теоремы
считать, что
Неравенство (2.6) – это принцип Лагранжа. Его также называют условием
первого порядка.
Определение. Ограничение с номером i задачи (2.2) – (2.5) активно в
точке x, если оно в этой точке выполняется как равенство, gi(x) = bi.
Равенства (2.7) называют условиями дополняющей нежесткости; они
требуют, чтобы множители Лагранжа, соответствующие неактивным ограничениям, были равны нулю (или, эквивалентно, чтобы ограничения, соответствующие положительным множителям Лагранжа, были активны). Условия дополняющей нежесткости записывают только для ограничений-неравенств, потому
что для ограничений-равенств они выполняются.
Обозначение. 0n – нуль-вектор в Rn.
Теорема 2.7 дает необходимые условия локального решения ЗНП. Они
включают: условие первого порядка (2.6), условия дополняющей нежесткости
(2.7), условие нетривиальности (2.8), условие неотрицательности множителей
Лагранжа для ограничений-неравенств
и требование, чтобы не все множители Лагранжа были равны нулю,
Используют также обозначения grad f(x), f(x). Знак читается «набла», что в переводе с греческого
означает «арфа».
Переформулировка теоремы 2.1 книги: Сухарев А. Г. Курс методов оптимизации. – 2-е изд. / А. Г. Сухарев, А. В. Тимохов, В. В. Федоров. – М.: ФИЗМАТЛИТ, 2005. – С. 148.
19

Формулировка теоремы 2.7 включает условия гладкости, наложенные на
),,(
0
yyx
x
L
j
=
0
y
)(
x
x
f
j
–
)(
1
x
x
g
y
m
i
j
i
i
= 0 для всех j
.,1 n
(2.11)
0
y
f '(x*)
m
i
ii
xgy
1
)(
= 0n.
(2.12)
)(
1
xg
)(
xg
m
),,(
0
yyx
x
L
j
= 0 и
),,(
0
yyx
y
L
i
= 0 при i > m1.
(2.13)
i
y
),,(
0
yyx
y
L
i
14
участвующие в задаче функции.
Заметим, что условия (2.9) относятся только к ограничениямнеравенствам, теорема 2.7 не ограничивает по знаку множители Лагранжа, соответствующие ограничениям-равенствам.
2.3.3. Теорема Каруша–Джона
Теорема 2.8 (теорема Каруша–Джона)14. Если для задачи (2.2) – (2.5) вы-
полнены условия гладкости теоремы 2.7 и M = Rn, то неравенство (2.6) эквивалентно условиям:
Теорема Каруша–Джона конкретизирует в виде (2.11) принцип Лагранжа
(условие первого порядка) для задачи (2.2) – (2.5) при M = Rn. В этом случае
условия (2.7) – (2.11), которые называют условиями Каруша–Джона, необходимы для того, чтобы допустимая точка, в которой функции f и gi удовлетворяют
условиям гладкости теоремы 2.7, была локальным решением задачи (2.2) –
(2.5). Другими словами, при поиске локальных решений «подозрительными»
являются допустимые точки, для которых либо нарушены условия гладкости,
либо выполняются условия (2.7) – (2.11).
Используя градиенты, условия (2.11) можно записать одним векторным
уравнением
Определения
Линейная комбинация с ненулевым вектором коэффициентов называется
нетривиальной.
Векторы линейно независимы, если никакая их нетривиальная линейная
комбинация не равна нулю.
Пусть x* – локальное решение задачи (2.2) – (2.5) при M = Rn. Из (2.10) и
(2.12) следует, что векторы f '(x*),
, …,
линейно зависимы.
Легко видеть, что условия (2.11) и ограничения (2.5) эквивалентны, соответственно, уравнениям
Условия дополняющей нежесткости (2.7) можно записать в виде
= 0.
Теорема эквивалентна утверждению 1 леммы 2.1: Сухарев А. Г. Курс методов оптимизации. – 2-е изд. /
А. Г. Сухарев, А. В. Тимохов, В. В. Федоров. – М.: ФИЗМАТЛИТ, 2005. – С. 150. См. также Базара М. Нелинейное программирование. Теория и алгоритмы / М. Базара, К. Шетти. – М.: Мир, 1982. – С. 154.
20
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
