楊冬冬
【摘 要】本文對多目標粒子群算法的原理和數學模型做了基礎記述,然后對多目標粒子群算法做了仿真測試,并使用加速因子對其線性變化進行了優化,這不僅保證了粒子群算法初步搜索時能在比較大的范圍內迅速找到自身最優位置(pbest),而且利用加速因子的權重變比變化促使后期粒子群進行嚴格的局部搜索以便于去找到gbest位置也就是全局最優位置,使其集中向Pareto最優前沿聚集。使得在仿真結果中使用擁擠距離刪除后得到的圖形的最優前沿更加均勻平滑。
最后利用前面所介紹的粒子群算法去解決環境經濟調度優化問題,介紹環境經濟調度原理以及其數學模型,在其多個不等式和等式約束下做了仿真測試,得到的數據與文獻做了詳細對比,表明粒子群算法在解決環境經濟調度的問題中具有很大的可行性和有效性。
【關鍵詞】環境經濟調度;粒子群算法;加速因子
1多目標粒子群算法及其仿真
1.1多目標粒子群算法概述
1.1.1多目標優化的數學概括
多目標優化問題既是多個標準優化問題,具有很強的普遍性,對其的研究也在不斷更近。其他研究表明一個具有n個決策變量和多個目標優化問題可以用下面公式表示:
Subject to (1-2)
上式中X、x、Y、y分別代表參數空間、決策向量、目標空間以及目標向量。在所有目標中,不可能繼續優化其中一個或者幾個而促使其他目標不發生劣變的所有解集,稱這些解為最優非劣解或叫做pareto解集,最優非劣解的優化用下面公式描述:在常規情況下,將極小化問題考慮在內,則有),a,b分別表示兩個決策向量。
首先假設:
則稱b劣于a。在所有區域內沒有占優的決策向量稱之為pareto最優解。而所有決策向量集合便是最優非劣解集,既是在環境經濟調度時非劣解的求取非常重要。
1.1.2多種方法解決多目標優化問題
1、在以往的優化方法中,其核心都是將多個目標經過不同的手段轉化為一個目標進行求解計算優化,主要的方法有線性規劃法、價格因子法、加權法等。
2、隨著技術發展和人類發現,現今社會解決多目標問題的方法更是層出不窮,不僅比較貼近實際情況而且比較柔性化,主要算法有進化算法(EvolutionaryAlgorithm,簡稱EA)、粒子群算法(ParticleSwarmOptimization,PSO)等。
1.2多目標粒子群算法仿真
1.2.1仿真測試函數
表1-1測試函數
這里采用上面面測試函數進行仿真,多目標粒子群算法(IMOPSO)的操作步驟如下:
給多目標粒子群算法的迭代次數、控制參數、以及群體規模進行初始化;
仿真出各個粒子所表示的最佳適應位置;
根據最優非劣解集最優概念尋找出各個粒子的自身極值;
挑選種群中所有的非劣解集存入外部檔案庫,刪減線密度最小的所有非劣解;
迭代下一次,將粒子的速度和位置進行下一次迭代;
判斷是否達到設置的最大迭代要求的次數?是,那么輸出檔案庫所有負荷算法的解集;否,轉到步驟2。
1.3改進多目標粒子群算法
使用修剪算子的外部截斷性能對粒子群的非劣解集的外部解集截斷,修剪算子的外部截斷性能很好保證粒子群算法外部解集的均勻性和平滑性。目前擁擠距離策略是當今應用比較廣泛,比較實用的外部解集保持策略。
令粒子i的擁擠距離為:
(1-6)
上式中f1,f2表示兩個子目標,P[i]disdance表示粒子i的聚集距離,P[i].m表示粒子i的函數值。
用下面方法保證擁擠距離策略可以截斷粒子群外部解集:
令p[i]disdans=0,既是將每個粒子的初始擁擠距離設置為0,然后對所有目標列出序號排序,采用(1-1)式對所有粒子的擁擠距離進行計算;
將邊界的值設置為最大值保證粒子能進行下一次迭代,搜索并淘汰所有解集中擁擠距離最小的粒子,
獲取新一次迭代的粒子的擁擠距離;(在迭代時,將每個目標的最近距離進行標記)
當淘汰的粒子滿足預定要求后終止該算法。
因為使用了動態更新算子對粒子群算法進行了改進,當淘汰每個粒子時都會進行一次相鄰粒子的擁擠距離的新計算,進而有力的保證擁擠距離能正確細致的表現每個粒子間的親密度。擁擠距離圖形如下圖1-1[2]:
1.3多目標粒子群算法的結果和分析
1.3.1多目標粒子群算法結果
這個程序仿真的是上面表3-1所說的測試函數,選取了粒子數為20,c1,c2均為2,粒子速度范圍是[0,1000],位置的范圍是[-1000,1000],迭代次數是2000次。并擁擠距離進行刪除,使得其歸檔集的解得個數為100。
所得到的非劣解得圖形如下,下圖表示的解集圖形并未進行過優化。
1.4多目標算法存在的問題與修正
由以上的圖形來看,這個測試函數的最優前沿還存在一些問題,就均勻性來說,這個程序還可以繼續進一步優化。這種改進可以從每次迭代所得到的全局最優開始,全局最優的選取在本文中選擇的是從所得到的非劣解集中任意選擇一個,而作為改進可以選擇在計算過擁擠距離后,把每次迭代后得到擁擠距離最大的那個組解當做全局最優。把擁擠距離最大的那個解當成是全局最優可以使其搜索時從局部最稀疏的地方再開始更新。使該全局最優曲線更加均勻。
2 利用粒子群算法解決環境經濟調度問題
2.1環境經濟調度數學模型分析
2.1.1目標函數
不僅考慮經濟指標而且也要將電力系統污染思考在內,在此處采用發電機有功出力的二階多項式來描述電力系統消費的總的費用或者燃料消耗,既是:
($/h)(2-1)
上式中ai表示第i臺發電機組耗量特性的常數項,bi和ci表示第i臺發電機的一次項和二次項系數。PGi代表發電機的有功出力,n代表發電機組總數。
(2)相關法規規定電廠的污染排放量如硫氧化物和氮氧化物以及其他其他污染物必須達到國家標準,減小對大氣和環境的污染。其次,個別國家也要求熱輻射必須達到國家標準,在一般情況下,氮氧化物排放必須達標。氮氧化物的排放量我們可以采用各發電機出力的二階多項式與指數方程的和來表示:
式子中的所有拉丁字母表示第i臺機組的特征方程系數。
2.1.2經濟調度約束條件
在電力系統正常運行時系統的功率必須保持在穩定平衡狀態,既系統的總負荷加上網損要等于電力系統的輸出功率,數學表示如下:
(4-4)中PGi,PD,PLOSS各代表系統的輸出功率,系統接的總負荷以及網絡損耗。網絡損耗用B系數法求得:
在電力系統穩定運行時不但要滿足功率平衡,機組間的發電容量也必須保持在特定的范圍之內,可以用下面不等式表示:
在環境經濟調度的目標函數和兩個約束條件都已經確定的情況下,建立相關的數學模型,可以解釋為一個含有等式和不等式雙重約束下的非線性的多目標優化案例。既是:
上式中,g與h分別表示上節提到的等式和不等式約束。
2.2電力系統環境經濟調度實現多目標優化
在上面表述的環境經濟調度數學模型的優化問題中分析得出其經濟調度既要在滿足負荷需求下電力系統能穩定運行,又要保證獲取最小的經濟成本和對環境污染達到最小,從上面式子(2-1)(2-2)可以看出,在多個條件約束下,兩個式子表述的是并不一致的量綱的函數,所以需要轉化到同一個量綱今次那個問題求解。
2.2.1環境經濟調度問題的模型仿真
在文獻[3]中,文獻采用的算法所使用的機組一共有六臺發電機組,需要生產的總電量為283.4MW。下表表示的是所有機組需要滿足的燃料花費系數以及最高的發電量和最低的發電量:后面本文數據將會與此文獻數據進行對比分析。
2.2.2環境經濟調度優化仿真
針對具有多個優化目標的環境經濟調度問題可以先從簡單的基礎思考,先考慮氣體污染物的排放對環境污染的問題。我們可以把氣體排放等效于資金花費,如此在解決多目標問題的時后就可以將燃料花費和污染花費兩個加權相加。但是這種方法在計算權值時不能得到燃料花費和污染氣體排放量的準確轉化權值比,所以我采用利用多目標粒子群算法對其進行優化。作為一個多目標優化問題,加上上面多目標粒子群算法的仿真測試表明。這里有兩個目標函數,一個是燃料花費,一個是污染氣體的排放。而等式約束和不等式約束也應該加入到程序當中去對所更新的粒子進行約束。在全局最優和自身最優的選取上采用同樣的方法,由于多目標問題不存在絕對唯一的最優解,所以先求出它的非劣解集。并對這些解利用擁擠距離進行刪除,這些解所組成的歸檔集可以找到燃料花費的最小值或者氣體排放量的最小值。
通過實際問題與測試函數的之間的比對,簡要概括粒子群算法在環境經濟調度的基本原理。這是個六維的問題,六臺發電機考慮產生總的花費做為一個粒子,這個粒子有兩個目標函數即燃料花費目標函數和污染氣體排放目標函數,分別采用公式(2-1)和(2-2)進行計算,也就是說有兩個適應值。因為同時有不等式和等式約束兩個條件,所以在初始化的時候要對每個粒子進行限制。每次隨機產生的粒子需要做這個工作六臺發電機隨機產生的功率要滿足條件(2-5),也就是不等式約束,而其總共要產生283.4MV的電量也就是等式約束,而在等式約束也要把網絡損耗考慮進來。
詳細操作步驟如下:
在系統中制定系統參數,并給定每一個變量的上限和下限;
給系統中的每個微粒隨機給予一個原始的位置以及速度;
用B系數法迭代求取種群中所有粒子的網損;
對每個微粒的自身的最佳位置按照目標函數進行測試看是否滿足函數值要求;
將所有的滿足函數值要求的非劣解集放進一個數據集合A中;
對粒子進行初始化迭代得到找到粒子自身最優值和局部的最優值;
反復進行迭代獲取新一代的粒子
產生的粒子判斷是否滿足條件約束,滿足約束的粒子記錄該粒子并計算其網絡損耗;
將粒子迭代出的新的自身最優值(適應值)粒子自身作比較的到的所有非劣解集放入集合B中;
把集合B中的非劣解集與上一代中的非劣解集作比較,得到的新的非劣解集放進集合C中,并將集合C中數據放進A中以方便比較;
實用擁擠距離刪除策略對得到的所有解集進行刪除;
判斷迭代次數是否滿足設置值,如果達到最大值,則集合A中的所有非劣解集;否則,轉到步驟二繼續循環。
2.2.3多目標粒子群算法解決電力系統環境經濟問題
在具有多個目標的環境經濟調度的問題優化中比較常用的優化方法是采用加速因子的方法和利用慣性權重對目標函數進行加權。用這些方法來確定多個目標的優化比重。
慣性權重法(ω)的特點在于能加快粒子群算法的收斂速度。ω表示比例因子,與迭代的前一次速度相關,隨著ω的變化粒子群的搜索速度也跟著變化,粒子群進行全局搜索時ω的值相對較大,需要迭代的次數越來越少時,ω值越來越小,這就保證了粒子群能進行快速的局部搜索。由于ω值的變化促使粒子群的搜索能力能根據自身情況進行調節,者不僅加快了粒子群算法(PSO)的收斂速度,保證算法產生早熟現象陷入局部極值。該算法越來越收到廣大學者的青睞和應用,是一個隨著時間變化調整搜索速度的多目標粒子群算法(時變多目標粒子群算法)(TV-MOPSO)[3],其數學表達式如下:
在式(3-8)中:ωmin表示慣性權重的最小值,ωmax表示慣性權重的最大值;Tmax表示最大迭代次數。T表示當前迭代次數,
在許多實驗中不斷地測試中證明參數C1,C2的變化范圍是0.5-2.5,ω的最優的取值范圍是0.4-0.9。
2.2.3算法結果和分析
在文獻中,算法所選取的粒子總數為50個,粒子的迭代總次數為8000次歸檔集為50,慣性權重在0.4-0.9之間線性變化,加速因子的取值為1.5。這里我選用了與文獻相同的數據進行模擬仿真以便于和文獻數據進行比對。在仿真數據中所有相互折中的目標函數生成的最佳位置的集合便是所求的非劣解集。在這里與文獻的對比了一下兩種情況:
圖2-2沒有網絡損耗的算法仿真
上圖2-2描述了總共8000次迭代產生的污染氣體排放量和燃料花費相互折中的所有pareto解集。縱坐標和橫坐標分別代表污染氣體總排放量和燃料總花費。圖形為初始化模型還需要修整改進,2-3數據和2-4數據表明仿真結果中污染氣體排放比文獻的數據好但是卻沒有比文獻的數據更經濟性,既是燃料花費比文獻的要高。下面表格數據
2.2.4存在的問題和改進
從圖形描述中得到的結果表明圖形的最優前沿不平滑,也不夠均勻,就這個問題分析,還有很多的不足,不管是從實際問題還是從粒子群算法的仿真來說,都可以從下面三個方面進行改進:
考慮到實際問題時在燃料花費的目標函數中應該考慮發電機發電時的閥點效應
在全局最優的選取時應該選取擁擠距離最大的點,這樣有利于最優前沿的均勻性[4]。
對于這樣的實際問題,可以看到粒子群算法容易陷入局部收斂,也就是常說的早熟現象,所以可以采用一些混合算法對粒子群算法進行優化[5]。
2.3電力系統環境經濟調度的展望
此文中我只對電力系統優化設計做了極其小的部分分析,我只把成本的最低和對環境的污染最小作為目標函數,但是在實際問題中還需要關注更多的其他因素制約。
電力系統環境經濟調度的問題存在多種多樣的復雜性。在電力系統正常工作是,我們可以把有功網損最小,對環境污染最小,或者煤耗最小等作為我們的優化目標。而假設在電力系統發生故障后,怎樣減少故障所帶來的損失、怎樣預防故障可能帶來的災害,以及怎樣減小節點電壓或者如何保證負荷能繼續正常工作更具有探討的意義。
參考文獻:
[1]鄭向偉,劉弘.多目標進化算法研究進展[J].計算機科學,2007,34(7):187-192.
[2]蘇鵬,劉天琪,趙國波.基于改進粒子群算法的節能調度下多目標負荷最優分配電網技術學報,2009.
[3]李彩華,郭志忠.電力系統優化調度概述(I)一經濟調度與最優潮流.電力系統及其自動化學報第14卷第2期2002年4月.
(作者單位:貴州省貴陽市貴州大學)