还剩6页未读,继续阅读
文本内容:
cic;clear;closeall;%%ProblemDefinitionCostFunction=@xZDTx;%CostFunctionnVar=3;%NumberofDecisionVariablesVarSize=[nVar1];%DecisionVariablesMatrixSizeVarMin=0;%DecisionVariablesLowerBoundVarMax=1;%DecisionVariablesUpperBoundnObj=numelCostFunctionunifrndVarMinzVarMaxVarSize;%%MOEA/DSettingsMaxIt=100;%MaximumNumberofIterationsnPop=50;%PopulationSizeNumberofSub-ProblemsnArchive=50;T=maxceil
0.15*nPopz2;%NumberofNeighborsT=minmaxT/2/15;crossover_params.gamma=
0.5;crossover_params.VarMin=VarMin;crossover_params.VarMax=VarMax;%%Initialization%CreateSub-problemssp=CreateSubProblemsnObj/nPop/T;%EmptyIndividualemptyjndividual.Position=[];empty_individual.Cost=[];empty_individuaLg=[];empty_individual.IsDominated=[];%InitializeGoalPoint%z=infnObjl;z=zerosnObjzl;%CreateInitialPopulationpop=repmatempty_individualnPopl;fori=l:nPoppopi.Position=unifrndVarMin/VarMax/VarSize;popi.Cost=CostFunctionpopi.Position;z=min乙popi.Cost;endfori=l:nPoppopi.g=DecomposedCostpopizzspi.lambda;end%DeterminePopulationDominationStatuspop=DetermineDominationpop;%InitializeEstimatedParetoFrontEP=pop^[popJsDominated];%%MainLoopfori=l:nPop%ReproductionCrossoverK=randsampleTz2;jl=spi.NeighborsKl;pl=popjl;j2=spi.NeighborsK2;p2=popj2;y=empty_individual;y.Position=Crossoverpl.Positionzp
2.Position/crossover_params;y.Cost=CostFunctiony.Position;z=minz/y.Cost;forj=spi.Neighborsy.g=DecomposedCosty乙spj.lambda;ify.g=popj.gpopj=y;endendend%DeterminePopulationDominationStatuspop=DetermineDominationpop;ndpop=pop〜[pop.IsDominated];EP=[EPndpop];%#okEP=DetermineDominationEP;EP=EP-[ERIsDominated];ifnumelEPnArchiveExtra=numelEP-nArchive;ToBeDeleted=randsamplenumelEPExtra;EPToBeDeleted=[];end%PlotEPfigurel;PlotCostsEP;pauseO.Ol;%DisplayIterationInformationdisp[Iterationnum2stritNumberofParetoSolutions二num2strnumelEP];end%%ReultsdispC;EPC=[ERCost];forj=l:nObjdisp[Objective#num2strjdisp[Min=num2strminEPCjz:}];disp[Max=num2strmaxEPCj:];disp[Range=num2strmaxEPCj:-minEPCj/:];disp[St.D.=num2strstdEPCj/:];disp[Mean=num2strmeanEPCj:}];dispC;end。
个人认证
优秀文档
获得点赞 0