约束条件:

  1. 拥有多个物流中心。
  2. 车辆从某一个物流中心出发,完成配送任务后,可以不回到原来出发的物流中心,返回距离最近的物流中心,即开放式车辆路径。当然,根据车辆服务最后一个客户与所有物流中心的距离,如果与原来出发的物流中心是最短距离,也可以返回原来出发的物流中心。
  3. 优化目标:车辆固定使用成本(200元/辆)、车辆行驶时间成本(0.3元/分钟)、车辆等待时间成本(0.3元/分钟)、车辆服务时间(0.3元/分钟)成本之和最小。
  4. 约束条件:(1)不超过车辆容量限制(车辆容量为1000单位),(2)服务必须在客户时间窗内进行,(3)车辆可以提前到达客户,产生等待时间。(4)设定车辆从物流中心的出发时间为0时刻,即第0分钟。
%%遗传算法求解vrp问题(为选择操作从新设计后程序)
%D是距离矩阵,n为种群个数
%C为停止代数,遗传到第 C代时程序停止,C的具体取值视问题的规模和耗费的时间而定
%交叉概率Pc,变异概率Pm
%R为最短路径,Rlength为路径长度
function VRPvolume_shangyuan=30;                       %一架飞机对伤员的载量约束volume_wuzi=200;                           %一架飞机对物资的载量约束sudu_feiji=200;                            %一架飞机的速度base_num1=5;                               %各个仓库的飞机数量base_num2=5;base_num3=5;n=100;                                      %个体数C=100;                                     %迭代次数Pc=0.8;Pm=0.3;%主程序入口
tab=2         ; %tab=1,则程序跑的是所有点%tab=2,则程序跑的是有缺失的点if tab==1%初始化load('h.mat');demand_shangyuan(1,:)=a(:,4);demand_wuzi(1,:)=a(:,6);zuobiao(1,:)=a(:,2);zuobiao(2,:)=a(:,3);timewindow(1,:)=a(:,8);timewindow(2,:)=a(:,9);D = linjiejuzhen( zuobiao );    [N,NN]=size(D);%初始化点的出发仓库和回归仓库for i=1:N;dis(1,i)=sqrt((zuobiao(1,i)-22)^2+(zuobiao(2,i)-75)^2);dis(2,i)=sqrt((zuobiao(1,i)-75.8)^2+(zuobiao(2,i)-80.1)^2);dis(3,i)=sqrt((zuobiao(1,i)-53.4)^2+(zuobiao(2,i)-59.9)^2);if (dis(1,i)<=dis(2,i))if (dis(1,i)<=dis(3,i))dis(4,i)=1;elsedis(4,i)=3;endelseif (dis(2,i)<=dis(3,i))dis(4,i)=2;elsedis(4,i)=3;endend    endclear i;[R,minlen]=geneticVRP(D,dis,timewindow,demand_shangyuan,demand_wuzi,volume_shangyuan,volume_wuzi,sudu_feiji,base_num1,base_num2,base_num3,n,C,Pc,Pm,zuobiao);%运算返回最优路径R和其总距离Rlength
else%初始化delete=[49 34 9 10 58];%要删除的点delete=sort(delete,'descend');[M,MM]=size(delete);load('h.mat');demand_shangyuan(1,:)=a(:,4);demand_wuzi(1,:)=a(:,6);zuobiao(1,:)=a(:,2);zuobiao(2,:)=a(:,3);timewindow(1,:)=a(:,8);timewindow(2,:)=a(:,9);xiba=0;for i=1:MMxiba=xiba+demand_shangyuan(1,delete(i))+demand_wuzi(1,delete(i));end[B,BB]=size(demand_shangyuan);old=(1:BB);for new=1:MMold(delete(new))=[];demand_shangyuan(delete(new))=[ ];demand_wuzi(delete(new))=[];zuobiao(:,delete(new))=[];timewindow(:,delete(new))=[];endD = linjiejuzhen( zuobiao );    [N,NN]=size(D);%初始化点的出发仓库和回归仓库for i=1:N;dis(1,i)=sqrt((zuobiao(1,i)-22)^2+(zuobiao(2,i)-75)^2);dis(2,i)=sqrt((zuobiao(1,i)-75.8)^2+(zuobiao(2,i)-80.1)^2);dis(3,i)=sqrt((zuobiao(1,i)-53.4)^2+(zuobiao(2,i)-59.9)^2);if (dis(1,i)<=dis(2,i))if (dis(1,i)<=dis(3,i))dis(4,i)=1;elsedis(4,i)=3;endelseif (dis(2,i)<=dis(3,i))dis(4,i)=2;elsedis(4,i)=3;endend    endclear i;[R,minlen]=geneticVRP_delete(old,xiba,D,dis,timewindow,demand_shangyuan,demand_wuzi,volume_shangyuan,volume_wuzi,sudu_feiji,base_num1,base_num2,base_num3,n,C,Pc,Pm,zuobiao);%运算返回最优路径R和其总距离Rlength
end

【路径规划】基于遗传算法求解多中心VRP问题matlab源码相关推荐

  1. 【路径规划】遗传算法求解多式联运运输问题【含Matlab源码 877期】

    ⛄一.联运运输简介 1 问题描述 若干城市点之间构成了物流运输网络,每座城市与城市之间都有不超过内河.铁路.公路和航空运输方式:考虑与行驶距离线性相关的旅行成本和每种运输方式之间转换的费用(中转费用) ...

  2. 【VRP问题】基于NSGA算法求解多中心VRP问题matlab源码

    1 简介 1.1 NSGAII算法 NSGA一II算法的基本思想为:首先,随机产生规模为N的初始种群,非支配排序后通过遗传算法的选择.交叉.变异三个基本操作得到第一代子代种群;其次,从第二代开始,将父 ...

  3. gadecod matlab,【预测模型】基于遗传算法优化BP神经网络房价预测matlab源码

    一.简介 1 遗传算法概述 遗传算法(Genetic Algorithm,GA)是进化计算的一部分,是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法 ...

  4. 【TWVRP】基于matlab粒子群算法求解带时间窗的车辆路径规划问题(总成本最低)【含Matlab源码 2590期】

    ⛄一.VRP简介 1 VRP基本原理 车辆路径规划问题(Vehicle Routing Problem,VRP)是运筹学里重要的研究问题之一.VRP关注有一个供货商与K个销售点的路径规划的情况,可以简 ...

  5. 【TWVRP】粒子群算法求解带时间窗的车辆路径规划问题(总成本最低)【含Matlab源码 2590期】

    ⛄一.VRP简介 1 VRP基本原理 车辆路径规划问题(Vehicle Routing Problem,VRP)是运筹学里重要的研究问题之一.VRP关注有一个供货商与K个销售点的路径规划的情况,可以简 ...

  6. 【路径规划】基于matlab GUI粒子群算法机器人避障路径规划(手动设障)【含Matlab源码 924期】

    ⛄一.简介 1 粒子群算法的概念 粒子群优化算法(PSO:Particle swarm optimization) 是一种进化计算技术(evolutionary computation).源于对鸟群捕 ...

  7. 【优化控制】基于遗传算法实现优化LQR控制器含Matlab源码

    1 简介 车辆悬架系统是影响汽车行驶平顺性和乘坐舒适性的重要结构部件.传统的被动悬架由于其弹性元件刚度和减震器阻尼是固定不变的,这导致其只能适应某一特定路面行驶,限制了适应多样性路况的需求以及车辆性能 ...

  8. 【故障检测问题】基于matlab免疫算法求解故障检测问题【含Matlab源码 196期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[故障检测问题]基于matlab免疫算法求解故障检测问题[含Matlab源码 196期] 获取代码方式2: 通过订阅紫极神光博客付费专栏,凭 ...

  9. 基于JAVA师大家教中心管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署

    基于JAVA师大家教中心管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署 基于JAVA师大家教中心管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署 本源码技术栈: ...

最新文章

  1. matlab学习第一天
  2. Introduction to Cryto Crptocurrencies Lecture 1
  3. 步进电机控制芯片_STK682/步进电机_STK682-010-E控制芯片 原创中文翻译
  4. 基于ASA防火墙的SSL ×××配置
  5. [JavaWeb-MySQL]约束(非空约束,唯一约束,主键约束,外键约束_级联操作)
  6. 基于比率的路由到旧版和现代应用程序–通过Spring Cloud的Netflix Zuul
  7. SAP web 开发 (第二篇 bsp 开发 mvc模式 Part2 )
  8. python小孩的报酬_孩子做了家务,家长该不该支付“酬劳”呢?
  9. 编码,charset,乱码,unicode,utf-8与net简单释义
  10. W3c 中文 文档,很不错
  11. 让Cookies操作变得向Session一样简单
  12. 解决idea使用jdbc连接数据库失败的方法(针对驱动导入失败)
  13. 搞全闪存阵列的各执一词 宏杉说别吵了,就用我哒
  14. Windows 7 7601.24291(2019版) 全补丁集成版ISO映像,编译于2018年11月10日
  15. 老外挑战360加固--实战分析(很详细)
  16. 读 Irving M. Copi 之《逻辑学导论》
  17. jsp房屋出租管理系统带合同
  18. matlab内置随机数生成器及随机模拟举例
  19. Ubuntu 14.04 LTS 安装配置搜狗拼音输入法
  20. flash的读写擦除

热门文章

  1. MQTT客户端远程控制WIFI设备(阿里云物联网平台)
  2. 360浏览器如何调试html,360js是什么?360浏览器如何调试js?
  3. 欢迎高校选修云创大数据免费在线直播课!
  4. vmware horizon view发布win7/win10即时克隆桌面池步骤图文
  5. NLP(八):文本表示:word2vec原理及其gensim实现
  6. 伪相关、伪关系与中介变量——统计名词中的迷思
  7. Unity 移动键Q的三种用法 For Mac,Windows类同
  8. 树莓派移动硬盘存储服务器,树莓派+移动硬盘搭建NAS服务器
  9. 中国大学生实习大数据分析报告
  10. SpringBoot启动时:Process finished with exit code 0解决办法