基于快速正交搜索算法的非线性预测控制
2014-08-02张燕申森
张 燕 申 森
(河北工业大学控制科学与工程学院,天津 300130)
快速正交搜索(Fast Orthogonal Search,FOS)算法能够最大限度地减小估算量相对于目标数据的均方误差[1]。与神经网络相比,FOS算法不是依靠耗时的迭代实现最小化,而是直接在一次迭代中就选择出合适的候选函数,并且计算出相应的系数。该算法的实现是在所有的候选函数中选择基础函数,能够使均方误差的减小量最大的候选函数被确定为合适的基础函数,并从候选函数中移除;在剩余的候选函数中重复上述选择过程,直到相应的停止条件满足时结束选择[2]。与普通的最小二乘法相比,FOS算法的优势是能够用更少的模型项建立一个精确的模型,模型项减少的同时也减小了噪声的干扰,从而使系统估算更为准确。目前,FOS算法已经有了很多的实际应用,包括递归滤波去除图像中的高斯噪声和脉冲噪声,语音信号的压缩,磁共振成像和正电子发射断层扫描,以及非线性系统的控制和基因的识别及其对治疗的反应的预测等[3]。
笔者从非线性预测控制的角度出发,利用FOS算法对非线性系统进行辨识,利用辨识模型建立预测控制器,实现基于FOS算法的预测控制。
1 FOS算法和系统辨识①
一个非线性系统可以表示为:
y(k)=F[y(k-1),…,y(k-N),u(k-1),…,
u(k-L)]+e(k)
(1)
式中e(k)——系统误差,数据记录的时间长度n=0,…,N;
F[·]——形式未知的连续非线性函数;
N、L——输入和输出的阶次;
y(k)——系统的输出。
在FOS算法中,式(1)可以进一步改写为:
Pm(k)=y(k-n1),…,y(k-ni),u(k-l1),…,
u(k-lj)
(2)
i≥0,1≤n1≤N,…,1≤ni≤N
j≥0,1≤l1≤L,…,1≤li≤L
式中am——Pm(k)的权值系数。
此时,系统的均方误差mse可以表示为:
上式上方的短横线表示数据记录在时间长度的平均值,该算法在所有的候选函数Pm(k)中进行搜索,选择对均方误差贡献最大的候选函数作为模型项,添加到构建的辨识模型当中。……
