余 梅,盛余洋,李紅陽,鄭悅林
(三峽大學(xué) 計(jì)算機(jī)與信息學(xué)院,湖北 宜昌 443002)
近年來,我國(guó)風(fēng)電產(chǎn)業(yè)發(fā)展迅速,海上風(fēng)電運(yùn)維難度遠(yuǎn)遠(yuǎn)高于陸上風(fēng)電產(chǎn)業(yè)[1],在我國(guó)屬于新興市場(chǎng)。截至2020年底,中國(guó)風(fēng)電累計(jì)裝機(jī)容量達(dá)到2.82億kW,累計(jì)增長(zhǎng)34.6%,其中陸上風(fēng)電累計(jì)裝機(jī)2.71億kW,海上風(fēng)電累計(jì)裝機(jī)899萬kW[2]。隨著風(fēng)電場(chǎng)建設(shè)規(guī)模擴(kuò)大,海上風(fēng)電產(chǎn)業(yè)對(duì)運(yùn)行維護(hù)服務(wù)提出了更高的要求。因此,為了提升海上風(fēng)電的發(fā)電效益,亟需系統(tǒng)分析海上風(fēng)電運(yùn)維流程,仿真模擬海上風(fēng)電運(yùn)維系統(tǒng),為提升海上風(fēng)電運(yùn)維能力提供決策依據(jù)。
傳統(tǒng)海上風(fēng)電機(jī)組維修策略運(yùn)用高斯統(tǒng)計(jì)法、馬爾可夫策略和蒙特卡羅等方法對(duì)海上氣象條件進(jìn)行數(shù)學(xué)建模[3]和實(shí)景模擬,目前已有部分學(xué)者對(duì)海上風(fēng)電場(chǎng)運(yùn)維策略進(jìn)行了相關(guān)研究。芮曉明等[4]和李明昕[5]采用馬爾可夫算法考慮海上風(fēng)電場(chǎng)氣候條件對(duì)維修作業(yè)的影響,建立機(jī)會(huì)維修模型進(jìn)行可靠性分析,對(duì)維修策略進(jìn)行優(yōu)化。王昕偉等[6]采用蒙特卡羅方法建立風(fēng)電場(chǎng)多狀態(tài)故障模型,對(duì)風(fēng)電場(chǎng)有功處理進(jìn)行可靠性評(píng)估。以上研究?jī)H考慮外在因素對(duì)運(yùn)維策略的影響,缺乏對(duì)風(fēng)電機(jī)組資源配置和船舶維修路徑等因素的考慮。本文從實(shí)際問題出發(fā),將遺傳算法和蟻群算法相結(jié)合,從路徑規(guī)劃的角度解決運(yùn)維策略優(yōu)化問題。
關(guān)于遺傳算法和蟻群算法在海上風(fēng)電場(chǎng)中的研究,湯亮亮等[7]解決輸電海纜路徑受風(fēng)電場(chǎng)布局限制可能導(dǎo)致海纜隨意穿越風(fēng)電場(chǎng)區(qū)域問題,使用改進(jìn)的傳統(tǒng)蟻群算法對(duì)優(yōu)化問題進(jìn)行求解。趙東來等[8]針對(duì)大型海上風(fēng)電場(chǎng)提出最優(yōu)的區(qū)域劃分問題,設(shè)計(jì)了基于改進(jìn)單親遺傳算法的海上風(fēng)電場(chǎng)功率匯集系統(tǒng)拓?fù)浣Y(jié)構(gòu)優(yōu)化模型。Alla等[9]綜合天氣和資源等影響因素,采用蟻群算法對(duì)風(fēng)電場(chǎng)路由及維護(hù)調(diào)度進(jìn)行優(yōu)化。以上研究?jī)H采用蟻群或遺傳算法解決風(fēng)電場(chǎng)海纜路徑和功率匯集等問題。
還有一些學(xué)者通過改進(jìn)算法對(duì)路徑規(guī)劃進(jìn)行了優(yōu)化。段敏[10]采用蒙特卡羅算法,提升路徑規(guī)劃的成功率,獲得變量近似模擬,并分析出最優(yōu)路徑。屈新懷等[11]通過靠近目標(biāo)粒子群算法對(duì)移動(dòng)機(jī)器人進(jìn)行路徑規(guī)劃,能跳出局部最優(yōu)的狀態(tài),并加快搜索速度和收斂速度??梢姡ㄟ^算法的改進(jìn)對(duì)路徑進(jìn)行規(guī)劃,從而使運(yùn)維策略優(yōu)化具有可行性。
本文在改進(jìn)的蟻群算法上融合遺傳算法,提出一種基于GA-PACO算法的海上風(fēng)電場(chǎng)運(yùn)維策略,解決海上風(fēng)電場(chǎng)運(yùn)維最優(yōu)路徑問題。仿真實(shí)驗(yàn)中,通過使用固定策略、傳統(tǒng)蟻群算法、文獻(xiàn)[10-11]和本文算法進(jìn)行對(duì)比。實(shí)驗(yàn)表明,GA-PACO算法能夠提供最優(yōu)的運(yùn)維路徑,從而提升風(fēng)電場(chǎng)的發(fā)電效率。
傳統(tǒng)遺傳算法[12]在全局搜索和函數(shù)優(yōu)化中具備優(yōu)勢(shì),適合解決離散性多變量多目標(biāo)非線性優(yōu)化問題,搜索初期速度較快,但在一段時(shí)間搜索之后,速度明顯下降,存在局部搜索能力差的缺陷。遺傳算法的基本流程如下:
步驟1:選擇最優(yōu)個(gè)體
采用輪盤賭的方式選擇最優(yōu)個(gè)體,即被選中的概率如下:
(1)
式中,f(xi)表示個(gè)體的適應(yīng)度值。
步驟2:染色體中部分基因片段交叉
交叉操作是將染色體中的較優(yōu)片段進(jìn)行重組,進(jìn)而形成新的個(gè)體的過程:
(2)
(3)
步驟3:自適應(yīng)變異
變異操作能夠體現(xiàn)遺傳算法的局部搜索能力,并得出局部最優(yōu)解,自適應(yīng)變異的過程如下:
(4)
蟻群算法[13]通過模擬螞蟻尋找食物的過程對(duì)算法進(jìn)行優(yōu)化,該算法的2個(gè)主要階段構(gòu)成了信息素的更新,在模型初期效率較低,但在仿真一定次數(shù)之后能達(dá)到較高的效率,存在前期需要較長(zhǎng)搜索時(shí)間和停滯不前的缺陷,蟻群算法的基本流程如下:
步驟1:狀態(tài)轉(zhuǎn)移
螞蟻的行走規(guī)則是螞蟻根據(jù)信息素濃度從當(dāng)前節(jié)點(diǎn)選擇下一個(gè)需要移動(dòng)的節(jié)點(diǎn)。設(shè)轉(zhuǎn)移概率為P,即由信息素更新后的濃度和啟發(fā)函數(shù)共同決定的轉(zhuǎn)移概率P如下:
(5)
步驟2:信息素規(guī)則
使用蟻群算法求解最優(yōu)路徑[14]時(shí),隨著時(shí)間推移,更多的螞蟻會(huì)在一條最短路徑上留下信息素,由于正反饋機(jī)制的存在,會(huì)導(dǎo)致蟻群算法始終處于局部最優(yōu)值,需要利用揮發(fā)機(jī)制更新信息素。當(dāng)進(jìn)行迭代過程時(shí),每條路徑信息素如下:
(6)
(7)
式中,Δτij(t)表示蟻群算法完成一次路徑搜索后的信息素總量;Q為常量;Lk表示螞蟻在此路徑上走的長(zhǎng)度。
本文提出的GA-PACO算法使用遺傳算法進(jìn)行快速選取,為后續(xù)特征提取打下基礎(chǔ);更新蟻群算法[15]的信息素分配,通過蟻群算法迭代,利用蟻群算法的正反饋機(jī)制,代替遺傳算法的部分個(gè)體,從而加快遺傳算法的迭代速度,實(shí)現(xiàn)局部最優(yōu)解;將2種算法多次融合,由局部最優(yōu)解交叉得出全局最優(yōu)路徑。
傳統(tǒng)蟻群算法的啟發(fā)值ηij(t),僅通過前后2個(gè)節(jié)點(diǎn)間距的倒數(shù)得出,無法體現(xiàn)目前節(jié)點(diǎn)與相同目標(biāo)節(jié)點(diǎn)之間的聯(lián)系;而通過中心節(jié)點(diǎn),形成局部搜索區(qū)間,僅能得出局部最優(yōu)解。為解決以上問題,引入啟發(fā)因子,將下一節(jié)點(diǎn)j與最終節(jié)點(diǎn)z的間距融入啟發(fā)信息函數(shù)中,則引入啟發(fā)因子后的改進(jìn)如下:
[ηij(t)]-1=γij(t)+γjz(t),
(8)
式中,γij表示在t時(shí)刻,節(jié)點(diǎn)i與下一節(jié)點(diǎn)j的間距;γjz表示在t時(shí)刻,下一節(jié)點(diǎn)j與最終節(jié)點(diǎn)z的間距。融入γjz后,能使蟻群算法在搜索時(shí)目標(biāo)更加明確,并能提升蟻群算法的收斂速度。改進(jìn)后的轉(zhuǎn)移概率如下:
(9)
傳統(tǒng)的蟻群算法中,信息素?fù)]發(fā)因子ρ對(duì)算法的性能影響較大,且在最優(yōu)路徑和較差路徑上僅用相同信息素?fù)]發(fā)因子ρ。當(dāng)ρ較小時(shí),會(huì)出現(xiàn)最優(yōu)路徑和較差路徑的信息素濃度差異小的現(xiàn)象;當(dāng)ρ較大時(shí),二者之間的信息素?fù)]發(fā)速度加快,信息素濃度的差異變大,極易陷入局部最優(yōu)值。為了提升局部最優(yōu)值的質(zhì)量,本文將引入最優(yōu)路徑的信息素和較差路徑的信息素,幫助螞蟻在搜索時(shí)找出最短路徑,以改進(jìn)信息素算法性能。改進(jìn)的信息素如下:
(10)
(11)
(12)
融合遺傳算法和改進(jìn)的蟻群算法[16],即GA-PACO算法流程如圖1所示。前期使用遺傳算法先進(jìn)行搜索并在合適的時(shí)候停止,能夠避免蟻群算法前期搜索過程比較耗時(shí)的現(xiàn)象發(fā)生;再使用蟻群算法,將遺傳算法得到的解作為蟻群算法的初始值,利用蟻群算法的正反饋機(jī)制找到問題的解。
圖1 GA-PACO算法Fig.1 GA-PACO algorithm
GA-PACO算法步驟如下:
步驟1:初始化遺傳算法的參數(shù)和染色體,保留當(dāng)前時(shí)刻的全局最優(yōu)。
步驟2:進(jìn)行選擇、交叉和變異操作,將全局最優(yōu)進(jìn)行更新。
步驟3:當(dāng)最優(yōu)個(gè)體收斂或達(dá)到最大迭代次數(shù)時(shí),符合終止條件,輸出次優(yōu)解。
步驟4:根據(jù)改進(jìn)的狀態(tài)轉(zhuǎn)移概率公式計(jì)算螞蟻下一步要達(dá)到的位置。
步驟5:根據(jù)最優(yōu)路徑更新蟻群算法的信息素,初始化蟻群算法參數(shù)。
步驟6:計(jì)算螞蟻路徑長(zhǎng)度,更新信息素。
步驟7:當(dāng)最優(yōu)個(gè)體收斂或達(dá)到最大迭代次數(shù)時(shí),符合終止條件,輸出最優(yōu)解。
根據(jù)風(fēng)機(jī)歷年故障的統(tǒng)計(jì)數(shù)據(jù),按指數(shù)分布模擬任意時(shí)刻發(fā)生故障的概率,建立故障發(fā)生概率模型[17],通過各部件的平均維修時(shí)間決定維修策略,機(jī)組各部件的平均維修時(shí)間如表1所示。
表1 機(jī)組各部件平均維修時(shí)間Tab.1 Average maintenance time of the components of unit
故障類型是導(dǎo)致風(fēng)機(jī)平均維修時(shí)間不同的重要因素,根據(jù)平均維修時(shí)間將故障類型分為4類,如表2所示。
表2 海上風(fēng)機(jī)故障類型Tab.2 Fault types of offshore wind turbines
運(yùn)維示例如圖2所示。有T1,T2,T3和T4四臺(tái)風(fēng)機(jī),其中T1和T4的故障類型為Ⅰ型,其平均維修時(shí)間為4 h,T3為正常運(yùn)行狀態(tài),T2的故障類型為Ⅱ型,且平均維修時(shí)間為8 h。維修路徑為T1-T4-T2,其中t表示時(shí)間,W表示總發(fā)電量,R1表示從T1到T4船舶行駛時(shí)間,w1(0)和w2(0)分別表示在0時(shí)刻,風(fēng)機(jī)T1和T2的發(fā)電量。其具體步驟如下:
圖2 運(yùn)維示例Fig.2 Example of operation and maintenance
步驟1:t=0時(shí),運(yùn)維船到達(dá)T1。
步驟2:t=4時(shí),T1維修結(jié)束,總發(fā)電量W=w1(0)。
步驟3:t=4+R1時(shí),運(yùn)維船到達(dá)T4。
步驟4:t=4+R1+4時(shí),T4維修結(jié)束,總發(fā)電量W=∑w1(R1+4)+w2(0)。
現(xiàn)僅一艘運(yùn)維船進(jìn)行維護(hù)和維修,不考慮風(fēng)速和浪高對(duì)船速的影響,且船沿直線行駛,其運(yùn)維路徑的發(fā)電量計(jì)算如下:
(13)
建模與仿真使用的仿真軟件為AnyLogic,該軟件將智能體置于港口和風(fēng)電場(chǎng)環(huán)境中,建立智能體[18]之間的連接,海上風(fēng)電運(yùn)維仿真系統(tǒng)是運(yùn)維船舶和風(fēng)電機(jī)組等智能體行為交互的結(jié)果;同時(shí),也提供數(shù)據(jù)計(jì)算和可視化展示的功能,為仿真數(shù)據(jù)的統(tǒng)計(jì)提供便利。
仿真海上風(fēng)電場(chǎng)風(fēng)機(jī)T1離岸約42 km,風(fēng)機(jī)間距為3 km,風(fēng)電場(chǎng)安裝80臺(tái)2 500 W的風(fēng)力發(fā)電機(jī)組,海上風(fēng)電場(chǎng)位置和狀態(tài)如圖3所示。
圖3 風(fēng)機(jī)位置及狀態(tài)Fig.3 Location and status of turbines
計(jì)算80臺(tái)和160臺(tái)2組風(fēng)電機(jī)組,其具體參數(shù)設(shè)置為交通船1艘,員工和備品備件充足,海上風(fēng)機(jī)平均維修時(shí)間如表3所示。
表3 海上風(fēng)機(jī)平均維修時(shí)間Tab.3 Average maintenance time for offshore wind turbines
固定策略根據(jù)當(dāng)前風(fēng)機(jī)距下一風(fēng)機(jī)的距離最近原則,得出固定策略維修路徑。本文將GA-PACO算法與固定策略、傳統(tǒng)蟻群算法、文獻(xiàn)[10-11]所用的運(yùn)維策略進(jìn)行對(duì)比[19]如表4和圖4~圖8所示。
表4 運(yùn)維策略對(duì)比Tab.4 Comparison of operation and maintenance strategies
圖4 固定策略Fig.4 Fixed strategy
圖5 傳統(tǒng)蟻群算法Fig.5 Traditional ant colony algorithm
圖6 文獻(xiàn)[10]Fig.6 Reference[10]
圖7 文獻(xiàn)[11]Fig.7 Reference[11]
圖8 GA-PACO算法Fig.8 GA-PACO algorithm
根據(jù)運(yùn)維描述的計(jì)算方式得出仿真80臺(tái)風(fēng)機(jī)時(shí),使用GA-PACO算法規(guī)劃路徑發(fā)電量為3 738 247.5 kW·h,仿真實(shí)驗(yàn)中發(fā)現(xiàn)GA-PACO算法路徑長(zhǎng)度雖比其他算法稍長(zhǎng),但優(yōu)先維修距離相對(duì)較近且等待時(shí)間短的風(fēng)機(jī),能夠明顯提升風(fēng)電機(jī)組發(fā)電量。
(1) 80臺(tái)風(fēng)機(jī)的研究
仿真系統(tǒng)計(jì)算80臺(tái)風(fēng)電機(jī)組如表5所示,其具體參數(shù)設(shè)置為交通船1艘,員工和備品備件充足,一年的實(shí)際發(fā)電量Wf為277 037萬kW·h,一年時(shí)間內(nèi),80臺(tái)功率為2 500 W的風(fēng)機(jī)的理想發(fā)電量Wp為279 912萬kW·h·風(fēng)場(chǎng)一年時(shí)間的技術(shù)發(fā)電量可利用率(Technical Energy Availability,TEA)如下:
表5 仿真80臺(tái)風(fēng)機(jī)Tab.5 Simulation of 80 turbines
(14)
80臺(tái)風(fēng)機(jī)最優(yōu)路線的綜合指標(biāo)迭代如圖9所示。
圖9 80臺(tái)風(fēng)機(jī)最優(yōu)路線的綜合指標(biāo)迭代Fig.9 Iterative diagram of comprehensive indicators for the optimal route of 80 wind turbines
(2) 160臺(tái)風(fēng)機(jī)的研究
當(dāng)風(fēng)電機(jī)組的規(guī)模擴(kuò)大到160臺(tái),使用GA-PACO算法仿真一年的實(shí)際發(fā)電量Wf為548 963萬kW·h,一年時(shí)間內(nèi),80臺(tái)功率為2 500 W的風(fēng)機(jī)的理想發(fā)電量Wp為559 824萬kW·h,由式(14)得出各算法的TEA如表6所示。
表6 仿真160臺(tái)風(fēng)機(jī)Tab.6 Simulation of 160 turbines
160臺(tái)風(fēng)機(jī)最優(yōu)路線的綜合指標(biāo)迭代如圖10所示。
圖10 160臺(tái)風(fēng)機(jī)最優(yōu)路線的綜合指標(biāo)迭代Fig.10 Iterative diagram of comprehensive indicators for the optimal route of 160 wind turbines
由圖9和圖10繪制的最優(yōu)路線[20]綜合指標(biāo)迭代圖可以看出,本文算法的迭代次數(shù)更優(yōu)于其他算法,且穩(wěn)定的迭代次數(shù)率分別為31.86%和38.82%。根據(jù)理論發(fā)電量與實(shí)際發(fā)電量的差值,繪制80臺(tái)風(fēng)機(jī)與160臺(tái)風(fēng)機(jī)使用GA-PACO算法和其他算法的發(fā)電量差值對(duì)比如圖11所示。
圖11 發(fā)電量差值對(duì)比Fig.11 Comparison of power generation difference
由圖11可以看出,仿真80臺(tái)風(fēng)機(jī)時(shí),GA-PACO算法的發(fā)電量與理想發(fā)電量的差值最小,且發(fā)電量提升了1 821萬kW·h,TEA提升0.65%,迭代次數(shù)為36;仿真160臺(tái)風(fēng)機(jī)時(shí),發(fā)電量提升了2 386萬kW·h,TEA提升0.43%,迭代次數(shù)為66。由此得出,當(dāng)風(fēng)電場(chǎng)規(guī)模持續(xù)增大時(shí),GA-PACO算法的期望收斂時(shí)間增大,即時(shí)間復(fù)雜度增大;算法中螞蟻數(shù)目的增多會(huì)使期望收斂時(shí)間減少,即時(shí)間復(fù)雜度減少。
本文針對(duì)海上風(fēng)電機(jī)組故障,提出了一種基于GA-PACO算法的運(yùn)維策略仿真模型,融合遺傳算法和改進(jìn)的蟻群算法,應(yīng)用于風(fēng)電場(chǎng)領(lǐng)域,提高維修資源的利用,進(jìn)而提升發(fā)電效率。
① 通過融合遺傳算法,使算法在模型初期提升效率,并進(jìn)行全局搜索。
② 引入啟發(fā)因子和改進(jìn)信息素算法策略,能使算法更好地找出最優(yōu)路徑。
③ 通過仿真實(shí)驗(yàn),將本文算法與固定策略傳統(tǒng)蟻群策略、文獻(xiàn)[10-11]進(jìn)行對(duì)比,本文算法能大幅提升收斂速度,并降低穩(wěn)定后的迭代次數(shù),提升搜索能力。
本文提出的GA-PACO算法在多因素下的綜合性能更高,并提供最優(yōu)維護(hù)策略,同時(shí)也顯示了尋找最佳解決方案的有效性。