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

  • 大小: 3KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-01-08
  • 語言: Matlab
  • 標(biāo)簽: 優(yōu)化??

資源簡介

一個完整的PSO程序,可以實現(xiàn)多目標(biāo)函數(shù)的優(yōu)化

資源截圖

代碼片段和文件信息

%功能描述:基本的粒子群算法的單步更新位置速度的算法
function?[ParSwarmOptSwarm]=baseStepPso(ParSwarmOptSwarmParticleScopeMaxWMinWLoopCountCurCountEXCLPSP)
%輸入?yún)?shù):ParSwarm:粒子群矩陣,包含粒子的位置,速度與當(dāng)前的目標(biāo)函數(shù)值
%輸入?yún)?shù):OptSwarm:包含粒子群個體最優(yōu)解與全局最優(yōu)解的矩陣
%輸入?yún)?shù):ParticleScope:一個粒子在運算中各維的范圍;
%輸入?yún)?shù):AdaptFunc:適應(yīng)度函數(shù)
%輸入?yún)?shù):LoopCount:迭代的總次數(shù)
%輸入?yún)?shù):CurCount:當(dāng)前迭代的次數(shù)
%返回值:含意同輸入的同名參數(shù)
if?nargin~=9
????error(‘輸入的參數(shù)個數(shù)錯誤。‘);
end
if?nargout~=2
????error(‘輸出的個數(shù)太少,不能保證循環(huán)迭代。‘);
end
%開始單步更新的操作
w=MaxW-CurCount*((MaxW-MinW)/LoopCount);%慣性因子隨迭代次數(shù)遞減
[ParRowParCol]=size(ParSwarm);%得到粒子群群體大小以及一個粒子維數(shù)的信息
ParCol=(ParCol-1)/2;
%for?i=1:ParRow
????%if?ParSwarm(i2*ParCol+1)<=mean(ParSwarm(:2*ParCol+1))
???????%?w(i)=MinW+(MaxW-MinW)*(ParSwarm(i2*ParCol+1)-min(ParSwarm(:2*ParCol+1)))/(mean(ParSwarm(:2*ParCol+1))-min(ParSwarm(:2*ParCol

評論

共有 條評論