一、蜘蛛蜂优化算法SWO
蜘蛛蜂优化算法(Spider wasp optimizer,SWO)由Mohamed Abdel-Basset等人于2023年提出,该算法模型雌性蜘蛛蜂的狩猎、筑巢和交配行为,具有搜索速度快,求解精度高的优势。蜘蛛蜂优化算法(Spider wasp optimizer,SWO)_IT猿手的博客-CSDN博客
参考文献:
[1]Abdel-Basset, M., Mohamed, R., Jameel, M. et al. Spider wasp optimizer: a novel meta-heuristic optimization algorithm. Artif Intell Rev (2023). Spider wasp optimizer: a novel meta-heuristic optimization algorithm | SpringerLink
二、单仓库多旅行商问题SD-MTSP
单仓库多旅行商问题(Single-Depot Multiple Travelling Salesman Problem, SD-MTSP):𝑚个推销员从同一座中心城市出发,访问其中一定数量的城市并且每座城市只能被某一个推销员访问一次,最后返回到中心城市,通常这种问题模型被称之为SD-MTSP。
多旅行商问题(Multiple Traveling Salesman Problem, MTSP):单仓库多旅行商问题及多仓库多旅行商问题(含动态视频)_IT猿手的博客-CSDN博客
三、蜘蛛蜂优化算法SWO求解SD-MTSP
本文选取国际通用的TSP实例库TSPLIB中的测试集bayg29作为测试例子,数据集可以自行修改。
3.1部分代码(可更改起点及旅行商个数)
close all
clear
clc
%数据集参考文献 REINELT G.TSPLIB-a traveling salesman problem[J].ORSA Journal on Computing,1991,3(4):267-384.
global data StartPoint Tnum
% 导入TSP数据集 bayg29
load('data.txt')
Tnum=4;%旅行商个数(可以自行更改)2-6
StartPoint=1; %选择起点城市(可以自行更改)
Dim=size(data,1)-1;%维度
lb=-10;%下界
ub=10;%上界
fobj=@Fun;%计算总距离
SearchAgents_no=100; % 种群大小(可以修改)
Max_iteration=2000; % 最大迭代次数(可以修改)
[fMin,bestX,curve]=SWO(SearchAgents_no,Max_iteration,lb,ub,Dim,fobj);
3.2部分结果
(1)5个旅行商
第1个旅行商的路径:10->29->3->26->1->27->10
第1个旅行商的总路径长度:1499.599947
第2个旅行商的路径:10->4->14->22->17->18->10
第2个旅行商的总路径长度:877.610392
第3个旅行商的路径:10->19->11->15->20->2->10
第3个旅行商的总路径长度:1018.920998
第4个旅行商的路径:10->25->7->23->16->13->10
第4个旅行商的总路径长度:1278.827588
第5个旅行商的路径:10->24->8->28->6->12->9->5->21->10
第5个旅行商的总路径长度:1091.421092
所有旅行商的总路径长度:5766.380017
(2)4个旅行商
第1个旅行商的路径:10->22->17->20->29->3->26->9->10
第1个旅行商的总路径长度:1812.512069
第2个旅行商的路径:10->4->19->25->16->8->24->13->10
第2个旅行商的总路径长度:938.402899
第3个旅行商的路径:10->21->1->28->12->6->5->2->10
第3个旅行商的总路径长度:977.752525
第4个旅行商的路径:10->27->23->7->11->14->18->15->10
第4个旅行商的总路径长度:1488.825040
所有旅行商的总路径长度:5217.492532