Что такое нелинейные модели ARX?

Нелинейные модели ARX расширяют линейные модели ARX до нелинейного случая. Структура этих моделей позволяет вам смоделировать сложное нелинейное поведение с помощью гибких нелинейных функций, таких как вейвлет и сигмоидные сети. Для получения информации о том, когда соответствовать нелинейным моделям, см. «Об идентифицированных нелинейных моделях».

Нелинейная модель ARX расширяет линейную структуру ARX

Линейная модель SISO ARX имеет следующую структуру:

y(t)+a1y(t1)+a2y(t2)+...+anay(tna)=b1u(t)+b2u(t1)+...+bnbu(tnb+1)+e(t)

Где, u, y и e являются входом, выходом и шумом. Эта структура подразумевает, что выходная y тока (t) предсказывается как взвешенная сумма прошлых выходных значений и текущих и прошлых входных значений. na - это количество прошлых выходов терминов, а nb - это количество прошлых входов терминов, используемых для предсказания текущего выхода. Задержка входа nk устанавливается в ноль, чтобы упростить обозначение. Переписывание уравнения как продукты дает:

yp(t)=[a1,a2,...,ana,b1,b2,..,bnb][y(t1),y(t2),...,y(tna),u(t),u(t1),...,u(tnb1)]T

где y(t1),y(t2),...,y(tna),u(t),u(t1),...,u(tnb1) являются задержанными входными и выходными переменными, называемыми регрессорами. Вектор [–a1, ... ,bnb] коэффициентов представляет взвешивание, применяемое к этим регрессорам. Линейная модель ARX таким образом предсказывает выходное yp тока как взвешенную сумму его регрессоров.

Структура нелинейной модели ARX обеспечивает следующую дополнительную гибкость:

  • Вместо взвешенной суммы регрессоров, которая представляет линейное отображение, нелинейная модель ARX имеет более гибкую нелинейную функцию отображения, F.

    yp(t)=F(y(t1),y(t2),y(t3),...,u(t),u(t1),u(t2),..)

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

  • Нелинейные ARX-регрессоры могут быть как задержанными входно-выходными переменными, так и более комплексными, нелинейными выражениями задержанных входных и выходных переменных. Примеры таких нелинейных регрессоров y (t -1)2, u (t-1) * y (t-2), abs (u (t-1)), и макс. (u (t-1) *y (t-3),-10).

Структура нелинейных моделей ARX

Нелинейная модель ARX состоит из регрессоров модели и выходной функции. Выходная функция включает линейные и нелинейные функции, которые действуют на регрессоры модели, чтобы дать выход модели и фиксированное смещение для этого выхода. Этот блок представляет структуру нелинейной модели ARX в сценарии симуляции.

Regressor block is on the left. Output function is on the right. Output function block contains, from top to bottom, Offset, Nonlinear Function, and Linear Function. The inputs to the Regressor block are system input u and the output of the output function y.

Программа вычисляет выходные y нелинейной модели ARX в два этапа:

  1. Он вычисляет значения регрессора из текущих и прошлых входных значений и прошлых выходных данных.

    В самом простом случае регрессоры являются задержанными входами и выходами, такими как u (t -1) и y (t -3). Такие регрессоры называются linear regressors. Линейные регрессоры задаются с помощью linearRegressor объект. Можно также задать линейные регрессоры при помощи линейных порядков моделей ARX в качестве входного параметра. Для получения дополнительной информации см. «Нелинейные порядки модели ARX» и «Задержка». Однако этот второй подход ограничивает набор регрессоров линейными регрессорами с последовательными задержками. Чтобы создать polynomial regressors, используйте polynomialRegressor объект. Можно также задать custom regressors, которые являются нелинейными функциями задержанных входов и выходов. Например, u (t -1) y (t -3) является пользовательским регрессором, который умножает образцы входа и выхода вместе. Задайте пользовательские регрессоры, используя customRegressor объект.

    Можно назначить любой из регрессоров в качестве входов линейному функциональному блоку выходной функции, нелинейному функциональному блоку или обоим.

  2. Он преобразует регрессоры в выходные данные модели с помощью блока выходной функции. Блок выходной функции может включать линейные и нелинейные блоки параллельно. Для примера рассмотрим следующее уравнение:

    F(x)=LT(xr)+g(Q(xr))+d

    Здесь x является вектором регрессоров, а r - средним значением x. F(x)=LT(xr)+y0 - выход блока линейной функции. g(Q(xr))+y0 представляет выход нелинейного функционального блока. Q является проекционной матрицей, которая делает вычисления хорошо обусловленными. d является скалярным смещением, которое добавляется к комбинированным выходам линейного и нелинейного блоков. Точная форма F (x) зависит от вашего выбора выходной функции. Можно выбрать из доступных объектов отображения, таких как сети древовидного раздела, вейвлет и многослойные нейронные сети. Можно также исключить из выходной функции линейный или нелинейный функциональный блок.

    При оценке нелинейной модели ARX программное обеспечение вычисляет значения параметров модели, такие как L, r, d, Q и другие параметры, задающие g.

Получившиеся нелинейные модели ARX idnlarx объекты, которые хранят все данные модели, включая регрессоры модели и параметры выходной функции. Для получения дополнительной информации об этих объектах см. Раздел «Нелинейные структуры модели».

Как правило, вы используете нелинейные модели ARX в качестве структур черного ящика. Нелинейная функция нелинейной модели ARX является гибким оценщиком нелинейности с параметрами, которые не должны иметь физического значения. Вы можете оценить нелинейный ARX в приложении System Identification или в командной строке, используя nlarx команда. Можно использовать равномерно дискретизированные входно-выходные данные временной области или данные timeseries (без входов) для оценки нелинейных моделей ARX. Ваши данные могут иметь один или несколько входных и выходных каналов. Вы не можете использовать данные частотного диапазона для оценки.

Нелинейные порядки модели ARX и задержка

Можно использовать порядки и задержки нелинейной модели ARX, чтобы задать линейные регрессоры модели. Порядки и задержки определяются следующим образом:

  • na - Количество прошлых выходов терминов, используемых для предсказания текущего выхода.

  • nb - Количество прошлых входов терминов, используемых для предсказания текущего выхода.

  • nk - Задержка от входа до выхода по количеству выборок.

Смысл na, nb и nk аналогичен значению для параметров линейной модели ARX. Порядки заданы как скаляры для данных SISO и как ny -by - nu матрицы для данных MIMO, где ny и nu являются количеством выходов и входов. Если вы не уверены, какие значения использовать для порядков и задержек, можно оценить их как описано в Предварительном шаге - Оценка Порядков модели и Входа задержек. Такая оценка основана на линейных моделях ARX и обеспечивает только начальное руководство. Лучшие порядки для линейной модели ARX могут быть не лучшими порядками для нелинейной модели ARX.

System Identification Toolbox™ программное обеспечение вычисляет линейные регрессоры, используя порядки модели и задержки. Например, предположим, что вы задаете na = 2, nb = 3, и nk = 5 для модели SISO с входными u и выходными y. Тулбокс вычисляет линейные регрессоры y (t -2), y (t -1), u( t -5), u (t -6) и u (t -7).

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

См. также

|

Похожие темы