一种基于均衡单进化布谷鸟算法的迭代学习控制方法与流程

文档序号:17444134发布日期:2019-04-17 05:16阅读:250来源:国知局
一种基于均衡单进化布谷鸟算法的迭代学习控制方法与流程

本发明涉及迭代学习控制技术领域,更具体地说,涉及一种基于均衡单进化布谷鸟算法的迭代学习控制方法。



背景技术:

迭代学习控制是寻求一种学习控制律,使得被控对象的系统输出在有限时间周期上沿理想期望轨迹实现零误差轨迹跟踪的控制方法。迭代学习控制最早是由日本学者uchiyama于1978年提出,而自1984年由日本学者arimoto等人做出的开创性贡献后被工业界广泛研究,获得了突飞猛进的发展。迭代学习控制适用于具有重复运动性质的被控对象,通过迭代修正获得控制输入的理想值。值得注意的是迭代学习控制方法不依赖于被控系统的精确数学模型,能够在有限迭代时间内,以极其简单的学习算法实现对非线性强耦合及不确定性高的动态系统完美控制。因此迭代学习控制广泛应用于数控机床、装配、智能焊接、伺服系统、磁盘和光盘驱动系统、注塑机等领域。

迭代学习控制处理非因果动态时变系统时通常采用范数最优学习控制方法。然而,由于被控系统产生的前馈和反馈项需要借助复杂的数值积分解决,因此传统范数最优迭代学习控制算法的设计与实现变得极为困难。

布谷鸟算法是模拟自然规律、生物行为或者物理现象的随机搜索算法。它由剑桥大学yangx.s.教授等人于2009年提出。该算法由于结构简单,调节参数较少,执行速度较快,因此广受国内外学者的关注,已经成功应用于集成电路设计、神经网络训练、工程结构优化、多目标优化和电子与电力系统控制等领域。国内外学者对布谷鸟算法进行了较为深入的研究,并取得了较为丰富的研究成果,极大地提高了算法的搜索速度和收敛精度。

目前绝大部分文献在考察布谷鸟算法进化的有效性均采用目标函数适应度值整体评价的策略,即每次进化对目标函数的所有维度一起更新,然后再评价更新后的函数适应度值。这种函数适应度整体评价策略对于单维度优化问题效果较为有效,但对于多维度自变量相关问题,由于存在维度间相互耦合现象,因此这种评价策略会制约算法的搜索速度和收敛精度。



技术实现要素:

本发明的目的是在现有的方法上做改进,提供一种基于均衡单进化布谷鸟算法的迭代学习控制方法,旨在克服传统范数最优迭代学习控制的缺陷。该方法每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从均匀分布,能够有效平衡布谷鸟算法的全局搜索能力和局部寻优能力,避免优化算法执行末期出现的迟滞现象,从而提高算法的全局搜索速度和收敛精度。

本发明采用如下技术方案:

本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,包括:

步骤1,计算随机化迭代控制输入在迭代学习次数k=0时,对应的迭代学习控制适应度值设置当前最优迭代输入计算当前最优迭代学习控制适应度值为其中,n表示种群包括的宿主巢穴个数,d表示迭代学习控制目标函数维度,为第k+1次迭代跟踪误差,为第k+1次迭代学习的系统输出,且g表示迭代控制系统的传递函数,yd表示迭代学习控制的理想跟踪轨迹;

步骤2,产生均匀随机整数l(1≤l≤d),利用levy随机游动方式进行巢穴位置更新,并以发现概率p(0<p<1)舍弃迭代控制输入所述levy随机游动方式表示为其中,η表示初始搜索步长,为k+1次迭代学习时第g代搜索的最优解对应的维度l数值,分别代表k+1次迭代学习时进化至第i代和第i+1代时的第j个候选解对应的维度l数值,表示点对点乘法,l(λ)表示levy随机游动搜索路径,其表达式如下:

其中,λ=1.5,且θ,v服从标准高斯分布,即θ,v~n(0,1);

步骤3,采用偏好随机游动方式产生一组迭代控制输入,所述偏好随机游动方式表示为比较控制缩放系数w(w~u(0,1))与发现概率p的大小。若w>p则保持当前迭代输入不变。若w<p,用偏好随机游动方式产生的迭代控制输入替换步骤2中被舍弃的迭代控制输入其中,分别代表k+1次迭代学习时进化至第i代时两个随机迭代控制输入对应的维度l数值;

步骤4,计算步骤3中种群产生的迭代控制输入对应的迭代学习控制适应度值更新步骤3中的当前最优解为和当前最优迭代学习控制适应度值为

步骤5,更改迭代学习控制适应度值为重复执行步骤2~4,直至迭代学习次数为km;其中,km表示迭代学习控制的最大迭代次数,β表示权重因子;

步骤6,若满足最大进化代数m,则输出当前最优迭代学习控制适应度值及最优解并停止执行,否则转向步骤2继续执行。

由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:

(1)本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,给出一种新型的均衡单进化评价策略,即每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从均匀分布;不同于现有技术的采用的目标函数适应度值整体评价策略,均衡单进化评价策略能有效平衡布谷鸟算法的全局搜索能力和局部寻优能力,避免优化算法执行末期出现的迟滞现象,从而提高算法的全局搜索速度和收敛精度。

(2)本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,旨在克服传统范数最优迭代学习控制的缺陷。不仅注重整体进化结果,而且关注进化过程中各个维度的进化方向,强化全局勘探能力的同时提高了局部寻优能力,求解质量得到显著提高。

附图说明

图1是本发明实施例的均衡单进化评价策略和整体评价策略的比较图;

图2是本发明实施例的迭代学习控制的不同迭代次数时系统输出信号与理想跟踪轨迹的波形图;

图3是本发明实施例的迭代学习控制适应度值收敛波形图。

具体实施方式

以下通过具体实施方式对本发明作进一步的描述。

本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,包括:

步骤1,计算随机化迭代控制输入在迭代学习次数k=0时,对应的迭代学习控制适应度值设置当前最优迭代输入计算当前最优迭代学习控制适应度值为其中,n表示种群包括的宿主巢穴个数,d表示迭代学习控制目标函数维度,为第k+1次迭代跟踪误差,为第k+1次迭代学习的系统输出,且g表示迭代控制系统的传递函数,yd表示迭代学习控制的理想跟踪轨迹;

步骤2,产生均匀随机整数l(1≤l≤d),利用levy随机游动方式进行巢穴位置更新,并以发现概率p(0<p<1)舍弃迭代控制输入所述levy随机游动方式表示为其中,η表示初始搜索步长,为k+1次迭代学习时第g代搜索的最优解对应的维度l数值,分别代表k+1次迭代学习时进化至第i代和第i+1代时的第j个候选解对应的维度l数值,表示点对点乘法,l(λ)表示levy随机游动搜索路径,其表达式如下:

其中,λ=1.5,且θ,v服从标准高斯分布,即θ,v~n(0,1);

步骤3,采用偏好随机游动方式产生一组迭代控制输入,所述偏好随机游动方式表示为比较控制缩放系数w(w~u(0,1))与发现概率p的大小。若w>p则保持当前迭代输入不变。若w<p,用偏好随机游动方式产生的迭代控制输入替换步骤2中被舍弃的迭代控制输入其中,分别代表k+1次迭代学习时进化至第i代时两个随机迭代控制输入对应的维度l数值;

步骤4,计算步骤3中种群产生的迭代控制输入对应的迭代学习控制适应度值更新步骤3中的当前最优解为和当前最优迭代学习控制适应度值为

步骤5,更改迭代学习控制适应度值为重复执行步骤2~4,直至迭代学习次数为km;其中,km表示迭代学习控制的最大迭代次数,β表示权重因子;

步骤6,若满足最大进化代数m,则输出当前最优迭代学习控制适应度值及最优解并停止执行,否则转向步骤2继续执行。

上述种群宿主巢穴个数n、迭代学习控制目标函数维度d、最大进化代数m、发现概率p、控制缩放系数w、初始搜索步长η、迭代学习控制最大迭代次数km、权重因子β、迭代学习控制的理想跟踪轨迹yd和迭代控制系统的传递函数g,为方法初始化时设置的初始值。

传统布谷鸟算法采用整体评价策略,很难兼顾所有维度的优化方向,会影响算法的搜索速度和收敛精度,并且随目标函数维度的不断增加,算法的搜索速度和收敛精度不断恶化。本实施例中,为便于理解本发明提出的均衡单进化评价策略,假设优化问题的目标函数为其全局最优解为(0,0,0),算法进化的初始数值为(3,2,2)。据此求得初始化目标函数适应度值为f(zi,j)=f(3,2,2)=36。将宿主巢穴位置整体更新为zi+1,j=(1.5,1.2,-3.0),由于f(zi+1,j)=37.89>f(zi,j)=36,因此判断该次进化无效,算法重新执行搜索。但是,分析前后两代进化的数据和理论全局最优解(0,0,0)可知,第i+1代的候选解zi+1,j中第1维由数值3进化为1.5,第2维由数值2进化为1.2,这两者均沿全局最优的方向进化,而仅仅第3维度偏离全局最优方向。由于第3维度的退化导致目标函数适应度值变差,而忽略了第1和第2维度的进化,使算法所需的进化代数增加,寻优速度降低。进一步,为更直观阐述上述机理,如图1所示表征了整体评价策略的进化过程示意图。假设d为全局最优解zg所对应的图示点,当前寻优出发点为a,经过一代进化后,出现两个可能的进化点,分别为b和c,其中f(b)>f(c)。因此选择下一代的进化点为c。同样的道理,随着进化代数不断增加,算法依次选择的进化点分别为e和f。由图可知算法搜索的最终结果偏离真正的全局最优解。整体评价策略只注重整体进化结果,而忽视进化过程中各个维度的进化方向,导致寻优效果变差,求解质量不高。

而本发明的均衡单进化评价策略是每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从整数均匀分布,与其它维度组合构成一个新的候选解,然后评价该候选解,若优于上一代函数适应度值,则保留更新的候选解并继续进化,直至满足算法停止条件。由于采用贪婪法则,因此算法只接受能改善当前候选解的更新值,确保了算法在优化过程中搜索方向的针对性调整,并且不会影响算法的效率。为便于理解该评价策略,仍然以上述例子阐述,其全局最优解为(0,0,0),算法进化的初始数值为(3,2,2)。首先产生整数均匀分布的随机维度为3,其他维度(本例中分别为1和2)保持不变。将宿主巢穴位置及适应度值更新为f(z(3),i+1,j)=f(3,2,1.2)=13.6。在一个种群内继续随机更新维度,再次产生整数均匀分布的随机维度为1,其他维度(本例中分别为2和3)保持不变。若维度1对应的更新数值为3.5,那么目标函数适应度值更新为f(z(1),i+2,j)=f(3.5,2,1.2)=18.28。此时对种群内所有的候选解进行评价,结果表明:f(z(1),i+2,j)>f(z(3),i+1,j),适应度的更新值未能改善当前候选解z(3),i+1,j=(3,2,1.2),因此算法将舍弃当前选择候选解z(3),i+1,j,并进行其他维度的更新。采用贪婪法则的均衡单进化评价策略不会因为某些维度的退化而舍弃全局最优的进化方向,充分利用目标函数的单维度信息引导算法进行精细化搜索,获得更高质量的求解结果。

进一步的,为了验证本发明的有效性,本实施例将应用于如下线性系统中:

其中,系统输入为u(k)(n),系统输出为y(k)(n+1),x(k)(n+1)和x(k)(n)为系统状态,n∈[1,100],理想输出跟踪轨迹为同时设置权重因子为β=0.01,p=0.25,η=0.01,w∈(0,3),衡量优化算法的两个重要因素分别为收敛精度和收敛速度。如果算法产生的迭代序列能够收敛到全局最优解,但收敛速度太慢,以致在允许的时间内得不到满意结果,那么这类算法也不能称为最优算法。因此,高效的优化算法能以较快速度收敛于最优解。

本实施例的实验结果如图2和图3所示。其中,图2为迭代学习控制的迭代次数分别为k=2,k=5,k=458,k=475时系统输出信号与理想跟踪轨迹对比波形图。从图中可以看出,迭代次数为k=458时,系统已基本跟踪上理想输出轨迹。图3为迭代学习控制适应度值收敛波形图,由图所示,适应度值随迭代次数单调减少且具有较强的搜索速度和收敛精度,其收敛精度达到1e-4,这也体现了均衡单进化布谷鸟方法的优越性。本发明提出的均衡单进化迭代学习控制方法不仅注重整体进化结果,而且关注进化过程中各个维度的进化方向,强化全局勘探能力的同时提高了局部寻优能力,求解质量得到显著提高。

上述实施例仅仅用以说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1