Федоренко Р.П. Введение в вычислительную физику (1185915), страница 96
Текст из файла (страница 96)
При этом не возникает трудностей при интегрировании системы (5). Теория, как известно, требует От 7(Г, х, и(Г)) выполнения условия Липшипд по х и довольствуется произвольной, в сущности, зависимостью от к Конечно, класс измеримых (т.е. произвольных) функций слишком широк, техническая реализация такого управления кажется нереальной. К счастью, ситуация здесь оказалась достаточно благоприятной: при решении прикладных задач оптимальное управление, как привило, оказывается не очень сложно устроенной кусочно- гладкой функцией. Поэтому термин «измеримая функцияь практически означает, что никаких требований гладкости функции и(Г) мы не ставим. В большинстве случаев достаточным был бы класс функций, имеющих конечное число разрывов.
Между точками разрывов управление можно считать достаточно гладким. Правда, ни положения точек разрыва, ни их число заранее не известны. Приближенное решение. Алгоритмы приближенного решения задач оптимального управления формально мало отличаются от алгоритмов решения задач математического программирования. Но здесь есть своя специфика, и некоторые алгоритмы практически оказываются почти нереализуемыми. Первый специфический момент — это вычисление производных (Мы пока ограничимся задачами, в которых все функционалы дифференцируемы по Фреше). Основу алгоритмов составляет формула первого члена ряда Тейлора. При малом изменении управления и( ) функцией би( ° ) происходит малое изменение функционала: г(и( ) + би( )) = г!и( )3 + био> ои( ПРИБЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИХИ 1ч.
и 458 Эта абстрактная формула должна быть конкретизирована: т ЗР1В~ >1 Ьи(.) — $ (н(С) Ьи(С)) 1К В ( ) где х(г) — траектория, соответствующая и( ). Функция У(Т) для данного функционала легко вычисляется. Например, для Р вида (7) имеем У(Т) = Ф„]б х(г), и(Т)]; . для р вида (8) У(г) = Ф.!х(Р)] Ь(~ — Р). Здесь Ь(Т вЂ” Р) — функция Дирака с полюсом в точке Р. После решения уравнения (12) функциональная производная вычисляется по формуле, полученной в з 27: и(Т) =/'„[О х(Т), и(Т)] чр(Ю)+Ф„]Ю, х(2), и(Р)].
(13) Реализация вычислительной схемы требует конечномерной аппроксимации всех объектов. Опишем возможный вариант. Сетка и управление. Введем на ]О, Т] сетку О = гв < г, < ... с гн = Т и будем рассматривать кусочно-постоянные управления и(~) ив+из~ 1 ~ (~В' ~в+3)' Обычно в расчетах М 102. Вариация Ьи(1) ишется в том же классе функций. Траектория х(~). Интегрируя (численно) задачу Коши (5), запомним значения х в узлах сетки Р„; обозначим их х„ (и = О, 1, ..., Ф).
Так как каждое значение Б„является возможной точкой разрыва и(~), следует быть осторожным, используя методы интегрирования высокого порядка точности. Эта точность реализуется лишь при достаточной гладкости У, в том числе и по и Следую- Вектор-функция и(г) (размерности г) называется производной Фреше функционала Г1и( ) ] в точке и(.). Функциональные производные в современных исследованиях используются достаточно часто (см. б 27). Вычисление функции и требует интегрирования определенного в точке и( ) так называемого сопряхгенного уравнения — 'р=у;(бх(г), и(Т)] р(г)+У(Т), р(Т) =О, (12) 459 9 гз) ЗАДАЧИ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ щес почти очевидное условие позволяет сохранить эту точность.
Используя, например, метод типа Рунге — Кутты, необходимо брать шаг численного интегрирования таким, чтобы все точки сетки Г„ входили в число узлов численного интегрирования. Отметим, что сетка Г„не является сеткой численного интегрирования системы (5). Последняя обычно существенно гуще и в явном виде нс присутствует.
Сетка, однако, должна быть достаточной для представления траектории х(т) и для ее восстановления (например, линейной интерполяцией значения х„) с необходимой для дальнейшего точностью (ие очень, в сущности, высокой). уУинеариза!4ия задачи. Сопряженное уравнение (12) интегрируется многократно (Гл + 1 раз; для каждого дифференцируемого функционала Р! требуется свое интегрирование). Уравнение (12) линейное с переменной матрнцсй/'„[!, х(Г), и(Г) [, определенной на варьируемой траектории [х(Г), и(!)).
Реализуется это, например, аппроксимацией матрицы /„кусочно-постоянной на той же сетке, т.е. вычисляются матРицы /,[л + 1/2[ ш/„[!„~!Гз, х„+пз, И„.Р!!В[, Аналогично вычисляются матрицы /„[л+ 1/2[ и векторы У[И+ 1/2[, Ф„[л +!/2[. Теперь уже интегрирование системы (12) осуществляется без труда. Для дальнейшего нам нужны не р(Г), а интегралы А„'+!!з=/„[л+1/2[ ~ зр'(Г) !Й+Ф [л+1/2[, !=О, 1, ..., ЛГ. ИмеЯ И!+!пи можно вычислить последствии возмУЩениЯ УпРавления величинами Ьи„.„!з (л = О, 1, ..., Аà — 1): л-! Р[и( ) + Ьи( )[ Р[и( ° )[+~Ч А„+из Ьи„+пз.
(14) И 0 Здесь А„пз матрица г- л!+ 1. Формула (14), разумеется, приближенная. Ее погрешность связана как с пренебрежением величинами О([[ЬИ[[з), так и с погрешностями описанных выше аппроксимаций, из которых наибольшие последствия, видимо, имеет переход к кусочно-постоянным матрицам /,[л + 1/2[.
Располагая формулами (14), после вычисления всех А„+!! Можно осуществить выбор вариации [Ьи„+п~~ В! решением задачи линейного программирования. Процесс решения задачи поиска условного экстремума организуется так, как это было описано в з 26. Однако стоит отметить некоторые важные детали. Они связаны с тем, что формулы (14) получены аппроксимацией континуальных фор- 460 нгивлиженные методы вычислительной»ивнев 1ч. и мул (11). Поэтому «горизонтальный» размер задачи линейного программирования (т.е. число неизвестных Ьи„»1п, равное Фг) обычно много больше ее «вертикального» размера та + 1. Существенно еще и то, что эта задача сильно «почтн вырождена»: компоненты й„»п для близких значений индексов очень близки друг к другу, как сеточное представление некоторых гладких функций.
Эффективное решение таких задач линейного программирования требует специализированных алгоритмов. Попытки использования обычных стандартных программ линейного программирования часто оказываются в этих ситушшях неудачными. Реализация методов квазиньютоиовского типа, в которых появляются матрицы, аппроксимирующие гессиан функционала, здесь также встречается с трудностями. Это, прежде всего, — трудности больших размерностей: ведь такая матрица должна иметь размер Мг х Мг.
Да и перспективы построения хорошей аппроксимации гессиана процессом постепенного уточнения при высокой размерности про- и ф странства не очень ясны. Во всяком случае, этот путь еще не разведан вычислителями, и мы не знаем, с чем встретимся на этом пути.
С этими оговорками, располагая формулами типа (14), можно реализовать любой нз описанных в з 2б алгоритмов решения об- г„с зз щей задачи математического программирования. Кстати, информация, содержащаяся в матрицах Л„,п, позволяет проверять приближенное выполнение необходимого условия оптимальности — принципа максимума. Здесь появляются обьекты, полезные и в теории, и в практических вычислениях. Конус возможных вариаций К„. Множество всех вариаций управления Ьи(Г), совместимых с условием и(т) + Ьи(1) Е П, обычно является выпуклым конусом К„. Построение этого конуса (в функциональном пространстве) не очень сложно, если геометрия области У не слишком сложна.
Нужно построить конусы К(З) в каждой точке г отдельно, после чего конус К„есть просто «топологическое произведение» конусов. Это означает, что Ьи( ) Е К„эквивалентно Ьи(г) Е К(Г), Ч К Построение конусов К(Г) при разных положениях и(1) в У показано на рис. 52, которым мы и ограничимся, полагая, что читатель без труда обобщит эти простые соображения на общий случай. Конус вариаций К„.
Рассмотрим точку функционального пространства и( ), которой соответствует точка 1»[и(.)] в (ль+ 1)-мерном пространстве (Р = [Рв, Ры „„Р ]). При возмущении управления и( ) малой функцией Ьи( ) Е К„точка Р[ы( )] переходит в 461 % 2В1 ЗАДАЧИ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ точку Р1и(.) + Ьи( )), которую в первом приближении можно представить в виде т Р(и( ) + Ьи( )) = Р(и( )] + $ ИГ(г) Ьи(г) Ык а Матрица-функция 11'(Г) (физнкн называют ее функцией влияния, но это всего лишь функциональная производная) определяет линейное отображение К„в КР, н коль скоро К„есть выпуклый конус, то н его образ есть выпуклый конус. Конус запрещенных вариаций Кя.
Пусть варнацнонная задача поставлена в форме Р,.НО (1=1,2, ..., ИГ). Рассмотрим точку и(. ), в которой Р,(и( ) ! = О. Нас интересует, можно лн за счет варнацнн Ьи(. ) Е К„сместить точку Р таким образом, чтобы ЬРвс О, ЬР, «тО (Г = 1, 2, ..., ИГ). Множество таких направленнй ЬР образует простой выпуклый конус— Р« «отрнцательный кВадрант» В (ш + 1)- ГГ г мерном пространстве. Этот конус называ- КР ют конусом запрещенных вариаций К . Если точка и( ) — решение варнацнонной зацачн, ни одно нз направлений кг ЬР Е К. не должно попадать в К . Если существует Ьи( ) Е К„, такам, что ей соответствует ЬР Е Кг, точка и( ) не является оптимальной, ее можно «улучшить» Рис. 53 (поннзнть значение Рги не нарушая поставленных 'условий). Если такой Ьи(.) не существует, точка и(") может быть оптимальной (здесь ситуация такая же, как н.в обычной теории экстремума: если пронзводная в какой-то точке равна нулю, эта точка может оказаться точкой экстремума).
Принцип максимума. Теперь перейдем к выводу основного уравнения теории оптнмального уравнения — принципа максимума, являющегося необходнмым условием оптимальности точки и( ). Начнем с простого факта. Если и(.) — экстремум, конусы К н . Кг не должны пересекаться: (15) К„ПК =И.
Расшифруем форМулу (15). Если два выпуклых конуса не пересекаются, онн могут быть разделены некоторой гнперплоскостыо су (рнс. 53). Пусть я = (1, ЯГ, ..., я ) — нормаль к су. Тогда (15) эквнвалентно условням (а, ЬР) <О для всех ЬРЕКг. РРИЕЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИКИ 1ч. и Так как векторы (О, — 1, О, ..., 0], (О, О, — 1, ..., 0), ..., (О, О, ..., О, -1» лежат в Кх, то мы полУчаем инфоРмацию о знаках а,.: г, ж О. Более сложная информация содержится в другом следствии из (15): (я, Ь1г) и 0 для всех Ьг' Е К .