当一个系统的输出非线性地依赖于它的输入时,有时可以将输入-输出关系分解成两个或多个相互关联的元素。在这种情况下,你可以用一个线性传递函数来表示动力学,并使用线性系统的输入和输出的非线性函数来捕捉非线性。Hammerstein-Wiener模型实现了这种配置,将静态非线性块与动态线性块串联起来。Hammerstein-Wiener模型的应用涉及多个领域,如机电系统建模和射频组件、音频和语音处理,以及化学过程的预测控制。这些模型具有方便的块表示,与线性系统之间的关系透明,而且比诸如神经网络和Volterra模型等重型非线性模型更容易实现。
您可以使用Hammerstein-Wiener模型作为黑盒式模型结构,因为它为非线性模型提供了灵活的参数化。例如,您可以估计线性模型,并尝试通过向该模型添加输入或输出非线性来提高其保真度。您还可以使用Hammerstein-Wiener模型作为灰度盒结构,以捕获有关过程特征的物理知识。例如,输入非线性可以表示致动器中的典型物理变换,并且输出非线性可以描述公共传感器特性。有关何时适合非线性模型的更多信息,请参阅关于识别的非线性模型。
Hammerstein-Wiener模型使用一个或两个静态非线性块与一个线性块串联来描述动态系统。线性块是一个离散的传递函数,表示模型的动态部分。
这个框图表示了Hammerstein-Wiener模型的结构:
在哪里,
F是转换输入数据的非线性功能你(T.),W.(T.)=F(你(T.))。
W.(T.),内部变量,是输入非线性块的输出,并且具有相同的尺寸你(T.)。
B / F是转换的线性传递函数W.(T.),X(T.)=(B / F的)W.(T.的)。
X(T.),内部变量是线性块的输出,具有相同的尺寸y(T.)。
B.和F类似于线性输出误差模型中的多项式。有关输出错误模型的更多信息,请参阅什么是多项式模型?。
为了纽约输出和ν输入,线性块是包含条目的传输函数矩阵:
在哪里j=1、2、…,纽约
和一世=1、2、…,怒
。
H是映射线性块的输出的非线性函数X(T.)到系统输出y(T.),y(T.)=H(X(T.))。
因为F在线性块的输入端口作用,此函数称为输入非线性。同样,因为H作用于线性块的输出端口,此函数称为输出非线性。如果您的系统包含多个输入和输出,则必须定义函数F和H对于每个输入和输出信号。您不必在模型结构中同时包含输入和输出非线性。当模型只包含输入非线性时F,它被称为a哈默斯坦模型。类似地,当模型只包含输出非线性时H,它被称为a维纳模型。
该软件计算HammerSein-Wiener模型输出y三个阶段:
计算W.(T.)=F(你(T.))来自输入数据。
W.(T.)为线性传递函数的输入B / F。
输入非线性为静态(记忆力)函数,其中输出的值给定时间T.仅取决于当时的输入值T.。
您可以将输入非线性配置为Sigmoid网络,小波网络,饱和度,死区,分段线性函数,一维多项式或自定义网络。您还可以删除输入非线性。
计算线性块的输出使用W.(T.)和初始条件:X(T.)=(B / F的)W.(T.)。
你可以通过指定分子的顺序来配置线性块B.和分母F。
通过变换线性块的输出来计算模型输出X(T.),使用非线性函数H作为y(T.)=H(X(T.)))。
与输入非线性相似,输出非线性也是一个静态函数。你可以用与输入非线性相同的方式配置输出非线性。您还可以删除输出非线性,如y(T.)=X(T.)。
生成的模型idnlhw.
存储所有型号数据的对象,包括模型参数和非线性估计。有关这些对象的详细信息,请参阅非线性模型结构。
您可以估算Hammerstein-Wiener模型系统识别应用程序或使用该应用程序使用nlhw
命令。您可以使用统一采样的时域输入 - 输出数据来估计HammerseIn-Wiener模型。您的数据可以具有一个或多个输入和输出通道。您不能使用时间序列数据(仅输出)或频域数据进行估计。如果您有时间序列数据,请符合非线性模型,识别非线性ARX模型或非线性灰度盒型号。有关这些模型的更多信息,请参阅识别非线性ARX模型和估计非线性灰度箱型号。