91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 0M
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-15
  • 語言: 其他
  • 標簽: 其他??

資源簡介

Untitled.zip

資源截圖

代碼片段和文件信息

clc

clear

close?all

tic

data?=?xlsread(‘數據.xlsx‘‘C3:I12‘);

JW?=?data(:1:2);

dem?=?data(:3);??????%?各網點的需求量

demand?=?rem(dem6);??%?各網點除去整車運輸的量(整車運輸是指網點需求量多于汽車裝載量時,需要在該網點多次運輸)

ntimes?=?(dem?-?demand)/6;?%?各網點整車運輸的次數

????%%?經緯度轉大地坐標,單位km

e2=0.0066943799;
N=6386942;

H=44.4;?????????????????????%?海拔

W=JW(:2)/180*pi;???????????%?維度

J=JW(:1)/180*pi;???????????%?經度

X=-(N+H)*cos(W).*cos(J)/1000;

Y=(N+H)*cos(W).*sin(J)/1000;

position=[X?Y];

%%

CityNum=9;?????%?需求節點數

CarDistance=300000;%?車最大行駛距離

CarLoad=6;??????%?車容量

speed=30;???????%?車輛行駛速度

c0=0;??????????%?發車成本

c1=3;??????????%?車輛行駛單位距離成本

CarNum=18;??????%?配送車輛總數,實際車輛可以少于該值

fitmax=10000000;%?最大懲罰

%%

NP=80;?????????%?種群個體數量

maxgen=200;

Pc=0.9;?????????%?交叉概率

Pm=0.1;?????????%?變異概率

Gap=0.9;????????%?代溝(Generation?gap)



%%

ET=data(:6);??%?最早服務時間窗

LT=data(:7);??%?最晚服務時間窗

ST=zeros(size(ET));%?服務時間

CE=[0?ones(1CityNum)]*1000;??%?早到懲罰系數

CL=[0?ones(1CityNum)]*1000;??%?晚到懲罰系數

%%?計算各城市之間的距離

distance=zeros(CityNum+1);

for?i=1:CityNum+1

????for?j=i+1:CityNum+1

????????distance(ij)=((position(i1)-position(j1))^2+(position(i2)-position(j2))^2)^0.5;

????????distance(ji)=distance(ij);

????end

end

%%?整車運輸費用

for?j?=?2:length(dem)

????mT?=?distance(1j)/speed;

????if?mT?
????????dpunish?=?(ET(j)-mT)*CE(j);

????elseif?mT?>?LT(j)

????????dpunish?=?(mT-LT(j))*CL(j);

????else

????????dpunish?=?0;

????end

????mCost(j)??=??ntimes(j)*(distance(1j)*c1*2);

end

dCost?=?sum(mCost);

%%?路徑初始化

X=initpop(NPCityNumCarNum);



Xa=X(1:);

%%?迭代

gen=1;

while?gen<=maxgen

????gen

????%?計算適應值矩陣

????[allcostfit]=fitness(distancedemandXETLTCECLSTCarDistanceCarLoadspeedfitmaxc0c1);

????%找出最優個體適應值

????allcost=allcost+dCost;

????[leastcostbestindex]=min(allcost);

????bestindex=bestindex(1);

????fpbest(gen)=leastcost;?%?最小適應值fit的集

????pbest(gen:)=X(bestindex:);%?最優個體集

????%?選擇

????XSel=Select(XfitGap);

????%?交叉操作
????XSel=Cross(XSelPc);

????%?變異
????XSel=Mutate(XSelPm);

????%?逆轉操作

????%XSel=Reverse(distancedemandXSelETLTCECLSTCarDistanceCarLoadspeedfitmaxc0c1);

????%?重插入子代的新種群

????X=Reins(XXSelfit);

????gen=gen+1;

end

%?找出最優的適應值、個體

[minfpbestminindex]=min(fpbest);%?取最優適應值的位置、最優適應值

minindex=minindex(1);

bestRoute=pbest(minindex:);?%?取最優個體

Path=bestRoute;

for?i=1:length(Path)-1

????if?Path(i)-Path(i+1)==0

????????Path(i)=0;

????end

end



ii=find(Path==0);

Path(ii)=[];

for?j=1:length(Path)?%?編碼各減1,與文中的編碼一致

????Path(j)=?Path(j)-1;

end

fpbest;??%查看適應值的變化情況

%%?迭代圖

figure

plot(fpbest)

title(‘遺傳算法優化過程‘)

xlabel(‘迭代次數‘)

ylabel(‘最優值‘)

%%?計算結果數據輸出

clc

toc

disp([‘最優成本為:‘num2str(minfpbest)]);

OutputResult(distancedemandPathETLTCECLSTCarDistanceCarLoadspeedf

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????4049??2019-04-26?16:24??Untitled.m

評論

共有 條評論