微粒群算法.docx
- 文档编号:15702193
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:19
- 大小:167.03KB
微粒群算法.docx
《微粒群算法.docx》由会员分享,可在线阅读,更多相关《微粒群算法.docx(19页珍藏版)》请在冰点文库上搜索。
微粒群算法
目录
1 绪论2
1.1研究的背景和意义2
1.2常用的参数整定法2
1.3PID参数优化法3
1.4 微粒群PID参数优化3
2 微粒群算法4
2.1 算法起源4
2.2 算法原理4
2.3算法流程5
2.4 算法特点6
2.5全局模型和局部模型7
2.6带惯性权重的微粒群算法7
2.7微粒群算法的研究现状8
3PSO算法优化PID参数8
3.1PID控制原理8
3.2PID控制特点9
3.3优化设计简介9
3.4目标函数的选取10
3.5大迟滞系统简介11
3.6加温炉控制简介14
4系统仿真14
4.1工程上的参数整定14
4.2微粒群算法参数整定16
4.3结果比较16
结论与展望16
1 绪论
1.1研究的背景和意义
效率是人们追求的最终目标,不断提高解的质量和求解的速度,尽可能地提高效率以节省时间,顺应现代工业的发展,PID控制器在智能控制方面起着越来越重要的作用,因为其具有结构简单,鲁棒性好,可靠性高等特点。
在工业控制过程中,大多控制都是高阶,时滞和非线性的,所以对PID控制的参数整定是非常困难的,PID的控制性能与控制器参数
的优化整定直接相关,其参数的整定已成为PID控制器应用需要解决的首要问题[1]。
为解决各种优化问题,人们提出了许多优化算法,比较著名的有蚁群算法、神经网络算法[2]和遗传算法等。
优化问题有两个主要问题。
一是要求寻找全局最小点,二是要求有较高的收敛速度。
蚁群算法适合在图上搜索路径问题,但计算开销会大。
神经网络算法,编程和解码过程需要大量CPU时间,算法易早熟,收敛易陷入局部最优。
遗传算法,涉及到繁琐的编码解码过程和很大的计算量。
所以到现在还没有万能的优化算法,不同的问题要用合适的算法。
1.2常用的参数整定法
常用的参数整定方法:
实验凑试法、衰减曲线法、临界比例度法、反应曲线法。
实验凑试法是通过闭环运行或模拟,观察系统的响应曲线,然后根据各参数对系统的影响,反复凑试参数,直至出现满意的响应,从而确定PID控制参数。
用衰减曲线法整定调节器参数的方法是:
在纯比例作用下,
为
,
为0,目的是要得到
,衰减振荡过度过程曲线。
根据所得曲线,若衰减大于
应调整
朝小比例带方向;若小于
,应调整
朝大比例带方向。
记下
的比例带
,并在记录曲线上求得
衰减时的调节周期
,然后计算
,
,
各值。
临界比例度法考虑的实质是通过现场试验找到等幅振荡的过渡过程,得到临界比例度和等幅振荡周期。
当操纵变量作阶跃变化时,被控变量随时间变化的曲线称为反应曲线。
对有自衡的非振荡过程,广义对象传递函数常可用
近似。
K,
和T可用图解法等得出。
调节器参数整定的反应曲线是依据广义对象的K,
和T确定调节器参数的方法。
1.3PID参数优化法
目前PID参数整定优化方法有很多,比如最速下降法、单纯形法、误差积分准则ISTE最优设定方法、遗传算法、蚁群算法等。
最速下降法是选取目标函数的负梯度方法(最速下降方向)作为每步迭代的搜索方向,逐步逼近函数的极小值点,以梯度法为基础的多维无约束最优化问题的数值计算法;单纯形法是求解多变量无约束最优化问题的一种直接搜索法,是求解非线性函数的经验方法;误差积分准则ISTE最优设定方法是针对一类特定被控对象的,如果被控对象形式已知,可以考虑使用这种ISTE误差积分准则作为目标函数进行参数优化;遗传算法是一种典型的启发式算法,属于非数值算法范畴。
它是模拟达尔文的自然 选择学说和自然界的生物进化过程的一种计算模型。
它是采用简单的编码技术来表示各种复杂 的结构,并通过对一组编码表示进行简单的遗传操作和优胜劣汰的自然选择来指导学习和确定 搜索的方向。
蚁群算法是受到自然界中真实蚁群集体行为的研究成果的启发而提出的基于种群的模拟进化算法。
1.4 微粒群PID参数优化
本文用微群算法对PID参数进行优化,PID控制器的参数整定,就是通过选择合适的比例、积分、微分三个参数的值,从而使控制器具有良好的控制效果[3]。
先选择控制系统的目标函数,采用时间平方乘以误差的平方,通过对控制系统的逐步仿真,对结果进行分析。
由于选取的这个目标函数的解析式不能直接写出,故采用逐步仿真来实现,然后采用工程上的整定方法(临界比例度法)粗略的确定其初始的三个参数
,并以此进行寻优,得到较好的PID参数。
再利用MATLAB编制粒子群算法寻优程序。
通过粒子群算法优化系统性能最佳的PID参数后采用SIMULINK的仿真工具对PID参数优化系统进行仿真,得出系统的响应曲线。
从中发现它的性能指标,都比原来的曲线有了很大的改进。
2 微粒群算法
2.1 算法起源
微粒群算法,又称粒子群优化(ParticleSwarmOptimization,PSO),是由J.Kennedy和R.C.Eberhart等于1995年开发的一种演化计算技术,来源于对一个简化社会模型的模拟。
其中“群(swarm)”来源于微粒群符合M.M.Millonas在开发应用于人工生命(artificiallife)的模型时所提出的群体智能的5个基本原则。
“粒子(particle)”是一个折衷的选择,因为既需要将群体中的成员描述为没有质量、没有体积的,同时也需要描述它的速度和加速状态。
PSO算法最初是为了图形化的模拟鸟群优美而不可预测的运动。
而通过对动物社会行为的观察,发现在群体中对信息的社会共享提供一个演化的优势,并以此作为开发算法的基础。
通过加入近邻的速度匹配、并考虑了多维搜索和根据距离的加速,形成了PSO的最初版本。
之后引入了惯性权重w来更好的控制开发(exploitation)和探索(exploration),形成了标准版本。
2.2 算法原理
PSO算法是基于群体的,根据对环境的适应度将群体中的个体移动到好的区域。
然而它不对个体使用演化算法,而是将每个个体看作是D维搜索空间中的一个没有体积的微粒(点),在搜索空间中以一定的速度飞行,这个速度根据它本身的飞行经验和同伴的飞行经验来动态调整。
第i个微粒表示为Xi=(xi1,xi2,…,xiD),它经历过的最好位置(有最好的适应值)记为Pi=(pi1,pi2,…,piD),也称为pbest。
在群体所有微粒经历过的最好位置的索引号用符号g表示,即Pg,也称为gbest。
微粒i的速度用Vi=(vi1,vi2,…,viD)表示。
对每一代,它的第d维(1≤d≤D)根据如下方程进行变化:
vid=w*vid+c1*rand()*(pid-xid)+c2*Rand()*(pgd-xid)(1a)(2.1)
xid=xid+vid(1b)(2.2)
其中w为惯性权重(inertiaweight),c1和c2为加速常数(accelerationconstants),rand()和Rand()为两个在[0,1]范围里变化的随机值。
此外,微粒的速度Vi被一个最大速度Vmax所限制。
如果当前对微粒的加速导致它的在某维的速度vid超过该维的最大速度vmax,d,则该维的速度被限制为该维最大速度vmax,d。
对公式(1a),第一部分为微粒先前行为的惯性,第二部分为“认知(cognition)”部分,表示微粒本身的思考;第三部分为“社会(social)”部分,表示微粒间的信息共享与相互合作。
“认知”部分可以由Thorndike的效应法则(lawofeffect)所解释,即一个得到加强的随机行为在将来更有可能出现。
这里的行为即“认知”,并假设获得正确的知识是得到加强的,这样的一个模型假定微粒被激励着去减小误差。
“社会”部分可以由Bandura的替代强化(vicariousreinforcement)所解释。
根据该理论的预期,当观察者观察到一个模型在加强某一行为时,将增加它实行该行为的几率。
即微粒本身的认知将被其它微粒所模仿。
PSO算法使用如下心理学假设:
在寻求一致的认知过程中,个体往往记住自身的信念,并同时考虑同事们的信念。
当其察觉同事的信念较好的时候,将进行适应性地调整。
2.3算法流程
a).初始化一群微粒(群体规模为m),包括随机的位置和速度;
b).评价每个微粒的适应度;
c).对每个微粒,将它的适应值和它经历过的最好位置pbest的作比较,如果较好,则将其作为当前的最好位置pbest;
d).对每个微粒,将它的适应值和全局所经历最好位置gbest的作比较,如果较好,则重新设置gbest的索引号;
e).根据方程⑴变化微粒的速度和位置;
f).如未达到结束条件(通常为足够好的适应值或达到一个预设最大代数Gmax),回到b)。
粒子群优化算法的流程如图2.1所示
图2.1基本粒子群算法流程图
2.4 算法特点
(1)易于描述
(2)设置参数少
(3)容易实现
(4)收敛速度快
粒子群算法非常容易实现,占用计算机硬件资源少计算代价不高,他能解决很多全局优化问题都非常好已经得到了证明。
当然,PSO算法也不是全能的和其它全局优化算法一样,有收敛精度不高,后期收敛速度慢,易陷入局部最优等缺点。
2.5全局模型和局部模型
粒子的行为是受自身最优pbest和全局最优gbest的影响,这种版本称为全局版本PSO算法。
另一种为局部版本PSO算法,在该算法中,粒子的行为是不受全局最优gbest影响的,而是受自身最优pbest和拓扑结构中邻近粒子中的局部最优lbest影响的,对局部版本,式(2.1)改为:
(2.3)
其中,pij为邻近粒子的局部最优。
比较两种版本的算法,我们可以发现:
因为全局版本PSO算法中所有粒子信息是共享的,所以算法收敛到全局最优的速度比局部版本PSO算法快。
但全局PSO算法易陷入局部最优;局部PSO算法允许粒子与邻近粒子比较,相互施加影响,虽然算法收敛速度慢,但不易陷入局部最优。
2.6带惯性权重的微粒群算法
探索是偏离原来的寻优轨迹去寻找一个更好的解,探索能力是一个算法的全局搜索能力。
开发是利用一个好的解,继续原来的寻优轨迹去搜索更好的解,它是算法的局部搜索能力。
如何确定局部搜索能力和全局搜索能力的比例,对一个问题的求解过程很重要。
1998年,YuhuiShi[9]提出了带有惯性权重的改进粒子群算法。
其进化过程为:
(2.4)
(2.5)
在式(2.1)中,第一部分表示粒子先前的速度,用于保证算法的全局收敛性能;第二部分、第三部分则是使算法具有局部收敛能力。
可以看出,式(2.4)中惯性权重w表示在多大程度上保留原来的速度。
w较大,全局收敛能力强,局部收敛能力弱;w较小,局部收敛能力强,全局收敛能力弱。
当w=1时,式(2.4)与式(2.1)完全一样,表明带惯性权重的粒子群算法是基本粒子群算法的扩展。
实验结果表明,w在[0.8,1.2]之间时,PSO算法有更快的收敛速度,而当w>1.2时,算法则易陷入局部极值。
2.7微粒群算法的研究现状
自1995年微粒群算法提出以来,特别是近年来国内也越来越多人投入了研究,但是目前PSO算法还没有成熟的理论分析,少数人对算法收敛性进行分析,大部人在算法的结构和性能改善方面进行了探索,包含参数分析,粒子多样性保持,拓扑结构,性能比较和算法融合等。
由于PSO算法的特点,其在连续非线性优化问题和组合优化问题中都表现出良好的效果。
3PSO算法优化PID参数
PID(比例-积分-微分)控制器作为最早实用化的控制器已有70多年历史,现在仍然是应用最广泛的工业控制器。
PID控制器简单易懂,使用中不需精确的系统模型等先决条件,因而成为应用最为广泛的控制器。
这个理论和应用自动控制的关键是,做出正确的测量和比较后,如何才能更好地纠正系统。
3.1PID控制原理
PID控制器由比例单元(P)、积分单元(I)和微分单元(D)组成。
其输入e(t)与输出u(t)的关系为:
u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt](3.1)
式中积分的上下限分别是0和t
因此它的传递函数为:
G(s)=U(s)/E(s)=kp[1+1/(TI*s)+TD*s](3.2)
其中kp为比例系数;TI为积分时间常数;TD为微分时间常数
图3.1PID控制系统原理框图
3.2PID控制特点
PID控制器原理简单、鲁棒性好、可靠性高,因此一直是工业过程控制中应用最广的策略,尤其适用于可建立精确数学模型的确定性系统。
但是实际工业生产过程往往具有非线性、时变不确定性等困难性,难以建立精确的数学模型,应用常规PID控制器不能达到理想的控制效果。
此外,在实际生产的现场中,常规PID控制器往往会受到参数整定过程繁杂的困扰,出现整定不良、性能欠佳的情况,对运行工况的适应性也很差。
3.3优化设计简介
优化设计英文名是optimizationdesign,从多种方案中选择最佳方案的设计方法。
它以数学中的最优化理论为基础,以计算机为手段,根据设计所追求的性能目标,建立目标函数,在满足给定的各种约束条件下,寻求最优的设计方案。
实际上,在任何一项设计工作中都包含着寻优过程,但这种寻优在很大程度上带有经验性,多根据人们的直觉、经验及不断试验而实现的,由于受到经验、时间、环境等条件的限制,往往难以得到最佳的结果。
优化步骤:
①建立数学模型。
②选择最优化算法。
③程序设计。
④制定目标要求。
⑤计算机自动筛选最优设计方案等。
通常采用的最优化算法是逐步逼近法,有线性规划和非线性规划。
优化设计就是在满足设计要求的众多设计方案中选出最佳设计方案的设计方法。
工程设计中的优化方法有多种类型,有不同的分类方法。
若按设计变量数值的不同,可将优化设计分为单变量(一维)优化和多变量优化;若按约束条件的不同,可分为无约束优化和有约束优化;若按目标函数数量的不同,又有单目标优化和多目标优化[10]。
3.4目标函数的选取
在参数最优化的问题中要涉及性能指标函数,性能指标函数是被寻参数的函数,称为目标函数。
要比较明确的反映系统的品质,又便于计算就要选择不同的目标函数。
即便同一系统,选取不同的目标函数寻优到最后得到的优化参数也有可能会不一样。
目标函数的选择分为两大类:
第一类是特征型目标函数,它是按照系统的输出响应的特征提出的。
第二类是误差型目标函数,它是采用期望响应和实际响应之差的某个函数作为目标函数。
这种目标函数实际上是对第一类目标函数的几个特征向量做数学分析,把它们包含在一个目标函数的表达式中。
因此它反映整个系统的性能。
几种常用的误差型目标函数:
(1)误差平方的积分型。
这种目标函数的表达式为
(3.3)
其中e(t)=r(t)-y(t)表示系统误差。
一般要求e(t)越小越好,即要求控制系统的输出响应y(t)尽可能的接近输入r(t)。
由于在过度过程中e(t)时正时负,故取误差的平方进行积分。
这种目标函数在数学上是很容易实现的,常常可以得到比较简单的解析式。
但是在过度过程中,不同时期的误差是不完全相同的,如果全部用误差的平方再积分显然是不怎么合理的,不能很好的反映系统的最终品质指标的要求。
(2)时间乘以平方误差型。
这种目标函数的表达式为
(3.4)
由于在误差平方上乘以了t,相当加上了时间权。
这样过度过程的初始误差考虑比较少,而着重权衡过度过程中后期出现的误差。
这种目标函数的选取不止一种方法可以更精确地反映系统的最终品质要求。
(3)误差绝对值积分型。
这种目标函数的表达式为
或者为
(35)
其寻优方法显然要比其他两种方法优点突出。
一方面加了绝对值,它克服了在过度过程中e(t)时正时负的缺点,另外加了时间t,这样过度过程中后期出现的误差也基本上能消除。
因此本文在选择目标函数的表达式取
。
3.5大迟滞系统简介
在生产过程中,被控制对象除了具有容积延迟外,往往有不同程度的纯迟滞。
例如在交换器中,被测量是被加热物料的出口温度,而控制量是载热介质,当改变载热介质流量后,对物料的出口温度必然有一个迟滞的时间,即介质经过管道的时间。
此外,如反应器,管道混合,皮带传输,多容量,多个设备串联以及用分析仪表测量流体成分过程等等都存在着比较大的滞后。
在这些过程中,由于纯滞后的存在,使得被调量不能及时反映系统所受的扰动,即使测量信号达到调节器,调节机关接受调节信号后立即动作,也需要经过纯滞后时间
以后,才波及被调量,使之受到控制。
因此,这样的过程必然会产生比较明显的超调量和较长的调节时间。
所以具有纯滞后的系统认为是最难控制的系统。
其控制难度将随着滞后时间
占整个过程的时间动态的分配份额的增加而增加。
一般认为纯滞后的时间
与过程时间常数T之比的值大于0.3,则说明该过程具有大滞后的工艺过程。
当
/T增加,过程中的相位滞后增加,使上述现象更为突出,有时甚至会因为超调量严重而出现聚爆,结焦等停产事故;有时则可能引起系统不稳定,被调量超出安全限,从而危及设备及人身安全。
因此大迟滞系统一直被受人们的关注,成为重要的课题之一。
解决的方法很多,最简单的是利用常规调节器适应性强,调整方便的特点,经过仔细个别的调整,在控制要求不太苛刻的情况下,满足生产过程的要求。
1959年由Smith率先提出了大滞后系统的预估补偿方案,其主要原理是预先估计出被控过程的动态模型,然后将预估器并联在被控过程上,使其对过程中的纯滞后特性进行补偿,力图将被延迟的时间
的被控量提前送入调节器,因而调节器能提前动作,这样就通过补偿装置消除了纯滞后特性在闭环中的影响。
从而可明显地减少过程的超调量、缩短过渡过程时间,有效地改善控制品质,所以它是一种比较理想的大滞后系统控制方案。
Smith预估补偿器方案原理如图3.2所示。
图3.2Smith预估补偿器方案原理框图
图中
——PID调节器;
——广义被控对象的数学模型,
为不包括纯滞后时间
的对象模型;
——Smith预估补偿器。
显然,在未进行Smith预估补偿情况下,系统闭环传递函数为
(3.6)
故其闭环特征方程式为
=0(3.7)
由于在系统特征方程式中出现了纯时间滞后项
,这就在系统中引入了易造成不稳定的相角滞后,因此增加了系统的控制难度。
引入Smith预估补偿器的目的,是使调节器
所控制的等效对象中能消除纯滞后部分,即图3.2中应该满足如下关系
+
=
(3.8)
由此可得Smith预估补偿器的数学模型为
=
(3.9)
于是,图3.2所示之Smith预估补偿系统方框图可由图3.3表示。
图3.3Smith预估补偿系统一般型框图
图3.3经方框图通过等效变换,可转为如图3.4所示的方框图。
由图3.4显然可得等效Smith预估系统闭环传递函数为
(3.10)
故闭环系统特征方程式为
=0(3.11)
图3.4Smith等效预估补偿系统框图
这就是Smith预估补偿的基本思路,即从系统特征方程式中消除纯滞后因素,因而可消除过程纯滞后特性对系统稳定性的不利影响。
3.6加温炉控制简介
在过程控制系统中,温度控制是一种常见的控制形式,本文主要通过加热炉温度控制的模型结构,来阐述最优控制,即用粒子群算法的思想,来对PID参数进行自整定。
加热炉对象是一个自衡系统,即在其他条件不变,一定的燃油流量和助燃风量的作用下,炉出口温度和烟气中的氧体积分数是一定的。
资料显示,在大多数情况下,自衡对象的动态特性都可以用一阶、一阶滞后、二阶、二阶滞后4种模型来描述。
对加热炉测试的结果表明:
燃油流量qm(s)及助燃风量挡板开度X(s)对炉出口温度T(s)及烟气中氧体积分数φO2(s)的关系均可用二阶滞后传递函数来描述。
设在本控制系统中采用传递函数:
(3.12)
4系统仿真
4.1工程上的参数整定
对于本文选中的加热炉模型。
这里采用临界稳定法对系统进行初始整定,步骤如下:
1.置调节器的积分时间
为最大值,微分时间
为0,比例带取适当大小的值,使系统进入运行状态。
2.待系统运行稳定后,逐渐减小比例带,直到出现等幅振荡为止,即所谓的临界振荡过程。
记录下此时的比例带值,并计算两个波峰的间距,记做
。
3.利用K和
再按4.1表所给的计算公式,求出调节器各参数K,
,
的数值。
表4.1临界比例度法计算公式
参数调节规律
比例带
积分时间
微分时间
P
2
__
__
PI
2.2
0.85
__
PID
1.6
0.5
0.125
得到初始结果为:
=185-80=105
K=8.02
根据上表,可以计算用PID调节器调节时的各参数为:
=5.01
=52.5,
=0.0954
=13.125,
=65.75
用工程整定后的仿真图形如下所示.取
=5.01,
=0.0954,
=65.75。
4.2微粒群算法参数整定
用粒子群算法优化后得到的参数为
=5.0017,
=0.0229,
=65.7811。
4.3结果比较
图4.1两种不同方法的仿真曲线
采用工程上的整定方法(临界比例度法)粗略的确定其初始的三个参数
,并通过仿真得到响应曲线,曲线的上升时间虽然比较快,但是过度时间比较长,超调量也过大,这对工程实践是不利的。
再采用粒子群算法整定参数,通过粒子群算法对参数优化后的曲线,曲线的各个指标也有了明显的提高,尤其是超调量有了明显的减少,上升时间也有了明显的缩短。
这正是我们所期待的。
结论与展望
本设计采用多变量寻优的粒子群算法对控制系统的PID参数进行优化设计,通过采用工程上的整定方法(临界比例度法)粗略的确定其初始的三个参数
,并采用粒子群算法用SIMULINK的仿真工具对PID参数进行优化,得出系统的响应曲线,比原来得到了良好的改善。
但是还有一些地方不足或我不知道的,希望以后还有更大的更进。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微粒 算法
![提示](https://static.bingdoc.com/images/bang_tan.gif)