推广 热搜: 行业  设备    系统  参数  经纪    教师  机械  中国 

【优化求解】遗传算法求解岛屿物资补给优化问题【含Matlab源码 172期】

   日期:2024-12-24     作者:9aaf0    caijiyuan   评论:0    移动:http://nhjcxspj.xhstdz.com/mobile/news/12163.html
核心提示:🚅座右铭:行百里者,半于九十。 🏆代码获取方式: CSDN Matlab武动乾坤—代码获取方式 更多Ma

🚅座右铭:行百里者,半于九十。

【优化求解】遗传算法求解岛屿物资补给优化问题【含Matlab源码 172期】

🏆代码获取方式
CSDN Matlab武动乾坤—代码获取方式

更多Matlab优化求解仿真内容点击👇
①Matlab优化求解(进阶版

⛳️关注CSDN Matlab武动乾坤,更多资源等你来

假定某群岛海域有20个小岛,每个岛屿各产不同种类的海鲜,现需对各岛屿的海鲜进行外向运输,选取一个中心岛屿作为中心枢纽(以下称其为中心岛;各个岛屿的货物运送到中心枢纽岛屿,然后从中心岛运往大陆,其中参考各方因素确定最优的运送路线,各个岛屿到中心岛运送的船只有两种船型;并对船只进行选择。运用matlab编程,禁忌搜索方法。
鉴于偏远岛屿的地理特点,其交通网络一般由三个节点组成:大陆港口、中心岛和卫星岛。大陆港口是海岛依托大陆的物流运输通道;中心岛是收集周围岛屿输送物资的枢纽;卫星岛是供应生产物资到中心岛物资的末端岛屿。
首先,由于海上航行受台风影响很大,需要防止岛间运输物资中断,分析了该地区台风发生的统计资料,并结合各岛的生活资料,通过数据拟合得到台风影响时间的概率分布曲线。在一定的保证率下,每个岛屿的日平均生产量在不腐坏的前提下,建立运输模型。那么,对中心岛的位置和交通的优化是必须的。其中运输系统结构包括航线数量、运输组织形式及到达顺序、每条航线的船型及时刻表、各岛码头规模等;建立和优化存储系统(包括存储容量和周期性供应等)。
显然,运输系统成本和存储系统是优化目标统一成本的两个矛盾方面,即如果某一航线的船舶尽可能满载,则可以延长运输计划的间隔,从而降低运输计划运输成本,但同时也会增加货物储存和仓库建设成本;如果船型不变,增加航线上的供应岛它可以减少航线数量和船舶采购、集货周期和库存成本,以及库存引起的货物存储成本和仓库建设的成本,但是运输距离的增加和路线的延长会导致运输成本的增加,从而导致系统总成本的变化。此外,中心岛的位置将直接影响路径规划和运输组织形式的选择,从而间接影响仓储系统的优化。

在优化远洋集团货物海运系统的过程中,除了上述传统的LIRP问题外,还应考虑选址、运输和仓储的决策问题。除了相互作用外,我们还需要考虑航运系统本身的特点:①由于船舶的负荷一般远大于岛上的日生产量,所以双向装货路线与单方向运输相比,双向运输可以延长装货周期,大大降低运输频率。虽然运输距离有所增加,但运输成本可能会相对降低。即使库存和由此产生的货物储存成本和仓库建设成本增加,最终系统的总成本也可能降低。具体运输组织形式的选择应根据线路岛屿的数量和距离确定。

② 与小船型相比,如果选择航线,应根据航线中岛屿的数量和距离确定,大型船型可以成倍定期装货,延长输送周期,减少运输次数,降低运输成本,但船舶采购成本和码头总建设成本、库存及由此产生的货物储存成本和仓库建设成本都会增加,导致系统总成本的变化。

在运输系统中,无论有多少条线路,所有卫星岛的终端总数都是固定的,但由于不同航线的船型不同,所以卫星岛码头的规模不同和由此带来的码头建设成本也不尽相同,而且每增加一种船型,中心岛都需要配备更多相应的船型的码头。因此,它对码头的建设成本有很大的影响。综上所述,离岛海运物流系统的优化应基于以上特点选出中心岛,为卫星岛运输划分路线组,建立各条线路(循环运输)的运输组织形式,配置不同船型,制定航次。在线路换班时设置各岛的存储容量,以便在台风等影响下求得偏远岛屿的整个群岛物流系统总成本得最低。

2 算法描述及实现
2.1 遗传算法概述

遗传算法(GA,Genetic Algorithm),也称为进化算法。遗传算法是受达尔文的进化论的启发,借鉴生物进化过程而提出的一种启发式搜索算法。其主要特点是直接对结构对象进行操作,因此不同于其他求解最优解的算法,遗传算法不存在求导和对函数连续性的限定,采用概率化的寻优方法,不需要确定的规则就能自动获取和指导优化的搜索空间,自适应地调整搜索方向。

以上是对遗传算法相对抽象的总结,为了更具体形象的解释遗传算法的一般原理,我们首先介绍一些生物学上的概念
①种群:不同生物个体形成的群体,生物的进化以群体的形式进行,这样的一个群体称为种群
②个体:组成种群的单个生物
③基因:带有遗传信息的DNA片段,可以通俗的将基因理解为一段信息,这段信息决定的生物个体的性状
④表现型:根据基因形成的个体的外部表现
⑤适应度:生物个体对于生存环境的适应程度,越适应那么其得以存活和繁衍的概率就越大
⑥遗传:通过繁殖过程,子代将从父母双方各获取一部分基因,形成新的自己的基因,这个过程中,会发生基因的复制、交叉,也会以较低的概率发生基因突变
⑦自然选择:物竞天择,适者生存的自然淘汰机制。具体为对环境适应度高的个体参与繁殖的机会比较多,后代就会越来越多。适应度低的个体参与繁殖的机会比较少,后代就会越来越少
⑧进化:种群通过代际繁衍不断适应生存环境的过程,在这个过程中,以对外界环境的适应度为评判标准,生物的性状不断得到改良。

了解了这些术语的含义,我们就可以进一步说说生物进化的过程了。由于自然选择是客观存在的,即生物只能改变自己去适应环境,那么在自然选择的过程中,适应度低的个体会被淘汰,适应度高的个体被保留,高适应度的父体与母体又有更高的概率繁衍出适应度高的子代,因此在一代又一代的繁衍之后,高适应度的个体在种群中所占的比例越来越大,种群就这样完成了进化。

现在我们要参考生物进化的过程来设计算法解决求最优解的问题。对此,遗传算法的思路是,将要解决的问题模拟成一个生物进化的过程,通过进化来寻找最优解。以我们题目中寻找多峰函数的最大值这个问题为例

将(x, y)这一可能的解作为一个个体;将多峰函数的函数值f(x, y)作为个体的适应度;对(x, y)进行编码作为个体的基因;以适应度为标准不断筛选生物个体;通过遗传算子(如复制、交叉、变异等)不断产生下一代。如此不断循环迭代,完成进化。最终,根据设定的迭代次数,可得到最后一代种群,该种群中的个体适应度都较高,而多峰函数的最大值就有比较大的概率存在于这一群解中,以种群中适应度最高的个体作为问题的解,则可以说该解有比较高的概率就是我们希望求得的最优解。

clc
close all
clear all
%% 模型参数
n=20;
Axes=[35,44;13,36;22,59;30,79
39,60;31,26;25,21;40,16;52,38
63,17;66,71;62,50;41,29;71,35
91,37;25,33;82,74;52,80;49,11
22,11];
Land=[-8,65];
Dom=((Axes(1,1)-Land(1))2+(Axes(1,2)-Land(2))2)^0.5;
Dist=getdist(Axes);
Output=[122,77,75,68,87,96,90,110,127,…
155,141,135,103,163,170,81,147,145,129,95];
Ship.Cp=[1300000,2100000,1e15];
Ship.Ctr=[65,90,1e15];
Ship.V=[18,14,1e15];
T.all=15*365-1;
T.main=7;
%% Ga参数
GenMax=200;
Pc=0.5;
Pv=0.5;
Gen=0;
Popnum=100;
Chrom=struct;
NewChrom=struct;
%% 生成初始种群
for i =1:Popnum
Chrom(i).Index=randperm(n-1)+1;
Chrom(i).RouteNum=randi(n-1,1);
Chrom(i).Routes=getdivide(Chrom(i).RouteNum,Chrom(i).Index,n);
end
while Gen < GenMax
Gen=Gen+1;

for i=1:size(Chrom_all,2)
ship=[];
RouteL=[];
ShipNum=Chrom_all(i).RouteNum;
for j=1:ShipNum
EachL=0;
Route=Chrom_all(i).Routes{j};
EachOutput(j)=sum(Output(Route(2:end-1)));
if EachOutput(j)<=300
ship(j)=1;
elseif EachOutput(j)<=500
ship(j)=2;
else
ship(j)=3;
end
for k=1:length(Route)-1
EachL=EachL+Dist(Route(k),Route(k+1));
end
RouteL(j)=EachL;
end
Chrom_all(i).Ship=ship;
Chrom_all(i).Length=RouteL;
end
[bestC,ind]=getbest(Chrom_all,Ship,Dom,T);
Chrom=Chrom_all(ind(1:Popnum));
Best(Gen).Gen=Chrom_all(ind(1));
Best(Gen).C=bestC(1);
end
% %% 淘汰

plot([Best.C])

title(‘总成本进化曲线’);
xlabel(‘迭代次数’)
ylabel(‘总成本’)

%
% end

1 matlab版本
2014a

2 参考文献
《智能优化算法及其MATLAB实例(第2版)》包子阳 余继周 杨杉著 电子工业出版社

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

本文地址:http://nhjcxspj.xhstdz.com/news/12163.html    物流园资讯网 http://nhjcxspj.xhstdz.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号