淘金优化算法GRO求解不闭合SD-MTSP,可以修改旅行商个数及起点(提供MATLAB代码)

一、淘金优化算法GRO

淘金优化算法(Gold rush optimizer,GRO)由Kamran Zolf于2023年提出,其灵感来自淘金热,模拟淘金者进行黄金勘探行为。淘金优化算法(Gold rush optimizer,GRO)提供MATLAB代码_IT猿手的博客-CSDN博客

参考文献: K. Zolfi. Gold rush optimizer: A new population-based metaheuristic algorithm. Operations Research and Decisions 2023: 33(1), 113-150. DOI 10.37190/ord230108

二、淘金优化算法GRO求解不闭合SD-MTSP

(1)部分代码

close all
clear
clc
AlgorithName='GRO';
%数据集参考文献  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=500; % 最大迭代次数(可以修改)
Algorith=str2func(AlgorithName);
[fMin,bestX,curve]=Algorith(SearchAgents_no,Max_iteration,lb,ub,Dim,fobj); 

(2)部分结果

第1个旅行商的路径:1->28->8->27->23->7->25->19

第1个旅行商的总路径长度:1005.783277

第2个旅行商的路径:1->24->16->13->4->10->21->5

第2个旅行商的总路径长度:858.778202

第3个旅行商的路径:1->6->12->9->26->29->3->2

第3个旅行商的总路径长度:1059.622574

第4个旅行商的路径:1->20->15->11->22->17->14->18

第4个旅行商的总路径长度:1079.861102

所有旅行商的总路径长度:4004.045155

第1个旅行商的路径:1->28->6->12->9->5->21->26->29->3

第1个旅行商的总路径长度:926.930418

第2个旅行商的路径:1->2->10->13->24->8->27->23->7->25

第2个旅行商的总路径长度:1191.553608

第3个旅行商的路径:1->16->19->4->20->15->18->14->17->22->11

第3个旅行商的总路径长度:1156.546584

所有旅行商的总路径长度:3275.030609

三、完整MATLAB代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/501481.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JavaWeb实现的药店管理系统

一、系统架构 前端:jsp | layui | jquery | css 后端:spring | springmvn | mybatis 环境:jdk1.8 | mysql 二、代码及数据库 三、功能介绍 01. 登录 02. 首页 03. 药品管理 04. 销售管理-销售记录管理 05. 销售管理-退…

使用Fabric创建的canvas画布背景图片,自适应画布宽高

之前的文章写过vue2使用fabric实现简单画图demo,完成批阅功能;但是功能不完善,对于很大的图片就只能显示一部分出来,不符合我们的需求。这就需要改进,对我们设置的背景图进行自适应。 有问题的canvas画布背景 修改后的…

swift 长按桌面图标弹出快捷选项

文章目录 一、3D Touch二、主屏交互1. 静态添加2. 动态添加三、监听主屏交互按钮的点击事件四、预览和跳转1. 注册3D touch2. 实现协议3. 在目标控制器复写previewActionItems4. 使用UIContextMenuConfiguration一、3D Touch 3D Touch通过屏幕下方的压力感应器来感知不同的压力…

【ArcGIS】渔网分割提取栅格图+网格化分析图绘制

ArcGIS按渔网分割提取栅格图并绘制网格化分析图 准备数据操作步骤步骤1:创建渔网(Create Fishnet)步骤2:栅格数据处理步骤3:栅格插值步骤4:数据关联 参考 网格化的目的是让各个数据更加标准化的进行统计。因…

基础内容哦!!!吴恩达deeplearning.ai:利用计算图求导(反向传播)

以下内容有任何不理解可以翻看我之前的博客哦:吴恩达deeplearning.ai专栏 文章目录 一个小型神经网络的例子利用计算图逐步计算价值函数J利用计算图求出价值函数的导数 计算图是深度学习中的一个关键概念,它也是Tensorflow等编程框架自动计算神经网络导…

使用SSH推拉Github代码

快速使用 ssh-keygen -t rsa -b 4096 -C "your_emailexample.com 创建ssh密钥(一直回车,不要指定目录,不要设置密码)将生成的 ~/id_ras.pub 中的内容复制到Github对应位置即可 1.SSH简介 SSH(Secure Shell&…

Java学习笔记------接口

接口 接口就是一种规则,对行为的抽象 定义和使用接口 用关键字interface来定义,public interface 接口名{} 接口不能实例化 接口和类之间是实现关系,通过impls关键字表示 public class 类名 implements 接口名{} 接口的子类(实现类&am…

【C++】AVL树详解

目录 一、AVL树的概念 二、AVL树节点的定义 三、AVL树的操作 3.1 AVL树的平衡因子 3.2 AVL树的插入 3.3 AVL树的旋转 3.4 AVL树的验证 四、AVL树的完整代码 上一篇已经对关联式容器set/map/multiset/multimap进行了简答的介绍,大家可能发现它们有一个共同点&…

js滚动table动画

requestAnimationFrame()告诉浏览器你希望执行一个动画,,并且要求浏览器在下次重绘之前调用指定的回调,,更新动画。。。 请求动画帧,,也称帧循环,,, 改api能以浏览器的显…

基于ssm旅社客房收费管理系统+vue

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

如何选择合适的幻兽帕鲁服务器CPU核心数和内存大小,避免丢包和延迟高?

根据幻兽帕鲁服务器的实际案例分析选择合适的CPU核心数和内存大小以避免丢包和延迟高,首先需要考虑的是服务器的性能需求。幻兽帕鲁服务器推荐使用4核CPU和16GB内存,建议使用32GB以上的内存才能稳定运行。这表明对于幻兽帕鲁这样的游戏服务器来说&#x…

珠宝店如何利用微信管理系统提高效率和竞争力?

珠宝店可以利用微信管理系统来提高自身的业务效率和客户满意度。以下是微信管理系统在珠宝店中的应用: 1. 客户管理:珠宝店可以将客户导入微信,通过微信管理系统对客户进行管理。可以对客户进行标签管理,了解客户的购买偏好和需求…