【摘要】:对各边(i,j),计算:τij←ρ˙τij+△τji;对各边(i,j),置;△τji←0;nc←nc+l;若nc<预定的迭代次数,则goto Loop;输出目前的最好解;End。不难验证,整个算法的时间复杂性为O。另外,为使人工蚂蚁找到的路线能进一步优化,算法中可以对回路路线加入2-OPT局部搜索机制。
CVRP的最终目标是使所有车辆的总行程最短,其蚁群优化算法求解思想如下:
Begin
初始化:
nc←0;(nc为迭代次数)
对各边弧(i,j):
τij←常数c(较小的正数);△τij←0
ca←D;(ca为车辆剩余载重量)
读入其他输入参数;
Loop:
将初始点置于当前解集中;
While(不满足停机准则)do
begin
对每个蚂蚁k:
按剩余载重量和转移概率Pkij选择顶点j;
将蚂蚁k从顶点i移至顶点j;
将顶点j置于当前解集中;
end.(www.xing528.com)
当所有点都已置于解集中,则记录蚂蚁个数m←k;
应用局部搜索机制优化路径;
计算各蚂蚁的目标函数值;
记录当前的最好解;
for k←1 to m do
begin
对各边(i,j),计算:Δτji←Δτji=(增加单位信息素);
end。
对各边(i,j),计算:
τij←ρ˙τij+△τji(轨迹更新);
对各边(i,j),置;△τji←0;
nc←nc+l;
若nc<预定的迭代次数,则goto Loop;
输出目前的最好解;
End。
不难验证,整个算法的时间复杂性为O(nc˙n2)。另外,为使人工蚂蚁找到的路线能进一步优化,算法中可以对回路路线加入2-OPT局部搜索机制。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。