відмінне від нуля, тобто якщо |
0 0 , то в якості 0 можна взяти будь-яку від’ємну |
константу. |
|
|
|
|
|
|
Отже, для того, щоб визначити оптимальне управління методом множників |
Лагранжа, необхідно: |
|
|
|
|
|
1. |
З рівняння (7.14) знайти управління |
u0 |
як функцію часу t , траєкторії x0 t і |
|
множники Лагранжа , t , тобто u0 |
u0 |
t, x0 |
t , t , . |
2. |
Підставити це управління в рівняння (7.11), (7.12), (7.15)-(7.18). Тоді для |
|
визначення траєкторії |
x0 t |
і вектора |
t |
отримують крайову задачу, яка |
складається з рівнянь (7.12) і рівняння
x t |
x |
, |
x R |
, u R |
|
, |
|
|
|
n |
|
m |
|
0 |
0 |
|
|
|
|
|
граничних умов (7.13), (7.15), (7.16) і співвідношень (7.17), (7.18).
3. Побудувати загальний розв’язок |
x0 t і t системи 2n рівнянь (7.19), |
залежатиме від |
2n |
довільних сталих, а також від множників Лагранжа |
моментів часу t |
0 і |
T . |
|
Наведемо вигляд умов оптимальності для характерних задач управління:
-Задача Майєра без обмежень на управління
|
f t, x t , u t , |
x t0 x0 , |
|
|
x |
t0 |
t T , |
|
x t min ; |
|
|
|
|
|
u |
|
|
|
|
необхідні умови оптимальності : |
|
H |
0, H t, x, u, |
/ |
t f t, x, u ; |
|
|
|
|
|
u |
|
|
|
|
|
|
H x t, x,u, , |
T x |
|
t |
x T . |
-Задача Больца без обмежень на управління
|
x t0 x0 , |
|
x f t, x t , u t , |
t0 t T , |
необхідні умови оптимальності :
H |
0, H t, x, u, |
F t, x, u / t f t, x, u ; |
u |
|
|
|
H x t, x,u, , |
T x x T . |
t |
§7.3. Принцип максимуму Понтрягіна.
Убільшості практичних задач множина управлінь часто має деякі суттєві обмеження. Необхідні умови оптимальності в таких задачах дає принцип максимуму Понтрягіна.
Розглянемо задачі з вільним правим кінцем і заданим часом.
1. Задача Майєра. Розглянемо задачу управління
|
|
|
|
|
t T, x t |
|
x |
|
x f t, x t , u t , |
x |
Rn , u Rm , t |
0 |
0 |
, |
|
|
|
|
|
|
0 |
I u x T min , |
|
|
|
|
|
(7.20) |
u t U . |
|
|
|
|
|
|
|
|
Новим елементом у постановці задачі є останнє обмеження. |
|
Теорема 1. ( Принцип максимуму Понтрягіна ). Нехай u0 t |
- оптимальне управління в |
задачі (7.20), а x0 t |
|
- |
відповідна йому оптимальна траєкторія. Тоді u0 t |
задовольняє умові максимуму |
|
|
|
|
|
max H t, x0 t ,u, t H t, x0 t ,u0 t , t . |
|
|
|
u U |
|
|
|
|
|
|
|
|
Тут гамільтоніан H визначається рівністю |
|
|
|
H t, x t ,u t , t |
/ |
t f t, x t , u t , |
|
|
|
|
|
|
|
|
|
|
|
|
|
а вектор спряжених змінних t є розв’язком задачі |
|
|
|
|
, t , T x x0 T . |
|
|
|
t H x t, x0 t ,u0 |
t |
|
|
|
2.Задача Больца.
Як наслідок з теореми 1 наведемо умови оптимальності в задачі управління системою (7.20)1 з обмеженнями (7.20)3 і з функціоналом, який необхідно
мінімізувати,
T |
|
|
I u F0 |
t, x t , u t dt x T min . |
(7.21) |
t0
Моменти часу t0 , |
T , а також початкова умова |
x t0 x0 R |
n |
задані. |
|
|
|
Теорема 2. Нехай u0 t |
- оптимальне управління в задачі (7.20)1, (7.20)3, (7.21), |
відповідна йому оптимальна траєкторія. Тоді існує такий вектор |
|
задовольняє рівняння |
|
|
|
|
|
t, x0 t ,u0 t , t , t0 t T , |
T x x0 T , |
|
t H x |
|
що виконується умова максимуму
|
max H t, x0 t ,u, t H t, x0 t ,u0 t , t , |
|
(7.23) |
|
u U |
|
|
|
|
|
|
|
|
|
|
де гамільтоніан |
H визначається рівністю |
|
|
|
H t, x t ,u, t |
|
/ |
t f t, x t ,u F0 t, x t ,u . |
|
(7.24) |
|
|
|
|
|
|
|
|
|
|
Зауважимо, що максимум функції |
H t, x0 t ,u, t |
в лівій частині умови (7.23) |
обчислюється по параметру u U |
при фіксованих значеннях решти аргументів |
t, x0 t , t . |
|
|
|
|
|
|
|
|
|
Щоб побудувати оптимальний розв’язок цієї задачі, необхідно: |
1. |
Визначити управління u0 t, t , x0 t |
з рівняння (7.23). |
|
2. |
Підставляємо знайдене управління u |
0 |
в рівності (7.20)1 |
і розв’язуємо отриману |
|
крайову задачу відносно |
x0 t і t . |
|
|
|
|
3. |
Підставляємо знайдені |
|
значення x0 |
t і t у |
вираз |
для u0 . В результаті |
застосування цього методу отримуємо П-управління u0 t .
Зауважимо, що принцип максимуму Понтрягіна є лише необхідною умовою оптимальності, але не достатньою ( хоча для деяких задач він є і достатнім). Іншими словами, траєкторія x t і управління u t можуть задовольняти всім умовам принципу максимуму, але не бути оптимальними. В таких випадках говорять про вироджену задачу
управління.
Принцип максимуму Понтрягіна широко застосовується при дослідженні різних технічних систем управління. Хоча побудова оптимального управління аналітичним шляхом є проблематичним, тим не менш в ряді деяких цікавих і важливих випадків його вдається довести до кінця. В більш складних випадках для пошуку і дослідження оптимальних управлінь використовують наближені і числові методи.
§ 7.4. Метод динамічного програмування.
Наведені у попередніх параграфах умови оптимальності базувались на дослідженні окремих траєкторій. Основою методу динамічного програмування є вивчення всієї множи-
ни оптимальних траєкторій. Іншими словами, це є метод оптимізації, пристосований до операцій, в яких процес прийняття рішень може бути розбитий на окремі етапи ( кроки ).
Принцип динамічного програмування:
Оптимальне управління має ту властивість, що яким би не був початковий стан і початкове управління, наступне управління повинне бути оптимальним по відношенню до стану, який отримується в результаті дії початкового управління.
Розглянемо задачу управління:
u U , t |
0 |
t T , x t |
x |
0 |
|
0 |
|
t, x t , u dt min .
u U
(7.25) відбувається на відрізку
|
|
|
, u , |
s t T, x s x |
|
|
x f t, x t |
(7.27) |
Для системи (7.27) розглянемо задачу про мінімізацію функціонала |
|
|
x T |
|
T |
F0 t, x t , u dt min |
|
|
|
|
(7.28) |
|
|
|
u U |
|
|
|
|
s |
|
|
|
|
|
|
|
|
|
( При s t0 і x x0 |
|
задача (7.27)-(7.28) співпадає з задачею (7.25)-(7.26) ). Ясно, |
що |
мінімальне значення функціонала (7.28) залежить від початкового |
моменту s |
і |
початкового положення |
x . |
|
|
|
Означення. Функція, що дорівнює мінімуму функціонала (7.28) на траєкторіях системи
(7.27) по всіх можливих допустимих управліннях, тобто
|
|
T |
|
V s, x min |
x T |
|
F t, x t , u |
u t U |
|
|
|
s |
|
|
|
Візьмемо тепер довільні моменти часу
сформульованого вище принципу динамічного програмування маємо
|
|
|
|
|
T |
|
|
|
|
|
|
|
|
|
|
|
|
V s, x min x T |
|
|
F t, x t ,u dt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u t U |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
s |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
T |
|
|
|
|
min |
|
|
min |
|
x T |
|
F t, x t ,u dt |
|
F t, x t ,u dt |
|
|
|
u t U ,s t u t U , t T |
|
|
|
|
|
|
|
|
|
|
|
|
s |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
F t, x t , u dt |
|
|
|
|
T |
|
|
|
|
|
min |
|
|
min |
|
F t, x t , u dt x T |
|
u t U ,s t |
|
|
|
|
u t U , t T |
|
|
|
|
|
|
s |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
min |
|
|
F t, x t , u dt V , x . |
|
|
|
|
|
(7.30) |
|
u t U ,s t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
s |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Зауважимо, що в рівності (7.30) через |
x t позначено розв’язок задачі (7.27). При цьому |
вибір управління u t , s t |
|
впливає як на величину інтеграла в правій частині (7.30), |
так і на значення аргументу x |
функції V , x . Перепишемо рівняння (7.30) у вигляді |
|
|
|
min |
|
F t, x t , u dt V , x V s, x |
|
|
u t U ,s t |
|
|
s |
Припустимо, що функція Беллмана |
V t, x неперервно диференційована. Тоді для малих |
s |
з точністю до малих більш високого порядку малості відносно s отримуємо |
|
|
|
|
|
|
|
|
|
|
|
V , x V s, x V s, x s . |
(7.32) |
|
|
|
|
|
|
|
|
|
|
Тут V s, x , повна похідна функції V |
вздовж траєкторій системи (7.26), дорівнює |
|
|
|
s, x Vx |
|
|
|
|
|
|
V s, x Vs |
s, x f t, x,u , |
(7.33) |
|
Vs s, x |
V s, x |
, |
Vx s, x |
V s, x |
. |
|
|
s |
|
x |
|
|
|
|
|
|
|
|
Поділимо обидві частини рівності (7.31) на |
s |
і перейдемо до границі при s 0 . |
Тоді, враховуючи рівність (7.32), отримаємо рівняння, яке називається рівнянням
Беллмана:
min Vt |
t, x Vx s, x f t, x,u F t, x,u 0 |
, |
(7.34) |
u U |
|
|
|
|
|
|
|
|
t |
0 |
t T , x R n . |
|
|
|
|
|
|
|
|
|
Згідно з означенням функції Беллмана (7.29), маємо |
|
|
V T , x x , x R |
n |
. |
|
(7.35) |
|
|
Отже, якщо розв’язок вихідної задачі оптимального управління (7.26), (7.27) існує, а
функція Беллмана |
V t, x |
неперервно диференційована, то справедливі співвідношення |
(7.34), (7.35). |
|
|
Побудова С-управління за допомогою методу динамічного програмування.
Якщо існує управління |
u , що реалізує мінімум виразу (7.34), то воно є функцією |
часу t і фазової координати |
x , тобто u u t, x . Таким чином, за допомогою методу |
динамічного програмування управління може бути побудоване у вигляді С-управління.
Але при цьому треба мати на увазі:
1.В заданому класі допустимих управлінь не завжди існує таке, при якому досягається мінімум в (7.29).
2. Розв’язок рівняння Беллмана не завжди співпадає з відповідною функцією
Беллмана.
3.З того, що функція Беллмана задовольняє рівняння Беллмана, ще не випливає, що управління, при якому досягається мінімум (7.34), є оптимальним. Зокрема, при такому управлінні може не існувати розв’язку рівнянь руху (7.25).
4. |
Розв’язок задачі Коші (7.34), (7.35) може виявитися не єдиним. В цьому випадку |
|
необхідні додаткові дослідження, що дозволяють встановити, який з цих розв’язків |
|
є функцією Беллмана вихідної задачі оптимального управління. |
|
|
|
|
Разом з тим, метод динамічного програмування приводить до розв’язку задачі |
|
(7.25), (7.27). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Теорема 2. Нехай існує єдиний неперервно диференційований розв’язок |
V0 |
задачі (7.34), |
|
(7.35) і існує допустиме управління u0 t, x таке, що |
|
|
|
|
|
|
|
|
/ |
|
V |
0 |
t, x |
|
|
/ |
|
V |
0 |
t, x |
|
|
|
|
|
min |
|
f |
t, x, u |
|
|
|
F |
t, x, u f |
t, x, u0 |
|
|
F t, x, u |
|
. |
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
x |
|
|
|
|
|
u U |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Тоді С-управління |
u0 t, x |
є оптимальним, а відповідна функція |
V0 |
t, x . |
|
Для того, щоб побудувати С-управління методом динамічного програмування |
необхідно: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. |
Знайти управління u u t, x,V , що мінімізує ліву частину рівняння (7.34). |
2.Підставляючи це управління в (7.34), отримати нелінійне рівняння в частинних похідних відносно функції V t, x . Крайова умова має вигляд (7.35).
3. |
Розв’язати отриману задачу і визначити V t, x . |
4. |
Підставити знайдене значення V t, x у вираз u u t, x,V , визначений в пункті 1, і |
|
знайти оптимальне С-управління u t, x u t, x,V t, x . |
Тоді на основі теореми 2 можна стверджувати, що якщо розв’язок |
V t, x рівняння |
Беллмана єдиний, а знайдене управління |
u t, x допустиме, то u t, x |
- оптимальне С- |
управління, а V t, x - функція Беллмана. |
|
|
ЛІ Т Е Р А Т У Р А
1.1.И.Л.Акулич. Математическое программирование в примерах и задачах. –
М.: Высшая школа, 1986.
2.С.А.Ашманов, А.В.Тимохов. Теория оптимизации в задачах и упражнениях.
–М.: Наука, 1991.
3.Б.Банди. Основи линейного программирования.– М.: Радио и связь, 1989.
4.Бейко И.В. и др. Методы и алгоритмы решения задач оптимизации.- К.:
Вища школа, 1983.
5.Беллман Р. Динамическое программирование. – М.: ИЛ, 1960.
6.Гетманцев В.Д. Лінійна алгебра і лінійне програмування. – Київ: Либідь,
2001.
7.Дегтярев Ю.И. Методы оптимизации. – М.: Наука, 1980.
8.Калихман И.Л. Линейная алгебра и программирование.– М.:ВШ, 1967.
9.Карманов В.Г. Математическое моделирование. – М.: Наука, 1975.
10.Сухарев А.И. и др. Методы оптимизации. – М.: Наука, 1988.
11.Худий М.І. Методи оптимізації. Лінійне програмування. – Львів, 1977.
12.Худий М.І., Томецький М.І. Методичні вказівки до лабораторних робіт з курсу “Методи оптимізації”. – Львів, ЛПІ, 1986.
13.Цегелик Г.Г. Лінійне програмування. - Львів: Світ, 1995.
106