Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Исследование операций и методы оптимизации. Элементы выпуклого и динамического программирования. Учебное пособие
.pdf
плановый период) приведенное потребление. Это один из вариантов задачи
T,1
n,1
1,1 T
f(x) =
T
t
n
k
tk
n
k
tktk
t
xxg
1 11
1
])([
→ max при условиях
(45)
n
k
tk
x
1
≤ K
t–1
для t
T,1
, xtk ≥ 0 для всех t и k,
(46)
Kt = K
t–1
–
n
k
tk
x
1
+
n
k
tktk
xh
1
)(
для t
1,1 T
.
(47)
T,1
n,1
1,1 T
n
k
tk
x
1
*
T
Z
n
k
TkTk
xg
1
)(
n
k
Tk
x
1
1,1 T
*
t
Z
n
k
tktk
xg
1
)(
n
k
tk
x
1
*
1t
Z
n
k
tk
x
1
nk
tktk
xh
1
)(
1
Вентцель1.
Положим x = (xtk | t
дисконтирования, Kt для t
, k
)T. Пусть λ(0, 1) ― годовой коэффициент
― величина инвестиционного фонда в конце
года t (после отчислений года t, но до распределения средств на год t + 1).
Вкладываемые в начале периода t средства дисконтируются с коэффициентом
t–1
λ
, а прибыль, возникающая в конце периода, с коэффициентом λt. Поэтому
математическая модель имеет вид
Чтобы перейти к методу ДП, условимся, что состояние системы в начале
шага t
описывается величиной инвестиционного фонда K
и на этом шаге
t–1
выбирается распределение инвестиционного фонда в году t, то есть вектор
(t)
x
= (xtk | k
)T. В отличие от ранее рассмотренных задач, здесь управление
каждого шага является вектором.
Формула (47) описывает уравнение перехода. Для t
определим мно-
гогранники
Lt = {x
(t)
≥ 0n |
≤ K
t–1
}.
Уравнение Беллмана для шага T
(K
) = max{
T–1
Уравнение Беллмана для шага t
(K
) = max{
t–1
–
+λ
(K
–
t–1
–
| x
(T)
LT}.
+
) | x
(t)
Lt}.
Для решения уравнений Беллмана нужно на каждом шаге выполнить параметрическую оптимизацию в Rn. В таком общем виде трудоемкость задачи
слишком велика. Упростим ее.
См.: Вентцель Е. С. Исследование операций. М.: Сов. радио, 1972. С. 154–162; Гимади А. Х., Глебов Н. И.
Математические модели и методы принятия решений. Новоcибирск: НГУ, 2008 (разд. 1.9); Павлов В. Н. Математическая экономика. Новоcибирск: Изд-во СО РАН, 2005. С. 16.
51

Предположение 13. Весь инвестиционный фонд распределяется.
n
k
tk
x
1
= K
t–1
=
n
k
ktkt
xh
1
,1,1
)(
для t
T,1
.
(48)
n
k
tktk
xh
1
)(
T
t
n
k
tk
t
n
k
tktk
t
xxg
1 1
1
1
])([
T
t
n
k
ktkt
t
n
k
tktk
t
xhxg
1 1
,1,1
1
1
)]()([
1
0 11 1
)()(
T
t
n
k
tktk
t
T
t
n
k
tktk
t
xhxg
1
1 1
)]()([
T
t
n
k
tktktktk
t
xhxg
n
k
TkTk
xg
1
)(
1
1 1
1
)]()([
T
t
n
k
tktktktk
t
xhxg
n
k
TkTk
xg
1
)(
n
k
k
x
1
1
n
k
tk
x
1
n
k
ktkt
xh
1
,1,1
)(
T,2
1,1 T
nk
tk
x
1
*
T
Z
n
k
TkTk
xg
1
)(
*
t
Z
n
k
tktktktk
xhxg
1
)]()([
*
1t
Z
nk
tktk
xh
1
)(
При этом предположении ограничение (46) является равенством. Приме-
няя (47), получим
Отсюда получим фазовое уравнение
Kt =
.
Заметим, что в рассматриваемом случае состояние системы после шага t зависит только от управления x
(t)
.
Используя (48), преобразуем функцию (45):
f(x) =
=
= –K0 +
=
+ λ
=
T
.
Первое слагаемое и множитель λ из целевой функции можно исключить. Задача
принимает вид
F(x, K0) =
Для t
= K0,
=
определим многогранники
+ λ
T–1
для t
→ max при условиях
, xtk ≥ 0 для всех t, k.
Mt = {x
(t)
≥ 0n |
= K
t–1
}.
Уравнение Беллмана для шага T
(K
) = max{
T–1
| x(T)MT}.
Уравнение Беллмана для шага t
(K
) = max{
t–1
+λ
(
) | x(t)Mt}.
Несмотря на упрощение, без дополнительных предположений метод ДП
для этой задачи трудно реализовать из-за необходимости векторной параметрической оптимизации на каждом шаге.
52

3.6.2. Линейная модель
Kt =
n
k
tktk
xh
1
)(
=
n
k
tktk
xb
1
для t
1,1 T
.
(49)
*
T
Z
n
k
TkTk
xg
1
)(
n
k
TkTk
xa
1
n,1
n,1
*
T
Z
1,1 T
*
1t
Z
*
t
Z
n
k
tktktktk
xhxg
1
)]()([
*
1t
Z
n
k
tktk
xb
1
n
k
tktkttktk
xbba
1
1
)(
n
k
tktkttk
xba
1
1
])1([
n,1
*
t
Z
n,1
n,1
1,1 T
В рамках предположения 13 допустим, что все функции gtk и htk линейны:
gtk(x) = atkx, htk(x) = btkx.
Из (44) следует, что atk ≤ btk для всех t, k.
Фазовое уравнение принимает вид
Уравнение Беллмана для шага T
(K
T–1
) = max{
(T)
| x
MT} = max{
| x
(T)
MT}.
Максимум линейной функции достигается в вершине многогранника, а вершинами многогранника Mt являются векторы x
xtk(k) = K
Положим T = max{aTk | k
Допустим, что t
(K
) = max{
t–1
= max{
Положим t = max{atk + (λ
}. Понятно, что
и
| x
– 1)btk | k
t+1
и xtj(k) = 0 для j k.
t–1
(K
) = TK
T–1
(Kt) =
(t)
Mt} = max{
(K
t–1
(t)
(k) = (xtj(k) | j
.
T–1
. Уравнение Беллмана для шага t
t+1Kt
+λ
(
) | x
) такие, что
(t)
Mt} =
(t)
| x
}. Рассуждая, как при t = T, получим
) = tK
t–1
.
Mt}.
Пусть UT = {k
t
. Теперь можем сформулировать результаты параметрической оптими-
| aTk = T)}, Ut = {k
| atk + (λ
– 1)btk = t} для
t+1
зации: на шаге t весь инвестиционный фонд следует произвольным образом
распределить между технологическими способами с номерами из множества Ut.
Применив это правило на шаге 1, найдем оптимальное распределение исходного фонда K0. Затем по формуле (49) вычислим К1 и распределим его по
тому же правилу. Продолжая процедуру, найдем оптимальное решение.
53

3.6.3. Распределение между двумя технологическими способами
*
T
Z
1,1 T
*
t
Z
*
1t
Z
x'(t) = f(t, x(t)), или
)(tx
i
= fi(t, x1(t), …, x
n
n,1
,
(50)
n,1
n,1
Сохраняя предположение 13, рассмотрим случай n = 2 при произвольных
функциях gtk и htk. Из (48) получим xt2 = K
– xt1 и фазовое уравнение
t–1
Kt = ht1(xt1) + ht2(K
Из xt2 ≥ 0 следует, что xt1[0, K
(K
) = max{gT1(xT1) + gT2(K
T–1
Уравнение Беллмана для шага t
(K
) = max{gt1(xt1) + gt2(K
t–1
– xT1) +λ
t–1
]. Уравнение Беллмана для шага T
t–1
– xt1).
t–1
– xT1) | 0 ≤ xT1 ≤ K
T–1
(ht1(xt1) + ht2(K
}.
T–1
– xt1)) | 0 ≤ xt1 ≤ K
t–1
Отсюда видим, что в этом случае на каждом шаге нужно решать одномерную задачу параметрической оптимизации.
Литература
Вентцель Е. С. Исследование операций. М.: Сов. радио, 1972. Разд. 3.
Гимади А. Х., Глебов Н. И. Математические модели и методы принятия
решений. Новосибирск: НГУ, 2008. Гл. 1.
Гончаров Е. Н., Ерзин А. И., Залюбовский В. В. Исследование операций.
Примеры и задачи. Новосибирск: НГУ, 2005. Разд. 2.
Калихман И. Л., Войтенко М. А. Динамическое программирование в примерах и задачах. М.: Высшая школа, 1979. Гл. 1–4.
t–1
}.
4. Оптимальное управление
4.1. Системы дифференциальных уравнений первого порядка
4.1.1. Основные понятия
Определения
Пусть x: R → Rn, f : R
n+1
→ Rn. Нормальная система дифференциальных
уравнений первого порядка, разрешенных относительно производной, имеет вид
где x(t) = (xi(t) | i
ке (a, b) R, f(t,∙x1, …, xn) = (fi(t, x(t)) | i
прерывная в некоторой области D R
)T ― искомая вектор-функция, определенная на промежут-
)T ― заданная вектор-функция, не-
n+1
.
Если вектор-функция f(t, x(t)) не зависит от первого аргумента, f(t, x(t)) =
= g(x(t)), то система дифференциальных уравнений (50) называется автоном-
ной.
54

Решением системы дифференциальных уравнений (50) на интервале (a, b)
n,1
m,1
1
называют такую дифференцируемую на (a,b) вектор-функцию x(t) из R в Rn, которая обращает векторное уравнение (50) в тождество на (a, b).
Если n = 1 и функция x(t) является решением уравнения (50) на интервале
(a, b), то ее график называют интегральной кривой этого уравнения на (a, b).
Пусть t0(a, b), x0 = (x0j | j
)T и (t0, x01, …, x0n)TD. Задачу отыскания
решения x(t) уравнения (50), удовлетворяющего начальному условию x(t0) = x0,
называют задачей Коши.
Значения функций x1(t), …, xn(t) при фиксированном t определяют точку в
Rn. Поэтому решение задачи Коши задает в Rn кривую, проходящую через точку x0 при t = t0. Эту кривую называют траекторией системы (50), а простран-
ство переменных x1(t), …, x1(t) ― фазовым пространством
При n = 1 задача Коши состоит в нахождении интегральной кривой уравнения (50), проходящей через данную точку (t0, x0)D R2.
Определение. Вектор-функция n переменных f(x) = (fi(x) | i
)T является
гладкой в области M Rn, если каждая координатная функция fi(x) = fi(x1, …, xn)
имеет в области M непрерывные частные производные по всем переменным.
Теорема 4.1 (о разрешимости задачи Коши)1. Решение системы дифференциальных уравнений (50) с начальным условием (t0, x0) из области гладкости
вектор-функции f(t, x) существует и единственно (в том смысле, что любые два
решения с таким начальным условием совпадают в некоторой окрестности точки t0).
Определения. Предположим, что задача Коши для системы уравнений
(50) имеет единственное решение для любой точки (t0, x0)D.
Семейство вектор-функций x(t, C) с векторным параметром CRn называется общим решением системы уравнений (50) в области D, если для любой
точки (t0, x0)D выполнены следующие условия:
а) векторное уравнение x(t0, C) = x0 относительно C имеет единственное
решение C0;
б) вектор-функция x(t0, C0) является решением задачи Коши для системы
уравнений (50) с начальным условием x(t0) = x0.
Проинтегрировать систему дифференциальных уравнений (50) означает
найти ее общее решение.
Система (50) линейна, если f(t, x(t)) = A(t)x(t) + F(t), где A(t) ― функциональная матрица (отображение из R в R
Арнольд В. И. Обыкновенные дифференциальные уравнения. Ижевск: Ижевская республиканская ти-
пография, 2000. С. 100, следствие 3).
55
nn
), F(t) ― вектор-функция из R в Rn.

Если A(t) = (aij(t) | i
n,1
n,1
n,1
x'(t) = A(t)x(t) + F(t), или
)(tx
i
=
n
j
jij
txta
1
)()(
+ Fi(t) для всех i
n,1
.
(51)
n,1
n,1
n,1
n,1
n,1
x'(t) = Ax(t), или
)(tx
i
=
n
j
jij
txa
1
)(
для всех i
n,1
.
(52)
1
, j
) и F(t) = (Fi(t) | i
)T, то линейную систему
(50) можно записать следующим образом:
Если система дифференциальных уравнений (51) автономна, то
A(t) = A = (aij | i
, j
)R
nn
, F(t) = b = (bi | i
)TRn и x'(t) = Ax(t) + b,
где b = 0n, если система еще и однородна.
В дальнейшем мы ограничимся рассмотрением разрешенных относительно
производной линейных систем дифференциальных уравнений первого порядка
с постоянными коэффициентами (тогда матрица A(t) не зависит от t и соответствующая однородная система автономна).
4.1.2. Решение линейной однородной автономной системы
Пусть A = (aij | i
, j
)R
nn
. Рассмотрим систему дифференциальных
уравнений вида
Определения и обозначения
K ― поле комплексных чисел.
Kn ― пространство векторов размерности n над полем комплексных чисел.
Если AR
nn
, xKn \ {0n}, λK и Ax = λx, то λ называют собственным чис-
лом (или собственным значением) матрицы A, а x ― собственным вектором
матрицы, соответствующим (или принадлежащим) этому собственному числу.
Определитель матрицы AR
nn
обозначим det(A).
En ― единичная матрица матрица размерности n n (диагональные эле-
менты равны единице, а остальные ― нулю).
Характеристическое уравнение матрицы AR
Теорема 4.21. Множество всех собственных чисел матрицы AR
nn
имеет вид det(A – λEn) = 0.
nn
совпа-
дает с множеством корней ее характеристического уравнения над полем комплексных чисел. Множество действительных собственных чисел матрицы совпадает с множеством действительных корней ее характеристического уравнения.
Беклемишев Д. В. Курс аналитической геометрии и линейной алгебры. 7-е изд. М.: Высш. шк., 1998
(теорема 1 на с. 216).
56

Теорема 4.31. Если собственное число λ матрицы AR
m,1
(A – λEn)β
s+1
= βs.
(53)
z1(t) = eλtβ1, z2(t) = eλt(tβ1 + β2), …, zr(t) = eλt(
)!1(
1
r
t
r
β1 + … +
!2
2
t
β
r–2
+ tβ
r–1
+ βr).
(54)
)1(
α
j
)2(
α
j
m,1
)1(
α
j
)2(
α
j
)1(
α
j
)2(
α
j
1
2
nn
является корнем
кратности k ее характеристического уравнения, то ему соответствуют не более k
линейно независимых собственных векторов матрицы.
Заметим, что линейно независимые собственные векторы матрицы A, соот-
ветствующие ее собственному числу λ, о которых идет речь в теореме 4.3, можно найти как нормальную фундаментальную систему решений2 для однородной
системы линейных алгебраических уравнений (A – λEn) = 0n.
Поскольку det(A – λEn) есть многочлен степени n относительно λ, из основной теоремы алгебры следует, что он имеет ровно n комплексных корней (с
учетом кратности). Все коэффициенты многочлена det(A – λEn) являются действительными числами, поэтому каждому комплексному корню соответствует
сопряженный корень той же кратности.
Чтобы построить общее решение системы (52), нужно найти характеристические числа матрицы A, для каждого определить кратность и найти максимальный набор линейно независимых соответствующих векторов. Возможны
следующие случаи.
Случай 1. Действительное число λ является корнем кратности k характери-
стического многочлена и ему соответствуют m (1 ≤ m ≤ k) линейно независимых собственных векторов αjRn, j
. Эти векторы можно найти из системы
уравнений (A – λEn)α = 0n. Для каждого вектора αj строим жорданову цепочку
линейно независимых векторов βs следующим образом. Полагаем β1 = αj. Если
вектор βs найден, то β
находим из системы уравнений
s+1
Продолжаем процедуру, пока система (53) имеет решение. Сумма длин всех
жордановых цепочек, порожденных векторами αj, равна k. Предположим, что
построена жорданова цепочка β1, …, βr. Ей соответствуют r вектор-функций,
которые являются решениями системы (52):
Случай 2. Комплексное число λ = μ + i является корнем кратности k харак-
теристического многочлена и ему соответствуют m (1 ≤ m ≤ k) линейно независимых собственных векторов. Эти векторы тоже являются комплексными,
αj =
+ i
для j
, где
и
― векторы из Rn. По определению
Aαj = αj. Переходя в этом равенстве к сопряженным числам, обнаружим, что
собственному числу μ – i соответствует собственный вектор
вательно, сопряженному собственному числу тоже соответствуют m линейно
Там же, теорема 3 на с. 219.
Там же, с. 171.
57
– i
. Следо-

независимых собственных векторов. Для вычисления векторов
)1(
α
j
)2(
α
j
)1(
α
j
)2(
α
j
)1(
α
j
)2(
α
j
)1(
α
j
)1(
α
j
)2(
α
j
)2(
α
j
)2(
α
j
)1(
α
j
m,1
nm ,12
x(t, C) =
n
j
jj
tyC
1
)(
, C = (Cj | j
n,1
)T.
(55)
m,1
nm ,12
)2()1(
αα
jj
i
m,1
nm ,12
1
пользуем условие
и
ис-
A(
+ i
) = (μ + i)(
+ i
),
из которого, приравнивая действительные и мнимые части, получаем сиcтему
2n уравнений с 2n неизвестными
A
= μ
–
и A
= μ
+
.
Затем, как в случае 1, для каждого αj строим жорданову цепочку. Векторы этих
цепочек, как и αj, лежат в Cn. Для каждой цепочки по формулам (54) строим
комплекснозначные функции zs, число которых равно длине цепочки. Действительная и мнимая части каждой функции zs являются решениями системы (52).
Таким образом, для двух комплексно-сопряженных собственных чисел кратности k найдем 2k частных решений системы (52).
Предположим, что в результате применения описанной процедуры ко всем
характеристическим числам матрицы A, найдены m комплекснозначных функций zs по случаю 2 и k действительных функций zs по случаю 1. Тогда 2m + k = n.
Полагая y
(t) = Re(zj) и y2j(t) = Im(zj) для j
2j–1
и yj(t) = zj для j
найдем ровно n частных решений yj(t).
Теорема 4.4 (общее решение однородной автономной системы)1. Общее
решение системы (52) является линейной комбинацией частных решений yj(t) с
произвольными константами в качестве коэффициентов:
,
4.1.3. Частный случай: различные собственные числа
Конкретизируем описанную в подразд. 4.1.2 процедуру построения общего
решения системы (52) для важного частного случая, когда все характеристические числа матрицы A различны. По теоремам 4.2 и 4.3 это означает, что характеристическое уравнение имеет n различных корней кратности 1. Для каждого
из них максимальное число линейно независимых собственных векторов равно
единице, и все жордановы цепочки имеют длину 1.
Предположим, что у матрицы A есть m различных пар комплексно-
сопряженных собственных чиcел и n – 2m различных действительных собственных чиcел: μj j для j
и j для j
. Этим собственным числам
соответствуют собственные векторы
для j
Романко В. К. Курс дифференциальных уравнений и вариационного исчисления. 2-е изд. М.: Лаборато-
рия Базовых Знаний, 2001 (теорема 2 на с. 81).
и αj для j
.
58

Собственному вектору αj, j
nm ,12
j
t
j
e α
λ
)2()1(
αα
jj
m,1
)αα(
)2()1(
)ωμ(
jj
i
ie
jj
)ωsinαωcosα(
)2()1(
μ
tte
jjjj
t
j
)ωsinαωcosα(
)1()2(
μ
tte
jjjj
t
j
)ωsinαωcosα(
)2()1(
μ
tte
jjjj
t
j
)ωsinαωcosα(
)1()2(
μ
tte
jjjj
t
j
m
j
jjjj
t
jjjjj
t
j
tteCtteC
jj
1
)1()2(
μ
2
)2()1(
μ
12
)]ωsinαωcosα()ωsinαωcosα([
n
mj
j
t
j
j
eC
12
λ
α
x'(t) = Ax(t) + F(t), где AR
nn
, F(t): R → Rn.
(56)
n,1
n,1
n,1
t
t
dssz
0
)(
1
2
, соответствует частное решение
yj(t) =
a+ib
Но e
системы (52). Паре комплексно-сопряженных собственных векторов
, j
соответствует комплекснозначная функция zj =
= ea(cosb + isinb), поэтому
zj(t) =
+ i
.
Действительная и мнимая части zj(t) дают частные решения системы (52):
y
2j–1
(t) =
и y2j(t) =
.
Запишем общее решение:
x(t) =
+
.
Здесь второе слагаемое описывает экспоненциальный рост, а первое ― колебательный процесс с переменной амплитудой1.
4.1.4. Решение задачи Коши для линейной системы
Рассмотрим задачу Коши для системы линейных дифференциальных урав-
нений с постоянными коэффициентами
.
Соответствующая однородная система x'(t) = Ax(t) автономна, ее общее
решение (55) можно найти способом, описанным в подразд. 4.1.2. Вспомним,
что решения yj(t) системы (52), построенные в плдразд. 4.1.2, являются вектор-
функциями: yj(t) = (yij(t) | i
Обозначение. Положим Y(t) = (yij(t) | i
).
, j
)R
nn
.
Теорема 4.5 (решение задачи Коши для неоднородной системы)2. Решени-
ем задачи Коши для системы (56) с начальным условием x(t0) = x0 является вектор-функция
x(t) = Y(t)[x(t0) +
],
где вектор-функция z(s) является решением системы линейных алгебраических
уравнений Y(s)z(s) = f(s).
Павлов В. Н. Математическая экономика. Новосибирск: Изд-во СО РАН, 2005. С. 143–144.
Хартман Ф. Обыкновенные дифференциальные уравнения. М.: Мир, 1970 (следствие 2.1 на с. 66).
59

4.2. Постановка задачи оптимального управления
n,1
m,1
x'(t) = f(x(t), u(t), t), или
)(tx
j
= fj(x1(t), …, xn(t), u1(t), …, um(t), t)
для всех j
n,1
и t[t0, T].
(57)
В теории оптимального управления объектом моделирования является
управляемая система, состояние которой в каждый момент промежутка времени [t0, T] зависит от управления.
4.2.1. Основные понятия
Определения и обозначения
Замкнутое относительно операций сложения и умножения на число семейство вектор-функций из R в Rn, определенных на некотором множестве M R,
образует линейное пространство функций (функциональное пространство).
Пусть U ― подмножество некоторого функционального пространства.
Отображение
J: U → R, ставящее в соответствие каждой функции uU число J(u)R, называют функционалом.
Задача максимизации (минимизации) функционала J(u), определенного на
подмножестве U функционального пространства, состоит в отыскании хотя бы
одной функции u*U такой, что J(u*) ≥ (≤) J(u) для всех uU.
Если вектор x(t) = (xj(t) | j
)T описывает состояние системы в момент t,
то Rn называют фазовым пространством, а координатные функции вектор-
функции x(t) ― фазовыми координатами или фазовыми переменными.
При t[t0, T] точка фазового пространства x(t) описывает фазовую траек-
торию.
Управление в момент t ― это вектор-функция u(t) = (ui(t) | i
)T; коорди-
натные функции вектор-функции u(t) называют переменными управления.
Множество допустимых управлений ― это подмножество U некоторого
функционального пространства.
Предположение 14. Управление является кусочно-непрерывной векторфункцией.
Заметим, что множество всех кусочно-непрерывных вектор-функций размерности m является функциональным пространством.
Допустим, что связь между переменными управления и фазовыми переменными выражена системой дифференциальных уравнений
Если объект управления в момент t0 находится в начальном состоянии x0 и
выбрано допустимое управление u0(t), то (57) превращается в систему диффе-
ренциальных уравнений относительно вектор-функции x(t). Возникает задача
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
