本文是一篇计算机论文,本文针对传统拥挤距离计算公式的缺陷,提出了新的拥挤距离计算公式。在传统的拥挤距离计算当中,当种群中两个粒子的距离靠的非常相近时,那么这两粒子都不会被选择,这将会导致最终的帕雷托前沿中解分布的不均匀,以及解的多样性得不到保证,新的拥挤距离不再根据与粒子最接近的两个粒子对拥挤距离进行计算,而是根据第一个粒子与最后一个粒子对拥挤距离进行计算,这不仅能够提升解的多样性还能够使解的分布更加均匀。
第一章 引言
1.1 研究背景与意义
群体智能算法的研究起源于人类对物种起源进化以及对蚂蚁、蜜蜂、鸟群等典型群体的行为研究,通过观察这些典型群体的行为,进行抽象建模、算法设计,从而解决实际问题。经典的群体智能算法有模拟自然界中蚂蚁的觅食以及行动过程当中分泌信息素等行为而提出的蚁群算法[1-2]。以生物遗传为模型,优胜劣汰为法则,进行仿真运算,而将问题的求解过程转换成类似生物在进化过程当中的染色体基因交叉、变异过程而提出的遗传算法[3]。以鸟群觅食行为为模型而提出的粒子群优化算法[4]等等。这些智能优化算法的提出,经过研究者们的不断改进,已经被应用于各个领域。以粒子群优化算法为代表,粒子群优化算法以粒子代替鸟群中的个体,寻求最优解,因其复杂性不高,容易实现、不需要事先知晓目标函数可微可导信息、收敛速度快等优点而备受研究者青睐。目前粒子群算法已被广泛应用于各类问题,例如函数优化、求解整数约束和混合整数约束优化、神经网络训练、信号处理、路由算法等实际问题,实践结果证明了这些算法的可行性和高效性[5]。然而粒子群算法的收敛性快的优点也会给其带来弊端,较快的收敛性能,让粒子在迭代的过程当中提前陷入了局部最优而无法跳出,使得粒子失去多样性。在利用粒子群算法求解多目标的问题时,基于传统的拥挤距离概念得出的帕雷托前沿解的多样性也无法得到保证。如何利用粒子群优化算法在解决多目标优化问题时获得更优解一直是学者们的研究方向。
在我们的现实生活中,各领域当中都存在着优化问题,例如工业领域的生产调度、系统控制问题、金融领域的股票预测分析问题、数据分析领域的特征选择问题等等。现实的复杂性导致我们需要解决的问题也越来越复杂,这些复杂问题往往含有多个相互关联而又相互冲突的目标,我们把这样的问题称为多目标优化问题,在多目标优化问题当中,所有目标不可能都同时达到最优,如何寻找一组最优解平衡相互冲突的目标已成为研究多目标优化问题的热点。不断发展的粒子群算法得到了人们的关注,粒子群优化算法因其强大的搜索能力与快速收敛能力而被研究者应用于各个领域当中对复杂的多目标优化问题进行求解。
1.2 国内外研究现状
1.2.1 粒子群优化算法的发展
粒子群优化算法最早由Kennedy 和Russell Eberhart等人提出,它是一种源于人工生命和演化计算理论的技术。因其原理简单,用到的参数较少,而被广泛研究应用。由于粒子群算法存在着在迭代的开始收敛速度快而在迭代后期收敛速度慢、参数选择没有准确标准、容易陷入局部最优等问题在被提出后的二十多年里,研究者提出了许多对粒子群优化算法的改进,研究人员主要从惯性因子的改进、变异策略的优化以及优化编码等方面对粒子群算法进行改进,提升算法的性能。
为了使粒子群中粒子的移动速度能够随着迭代的进行而动态变化,并且使得粒子能够进行充分搜索,在算法的后期满足对局部重点区域进行搜索的需求,研究者们提出了通过设置惯性因子来改变种群中粒子的运动速度。最早由Shi等[6]提出了惯性权重递减调节法,该方法在算法迭代的过程当中减小惯性因子ω的递减速率,在很大程度上增强了粒子在搜索空间的搜索能力。Chatterjee等人[7]在此基础上提出了惯性权值随粒子原有速度的非线性变化优化方法,对粒子的搜索进行调整,增强算法的搜索性能。姜建国等人[8]提出了以动态变化的余弦函数cos(πt/T)作为惯性权重系数,并且设置了一定参数对加速因子进行扰动,达到对算法性能提升的效果,由于余弦函数cos(πt/T)在迭代过程的前期及后期递减速度较平缓,中期递减的速率较激烈,这使得算法的全局及局部搜索能够平稳地进行并且提升收敛速度。李会荣等人[9]提出了一种非线性惯性权重思想,将算法中的惯性权值设置成非线性的指数函数,同时采用柯西变异让粒子能够跳出局部最优,为粒子搜索提供了更多的可能性。在惯性权重ω的处理上,不断有学者提出各种改进措施,在算法运行的一开始使用较大的惯性权重能够提升粒子搜索能力,而在后期的局部搜索当中较小的ω对粒子搜索更有利。
第二章 相关工作
2.1 粒子群优化算法
粒子群算法是计算数学中用于解决优化问题的搜索算法,也是最为经典的群体智能算法之一。该算法于1995 年由Kennedy 和 Eberhart两位博士共同定义,并从理论角度对算法的收敛性和稳定性进行了分析和证明。粒子群算法一经提出得到了广泛的关注,主要应用于工程、计算机科学、行为管理研究科学等领域。
2.1.1 粒子群优化算法的原理
粒子群算法以自然界中鸟类的觅食行为为模型进行建模。抽象鸟群中每个个体为无质量的“粒子”,即忽略每个粒子的质量与体积。每个粒子在迭代之初都拥有自身的速度和位置。利用群体中粒子之间的信息交互,引导整个群体中的粒子在保留自身多样性信息的同时,朝向群体最优粒子收敛。如图2.1所示,粒子在𝑡+1时刻的移动速度是由粒子在当前𝑡时刻的移动速度𝑉𝑖(𝑡)、粒子自身的历代最优位置𝑝𝑏𝑒𝑠𝑡𝑖(𝑡)、以及全局最优位置𝑔𝑏𝑒𝑠𝑡(𝑡)一起共同决定的。粒子的位置从当前𝑡时刻的𝑥𝑖(𝑡)更新至新位置𝑥𝑖(𝑡+1)。随着迭代的进行,群体中的粒子在最优者的引领下快速完成对整个搜索空间的搜索。
2.2 多目标优化理论
2.2.1 多目标优化问题描述
在我们的实际生活当中,由于现实因素的复杂性,我们面临的往往都是复杂问题,这些复杂问题通常都被两个及两个以上的多个相互冲突目标所制约,同时使得这些相互冲突的目标在给定范围内尽可能达到最优的问题被称作多目标优化问题。多目标优化问题普遍存在于工程应用等领域,在多目标优化问题中,所有目标不可能同时达到最优,因此需要在相互冲突的目标之间进行权衡作出最优决策。多目标优化问题的解并非唯一 ,而是由众多帕雷托最优解(非劣解)组成的一组解集合。多目标优化问题可分为最大化问题与最小化问题,本文所研究的特征选择以及商品通关物流路径优化问题都是最小化多目标优化问题。
2.2.2 基于非支配排序的多目标优化算法
(一) 非支配排序
在解决多目标优化问题时,非支配排序方法经常被使用,例如基于非支配排序的遗传算法NSGA-2,基于非支配排序的多目标粒子群算法。非支配排序利用帕雷托最优解的概念将种群中的个体进行分级,非支配状态越高的个体层级越靠前,挑选出较为优异的个体,使其有较大机会进入下一次迭代。对种群中的粒子按照支配关系排序,将种群快速分层。对于包含𝑚个目标函数,规模为𝑃的种群,首先求解出支配x(x为种群中的个体)的个体数𝑝𝑥以及被个体x所支配的集合𝑠𝑥,具体的排序分层步骤如下:
Step1:设𝑥=1;
Step2:对所有𝑦=1,2,…,𝑃且x≠y,根据评价函数,比较𝑋𝑥与𝑋𝑦之间的支配关系;
Step3:若𝑋𝑥能够支配𝑋𝑦,则对𝑋𝑥进行标记,此时𝑝𝑥为0;
Step4:令𝑥=𝑥+1,重复步骤2,直到所有的非支配个体被找出;
Step5:保存所有𝑝𝑥=0的个体于集合𝐹𝑥中;
Step6:对于集合𝐹𝑥 中的每个个体 𝑥 ,其所支配的个体集合为 𝑠𝑥,对集合𝑠𝑥中的每个个体h进行遍历,并且令𝑛ℎ=𝑛ℎ−1,若𝑛ℎ= 0,则将个体保存在集合H中;
Step7:记𝐹𝑥中保存的个体为第一层非支配个体,并以H为当前集合,重复步骤5、6,直至全部个体被分层。
第三章 改进的多目标粒子群优化算法 .............................. 13
3.1 多目标粒子群算法的改进 ........................... 13
3.1.1 自适应柯西变异操作 ....................................... 13
3.1.2 改进的新拥挤距离 ..................................... 15
第四章 基于改进后的多目标粒子群算法的应用 .................................... 27
4.1 改进后的多目标粒子群算法在特征选择中的应用 ............................ 27
4.1.1 问题描述 ......................................... 27
4.1.2 算法的基本流程与伪代码 ............................... 27
第五章 总结及展望 ................................. 45
第四章 基于改进后的多目标粒子群算法的应用
4.1 改进后的多目标粒子群算法在特征选择中的应用
4.1.1 问题描述
特征选择即从一组拥有多个特征数的数据集合当中选择出一组最优特征。由于特征之间存在着复杂关系,且特征与特征之间的组合数量过多导致无法对每个组合都进行评估,因此特征选择问题是一个优化问题。特征选择的一大难点在于,无法准确判断哪个特征是有用的或者无用的,因为一个特征与其他不同的特征组合在一起时可能会从冗余特征变成有关特征,也可能会从一个有关特征变成冗余特征。
4.1.2 算法的基本流程与伪代码
在将基于非支配排序的多目标粒子群算法应用到特征选择当中,算法的两个最关键的步骤就是对全局最优解的选择以及对帕雷托前沿面的更新。算法的主要步骤如下:
Step 1:设置算法的参数,将数据集合分成训练集与测试集两部分,并对种群中粒子的速度与位置进行初始化;
Step 2:对种群中的粒子特征数和分类错误率进行评估,再根据评估的结果来确定种群中的非支配粒子集;
Step 3:根据新提出的拥挤距离计算公式对每个非支配粒子的拥挤距离进行计算,根据新公式的特性,将非支配粒子按拥挤距离进行升序排序;
第五章 总结及展望
本文首先介绍了粒子群算法、多目标粒子群算法、特征选择技术的发展以及物流路径优化策略的现状发展,重点介绍了多目标粒子群算法的发展与应用现状。多目标粒子群算法因其强大的搜索能力与收敛能力备受研究者的青睐,在各个领域当中都涉及对该算法的应用。本文基于非支配排序的多目标粒子群算法提出了两种改进策略,并将其应用于两个多目标优化问题应用实例当中。主要如下:
一、本文针对传统拥挤距离计算公式的缺陷,提出了新的拥挤距离计算公式。在传统的拥挤距离计算当中,当种群中两个粒子的距离靠的非常相近时,那么这两粒子都不会被选择,这将会导致最终的帕雷托前沿中解分布的不均匀,以及解的多样性得不到保证,新的拥挤距离不再根据与粒子最接近的两个粒子对拥挤距离进行计算,而是根据第一个粒子与最后一个粒子对拥挤距离进行计算,这不仅能够提升解的多样性还能够使解的分布更加均匀。
二、针对粒子群算法的快速迭代容易产生局部最优的问题,本文提出了一种新的变异机制,在传统柯西变异的基础上,根据种群的平均移动速度设置了一个能够自适应调整变异步长的参数,该参数随着种群中粒子移动速度的减小而逐渐减小,所以能够在迭代前期以较大的变异步长提高粒子在种群中的搜索能力,而在种群的迭代后期以较小的变异步长扰动种群,加快算法的收敛。
三、将基于新拥挤距离改进与新变异机制改进的基于非支配排序的多目标粒子群算法在五个ZDT以及三个DTLZ测试函数上进行实验,将得到的结果与另外五种算法进行比较证明,本文提出的算法有良好的性能。
四、将改进的算法运用于特征选择问题上,分别在8个测试数据集上进行测试,将得到的特征数量与分类错误率与其余三种算法进行比较,证明了本文提出的算法在特征选择问题上能在降低特征提取数量的基础上,获得更低的分类错误。本文还单独对两种改进策略进行了测试,实验证明在特征选择问题中,基于拥挤距离的改进得到的实验结果要优于基于新变异策略改进的算法。
参考文献(略)