本发明涉及迭代学习控制技术领域,更具体地说,涉及一种基于均衡单进化布谷鸟算法的迭代学习控制方法。
背景技术:
迭代学习控制是寻求一种学习控制律,使得被控对象的系统输出在有限时间周期上沿理想期望轨迹实现零误差轨迹跟踪的控制方法。迭代学习控制最早是由日本学者uchiyama于1978年提出,而自1984年由日本学者arimoto等人做出的开创性贡献后被工业界广泛研究,获得了突飞猛进的发展。迭代学习控制适用于具有重复运动性质的被控对象,通过迭代修正获得控制输入的理想值。值得注意的是迭代学习控制方法不依赖于被控系统的精确数学模型,能够在有限迭代时间内,以极其简单的学习算法实现对非线性强耦合及不确定性高的动态系统完美控制。因此迭代学习控制广泛应用于数控机床、装配、智能焊接、伺服系统、磁盘和光盘驱动系统、注塑机等领域。
迭代学习控制处理非因果动态时变系统时通常采用范数最优学习控制方法。然而,由于被控系统产生的前馈和反馈项需要借助复杂的数值积分解决,因此传统范数最优迭代学习控制算法的设计与实现变得极为困难。
布谷鸟算法是模拟自然规律、生物行为或者物理现象的随机搜索算法。它由剑桥大学yangx.s.教授等人于2009年提出。该算法由于结构简单,调节参数较少,执行速度较快,因此广受国内外学者的关注,已经成功应用于集成电路设计、神经网络训练、工程结构优化、多目标优化和电子与电力系统控制等领域。国内外学者对布谷鸟算法进行了较为深入的研究,并取得了较为丰富的研究成果,极大地提高了算法的搜索速度和收敛精度。
目前绝大部分文献在考察布谷鸟算法进化的有效性均采用目标函数适应度值整体评价的策略,即每次进化对目标函数的所有维度一起更新,然后再评价更新后的函数适应度值。这种函数适应度整体评价策略对于单维度优化问题效果较为有效,但对于多维度自变量相关问题,由于存在维度间相互耦合现象,因此这种评价策略会制约算法的搜索速度和收敛精度。
技术实现要素:
本发明的目的是在现有的方法上做改进,提供一种基于均衡单进化布谷鸟算法的迭代学习控制方法,旨在克服传统范数最优迭代学习控制的缺陷。该方法每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从均匀分布,能够有效平衡布谷鸟算法的全局搜索能力和局部寻优能力,避免优化算法执行末期出现的迟滞现象,从而提高算法的全局搜索速度和收敛精度。
本发明采用如下技术方案:
本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,包括:
步骤1,计算随机化迭代控制输入
步骤2,产生均匀随机整数l(1≤l≤d),利用levy随机游动方式进行巢穴位置更新,并以发现概率p(0<p<1)舍弃迭代控制输入
其中,λ=1.5,且θ,v服从标准高斯分布,即θ,v~n(0,1);
步骤3,采用偏好随机游动方式产生一组迭代控制输入,所述偏好随机游动方式表示为
步骤4,计算步骤3中种群产生的迭代控制输入
步骤5,更改迭代学习控制适应度值为
步骤6,若满足最大进化代数m,则输出当前最优迭代学习控制适应度值
由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
(1)本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,给出一种新型的均衡单进化评价策略,即每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从均匀分布;不同于现有技术的采用的目标函数适应度值整体评价策略,均衡单进化评价策略能有效平衡布谷鸟算法的全局搜索能力和局部寻优能力,避免优化算法执行末期出现的迟滞现象,从而提高算法的全局搜索速度和收敛精度。
(2)本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,旨在克服传统范数最优迭代学习控制的缺陷。不仅注重整体进化结果,而且关注进化过程中各个维度的进化方向,强化全局勘探能力的同时提高了局部寻优能力,求解质量得到显著提高。
附图说明
图1是本发明实施例的均衡单进化评价策略和整体评价策略的比较图;
图2是本发明实施例的迭代学习控制的不同迭代次数时系统输出信号与理想跟踪轨迹的波形图;
图3是本发明实施例的迭代学习控制适应度值收敛波形图。
具体实施方式
以下通过具体实施方式对本发明作进一步的描述。
本发明一种基于均衡单进化布谷鸟算法的迭代学习控制方法,包括:
步骤1,计算随机化迭代控制输入
步骤2,产生均匀随机整数l(1≤l≤d),利用levy随机游动方式进行巢穴位置更新,并以发现概率p(0<p<1)舍弃迭代控制输入
其中,λ=1.5,且θ,v服从标准高斯分布,即θ,v~n(0,1);
步骤3,采用偏好随机游动方式产生一组迭代控制输入,所述偏好随机游动方式表示为
步骤4,计算步骤3中种群产生的迭代控制输入
步骤5,更改迭代学习控制适应度值为
步骤6,若满足最大进化代数m,则输出当前最优迭代学习控制适应度值
上述种群宿主巢穴个数n、迭代学习控制目标函数维度d、最大进化代数m、发现概率p、控制缩放系数w、初始搜索步长η、迭代学习控制最大迭代次数km、权重因子β、迭代学习控制的理想跟踪轨迹yd和迭代控制系统的传递函数g,为方法初始化时设置的初始值。
传统布谷鸟算法采用整体评价策略,很难兼顾所有维度的优化方向,会影响算法的搜索速度和收敛精度,并且随目标函数维度的不断增加,算法的搜索速度和收敛精度不断恶化。本实施例中,为便于理解本发明提出的均衡单进化评价策略,假设优化问题的目标函数为
而本发明的均衡单进化评价策略是每一代进化只随机更新目标函数的单个维度,并且随机更新的维度服从整数均匀分布,与其它维度组合构成一个新的候选解,然后评价该候选解,若优于上一代函数适应度值,则保留更新的候选解并继续进化,直至满足算法停止条件。由于采用贪婪法则,因此算法只接受能改善当前候选解的更新值,确保了算法在优化过程中搜索方向的针对性调整,并且不会影响算法的效率。为便于理解该评价策略,仍然以上述例子阐述,其全局最优解为(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],理想输出跟踪轨迹为
本实施例的实验结果如图2和图3所示。其中,图2为迭代学习控制的迭代次数分别为k=2,k=5,k=458,k=475时系统输出信号与理想跟踪轨迹对比波形图。从图中可以看出,迭代次数为k=458时,系统已基本跟踪上理想输出轨迹。图3为迭代学习控制适应度值收敛波形图,由图所示,适应度值随迭代次数单调减少且具有较强的搜索速度和收敛精度,其收敛精度达到1e-4,这也体现了均衡单进化布谷鸟方法的优越性。本发明提出的均衡单进化迭代学习控制方法不仅注重整体进化结果,而且关注进化过程中各个维度的进化方向,强化全局勘探能力的同时提高了局部寻优能力,求解质量得到显著提高。
上述实施例仅仅用以说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求范围内。