matlab 动态邻域粒子群,求解TSP问题的动态邻域粒子群优化算法

1引言粒子群优化(ParticleSwarmOptimization,PSO)算法于1995年由Eberhart博士和Kennedy博士提出,它是一类新兴的基于群智能优化算法[1],同其它的进化算法相比,其最吸引人的特征是简单实现和更强的全局优化能力.为此,PSO算法引起了演化计算等领域的学者们的广泛关注,在短短的几年内形成了一个研究热点并出现了大量的研究成果.大量实验结果也表明了PSO算法能解决(GeneticAlgorithm,GA)所能解决的各类优化问题,也显示出PSO算法确实是有力的优化工具且具有强大的生命力[2].粒子群优化算法以种群行为而不是适者生存原则来激励粒子的运动.每个潜在解与粒子运行速度相联系,该速度不停地根据粒子经验以及粒子邻居们的经验来调整大小、方向,总是希望粒子能朝着更好的方向发展.在搜索过程中,全局搜索能力与局部搜索能力的平衡关系对于算法的成功起着至关重要的作用.为叙述方便,下面列出了粒子的更新公式.vid=wvid+c1r1(pid-xid)+c2r2(pgd-xid)(1)xid=xid+vid(2)其中w称为惯性权值,c1,c2是两个正常数,称为加速因子,r1和r2是两个01之间的随机数.通常使用一个常量Vmax来限制粒子的速度,改善搜索结果.在基本PSO中,每个粒子同步地向个体最优值pBest和全局最优值gBest学习,群中所有的粒子受到专一决策的约束.即使远离gBest的粒子也与其他粒子得到相同的gBest某些信息.在这种情况下,粒子被迅速吸引,如果复杂搜索空间中的gBest有多个局部解,在搜索的后期,群中粒子在位置上缺乏多样性,则易陷入局部最优.为了刺激群体的持续进化,避免群体产生早熟收敛和停滞现象,很多研究者指出:可依据一定的标准为整个群体或部分粒子进行一定的标准为整个群体或部分微粒进行一定的再组织,以维持群体的多样性,使算法能持续进化.社会心理学研究表明,人们的态度、信仰和行为倾向于朝同伴的方向变化,他们会根据自己所处群体的规范选择自己的意见和行为,即人们通常会模拟所在群体的典型行为和信仰,而不一定是某个特定个体的行为.在粒子群算法中,可将一些小的子种群定义为“簇”,并且用“簇中心”来影响其他粒子.据此,Kennedy设计了一种新的粒子群组织结构[3],该结构是将空间邻域和环形拓扑方法相结合,称为社会趋同法(socialstereotyping).为此,本文给出一种求解TSP问题的动态邻域PSO算法,新算法中定义一个参数“dist”来控制搜索的范围和时间,对基本的粒子群优化算法进行改进,使得搜索过程能自适应地调整搜索范围,保持了群体粒子的多样性,克服易陷入局部最优的缺陷.应用到求解旅行商问题的实验结果表明算法在寻优性能上有了一定的提高.2TSP问题描述TSP是运筹学、图论和组合优化中的NP难问题,问题的具体描述如下[4]:给定n个城市及两两城市之间的距离,求一条经过各城市一次且仅一次的最短路线.其图论描述为:给定图G=(V,A),其中V为顶点集,A为各顶点相互连接组成的弧集,已知各顶点间连接距离,要求确定一条长度最短的Hamilton回路,即遍历所有顶点一次且仅一次的最短回路.设dij为城市i和j之间的距离,即弧(i,j)的长度.引入决策变量:1,ijxij=???0,若否旅则行。商访问城市后访问城市;(3)则TSP的目标函数为:ni,j=1minZ=xijdij.(4)3求解TSP的动态邻域PSO算法3.1TSP问题的PSO操作[5,6]定义1置换序列假设某个粒子k的位置为Xk,定义置换序列(ik,j

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值