系统辨识

根据系统的输入输出时间函数来确定描述系统行为的数学模型,是现代控制理论中的一个分支。对系统进行分析的主要问题是根据输入时间函数和系统的特性来确定输出信号。对系统进行控制的主要问题是根据系统的特性设计控制输入,使输出满足预先规定的要求。而系统辨识所研究的问题恰好是这些问题的逆问题。通常,预先给定一个模型类M={M}(即给定一类已知结构的模型),一类输入信号u和等价准则J=L(y,yM)(一般情况下,J是误差函数,是过程输出y和模型输出yM的一个泛函)。然后选择使误差函数J达到最小的模型,作为辨识所要求的结果。系统辨识包括两个方面:结构辨识和参数估计。对于一个实际应用领域,要找到系统的合适的模型往往是很困难的,特别是结构的选择,它主要取决于对系统已有的知识和应用模型的目的。由于应用领域的多样性,结构的选择很难有一般的规则可循。此外,有时也利用系统的输入输出来辨识模型的结构,特别是在已知系统是线性的情况下,模型的阶或结构指标是通过辨识来得到的。如果模型的结构已知,辨识剩下的问题就是参数估计,即通过实验数据确定模型中的未知参数。之所以用“估计”,是因为对于几乎所有实际情形,实验数据总是有误差的。因此参数估计必须使用统计方法才能得到良好的结果。在实际的辨识过程中,随着使用的方法不同,结构辨识和参数估计这两个方面并不是截然分开的,而是可以交织在一起进行的。

辨识的目的

在提出和解决一个辨识问题时,明确最终使用模型的目的是至关重要的。它对模型类(模型结构)、输入信号和等价准则的选择都有很大的影响。通过辨识建立数学模型通常有四个目的。

(1)估计具有特定物理意义的参数 有些表征系统行为的重要参数是难以直接测量的,例如在生理、生态、环境、经济等系统中就常有这种情况。这就需要通过能观测到的输入输出数据,用辨识的方法去估计那些参数。

(2)仿真 仿真的核心是要建立一个能模仿真实系统行为的模型。用于系统分析的仿真模型要求能真实反映系统的特性。用于系统设计的仿真,则强调设计参数能正确地符合它本身的物理意义。

(3)预测 这是辨识的一个重要应用方面,其目的是用迄今为止系统的可测量的输入和输出去预测系统输出的未来的演变。例如最常见的气象预报,洪水预报,其他如太阳黑子预报,市场价格的预测,河流污染物含量的预测等。预测模型辨识的等价准则主要是使预测误差平方和最小。只要预测误差小就是好的预测模型,对模型的结构及参数则很少再有其他要求。这时辨识的准则和模型应用的目的是一致的,因此可以得到较好的预测模型。

(4)控制 为了设计控制系统就需要知道描述系统动态特性的数学模型,建立这些模型的目的在于设计控制器。建立什么样的模型合适,取决于设计的方法和准备采用的控制策略。

辨识的基本步骤

下图说明系统辨识过程主要步骤的流程。

图 先验知识和建模目的

辨识首先考虑先验知识和建模的目的。先验知识是指关于系统运动规律、数据以及其他方面的已有知识。这些知识对选择模型的结构、设计实验和决定辨识方法等都具有重要的作用。例如可以从基本的物理定律(牛顿定律,基尔霍夫定律,物质守恒定律等)去确定模型结构,建立所研究的变量之间的关系。如果关于这方面的知识是完备的,模型的结构和参数(至少在原则上)便是可以确定的。在空间技术的应用中建立飞行器的动力学模型就是一个例子。但在多数情形下却很难做到这一点。这时先验知识虽然不能完全确定模型,但是在模型结构(也就是辨识中的模型类)的选择上仍然是一个重要因素。此外,对参数变化范围的确定、初值的选取,对数据的必要的限制,以及对模型的适用性进行检验等方面,先验知识也都是最重要的依据。

其次,建模的目的对于确定模型的结构和辨识方法也有重要意义。用于不同目的的模型可能会有很大的差别。在估计具有特定物理意义的参数时,主要考虑模型的参数值与真实的参数值是否一致。在建立预测模型时,只需要考虑预测误差。在建立仿真模型时,就要根据应用的要求去决定仿真的深度,也就是决定模型结构的复杂程度。而对于设计控制系统的模型,则出于不同的控制目的可选择不同的模型类。

实验设计

辨识的基础是输入和输出数据,而数据来源于对系统的实验和观测,因此辨识归根到底是从数据中提取有关系统的信息的过程,其结果是和实验直接联系在一起的。设计实验的目标之一是要使所得到的数据能包含系统的更多的信息。为此,首先要确定用什么准则来比较数据的好坏。这种准则可以是从辨识的可行性出发的,也可以是从某种最优性原则出发的。实验设计要解决的问题主要是:输入信号的设计,采样区间的设计,预采样滤波器的设计等(见系统辨识实验设计)。

模型结构

辨识中的模型结构是指辨识问题中所选择的模型类中的数学模型M 的具体表达形式,例如一般的动态模型

中,函数fg 的形式就是模型的结构。

线性系统的结构可以通过输入输出数据进行辨识外,一般的模型结构主要通过先验知识来得到。

参数估计

在知道被辨识的模型的结构之后,模型中可能还会有一些参数的值是未知的,例如前面所举的动态模型中的向量θλ。用输入输出数据去确定这些参数值就是参数估计。实际的测量都是有误差的,所以参数估计以统计方法为主。

对于给定的输入输出数据(在某种实验下取得的)和参数估计算法,首先需要考虑的是能否得到唯一的参数估计值,这就是可辨识性问题。只有在可辨识的前提下,估计算法才是有效的。

参数估计算法按执行的方式可分为一次完成算法和递推算法两类。一次完成算法是将所有的数据一次进行处理,即根据全部数据得到参数的估计。递推算法则是随着数据的采集不断用新的数据在原有的估计的基础上,通过某种递推的办法得到新的估计。这种算法适合在线应用。

模型适用性检验

通过参数估计得到的模型,虽然按某种准则在选定的模型类中是最好的,但是并不一定能达到建模的目的,所以还必须进行适用性检验。这是辨识过程的重要一环,只有通过适用性检验的模型才是最终的模型。

造成模型不适用主要有三个方面的原因:模型类(模型的结构)选择不当;实验数据误差过大或由于实验条件限制,数据的代表性太差;辨识算法存在问题(例如没有考虑必要的约束)。

模型是否适用与建模的目的紧密相关,所以很难得出统一的检验方法,而是要根据问题的性质采取不同的方法。一般来说,适用性检验在得到模型后进行,但也可以在辨识过程的各个阶段进行。例如,考察模型的结构可辨识性本身就是一种适用性检验,不可辨识的模型当然是不适用的。

适用性检验的方法主要有两类:利用先验知识检验和利用数据检验。利用先验知识是适用性检验的一条重要途径。有一些模型从数据的拟合上看不出问题,但是根据对模型已有的知识却可以断定模型是否适用。例如辨识一个化学反应动力学模型:已经知道反应物浓度增大并不抑制反应,如果参数估计的结果反应系数是负的,就可断定这是不合理的。又如辨识生理动力学模型:如果参数估计得到的参数值已超过生理学已知的可能范围,这样的模型也是不适用的。适用性检验的另一条途径是,利用数据在同一模型类中或在不同的模型类中进行比较。在得到模型后常常用一组不同于辨识时用的数据去检验模型的精度。如果检验的结果有过大的误差,则可能存在两个问题:辨识用的数据缺乏代表性或所选的模型类不合适。在不同类的模型中进行比较所用的方法主要是统计检验(如 F检验、似然比检验)或者是在拟合误差的基础上加上评价模型的惩罚项(如赤池的AIC准则)。

应用

凡是需要通过实验数据确定数学模型和估计参数的场合都要利用辨识技术,辨识技术已经推广到工程和非工程的许多领域,如化学化工过程、核反应堆、电力系统、航空航天飞行器、生物医学系统、社会经济系统、环境系统生态系统等。适应控制系统则是辨识与控制相结合的一个范例,也是辨识在控制系统中的应用。

参考书目
  1. G.C.哥德温、R.L.潘恩著,张永光、袁震东译:《动态系统辨识》,科学出版社,北京,1983。(G.C.Goodwin and R.L.Payne,Dynamic System Identification: Experiment Design and Data Analysis, Academic Press, New York,1977.)