Файл: Васильев Ф.П. Лекции по методам решения экстремальных задач.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.04.2024

Просмотров: 231

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

196

ДИНАМ И ЧЕСКО Е

ПРОГРАММИРОВАНИЕ. ПРОБЛЕМА СИНТЕЗА

[Гл. 4

 

Аналогично доказывается,

что

путь,

проходящий [через точки

 

Xk ~

Х ^

 

1 = Ук (xf) 6 H k+li •• • ixff — УN—1(Xflf—1) б H n f

является

кратчайшим

между

 

точкой

 

и шкалой

HN. Это

означает,

что

функция уи(х) дает

нам

приближенное

решение

проблемы синтеза для задачи

(1.1— 4).

 

 

 

 

Заметим,

что определение кратчайшего

пути между шкалами

 

 

 

 

 

 

 

 

 

 

 

N—1

 

Н 0

и

по

описанной схеме

потребовало

перебора

•pt-+i+

 

 

 

 

 

 

 

 

 

 

 

£=0

 

+ ро величин, в

то

время

как

полный

перебор всех путей, как

нетрудно видеть,

потребовал

бы

сравнения

p0-p i-...■ри

величин.

Таким образом, уже при не слишком больших р* перебор с по­ мощью соотношений (5) по сравнению с полным перебором дает существенную экономию памяти ЭВМ и машинного времени. Такая

экономия

достигается в результате

того,

что при

вычислении

С ь(х ) из

(5) рассматриваются лишь пути, проходящие через все­

возможные точки xetffc и y ^ H h+l

и соединяющие точки y ^ H h+i

со шкалой HN кратчайшим образом, и тем самым все некратчай­

шие пути,

соединяющие у ^ Н к+{

со

шкалой

HN, из

рассмотрения

полностью исключаются.

 

 

 

 

4.

Для получения более точного решения задачи (1.1—4) не

ходимо взять более густую сетку

точек на

шкалах и увеличить

число шкал. Однако при этом число перебираемых величин, даже при использовании описанной выше схемы перебора, катастрофи­ чески быстро растет, и уже при небольших размерностях векто­ ров х и и становится невозможным решить задачу о кратчайшем пути за разумное время с помощью самых лучших современных ЭВМ. В этом случае часто используют прием, известный под на­ званием метода блуждающих трубок [171]. Суть этого приема за ­ ключается в следующем.

Сначала берут небольшое число шкал с небольшим количе­ ством точек на них и по описанной выше схеме поиска находят кратчайший путь 1\, соединяющий крайние шкалы Н0 и HN. Затем уменьшают шаг сетки на каждой шкале, путь U окружают некото­ рой «трубкой» из путей, проходящих вблизи 1\ по точкам новой сетки. Для построения трубки вокруг 1\ на каждой шкале обычно берут небольшие окрестности точки, через которую прохо­ дит 1\, и рассматривают пути, проходящие через выбранные точки. С помощью описанной выше схемы перебора находят кратчайший путь в полученной трубке; все пути вне этой трубки в переборе пока не участвуют. Таким образом получают новый улучшенный путь k, длина которого не превышает длины 1\. Далее, сохраняя прежние шкалы и точки на них, окружают путь 12 новой трубкой и находят следующее приближение /3 и т. д., продолжая процесс


§ 2] Схема Н. Н. Моисеева 197

до тех пор, пока трубка не перестанет «блуждать» и впервые по­ лучится равенство l s — l s+ и После этого измельчают сетку на каж ­ дой шкале, окружают путь ls новой трубкой и продолжают поиск кратчайшего пути описанным приемом блуждающих трубок. Про­ цесс измельчения сетки на шкалах и поиска кратчайшего пути указанным способом повторяют, пока два кратчайших пути, полу­ ченные после двух последовательных измельчений сетки, не совпа­ дут с удовлетворительной точностью. Затем увеличивают число шкал, т. е. сгущают сетку по времени, и повторяют процесс поиска методом блуждающих трубок с постепенным измельчением сетки на шкалах состояний до удовлетворительного совпадения двух по­ следовательных приближений. Попеременно измельчая сетку на шкалах состояния и сетку по времени, поиск с помощью блуждаю­ щих трубок продолжают до получения приближенного решения исходной задачи с достаточной точностью. Изменение шагов сеток на шкалах состояния и по времени должно быть согласованным; например, в случае равномерных сеток эти шаги должны удовлет­ ворять соотношению |Ал:| = о (А^) [169].

Оказывается, метод блуждающих трубок во многих случаях существенно сокращает число переборов, и с его помощью удалось решить многие практически важные задачи, ранее казавшиеся не­ приступными. В то же время следует заметить, что метод блужда­ ющих трубок позволяет определить, вообще говоря, лишь локаль­ но-кратчайший путь между крайними шкалами при фиксирован­ ной сетке, поскольку на каждом шаге в переборе участвуют лишь пути, попавшие в трубку. Другой прием поиска кратчайшего пути

между шкалами описан в работах [143, 145, 240].

 

5.

Успех в применении описанных в этом параграфе метод

приближенного решения задачи (1.1— 4)

во многом

зависит от

умения

строить элементарные операции

(1) — (4). По

существу,

элементарная операция представляет собой экстремальную задачу той же трудности, что и исходная задача. Однако малость отрезка **^ *< A + i позволяет здесь сделать ряд упрощающих предположе­ ний. Прежде всего, если, шаг сетки по времени достаточно мал, то элементарную операцию строят исходя из условий (1), (2), (4), полагая, что дуги траекторий, соединяющих точки соседних шкал, или не нарушают фазовых ограничений (3), или этим нарушением

можно пренебречь.

Далее, вместо минимизации функционала (1)

при условиях

(2),

(4) часто ограничиваются построением какого-

либо допустимого

управления и соответствующей траектории,

удовлетворяющих

условиям (2),

(4),

и в

качестве

длины дуги

Мг(х,у) берут значение функционала

(1)

на полученных управле­

нии и траектории.

 

 

 

 

 

 

Во многих задачах полезно задаться каким-либо семейством

управлений

u ( t ) = u ( t , сь ...,

ст),

зависящих от

параметров

Си Сь ■■■, ст

 

например,

это могут быть алгебраические или


198

ДИНАМ И ЧЕСКО Е ПРОГРАММИРОВАНИЕ. ПРОБЛЕМА СИНТЕЗА

[Гл. 4

тригонометрические многочлены с коэффициентами С\, ..., ст, или кусочно-постоянные функции со значениями сь ст и т. п. Зна­ чения этих параметров затем можно определить из системы п уравнений с т неизвестными

х+1

^■+1

 

j

х (t) dt = J f{x(t), u(t, Cy, c2, . . . ,cm) ,t ) d t = y — x,

(8)

. . .

используя для этого различные методы [19]. Если т > п , то пара­ метры С], ..., ст отсюда будут определяться, вообще говоря, неод­ нозначно, и свободные параметры можно использовать для мини­ мизации функционала (1). Для упрощения системы (8) дифферен­ циальное уравнение (2) часто заменяют более простыми уравне­ ниями

*(*) = f ( x , u (0, 0 . или x(t) = f (

и (0.

или другими более точными разностными уравнениями [171]; здесь возможно использование линеаризованной системы

x{t) = f (х, и (/), t) + (fx {х, и (<), t), х (/) — х).

При решении задачи (1), (2), (4) часто применяется также прин­ цип максимума в сочетании с различными упрощающими приема­ ми, описанными выше. Другие способы построения элементарных операций и примеры решенных конкретных задач см. в работах

[169, 171].

§3. ДИФФЕРЕНЦИАЛЬНОЕ УРАВНЕНИЕ Р. ВЕЛЛМАНА

Вэтом параграфе будет введена функция Веллмана для .ис­ ходной задачи оптимального управления и получено дифференци­ альное уравнение Веллмана, являющееся предельным для уравне­ ния (1.13) при неограниченном измельчении сетки по времени. Ограничимся рассмотрением частного случая задачи (1.1— 4 ): ми­ нимизировать функционал

J(u) =

j f ° ( x , u , t ) d t +

<S(x(T))

(1)

 

и

 

 

при условиях

 

 

 

* = /(*,

и, i ) , t o < t < T ,

x(t0) = x0,

(2)

u(t) кусочно-непрерывна, и (t) 6 V, t0 <Ct К Т ,

(3 )


S 3]

Дифференциальное уравнение Р. Беллмана

199

где моменты t0 ,Т и точка х0 предполагаются известными; множе­ ство V замкнуто и от t не зависит. Будем также предполагать, что функции f°(x,u,t), f(x,u,t), Ф (х) непрерывны по совокупности своих аргументов. Наряду с этой задачей нам понадобиться следую­ щая вспомогательная задача: минимизировать функционал

г

J* (х, Ы) = J

(X(т), и (т), т) dx + Ф (х (Т))

 

(4)

при условиях

 

 

 

 

 

 

 

 

x{x) = f (х (х), и{х),х),

t < X< Т,

х (0 =

х,

 

(5)

и(х) кусочно-непрерывна,

и(т ) е У ,

 

 

 

(6)

где точка х и момент t,

 

 

Т,

фиксированы. Через

А (х, t)

обозначим множество всех управлений и = и ( х ) ,

t^ix<Z.T,

таких,

что: 1) выполнены условия

(6); 2)

соответствующие

траектории

х(х,и) системы (5) определены на всем отрезке kO <C7\

 

Введем функцию

inf

J 1(х,

и) = В (х, t),

называемую функ-

недм)

 

Покажем,

что

при

некоторых

цией Беллмана задачи

(1) — (3).

предположениях функция В (х, t) удовлетворяет дифференциально­

му уравнению с частными производными

специального

вида.

А именно будем предполагать, что: 1) функция B(x,t) непрерывно

дифференцируема по совокупности (х, *); 2)

для всякого

и е У и

всех х, t, t o ^ t c T , найдется ДС>0, ^ + А ^ Г ,

и кусочно-непрерыв­

ное управление а ( т ) е У , t-\-At<^.x<^,T, такие,

что управление

 

В (т) = / “'

 

 

+

 

(7)

 

1 v(x),

t + A t < x < T ,

 

 

принадлежит A(x,t)\ 3) для всех х,

t,

t0^ . t < T ,

нижняя грань

функционала (4)

при условии

(5) — (6)

достигается

хотя бы при

одном управлении

u * (t)e A (x ,i) и соответствующей

траектории

х(т, и*).

 

 

 

 

 

 

Следует сразу же заметить,

что

сделанные

предположения

1)— 3) сильно сужают класс рассматриваемых задач оптимального управления. В частности, функция Беллмана B(x,t) может не быть непрерывно дифференцируемой даже в простейших задачах опти­ мального управления (см. ниже упражнение 7).

Пусть В

(t -f At),

и * ) , t +

At) = J {+At (x (t + At, и ) ; и**),

и " =

и ** (т) б А (х (t +

At,

и *), t +

At),

A f> 0 .

Так как управление

 

 

 

 

 

 

 

и(х)

-

и*(х),

t < £ x ^ t

+

At,

 

 

 

 

 

 

и"(г), t + A t < x < T ,