Что такое Модели Хаммерстайна-Винера?

Когда вывод системы зависит нелинейно от своих входных параметров, иногда возможно разложить отношение ввода - вывода на два или больше взаимосвязанных элемента. В этом случае можно представлять динамику линейной передаточной функцией и получить нелинейность с помощью нелинейных функций вводов и выводов линейной системы. Модель Хаммерстайна-Винера достигает этой настройки как последовательной связи статических нелинейных блоков с динамическим линейным блоком. Приложения модели Хаммерстайна-Винера охватывают несколько областей, таких как моделирование электромеханической системы и компонентов радиочастоты, аудио и речевой обработки и прогнозирующего управления химических процессов. Эти модели имеют удобное схематическое представление, прозрачное отношение к линейным системам, и легче реализовать, чем мощные нелинейные модели, такие как модели Волтерры и нейронные сети.

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

Структура моделей Хаммерстайна-Винера

Модели Хаммерстайна-Винера описывают динамические системы с помощью одного или двух статических нелинейных блоков последовательно с линейным блоком. Линейный блок является дискретной передаточной функцией, которая представляет динамический компонент модели.

Эта блок-схема представляет структуру модели Хаммерстайна-Винера:

Где,

  • f является нелинейной функцией, которая преобразовывает входные данные u (t) как w (t) = f (u (t)).

    w (t), внутренняя переменная, является выводом блока Input Nonlinearity и имеет ту же размерность как u (t).

  • B/F является линейной передаточной функцией, которая преобразовывает w (t) как x (t) = (B/F) w (t).

    x (t), внутренняя переменная, является выводом блока Linear и имеет ту же размерность как y (t).

    B и F подобны полиномам в линейной модели Output-Error. Для получения дополнительной информации о моделях Output-Error, смотрите то, Что Полиномиальные Модели?.

    Для ny выходные параметры и входные параметры nu, линейный блок является матрицей передаточной функции, содержащей записи:

    Bj,i(q)Fj,i(q)

    где j = 1,2,...,ny и i = 1,2,...,nu.

  • h является нелинейной функцией, которая сопоставляет вывод линейного блока x (t) к системе вывод y (t) как y (t) = h (x (t)).

Поскольку действия f на входном порте линейного блока, эта функция вызвана входная нелинейность. Точно так же, потому что действия h на выходном порте линейного блока, эта функция вызвана выходная нелинейность. Если ваша система содержит несколько вводов и выводов, необходимо задать функции f и h для каждого сигнала ввода и вывода. Вы не должны включать и вход и выходную нелинейность в образцовой структуре. Когда модель содержит только входную нелинейность f, это называется моделью Hammerstein. Точно так же, когда модель содержит только выходную нелинейность h, это называется Винеровской моделью.

Программное обеспечение вычисляет модель Хаммерстайна-Винера вывод y на трех этапах:

  1. Вычислите w (t) = f (u (t)) от входных данных.

    w (t) является входом к линейной передаточной функции B/F.

    Входная нелинейность является статической функцией (без памяти), где значение вывода данное время t зависит только от входного значения во время t.

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

  2. Вычислите вывод линейного блока с помощью w (t) и начальные условия: x (t) = (B/F) w (t).

    Можно сконфигурировать линейный блок путем определения порядков числителя B и знаменатель F.

  3. Вычислите модель, выведенную путем преобразования вывода линейного блока x (t) с помощью нелинейного функционального h в качестве y (t) = h (x (t)).

    Подобно входной нелинейности выходная нелинейность является статической функцией. Можно сконфигурировать выходную нелинейность таким же образом как входную нелинейность. Можно также удалить выходную нелинейность, такую что y (t) = x (t).

Получившиеся модели являются объектами idnlhw, которые хранят все данные модели, включая средства оценки нелинейности и параметры модели. Для получения дополнительной информации об этих объектах, смотрите Нелинейные Образцовые Структуры.

Можно оценить модели Хаммерстайна-Винера в приложении System Identification или в командной строке с помощью команды nlhw. Можно использовать однородно выбранные данные ввода - вывода временного интервала для оценки моделей Хаммерстайна-Винера. Ваши данные могут иметь один или несколько каналов ввода и вывода. Вы не можете использовать данные временных рядов (выведите только), или данные частотного диапазона для оценки. Если у вас есть данные временных рядов, чтобы соответствовать нелинейной модели, идентифицируйте нелинейные модели ARX или нелинейные модели серого поля. Для получения дополнительной информации об этих моделях, см. Идентифицирующие Нелинейные Модели ARX и Оценку Нелинейные Модели Серого Поля.

Смотрите также

|

Похожие темы