粒子群算法在PID神经网络优化中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ω31 ω32
3
ω61
1
ω41
ω62
ω42
4
6
ω51
2
ω52
ω63
5
图 1 两层前馈神经网络模型
寻优过程,在此过程中,将神经网络上的最小均方误差作
为训练准则。
xk +1 i,d
=
xk i,d
+
xk +1 i,d
(2)
vk +1 i,d
= ωvik,d
+ c1rand ()( pbestik,d

xk i,d
particle(i) = [ω31 ω32 ω41 ω42 ω51 ω52 ω61 ω62 ω63 ] (1)
式中,i 代表粒子数,i=1,2,…,M。 编码策略确定后,就可以将神经网络的权值相应的映
射成为粒子的维数的形式,并根据式(2)和式(3)进行
978-1-4244-6782-2/10/$26.00 ©2010 IEEE 582
80
70
60
适应度
50
40
30
20
100
10
20
30
40
50
进化代数
图 2 粒子群算法进化过程
控制量3 控制量2 控制量1
2 1
00
0.05
0.1
0.15
0.2
1
0.5
00
0.05
0.1
0.15
0.2
2
1
00
0.05
0.1
0.15
0.2
时间(s)
图 3 控制器效果对比(实线代表控制目标,◇线线代表粒子群优化
粒子群优化算法的适应度函数选择比较简单,通常可 以直接把目标函数作为适应度函数。当然,也可以对目标 函数进行变换。 3.粒子群算法优化的 PID 神经元网络控制系统仿真 实例
为了检验粒子群算法优化的 PID 神经元网络控制系统
的性能,作者进行了大量的仿真研究,以下为一个仿真实
例。设一个强耦合的非线性对象由以下方程描述:
)
+
(3)
c2rand ()(gbestik,d

xk i,d
)
式中,c1 和 c2 称为学习因子;rand()为介于(0,1)的随 机数;vki,d 和 xki,d 分别为粒子 i 在第 k 次迭代中第 d 维的 速度和位置;pkg,d 为群体在第 d 维的全局极值的位置。
2.2 算法参数的设置
粒子群优化算法的一个最大的优点是不需要调节太多 的参数,但是,算法中的少数几个参数却直接影响着算法 的性能和收敛性。目前,算法的参数设置[3-4]在很大程度上 还依赖于经验。下面是粒子群优化算法中一些参数的作用 及其设置经验。 (1)粒子群的数目
粒子群的数目一般取值[20,40]。对于大多数问题来说, 30 个粒子就可以取到很好的结果,不过对于比较难的问题 或者特殊类别的问题,粒子数目可以取到 100 或者 200。 粒子数目越多,算法搜索的空间范围就越大,也就更容易 发现全局最优解。当然,算法运行的时间也较长。本文的 粒子群的数目选为 30。 (2)粒子长度
⎧ ⎪ ⎪
y1 (k
+ 1)
=
0.5 ∗
y1
(k
)
+
1
+
u1 (k ) (u1 (k
))2Hale Waihona Puke Baidu
+ 0.3∗ (u1(k))3
+
⎪ ⎪
0.6 ∗ u2 (k) + 0.4 ∗ y2 (k)
⎪⎪ y2 (k ⎨
+ 1)
=
0.3 ∗
y2
(k
)
+
1
+
u2 (k) (u2 (k
))2
+ 0.5 ∗ (u2 (k))3
Abstract—The original weight values of PID neural network are usually determined randomly and tend to sink into the local optimization in their learning process. To overcome the deficiency of PID neural network, the paper employs the particle swarm algorithm to optimize the PID neural network. To begin with, the particle swarm algorithm is used to acquire the optimized weight values of PID neural network. Next, by using the optimized weight values, we can optimize the PID neural network. Additionally, the performance of the improved PID neural network is assessed using a nonlinear coupling system. The simulation shows that the improved PID neural network effectively relieves the deficiency of the original PID neural network and has some obvious advantages in the calculation accuracy and convergence speed over the original PID neural network.
2010 International Conference on Circuit and Signal Processing
Application of Particle Swarm Algorithm to
Optimization of PID Neural Network
Chi Yuan School of Mechanical and Electronic Engineering, Weifang University, Weifang, Shandong, China (yuanchi1961@163.com)
一般可以考虑取 vmax=kxmax 中的 k=0.5。 (5)加速度常数
学习因子 c1 和 c2 表示粒子受社会知识和个体认知的影 响程度,通常设为相同值以给两者同样的权重,本文 c1=c2=1.5。 (6)算法迭代条件
粒子群算法的终止条件一般可以设置为达到最大迭代 次数或者满足一定的误差准则。 (7)适应度函数
Keywords—PID, neural network, particle swarm algorithm, optimization
粒子群算法在 PID 神经网络优化中的应用
袁驰
潍坊学院机电工程学院,潍坊,山东,中国
摘 要 PID 神经网络的初始权值是随机得到的,这导致了权值在学习过程中极易陷入局部最优,本文采用粒子群算法来克服 PID 神经网络的这一缺陷。首先采用粒子群算法优化 PID 神经网络的初始权值,然后将优化后的初始权值代入 PID 神经网络得到优化的神 经网络,最后通过一个非线性耦合系统来评估经粒子群算法优化后 PID 神经网络的性能。仿真结果表明,与原始的 PID 神经网络相比, 经粒子群优化后的 PID 神经网络有效地克服了权值在学习过程中出现的局部最优,且在计算精度和收敛速度方面有了明显的提高。
粒子群优化算法[2]用于神经网络优化主要包括两大方 面:一是用于神经网络学习,即优化全连接网络结构下的
各层之间的连接权值;二是优化网络的拓扑结构。本文的 优化主要是采用粒子群算法优化神经网络的权值。 2.1 粒子编码及群体初始化
采用粒子群优化算法训练神经网络,首先应将特定结 构中所有神经元间的连接权值进行编码。编码方式可以分 为向量编码策略和矩阵编码策略两种。本文采用向量编码 策略。在向量编码策略中,每个粒子被编码成一个向量。 对于如图 1 所示的前馈神经网络,每个粒子代表一个神经 网络的所有权重,则编码方式为
后的控制效果曲线,虚线代表未优化的控制效果曲线)
1
参考文献
[1] XU Yi-shan, ZENG Bi,YIN Xiu-wen,etc. “BP Neural Network and its applications based on improved PSO,” Computer Engineering and Applications,vol.45, no. 35,pp.233-235,2009
+
(4)
⎪ ⎪
0.3∗ u1(k ) + 0.4 ∗ y3 (k)
⎪ ⎪ ⎪
y3 (k
+ 1)
=
0.4 ∗
y3 (k) +
u3 (k) 1+ (u3 (k))2
+
0.5 ∗ (u3 (k))3
+
⎪⎩
0.5 ∗ u2 (k) + 0.4 ∗ y1(k)
对于本案例,由于被控对象有三个控制量,所以选择
包含三个单神经元网络组成的多神经网络作为系统控制
神经元网络控制器控制误差曲线对比。
从图 3 可以看出,粒子群优化后的 PID 神经网络控制
器控比 PID 神经网络控制器不仅可以迅速的逼近控制目
标,而且响应时间较短;从图 4 可以看出,粒子群优化后
的 PID 神经网络控制器比 PID 神经网络控制器的控制误差
要小很多。 4. 结论
PID 神经元网络采用的学习算法是梯度学习算法,初 始权值随机得到,权值在学习过程中极易陷入局部最优; 粒子群优化算法是一种基于群智能的进化计算技术,其速
[2] LI Xue, LIU Hong, CHANG Liang. “Multi-particle swarm coevolution algorithm based on simulated annealing method,” Application Research of Computers, vol.26,no.1, pp.,71-73,2009
器。网络权值随机初始化,控制量初始值为[0 0 0],控制目
标为[1.2 08 1.2],控制时间间隔为 0.001 秒。
图 2 为粒子群算法的进化过程,图 3 为粒子群优化的
PID 神经元网络控制器和 PID 神经元网络控制器控制效果
对比,图 4 为粒子群优化的 PID 神经元网络控制器和 PID
关键词 PID,神经网络,粒子群算法,优化
1.引言
人工神经网络[1]发展的一个重要基础是来源于人们对 人脑的研究和对细胞神经元学说的认识。正是结合人脑神 经网络系统的特点,人们才不断完善人工神经网络的理论, 特别是前向神经网络及 BP 算法已经广泛的应用于图像处 理、语音识别、非线性优化等领域。然而,基于梯度下降 的 BP 算法存在容易陷入局部极值、收敛速度慢等无法克 服的缺陷,因此,一个全局优化的算法就自然地被引入到 神经网络的训练中。粒子群优化算法是一种全局优化算法, 该算法具有容易实现、收敛速度快等优点,所以,正在被 逐渐的应用到神经网络的训练中去。 2.基于 PSO 的 PID 神经网络算法
粒子长度就是问题的长度,它由具体优化问题确定。 (3)粒子范围
粒子范围由具体优化问题决定,通常,问题的参数取 值范围为粒子的范围。另外,粒子每一维可以设置不同的 范围。 (4)粒子最大速率
粒子最大速率决定粒子在一次飞行中可以移动的最大 距离。必须限制粒子的最大速率,否则,粒子就可能跑出 搜索空间。粒子最大的速率通常设定为粒子范围的宽度。
[3] Ai-Qin Mu, De-Xin Cao, Xiao-Hua Wang, “A Modified Particle Swarm Optimization Algorithm ,” Natural Science, vol.1, no.2, pp.151-155, 2009.
[4] H.H.El Morra, A.U. Sheikh, and A. Zerguine. “OPTIMUM MULTIUSER DETECTION IN CDMA USING PARTICLE SWARM ALGORITHM,” The Arabian Journal for Science and Engineering ,vol.34,no.1B, pp. 197-202,2009.
583
度-位移搜索模型操作简单、计算复杂度低,既能以较大的 概率保证最优解,又可以提高局部区域的收敛速度;粒子 群优化后的 PID 神经网络控制器不仅可以更快的逼近控制 目标,而且响应时间较短。虽然粒子群算法有其种种优势, 但也有自身的局限性,粒子群优化算法在应用于高维复杂 问题优化时,往往会遇到早熟收敛的问题,也就是种群在 还没有找到全局最优点时已经聚集到一点停滞不动。这些 早熟收敛点,有可能是局部极小点,也有可能是局部极小 点领域的一个点。换句话说,早熟收敛并不能保证算法收 敛到局部极小点。因而,本文下一步将对算法早熟收敛行 为进行深入的研究。
相关文档
最新文档