測模型-ELAMN預(yù)測】基于蟻群算法優(yōu)化ELMAN神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)數(shù)據(jù)回歸預(yù)測matlab代碼)
1 簡介風(fēng)能,作為一種重要,有潛力,無污染,可再生、可持續(xù)的能源,已經(jīng)成為全球發(fā)電最為迅速的能源之一,越來越受到世界各國的青睞。近年來,為緩解能源短缺問題,改善環(huán)境,實(shí)現(xiàn)經(jīng)濟(jì)乃至人類的可持續(xù)發(fā)展,世界各國紛紛大力發(fā)展風(fēng)能資源。然而,在實(shí)際操作中,風(fēng)能固有的波動性和間歇性通常會增加風(fēng)能入網(wǎng)的難度,致使風(fēng)電場輸出功率不穩(wěn)定,嚴(yán)重影響輸出的電能質(zhì)量,大大增加了電網(wǎng)安全性和穩(wěn)定性運(yùn)行風(fēng)險(xiǎn),因此,風(fēng)速預(yù)測在風(fēng)電相關(guān)工作中至關(guān)重要,準(zhǔn)確、可靠的預(yù)測結(jié)果不僅有利于調(diào)度人員事先掌握風(fēng)電場的功率變化情況,及時(shí)制定調(diào)度運(yùn)行計(jì)劃,提高能量轉(zhuǎn)換效率、降低風(fēng)險(xiǎn),增加發(fā)電量等,同時(shí)也有利于風(fēng)電并網(wǎng)穩(wěn)定運(yùn)行和有效消納,對可能存在影響電網(wǎng)安全穩(wěn)定運(yùn)行的風(fēng)險(xiǎn)及時(shí)預(yù)警,從而避免風(fēng)電功率隨機(jī)波動造成電能損耗甚至電網(wǎng)崩潰。近年來,國內(nèi)外學(xué)者進(jìn)行了大量風(fēng)速預(yù)測相關(guān)研究,風(fēng)速預(yù)測水平得到一定程度的提升。單一預(yù)測模型雖簡單容易實(shí)施,但其預(yù)測精度往往較低,難以滿足風(fēng)電場發(fā)電的需求。相比之下,基于優(yōu)化算法和數(shù)據(jù)分解法的混合預(yù)測模型對風(fēng)速預(yù)測性能有很大的提升。然而,現(xiàn)有的模型只是使用單目標(biāo)優(yōu)化算法,針對預(yù)測模型精度的提高,很少關(guān)注預(yù)測結(jié)果穩(wěn)定性的增強(qiáng),涉及多目標(biāo)優(yōu)化算法的混合預(yù)測模型更是少之又少。因此,這些模型往往會降低預(yù)測結(jié)果的穩(wěn)定性,對風(fēng)電場發(fā)電以及風(fēng)電并網(wǎng)的安全性和穩(wěn)定性帶來巨大的挑戰(zhàn)。針對如上問題,本文構(gòu)建出一個(gè)基于蟻群算法和Elman神經(jīng)網(wǎng)絡(luò)的混合預(yù)測模型本文所提出的混合預(yù)測模型不僅可以降低預(yù)測誤差,提高風(fēng)速預(yù)測精度,增強(qiáng)預(yù)測結(jié)果的穩(wěn)定性,同時(shí)對風(fēng)電場發(fā)電的完善,發(fā)展以及風(fēng)電并網(wǎng)安全管理也大有裨益。Elman 神經(jīng)網(wǎng)絡(luò)是一種局部反饋遞歸神經(jīng)網(wǎng)絡(luò)包括輸入層、隱藏層、承接層和輸出層由于其良好的動態(tài)記憶和時(shí)變能力自1990年Elman首次提出以來Elman神經(jīng)網(wǎng)絡(luò)在時(shí)間序列預(yù)測中得到了廣泛的應(yīng)用但由于隨機(jī)選擇初始值和閾值且采用梯度下降法尋優(yōu)其網(wǎng)絡(luò)學(xué)習(xí)速度較慢且預(yù)測的精度比較低。本文利用 WOA 優(yōu)化 Elman神經(jīng)網(wǎng)絡(luò)的初始權(quán)值及閾值提高了 Elman 神經(jīng)網(wǎng)絡(luò)的預(yù)測精度。第一步 初始化 Elman 網(wǎng)絡(luò)所需參數(shù)并新建 Elman 網(wǎng) 絡(luò)netnewelmminmaxinput111tansigpurelintraingdx其中 input 是訓(xùn)練集數(shù)據(jù)tansig 是隱藏層的激活函數(shù)purelin是輸出層激活函數(shù)traingdx是梯度下降函數(shù)第二步 初始化ACO各參數(shù)包括螞蟻的數(shù)量m 、最大迭代次數(shù)Maxiter參數(shù)的上界ub及下界lb第三步 不斷迭代蟻群優(yōu)化網(wǎng)絡(luò)直到迭代結(jié)束形成最優(yōu)個(gè)體其中最優(yōu)個(gè)體包括權(quán)值w1、w2及w3閾值b1和b2第四步 Elman 神經(jīng)網(wǎng)絡(luò)解析最優(yōu)個(gè)體利用解析后的權(quán)值及閾值訓(xùn)練Elman神經(jīng)網(wǎng)絡(luò)并預(yù)測風(fēng)速數(shù)據(jù)。2 部分代碼while NCNC_max %停止條件之一達(dá)到最大迭代次數(shù)停止%%第二步將m只螞蟻放到n個(gè)城市上Randpos[]; %隨即存取for i1:(ceil(m/n))Randpos[Randpos,randperm(n)];endTabu(:,1)(Randpos(1,1:m));%%第三步m只螞蟻按概率函數(shù)選擇下一座城市完成各自的周游for j2:n %所在城市不計(jì)算for i1:mvisitedTabu(i,1:(j-1)); %記錄已訪問的城市避免重復(fù)訪問Jzeros(1,(n-j1)); %待訪問的城市PJ; %待訪問城市的選擇概率分布Jc1;for k1:nif length(find(visitedk))0 %開始時(shí)置0J(Jc)k;JcJc1; %訪問的城市個(gè)數(shù)自加1endend%下面計(jì)算待選城市的概率分布for k1:length(J)P(k)(Tau(visited(end),J(k))^Alpha)*(Eta(visited(end),J(k))^Beta);endPP/(sum(P));%按概率原則選取下一個(gè)城市Pcumcumsum(P); %cumsum元素累加即求和Selectfind(Pcumrand); %若計(jì)算的概率大于原來的就選擇這條路線to_visitJ(Select(1));Tabu(i,j)to_visit;endendif NC2Tabu(1,:)R_best(NC-1,:);end%%第四步記錄本次迭代最佳路線Lzeros(m,1); %開始距離為0m*1的列向量for i1:mRTabu(i,:);for j1:(n-1)L(i)L(i)D(R(j),R(j1)); %原距離加上第j個(gè)城市到第j1個(gè)城市的距離endL(i)L(i)D(R(1),R(n)); %一輪下來后走過的距離endL_best(NC)min(L); %最佳距離取最小posfind(LL_best(NC));R_best(NC,:)Tabu(pos(1),:); %此輪迭代后的最佳路線L_ave(NC)mean(L); %此輪迭代后的平均距離NCNC1 %迭代繼續(xù)%%第五步更新信息素Delta_Tauzeros(n,n); %開始時(shí)信息素為n*n的0矩陣for i1:mfor j1:(n-1)Delta_Tau(Tabu(i,j),Tabu(i,j1))Delta_Tau(Tabu(i,j),Tabu(i,j1))Q/L(i);%此次循環(huán)在路徑ij上的信息素增量endDelta_Tau(Tabu(i,n),Tabu(i,1))Delta_Tau(Tabu(i,n),Tabu(i,1))Q/L(i);%此次循環(huán)在整個(gè)路徑上的信息素增量endTau(1-Rho).*TauDelta_Tau; %考慮信息素?fù)]發(fā)更新后的信息素%%第六步禁忌表清零Tabuzeros(m,n); %%直到最大迭代次數(shù)3 仿真結(jié)果?4 參考文獻(xiàn)[1]朱昶勝, 康亮河, and 馮文芳. 基于自適應(yīng)鯨魚優(yōu)化算法結(jié)合Elman神經(jīng)網(wǎng)絡(luò)的股市收盤價(jià)預(yù)測算法. 計(jì)算機(jī)應(yīng)用 40.5(2020):9.[2]郝晶. 基于蟻群算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的包頭地區(qū)中長期電力負(fù)荷預(yù)測. Diss. 華北電力大學(xué).