预测控制中的建模方法综述
陈红丽,张国成,万磊
(哈尔滨工程大学 水下智能机器人技术国防科技重点科技实验室,黑龙江 哈尔滨,150001)
摘要:近年来,预测控制作为一种有效的控制方法被应用于许多大型的工业控制领域,而如何建立能够更加逼近真实系统的预测模型则成为预测控制应用效果的关键问题之一。本文根据工业过程控制系统发展的特点和研究热点,介绍近年来工业控制领域中预测控制的建模问题,其中系统描述了建立模型的各类方法和原理,并对各种方法的特征、适用条件以及优缺点进行总结和评述,同时,对未来预测控制中建模问题的研究方向和发展前景进行预测和展望。
关键词:预测控制建模;神经网络建模;模糊建模;支持向量机建模
中图分类号:TP273 文献标志码:A 文章编号:1672-7207(2011)S1-0320-07
Overview of modeling algorithm in predictive control
CHEN Hong-li, ZHANG Guo-cheng, WAN Lei
(State Key Laboratory of Autonomous Underwater Vehicle, Harbin Engineering University, Harbin 150001, China)
Abstract: In recent years, predictive control has been applied in many large industrial control areas as an effective control method. However, the key problem is how to establish a predictive model approaching real system with high precision. According to the developmental character of the industrial control system, the modeling problems related to predictive control in industrial control areas for years were presented in this paper, including the methods and theories. Furthermore, the characters, applicable conditions and relative merits were summarized. It is also clarified that, in the future, the research orientation and the development of the modeling problem in predictive control are predicted and expected.
Key words: modeling algorithm; neural network; fuzzy modeling; support vector machine
以往的经典控制理论和现代控制理论的基点都是被控对象精确的数学模型,然而,实际的工业过程所涉及的对象大多都是多输入、多输出、存在大滞后、强非线性以及不确定性等高维复杂的系统,很难通过常规的方法建立其精确的数学模型,这也就给控制系统的准确性带来了巨大的挑战。如果所建立的预测模型精度低,势必将直接影响到整个系统的控制精度,由此可见,建模成为预测控制中的关键问题之一。所建立的预测模型越逼近真实系统的动态特性,越有利于提高系统的控制精度。近年来,随着智能技术的兴起和发展,将智能技术引入预测控制的建模过程,建立智能模型,成为提高系统控制精度的有效途径之一。
1 预测模型常规建立方法
模型是用于表示系统的内部特性以及它与外界联系的一种描述,是为了研究系统而开发的。预测控制的模型可以分为参数模型和非参数模型(见图1),参数模型包括离散时间模型或连续时间模型、输入输出模型或状态空间模型、确定性模型或随机性模型等[1],非参数模型包括系统辨识等辨识的模型。建立过程的数学模型有两种基本方法:机理分析法和系统辨识方法[2]。机理分析法通常运用一些抑制的定律、定理和原理来分析过程内部各变量的关系,从而建立过程的数学模型。系统辨识是对现有工业过程进行试验,利用试验数据或过程的正常运行数据构造数学模型。系统辨识所得到的模型只依赖于过程的输入输出的因果关系。
阶跃响应模型和脉冲响应模型均属于非参数模型,状态空间模型属于参数模型。在工业控制的过程中,被控对象的各个状态并不都是可测的,因此,在早期工业过程的预测控制实践中,通常采用测试的方法得到基于输入/输出的非参数模型,即只需测定被控对象的阶跃响应或者脉冲响应即可作为系统的预测模型,这无疑为预测控制的建模带来了极大的方便。但实际上,这种方法得到的预测模型是非最小实现的,以至于基于此模型来研究系统的稳定性和鲁棒性在形式上较复杂。
图1 常规的预测模型
Fig.1 Conventional prediction model
基于模型的预测控制方法在工业中能够得到成功应用,在很大程度上依赖于通过辨识获得尽可能准确的被控对象模型。随着预测控制越来越广泛地应用于复杂的工业对象,在测定被控对象的阶跃响应或脉冲响应时,测试信号中不可避免地混入噪声,使得测量结果难免存在模型误差和外界环境干扰,因此,不对被控对象的阶跃响应和脉冲响应进行处理而直接将其作为预测模型是不合理的。在后来的工业过程实践中,人们基于线性化模型来进行非线性预测控制,把对被控对象进行动态测试得到的阶跃响应曲线通过面积法处理转换成传递函数,或者用加入有较大信噪比的伪随机序列信号进行测试得到的结果,经过相关分析法进行处理,先转换成脉冲响应曲线,再转换成传递函数等,然后,通过反算或者计算机仿真得到阶跃响应或脉冲响应进行模型验证,从而最终得到相对精确的预测模型。这种对预测模型的处理方法将有效地减弱噪声及外界干扰对被控对象阶跃响应或脉冲响应模型的影响,现已广泛应用工程实践以及商品工程软件中。
2 基于神经网络的智能预测模型
现代工业的迅速发展加剧了工业过程本身存在的复杂性,由于被控对象的高阶、非线性模型而在预测时域内积分、微分需要大量的计算时间,这成为非线性预测控制应用的主要障碍之一,此外,还存在模型失配以及干扰较大等问题,因此,建立基于输入/输出的智能模型来代替非线性模型是解决这些问题的有效途径之一。
有关人工神经网络(Artificial Neural Network, 即ANN)的研究始于20世纪40年代。1943年,McCulloch和Pitts建立了第一个神经网络的数学模型,即M-P神经元[3]。人工神经网络是采用物理可实现的系统来模仿人脑神经细胞及网格的结构和功能的系统[4]。将人工神经网络中的一些技术和方法引入到预测控制建模问题中,使建模向智能化的方向发展,已成为当前建模问题研究的热点之一。对于非线性系统,将其模型转化为关于参数空间的线性模型是非常困难的,将神经网络与预测控制相结合,获得系统被控对象的智能模型。使用神经网络进行系统辨识则不需要预先建立实际系统的辨识格式,这使得非线性系统的辨识成为可能。神经网络是一种万能逼近器,能够学习和适应严重不确定性系统的动态特性,它对系统进行辨识是通过直接学习系统的输入/输出数据,学习的目的是使得所要求的误差函数达到最小,通过学习,神经网络能够充分逼近任意复杂的非线性输入/输出关系。传统的辨识方法通常会随着被控对象模型参数维数的增大而变得很复杂,但神经网络对系统辨识的收敛速度不依赖于待辨识对象的阶数,而只与神经网络本身的结构及其所采用的学习算法有关。
基于神经网络来建立预测模型进行预测控制,其实质就是利用作为对象辨识模型的神经网络产生预测信号,然后利用优化算法求出控制矢量,从而实现对高阶、非线性模型的预测控制。基于神经网络的预测模型建模可离线进行,这样还可以减少整个控制系统的在线计算量。人工神经网络模型有很多种,其中Werbos提出的误差反向传播(Error back propagation,简称BP)学习算法,是迄今影响最大、使用最多的网络学习算法。1986年,Rumelhart等提出并行分布处理,重新发现并改进了BP算法[5]。
BP模型是一种新型神经网络模型,输入的样本从输入层经隐单元逐层进行传递和处理,最后传向输出层。在逐层处理过程中,每一层神经元的状态只是对下一层神经元的状态产生影响。在输出层,将现行输出和期望输出进行比较,若两者不等,则进入反向传播过程。反向传播时,将误差信号按原正向通路反向传回,同时修正各个隐层的各个神经元的权系数。然后转向正向传播过程。模式正向传播和误差反向传播交替反复进行。随着这种误差逆向传播修正的不断进行,网络对输入模式响应的正确率也不断提高,直到网络的全局误差小于给定的值后学习终止,这样便可得到收敛的网络和相应的稳定权值。
假定在第n次迭代中输出端的第j个单元的输出为yj(n),则该单元的误差信号为:
(1)
其中:dj(n)为该单元的期望输出,定义单元j的平方误差为,则输出端总的平方误差的瞬时值为
(2)
其中:c包含所有输出单元。若训练集中样本总数为N,则平方误差的均值为
(3)
其中:EAV为学习目标函数,学习的目的是使其达最小,EAV是网络所有权值和阈值以及输入信号的函 数[6]。神经网络的学习过程实际就是建立输入到输出的一个映射,即得到系统被控对象的数学模型。图2所示为仅有3层的BP网络结构图。
图2 3层BP网络结构图
Fig.2 Three layers of BP network structure
在通常情况下,标准BP算法的收敛速度较慢,因此,工程上一般采用加惯性项的BP算法或变学习速率的BP算法等改进的BP算法,在提高学习速度的同时,模型预测的精度也很高。
3 模糊预测模型
模糊模型是一种与模糊概念和模糊逻辑有直接关系的系统描述方法,由于模糊本质上是一种非线性模型,适于表达复杂系统的动态特征,而且模糊参数有比较明确的物理含义,一次成为描述复杂系统的一种重要手段[7]。Zadeh在1965年提出用模糊逻辑系统来模拟输入/输出空间之间的非线性映射关系[8]。目前,在非线性系统智能建模方法中,模糊建模是较为成熟的非线性建模方法。模糊系统具有良好的逼近能力,可以以任意精度逼近有界闭集上的连续函数,在理论上已经得到证明;此外,模糊模型还具有很强的鲁棒性和抗干扰性。因此,近年来,非线性系统模糊建模受到广泛重视,许多研究者运用模糊建模的方法成功获得了常规建模方法难以描述的复杂系统模型。最常用的模糊模型有:Mamdani模型、模糊关系模型和Takagi-Sugeno(T-S)模型[8]。其中,T-S模型是Takagi 和Sugeno于1985年提出的一种动态的模糊模型辨识 方法。
T-S模型的前件采用模糊集合的形式,而后件表示为输入变量的线性组合,相当于先将变量空间模糊地划分为若干子空间,然后用线性函数关系拟合每个子空间中的系统特性。利用T-S模型进行模糊辨识的关键就是有效地辨识规则和细化隶属函数及参数。通常完成模糊建模的两个步骤是规则抽取与细化,在此基础上,只要加上模糊化模块与反模糊化模块就可以构成模糊系统,而其中规则的抽取与细化是模糊建模的关键[9]。
模糊规则由多条模糊语句组成,形式为“if…then…”,其形式为:
Ri: If x1 is ,x2 is ,…,xk is
Then (4)
其中:Ri为模型中的第i条规则;xi为系统的第i个输入变量;为一个模糊子集,是与输入变量相应的隶属度函数,即前提参数(前件参数);为结论参数(后件参数)。于是,系统总的输出为:
(5)
(6)
其中:n是模糊规则的数量;wi为广义输入量的第i条规则的隶属度;符号为取小运算。将第i条规则代入式(5),则有
(7)
其中:
(8)
于是,系统输出可以表示为
(9)
其中:
(10)
(11)
基于T-S模糊系统的辨识,首先确定模糊隶属函数的形式,把整个状态空间加以区分(子集),然后根据给定的数据辨识出各个子区中的参数值。给定的数据越多,各子区就越小,辨识出的系统模糊模型的精度也就越高。该方法不需要对所研究的系统过程有详细的了解,其结构和参数的初始化要相对容易,所建立的模糊模型精度较高。
4 基于支持向量机的预测模型
随着人工神经网络技术的进步,利用神经网络来建立非线性过程的智能模型成为预测控制建模的有效手段之一。但是,这种建模方法仍然存在一些难以解决的问题,例如神经网络的结构难以确定(如神经网络类型、隐层层数等)、训练过程中存在局部极小点问题以及存在过学习现象等。最早由Vapnik等在解决模式识别问题时提出的支持向量机(Support vector machine,SVM)以其特有的表达任意非线性映射的能力,为非线性系统建模提供了新的思路和方法[10]。在20世纪90年代,SVM得到人们的关注并得以迅速发展和完善,目前,SVM在过程建模、系统辨识、非线性控制和故障诊断等领域都得到了广泛应用,这使得对SVM的研究具有重要的理论价值和工程意义[11]。
SVM是基于VC理论和风险结构最小化准则的学习方法,是学习统计理论的重要组成部分。它针对线性可分情况进行分析,对于线性不可分的情况,通过非线性映射,把低维度输入空间线性不可分的样本映射到一个高维乃至无穷维的特征空间使其线性可分,使在特征空间中可以应用线性学习机的方法解决样本空间中的高度非线性分类和回归问题。SVM根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度)和学习能力之间寻求最佳折中,以期获得最强的推广能力。
与神经网络相比,SVM能自动根据训练集确定模型的结构和参数,模型参数少,而且可以逼近任意一类非线性函数,同时,运算速度快,不会像神经网络一样陷入局部解,其推广能力要明显优于神经网络等一些学习方法。此外,它克服了传统统计学研究中样本数目趋于无穷大时渐近理论的限制以及经验非线性方法(如人工神经网络存在需要确定网络结构、过学习和在非线性优化问题中的局部极小等问题),在解决小样本、非线性、高维模式识别等问题中表现出许多特有的优势,并能够推广应用到函数拟合等其他问题中。
1998年,Drezet & Harrison提出SVM可用于线性或非线性系统的建模,即SVM既可用于线性动态模型参数的估计,也可用于非线性模型结构的确 定[12-13]。非线性动态系统的模型函数形式有很多种,基于SVM的预测模型通常采用的模型函数为:
(12)
对式(12)引入一个回归矢量:
(13)
则模型函数变为:
(14)
建模任务是确定fSVM(·)的具体形式和参数矢量θ的具体值。只要把回归矢量φ(k)和输出值看作是SVM训练样本对(x,y),非线性系统建模的问题即可看作回归支持向量机问题,而建模的过程就是支持向量机的训练过程。建模原理如图3所示。
应当注意的是:采用上述模型结构时,回归矢量(即变量m和n)的确定特别重要。回归矢量的选择由被控对象的阶次决定。若系统的阶次估计过低,则建模精度不够;若系统的阶次估计过高,则会增加辨识的计算量,使所得模型的泛化能力恶化,预测的精度不够。若知道系统过程的物理性质,则可根据物理机理来确定系统的阶次[14]。
图3 基于SVM的系统建模原理图
Fig.3 System modeling algorithm based on SVM
SVM在建模方面的许多优点,使得它在非线性预测控制中得到了越来越多的研究和应用。但它依然存在一些问题,例如,SVM训练算法是求取一个二次规划问题来实现的,当训练样本增多时,SVM面临维数灾难,导致无法训练;另外,SVM处理信息一般不能将输入信息空间维数简化,当输入信息空间维数较大时,就会导致SVM训练时间增加。基此原因,产生了诸多改进的SVM算法,例如Gretton将Scholkopt提出的γ-SVM算法应用到了液压机器人手臂的动态建模,其仿真结果表明该模型的效果优于单隐层sigmoid神经网络模型。1999年,Suykens[15-16]在传统SVM的基础上,提出了最小二乘支持向量机(Least Squares Support Vector Machines,即LS-SVM)方法[17]。本文结合当前的研究热点,主要针对建立基于最小二乘支持向量机的模型进行说明。
最小二乘支持向量机的训练过程也遵循SVM算法的结构风险最小化原则,将SVM中目标函数的不等式约束改为等式约束,将求解二次规划问题转化成求解线性方程组,并将经验风险由偏差的一次方改为二次方,避免了不敏感损失函数,大大降低了复杂度,在非线性预测控制方面更具有优势,同时解决了其中存在的鲁棒性、稀疏性和大规模运算等问题,且运算速度高于一般的支持向量机[18]。以下具体说明基于LS-SVM的建立预测模型的过程。
给定训练样本集{(x1,y1),(x2,y2),…,(xl,yl)},其中i=1,2,…,l。是第i个样本的输入数据,是相应的输出。对于非线性系统,采用如下形式的函数对未知函数进行估计:
(15)
式中:权矢量属于原始空间;b是偏差量,两者均是待确定的参数,是将原始空间的输入数据映射到高维特征空间。LS-SVM的优化问题被定义为:
(16)
满足等式约束:
(17)
其中:C为正则化参数;ei是第i个数据的实际输出和预测输出之间的误差。目标函数的第1项对应模型的泛化能力,第2项说明了模型的精确性,而参数C作为模型泛化能力和精度之间的一个折中参数,可人为调整。
构建上述优化问题的Lagrange函数:
(18)
式中:αi为Lagrange乘子,。根据最优性条件,求L关于变量的偏微分可得:
(19)
由于,因此,,Lagrange乘子αi就不等于0,故LS-SVM不存在稀疏性。消去上述方程组中的变量w和ei,可得矩阵方程[19]:
(20)
式中:;,;Il是l×l的单位阵;;为所选核函 数[20]。假设矩阵
可逆,则参数α和b的解析解可以通过下式得到:
(21)
最终可得LS-SVM估计模型的表达式为:
(22)
利用LS-SVM的非线性系统预测模型控制,即使存在严重噪声时,其辨识精度也是令人满意的。与SVM的二次规划寻优问题相比,其运算量和内存需求是非常低的[21]。所以,基于LS-SVM的预测控制尤其值得研究。
5 结论
预测控制的算法到现在已经发展到几十种,各种算法采用的预测模型都不尽相同。本文系统阐述了预测模型在工业过程控制中的重要性、建立预测模型所采用的具体方法以及各种方法的适用条件和优缺点。智能技术的发展将预测控制的建模问题带入了一个新的研究高度,在未来的系统建模过程中,多种智能理论和算法的结合进行建模将是必然趋势,例如模糊算法、人工神经网络、自适应算法、遗传算法以及支持向量机等先进算法之间的结合,使得所建立的模型更加逼近真实系统,从而预测模型向着智能化方向发展并日趋完善。
参考文献:
[1] 高异. 基于支持向量机的非线性系统建模与控制[D]. 西安: 西安理工大学, 2006: 5-44.
GAO Yi. Nonlinear system identification and control based on support vector machine[J]. Xi’an: Xi’an University of Technology, 2006: 5-44.
[2] 李少远. 工业过程系统的预测控制[J]. 控制工程, 2010, 17(4): 407-415.
LI Shao-yuan. Model-based predictive control for industrial process: A survey[J]. Control Engineering of China, 2010, 17(4): 407-415.
[3] 佟哲琼. 基于神经网络的非线性预测控制的研究[D]. 大连: 大连理工大学, 2005: 4-18.
TONG Zhe-qiong. Study of predictive control based on neural network in nonlinear system[D]. Dalian: Dalian University of Technology, 2005: 4-18.
[4] 任天睿. 基于BP神经网络模型的发动机怠速预测控制[D]. 南京: 南京理工大学, 2003: 11-39.
REN Tian-rui. Engine idle speed predictive control based on BP neural network[D]. Nanjing: Nanjing University of Science and Technology, 2003: 11-39.
[5] 陈建华. 基于神经网络的非线性预测控制研究及其应用[D]. 北京: 华北电力大学, 2007: 9-56.
CHEN Jian-hua. Research and application of predictive control for nonlinear systems based on neural network[D]. Beijing: North China Electric Power University, 2007: 9-56.
[6] 段向军. 基于神经网络的预测控制方法研究[D]. 大庆: 大庆石油学院, 2005: 5-50.
DUAN Xiang-jun. Study of predictive control based on neural network[D]. Daqing: Daqing Petroleum Institute, 2005: 5-50.
[7] 罗秋滨. 一类非线性系统预测控制中的建模问题[D]. 哈尔滨: 哈尔滨工业大学, 2008: 11-73.
LUO Qiu-bin. Modeling problems in nonlinear predictive control[D]. Harbin: Harbin Institute of Technology, 2008: 11-73.
[8] 刘斌. 非线性系统建模及预测控制若干问题研究[D]. 杭州: 浙江大学, 2004: 2-95.
LIU Bin. A study on nonlinear system modeling and predictive control[D]. Hangzhou: Zhejiang University, 2004: 2-95.
[9] 丁丹萍. T-S模糊模型可辨识条件及其应用[D]. 大连: 大连理工大学, 2008: 2-14.
DING Dan-ping. T-S, Identifiable conditions of T-S fuzzy model and its application[D]. Dalian: Dalian University of Technology, 2008: 2-14.
[10] 吴进华, 周大旺, 程春华. 支持向量机非线性辨识与控制概述[J]. 战术导弹控制技术, 2009, 31(2): 28-32.
WU Jin-hua, ZHOU Da-wang, CHENG Chun-hua. Summarize of support vector nonlinear system identification and control[J]. Control Technology of Tactical Missile, 2009, 31(2): 28-32.
[11] 孙峰超. 基于最小二乘支持向量机的非线性预测控制[D]. 北京: 中国石油大学, 2010: 8-15.
SUN Feng-chao. Nonlinear model predictive control based on least squares support vector machine[D]. Beijing: China University of Petroleumn, 2010: 8-15.
[12] 包哲静. 支持向量机在智能建模和模型预测控制中的应用[D]. 杭州: 浙江大学, 2007: 8-104.
BAO Zhe-jing. Applications of support vector machine in intelligent modeling and model predictive control[D]. Hangzhou: Zhejiang University, 2007: 8-104.
[13] Bao Z J, Pi D Y, Sun Y X. Nonlinear model predictive control based on support vector machine with multi-kemel[J]. Chinese Journal of Chemical Engineering, 2007, 15(5): 691-697.
[14] 宋海滨, 刘云帼. 基于支持向量机的预测控制算法[J]. 测控技术, 2006, 25(4): 59-61.
SONG Hai-bin, LIU Yun-guo. Prediction and control method based on support vector machine[J]. Measurement and Control Technique, 2006, 25(4): 59-61.
[15] Suykens J A K. Least squares support vector machines for classification and nonlinear modeling[J]. Neural Network World, 2000, 10(1): 29-47.
[16] Suykens J A K. Support vector machine: A nonlinear modeling and control perspective[J]. European Journal of Control, 2001, 7: 311-327.
[17] 焦巍, 刘光斌. 非线性模型预测控制的智能算法综述[J]. 系统仿真学报, 2008, 20(24): 6581-6586.
JIAO Wei, LIU Guang-bin. Overview of intelligent algorithms in nonlinear model predictive control[J]. Journal of System Simulation, 2008, 20(24): 6581-6586.
[18] 程萍. 基于最小二乘支持向量机的非线性广义预测控制[D]. 太原: 太原理工大学, 2010: 19-64.
CHENG Ping. Generalized predictive control algorithm based on least squares support vector machine[D]. Taiyuan: Taiyuan University of Technology, 2010: 19-64.
[19] 李海生, 钟震宇, 张严林. 基于最小二乘支持向量机的预测控制[J]. 计算技术与自动化, 2009, 28(1): 32-36.
LI Hai-sheng, ZHONG Zhen-yu, ZHANG Yan-lin. Predictive control based on least squares support vector machine[J]. Computing Technology and Automation, 2009, 28(1): 32-36.
[20] 李丽娟. 最小二乘支持向量机建模及预测控制算法研究[D]. 杭州: 浙江大学, 2008: 4-48.
LI Li-juan. The study of modeling Algorithm based on LS-SVM and predictive control algorithm[D]. Hangzhou: Zhejiang University, 2008: 4-48.
[21] 陈爱军. 最小二乘支持向量机及其在工业过程建模中的应用[D]. 杭州: 浙江大学, 2006: 47-74.
CHEN Ai-jun. The study of least squares support vector machine and its application in industrial process modeling[D]. Hangzhou: Zhejiang University, 2006: 47-74.
(编辑 杨幼平)
收稿日期:2011-04-15;修回日期:2011-06-15
通信作者:陈红丽(1984-),女,内蒙古赤峰人,硕士研究生,从事船舶以及海洋结构物的动力定位及先进控制方法研究;E-mail:baiyin_hit@yahoo.com.cn