Другие журналы
|
научное издание МГТУ им. Н.Э. БауманаНАУКА и ОБРАЗОВАНИЕИздатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211. ISSN 1994-0408![]()
Численные методы построения области достижимости динамической системы
# 01, январь 2010 DOI: 10.7463/0110.0135944 УДК 519.6 МГТУ им. Н.Э.Баумана, 105005, Москва, 2-я Бауманская ул., д.5., dimidia@mail.ru
Введение Во многих приложениях, использующих модели исследуемых объектов в виде обыкновенных дифференциальных уравнений (ОДУ), возникает задача построения области достижимости соответствующей динамической системы. Например, такая задача возникает при решении проблемы траекторной безопасности летального аппарата [1], при решении близкой задачи о посадке вертолета на подвижный носитель [2]. Важной особенностью задачи построения области достижимости является то, что ее часто приходится решать в режиме реального времени. Аналитическое построение области достижимости удается лишь в простейших случаях, не представляющих практического интереса. Поэтому для построения этой области приходится использовать численные методы. Дискретную аппроксимацию области достижимости динамической системы можно построить путем многократного интегрирования модельной системы ОДУ при различных управлениях (метод мультифиниша). В практических задачах типичной является ситуация, когда основные вычислительные затраты при построении области достижимости этим методом обусловлены затратами на интегрирование указанной системы ОДУ. Поэтому ускорить вычисления можно за счет параллельного интегрирования этой системы ОДУ. К параллельным методам интегрирования ОДУ относятся блочные методы, а также методы на основе геометрической схемы декомпозиции системы ОДУ. Методы первого класса основаны на использовании одношаговых и многошаговых блочных формул интегрирования ОДУ, например, формулы Адамса-Башфорта [3]. В вычислительной практике обычно используются не более чем 4-х точечные блочные методы. Поэтому потенциальный параллелизм этой группы методов невелик. Идея методов второго класса состоит в разбиении модельной системы ОДУ на подсистемы, количество которых равно количеству используемых процессоров вычислительной системы, и интегрировании каждой из подсистем на своем процессоре. В силу, как правило, относительно невысокой размерности вектора фазовых координат исследуемой динамической системы, данные методы также принципиально не могут обеспечить значительное ускорение. Если не оговорено противное, в работе полагается, что, используемая многопроцессорная вычислительная система (МВС) представляет собой однородную MIMD-систему с общей или распределенной памятью [4]. Поскольку метод мультифиниша использует интегрирование совокупности систем модельных ОДУ, естественным в данном случае является распараллеливание на основе разделения этой совокупности на наборы, количество которых равно количеству процессоров в используемой МВС. В работе рассматривается проблема балансировки загрузки МВС при распараллеливании метода мультифинаша по указанной схеме, получены оценки эффективности параллельных вычислений. Даже при вычислениях на однопроцессорной ЭВМ значительное ускорение при построении области достижимости можно обеспечить на основе аппроксимации векторного поля модельной системы ОДУ [2]. При этом область допустимых значений вектор-функции, соответствующей правым частям системы ОДУ, покрывается некоторой сеткой. Предварительно во всех узлах этой сетки вычисляются значения указанной вектор-функции и сохраняются в оперативной памяти ЭВМ. При интегрировании модельной системы ОДУ используются эти значения или их подходящая аппроксимация. В работе получены оценки объема требуемой оперативной памяти, а также оценки ускорения данного метода. Очевидной является идея использовать метод мультифиниша с заменой модельной системы ОДУ ее некоторой нейросетевой аппроксимацией. Поскольку диапазон начальных условий рассматриваемой динамической системы и ее управлений могут быть весьма широки, для обеспечения требуемой точности аппроксимации в данном случае может оказаться необходимым использование нескольких нейронных сетей. Кроме того, данный метод не дает кардинального сокращения времени построения области достижимости. Указанные обстоятельства не позволяют считать перспективным метод построения области достижимости на основе нейросетевой аппроксимации исследуемой динамической системы, и этот метод не рассматривается в работе. В работе используется другой подход к построению области достижимости с использованием нейронных сетей – подход, основанный на построении нейронной сети, выходами которой являются непосредственно координаты точек, принадлежащие области достижимости или ее границе. В качестве примера рассмотрена задача построения области достижимости для летального аппарата, описываемого системой ОДУ шестого порядка. Рассмотрено решение задачи с помощью метода мультифиниша, метода аппроксимации векторного поля этой системы ОДУ, а также нейросетевого метода. В разделе 1 дана постановка задачи, в разделе 2 рассмотрены методы мультифиниша, в разделе 3 – методы на основе аппроксимации векторного поля, в разделе 4 – нейросетевые методы. Раздел 5 содержит пример использования указанных методов для построения границы области достижимости летального аппарата. В заключении сформулированы основные выводы.
1. Постановка задачи Рассмотрим динамическую систему
где
где Для компактности записи используем векторную форму системы (1)
где Среди фазовых переменных
Областью достижимости Ставим следующую прямую задачу: при заданном векторе начальных условий Для решения прямой задачи, очевидно, достаточно построить границу Сделаем следующие допущения. Во всех случаях при интегрировании системы ОДУ (3) используется алгоритм с постоянным шагом интегрирования 2. Методы мультифиниша 2.1. Схема методов. Покроем множество
Тогда схему приближенного решения прямой задачи методами мультифиниша можно представить в следующем виде. 1) Путем интегрирования совокупности систем ОДУ (4) находим множество точек 2) Запоминаем полученные наборы значений 3) Во множестве 4) Запоминаем соответствующие наборы значений 5) На основе точек Задача построения дискретной или непрерывной аппроксимации границы Обратная задача в методах мультифиниша может быть решена по следующей схеме. 1) Во множестве точек 2) В качестве искомого управления принимаем управление, соответствующее точке 2.2. Схема распараллеливания вычислений имеет следующий вид: 1) процессор 2) интегрирует при этих управлениях систему ОДУ (3) - находит множество точек 3) передает координаты этих точек Здесь При параллельном построении множества достижимости по указанной схеме в допущениях раздела 1 проблема балансировки загрузки МВС не возникает. При построении границы
где 2.3. Равномерная декомпозиция точек переключения. Покроем интервал
Таким образом, схема распараллеливания имеет вид, представленный на рисунке 1.
Рис. 1. Схема распараллеливания при равномерной декомпозиции точек переключения
В соответствии с этой схемой на процессоре Вычисления на процессоре Шаг 0 (этап «разгона»). Исходя из начальных условий Шаг 1. Исходя из начальных условий Шаг 2. Исходя из начальных условий · … Шаг Замечание. В рассмотренной схеме каждый из последующих процессоров повторяет шаг 0 своего предыдущего процессора и только затем выполняет интегрирование системы (3) на «своем» интервале Оценим ускорение рассмотренной схемы распараллеливания. В сделанных допущениях время выполнения процессором
время выполнения j-го шага, где
Таким образом, общее время решения задачи процессором
Здесь и далее Поскольку загрузка первого процессора
где учтено, что
Отсюда имеем Утверждение 1. Ускорение
Из утверждения 1 следует, что равномерная декомпозиция точек переключения управления Лучшей балансировки загрузки многопроцессорной вычислительной системы можно добиться за счет неравномерной декомпозиции точек переключения управления 2.4. Неравномерная декомпозиция точек переключения. Положим, что процессор
или, что то же самое, равенства
Отсюда вытекает квадратное уравнение для определения величины
Если для процессора Рассмотрим для примера случай
Таблица 1. Пример неравномерной декомпозиции точек переключения
Оценим ускорение рассматриваемого метода. Положим, что в последовательном режиме задача решается по схеме, аналогичной рассмотренной выше (с этапом «разгона»). Тогда время последовательного решения задачи можно оценить величиной
Поскольку в данном случае вычислительная загрузка всех используемых процессоров (исключая, быть может, последний процессор) примерно одинакова, оценка времени параллельного решения задачи следует из выражения (8) и равна
Таким образом, имеем Утверждение 2. Ускорение
Из утверждения 2 следует, что для рассмотренного выше примера ускорение равно
Заметное отличие ускорения от максимально возможного (равного 6) объясняется тем, что загрузка последнего процессора Рассмотрим другой пример. Пусть
Явное решение рекуррентного уравнения (8) не удается. Поэтому количество точек переключения
3. Методы на основе аппроксимации векторного поля системы ОДУ 3.1. Схема методов. Идея методов этой группы состоит в следующем. 1). Предварительно множество 2). Предварительно во всех узлах указанной сетки вычисляем значения функции 3). Поочередно для Ускорение вычислений в методах данного класса достигается из-за того, что этапы 1, 2 выполняются предварительно, а при выполнении этапа 3 не требуется вычислять значения правых частей системы ОДУ (3). Для того чтобы использовать весь потенциал данных методов значения функции Утверждение 3. Требуемый объем памяти для хранения значений функции
Из утверждения 3 следует, что если, например, 3.2. Кусочно-постоянная интерполяция функции Оценим ускорение, которое обеспечивает метод в этом случае. Вычислительные затраты при численном интегрировании ОДУ состоят из затрат на вычисление значений функции Утверждение 4. Ускорение
Поскольку обычно Заметим, что оценка (10) получена в предположении, что при интегрировании системы ОДУ (3), как без предварительного вычисления значений функции 3.3. Кусочно-линейная интерполяция функции В ячейке
(11) где
где Утверждение 5. Объем памяти, необходимый для хранения коэффициентов
Из утверждения 5 следует, что если, например, Ускорение последовательного метода на основе кусочно-линейной интерполяции функции Отметим, что функция 3.4. Кусочно-линейная аппроксимация функции Для кусочно-линейной аппроксимирующей функции в этом случае имеем следующую СЛАУ относительно неизвестных коэффициентов В соответствии с методикой МНК, решение этой системы имеет вид
где
Объем памяти, необходимый для хранения коэффициентов Отметим, что, как и в предыдущем пункте, функция 3.5. Другие методы аппроксимация функции Повысить точность аппроксимации функции В алгоритмическом отношении для аппроксимации удобно использовать композицию одномерных полиномов (метод Брандона) [9]. 3.6. Распараллеливание вычислений.Дальнейшего уменьшения времени решения задачи можно добиться путем организации параллельных вычислений. Схема распараллеливания при этом не отличается от схемы, рассмотренной в п. 2.4.
4. Нейросетевые методы Для аппроксимации многомерных функций чаще всего используют многослойные нейронные сети прямого распространения (многослойные персептроны) [10]. В качестве аппроксиматора функций могут использоваться также радиальные нейронные сети. При прочих равных условиях аппроксимация этими сетям требуется на порядки больше нейронов, чем аппроксимация многослойными персептронами. Поэтому радиальные нейронные сети в работе не рассматриваются. Для решения прямой и обратной задачи построения области достижимости используем нейронные сети НС1, НС2 соответственно. Входами нейронной сети НС1 являются вектор начальных условий В случае, когда известно множество допустимых управлений
Рис. 2. К нейросетевой аппроксимации области достижимости
5. Пример 5.1. Постановка задачи.Рассмотрим летальный аппарат, уравнения движения центра масс которого в нормальной земной системе координат
где Управлениями летательного аппарата являются тангенциальная перегрузка, нормальная перегрузка и скоростной угол крена, так что
В работе [1] показано, что дальняя, ближняя и боковая границы области достижимости системы (14) формируются управлениями, принадлежащими классу кусочно-постоянных управлений. Ограничимся рассмотрением дальней границы области достижимости. Для каждого допустимого
Рис. 3. Структура управлений, формирующих дальнюю границу области достижимости 5.2. Метод мультифиниша. Для экспериментального исследования эффективности метода мультифиниша разработана MPI-программа [4], реализующая этот метод. Эксперименты выполнены на виртуальном кластере, созданном с помощью программной системы VMware [11] и функционирующим под управлением свободно распространяемой операционной системы Ubuntu [12]. Результаты экспериментов иллюстрирует рисунок 4, который показывает, что на числе процессоров от 2 до 10 достигается ускорение, близкое к расчетному.
Рис. 4. Ускорение метода мультифиниша
Приведенные на рисунке 4 экспериментальные результаты получены при следующих значениях параметров задачи: 5.3. Аппроксимация векторного поля системы ОДУ. Рассмотрим «плоскую» задачу (14), когда
Здесь В соответствии с методикой, рассмотренной в разделе 3, покроем интервал времени Численные эксперименты выполнены для кусочно-постоянной аппроксимации функции Эксперименты показали, что метод обеспечивает погрешность в определении расстояния от начала координат до границы области достижимости, не превышающую 4%. В качестве точного положения границы области достижимости принималось положение, полученное путем численного интегрирования системы (14) при соответствующем управлении. Рис. 5. Дальняя граница области достижимости («плоская» задача):
5.4. Нейросетевая аппроксимация. В данном случае начальный угол поворота траектории Для указанной задачи были построены нейронные сети НС1, НС2 (раздел 4). Во всех случаях обучающая выборка состояла из 4500 элементов, из которых 20% случайно выбранных точек использовались в качестве проверочных для определения момента окончания обучения. Начальные веса и пороговые значения нейронов слоя устанавливались в соответствии с алгоритмом инициализации Нгуен-Видроу (Nguyen-Widrow) [10]. Обучение каждой сети выполнялось в среднем 10 раз с различными начальными весами и пороговыми значениями, на основе чего выбиралась сеть с минимальным значением ошибки. Для исследования точности обученной сети использовалась тестовая выборка, содержащей более 20000 элементов. Все эксперименты выполнены в среде программной системы MatLab 6 [10]. Сеть НС1. Входной слой сети НС1 состоит из пяти элементов, соответствующих величинам Исследование показало, что при количестве нейронов в сети, равном 22, максимальная относительная ошибка определения нейронной сетью НС1 координат точек границы области достижимости не превышает 12%. С ростом количества нейронов эта ошибка быстро уменьшается и при 40 нейронах не превышает 4%. Результаты исследования иллюстрирует рисунок 6, на котором показана аппроксимация дальней границы области достижимости нейронной сетью НС1 с 32 нейронами для случая Сеть НС2 аналогична сети НС1. Входной слой сети НС2 состоит из пяти элементов, соответствующих величинам
Рис. 6. Нейросетевая аппроксимация дальней границы области достижимости
Для оценки точности аппроксимации сети определяются координаты точек Исследование показало, что максимальная относительная ошибка определения нейронной сетью НС2 координат точек границы области достижимости при 22 нейронах в сети не превышает 9%, а при 40 нейронах - ~3%. Детально результаты исследования метода нейросетевой аппроксимации границы области достижимости летального аппарата приведены в работах [13, 14].
Рис. 7. Схема определения точности аппроксимации нейронной сетью НС2
Заключение В работе рассмотрены три метода построения области достижимости динамической системы – метод мультифиниша, метод на основе аппроксимации векторного поля соответствующей системы ОДУ, а также метод на основе нейронных сетей. Предложены соответствующие последовательные и параллельные алгоритмы, последние из которых ориентированы на вычислительные системы класса MIMD. Эффективность указанных методов исследована на примере построения области достижимости летательного аппарата (точнее, границы этой области). Проведенное исследование показало перспективность практического использования всех рассмотренных методов. Тот или иной метод могут быть рекомендованы в зависимости от вычислительной сложности правых частей системы ОДУ, описывающей исследуемую динамическую систему, а также от располагаемых вычислительных ресурсов. Кроме рассмотренных методов, интерес представляет использование для приближенного построения области достижимости нечетких множеств. Отметим также целесообразность исследования метода, основная идея которого состоит в следующем: для представительного множества начальных условий динамической системы тем или иным образом строим совокупность областей достижимости; границу каждой из этих областей аппроксимируем подходящей функцией; функциональную зависимость коэффициентов этой функции от начальных условий аппроксимируем, например, с помощью нейронной сети. Можно ожидать, что такой метод позволит получить приемлемую точность аппроксимации множества достижимости для широкого набора начальных условий. Авторы благодарят Трофимова А.Г. за идею использования нейронных сетей для аппроксимации непосредственно области достижимости, а также К.О. Вишневецкого и Д.С. Кулеша за проведение вычислений с использованием методов мультифиниша и аппроксимации векторного поля соответственно.
Литература 1. Воронов, Е.М. Алгоритм оценки границ области достижимости летательного аппарата с учетом тяги / Е.М.Воронов, А.А.Карпунин // Вестник МГТУ. Сер. Приборостроение.- 2007.- ╧4(69).- С. 81-99. 2. Гурман, В.И. Приближенные методы оптимизации управления летальным аппаратом / В.И.Гурман, В.И.Квоков, М.Ю.Ухин // Автоматика и телемеханика.- 2008.- ╧4.-С. 191–201. 3. Ортега, Дж. Введение в численные методы решения дифференциальных уравнений / Дж.Ортега, У.Пул: пер.с англ.; под редакцией А.А.Абрамова - М.: Наука, 1986.- 288 с. 4. Воеводин, В.В. Параллельные вычисления / В.В.Воеводин.– СПб.: БХВ-Петербург, 2004.– 608 с. 5. Скворцов, А.В. Обзор алгоритмов построения триангуляции Делоне / А.В.Скворцов // Вычислительные методы и программирование.- 2002.-Т.3.-С. 14 – 39. 6. DirectoryofComputationalGeometrySoftware [Электронный ресурс]. (//http://www.geom.uiuc.edu/software/cglist/). 7. Карпенко, А.П. Аппроксимация функции предпочтений лица, принимающего решения, в задаче многокритериальной оптимизации. 1. Методы на основе планов первого порядка [Электронный ресурс] / А.П.Карпенко, В.Г.Федорук // Электронное научно-техническое издание: наука и образование.- 2008.- ╧3. (http://technomag.edu.ru/doc/82725.html). 8. Карпенко, А.П. Аппроксимация функции предпочтений лица, принимающего решения, в задаче многокритериальной оптимизации. 2. Методы на основе планов второго порядка [Электронный ресурс] / А.П.Карпенко, В.Г.Федорук // Электронное научно-техническое издание: наука и образование.- 2008.- ╧3. (http://technomag.edu.ru/doc/83356.html). 9. Хохлов, С.Ф. Применение метода Брандона для обработки экспериментальных данных / С.Ф.Хохлов, О.И.Школа // Вопросы химии и химической технологов.-1973.- Вып. 28.- с. 204—207. 10. Медведев, В.С. Нейронные сети. Matlab 6 // В.С.Медведев, В.Г.Потемкин.– М.: Диалог-МИФИ, 2001.– 496 с. 11. VM ware [Электронный ресурс]. (http://www.vmware.com/) 12. Ubuntu [Электронный ресурс]. (http://www.ubuntu.com/) 13. Козлова, О.Г. Нейросетевая аппроксимация границы области достижимости летательного аппарата [Электронный ресурс] / О.Г.Козлова // Электронное научно-техническое издание: наука и образование.- 2009.- ╧7. (http://technomag.edu.ru/doc/129990.html). 14. Козлова, О.Г. Нейросетевая аппроксимация границы области достижимости летательного аппарата. Трехмерный случай [Электронный ресурс] / О.Г.Козлова // Электронное научно-техническое издание: наука и образование.- 2009.- ╧8. (http://technomag.edu.ru/doc/130282.html). Публикации с ключевыми словами: динамическая система, нейросетевая аппроксимация, область достижимости динамической системы Публикации со словами: динамическая система, нейросетевая аппроксимация, область достижимости динамической системы Смотри также:
Тематические рубрики: Поделиться:
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|