一、杨氏双缝实验优化算法YDSE
杨氏双缝实验优化算法(Young’s double-slit experiment optimizer,YDSE)由Mohamed Abdel-Basset等人于2023年提出。
参考文献:
[1]Mohamed Abdel-Basset, Doaa El-Shahat, Mohammed Jameel, Mohamed Abouhawwash,Young’s double-slit experiment optimizer : A novel metaheuristic optimization algorithm for global and constraint optimization problems,Computer Methods in Applied Mechanics and Engineering,Volume 403, Part A,2023,
https://doi.org/10.1016/j.cma.2022.115652.
二、单仓库多旅行商问题SD-MTSP
单仓库多旅行商问题(Single-Depot Multiple Travelling Salesman Problem, SD-MTSP):𝑚个推销员从同一座中心城市出发,访问其中一定数量的城市并且每座城市只能被某一个推销员访问一次,最后返回到中心城市,通常这种问题模型被称之为SD-MTSP。
多旅行商问题(Multiple Traveling Salesman Problem, MTSP):单仓库多旅行商问题及多仓库多旅行商问题(含动态视频)_IT猿手的博客-CSDN博客
三、杨氏双缝实验优化算法YDSE求解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=13; %选择起点城市(可以自行更改)
Dim=size(data,1)-1;%维度
lb=-10;%下界
ub=10;%上界
fobj=@Fun;%计算总距离
SearchAgents_no=100; % 种群大小(可以修改)
Max_iteration=3000; % 最大迭代次数(可以修改)
[fMin,bestX,curve]=YDSE(SearchAgents_no,Max_iteration,lb,ub,Dim,fobj);
3.2部分结果
(1)3个旅行商
第1个旅行商的路径:13->21->6->12->5->9->26->3->29->2->13
第1个旅行商的总路径长度:1236.769987
第2个旅行商的路径:13->24->1->28->8->23->27->16->19->20->13
第2个旅行商的总路径长度:1245.230902
第3个旅行商的路径:13->10->4->15->14->22->17->18->11->7->25->13
第3个旅行商的总路径长度:1398.356178
所有旅行商的总路径长度:3880.357067
(2)4个旅行商
第1个旅行商的路径:13->24->28->1->6->12->9->21->13
第1个旅行商的总路径长度:1042.880626
第2个旅行商的路径:13->2->5->29->3->26->20->10->13
第2个旅行商的总路径长度:1220.409767
第3个旅行商的路径:13->8->27->23->7->25->16->4->13
第3个旅行商的总路径长度:1296.919427
第4个旅行商的路径:13->15->18->17->22->14->11->19->13
第4个旅行商的总路径长度:1028.591270
所有旅行商的总路径长度:4588.801090