【无人机】基于遗传算法的卡车结合两架无人机求解旅行推销员问题(D2TSP)附Matlab代码

简介: 【无人机】基于遗传算法的卡车结合两架无人机求解旅行推销员问题(D2TSP)附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机 电力系统

⛄ 内容介绍

城市配送中,"最后一公里"配送成本是物流企业经营成本的主要组成部分,随着无人机技术的发展,无人机飞行能力和运输成本愈加优化,无人机配送作为城市配送领域的重要发展方向,受到越来越多的物流企业和研究人员的关注.由Amazon公司首先提出了并联式配送模式,即采用无人机由配送中心出发直接前往需求点完成配送后返回配送中心的配送方式,以实现无人机的"最后一公里"配送.然而研究人员指出,并联式配送模式由于对配送中心选址,需求点降落平台的要求较高,造成物流网络建设成本大幅增加,并不适用于城市配送中的"最后一公里"问题.因此,提出了串联式配送模式,即由卡车装载无人机进行配送,卡车即可作为无人机的起飞降落平台,也可作为移动仓库,这一模式有利于将配送中心建设在用地成本较低的区域,并提高了无人机的服务能力.本文主要研究城市配送中卡车和无人机串联式配送模式.当前国内外关于卡车和无人机协同配送问题的研究,主要集中在串联式配送模式中无人机的飞行约束方向,对于城市配送中卡车和无人机协同配送的可行性尚无研究,且对于带无人机的车辆路径问题算法多采用基于贪心选择的启发式算法,易陷入局部最优解.

⛄ 部分代码

function [ globalMin, optPop1, optPop2] = dtsp_ga_basic( popSize, numIter, xy, range, speed )


% If null arguments

 showprogress=false;

if nargin < 5   % if input variables less than 6, use defualts

clear; clc;

 nStops=6;   numIter=500;   speed=2; range=2;    

 xy = 1*rand([nStops, 2]);

%   xy = [.15 .5]

% % create a square for distance

%   xy = [xy ;

%         0 0;

%         1 0;

%         1 1;

%         0 1

%        .9 .5]



 popSize=length(xy)*5;

 showprogress=true;

end


% initialize variables to integers/standard size, create distance matrix

   nPoints = size(xy,1);

   popSize     =  5*floor(popSize/5);

   numIter     =  max(1,round(real(numIter(1))));

   meshg = meshgrid(1:nPoints);

   dmat = reshape(sqrt(sum((xy(meshg,:)-xy(meshg',:)).^2,2)),nPoints,nPoints);

 

% Initialize the Population

   [n, ~]=  size(xy);

   pop  = zeros(popSize,n);

   pop2 = zeros(popSize,n);

   pop(1,:) = 1:n;

   for k = 2:popSize

       pop(k,:)   = randperm(n);

   end


   

% Run the GA

   globalMin = Inf;

   totalDist = zeros(1,popSize);

   distHistory = zeros(1,numIter);

   tmpPop  = zeros(5,n);

   newPop  = zeros(popSize,n);

⛄ 运行结果

⛄ 参考文献

[1]方伟王玉佳闫文君. 基于双变异遗传算法的无人机对海侦察航路规划[J]. 中国电子科学研究院学报, 2021, 16(8):772-782.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
|
29天前
|
机器学习/深度学习 算法 PyTorch
RPN(Region Proposal Networks)候选区域网络算法解析(附PyTorch代码)
RPN(Region Proposal Networks)候选区域网络算法解析(附PyTorch代码)
216 1
|
20天前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
30天前
|
传感器 算法 计算机视觉
基于肤色模型和中值滤波的手部检测算法FPGA实现,包括tb测试文件和MATLAB辅助验证
该内容是关于一个基于肤色模型和中值滤波的手部检测算法的描述,包括算法的运行效果图和所使用的软件版本(matlab2022a, vivado2019.2)。算法分为肤色分割和中值滤波两步,其中肤色模型在YCbCr色彩空间定义,中值滤波用于去除噪声。提供了一段核心程序代码,用于处理图像数据并在FPGA上实现。最终,检测结果输出到&quot;hand.txt&quot;文件。
|
3天前
|
机器学习/深度学习 人工智能 算法
基于DCT和扩频的音频水印嵌入提取算法matlab仿真
本文介绍了结合DCT和扩频技术的音频水印算法,用于在不降低音质的情况下嵌入版权信息。在matlab2022a中实现,算法利用DCT进行频域处理,通过扩频增强水印的隐蔽性和抗攻击性。核心程序展示了水印的嵌入与提取过程,包括DCT变换、水印扩频及反变换步骤。该方法有效且专业,未来研究将侧重于提高实用性和安全性。
|
5天前
|
算法
代码随想录算法训练营第六十天 | LeetCode 84. 柱状图中最大的矩形
代码随想录算法训练营第六十天 | LeetCode 84. 柱状图中最大的矩形
17 3
|
5天前
|
算法
代码随想录算法训练营第五十七天 | LeetCode 739. 每日温度、496. 下一个更大元素 I
代码随想录算法训练营第五十七天 | LeetCode 739. 每日温度、496. 下一个更大元素 I
9 3
|
5天前
|
算法
代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结
代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结
24 1
|
7天前
|
文字识别 算法 计算机视觉
图像倾斜校正算法的MATLAB实现:图像倾斜角检测及校正
图像倾斜校正算法的MATLAB实现:图像倾斜角检测及校正
14 0
|
10天前
|
机器学习/深度学习 算法
【MATLAB】GA_ELM神经网络时序预测算法
【MATLAB】GA_ELM神经网络时序预测算法
282 9
|
15天前
|
算法 安全 Java
java代码 实现AES_CMAC 算法测试
该代码实现了一个AES-CMAC算法的简单测试,使用Bouncy Castle作为安全提供者。静态变量K定义了固定密钥。`Aes_Cmac`函数接受密钥和消息,返回AES-CMAC生成的MAC值。在`main`方法中,程序对给定的消息进行AES-CMAC加密,然后模拟接收ECU的加密结果并进行比较。如果两者匹配,输出&quot;验证成功&quot;,否则输出&quot;验证失败&quot;。辅助方法包括将字节转为16进制字符串和将16进制字符串转为字节。