最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【SVM預(yù)測】基于海洋捕食算法優(yōu)化支持向量機(jī)SVM實現(xiàn)數(shù)據(jù)預(yù)測附matlab代碼

2022-05-31 21:26 作者:Matlab工程師  | 我要投稿

1 簡介

提出一種基于海洋捕食算法(MPA)和支持向量機(jī)(SVM)的股價預(yù)測方法.針對SVM預(yù)測模型參數(shù)難以確定的問題,采用MPA算法對SVM中懲罰因子及核函數(shù)參數(shù)進(jìn)行優(yōu)化,構(gòu)建MPA-SVM股價預(yù)測模型。

2 部分代碼

%_________________________________________________________________________% ?Marine Predators Algorithm source code (Developed in MATLAB R2015a)%function [Top_predator_fit,Top_predator_pos,Convergence_curve]=MPA(SearchAgents_no,Max_iter,lb,ub,dim,fobj)Top_predator_pos=zeros(1,dim);Top_predator_fit=inf; Convergence_curve=zeros(1,Max_iter);stepsize=zeros(SearchAgents_no,dim);fitness=inf(SearchAgents_no,1);Prey=initialization(SearchAgents_no,dim,ub,lb); Xmin=repmat(ones(1,dim).*lb,SearchAgents_no,1);Xmax=repmat(ones(1,dim).*ub,SearchAgents_no,1); Iter=0;FADs=0.2;P=0.5;while Iter<Max_iter ? ? ? ? %------------------- Detecting top predator ----------------- ? ? for i=1:size(Prey,1) ? ? ?Flag4ub=Prey(i,:)>ub; ? ?Flag4lb=Prey(i,:)<lb; ? ? ? ?Prey(i,:)=(Prey(i,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb; ? ? ? ? ? ? ? ? ? ? ? ?fitness(i,1)=fobj(Prey(i,:)); ? ? if fitness(i,1)<Top_predator_fit ? ? ? Top_predator_fit=fitness(i,1); ? ? ? Top_predator_pos=Prey(i,:); ? ? end ? ? ? ? ? end ? ? %------------------- Marine Memory saving ------------------- if Iter==0 ? fit_old=fitness; ? ?Prey_old=Prey; end ?Inx=(fit_old<fitness); ?Indx=repmat(Inx,1,dim); ?Prey=Indx.*Prey_old+~Indx.*Prey; ?fitness=Inx.*fit_old+~Inx.*fitness; ?fit_old=fitness; ? ?Prey_old=Prey; ? ? %------------------------------------------------------------ ? Elite=repmat(Top_predator_pos,SearchAgents_no,1); ?%(Eq. 10) CF=(1-Iter/Max_iter)^(2*Iter/Max_iter); RL=0.05*levy(SearchAgents_no,dim,1.5); ? %Levy random number vector RB=randn(SearchAgents_no,dim); ? ? ? ? ?%Brownian random number vector ?for i=1:size(Prey,1) ? ? for j=1:size(Prey,2) ? ? ? ? ? ? ? R=rand(); ? ? ? ? ?%------------------ Phase 1 (Eq.12) ------------------- ? ? ? if Iter<Max_iter/3 ? ? ? ? ?stepsize(i,j)=RB(i,j)*(Elite(i,j)-RB(i,j)*Prey(i,j)); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Prey(i,j)=Prey(i,j)+P*R*stepsize(i,j); ? ? ? ? ?%--------------- Phase 2 (Eqs. 13 & 14)---------------- ? ? ? elseif Iter>Max_iter/3 && Iter<2*Max_iter/3 ? ? ? ? if i>size(Prey,1)/2 ? ? ? ? ? ?stepsize(i,j)=RB(i,j)*(RB(i,j)*Elite(i,j)-Prey(i,j)); ? ? ? ? ? ?Prey(i,j)=Elite(i,j)+P*CF*stepsize(i,j); ? ? ? ? else ? ? ? ? ? ?stepsize(i,j)=RL(i,j)*(Elite(i,j)-RL(i,j)*Prey(i,j)); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Prey(i,j)=Prey(i,j)+P*R*stepsize(i,j); ? ? ? ? ? end ? ? ? ? ? %----------------- Phase 3 (Eq. 15)------------------- ? ? ? else ? ? ? ? ? stepsize(i,j)=RL(i,j)*(RL(i,j)*Elite(i,j)-Prey(i,j)); ? ? ? ? ? Prey(i,j)=Elite(i,j)+P*CF*stepsize(i,j); ? ? ? ? end ? ? ? ?end ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?end ? ? ? ? %------------------ Detecting top predator ------------------ ? ? ? ? ?for i=1:size(Prey,1) ? ? ?Flag4ub=Prey(i,:)>ub; ? ? ?Flag4lb=Prey(i,:)<lb; ? ? ?Prey(i,:)=(Prey(i,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb; ? ?fitness(i,1)=fobj(Prey(i,:)); ? ? ?if fitness(i,1)<Top_predator_fit ? ? ? ? Top_predator_fit=fitness(i,1); ? ? ? ? Top_predator_pos=Prey(i,:); ? ? ?end ? ? ?end ? ? %---------------------- Marine Memory saving ---------------- if Iter==0 ? ?fit_old=fitness; ? ?Prey_old=Prey; end ? ?Inx=(fit_old<fitness); ? ?Indx=repmat(Inx,1,dim); ? ?Prey=Indx.*Prey_old+~Indx.*Prey; ? ?fitness=Inx.*fit_old+~Inx.*fitness; ? ?fit_old=fitness; ? ?Prey_old=Prey; ? ? %---------- Eddy formation and FADs? effect (Eq 16) ----------- ?if rand()<FADs ? ? U=rand(SearchAgents_no,dim)<FADs; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Prey=Prey+CF*((Xmin+rand(SearchAgents_no,dim).*(Xmax-Xmin)).*U); ?else ? ? r=rand(); ?Rs=size(Prey,1); ? ? stepsize=(FADs*(1-r)+r)*(Prey(randperm(Rs),:)-Prey(randperm(Rs),:)); ? ? Prey=Prey+stepsize; ?end ?Iter=Iter+1; ? ?Convergence_curve(Iter)=Top_predator_fit; end

3 仿真結(jié)果

4 參考文獻(xiàn)

[1]束詩雨. 基于集成學(xué)習(xí)的支持向量機(jī)預(yù)測優(yōu)化算法及其應(yīng)用[D]. 東華大學(xué).

博主簡介:擅長智能優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)預(yù)測、信號處理、元胞自動機(jī)、圖像處理、路徑規(guī)劃、無人機(jī)等多種領(lǐng)域的Matlab仿真,相關(guān)matlab代碼問題可私信交流。

部分理論引用網(wǎng)絡(luò)文獻(xiàn),若有侵權(quán)聯(lián)系博主刪除。



【SVM預(yù)測】基于海洋捕食算法優(yōu)化支持向量機(jī)SVM實現(xiàn)數(shù)據(jù)預(yù)測附matlab代碼的評論 (共 條)

分享到微博請遵守國家法律
会宁县| 阳原县| 曲阜市| 济宁市| 哈尔滨市| 乳源| 永城市| 正宁县| 互助| 泾阳县| 沅江市| 呈贡县| 井冈山市| 胶州市| 唐山市| 偏关县| 尤溪县| 登封市| 莫力| 大化| 雷波县| 修文县| 无锡市| 上虞市| 万源市| 阿坝县| 盐山县| 涟源市| 新源县| 抚州市| 龙陵县| 新密市| 新疆| 天水市| 大埔县| 台前县| 黄平县| 汤阴县| 海南省| 太和县| 临沭县|