本發(fā)明涉及時(shí)間序列預(yù)測(cè)領(lǐng)域,特別是涉及一種預(yù)測(cè)風(fēng)速的方法及系統(tǒng)。
背景技術(shù):
風(fēng)電作為一種可再生清潔能源,近幾年來(lái)在我國(guó)得到大規(guī)模發(fā)展,同時(shí),風(fēng)力發(fā)電所具有的隨機(jī)性、間歇性和波動(dòng)性給電網(wǎng)的穩(wěn)定和經(jīng)濟(jì)運(yùn)行帶來(lái)了安全隱患。準(zhǔn)確的風(fēng)電功率預(yù)測(cè)可以為電力調(diào)度提供重要依據(jù),有效減輕風(fēng)電對(duì)電網(wǎng)的影響。由于風(fēng)電功率與風(fēng)速有直接的關(guān)系,可通過(guò)風(fēng)速預(yù)測(cè)實(shí)現(xiàn)對(duì)風(fēng)電功率的預(yù)測(cè),所以準(zhǔn)確預(yù)測(cè)風(fēng)電場(chǎng)的風(fēng)速是十分必要的。由于對(duì)風(fēng)速時(shí)間序列采用信號(hào)分析方法進(jìn)行數(shù)據(jù)預(yù)處理后分別預(yù)測(cè)再集成,可以降低風(fēng)速非平穩(wěn)性對(duì)預(yù)測(cè)結(jié)果的影響,因此,基于時(shí)間序列預(yù)測(cè)風(fēng)速的方案得到了越來(lái)越多的關(guān)注。
現(xiàn)有技術(shù)對(duì)風(fēng)速序列的分解方法主要有三種:(1)小波分解,這種分解方法具有良好的時(shí)頻局域化特性,但分解效果取決于基函數(shù)的選擇,自適應(yīng)性差。(2)經(jīng)驗(yàn)?zāi)B(tài)分解,這種分解方法自適應(yīng)性強(qiáng),但存在端點(diǎn)效應(yīng)和過(guò)包絡(luò)等問(wèn)題。(3)局域均值分解,這種分解方法迭代次數(shù)少,端點(diǎn)效應(yīng)較輕,但判斷純調(diào)頻信號(hào)的條件需要試湊,若滑動(dòng)跨度選擇不當(dāng),會(huì)引起函數(shù)不收斂,導(dǎo)致過(guò)平滑,影響算法精確度。
現(xiàn)有技術(shù)中對(duì)分解后的風(fēng)速序列建立預(yù)測(cè)模型的方法主要包括:(1)人工神經(jīng)網(wǎng)絡(luò),這種預(yù)測(cè)模型基于經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化,易陷入局部最優(yōu),訓(xùn)練結(jié)果不太穩(wěn)定,一般需要大樣本。(2)支持向量機(jī),支持向量機(jī)有嚴(yán)格的理論和數(shù)學(xué)基礎(chǔ),基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,具有全局最優(yōu)性,泛化能力優(yōu)于神經(jīng)網(wǎng)絡(luò)。(3)最小二乘支持向量機(jī),這種模型用等式約束代替?zhèn)鹘y(tǒng)支持向量機(jī)方法中的不等式約束,降低了計(jì)算復(fù)雜性,具有更快的求解速度和穩(wěn)定性。但是,最小二乘支持向量機(jī)的性能依賴(lài)于核參數(shù)的選擇,目前對(duì)核參數(shù)的選擇方法有網(wǎng)格搜索算法和智能種群尋優(yōu)算法,網(wǎng)格搜索算法只能實(shí)現(xiàn)粗略尋優(yōu),往往無(wú)法找到最優(yōu)值;智能種群尋優(yōu)由于算法自身的設(shè)計(jì)缺陷,容易陷入局部最優(yōu)??梢?jiàn),現(xiàn)有技術(shù)中由于核參數(shù)的選擇不當(dāng),造成了基于最小二乘支持向量機(jī)的預(yù)測(cè)模型的預(yù)測(cè)精度較低。
因此,如何提供一種能夠精確預(yù)測(cè)風(fēng)速的方法和系統(tǒng),成為本領(lǐng)域技術(shù)人員亟需解決的技術(shù)問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種預(yù)測(cè)風(fēng)速的方法,能夠精確預(yù)測(cè)風(fēng)速。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種預(yù)測(cè)風(fēng)速的方法,所述方法包括:
獲取風(fēng)速數(shù)據(jù)的原始序列;
采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)所述最優(yōu)預(yù)設(shè)尺度參數(shù)和所述最優(yōu)帶寬參數(shù)將所述原始序列分解為若干模態(tài)函數(shù)子序列;
采用改進(jìn)的差分進(jìn)化算法確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)模型的核參數(shù),所述改進(jìn)的差分進(jìn)化算法中變異操作的變異因子隨進(jìn)化代數(shù)的增加而減小,且所述變異操作生成的變異個(gè)體與上一代的最優(yōu)個(gè)體有關(guān),所述改進(jìn)的差分進(jìn)化算法中交叉操作的交叉概率因子隨進(jìn)化代數(shù)的增加而增加;
根據(jù)各所述模態(tài)函數(shù)子序列的自相關(guān)性及各所述核參數(shù),確定各所述模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型,并通過(guò)各所述最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)各所述子序列的分解風(fēng)速;
根據(jù)各所述分解風(fēng)速,確定最終的風(fēng)速預(yù)測(cè)值。
可選的,所述采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)具體包括:
初始化粒子種群中各粒子的位置和速度,其中,所述粒子的位置為預(yù)設(shè)尺度參數(shù)k和帶寬參數(shù)α的組合[k,α],粒子群算法總的迭代次數(shù)為n,所述速度用于表征對(duì)應(yīng)粒子位置的變化方向;
根據(jù)變分模態(tài)分解方法確定各所述粒子對(duì)應(yīng)的模態(tài)函數(shù)分量,每個(gè)所述粒子對(duì)應(yīng)k個(gè)所述模態(tài)函數(shù)分量;
分別計(jì)算每個(gè)所述粒子對(duì)應(yīng)的k個(gè)模態(tài)函數(shù)分量的包絡(luò)熵,并篩選出最小的包絡(luò)熵作為各所述粒子的局部最小熵值;
從各所述粒子的所述局部最小熵值中篩選出最小的局部最小熵值,作為全局最小熵值;
根據(jù)所述局部最小熵值和所述全局最小熵值更新各所述粒子的位置和速度;
判斷當(dāng)前迭代次數(shù)是否小于n;
若是,繼續(xù)根據(jù)變分模態(tài)分解方法確定各所述粒子對(duì)應(yīng)的模態(tài)函數(shù)分量;
若否,選擇全局最小熵值對(duì)應(yīng)的粒子作為最優(yōu)粒子,所述最優(yōu)粒子中的預(yù)設(shè)尺度參數(shù)為所述最優(yōu)預(yù)設(shè)尺度參數(shù),所述最優(yōu)粒子中的帶寬參數(shù)為所述最優(yōu)帶寬參數(shù)。
可選的,所述變異操作具體包括:
對(duì)原始個(gè)體xi,t隨機(jī)生成五個(gè)整數(shù)r1,r2,r3,r4,r5∈{1,2,...,np},其中,r1,r2,r3,r4,r5,i互不相同,np為種群規(guī)模;
根據(jù)公式:
其中,vi,t+1表示變異個(gè)體,t表示所述差分進(jìn)化算法的最大迭代次數(shù),t表示當(dāng)前的進(jìn)化代數(shù),
可選的,根據(jù)公式:
其中,
可選的,所述根據(jù)各所述分解風(fēng)速,確定最終的風(fēng)速預(yù)測(cè)值具體包括:
獲取各所述最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)的分解風(fēng)速;
將各所述分解風(fēng)速疊加求和,得到所述最終的風(fēng)速預(yù)測(cè)值。
本發(fā)明的目的還在于提供一種預(yù)測(cè)風(fēng)速的系統(tǒng),能夠精確預(yù)測(cè)風(fēng)速。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種預(yù)測(cè)風(fēng)速的系統(tǒng),所述系統(tǒng)包括:
數(shù)據(jù)獲取模塊,用于獲取風(fēng)速數(shù)據(jù)的原始序列;
子序列確定模塊,用于采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)所述最優(yōu)預(yù)設(shè)尺度參數(shù)和所述最優(yōu)帶寬參數(shù)將所述原始序列分解為若干模態(tài)函數(shù)子序列;
核參數(shù)確定模塊,用于采用改進(jìn)的差分進(jìn)化算法確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)模型的核參數(shù),所述改進(jìn)的差分進(jìn)化算法中變異操作的變異因子隨進(jìn)化代數(shù)的增加而減小,且所述變異操作生成的變異個(gè)體與上一代的最優(yōu)個(gè)體有關(guān),所述改進(jìn)的差分進(jìn)化算法中交叉操作的交叉概率因子隨進(jìn)化代數(shù)的增加而增加;
預(yù)測(cè)子模型模塊,用于根據(jù)各所述模態(tài)函數(shù)子序列的自相關(guān)性及各所述核參數(shù),確定各所述模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型,并通過(guò)各所述最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)各所述子序列的分解風(fēng)速;
風(fēng)速預(yù)測(cè)模塊,用于根據(jù)各所述分解風(fēng)速,確定最終的風(fēng)速預(yù)測(cè)值。
可選的,所述子序列確定模塊具體包括:
初始化單元,用于初始化粒子種群中各粒子的位置和速度,其中,所述粒子的位置為預(yù)設(shè)尺度參數(shù)k和帶寬參數(shù)α的組合[k,α],粒子群算法總的迭代次數(shù)為n,所述速度用于表征對(duì)應(yīng)粒子位置的變化方向;
模態(tài)函數(shù)確定單元,用于根據(jù)變分模態(tài)分解方法確定各所述粒子對(duì)應(yīng)的模態(tài)函數(shù)分量,每個(gè)所述粒子對(duì)應(yīng)k個(gè)所述模態(tài)函數(shù)分量;
局部最小熵值確定單元,用于分別計(jì)算每個(gè)所述粒子對(duì)應(yīng)的k個(gè)模態(tài)函數(shù)分量的包絡(luò)熵,并篩選出最小的包絡(luò)熵作為各所述粒子的局部最小熵值;
全局最小熵值確定單元,用于從各所述粒子的所述局部最小熵值中篩選出最小的局部最小熵值,作為全局最小熵值;
粒子更新單元,用于根據(jù)所述局部最小熵值和所述全局最小熵值更新各所述粒子的位置和速度;
判斷單元,用于判斷當(dāng)前迭代次數(shù)是否小于n;
最優(yōu)參數(shù)確定單元,用于選擇全局最小熵值對(duì)應(yīng)的粒子作為最優(yōu)粒子,所述最優(yōu)粒子中的預(yù)設(shè)尺度參數(shù)為所述最優(yōu)預(yù)設(shè)尺度參數(shù),所述最優(yōu)粒子中的帶寬參數(shù)為所述最優(yōu)帶寬參數(shù)。
可選的,所述核參數(shù)確定模塊具體包括:
隨機(jī)數(shù)生成單元,用于對(duì)原始個(gè)體xi,t隨機(jī)生成五個(gè)整數(shù)r1,r2,r3,r4,r5∈{1,2,...,np},其中,r1,r2,r3,r4,r5,i互不相同,np為種群規(guī)模;
變異個(gè)體生成單元,用于根據(jù)公式:
其中,vi,t+1表示變異個(gè)體,t表示所述差分進(jìn)化算法的最大迭代次數(shù),t表示當(dāng)前的進(jìn)化代數(shù),
可選的,所述核參數(shù)確定模塊根據(jù)公式:
其中,
可選的,所述風(fēng)速預(yù)測(cè)模塊具體包括:
分解風(fēng)速獲取單元,用于獲取各所述最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)的分解風(fēng)速;
最終風(fēng)速確定單元,用于將各所述分解風(fēng)速疊加求和,得到所述最終的風(fēng)速預(yù)測(cè)值。
根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開(kāi)了以下技術(shù)效果:
本發(fā)明采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)將原始的風(fēng)速序列信號(hào)進(jìn)行變分模態(tài)分解,將原始的風(fēng)速序列信號(hào)分解為各模態(tài)函數(shù)子序列,對(duì)風(fēng)速序列信號(hào)高頻部分的分解更為徹底,且高頻分量幅值波動(dòng)較小。
采用改進(jìn)的差分進(jìn)化算法確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)模型的核參數(shù),變異過(guò)程不僅考慮了父代基向量的影響,還考慮了上一代的最優(yōu)個(gè)體對(duì)變異個(gè)體的影響,由于變異因子隨著迭代次數(shù)增加由大變小,使得父代基向量的權(quán)重逐漸變小,而上一代的最優(yōu)個(gè)體的權(quán)重逐漸變大。在進(jìn)化剛開(kāi)始時(shí),算法的搜索空間大,全局搜索能力強(qiáng);而在最后階段,算法以局部搜索為主,有利于在最優(yōu)區(qū)域周?chē)M(jìn)行搜索。交叉操作中交叉概率因子隨進(jìn)化代數(shù)增加逐漸增加,使算法在搜索初期保持種群多樣性,而在后期有較高的收斂速度。使得本發(fā)明提供的風(fēng)速預(yù)測(cè)方法及系統(tǒng),既有較強(qiáng)的全局搜索能力又能保證收斂精度和速度,從而顯著提高了風(fēng)速的預(yù)測(cè)精度。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1為本發(fā)明實(shí)施例1的流程圖;
圖2為本發(fā)明實(shí)施例1確定最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)的流程圖;
圖3為本發(fā)明實(shí)施例2的結(jié)構(gòu)框圖;
圖4為本發(fā)明實(shí)施例2子序列確定模塊的結(jié)構(gòu)框圖;
圖5為本發(fā)明實(shí)施例3的流程圖;
圖6為本發(fā)明實(shí)施例3風(fēng)速序列的分解結(jié)果圖;
圖7為本發(fā)明實(shí)施例3預(yù)測(cè)風(fēng)速與實(shí)際風(fēng)速的比較圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的目的是提供一種能夠精確預(yù)測(cè)風(fēng)速的方法及系統(tǒng)。
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。
實(shí)施例1:如圖1所示,一種預(yù)測(cè)風(fēng)速的方法包括:
步驟11:獲取風(fēng)速數(shù)據(jù)的原始序列;
步驟12:采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)將原始序列分解為若干模態(tài)函數(shù)子序列;
步驟13:采用改進(jìn)的差分進(jìn)化算法確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)模型的核參數(shù),改進(jìn)的差分進(jìn)化算法中變異操作的變異因子隨進(jìn)化代數(shù)的增加而減小,且變異操作生成的變異個(gè)體與上一代的最優(yōu)個(gè)體有關(guān),改進(jìn)的差分進(jìn)化算法中交叉操作的交叉概率因子隨進(jìn)化代數(shù)的增加而增加;
步驟14:根據(jù)各模態(tài)函數(shù)子序列的自相關(guān)性及各核參數(shù),確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型,并通過(guò)各最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)各子序列的分解風(fēng)速;
步驟15:根據(jù)各分解風(fēng)速,確定最終的風(fēng)速預(yù)測(cè)值。
如圖2所示,步驟12中采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)具體包括:
步驟121:初始化粒子種群中各粒子的位置和速度,其中,粒子的位置為預(yù)設(shè)尺度參數(shù)k和帶寬參數(shù)α的組合[k,α],粒子群算法總的迭代次數(shù)為n,速度用于表征對(duì)應(yīng)粒子位置的變化方向,預(yù)設(shè)尺度參數(shù)k表征對(duì)應(yīng)粒子的模態(tài)函數(shù)的分量個(gè)數(shù);
步驟122:根據(jù)變分模態(tài)分解方法確定各粒子對(duì)應(yīng)的模態(tài)函數(shù)分量,每個(gè)粒子對(duì)應(yīng)k個(gè)模態(tài)函數(shù)分量;
步驟123:分別計(jì)算每個(gè)粒子對(duì)應(yīng)的k個(gè)模態(tài)函數(shù)分量的包絡(luò)熵,并篩選出最小的包絡(luò)熵作為各粒子的局部最小熵值;
步驟124:從各粒子的局部最小熵值中篩選出最小的局部最小熵值,作為全局最小熵值;
步驟125:根據(jù)局部最小熵值和全局最小熵值更新各粒子的位置和速度;
步驟126:判斷當(dāng)前迭代次數(shù)是否小于n,若是,返回步驟122,若否,執(zhí)行步驟127;
步驟127:選擇全局最小熵值對(duì)應(yīng)的粒子作為最優(yōu)粒子,最優(yōu)粒子中的預(yù)設(shè)尺度參數(shù)為最優(yōu)預(yù)設(shè)尺度參數(shù),最優(yōu)粒子中的帶寬參數(shù)為最優(yōu)帶寬參數(shù)。
具體地,步驟13中的變異操作具體包括:
對(duì)原始個(gè)體xi,t隨機(jī)生成五個(gè)整數(shù)r1,r2,r3,r4,r5∈{1,2,...,np},其中,r1,r2,r3,r4,r5,i互不相同,np為種群規(guī)模;
根據(jù)公式:
其中,vi,t+1表示變異個(gè)體,t表示所述差分進(jìn)化算法的最大迭代次數(shù),t表示當(dāng)前的進(jìn)化代數(shù),
本實(shí)施例中,根據(jù)公式:
其中,
本實(shí)施例中,
具體地,步驟15具體包括:
獲取各最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)的分解風(fēng)速;
將各分解風(fēng)速疊加求和,得到最終的風(fēng)速預(yù)測(cè)值。
本實(shí)施例采用完全非遞歸的方法,通過(guò)迭代搜尋變分模型的最優(yōu)解,將原始風(fēng)速序列分解為多個(gè)具有不同中心頻率的限帶本征模態(tài)函數(shù)子序列,高頻部分的分解更為徹底,且高頻分量幅值波動(dòng)較小,以降低原始風(fēng)速序列的非平穩(wěn)性對(duì)風(fēng)速預(yù)測(cè)的影響。然后采用改進(jìn)的差分進(jìn)化算法對(duì)最小二乘支持向量機(jī)子模型進(jìn)行了優(yōu)化,變異過(guò)程不僅考慮了父代基向量的影響,還考慮了上一代的最優(yōu)個(gè)體對(duì)變異個(gè)體的影響,在進(jìn)化剛開(kāi)始時(shí),算法的搜索空間大,全局搜索能力強(qiáng);而在最后階段,算法以局部搜索為主,有利于在最優(yōu)區(qū)域周?chē)M(jìn)行搜索。交叉操作中交叉概率因子隨進(jìn)化代數(shù)增加逐漸增加,使算法在搜索初期保持種群多樣性,而在后期有較高的收斂速度。因此,本實(shí)施例提供的風(fēng)速預(yù)測(cè)方法,既有較強(qiáng)的全局搜索能力又能保證收斂精度和速度,能夠顯著提高風(fēng)速的預(yù)測(cè)精度。
實(shí)施例2:
如圖3所示,一種預(yù)測(cè)風(fēng)速的系統(tǒng)包括:
數(shù)據(jù)獲取模塊21,用于獲取風(fēng)速數(shù)據(jù)的原始序列;
子序列確定模塊22,用于采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)所述最優(yōu)預(yù)設(shè)尺度參數(shù)和所述最優(yōu)帶寬參數(shù)將所述原始序列分解為若干模態(tài)函數(shù)子序列;
核參數(shù)確定模塊23,用于采用改進(jìn)的差分進(jìn)化算法確定各模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)模型的核參數(shù),改進(jìn)的差分進(jìn)化算法中變異操作的變異因子隨進(jìn)化代數(shù)的增加而減小,且變異操作生成的變異個(gè)體與上一代的最優(yōu)個(gè)體有關(guān),改進(jìn)的差分進(jìn)化算法中交叉操作的交叉概率因子隨進(jìn)化代數(shù)的增加而增加;
預(yù)測(cè)子模型模塊24,用于根據(jù)各所述模態(tài)函數(shù)子序列的自相關(guān)性及各所述核參數(shù),確定各所述模態(tài)函數(shù)子序列的最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型,并通過(guò)各所述最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)各所述子序列的分解風(fēng)速;
風(fēng)速預(yù)測(cè)模塊25,用于根據(jù)各所述分解風(fēng)速,確定最終的風(fēng)速預(yù)測(cè)值。
如圖4所示,子序列確定模塊22具體包括:
初始化單元221,用于初始化粒子種群中各粒子的位置和速度,其中,粒子的位置為預(yù)設(shè)尺度參數(shù)k和帶寬參數(shù)α的組合[k,α],粒子群算法總的迭代次數(shù)為n,速度用于表征對(duì)應(yīng)粒子位置的變化方向;
模態(tài)函數(shù)確定單元222,用于根據(jù)變分模態(tài)分解方法確定各粒子對(duì)應(yīng)的模態(tài)函數(shù)分量,每個(gè)粒子對(duì)應(yīng)k個(gè)模態(tài)函數(shù)分量;
局部最小熵值確定單元223,用于分別計(jì)算每個(gè)粒子對(duì)應(yīng)的k個(gè)模態(tài)函數(shù)分量的包絡(luò)熵,并篩選出最小的包絡(luò)熵作為各粒子的局部最小熵值;
全局最小熵值確定單元224,用于從各粒子的局部最小熵值中篩選出最小的局部最小熵值,作為全局最小熵值;
粒子更新單元225,用于根據(jù)局部最小熵值和全局最小熵值更新各粒子的位置和速度;
判斷單元226,用于判斷當(dāng)前迭代次數(shù)是否小于n;
最優(yōu)參數(shù)確定單元227,用于選擇全局最小熵值對(duì)應(yīng)的粒子作為最優(yōu)粒子,所述最優(yōu)粒子中的預(yù)設(shè)尺度參數(shù)為最優(yōu)預(yù)設(shè)尺度參數(shù),最優(yōu)粒子中的帶寬參數(shù)為最優(yōu)帶寬參數(shù)。
具體地,核參數(shù)確定模塊23具體包括:
隨機(jī)數(shù)生成單元,用于對(duì)原始個(gè)體xi,t隨機(jī)生成五個(gè)整數(shù)r1,r2,r3,r4,r5∈{1,2,...,np},其中,r1,r2,r3,r4,r5,i互不相同,np為種群規(guī)模;
變異個(gè)體生成單元,用于根據(jù)公式:
其中,vi,t+1表示變異個(gè)體,t表示差分進(jìn)化算法的最大迭代次數(shù),t表示當(dāng)前的進(jìn)化代數(shù),
核參數(shù)確定模塊23根據(jù)公式:
其中,
風(fēng)速預(yù)測(cè)模塊25具體包括:
分解風(fēng)速獲取單元,用于獲取各最小二乘支持向量機(jī)風(fēng)速預(yù)測(cè)子模型預(yù)測(cè)的分解風(fēng)速;
最終風(fēng)速確定單元,用于將各分解風(fēng)速疊加求和,得到最終的風(fēng)速預(yù)測(cè)值。
本實(shí)施例首先采用改進(jìn)的變分模態(tài)分解方法將風(fēng)速序列分解為一系列限帶內(nèi)稟模態(tài)函數(shù)以降低其非平穩(wěn)性對(duì)預(yù)測(cè)性能的影響,然后對(duì)各模態(tài)分別建立最小二乘支持向量機(jī)預(yù)測(cè)模型,并利用改進(jìn)的差分進(jìn)化算法對(duì)其關(guān)鍵核參數(shù)尋優(yōu),最后將各子序列預(yù)測(cè)結(jié)果疊加組合得到最終風(fēng)速預(yù)測(cè)值。預(yù)測(cè)系統(tǒng)執(zhí)行的操作步驟明確、結(jié)果可靠,能夠解決風(fēng)電場(chǎng)風(fēng)速序列的不平穩(wěn)性導(dǎo)致的短期風(fēng)速預(yù)測(cè)精度不高的問(wèn)題。
實(shí)施例3:如圖5所示,預(yù)測(cè)風(fēng)速的方法包括:
步驟31:獲取風(fēng)電場(chǎng)的短期風(fēng)速數(shù)據(jù)作為風(fēng)速數(shù)據(jù)的原始序列:
實(shí)際風(fēng)速的原始序列為31天的小時(shí)平均風(fēng)速數(shù)據(jù),共744個(gè)數(shù)據(jù),選擇前30天的數(shù)據(jù)共720個(gè)樣本點(diǎn)為訓(xùn)練集,進(jìn)行信號(hào)分解并建立子模型;選擇第31天的數(shù)據(jù)共24個(gè)樣本點(diǎn)作為預(yù)測(cè)集,以檢驗(yàn)?zāi)P皖A(yù)測(cè)精度。
步驟32:采用粒子群算法確定變分模態(tài)分解方法的最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù),并根據(jù)最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)將原始序列分解為各模態(tài)函數(shù)子序列:
本發(fā)明采用粒子群算法對(duì)變分模態(tài)分解的預(yù)設(shè)尺度k和帶寬參數(shù)α尋優(yōu),將優(yōu)化后的變分模態(tài)分解方法應(yīng)用于風(fēng)電場(chǎng)風(fēng)速序列分解。采用完全非遞歸的方法,通過(guò)迭代搜尋變分模型的最優(yōu)解,最終將原始風(fēng)速序列分解為k個(gè)具有不同中心頻率的限帶本征模態(tài)函數(shù)子序列,具體步驟如下:
步驟321:構(gòu)建并初始化粒子種群的速度和位置,粒子種群中粒子的數(shù)量為np′,粒子群算法總的迭代次數(shù)為n,其中,粒子的位置為預(yù)設(shè)尺度參數(shù)k和帶寬參數(shù)α的組合[k,α],速度用于表征對(duì)應(yīng)粒子位置的變化方向,預(yù)設(shè)尺度參數(shù)k表征變分模態(tài)函數(shù)分量的個(gè)數(shù)。
步驟322:將初始化的np′個(gè)粒子都代入變分模態(tài)分解的運(yùn)算過(guò)程,分別計(jì)算每個(gè)粒子對(duì)應(yīng)的k個(gè)變分模態(tài)函數(shù)分量,具體分解步驟如下:
步驟3221:迭代次數(shù)置1,初始化每個(gè)粒子對(duì)應(yīng)的各模態(tài)函數(shù)
步驟3222:根據(jù)下面的公式分別更新
式中,τ表示噪聲容限參數(shù),n表示當(dāng)前變分模態(tài)分解過(guò)程的迭代次數(shù),ω表示隨機(jī)頻率,α表示帶寬參數(shù),ωk表示中心頻率,
步驟3223:給定判別精度ε>0,判斷是否滿(mǎn)足收斂條件:
若是,則停止迭代;否則,n加1,返回步驟3222。
步驟323:計(jì)算每個(gè)粒子對(duì)應(yīng)的k個(gè)模態(tài)函數(shù)分量的包絡(luò)熵,并從這k個(gè)包絡(luò)熵中找到最小值,作為局部最優(yōu)值;再?gòu)膎p′個(gè)粒子對(duì)應(yīng)的局部最小熵值中找出最小值作為全局最優(yōu)值。
步驟324:根據(jù)局部最優(yōu)值和全局最優(yōu)值更新每個(gè)粒子的位置和速度。
其中,
步驟325:判斷當(dāng)前迭代次數(shù)k是否小于n,若是,返回步驟322,若否,執(zhí)行步驟326。
步驟326:選出全局最小熵值對(duì)應(yīng)的粒子作為最優(yōu)粒子,最優(yōu)粒子中的預(yù)設(shè)尺度參數(shù)為所述最優(yōu)預(yù)設(shè)尺度參數(shù),最優(yōu)粒子中的帶寬參數(shù)為最優(yōu)帶寬參數(shù),并根據(jù)最優(yōu)預(yù)設(shè)尺度參數(shù)和最優(yōu)帶寬參數(shù)將原始序列分解為各模態(tài)函數(shù)子序列,如圖6所示采用改進(jìn)的變分模態(tài)分解方法對(duì)風(fēng)速序列的分解結(jié)果圖。
步驟33:對(duì)步驟32得到的各模態(tài)函數(shù)子序列分析其自相關(guān)性,確定各模態(tài)函數(shù)子序列對(duì)應(yīng)的最小二乘支持向量機(jī)子模型的輸入向量,并分別建立最小二乘支持向量機(jī)子模型。
步驟34:對(duì)差分進(jìn)化算法的變異因子、交叉概率因子和變異策略進(jìn)行改進(jìn),并采用改進(jìn)的差分進(jìn)化算法對(duì)最小二乘支持向量機(jī)的關(guān)鍵核參數(shù)懲罰因子c和核寬度σ尋優(yōu),以提高各最小二乘支持向量機(jī)子模型的預(yù)測(cè)精度,具體步驟如下:
步驟341:以懲罰因子c和核寬度σ作為個(gè)體[c,σ],用xi表示,初始化進(jìn)化種群,種群規(guī)模為np,最大迭代次數(shù)為t;
步驟342:計(jì)算每個(gè)個(gè)體對(duì)應(yīng)的最小二乘支持向量機(jī)子模型的預(yù)測(cè)誤差,作為適應(yīng)度函數(shù)值f(xi);
步驟343:變異操作。綜合差分進(jìn)化算法的兩種變異策略,并引入權(quán)重因子λ′,提出一種新的變異策略如下:對(duì)每個(gè)第t代種群中的第i個(gè)個(gè)體xi,t,隨機(jī)生成五個(gè)整數(shù)r1,r2,r3,r4,r5∈{1,2,...,np},且r1,r2,r3,r4,r5,i互不相同,按照下式生成變異個(gè)體vi,t+1。
其中,vi,t+1表示變異個(gè)體,t表示差分進(jìn)化算法的最大迭代次數(shù),t表示當(dāng)前的進(jìn)化代數(shù),
在標(biāo)準(zhǔn)差分進(jìn)化算法中,只考慮了父代基向量的影響,沒(méi)有考慮第i代的最優(yōu)個(gè)體對(duì)變異個(gè)體的影響,且變異因子f在進(jìn)化過(guò)程中固定不變,父代差分向量只有一組。而改進(jìn)后的變異過(guò)程中,權(quán)重因子由0逐漸變化到1,使得父代基向量
步驟344:交叉操作:
根據(jù)公式:
其中,
本實(shí)施例中,
在進(jìn)化過(guò)程中,cr由最小值逐漸變化到最大值,以使算法在搜索初期保持種群多樣性,而在后期有較高的收斂速度。
步驟346:判斷當(dāng)前迭代次數(shù)是否達(dá)到最大迭代次數(shù)t,若否,返回步驟342,若是,輸出最優(yōu)解[c,σ],作為該序列最小二乘支持向量機(jī)子模型的核參數(shù)。
對(duì)每個(gè)子序列都按照步驟34建立最小二乘支持向量機(jī)子模型。
步驟35:用各最小二乘支持向量機(jī)子模型對(duì)k個(gè)子序列分別預(yù)測(cè)下一時(shí)刻的值,將預(yù)測(cè)值進(jìn)行疊加求和,得到下一時(shí)刻的風(fēng)速預(yù)測(cè)值。
如圖7所示,與已有分解方法對(duì)風(fēng)速序列的分解效果相比,改進(jìn)的變分模態(tài)分解對(duì)風(fēng)速序列的高頻部分的分解更為徹底且高頻幅值波動(dòng)較?。桓倪M(jìn)差分進(jìn)化算法提高了算法的全局搜索能力和收斂精度,保證了最小二乘支持向量機(jī)的模型精度;對(duì)風(fēng)速序列進(jìn)行變分模態(tài)分解分別建模預(yù)測(cè)再集成的方法顯著提高了風(fēng)速預(yù)測(cè)精度。本發(fā)明提供的方法適用于非平穩(wěn)時(shí)間序列預(yù)測(cè)領(lǐng)域,具有預(yù)測(cè)精度高的特點(diǎn),尤其適用于對(duì)風(fēng)電場(chǎng)的短期風(fēng)速進(jìn)行預(yù)測(cè)。
本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。對(duì)于實(shí)施例公開(kāi)的系統(tǒng)而言,由于其與實(shí)施例公開(kāi)的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法部分說(shuō)明即可。
本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處。綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。