基于多头绒泡菌的蚁群信息素更新方法

文档序号:9929711阅读:477来源:国知局
基于多头绒泡菌的蚁群信息素更新方法
【技术领域】
[0001] 本发明属于智能算法领域,设及一种基于多头绒泡菌的蚁群信息素更新方法。
【背景技术】
[0002] 蚁群算法(Ant Colony Optimization,AC0)作为一种最经典、应用最广泛的智能 算法,它最早由Dorigo等人于1991年提出,称为妈蚁系统(Ant System,AS),并成功应用于 求解旅行商问题(Traveling Salesman ProblemJSP),该问题在现实世界有很多应用,例 如旅行路线规划问题W及物流配送问题等。AS算法虽然具有较好的鲁棒性和优秀的求解质 量等优点,但是却容易出现早熟、停滞的现象。
[0003] 研究者们对AS算法提出了多种改进算法,例如蚁群系统(Ant Colony System, ACS)、最大-最小妈蚁系统(Max-Min Ant System,MMAS)和最优-最差妈蚁系统(Best-Worst Ant System,BWAS),运些算法均是通过间接修改信息素更新方式或限制信息素规模的方 式,来提高蚁群在捜索最优解时的开发力度。然而在算法迭代过程初期,由于非全局最优路 径上的干扰,仍然可能会因为过度开发或者开发不足而导致捜索效率下降、陷入局部最优 解。
[0004] 之后改进的ACO算法多从W下两方面入手:一、使用局部捜索策略,如2-〇pt、3-opt、路径突变策略等;二、优化蚁群算法中信息素启发式因子a、期望启发因子PW及信息素 挥发系数P的设置,从而提高整个蚁群的捜索效率。虽然使用局部捜索策略或优化蚁群算法 参数后同样改变了信息素矩阵,但是运种改变大多仍为间接的信息素矩阵优化方式,优化 效果有限。因此,如何从根本上改进信息素矩阵更新方式从而提高算法寻优能力是当前最 期待解决的问题之一。

【发明内容】

[0005] 针对W上问题,本发明提供了一种构思合理,流程简单,能提高蚁群在捜索最优解 时的效率,提高蚁群算法探索最优解的能力和收敛速度,具有较好的鲁棒性和优秀的求解 质量等优点的基于多头绒泡菌的蚁群信息素更新方法。
[0006] 本发明的技术方案如下:
[0007] 上述的基于多头绒泡菌的蚁群信息素更新方法,首先初始化各主要参数,迭代开 始,并初始化妈蚁起始位置,接着由妈蚁构建回路,其次比较获得所走路径长度最短妈蚁的 回路作为最优回路,紧接着计算多头绒泡菌网络中各节点压力,再计算多头绒泡菌网络中 各管道内的流量,更新多头绒泡菌网络中各管道传导性,作为下次迭代计算各节点压力的 输入,然后进行全局信息素矩阵更新,最后判断演化迭代是否达到最大迭代次数。
[000引所述基于多头绒泡菌的蚁群信息素更新方法,其中:所述初始化各主要参数是根 据经验将信息素矩阵的权重a取值为1,将启发式矩阵的权重e取值为2,将信息素挥发系数P 取值为0.8,将每条道路上初始信息素量TO取值为1,将每只妈蚁释放的信息素量F取值为 20,将多头绒泡菌网络中初始信息素量Io也取值为20,将决定e值的参数A取值为1.05,将妈 蚁总数S取值为城市个数,将多头绒泡菌网络中每条管道初始传导性的值Do取值为I,将数 学模型对蚁群算法影响的步数Psteps取值为300,将算法总迭代步数Tsteps取值为300。
[0009] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述妈蚁构建回路具体为:首 先妈蚁根据道路的信息素含量T和启发式信息Tl决定移动到下一个未经过城市的概率P,W 经典的蚁群系统为例,妈蚁k在城市i选择未访问城市j的规则即概率转移规则按照如下公 式计算:
[0010]
(1);
[0011] 信息素矩阵Tiu表示连接城市i和城市U路径上的信息素浓度,启发式矩阵IUu=I/ diu表示从城市i移动到城市U的期望程度,Wf表示位于城市i的妈蚁k可选择的城市集合,参 数a和e为常数,分别代表信息素矩阵和启发式矩阵的权重,qo为预定义的常数(q〇E[0,l]), q为每次运算前生成的随机数(〇£[0,1])^表示按如下公式进行概率选择:
[0012]
(2);
[0013] 在移动过程中,每只妈蚁将维护一条已访问城市及访问先后顺序的列表,对于自 己已经访问过的城市将不会再次访问;然后根据具体算法决定是否有局部信息素矩阵更 新,如果有,更新方式为:当妈蚁从一个城市移动到另一个城市时,该路径上的信息素进行 挥发;W蚁群系统ACS为例,局部信息素矩阵TU更新公式为:
[0014] Tij<-(1-p) X Tij+P X t〇(3);
[001引式(3)中,P代表信息素挥发系数,TO代表每条道路上初始信息素浓度;
[0016] 所述妈蚁构建回路循环执行,直到所有妈蚁均完成一次回路回到起点。
[0017] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述最优回路的路径长度赋 值给最优解Smin;
[0018] 计算一只妈蚁k所走路径长度Sk的方式为:假设道路网络为一个完全联通图,用G = (N,E)表示,其中N={l,2,…,n}代表n个城市集合,E={(i,j)|i,jeN,i辛j}代表道路集 合;两个城市i和j的距离用符号表示,妈蚁k走过的回路用K表示,站计算公式为:
[00191
(4);
[0020] 式(4)中,Ki代表回路K中的第i个城市,且KiEN。
[0021] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述计算多头绒泡菌网络中 各节点压力,具体是:在多头绒泡菌数学模型的一个迭代过程中,每对有管道相连的节点均 有一次机会被选为入口 /出口;当被管道m连接的两个节点a和b被选为入口和出口时,根据 基尔霍夫定律计算每个节点的压力,用A"'代表节点i的压力,计算方法见如下公式:
[00991 (5) ;
[0023] 式(5)中,Du代表管道的传导性,与管道直径成正比,Lu代表管道Q,j)的长度,与 路网中城市i与城市j之间的距离一致,Io代表多头绒泡菌网络中总流量且在网络演化过程 中始终保持不变;上述公式(5)被循环执行直到每个管道连接的节点均被选为一次入口 /出 口为止。
[0024] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述计算多头绒泡菌网络中 各管道内的流量化J,具体公式为:
[00951 (6) ;
[0026] 式(6)中,M代表多头绒泡菌网络中管道总数,其与旅行商问题TSP中的道路总数相 等,Du代表管道的传导性,Lu代表管道的长度,巧m代表当管道m连接的节点被选为入口 /出 口时节点i的压力。
[0027] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述更新多头绒泡菌网络中 各管道传导性,作为下次迭代计算各节点压力的输入,具体公式为:
[002引
(7) ;
[0029] 式(7)中,Du代表管道的传导性,Qu代表管道内的流量。
[0030] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述进行全局信息素矩阵更 新,其W蚁群系统ACS为例,整合蚁群系统和多头绒泡菌网络进行全局信息素矩阵更新,具 体关系式为:
[00311
(8) ;
[0032]式(8)中,前两项来自蚁群系统ACS,最后一项基于多头绒泡菌数学模型添加;TiJ代 表连接城市i和城市j路径上的信息素浓度,P代表信息素挥发系数,Qu表示管道内的流量,M 代表多头绒泡菌网络中管道总数,Io代表多头绒泡菌网络中总流量,SglDbal-bast代表全局最 优妈蚁所走回路的长度;参数e代表多头绒泡菌网络中信息素流量对蚁群的影响因子,其计 算公式为:
[0033]
(9);
[0034] 式(9)中,Psteps代表数学模型对蚁群算法影响的步数,t代表当前迭代步,A为常 量,且 Ae(l,1.2)。
[0035] 所述基于多头绒泡菌的蚁群信息素更新方法,其中,所述判断演化迭代是否达到 最大迭代次数,如果结果为"是",则输出最优解Smin作为算法求得的最优解,流程结束;否则 进入初始化妈蚁起始位置再次进行迭代。
[0036] 有益效果:
[0037] 与现有技术相比,本发明在优化蚁群算法时,
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1