Ведякова А.О.
СПбГУ аспирант факультета, ПМ-ПУ [email protected]
Идентификация математической модели судна с использованием нейронной сети при учете внешних
возмущений
КЛЮЧЕВЫЕ СЛОВА:
Математическая модель, нейросетевой подход, морское судно, возмущения, линеаризация.
АННОТАЦИЯ:
Решается задача нахождения коэффициентов линейной математической модели морского судна в условиях гармонического внешнего возмущения с использованием нейросетевого подхода.
На базе информации о векторе состояния нелинейной модели и его производной, выполняется идентификация нелинейной модели судна. При этом формируется статическая нейронная сеть, которая аппроксимирует векторную функцию, стоящую в правой части системы дифференциальных уравнений, описывающих динамику судна. Затем сформированная модель, включающая нейронную сеть, линеаризуется, в результате чего определяются коэффициенты линейной модели динамики судна.
Введение
При исследовании и проектировании сложных динамических объектов необходимо иметь соответствующие математические модели. В большинстве случаев при описании динамики объекта, в частности морского надводного судна, в качестве математической модели рассматривается система обыкновенных дифференциальных или разностных уравнений, включающих в себя возмущающее воздействие окружающей среды.
Динамика морского подвижного объекта (МПО) обладает рядом особенностей, затрудняющих построение его точной математической модели. К ним относятся нестационарность, связанная с изменением загруженности МПО, нелинейность уравнений динамики, параметрическая неопределенность, например, в случае с присоединенными массами воды или моментами инерции, которые невозможно рассчитать заранее.
Условия внешней среды, при которых приходится решать задачи судовождения, разнообразны. В общем случае на судно действуют ветровые, волновые возмущения и течения. Следовательно, выработка управляющих воздействий зависит от величины и углов набегания волн,
углов действия ветра, а также от направления подводного течения. При построении математической модели динамики объекта управления принято выделять возмущающее воздействие в виде аддитивной составляющей. Пренебрежение возмущением в системе зачастую приводит к неустойчивости и неадекватности поведения модели по отношению к динамике реального объекта. Необходимо отметить, что внешние возмущения, действующие на морское судно, в большинстве своем носят нестационарный характер, так, например, порывы ветра со временем изменяют свое направление и интенсивность. Компенсация внешних возмущающих воздействий, приложенных к системе, является одной из важнейших задач теории автоматического управления.
В большинстве работ, посвященных компенсации возмущающего воздействия, предполагается, что возмущение имеет некоторый заранее заданный вид. Во многих работах считается, что вектор возмущающего воздействия представим в виде мультигармонического сигнала [4, 8].
При решении задач, для которых сложно указать четкий алгоритм решения, с успехом применяется теория искусственных нейронных сетей, которая уже нашла свое применение в различных сферах деятельности человека: в медицине, бизнесе, науке и технике. Нейронные сети проявили свою состоятельность при решении широкого класса задач, таких как распознавание образов, аппроксимация, классификация, идентификация, прогнозирование и пр.
В данной работе предлагается рассмотреть нейросетевой подход к параметрической идентификации линейной модели МПО при наличии внешнего возмущения в виде гармонического сигнала.
Математическая модель судна
Математическая модель морского судна, описывающая его боковое движение по курсу и крену, представляет собой следующую систему дифференциальных уравнений [1, 2]
К =
/*2'1 + ¿и |'
■У _
X
к34<2Е - а + ¿33
Здесь VX,VZ и ых>ыу - проекции векторов линейной и угловой скоростей на оси связанной системы координат; % - продольное перемещение центра масс по направлению движения; С - боковое смещение центра масс; в - угол крена; ф - угол курса. Через QX,QZ, и обозначены соответственно проекции на оси связанной системы координат сил и моментов, действующих на судно.
В приведенной системе дифференциальных уравнений (1), описывающих динамику рассматриваемого объекта, для точного измерения доступны лишь физические характеристики судна, а остальные параметры могут быть оценены лишь с некоторой степенью точности. Однако, структура системы (1) сложна для применения классических методов параметрической идентификации. По этим причинам, в данной работе предлагается рассматривать задачу параметрической идентификации линейной модели, а систему нелинейных уравнений (1) использовать для получения входных и выходных сигналов объекта управления.
Рассмотрим движение системы (1) в окрестности нулевого положения равновесия по координатам V2,ых,ыу,в ,ф с постоянной продольной составляющей скорости хода Ух=10 м/с и при наличии внешних возмущений, в виде аддитивной составляющей о=(о1, о^)1. В качестве управляющего сигнала выступает 5 - угол отклонения вертикальных
-V,
рулей, а наблюдаемыми величинами считаются угол дрейфа и
Vx
угловая скорость по курсу
ш
Р= ЯцР+ «12°°+ + а^. са= а21 р + а22со+ Ь25 + сг2. ф = са 5 = и.
(2)
Пусть управления в системе (2) задается в виде обратной связи и=К1 ш + К2(ф-ф*), обеспечивающей устойчивость замкнутой линейной системы и отработку некоторой курсовой командной поправки ф*.
Далее основное внимание уделим первые двум компоненты вектора состояния X=(р, ш)г, которые удовлетворяют следующей системе, представленной в матричном виде
ГгО
х = Ах + В5 + <т . х =
Р
(
А =
чсо,
ч
а11 «21
«12 ' «22 ,
В
'V ¿2 ;
Г ^
(3)
где A - матрица состояний, B - матрица входов, x - вектор состояния, ё -управляющее воздействие, о - вектор внешних возмущений.
Архитектура нейронной сети
Предлагается рассмотреть нейросетевой подход для параметрической идентификации линейной математической модели (3). В рассматриваемом подходе искусственная нейронная сеть (ИНС) выступает в качестве аппроксиматора функции f (•) правой части системы дифференциальных уравнений (1), описывающих динамику интересующего объекта
X=f (t, X, и) . (4)
Другими словами, задача идентификации математической модели (4) сводится к задаче аппроксимации одномерных функций ^^ 1( )> • •• > fn( ), являющихся компонентами вектор-функции f (•).
В классической теории аппроксимации, аппроксимирующая функция представляется в виде линейной комбинации ф{( )
N
.-=! (5)
где ai - коэффициенты, а вид функции Ф1 (•) и их количество i выбираются исследователем исходя из особенностей поведения исходной функции f (•) . Выражение (5) так же может быть записано в терминах нейронной сети. В таком случае, t - входные данные сети, ) - результат прохождения
входного сигнала через сеть, а - весовые коэффициенты, ф.(•) - функции
активации, причем ф1 (•) = ... = фм( ), так как они находятся в одном (первом) слое нейронной сети.
К примеру, при использовании трехслойной нейронной сети прямого распространения в качестве аппроксимирующей функции, выражение (5) модифицируется следующим образом
((л^ ^
к=1
=1
V ' уу
(6)
где ф() ,&(•) - функции активации 3-го, 2-го и 1-го слоев соответственно; wk>wjk>wy - неизвестные весовые коэффициенты нейронной сети.
При обучении нейронной сети будем считать, что компоненты вектора состояния X нелинейной математической модели (4) измеряются, а их производные X либо измеряются, либо восстанавливаются. Обладая информацией о поведении вектора состояния и его производной, формируются обучающие данные для тренировки нейронной сети. При этом вырабатывается статическая нейронная сеть, которая аппроксимирует векторную функцию f (•), стоящую в правой части системы
дифференциальных уравнений (4).
Одной из широко используемых в задачах аппроксимации архитектур нейронных сетей являются сигмоидальные сети. Существует теорема [9], гарантирующая для двухслойной нейронной сети с сигмоидальным скрытым и линейным выходным слоями успешную аппроксимацию любой непрерывной функции. К сожалению, данная теорема не дает инструкций по количеству нейронов скрытого слоя, необходимых для решения рассматриваемой задачи. С одной стороны, чем больше нейронов находится на скрытом слое сети, тем выше точность аппроксимации. Однако, при достаточно большой размерности скрытого сигмоидального слоя появляется эффект «перетренировки» нейронной сети [7], в данном случае, сеть теряет способность к обобщению и просто запоминает все обучающие примеры, выдавая некорректный результат для неучаствующих в обучении данных. Таким образом, количество нейронов скрытого слоя является еще одним параметром нейронной сети, настраиваемым в ходе исследования.
Выходной сигнал двухслойной нейронной сети, содержащей скрытый сигмоидальный слой и линейный выходной, может быть записан в следующем виде
^ (м \
у(х)= ¿ФЦл-+ь-)
7=1
<1=1
+ ь.
(7)
—х I
где ф(.) - функция активации скрытого слоя, равная фх)=(1 + е-
коэффициенты ai,bi,wy - весовые коэффициенты нейронной сети, настраиваемые в процессе обучения.
При решении задачи идентификации математической модели бокового движения судна по курсу и крену будем предполагать, что структура (1) неизвестна и динамика изучаемого объекта представлена в виде «черного ящика». Считаем, что из всей информации о системе известна лишь ее реакция у на входной сигнал и. Будем считать, что на объект управления действует аддитивное возмущение окружающей среды в виде гармонического сигнала с постоянной частотой.
L1-фильтрация обучающих данных
Построим обучающие данные, промоделировав Simulink-модель, описывающую систему дифференциальных уравнений (1). В качестве возмущающего воздействия была взята гармоника с амплитудой, составляющей 10% от максимального значения полезного сигнала. Результаты моделирования представлены на рисунке 1.
Зашумленный входной сигнал обучающих данных нейронной сети
1приШа1а = (б. К.. со)г ^
у не позволяет добиться удовлетворительных
результатов обучения нейронной сети. По этой причине необходимо
построить вектор состояния невозмущенной системы. Для этих целей
предлагается применить Ы-фильтрацию [10] для сигнала 1приШа1а.
Рисунок 1. Обучающие данные
Метод L1-фильтрации строит сигнал х, по заданному у, обеспечивая минимум следующему функционалу
1=2
где Я - неотрицательный параметр, разрешающий компромисс между гладкостью сигнала х и величиной среднеквадратического отклонения.
С помощью L1-фильтрации при Я =2 был получен набор данных, близкий к вектору состояния невозмущенной системы (1). Из рисунка 2 можно заметить, что сигнал, построенный в результате L1-фильтрации, не включает в себя колебательный процесс и может быть использован в обучающих данных в качестве входного сигнала.
_,_,_ ,
\ сигнал с учетом возмущения
4 V...................................................................сигнал без учета возмущения _
\ ---сигнал после И-фильтрации
80 85 90 95 100 105 110
Рисунок 2. Прохождение сигнала через Ь1-фильтр Обучение нейронной сети
В качестве обучающего алгоритма нейронной сети в данной работе рассматривается метод градиентного спуска с учетом моментов, а для оценки целевого выхода и выхода нейронной сети - среднеквадратическое отклонение [6]. В виду того, что величины, входящие в выходной сигнал, имеют разный порядок, предлагается проводить обучение нейронной сети
отдельно для каждой компоненты вектор-функции f ( ).
Нейронная сеть с различным количеством сигмоидальных нейронов на скрытом слое была обучена на одних и тех же обучающих данных. Результаты исследования представлены на рисунке 3. С ростом количества нейронов сеть стремится сократить расхождение целевого выхода (зашумленного сигнала) с выходом нейронной сети. При этом сеть обучается воспроизводить зашумленные данные [3, 5], что не желательно для решения задачи идентификации. При небольшом количестве нейронов скрытого слоя сеть находит закономерности общего характера, что приводит к сближению выхода нейронной сети и незашумленного сигнала. Такой эффект можно наблюдать на правом нижнем графике рисунка 3, на котором представлено поведение нейронной сети с шестью сигмоидальными нейронами.
0.2 0.1 5
27 sigmoidal neurons
— Output plant -Output NN -Original signal
к
\
jf \
- Г\ r
f¡T
Vi
0.2 0.1 5
0.1 0.05
о
-0.05 -0.1
£0 sigmoidal neurons
— Output plant -Output NN -Original signal
V :
f\ r
:\V ..........■v..../ J/\ f\t
i 1
320 930 940 950
13 sigmoidal neurons
-0.05 -0.1
— Output plant -Output NN -Original signal
öS
■ify
v'v rP ^^
¡ " i
HO 920 930 940 950 960
6 sigmoidal neurons
— Output plant -Output NN -Original signal
л, i' \
\\ /X/" V/""
J¿J. v...... \ /
1 i
920 930 940 950
900 910 920 930 940 950 960 970 900
Рисунок 3. Результаты обучения нейронной сети при 27,20,13, 6 нейронов на скрытом
слое
Таким образом, нейронная сеть с небольшим количеством нейронов скрытого слоя успешно справляется с задачей идентификации функции правой части системы (1). Расхождение выхода нейронной сети и
незашумленного
поведения
системы
(1)
составляет
е = ( 1,94-10 °'1,1,65-10 10(разность в порядке величин возникает из-за разного порядка компонент вектора состояния), и, следовательно, обученная нейронная сеть может выступать в качестве функции правых частей f ( ).
При линеаризации нейронной сети параметры получившейся модели будут соответствовать компонентам матриц А и В системы линейный дифференциальных уравнений (3). В таблице 1 приведены эталонные матрицы линейной модели А, В; Аш, Вш - матрицы, полученные в результате линеаризации нейронной сети; Аегг, Вегг - относительная погрешность компонент матриц.
Таблица 1. Оценки параметров линейной модели
'-9.6595 10~2 — 6.9278 .-4.7910 10"3 - 7.1529 10"1 4 ./ 1.95 39 10"1 1.6036 10"2 V
. ' -9.2441 10~2 — 7.3163 A NM ~ i 1 -4.8599 10"J - 7.4472 10"] \ вж - —1.9749 10 1.6186 10"
(4,3013% 5,6074%' 1.4384% 4.1142% V ? / T> _ err "1,0708% 0.9412% V у
Вывод
В данной работе показывается применимость нейросетевого подхода к задаче идентификации линейной модели динамики судов при учете возмущения внешней среды в виде гармонического сигнала.
Нейронная сеть обучается на зашумленных данных таким образом, что находит основные закономерности в динамике объекта управления без учета возмущения. При этом рассматриваемый подход позволяет отыскать компоненты матриц линейной модели (3) с допустимой точностью.
Литература
1. Веремей Е.И., Корчанов В.М., Коровкин М.В., Погожев С.В. Компьютерное моделирование систем управления движением морских подвижных объектов. - СПб: НИИ Химии СПбГУ 2002. 370 с.
2. Дмитриев С.П., Пелевин А.Е. Задачи навигации и управления при стабилизации судна на траектории. - СПб.: ГНЦ РФ-ЦНИИ «Электроприбор», 2002. 160 с.
3. Осовский С. Нейронные сети для обработки информации. - М.: Финансы и статистика, 2002. 344 с.
4. Проскурников A.B., Якубович В.А. Универсальные регуляторы для оптимального отслеживания полигармонических сигналов в системах с запаздыванием. Докл. РАН. 2006. 109-174 с.
5. Уоссерман Ф. Нейрокомпьютерная техника: Теория и практика. - М.: «Мир», 1992. 184 с.
6. Федотова А.О. Нейросетевой подход к идентификации линейной модели динамики судов. Процессы управления и устойчивость: Труды 43-й международной научной конференции аспирантов и студентов. Под ред. А.В. Платонова, Н.В. Смирнова. - СПб.: Изд-во С.-Петерб. ун-та, 2012.
7. Хайкин С. Нейронные сети. - М.: «Вильямс», 2006. 1104 с.
8. Hou M. Amplitude and frequency estimator of a sinusoid. IEEE Transactions on Automatic Control. — 2005. vol. 50. 855-858 p.
9. Галушкин А.И. Нейронные сети: основы теории. - М.: Горячая линия- Телеком, 2010. - 496с.
10. Kim, S.-J., Koh, K., Boyd, S., and Gorinevsky, D., "11 trend filtering," SIAM Review, Vol. 51, No. 2, 2009, pp. 339-360.