Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Специальные методы исследования операций и математические модели. Курс лекций

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Рис. 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
.
1ki
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
Вектор xRn является выпуклой линейной комбинацией или взвешенным
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 для всех xM,
(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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]