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

Оптимальное управление в технических системах. Практикум. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
171
7-
æ
ç
è
ö
÷
ø
Given
,4,
,4,
´
÷ ÷ ÷
3-
´
´
÷
3-
C2
ç ç
=
ç ç
6.43- 10
0.878
4.056-
1.155 10
8.709- 10
Запишем выражение для функции у по двум участкам
Y1 t t1,( ) y t C1, a,( ) t t1£if
:=
y t t1- C2, b,( ) t t1>if
Построим график у для двух интервалов времени (рис. 5.15):
2
Y1 t t1,( )
1
0
0 50 100 150 200 250
t
Рис. 5.15. Оптимальная траектория движения на первом и втором
интервалах
3. Для третьего участка вновь принимаем u=a и вектор констант С3= С2. Точку переключения также задаем прибли- женно по графику t2=210:
C3C2:= dt2 t2t1-:=
y dt2 C2, b,( )y0C3, a,( ) dy dt2 C2, 1,( ) dy 0 C3, 1,( ) dy dt2 C2, 2,( ) dy 0 C3, 2,( ) dy dt2 C2, 3,( ) dy 0 C3, 3,( )
dy dt2 C2
( ) dy 0 C3
C3 Find C3():=
( )
172
7-
æ
ç
è
ö
÷
ø
215
:=
Given
)
)
:=
´
0.272-
÷ ÷ ÷
3-
´
´
÷
3-
C3
=
6.43 10
ç ç ç
1.155- 10
ç
8.65 10
1.442
Выражение для функции у по трем участкам:
Y2 t t1, t2,( ) Y1 t t1,( ) t t2£if
:=
y t t2- C3, a,( ) t t2>if
График функции у для трех интервалов времени дан на
рис. 5.16.
2
Y2 t t1, t2,( )
Рис. 5.16. Оптимальная траектория движения на первом, втором и
1
0
0 50 100 150 200 250
третьем интервалах
.
t
4. Для четвертого участка u=b и вектор констант С4= С3. Точку переключения задаем приближенно по графику t3=215:
C4C3:= t3
y 0 C4, b,( ) y dt3 C3, a,( )
dy 0 C4, 1, ( ) dy dt3 C3, 1, (
dy 0 C4, 2,( ) dy dt3 C3, 2,( )
dy 0 C4, 3, ( ) dy dt3 C3, 3, (
dy 0 C4, 4,( ) dy dt3 C3, 4,( )
dt3 t3t2-:=
C4 Find C4()
173
7-
æ
ç
è
ö
÷
ø
´
÷ ÷ ÷
3-
´
´
÷
3-
C4
ç ç
=
ç ç
6.43- 10
0.652
3.877-
1.147 10
7.999- 10
Выражение для функции у по четырем участкам
Y3 t t1, t2, t3,( ) Y2 t t1, t2,( ) t t3£if
:=
y t t3- C4, b,( ) t t3>if
График функции у для четырех первых участков дан на
рис. 5.17.
2
Y3 t t1, t2, t3,( )
Рис. 5.17. Оптимальная траектория движения на четырех первых
1
0
0 50 100 150 200 250
t
интервалах
5. Конечный участок: u=a, t4=218, tk=220, C5=C4.
Уточняем окончательно все точки переключения, конеч-
ную точку, константы для всех участков, исключая первый:
174
Given
y 0 C2, b,( ) y t1 C1, a,( )
,1,
,1,
,2,
,2,
,3,
,3,
,4,
,4,
,
,
,1,
,1,
,2,
,2,
0
0
0
0
0
ç
è
÷
ø
dy 0 C2
( ) dy t1 C1
( ) dy 0 C2
( ) dy t1 C1
( )
dy 0 C2, 3,( ) dy t1 C1, 3,( ) dy 0 C2, 4,( ) dy t1 C1, 4,( )
y t2 t1- C2, b,( )y0C3, a,( )
dy t2 t1- C2, 1,( ) dy 0 C3, 1,( ) dy t2 t1- C2, 2,( ) dy 0 C3, 2,( )
dy t2 t1-C2
( ) dy 0 C3
y 0 C4,b
( ) y t3 t2-C3,a
( )
( ) dy t2 t1-C2
( ) dy 0 C3
( )
dy 0 C4, 1,( ) dy t3 t2- C3, 1,( ) dy 0 C4, 2,( ) dy t3 t2- C3, 2,( ) dy 0 C4, 3,( ) dy t3 t2- C3, 3,( ) dy 0 C4, 4,( ) dy t3 t2- C3, 4,( )
y t4 t3- C4, b,( )y0C5, a,( )
dy t4 t3-C4
( ) dy 0 C5
( ) dy t4 t3-C4
( ) dy 0 C5
( )
dy t4 t3- C4, 3,( ) dy 0 C5, 3,( ) dy t4 t3- C4, 4,( ) dy 0 C5, 4,( )
dy tk t4- C5, 3,( ) y tk t4- C5, a,( ) dy tk t4- C5, 1,( )
dy tk t4- C5, 2,( )
dy tk t4- C5, 4,( )
t1t2< t2t3< t3t4< t4tk< t10>
t1
æ
ö
t2
ç
÷
ç
÷
t3
ç
÷
t4
ç
÷
tk C2 C3 C4 C5
Find t1 t2, t3, t4, tk, C2, C3, C4, C5,( ):=
÷ ÷ ÷ ÷ ÷
ç ç ç ç ç
ERR 9.637 104-´=
175
2.594 10
æ
ç
è
ö
÷
ø
=
´
6-
0.25-
1.346
4.748- 10
´
0.025
÷ ÷ ÷
3-
÷
C5
ç ç
=
ç ç
Результаты определения конечных значений функции и
производных, а также точки переключения:
y tk t4- C5, a,( ) 5.379 105-´=
dy tk t4- C5, 1,( ) 4.237- 104-´= t2 216.225= dy tk t4- C5, 2,( ) 5.311- 105-´= t3 216.225
dy tk t4- C5, 3,( ) 7.374- 105-´=
dy tk t4- C5, 4, ( ) 4.113 105-´=
t1 216.192=
t4 216.372=
tk 223.561=
Описание функций управления u и координаты у:
UUt() a t t1£if
:=
b t t2£ t t1>Ùif a t t3£ t t2>Ùif b t t4£ t t3>Ùif a t t4>if
YYt() y t C1, a,( ) t t1£if
:=
y t t1- C2, b,( ) t t2£ t t1>Ùif y t t2- C3, a,( ) t t3£ t t2>Ùif y t t3- C4, b,( ) t t4£ t t3>Ùif y t t4- C5, a,( ) t t4>if
Оптимальная траектория и оптимальное управление
представлены на рис. 5.18 и 5.19.
176
2
YYt()
1
0
0 50 100 150 200 250
t
Рис. 5.18. Оптимальная траектория движения
0
UUt()
10
210 212 214 216 218 220
t
Рис. 5.19. Оптимальное управление
Динамическое программирование
Метод был разработан Ричардом Беллманом для задач, ко­торые удовлетворяют принципу оптимальности, сформулиро­ванным следующим образом. Оптимальное поведение обладает тем свойством, что каковы бы ни были первоначальные состоя­ния и решения в первоначальный момент времени – последую­щие решения должны составлять оптимальное поведение отно­сительно состояния, получающегося в результате первоначаль­ного решения. Для динамических систем, описываемых диффе-
177
ренциальными уравнениями, состояние характеризуется набо-
(
)
¢
D
+
D
ром значений координат в каждый момент времени
и поведе-
t
ние такой системы определяется изменением координат во вре­мени. Решением является управляющее воздействие на объект. При интегральных критериях система управления удовлетворя­ет принципу оптимальности Беллмана.
Постановка задачи. Для системы управления, описанной
системой уравнений:
uxFx
,=
, n...1i = ,
ii
найти оптимальное управление и оптимальную траекторию, удовлетворяющих критерию:
t
k
() ()( ) ()
0kk0
ò
t
н
,
mindtu,xFt,txgu,xJ
®+=
при переводе объекта из начального состояния x(t0)=x0 в конеч­ное x(tk)=0 за произвольное время
tt -
.
0k
Обозначим минимальное значение критерия по управле-
нию для произвольной начальной точки t через функцию S, на- зываемую функцией Беллмана
t
k
+=
ò
t
Введем точку личину
ì ï
í
min
ï
Î
Uu
î
, отстоящую от исходной на малую ве-
tt
, и запишем для нее функцию Беллмана
t
ì
min
Î
ï í
ï
Uu
î
D+D+
Интеграл в правой части функции Беллмана
+=
ü ï
.
dt
)t,u,x(0F)kt),kt(x(0g))t(x,t(S
ý ï
þ
t
k
ò
t
ü ï
.
dt
)t,u,x(0F)kt),kt(x(0g))tt(x,tt(S
ý ï
þ
))t(x,t(S
можно представить в виде суммы
t
k
++=
òò
t
ü ï
dtdt
)t,u,x(0F)t,u,x(0F)kt),kt(x(0g))t(x,t(S
ý ï
þ
min
Î
D+
ì ï
í ï
Uu
î
tt
t
Как видно, сумма первого и последнего слагаемого при оптимальном управлении является функцией Беллмана для на-
178
чального времени )tt(
D
+
D
+
®
D
[
]
{
}
[
]
{
}
D
®
D
¢
K
t
t
t
, а интеграл от t до
при
tt
можно заменить приблизительно на произведение
.
))t(x,t(S D+D+D+
=
min
Uu
Î
t)t,u,x(0F)tt(x),tt(S
Поскольку ))t(x,t(S не зависит от u, то эту функцию мож­но внести под знак минимума:
.
0t)t,u,x(0F))t(x,t(S)tt(x),tt(S
min
Uu
Î
Разделив все слагаемые на
dS
получим: 0)t,u,x(F
0t
min
Î
ì
+
í
Uu
î
0
dt
и переходя к пределу при
t
ü
=
.
ý þ
=D+-D+D+
Распишем полную производную функции Беллмана
min
Î
n
ì
ï í
Uu
ï
î
å
=
S
x
i
1i
dx
S
i
+
+
dt
0
t
ü
ï
0)t,u,x(F
=
.
ý ï
þ
Заменим производные от координат х, используя уравне-
ния объекта
)t,u,x(Fxii=
, n1i
= ,
ì
ï í
0
Uu
Î
ï
î
n
S
)t,u,x(Fmin
+
å
x
i
1i
=
ü
S
ï
)u,x(F
-=
ý
i
ï
þ
.
t
Полученное уравнение носит название уравнения Беллмана.
Если
Беллмана также явно не зависит от
F в явном виде не зависит от
i
. Тогда
, то и функция
S
и уравнение
0
=
Беллмана будет иметь вид:
ì
ï í
0
Uu
Î
ï
î
n
S
)t,u,x(Fmin
+
å
x
i
1i
=
ü
ï
.0)u,x(F
=
ý
i
ï
þ
0t
t)t,u,x(0F D
.
Решение задач оптимального управления методом
динамического программирования
Алгоритм решения задачи
1. Составляем уравнение Беллмана, формально записывая
функцию
.
S
179
2. Находим оптимальное управление, зависящее отS.
¢
¢
3. Подставляем выражение для оптимального управления
в уравнение Беллмана, решаем его и находиv функциюS.
4. Найденные выражения для
подставляем в формулу
S
оптимального управления.
Пример 6. Для объекта, описываемого дифференциаль-
ным уравнением
,
kuxAx =¢×+
найти оптимальное управление
)t(x
, обеспечивающих минимум критерия
t
k
ò
0
22
b+l=
dt)ux(I
при переводе объекта из начального
0)t('x)t(x
ное состояние
==
за произвольное время tk.
kk
)t(u
и траекторию движения
x)0(x =
, 0)0('x = в конеч-
0
Решение. Сводим уравнение объекта к системе уравнений
Коши, приняв
¢
=
ì í
¢
î
,xx
21
x)t(x =
:
1
-=
.Axkux
22
Критерий и граничные условия при этих обозначениях
примут вид:
t
k
ò
0
x)0(x =
22
b+l=
1
,
01
dt)ux(I
x)0(x =
,
02
0)t(x)t(x
==
k2k1
1. Составляем уравнение Беллмана
dS
min
u
ì
F
í î
ü
0
=
+
ý
0
dt
þ
или
n
где
ì
ï
F
í
0
min
ï
u
î
F
- подынтегральное выражение критерия; S – функция
0
+
å
1i
=
Беллмана, зависящая от координат объекта
ü
dx
S
ï
i
0
=
,
ý
dt
x
ï
i
þ
x .
i
.
180
Производные от координат в уравнении Беллмана заме-
F
ним правыми частями уравнений Коши, описывающих объект:
min
u
ì
2
í
1
î
S
2
ux
+b+l
x
1
S
+
( )
x
2
x
2
ü
0Axku
-
=
.
ý
2
þ
Обозначим
S
22
ux -
1
x
+b+l=F
x
1
S
( )
+
2
x
2
Axku
.
2
2. Найдем управление, обеспечивающее экстремум функ-
ции Ф. Из условия
0u=
находим
S
u2
+b
0k
=
x
2
.
Оптимальное управление выразим из последнего уравне-
ния и отметим символом *
*u
.
b
2kx
2
S
-=
3. Подставляем выражение для оптимального управления
в уравнение Беллмана, решаем его и находим функцию S :
2
k
2
x
b+l
1
2
4
b
2
ö
æ
S
¶ ç ç
x
2
è
S
¶ ÷ ÷ ø
x
+
-
2
x
1
2
2
ö
æ ç
ç
è
k
S
÷ ÷
x
2
b
2
ø
S
-
x
2
0Ax
=
.
2
Получили нелинейное уравнение в частных производных
с неизвестной функцией
. Этому уравнению удовлетворяет, в
S
частности, квадратичная форма, поэтому его решение ищем в виде
2
xaxxaxaS ++= ,
2222112
где
2
111
a
a
12
a
,
- неизвестные коэффициенты.
22
11
,
Подставим решение в уравнение Беллмана:
2
k
2
x
-l
1
4
b
( )
2
222112
0xxaxa2A
=+-
2112222
x)xaxa2()xa2xa(
-+++
2212111
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]