一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法
【專利摘要】本發(fā)明屬于水電優(yōu)化調(diào)度運行領(lǐng)域,公開了一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,該方法以逐步優(yōu)化算法(POA)為基礎(chǔ)執(zhí)行框架,將水電優(yōu)化調(diào)度問題分解為若干兩階段子問題,在兩階段子問題尋優(yōu)時開展多核并行尋優(yōu),逐次逼近全局最優(yōu)解。本發(fā)明能夠充分利用已有并行計算資源,大幅提高運算效率;且計算規(guī)模越大,性能優(yōu)勢越顯著,有效降低計算復(fù)雜度,顯著提升電站計算規(guī)模和運算效率,且計算規(guī)模越大,本發(fā)明性能優(yōu)勢越明顯,對大規(guī)模水電系統(tǒng)優(yōu)化調(diào)度問題的并行研究具有良好的參考和應(yīng)用價值。
【專利說明】—種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及水電優(yōu)化調(diào)度運行領(lǐng)域,特別涉及一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法。
技術(shù)背景
[0002]隨著水電系統(tǒng)的水力、電力聯(lián)系日趨復(fù)雜,其運行與管理面臨日益嚴(yán)峻的挑戰(zhàn),迫切需要新型有效的方法與途徑提高水電優(yōu)化調(diào)度計算效率與求解質(zhì)量。與此同時,伴隨計算機技術(shù)的迅猛發(fā)展,多核CPU已然成為個人、企業(yè)等電腦的標(biāo)準(zhǔn)配置;為適應(yīng)這一趨勢,傳統(tǒng)的串行編程正逐漸向并行、分布式編程轉(zhuǎn)變,充分利用多核并行環(huán)境逐漸成為提高應(yīng)用問題求解效率的重要途徑與發(fā)展趨勢。傳統(tǒng)優(yōu)化算法如線性規(guī)劃、動態(tài)規(guī)劃等多采用單線程計算模式,未能充分利用已有多核并行計算資源,造成資源的極大浪費;同時在求解大規(guī)模水電優(yōu)化調(diào)度問題時難以在合理時間內(nèi)獲取滿意的計算結(jié)果。
[0003]逐步優(yōu)化算法(ProgressiveOptimality Algorithm, P0A)是由加拿大學(xué)者H.R.Howson和N.G.F.Sancho在1975年提出用于求解多狀態(tài)動態(tài)規(guī)劃問題的動態(tài)規(guī)劃改進算法。作者根據(jù)貝爾曼最優(yōu)化原理的思想,提出了逐次最優(yōu)化原理,即“最優(yōu)路線具有這樣的性質(zhì),每對決策集合相對于它的初始值和終止值來說是最優(yōu)的”。POA將多階段問題分解為多個兩階段子問題,每次都固定其他階段變量,只優(yōu)化調(diào)整當(dāng)前所選兩階段變量,并將本次優(yōu)化結(jié)果作為下次優(yōu)化的初始條件,如此逐時段進行,反復(fù)循環(huán)直至收斂。
[0004]POA將多階段決策問題分解為若干兩階段子問題,與DP相比,可有效提高計算效率;同時在目標(biāo)函數(shù)為凸函數(shù)時可保證收斂至總體最優(yōu)解,因此在庫群聯(lián)合優(yōu)化調(diào)度中得到廣泛應(yīng)用。但隨著水電站數(shù)目增多,POA仍會面臨嚴(yán)重的“維數(shù)災(zāi)”問題。假設(shè)系統(tǒng)共涉及N座水庫,各水庫狀態(tài)離散數(shù)目均為k,POA子問題只需離散所求時段t各水庫狀態(tài),并對各水庫離散狀態(tài)進行組合,則至少需存儲0個狀態(tài)組合,如圖1所示;同時相鄰時段分別需要進行kN次調(diào)節(jié)計算,子問題共需2kN次,由此可知,POA子問題時間復(fù)雜度均為0(kN)。隨著計算電站與狀態(tài)離散數(shù)目增多,POA存儲規(guī)模和運算耗時將呈指數(shù)增長,“維數(shù)災(zāi)”問題并未得到徹底解決。同時從圖2可以看出,各狀態(tài)組合分別代表一種調(diào)度決策過程,任意兩狀態(tài)組合之間相互獨立、無直接聯(lián)系,即POA具有良好的并行性,各狀態(tài)組合之間可實現(xiàn)同步計算;與此同時,POA采用傳統(tǒng)串行計算模式依次計算各狀態(tài)組合,未能充分利用已有多核并行資源。由此可知,若能結(jié)合并行技術(shù)予以計算,可有效提升POA計算效率。
[0005]Fork/Join框架是一種基于分治策略處理海量數(shù)據(jù)計算、充分利用多核CPU計算能力的并行計算框架,通過問題分解、并行計算、結(jié)果合并等三個步驟實現(xiàn)并行求解,其基本思想是首先采用“分治法”將難以直接求解的大規(guī)模復(fù)雜問題分解為數(shù)個規(guī)模較小、相互獨立且與原問題相同、并可直接求解的子問題,然后遞歸求解獲得各子問題解,最后合并各子問題的解得到原問題的解。
[0006]因此,本發(fā)明提出的多核并行逐次逼近方法開展對庫群優(yōu)化調(diào)度問題的求解,可在多核環(huán)境下利用Fork/Join框架實現(xiàn)POA的并行計算,將大規(guī)模計算問題分解至P個CPU同時進行計算,逐次逼近全局最優(yōu)解,將POA的時間復(fù)雜度由0(kN)降低至本發(fā)明的0(kN/P),又可充分利用已有計算資源,大幅提升計算效率,保證水電系統(tǒng)優(yōu)化調(diào)度問題計算的準(zhǔn)確性和時效性。
【發(fā)明內(nèi)容】
[0007]本發(fā)明要解決的技術(shù)問題是提供一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,該方法以POA為基礎(chǔ),在兩階段子問題尋優(yōu)時并行計算所有狀態(tài)組合,逐次逼近全局最優(yōu)解,充分利用已有并行計算資源,可有效緩解POA的時間復(fù)雜度,大幅提高運算效率。
[0008]本發(fā)明的技術(shù)方案為:本發(fā)明揭示了一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,假設(shè)水電系統(tǒng)中涉及N個電站,共需計算T個時段,則本發(fā)明按照下述步驟完成梯水電系統(tǒng)優(yōu)化調(diào)度過程,其中(5)-(8)采用并行技術(shù)予以實現(xiàn),兩階段子問題并行計算示意圖見圖4,本發(fā)明計算流程如圖5所示。
[0009](I)設(shè)置精度要求ε、狀態(tài)離散數(shù)目k等計算參數(shù);
[0010](2)由常規(guī)調(diào)度方法確定各水庫水位變化序列Z° ;
[0011](3)令 t = T-1。
[0012](4)由時段t各電站初始狀態(tài)Zi, t及相應(yīng)狀態(tài)增量Λ i>t構(gòu)造狀態(tài)組合,此時初始狀態(tài)組合為ΚΖ-Ζν,Ζy,了,式中zi;t、Δ i;t分別表示電站i在時段t的狀態(tài)和初始狀態(tài)增量,i = 1,2,…,N ; j = I, 2,...,T0
[0013](5)由主線程計算優(yōu)化階段階段調(diào)度方案總數(shù)目,并生成設(shè)定數(shù)量的線程池;
[0014](6)將調(diào)度方案分解至各線程池,直至各任務(wù)規(guī)模均不大于設(shè)定閾值;
[0015](7)采用懲罰函數(shù)法并行計算各子任務(wù)中所有狀態(tài)組合相應(yīng)目標(biāo)函數(shù)及懲罰項;
[0016](8)主線程合并各子線程計算結(jié)果,獲得最優(yōu)狀態(tài)組合<及相應(yīng)計算結(jié)果。
[0017](9)判定是否滿若滿足則轉(zhuǎn)至(10);否則令ZX,轉(zhuǎn)至(4);
[0018](10)令 t = t-Ι,若 t > 0,則轉(zhuǎn)至(4);否則轉(zhuǎn)至(11);
[0019](Ii)此時各水庫水位變化序列為z1,判定是否滿足,若滿足
\<i<N 1< j<T 1 J'J
轉(zhuǎn)至(12);否則縮小各時段狀態(tài)增量,令廣0.5χΔ,ν,然后轉(zhuǎn)至⑶;
[0020](12)停止計算,輸出各水庫最優(yōu)水位序列。
[0021]本發(fā)明涉及一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,可在多核環(huán)境下實現(xiàn)POA的并行計算,逐次逼近全局最優(yōu)解,對比現(xiàn)有技術(shù)有如下有益效果:
[0022](I).從計算模式上,傳統(tǒng)POA采用串行計算模式,僅能利用單個CPU,造成其他CPU的資源空閑,而本發(fā)明將大規(guī)模計算問題分解至多個CPU同時進行計算,使得各CPU均有任務(wù)處理,實現(xiàn)負(fù)載均衡;
[0023](2).從時空復(fù)雜度上看,本發(fā)明提出的多核并行逐次逼近方法開展對庫群優(yōu)化調(diào)度問題的求解,在多核環(huán)境下利用Fork/Join框架實現(xiàn)POA的并行計算,假設(shè)分配至P個(PU進行計算,則可將POA的時間復(fù)雜度由O(kN)降低至本發(fā)明的0(kN/P);
[0024](3).從計算效率上看,本發(fā)明將相同的計算任務(wù)分配至多個計算單元同時計算,顯然可以充分利用已有計算資源,大幅縮短計算耗時,有效提升計算效率;
[0025](4).從計算規(guī)模上看,隨著計算機硬件的不斷提升,本發(fā)明運行的硬件中CPU計算單元越多,顯然計算規(guī)模越大,并且在相同時間內(nèi)能夠完成的工作量更多。
[0026](5).從計算結(jié)果上看,本發(fā)明充分結(jié)合POA算法和并行計算的優(yōu)點,可保證水電系統(tǒng)優(yōu)化調(diào)度問題計算的準(zhǔn)確性和時效性。
[0027](6).從發(fā)展趨勢上看,本發(fā)明緊跟目前并行計算發(fā)展潮流,對水電系統(tǒng)常規(guī)優(yōu)化方法的多核并行、GPU并行等具有良好的借鑒意義。
【專利附圖】
【附圖說明】
[0028]圖1是POA兩階段子問題狀態(tài)組合示意圖;
[0029]圖2是POA串行計算模式不意圖;
[0030]圖3是Fork/Join并行框架示意圖;
[0031]圖4是本發(fā)明兩階段子問題并行計算示意圖;
[0032]圖5是本發(fā)明計算流程圖;
【具體實施方式】
[0033]下面結(jié)合附圖和實施例對本發(fā)明作進一步的描述。
[0034]本發(fā)明揭示了一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,假設(shè)水電系統(tǒng)中涉及N個電站,共需計算T個時段,則本發(fā)明按照下述步驟完成梯水電系統(tǒng)優(yōu)化調(diào)度過程,其中(5)-(8)采用并行技術(shù)予以實現(xiàn)。其中兩階段子問題并行計算示意圖見圖4,本發(fā)明計算流程如圖5所示。
[0035](I)設(shè)置精度要求ε、狀態(tài)離散數(shù)目k等計算參數(shù);
[0036](2)由常規(guī)調(diào)度方法確定各水庫水位變化序列ZO ;
[0037](3)令 t = T-1。
[0038](4)由時段t各電站初始狀態(tài)Zi, t及相應(yīng)狀態(tài)增量Λ i t構(gòu)造狀態(tài)組合,此時初始狀態(tài)組合力z =[z, ,,Z2n---,Zxt J,式中Zi, t、Ait分別表示電站i在時段t的狀態(tài)和初始狀態(tài)增量,i = 1,2,…,N ; j = I, 2,...,T0
[0039](5)由主線程計算優(yōu)化階段階段調(diào)度方案總數(shù)目,并生成設(shè)定數(shù)量的線程池;
[0040](6)將調(diào)度方案分解至各線程池,直至各任務(wù)規(guī)模均不大于設(shè)定閾值;
[0041](7)采用懲罰函數(shù)法并行計算各子任務(wù)中所有狀態(tài)組合相應(yīng)目標(biāo)函數(shù)及懲罰項;
[0042](8)主線程合并各子線程計算結(jié)果,獲得最優(yōu)狀態(tài)組合Zi1及相應(yīng)計算結(jié)果。
[0043](9)判定是否滿若滿足則轉(zhuǎn)至(10);否則令z,=zl轉(zhuǎn)至
(4);
[0044](10)令 t = t-Ι,若 t >0,則轉(zhuǎn)至(4);否則轉(zhuǎn)至(11);
[0045](11)此時各水庫水位變化序列為Z1,判定是否滿足,若滿足轉(zhuǎn)至(12);否則縮小各時段狀態(tài)增量,令"/,7_人/=0.5\4,/,然后轉(zhuǎn)至⑶;
[0046](12)停止計算,輸出各水庫最優(yōu)水位序列。
[0047]實施例
[0048]以烏江流域長期優(yōu)化調(diào)度為例對本發(fā)明進行驗證。烏江流域是我國13大水電基地之一,調(diào)節(jié)性能多樣,涵蓋多年調(diào)節(jié)、不完全年調(diào)節(jié)及日調(diào)節(jié)等多種調(diào)節(jié)性能。下表列出在平水年來水條件下,POA與本發(fā)明不同狀態(tài)離散數(shù)目的計算結(jié)果對比。需要說明的是:由于本發(fā)明采用POA作為基礎(chǔ)框架,在兩階段計算時利用Fork/Join框架實現(xiàn)并行計算,故本發(fā)明與POA計算發(fā)電量相同??梢钥闯?,從耗時和發(fā)電量上看,隨著狀態(tài)離散數(shù)目增加,POA與本發(fā)明計算規(guī)模不斷增加,搜索能力得到增強,不斷逼近全局最優(yōu)解,發(fā)電量逐漸增大,但增幅并不明顯,而算法耗時顯著延長:狀態(tài)離散數(shù)目由3增加至5時,發(fā)電量僅增加0.02億kW.h,而耗時增加約2.4倍;狀態(tài)離散數(shù)目由7增加至9,發(fā)電量不再增加,而耗時增幅高達為2060s,顯然已無法滿足實際工程的時效性需求。而本發(fā)明結(jié)合并行技術(shù),充分利用并行計算資源,與串行方法相比,計算效率大幅提升,且隨著CPU核數(shù)的增加,性能優(yōu)勢更加顯著:在狀態(tài)離散數(shù)目為3時,串行耗時為2核、4核和8核環(huán)境下并行計算的1.83倍、
3.41倍和6.64倍;在狀態(tài)離散數(shù)目為9時,2核、4核和8核環(huán)境下耗時分別減少1223s、1833s 和 2176s。
[0049]
【權(quán)利要求】
1.一種水電系統(tǒng)優(yōu)化調(diào)度的多核并行逐次逼近方法,其特征包括如下步驟, 假設(shè)水電系統(tǒng)中涉及N個電站,共需計算T個時段; (1)由常規(guī)調(diào)度方法確定各水庫水位變化序列Z°;
(2)令t = T-1 ;(3)由時段t各電站初始狀態(tài)Zi;t及相應(yīng)狀態(tài)增量Ai;t構(gòu)造狀態(tài)組合,此時初始狀態(tài)組合為々^[ZhnZ2>t,.■-,ZnJ,式中Zi;t、Δ 分別表示電站i在時段t的狀態(tài)和初始狀態(tài)增量,i = l,2,...,N;j = 1,2,…,T; (4)由主線程計算優(yōu)化階段調(diào)度方案總數(shù)目,并生成設(shè)定數(shù)量的線程池; (5)將調(diào)度方案分解至各線程池,直至各任務(wù)規(guī)模均不大于設(shè)定閾值; (6)采用懲罰函數(shù)法并行計算各子任務(wù)中所有狀態(tài)組合相應(yīng)目標(biāo)函數(shù)及懲罰項; (7)主線程合并各子線程計算結(jié)果,獲得最優(yōu)狀態(tài)組合7反相應(yīng)計算結(jié)果; (8)判定是否滿足ε為精度要求k;若滿足則轉(zhuǎn)至(10);否則令Zr°=Z/,轉(zhuǎn)至⑷; (9)令t=> 0,則轉(zhuǎn)至(4);否則轉(zhuǎn)至(11); (?ο)此時各水庫水位變化序列為z1,判定是否滿足€$罾s,若滿足轉(zhuǎn)至(12);否則縮小各時段狀態(tài)增量,令VUAv=MxA,,,,然后轉(zhuǎn)至(3); (11)停止計算,輸出各水庫最優(yōu)水位序列。
【文檔編號】G06Q50/06GK104182909SQ201410415550
【公開日】2014年12月3日 申請日期:2014年8月21日 優(yōu)先權(quán)日:2014年8月21日
【發(fā)明者】程春田, 馮仲愷, 牛文靜, 廖勝利, 武新宇, 李剛, 申建建 申請人:大連理工大學(xué)