一种基于pso算法求解模糊期望值模型问题的混合智能算法
【技术领域】
[0001] 本发明涉及理论和工程应用领域,具体涉及一种基于PSO算法求解模糊期望值模 型问题的混合智能算法。
【背景技术】
[0002] 模糊期望值模型是由Liu提出的一类模糊规划,它是在模糊环境中,在期望约束 之下,使目标函数的期望值达到最优的数学规划模型。
[0003] 模糊期望值模型问题的提取并不困难,但其求解却很难。因此,探索高效的模糊期 望值模型的算法就非常有研究价值。处理模糊期望值模型的主要方法是利用模糊模拟与智 能算法相结合来进行,如遗传算法、小生境技术搜索算法、模拟退火算法等。其中以遗传算 法(Genetic Algorithm简称GA)最为成功。目前,国内外学者仍在继续探索求解该类问题 的新的、更为有效的算法。
[0004] 计算机技术的迅速发展使智能技术具有解决大规模、更复杂优化问题的优势。微 粒群算法是由Eberhart与Kennedy于1995年提出的一种新的智能技术,与GA类似,采用 基于种群的并行全局搜索策略,但不具有选择、变异等操作,仅采用简单的速度一位置模型 实现对整个空间的寻优操作,这是它不同于GA的最显著之处,也是该算法呈现出许多优良 特性的关键。该算法只需调整很少的参数,具有简单、易于编程实现,收敛速度快,精度高等 优点。它已在各类问题的求解及应用中展现了它的特点和魅力。然而将PSO算法应用于模 糊期望值模型这一类问题的求解很少,现有文献利用PSO实现了该类问题的求解,但利用 模糊模拟估计不确定函数这一过程比较费时,考虑到神经网络在函数逼近中的成功应用, 为了实现加速求解的过程,利用前向神经网络逼近不确定函数,再将训练好的神经网络嵌 套在PSO算法中应该能很好的解决这一问题。本文的工作就是尝试利用模糊模拟、神经网 络、PSO算法三者相结合的混合智能算法求解该类问题,通过仿真实验取得了十分满意的效 果,从而在质量和速度上实现了以PSO算法为核心的混合智能算法对这一大类连续空间模 糊规划问题的高效求解。
[0005] 在利用PSO算法求解该类问题时,其核心是对模糊函数进行计算,这显然可以利 用模糊模拟的方法进行估计,而要使估计值尽量精确,则仿真的次数必须加大,这使得求解 过程很费时;此外,在PSO算法中,初始化时要用到模糊模拟来实现检验解的可行性和计 算微粒群中每个微粒的适应值;尤其是在每一迭代过程中也要利用它计算每个微粒的适应 值、实现检验解的可行性,当微粒数目、迭代次数很多时利用模糊模拟进行估计很显然计算 量相当大。在实际应用中,算法的执行效率是一个不容忽视的问题,而神经网络这一智能算 法在函数逼近中已得到广泛的应用,为了减少计算量以加速求解过程,利用训练好的前向 神经网络对模糊函数进行计算应该是可行的,而要对神经网络进行训练以使其能逼近给定 的不确定函数,这就需要解决以下问题:网络学习算法的选择,训练样本的获取。对于网络 的学习算法可采用既成熟又简单的BP算法,而对于训练样本的产生可通过模糊模拟取得。
【发明内容】
[0006] 为解决上述问题,本发明提供了一种基于PSO算法求解模糊期望值模型问题的混 合智能算法。
[0007] 为实现上述目的,本发明采取的技术方案为:
[0008] -种基于PSO算法求解模糊期望值模型问题的混合智能算法,包括如下步骤:
[0009] Sl :利用模糊模拟的期望值估计算法为不确定函数Ul,U2产生输入输出数据: (xt,yk),其中,t,k分别为输入、输出神经元的个数;利用线性函数转换法对xt,yk分别进 行归一化预处理,以归一化后的输入输出数据作为训练样本;(其中,在神经网络中使用归 一化是为了加快训练网络的收敛性,可不进行归一化处理)
[0010] Ul :X -E[f(x,ξ)]
[0011] U2 :X -E[gj(x,ξ)]
[0012] S2 :利用以上训练样本训练一个BP神经网络以逼近不确定函数Ul,U2 ;
[0013] S3 :在d维问题空间上对微粒群进行初始化:设定群体规模为popsize,在决策 向量X的可行域中产生一随机数,归一化后利用神经网络计算网络的仿真输出值并进行 反归一化(即计算E[gj(x,ξ)]的值),然后检验该随机数的可行性(即判断X是否满足 E[gj (X,ξ ) ] < 0),重复该过程popsize次,从而得到popsize个初始可行的微粒:Xi = (xil,xi2,"·,χ?(1)? = 1,2,"'popsize,然后再对速度等进行初始化;
[0014] S4:利用训练好的神经网络计算每个归一化后微粒的网络仿真输出值,并进行反 归一化(即计算E[f(x,ξ)]),作为每个微粒的适应值;
[0015] S5 :对每个微粒,将其适应值与所经历的最好位置的适应值进行比较,若较好,则 将其作为当前最好位置;
[0016] S6 :对每个微粒,将其最好适应值与全局所经历的最好适应值进行比较,若较好, 则将其作为当前的全局最好位置;
[0017] S7:根据以下方程进化:
[0018]
[0019]
[0020]
[0021] 式中,ω为惯性权重,cl,C2为正的加速度常数;rand ()为[0,1]上均匀分布的模 糊数;Pid、Pgd分别为个体极值、全局极值的第d维分量;在(2)中对微粒的最大速度进行 了最大限制:如果当前对微粒的加速将导致它的某维的速度分量V ld超过该维的最大速度 限额Vmax,则该维的速度被限制为Vmax,它决定了微粒在解空间的搜索精度,如果Vmax过 大,粒子容易飞过最优解,反之,粒子容易陷入局部搜索空间而无法进行全局搜索,若问题 的搜索空间限制在[ _Xmax,Xmax]内,则可设定Vmax = k*Xmax,0.1 < k < L 0 ;
[0022] S8 :对更新后的微粒再次进行归一化处理;
[0023] S9 :利用神经网络计算网络的仿真输出值并进行反归一化(即计算E[gj(x,ξ)]) 然后检验微粒的可行性(即判断x是否满足E[gj(x,ξ)]彡0),若可行,则接受,否则保持 原位置不变;
[0024] SlO :重复step4至step9至一个预设的最大迭代次数或一个足够好的适应值;
[0025] Sll :给出最好的微粒及对应的适应值作为最优解及对应的最优值。
[0026] 本发明具有以下有益效果:
[0027] 通过仿真实验与基于GA的混合智能算法的结果进行了比较,其优化性能明显优 于它,此外,为了体现该算法的执行速度,在运行时间上同PSO算法与模糊模拟相结合的模 糊机期望值模型算法进行了比较,该混合智能算法的高效性不言而喻。这一优点可使本文 的算法能更为有效地处理大规模的连续空间的模糊期望值模型问题,同时也拓展了 PSO算 法的应用领域,在应用中展现了该算法的优势。
【附图说明】
[0028] 图1为本发明实施例1中迭代过程抽样50次的对比示意图。
【具体实施方式】
[0029] 为了使本发明的目的及优点更加清楚明白,以下结合实施例对本发明进行进一步 详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发 明。
[0030] 本发明实施例提供了一种基于PSO算法求解模糊期望值模型问题的混合智能算 法,包括如下步骤:
[0031] Sl :利用模糊模拟的期望值估计算法为不确定函数Ul,U2产生输入输出数据: (xt,yk),其中,t,k分别为输入、输出神经元的个数;利用线性函数转换法对xt,yk分别进 行归一化预处理,以归一化后的输入输出数据作为训练样本;(其中,在神经网络中使用归 一化是为了加快训练网络的收敛性,可不进行归一化处理)
[0032] Ul :X -E[f(x,ξ)]
[0033] U2 :X -E[gj(x,ξ)]
[0034] S2 :利用以上训练样本训练一个BP神经网络以逼近不确定函数Ul,U2 ;
[0035] S3 :在d维问题空间上对微粒群进行初始化:设定群体规模为popsize,在决策 向量X的可行域中产生一随机数,归一化后利用神经网络计算网络的仿真输出值并进行 反归一化(即计算E [gj(x,ξ)]的值),然后检验该随机数的可行性(即判断X是否满足 E[gj (X,ξ ) ] < 0),重复该过程popsize次,从而得到popsize个初始可行的微粒:Xi = (xil,xi2,"·,χ?(1)? = 1,2,"'popsize,然后再对速度等进行初始化;
[0036] S4:利用训练好的神经网络计算每个归一化后微粒的网络仿真输出值,并进行反 归一化(即计算E[f(x,ξ)]),作为每个微粒的适应值;
[0037] S5 :对每个微粒,将其适应值与所经历的最好位置的适应值进行比较,若较好,则 将其作为当前最好位置;
[0038] S6 :对每个微粒,将其最好适应值与全局所经历的最好适应值进行比较,若较好, 则将其作为当前的全局最好位置;
[0041 ]
[0039] S7:根据以下方程进