CN102055694A - 基于粒子群的非线性系统辨识方法 - Google Patents

基于粒子群的非线性系统辨识方法 Download PDF

Info

Publication number
CN102055694A
CN102055694A CN2010105872164A CN201010587216A CN102055694A CN 102055694 A CN102055694 A CN 102055694A CN 2010105872164 A CN2010105872164 A CN 2010105872164A CN 201010587216 A CN201010587216 A CN 201010587216A CN 102055694 A CN102055694 A CN 102055694A
Authority
CN
China
Prior art keywords
particle
linear system
non linear
population
iteration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010105872164A
Other languages
English (en)
Other versions
CN102055694B (zh
Inventor
葛建华
田宏洁
王勇
宫丰奎
李靖
张南
高明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN 201010587216 priority Critical patent/CN102055694B/zh
Publication of CN102055694A publication Critical patent/CN102055694A/zh
Application granted granted Critical
Publication of CN102055694B publication Critical patent/CN102055694B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于粒子群的非线性系统辨识方法。主要针对传统辨识方法对加性噪声敏感性高导致方法收敛性能下降的缺点。其实现步骤为:设置非线性系统的最高阶次、最大记忆长度和系统的系数矢量;确定辨识问题的约束条件并设计目标函数;设置粒子群的参数,生成粒子群初始速度矩阵和空间位置矩阵;根据粒子群空间位置矩阵和目标函数计算粒子群的最优解和最优适合度;根据粒子群速度更新公式和空间位置更新公式更新粒子群速度和空间位置矩阵;若粒子群最优适合度或迭代次数满足收敛条件,则结束辨识。本发明能够降低对加性噪声的敏感性,提高加性噪声条件下对非线性系统的辨识性能。

Description

基于粒子群的非线性系统辨识方法
技术领域
本发明属于无线通信技术领域,涉及一种针对非线性系统的辨识方法,可应用于无线通信系统中预失真与盲均衡。
背景技术
随着科学技术的发展,人们逐渐意识到借助于数学模型研究各种系统或事物的变化规律具有其他模型方法所不可比拟的优势,系统辨识的原理就是研究如何利用已知条件来求取数学模型的未知参量。
在现实生活中,绝大多数系统具有非线性,即输入输出数据之间存在非线性变化,属于非线性系统。因此研究线性系统辨识算法仅仅具有研究意义,但是并不具有现实意义,因此人们逐渐将研究重点转移到解决非线性系统辨识的辨识算法问题。研究人员提出了许多辨识算法解决非线性系统的参数辨识问题。传统辨识算法有最小均方误差算法LMS、最小二乘算法LS以及这些算法的改进算法,如归一化最小均方误差算法NLMS和递归最小二乘算法RLS等等。其中LMS算法,NLMS算法以及RLS算法是迭代自适应算法,利用梯度最小原理进行搜索,由于迭代过程搜索方向具有确定性,导致这些算法对于加性噪声非常敏感,故稳定性较差,LS算法需要求解矩阵的逆,复杂度太高,不具有实际应用性,因此如何提高辨识算法在加性噪声下对非线性系统参数辨识的性能成为研究人员关心的一个重要问题。
发明内容
本发明的目的在于克服上述已有技术的不足,提出一种基于粒子群的非线性系统辨识方法,以减小计算复杂度和对加性噪声的敏感性,提高加性噪声条件下对非线性系统的辨识性能。
本发明是这样实现的:
一.技术原理
非线性系统辨识的原理如附图1所示,其中x(n)表示非线性系统的输入数据,h(n)表示非线性系统的响应,y(n)表示输入数据序列x(n)经过非线性系统h(n)后的输出数据,
Figure BDA0000038160240000021
为利用辨识算法得到的非线性系统响应h(n)的近似估计响应,N(n)为非线性系统的加性噪声,
Figure BDA0000038160240000022
为输入数据x(n)经过辨识算法辨识得到的系统响应为的非线性系统的输出数据,
Figure BDA0000038160240000024
表示实际非线性系统与辨识算法辨识出的系统h(n)输出数据的绝对误差。
辨识算法采用迭代方式,利用辨识系统输出数据与实际系统的输出数据y(n)的绝对误差e(n)对辨识系统的参数迭代更新,通过不断减小辨识系统的输出数据
Figure BDA0000038160240000026
与实际系统的输出y(n)的绝对误差直到满足收敛条件为止来保证算法的辨识性能。
二.技术方案
本发明基于粒子群实现非线性系统的辨识,包括如下步骤:
(1)参数设置步骤
(1a)设置待辨识的非线性系统的最高阶次Omax和最大记忆长度Mmax以及非线性系统的系数矢量
Figure BDA0000038160240000031
确定非线性系统的等式约束条件gm(x),m=1,2,..S,S为等式约束条件的个数,以及不等式约束条件hn(x),n=1,2,..Q,Q为不等式约束条件的个数;
(1b)根据最小均方误差准则设计目标函数f(x),利用罚函数法将非线性系统的等式约束条件g(x)和不等式约束条件h(x)与目标函数f(x)合并生成罚函数F(x);
(1c)设置最大迭代次数Imax,收敛阈值s,s为大于0的小正数,设置粒子群中粒子数目M,粒子的速度矢量以及空间位置矢量长度为D=Omax*Mmax,设置自身更新加速因子c1和群体更新加速因子c2,这两个因子的取值均为2,设置粒子空间位置搜索范围为[-a,+a],α为大于0的正数,根据具体辨识问题设置数值,设置粒子速度变化范围为[-b,+b],β为大于0的正数,根据具体辨识问题设置取值,并且β满足β=γ*α,其中γ=1,表示粒子速度变化范围最大值β与粒子空间位置变化范围最大值α的比例;
(2)初始迭代时刻粒子群速度矩阵和空间位置矩阵生成步骤
(2a)在粒子空间位置搜索范围[-a,+a]内随机生成初始迭代时刻粒子群的空间位置矩阵:
PM*D(1)=[P1(1)P2(1)...Pi(1)...PM(1)]T
式中Pi(1)=[pi1(1)pi2(1)...pij(1)...piD(1)],pij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数的辨识值,i=1,2,...,M,表示粒子群中粒子的序号,M为粒子群中粒子数目,j=1,2,...,D,表示非线性系统的参数序号,D为粒子的速度矢量以及空间位置矢量长度;
(2b)在粒子速度变化范围[-b,+b]内随机生成初始迭代时刻粒子群的速度矩阵:
VM*D(1)=[V1(1)V2(1)...Vi(1)...VM(1)]T
式中Vi(1)=[vi1(1)vi2(1)...vij(1)...viD(1)],vij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值;
(3)初始迭代时刻粒子群最优解及最优适合度计算步骤
(3a)设置迭代时刻k=1,数据序号a=0;
(3b)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量
Figure BDA0000038160240000041
对数据矢量
Figure BDA0000038160240000042
进行处理得到一个新的数据矢量
Figure BDA0000038160240000043
将该新的数据矢量
Figure BDA0000038160240000044
与粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)的转置矢量
Figure BDA0000038160240000045
相乘,得到初始迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
Figure BDA0000038160240000046
(3c)重复步骤(3b)W次,得到初始迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure BDA0000038160240000047
z=1,2,...,W,W取值为100;
(3d)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)计算初始迭代时刻第i个粒子的目标函数fi(z);
(3e)将初始迭代时刻第i个粒子的目标函数fi(z)和粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)代入罚函数F(x),计算初始迭代时刻第i个粒子的适合度Fi(z),并根据Fi(z)计算初始迭代时刻第i个粒子的适合度均值:
(3f)将初始迭代时刻第i个粒子的适合度均值设置为第i个粒子的最优适合度:
Figure BDA0000038160240000052
将初始迭代时刻第i个粒子的空间位置矢量设置为第i个粒子的最优解:Pipbest=Pi(1);
(3g)找出初始迭代时刻最优适合度:
Figure BDA0000038160240000053
i=1,2,...,M和最优适合度对应的粒子Pmin(1);将初始迭代时刻最优适合度设置为粒子群最优适合度:Fgbest=Fmin(1),将初始迭代时刻最优适合度Fmin(1)对应粒子的空间位置矢量设置为粒子群最优解:Pgbest=Pmin(1);
(3h)判断粒子群最优适合度Fgbest是否小于收敛阈值s,若是,辨识过程结束,否则进行下一步骤;
(4)粒子群速度矩阵和空间位置矩阵更新步骤
(4a)设迭代时刻为:k=k+1;
(4b)根据粒子群速度更新公式更新k迭代时刻粒子群速度矩阵VM*D(k)中的元素vij(k),得到k+1迭代时刻粒子群速度矩阵VM*D(k+1)中的元素vij(k+1):
vij(k+1)=vij(k)+c1*r1*(pipbest,j-pij(k))+c2*r2*(pgbest,j-pij(k))
式中r1和r2为取值均在[0,1]范围内的随机变量,vij(k)和vij(k+1)分别表示k迭代时刻和k+1迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值,pij(k)表示k迭代时刻第i个粒子对非线性系统第j个参数的辨识值,pipbest,j表示第i个粒子对非线性系统第j个参数辨识的最优解,pgbest,j表示粒子群对非线性系统的第j个参数辨识的最优解;
(4c)根据粒子群空间位置更新公式更新k迭代时刻粒子群空间位置矩阵PM*D(k)中的元素pij(k),得到k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中的元素pij(k+1):
pij(k+1)=pij(k)+vij(k+1)
式中pij(k+1)表示k+1迭代时刻第i个粒子对非线性系统的第j个参数的辨识值;
(5)更新后的粒子群最优解及最优适合度计算步骤
(5a)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量对数据矢量进行处理得到一个新的数据矢量
Figure BDA0000038160240000063
将该新的数据矢量与粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量Pi(k+1)的转置矢量
Figure BDA0000038160240000065
相乘得到k+1迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
Figure BDA0000038160240000066
(5b)重复步骤(5a)W次,得到k+1迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure BDA0000038160240000067
(5c)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)计算k+1迭代时刻第i个粒子的目标函数fi(z);
(5d)将k+1迭代时刻第i个粒子的目标函数fi(z)和k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量Pi(k+1)代入罚函数F(x),计算k+1迭代时刻第i个粒子的适合度Fi(z),并根据Fi(z)计算k+1迭代时刻第i个粒子的适合度均值:
Figure BDA0000038160240000068
(5e)将k+1迭代时刻第i个粒子的适合度均值
Figure BDA0000038160240000069
与第i个粒子的最优适合度Fi,pbest进行比较,如果k+1迭代时刻第i个粒子的适合度均值
Figure BDA0000038160240000071
小于第i个粒子的最优适合度Fi,pbest,则第i个粒子的最优适合度:第i个粒子的最优解:Pipbest=Pi(k+1),否则第i个粒子的最优适合度和最优解保持不变;
(5f)找出k+1迭代时刻的最优适合度:
Figure BDA0000038160240000073
和最优适合度对应的粒子Pmin(k+1);如果k+1迭代时刻的最优适合度小于粒子群最优适合度Fgbest,则粒子群最优适合度:Fgbest=Fmin(k+1),粒子群最优解:Pgbest=Pmin(k+1),否则粒子群最优适合度和最优解保持不变;
(5g)判断粒子群最优适合度Fgbest是否小于收敛阈值s,若是,粒子群辨识过程结束,否则进行下一步骤;
(6)返回到步骤(3),重复以上过程直到粒子群最优适合度Fgbest小于设定的收敛阈值s或是迭代时刻k达到设定的最大迭代次数Imax
本发明具有如下优点:
首先,由于粒子群辨识方法对非线性系统辨识时与传统辨识算法相比不需要计算矩阵的逆,而是使用迭代方式逐步减小粒子群的适合度来辨识系统参数矢量的最优解,因此使用粒子群辨识方法在对非线性系统辨识时具有计算复杂度低的优点;
其次,由于粒子群辨识算法搜索方向具有随机性,在加性噪声条件下可以对可行解空间进行全局搜索,而传统辨识算法搜索方向具有确定性,在加性噪声条件下搜索方向会偏离正确的方向,因此使用粒子群辨识方法对非线性系统辨识具有对系统的加性噪声敏感性低的优点,可以提高加性噪声条件下对非线性系统的辨识性能。
附图说明
图1是非线性系统辨识原理图;
图2是本发明的粒子群辨识的流程框图;
图3是本发明的粒子群辨识搜索路径示意图;
图4是本发明的粒子群辨识性能仿真图。
具体实施方式
下面将结合附图对本发明进行详细描述。
参照图2,本发明的实现步骤如下:
步骤一:参数设置。
1.1)将待辨识的非线性系统表示如下:
Figure BDA0000038160240000081
式中n=0,1,2,...,Dmax,表示非线性系统数据序号,Dmax表示非线性系统数据长度,y(n)为非线性系统的输出数据序列;f=1,2,..,Omax,表示非线性系统的阶次取值,Omax表示非线性系统的最高阶次,取值为大于等于3的整数;l=1,2,...,Mmax,表示非线性系统的记忆长度取值,Mmax表示非线性系统的最大记忆长度,取值为大于等于3的整数;hfl表示非线性系统阶次为f记忆长度为l的核u(n-l)|u(n-l)|f-1的系数,根据具体辨识问题设置取值为实数或是复数;u(n)为非线性系统的输入数据序列,N(n)为非线性系统的加性噪声数据序列。
1.2)根据最小均方误差准则设计目标函数f(x);利用罚函数法将非线性系统的等式约束条件g(x)和不等式约束条件h(x)与目标函数f(x)合并生成罚函数F(x),用公式表示如下:
Figure BDA0000038160240000091
式中f(x)表示根据最小均方误差准则设计的目标函数,gm(x)表示非线性系统的等式约束条件,根据具体辨识问题确定,m=1,2,...S,S为等式约束条件的个数,hn(x)表示非线性系统的不等式约束条件,根据具体辨识问题确定,n=1,2,..Q,Q为不等式约束条件的个数;lm和mn分别表示非线性系统辨识问题的等式约束条件gm(x)和不等式约束条件hn(x)的罚因子,取值均为大于0的正数;max(0,hn(x))表示取0和hn(x)两者中的较大值;
1.3)设置最大迭代次数Imax,收敛阈值s,s为大于0的小正数,设置粒子群中粒子数目M,M取值根据具体辨识问题决定,粒子的速度矢量以及空间位置矢量长度为D=Omax*Mmax,设置自身更新加速因子c1和群体更新加速因子c2,这两个因子的取值均为2,设置粒子空间位置搜索范围为[-a,+a],α为大于0的正数,根据具体辨识问题设置数值,设置粒子速度变化范围为[-b,+b],β为大于0的正数,根据具体辨识问题设置取值,并且β满足β=γ*α,其中γ=1,表示粒子速度变化范围最大值β与粒子空间位置变化范围最大值α的比例。
步骤二:生成初始迭代时刻粒子群速度矩阵和空间位置矩阵。
2.1)在粒子空间位置搜索范围[-a,+a]内随机生成初始迭代时刻粒子群的空间位置矩阵:
PM*D(1)=[P1(1)P2(1)...Pi(1)...PM(1)]                <3>
式中Pi(1)=[pi1(1)pi2(1)...pij(1)...piD(1)],pij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数的辨识值,i=1,2,...,M,表示粒子群中粒子的序号,M为粒子群中粒子数目,j=1,2,...,D,表示非线性系统的参数序号,D为粒子的速度矢量以及空间位置矢量长度;
2.2)在粒子速度变化范围[-b,+b]内随机生成初始迭代时刻粒子群的速度矩阵:
VM*D(1)=[V1(1)V2(1)...Vi(1)...VM(1)]                <4>
式中Vi(1)=[vi1(1)vi2(1)...vij(1)...viD(1)],vij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值。
步骤三:计算初始迭代时刻粒子群最优解及最优适合度。
3.1)设置迭代时刻k=1,数据序号a=0;
3.2)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量
Figure BDA0000038160240000101
表示如下:
u r = [ u ( a ) , u ( a + 1 ) , . . . , u ( t ) , . . . , u ( a + M max - 1 ) ] - - - < 5 >
式中u(t)表示非线性系统输入数据序列u(n)中第t个数据,t=a,a+1,...,a+Mmax-1,Mmax表示非线性系统的最大记忆长度;
3.3)对数据矢量
Figure BDA0000038160240000103
进行处理得到一个新的数据矢量
Figure BDA0000038160240000104
表示如下:
Figure BDA0000038160240000105
式中
Figure BDA0000038160240000106
uf(t)表示非线性系统输出数据序列u(n)中第t个数据的f次方;
3.4)将新的数据矢量
Figure BDA0000038160240000107
与粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)=[pi1(1)pi2(1)...pij(1)...piD(1)]的转置矢量
Figure BDA0000038160240000108
相乘,得到初始迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
Figure BDA0000038160240000111
3.5)重复步骤(3b)W次,得到初始迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure BDA0000038160240000112
z=1,2,...,W,W取值为100;
3.6)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1),将y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)代入目标函数,计算初始迭代时刻第i个粒子的适合度:
Figure BDA0000038160240000113
式中y(a+Mmax-1)表示非线性系统输出数据序列y(n)中第a+Mmax-1个数据,Mmax表示非线性系统的最大记忆长度;
3.7)将初始迭代时刻第i个粒子的目标函数fi(z)和粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)代入罚函数F(x),计算初始迭代时刻第i个粒子的适合度Fi(z):
Figure BDA0000038160240000114
式中gm(Pi(1))表示将第i个粒子的空间位置矢量Pi(1)代入等式约束条件gm(x)得到的等式约束条件值,m=1,2,...S,S为等式约束条件的个数,hn(Pi(1)))表示将第i个粒子的空间位置矢量Pi(1)代入不等式约束条件hn(x)得到的不等式约束条件值,n=1,2,...Q,Q为不等式约束条件的个数;lm和mn分别表示非线性系统辨识问题的等式约束条件gm(x)和不等式约束条件hn(x)的罚因子,取值均为大于0的正数;max(0,hn(Pi(1)))表示取0和hn(Pi(1))两者中的较大值;
3.8)根据所得到的Fi(z)计算初始迭代时刻第i个粒子的适合度均值:
3.9)将初始迭代时刻第i个粒子的适合度均值设置为第i个粒子的最优适合度:
Figure BDA0000038160240000122
将初始迭代时刻第i个粒子的空间位置矢量设置为第i个粒子的最优解:Pipbest=Pi(1);
3.10)找出初始迭代时刻最优适合度:
Figure BDA0000038160240000123
和最优适合度对应的粒子Pmin(1);将初始迭代时刻最优适合度设置为粒子群最优适合度:Fgbest=Fmin(1),将初始迭代时刻最优适合度Fmin(1)对应粒子的空间位置矢量设置为粒子群最优解:Pgbest=Pmin(1);
3.11)判断粒子群最优适合度Fgbest是否小于收敛阈值s,若是,粒子群辨识结束,否则进行下步骤四。
步骤四:更新粒子群速度矩阵和空间位置矩阵。
4.1)设迭代时刻为:k=k+1;
4.2)根据粒子群速度更新公式更新k迭代时刻粒子群速度矩阵VM*D(k)中的元素vij(k),得到k+1迭代时刻粒子群速度矩阵VM*D(k+1)中的元素vij(k+1):
vij(k+1)=vij(k)+c1*r1*(pipbest,j-pij(k))+c2*r2*(pgbest,j-pij(k))<9>
式中c1表示自身更新加速因子和c2表示群体更新加速因子,这两个因子的取值均为2,r1和r2为取值均在[0,1]范围内的随机变量,vij(k)和vij(k+1)分别表示k迭代时刻和k+1迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值,pij(k)表示k迭代时刻第i个粒子对非线性系统第j个参数的辨识值,pipbest,j表示第i个粒子对非线性系统第j个参数辨识的最优解,pgbest,j表示粒子群对非线性系统的第j个参数辨识的最优解;粒子群中粒子在下一时刻的搜索速度vij(k+1)与本时刻的搜索速度vij(k)具有确定的联系,但是随机性占有主导地位,因此粒子的搜索速度具有明显的随机性,如附图3所示;
4.3)根据粒子群空间位置更新公式更新k迭代时刻粒子群空间位置矩阵PM*D(k)中的元素pij(k),得到k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中的元素pij(k+1):
pij(k+1)=pij(k)+vij(k+1)                  <10>
式中pij(k+1)表示k+1迭代时刻第i个粒子对非线性系统的第j个参数的辨识值,vij(k+1)表示k+1迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值。
步骤五:计算更新后的粒子群最优解及最优适合度。
5.1)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量
Figure BDA0000038160240000131
,表示如下:
u r = [ u ( a ) , u ( a + 1 ) , . . . , u ( t ) , . . . , u ( a + M max - 1 ) ] - - - < 11 >
式中u(t)表示非线性系统输入数据序列u(n)中第t个数据,t=a,a+1,...,a+Mmax-1,Mmax表示非线性系统的最大记忆长度;
5.2)对数据矢量进行处理得到一个新的数据矢量表示如下:
Figure BDA0000038160240000135
式中
Figure BDA0000038160240000136
uf(t)表示非线性系统输出数据序列u(n)中第t个数据的f次方,Mmax表示非线性系统的最大记忆长度;
5.3)将该新的数据矢量
Figure BDA0000038160240000137
与粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量:Pi(k+1)=[pi1(k+1),pi2(k+1),...,pij(k+1),...,piD(k+1)]的转置矢量:
Figure BDA0000038160240000141
相乘得到k+1迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
5.4)重复步骤5.3)W次,得到k+1迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure BDA0000038160240000143
5.5)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1),将y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)代入目标函数,计算k+1迭代时刻第i个粒子的适合度:
Figure BDA0000038160240000144
式中y(a+Mmax-1)表示非线性系统输出数据序列y(n)中第a+Mmax-1个数据,Mmax表示非线性系统的最大记忆长度;
5.6)将k+1迭代时刻第i个粒子的目标函数fi(z)和k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量Pi(k+1)代入罚函数F(x),计算k+1迭代时刻第i个粒子的适合度Fi(z):
式中gm(Pi(k+1))表示将第i个粒子的空间位置矢量Pi(k+1)代入等式约束条件gm(x)得到的等式约束条件值,m=1,2,...S,S为等式约束条件的个数,hn(Pi(k+1)))表示将第i个粒子的空间位置矢量Pi(k+1)代入不等式约束条件hn(x)得到的不等式约束条件值,n=1,2,...Q,Q为不等式约束条件的个数;lm和mn分别表示非线性系统辨识问题的等式约束条件gm(x)和不等式约束条件hn(x)的罚因子,取值均为大于0的正数;max(0,hn(Pi(k+1)))表示取0和hn(Pi(k+1))两者中的较大值;
5.7)根据Fi(z)计算k+1迭代时刻第i个粒子的适合度均值:
5.8)将k+1迭代时刻第i个粒子的适合度均值与第i个粒子的最优适合度Fi,pbest进行比较,如果k+1迭代时刻第i个粒子的适合度均值
Figure BDA0000038160240000153
小于第i个粒子的最优适合度Fi,pbest,则第i个粒子的最优适合度:
Figure BDA0000038160240000154
第i个粒子的最优解:Pipbest=Pi(k+1),否则第i个粒子的最优适合度和最优解保持不变;
5.9)找出k+1迭代时刻的最优适合度:
Figure BDA0000038160240000155
和最优适合度对应的粒子Pmin(k+1);如果k+1迭代时刻的最优适合度小于粒子群最优适合度Fgbest,则粒子群最优适合度:Fgbest=Fmin(k+1),粒子群最优解:Pgbest=Pmin(k+1),否则粒子群最优适合度和最优解保持不变;
5.10)判断粒子群最优适合度Fgbest是否小于目标函数阈值s,若是,粒子群辨识方法结束,否则进行下一步骤,其中s为大于0的正数,根据具体辨识问题进行设置。
步骤六:返回到步骤三,重复以上过程直到粒子群最优适合度Fgbest小于设定的收敛阈值s或是迭代时刻k达到设定的最大迭代次数Imax
比较粒子群最优适合度Fgbest是否小于目标函数阈值s,若Fgbest<s,则认为辨识过程结束,否则,比较迭代时刻k的值是否等于最大迭代次数Imax,其中Imax取值为500或是1000,如果k=Imax,则辨识过程结束,否则返回步骤五,直到满足Fgbest<s或k=Imax,辨识过程结束。
本发明的效果可通过下面的仿真实例进一步说明。
一.仿真条件:
取系统的最大阶次Omax为5,最大记忆长度Mmax为4,粒子群中粒子数目M为40,粒子空间位置维数D为20,系统加性噪声为高斯白噪声,系统信噪比为10dB;
二.仿真内容与结果:
在非线性系统中用本发明与传统辨识算法LMS,NLMS以及RLS比较加性噪声条件下适合度的收敛性能,仿真结果如附图4所示。
由图4可见,当系统信噪比为10dB时,LMS算法,NLMS算法以及RLS算法的适合度变化曲线虽然都有收敛的趋势,但是由于这些算法对加性噪声敏感性高,适合度变化曲线存在大量波动,收敛性能较差,而本发明适合度变化曲线不仅具有收敛趋势,而且曲线收敛平稳,曲线一直在传统算法适合度曲线下面,说明本发明方法可以有效克服传统算法对于加性噪声敏感的缺点,提高加性噪声条件下对非线性系统的辨识性能。

Claims (5)

1.一种基于粒子群的非线性系统辨识方法,包括:
(1)参数设置步骤
(1a)设置待辨识的非线性系统的最高阶次Omax和最大记忆长度Mmax以及非线性系统的系数矢量确定非线性系统的等式约束条件gm(x),m=1,2,...S,S为等式约束条件的个数,以及不等式约束条件hn(x),n=1,2,...Q,Q为不等式约束条件的个数;
(1b)根据最小均方误差准则设计目标函数f(x),利用罚函数法将非线性系统的等式约束条件g(x)和不等式约束条件h(x)与目标函数f(x)合并生成罚函数F(x);
(1c)设置最大迭代次数Imax,收敛阈值s,s为大于0的小正数,设置粒子群中粒子数目M,粒子的速度矢量以及空间位置矢量长度为D=Omax*Mmax,设置自身更新加速因子c1和群体更新加速因子c2,这两个因子的取值均为2,设置粒子空间位置搜索范围为[-a,+a],α为大于0的正数,根据具体辨识问题设置数值,设置粒子速度变化范围为[-b,+b],β为大于0的正数,根据具体辨识问题设置取值,并且β满足β=γ*α,其中γ=1,表示粒子速度变化范围最大值β与粒子空间位置变化范围最大值α的比例;
(2)初始迭代时刻粒子群速度矩阵和空间位置矩阵生成步骤
(2a)在粒子空间位置搜索范围[-a,+a]内随机生成初始迭代时刻粒子群的空间位置矩阵:
PM*D(1)=[P1(1)P2(1)...Pi(1)...PM(1)]T
式中Pi(1)=[pi1(1)pi2(1)...pij(1)...piD(1)],pij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数的辨识值,i=1,2,...,M,表示粒子群中粒子的序号,M为粒子群中粒子数目,j=1,2,...,D,表示非线性系统的参数序号,D为粒子的速度矢量以及空间位置矢量长度;
(2b)在粒子速度变化范围[-b,+b]内随机生成初始迭代时刻粒子群的速度矩阵:
VM*D(1)=[V1(1)V2(1)...Vi(1)...VM(1)]T
式中Vi(1)=[vi1(1)vi2(1)...vij(1)...viD(1)],vij(1)表示初始迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值;
(3)初始迭代时刻粒子群最优解及最优适合度计算步骤
(3a)设置迭代时刻k=1,数据序号a=0;
(3b)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量对数据矢量
Figure FDA0000038160230000022
进行处理得到一个新的数据矢量
Figure FDA0000038160230000023
将该新的数据矢量
Figure FDA0000038160230000024
与粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)的转置矢量
Figure FDA0000038160230000025
相乘,得到初始迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
Figure FDA0000038160230000026
(3c)重复步骤(3b)W次,得到初始迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure FDA0000038160230000027
z=1,2,...,W,W取值为100;
(3d)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)计算初始迭代时刻第i个粒子的目标函数fi(z);
(3e)将初始迭代时刻第i个粒子的目标函数fi(z)和粒子群空间位置矩阵PM*D(1)中第i个粒子的空间位置矢量Pi(1)代入罚函数F(x),计算初始迭代时刻第i个粒子的适合度Fi(z),并根据Fi(z)计算初始迭代时刻第i个粒子的适合度均值:
Figure FDA0000038160230000028
(3f)将初始迭代时刻第i个粒子的适合度均值设置为第i个粒子的最优适合度:
Figure FDA0000038160230000029
将初始迭代时刻第i个粒子的空间位置矢量设置为第i个粒子的最优解:Pipbest=Pi(1);
(3g)找出初始迭代时刻最优适合度:
Figure FDA00000381602300000210
和最优适合度对应的粒子Pmin(1);将初始迭代时刻最优适合度设置为粒子群最优适合度:Fgbest=Fmin(1),将初始迭代时刻最优适合度Fmin(1)对应粒子的空间位置矢量设置为粒子群最优解:Pgbest=Pmin(1);
(3h)判断粒子群最优适合度Fgbest是否小于收敛阈值s,若是,辨识过程结束,否则进行下一步骤;
(4)粒子群速度矩阵和空间位置矩阵更新步骤
(4a)设迭代时刻为:k=k+1;
(4b)根据粒子群速度更新公式更新k迭代时刻粒子群速度矩阵VM*D(k)中的元素vij(k),得到k+1迭代时刻粒子群速度矩阵VM*D(k+1)中的元素vij(k+1):
vij(k+1)=vij(k)+c1*r1*(pipbest,j-pij(k))+c2*r2*(pgbest,j-pij(k))
式中r1和r2为取值均在[0,1]范围内的随机变量,vij(k)和vij(k+1)分别表示k迭代时刻和k+1迭代时刻第i个粒子对非线性系统第j个参数辨识的搜索速度变化值,pij(k)表示k迭代时刻第i个粒子对非线性系统第j个参数的辨识值,pipbest,j表示第i个粒子对非线性系统第j个参数辨识的最优解,pgbest,j表示粒子群对非线性系统的第j个参数辨识的最优解;
(4c)根据粒子群空间位置更新公式更新k迭代时刻粒子群空间位置矩阵PM*D(k)中的元素pij(k),得到k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中的元素pij(k+1):
pij(k+1)=pij(k)+vij(k+1)
式中pij(k+1)表示k+1迭代时刻第i个粒子对非线性系统的第j个参数的辨识值;
(5)更新后的粒子群最优解及最优适合度计算步骤
(5a)设数据序号a=a+1,从非线性系统输入数据序列u(n)中数据序号为a的数据u(a)开始取Mmax个数据组成数据矢量
Figure FDA0000038160230000031
对数据矢量
Figure FDA0000038160230000032
进行处理得到一个新的数据矢量
Figure FDA0000038160230000033
将该新的数据矢量
Figure FDA0000038160230000034
与粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量Pi(k+1)的转置矢量
Figure FDA0000038160230000035
相乘得到k+1迭代时刻第i个粒子辨识出的非线性系统的第1个输出数据:
Figure FDA0000038160230000041
(5b)重复步骤(5a)W次,得到k+1迭代时刻第i个粒子辨识出的非线性系统的W个输出数据:
Figure FDA0000038160230000042
(5c)从非线性系统输出数据序列y(n)取出第a+Mmax-1个数据y(a+Mmax-1)与第i个粒子辨识的非线性系统的输出数据y′(i,z)计算k+1迭代时刻第i个粒子的目标函数fi(z);
(5d)将k+1迭代时刻第i个粒子的目标函数fi(z)和k+1迭代时刻粒子群空间位置矩阵PM*D(k+1)中第i个粒子的空间位置矢量Pi(k+1)代入罚函数F(x),计算k+1迭代时刻第i个粒子的适合度Fi(z),并根据Fi(z)计算k+1迭代时刻第i个粒子的适合度均值:
Figure FDA0000038160230000043
(5e)将k+1迭代时刻第i个粒子的适合度均值与第i个粒子的最优适合度Fi.pbest进行比较,如果k+1迭代时刻第i个粒子的适合度均值
Figure FDA0000038160230000045
小于第i个粒子的最优适合度Fi,pbest,则第i个粒子的最优适合度:第i个粒子的最优解:Pipbest=Pi(k+1),否则第i个粒子的最优适合度和最优解保持不变;
(5f)找出k+1迭代时刻的最优适合度:
Figure FDA0000038160230000047
和最优适合度对应的粒子Pmin(k+1);如果k+1迭代时刻的最优适合度小于粒子群最优适合度Fgbest,则粒子群最优适合度:Fgbest=Fmin(k+1),粒子群最优解:Pgbest=Pmin(k+1),否则粒子群最优适合度和最优解保持不变;
(5g)判断粒子群最优适合度Fgbest是否小于收敛阈值s,若是,辨识过程结束,否则进行下一步骤;
(6)返回到步骤(3),重复以上过程直到粒子群最优适合度Fgbest小于设定的收敛阈值s或是迭代时刻k达到设定的最大迭代次数Imax
2.根据权利要求1所述的基于粒子群的非线性系统辨识方法,其中步骤(1a)中所述的非线性系统,用公式表示如下:
Figure FDA0000038160230000051
式中n=0,1,2,...,Dmax,表示非线性系统数据序号,Dmax表示非线性系统数据长度,y(n)为非线性系统的输出数据序列;f=1,2,...,Omax,表示非线性系统的阶次取值,Omax表示非线性系统的最高阶次,取值为大于等于3的整数;l=1,2,...,Mmax,表示非线性系统的记忆长度取值,Mmax表示非线性系统的最大记忆长度,取值为大于等于3的整数;hfl表示非线性系统阶次为f记忆长度为l的核u(n-l)|u(n-l)|f-1的系数,根据具体辨识问题设置取值为实数或是复数;u(n)为非线性系统的输入数据序列,N(n)为非线性系统的加性噪声数据序列。
3.根据权利要求1所述的基于粒子群的非线性系统辨识方法,其中步骤(1b)中所述的罚函数F(x),用公式表示如下:
Figure FDA0000038160230000052
式中f(x)表示根据最小均方误差准则设计的目标函数,gm(x)表示非线性系统的等式约束条件,m=1,2,...,S,S为等式约束条件的个数,hn(x)表示非线性系统的不等式约束条件n=1,2,...Q,Q为不等式约束条件的个数;lm和mn分别表示非线性系统辨识问题的等式约束条件gm(x)和不等式约束条件hn(x)的罚因子,取值均为大于0的正数;max(0,hn(x))表示取0和hn(x)两者中的较大值;
4.根据权利要求1所述的基于粒子群的非线性系统辨识方法,其中步骤(3b)中所述的数据矢量
Figure FDA0000038160230000053
表示如下:
u r = [ u ( a ) , u ( a + 1 ) , . . . , u ( t ) , . . . , u ( a + M max - 1 ) ]
式中a表示数据序号,取值为大于等于0的整数,u(t)表示非线性系统输入数据序列u(n)中第t个数据,t=a,a+1,...,a+Mmax-1,Mmax表示非线性系统的最大记忆长度;
5.根据权利要求1所述的基于粒子群的非线性系统辨识方法,其中步骤(3b)中所述的新的数据矢量表示如下:
Figure FDA0000038160230000061
式中
Figure FDA0000038160230000062
uf(t)表示非线性系统输出数据序列u(n)中第t个数据的f次方,a表示数据序号,取值为大于等于0的整数,t=a,a+1,...,a+Mmax-1,Mmax表示非线性系统的最大记忆长度,Omax表示非线性系统的最高阶次。
CN 201010587216 2010-12-14 2010-12-14 基于粒子群的非线性系统辨识方法 Expired - Fee Related CN102055694B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010587216 CN102055694B (zh) 2010-12-14 2010-12-14 基于粒子群的非线性系统辨识方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010587216 CN102055694B (zh) 2010-12-14 2010-12-14 基于粒子群的非线性系统辨识方法

Publications (2)

Publication Number Publication Date
CN102055694A true CN102055694A (zh) 2011-05-11
CN102055694B CN102055694B (zh) 2013-04-03

Family

ID=43959638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010587216 Expired - Fee Related CN102055694B (zh) 2010-12-14 2010-12-14 基于粒子群的非线性系统辨识方法

Country Status (1)

Country Link
CN (1) CN102055694B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104969438A (zh) * 2012-12-18 2015-10-07 核科学股份有限公司 用于在无线功率传输系统中检测物体的非线性系统辨识
CN106580338A (zh) * 2016-11-15 2017-04-26 南方医科大学 一种用于非线性系统辨识的最大长序列优选方法及系统
CN111697576A (zh) * 2020-06-23 2020-09-22 中国石油大学(华东) 一种适用于变频空调负荷的详细负荷等值方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339610A (zh) * 2008-08-13 2009-01-07 哈尔滨工业大学 适用于非线性随机系统状态的粒子滤波重采样方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339610A (zh) * 2008-08-13 2009-01-07 哈尔滨工业大学 适用于非线性随机系统状态的粒子滤波重采样方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
田宏洁: "《基于粒子群方法的非线性系统辨识问题研究》", 《中国优秀硕士学位论文全文数据库》 *
管廷兰等: "《基于改进粒子群的隐空间支持向量机》", 《计算机工程与应用》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104969438A (zh) * 2012-12-18 2015-10-07 核科学股份有限公司 用于在无线功率传输系统中检测物体的非线性系统辨识
CN104969438B (zh) * 2012-12-18 2018-02-16 核科学股份有限公司 用于在无线功率传输系统中检测物体的非线性系统辨识
US9983243B2 (en) 2012-12-18 2018-05-29 Nucleus Scientific Inc. Nonlinear system identification for object detection in a wireless power transfer system
US10101370B2 (en) 2012-12-18 2018-10-16 Nucleus Systems Inc. Nonlinear system identification for optimization of wireless power transfer
CN106580338A (zh) * 2016-11-15 2017-04-26 南方医科大学 一种用于非线性系统辨识的最大长序列优选方法及系统
CN106580338B (zh) * 2016-11-15 2020-02-21 南方医科大学 一种用于非线性系统辨识的最大长序列优选方法及系统
CN111697576A (zh) * 2020-06-23 2020-09-22 中国石油大学(华东) 一种适用于变频空调负荷的详细负荷等值方法

Also Published As

Publication number Publication date
CN102055694B (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103164742B (zh) 一种基于粒子群优化神经网络的服务器性能预测方法
CN105631528B (zh) 一种基于nsga-ii和近似动态规划的多目标动态最优潮流求解方法
Yu et al. The forecast of the electrical energy generated by photovoltaic systems using neural network method
CN103489038A (zh) 基于lm-bp神经网络的光伏超短期功率预测方法
CN111308896B (zh) 基于可变误差的非线性系统自适应最优控制方法
CN104636985A (zh) 一种改进bp神经网络的输电线路无线电干扰预测方法
CN103730006A (zh) 一种短时交通流量的组合预测方法
CN103942434A (zh) 基于sspso-grnn的水电站厂坝结构振动响应预测方法
CN107506865A (zh) 一种基于lssvm优化的负荷预测方法及系统
CN104539601B (zh) 动态网络攻击过程可靠性分析方法及系统
CN104598765A (zh) 一种基于弹性自适应神经网络的建筑物能耗预测方法
CN113361214A (zh) 一种基于水位流量数据的明渠控制模型参数辨识方法
CN103885867B (zh) 一种模拟电路性能的在线评价方法
CN111008790A (zh) 一种水电站群发电调度规则提取方法
CN102055694B (zh) 基于粒子群的非线性系统辨识方法
CN115567405A (zh) 一种基于自适应反馈调节机制的网络流量灰色预测方法
Dong et al. Short-term building cooling load prediction model based on DwdAdam-ILSTM algorithm: A case study of a commercial building
Peng et al. A new fuzzy adaptive simulated annealing genetic algorithm and its convergence analysis and convergence rate estimation
Kuan et al. Short-term CHP heat load forecast method based on concatenated LSTMs
CN117035464A (zh) 基于时序网络改进循环网络的企业用电碳排放预测方法
Li et al. Development and application of hourly building cooling load prediction model
CN110135621A (zh) 一种基于pso优选模型参数的短期电力负荷预测方法
Herzog et al. Self-adapting building models for model predictive control
CN106650293B (zh) 一种基于am嵌套抽样算法的地下水模型评价方法
CN115619028A (zh) 一种基于聚类算法融合的电力负荷精准预测方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130403

Termination date: 20181214

CF01 Termination of patent right due to non-payment of annual fee