一、旅行商问题介绍
二、人工原生动物优化算法求解TSP
2.1算法介绍
人工原生动物优化器(Artificial Protozoa Optimizer ,APO)由Xiaopeng Wang等人于2024年提出,其灵感来自自然界中的原生动物。APO 模拟了原生动物的觅食、休眠和繁殖行为。
参考文献
[1]Wang X, Snášel V, Mirjalili S, et al. Artificial Protozoa Optimizer (APO): A novel bio-inspired metaheuristic algorithm for engineering optimization[J]. Knowledge-Based Systems, 2024: 111737.
2.2部分代码
close all clear clc %数据集参考文献 REINELT G.TSPLIB-a traveling salesman problem[J].ORSA Journal on Computing,1991,3(4):267-384. global data load('data.txt')%导入TSP数据集bayg29 Dim=size(data,1)-1;%维度 lb=-100;%下界 ub=100;%上界 fobj=@Fun;%计算总距离 SearchAgents_no=100; % 种群大小(可以修改) Max_iteration=10000; % 最大迭代次数(可以修改) [fMin,bestX,curve]=(SearchAgents_no,Max_iteration,lb,ub,Dim,fobj); %% 画最终的结果 Kd是最终的城市序列 [~,idx]=sort(bestX); idx=idx+1; Kd(1)=1; Kd(2:length(idx)+1)=idx; Kd(length(idx)+2)=1; %% 画路径图 figure plot(data(Kd,1),data(Kd,2),'go','MarkerFaceColor','g')
2.3部分结果
算法得到的路径:1 > 28 > 6 > 12 > 9 > 5 > 26 > 3 > 29 > 2 > 21 > 8 > 27 > 23 > 7 > 25 > 19 > 11 > 22 > 17 > 14 > 18 > 15 > 4 > 20 > 10 > 13 > 16 > 24 > 1
算法求解的总路径总长:9375.2327
三、完整MATLAB代码
v