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

ОиАС-5

.pdf
Скачиваний:
16
Добавлен:
26.03.2016
Размер:
260.87 Кб
Скачать

В общем случае, когда n>2, m>1, это уравнение имеет вид

 

v[x

, , x ,t]

 

 

 

ϕ

[x , , x

,u

, ,u

 

]+

 

 

 

=

min

0

 

1

n

 

1

 

m

 

 

 

 

1

n

 

n

 

, xn ,t]ϕi

[x1 , , xn

 

,t]

 

 

 

t

 

u1

, ,um U +

v[x1

,

 

,u1 , ,um

(2.3.7)

 

 

 

 

 

 

 

i=1

 

xi

 

 

 

 

 

 

 

Если известно, что оптимальные управления находятся внутри множества U, либо если ограничения подобного рода вообще отсутствуют, то уравнение (2.3.7) можно представить как совокупность уравнений в частных производных:

v =ϕ0 [x1 , , xn ,u1 , ,um

]+v

ϕi [x1 , , xn ,u1 , ,um ,t]

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2.3.8)

 

t

 

 

 

 

 

 

i=1

x

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

ϕ0 [x1 , , xn ,u1 , ,um ]

+n

v

 

ϕi [x1 , , xn ,u1 , ,um ,t]

= 0 (k =

 

) (2.3.9)

 

1,m

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

i=1 x

 

 

 

u

k

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

Таким образом, для решения задачи об оптимальной стабилизации необходимо решить специфическое уравнение в частных производных (2.3.7) либо систему из m+1 уравнений в частных производных (2.3.8), (2.3.9), при краевых условиях

v[x1(t1), …, xn(t1), t1]=0.

(2.3.10)

11

В результате решения этих уравнений получим искомые оптимальные управления

uk= uk(x1, …, xn, t), где k=l,…, m, и функцию v(x1, …, xn, t), которая при xi= xi0, t=t0 является наименьшим значением функционала оптимизации

v(x10 , , xn0 ,t0 )= t1

ϕ0 [x1 , , xn ,u1 , ,um ]dt

(2.3.11)

t0

 

 

если выполняются краевые условия (2.3.10). Действительно, пусть оптимальные управления определены. Тогда, вдоль оптимальных траекторий и управлений, уравнение (2.3.7) примет вид

v(x1 , , xn ,t)

=ϕ0 [x1 , , xn ,u1 , ,um ]+n

v(x1 , , xn ,t)

ϕi [x1 , , xn ,u1 , ,um ,t]

 

 

 

xi

 

t

 

 

 

 

 

 

i=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

или

 

 

 

 

 

 

 

 

 

 

v(x1 , , xn ,t)

 

+n

v(x1 , , xn ,t)

ϕi [x1 , , xn ,u1 , ,um ,t]= −ϕ0 [x1 , , xn ,u1 , ,um ]

(2.3.12)

t

 

 

i=1

 

xi

 

 

 

 

Очевидно, что это уравнение можно записать в более компактной форме

 

 

 

 

 

 

 

dv(x1 , , xn ,t)

 

= −ϕ [x

, , x ,u , ,u ]

(2.3.12')

 

 

 

 

 

 

dt

 

 

 

 

 

 

0 1

n 1

m

 

 

 

 

 

 

 

 

 

 

 

Интегрируя его в пределах от t0 до t1 заключаем, что

 

 

 

v(x1 (t1 ), , xn (t1 ),t1 )v(x10 , , xn0 ,t0 )= −t1 ϕ0 [x1 , , xn ,u1 , ,um ]dt

(2.3.13)

 

 

 

 

 

 

 

 

 

 

t0

 

 

Учитывая краевые условия (2.3.10), получим (2.3.11).

12

При t→∞ на оптимальные управления накладывается дополнительное требование асимптотической устойчивости. Если функции φ0>0 и v[x1, ..., xn]>0 для всех

x1, ..., xn, то система (2.3.1), (2.3.2) асимптотически устойчива.

Действительно, уравнение (2.3.12) является уравнением второго метода А.М.Ляпунова и поэтому для асимптотической устойчивости оптимальной системы достаточно положительно-определенной функции v[x1, ..., xn], полная производная которой в силу дифференциальных уравнений (2.3.1) отрицательноопределенна.

Таким образом, если φ0(x1, ..., xn, u1, ..., um, t) > 0 и t1→∞, то функция v[x1, ..., xn] в уравнениях метода динамического программирования оказывается функцией

Ляпунова, поэтому этот метод иногда называют методом Ляпунова – Беллмана. Заметим также, что для асимптотически устойчивой оптимальной системы краевое условие (2.3.10) выполняется автоматически.

Отметим в заключение, что если функционал оптимизации (2.3.3) имеет более общий вид

J = t1

ϕ0 [x1 , , xn ,u1 , ,um ]dt +v0 (x1 (t1 ), , xn (t1 ),t1 )

(2.3.14)

t0

 

 

то краевое условие (2.3.10) записывается как

 

13

v(x1 (t1 ), , xn (t1 ),t1 )= v0 (x1 (t1 ), , xn (t1 ),t1 )

(2.3.15)

Численное решение задачи об оптимальном стабилизирующем управлении

14

Допустим, что удалось найти в явной форме управление, при котором выражение в фигурных скобках, входящее в (2.3.7), достигает минимума:

u=u(x, t, vx),

(2.3.16)

vx – вектор с компонентами ∂v/∂х1, ..., ∂v/∂хn.

Подставляя это выражение в (2.3.7), получим нелинейное уравнение в частных производных первого порядка

v

=ϕ

[x,u(x,t, v

 

)]+n

v

ϕ

[x,u(x,t, v

 

),t]

(2.3.17)

t

 

x

 

 

0

 

x

i=1

i

 

x

 

 

 

 

 

 

 

i

 

 

 

 

 

Численное решение этого уравнения при краевых условиях (2.3.15) представляет собой более трудную задачу, чем решение краевой задачи принципа максимума, так как там речь шла о краевой задаче для обыкновенных дифференциальных уравнений, а здесь о краевой задаче для уравнений в частных производных.

Это увеличение трудностей численного решения естественно, так как на основе метода динамического программирования решается более сложная задача синтеза управлений, тогда как принцип максимума доставляет управления как функции времени.

Эти функции получаются и применением метода динамического программирования к задаче об оптимальном программном управлении, если в управления uk=rk(x1(t), …, xn(t),t) (k=l, …, m) подставить вместо xi(t) (i=1, …, n) оптимальные траектории.

Для решения уравнения (2.3.17) применяют известные методы решения уравнений в частных производных (разностные методы, метод характеристик, метод прямых и т. п.), однако имеется специальный метод приближенного численного решения этого уравнения. Этот метод состоит в замене дифференциальных уравнений (2.3.1) системой дифференциально-разностных уравнений, а интеграла (2.3.3) – суммой и в использовании для нахождения оптимального дискретного управления в такой системе на основе функционального уравнения для дискретных систем. Собственно, исторически такое функциональное уравнение и было впервые получено при синтезе оптимального управления именно дискретных систем.

15

Пример 2.3.1. Рассмотрим объект управления, возмущенное движение которого описывается в первом приближении уравнениями

x1 = x2

(2.3.18)

x2

= −x1 +u

 

Требуется найти управление u = r(x1, x2, t), такое, чтобы функционал

 

J = t1 (q11 x12

+u2 )dt +α1 x12 (t1 )+α2 x22 (t1 )

(2.3.19)

t0

(где q11, α1, α2 – заданные числа) принимал наименьшее значение при движениях объекта, возбужденных произвольными начальными отклонениями. На искомое управление наложено ограничение

|u(t)| < 1.

(2.3.20)

Переходя к исследованию этой задачи, запишем функциональное уравнение метода динамического программирования:

 

v[x

, x

,t]

 

 

 

v[x

, x

,t]

 

 

v[x

, x

,t]

 

 

 

2

 

2

 

 

1

2

 

=

min

1

2

 

 

x2

+

 

1

2

 

(x1

+u)+q11 x1

+u

 

 

(2.3.21)

t

 

u

 

x1

 

 

 

x2

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и краевые условия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

v[x

(t ), x

(t

),t

]=α x2 (t

)+α

2

x2

(t )

 

 

 

(2.3.22)

 

 

 

 

 

 

 

1

1

2

1

 

1

 

1

1

1

 

 

2

1

 

 

 

 

16

Выражение в фигурных скобках достигает минимума, когда

 

 

1

v[x1 , x2 ,t],

 

если

 

1 v[x1 , x2 ,t]

 

<1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

x2

 

 

 

2

 

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если

1 v[x1 , x2 ,t]>1;

 

(2.3.23)

 

u = 1,

 

 

 

 

 

 

 

 

 

 

 

 

2

x2

 

 

 

 

1,

 

 

если

1 v[x1 , x2 ,t]< −1

 

 

 

 

 

 

 

 

 

 

 

 

 

2

x2

 

 

Это соотношение вместе с уравнением

 

 

 

 

 

 

v[x1 , x2 ,t]= v[x1 , x2 ,t]x + v[x1 , x2 ,t](x +u)+q x2 +u2

 

t

 

x1

2

x2

1

 

 

11

1

 

 

 

 

 

 

 

 

 

 

и краевым условием (2.3.22) образует краевую задачу метода динамического программирования.

17

Связь метода динамического программирования и принципа максимума

18

Для установления связи метода динамического программирования с принципом максимума запишем функциональное уравнение (2.3.7) в несколько иной форме. В связи с этим введем новую переменную xn+1=t. Очевидно, что

dxn+l/dt = φn+l(xl, ..., xn+l, ul,..., um)=1.

(2.3.24)

С учетом этого соотношения, а также очевидного равенства

 

min{α(t)}

= max{α(t)}

 

t

 

 

 

 

t

 

 

 

 

запишем (2.3.7) в виде

 

n+1

 

v

 

 

 

 

 

maxu U

 

ϕi

ϕ0

= 0

 

 

 

(2.3.25)

 

 

 

 

i=1

 

xi

 

 

 

 

Принцип максимума для задачи о минимуме функционала (2.3.3) на связях (2.3.1) доставляет (при ψ0 = –1) условие

max{n+1ψiϕi

ϕ0 }= 0

(2.3.26)

u U

i=1

 

 

 

 

 

 

 

в котором ψn+1(t) является решением уравнения

 

 

n+1

ϕi

 

(2.3.27)

ψn+1 = −

ψi

 

 

i=1

xn+1

 

Сравнивая (2.3.25) и (2.3.26), нетрудно заметить их идентичность, что вдоль оптимальных траекторий выполняется равенство

 

 

 

 

 

 

ψi

(t)= −

v[x1 (t), , xn+1 (t)]

(i =1,n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi

(t)

 

 

 

 

 

 

Переходя к доказательству этого равенства, вычислим

 

 

 

 

 

n+1

 

 

 

 

n+1

 

 

 

v

 

n+1

 

v

 

d

v

 

 

 

v

 

 

 

 

2

 

 

 

 

 

=

 

 

 

 

xi

=

 

 

 

 

ϕi =

 

 

 

 

 

 

xi

 

 

 

xj

xi

xj

 

dt

xj i=1

 

 

xj

i=1

xi

 

 

i=1

+1)

ϕi (j =1,n

если доказать,

(2.3.28)

+1) (2.3.29)

С другой стороны, дифференцируя (2.3.25) по хj(j=1, …, n+1), получим вдоль оптимальных траекторий

2

v

 

ϕi v ϕi ϕ0 = 0

(2.3.30)

 

n+1

 

 

 

 

 

 

n+1

 

 

 

 

 

 

 

 

 

 

 

 

i=1

x

x

j

i=1

x

x

j

 

x

j

 

 

 

 

 

i

 

 

 

 

 

i

 

 

 

 

 

Используя (2.3.29), запишем это равенство в виде

 

 

 

 

 

 

d

v

 

 

n+1 ϕ

 

v

 

 

 

ϕ

 

 

 

 

 

 

 

 

 

= −

 

 

i

 

 

 

 

 

 

0

(2.3.31)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xj

 

 

 

 

xj

 

 

xj

 

dt

 

 

i=1

xi

 

 

 

 

Сравнивая это выражение с сопряженными уравнениями (2.2.8), заключаем, что

функции времени –∂v/∂хi и ψi(t) (i= 1, …, n+l) удовлетворяют одинаковым дифференциальным уравнениям и, следовательно, эти функции совпадают при одинаковых начальных (краевых) условиях в этих уравнениях.

19

Заметим, что при выводе (2.3.31) использовалось соотношение (2.3.30), которое нуждается в обосновании. Дело в том, что равенство выражения в фигурных скобках (2.3.25) нулю не означает равенства нулю ее производной, а это молчаливо предполагалось при выводе (2.3.30).

В связи с этим рассмотрим фиксированный момент времени t = t*.

Для этого момента оптимальное управление u=u(t*) является вектором чисел.

Для точек фазового пространства, не лежащих на оптимальной траектории, u(t*) уже не будет оптимальным и, следовательно, для этих точек функция в фигурных скобках выражения (2.3.25) не будет достигать максимума.

Отсюда следует, что эта функция достигает максимума, равного нулю, лишь в точках, лежащих на оптимальной траектории, и, следовательно, частные производные рассматриваемой функции по хj (j=1, …, n+1) в силу необходимых условий экстремума [по хj (j=1, …, n+1)] обращаются в нуль.

Таким образом, связь между методом динамического программированияи принципом максимума установлена.

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]