2008暑假A第二次競賽題劉圓范興容張偉_第1頁
2008暑假A第二次競賽題劉圓范興容張偉_第2頁
2008暑假A第二次競賽題劉圓范興容張偉_第3頁
2008暑假A第二次競賽題劉圓范興容張偉_第4頁
2008暑假A第二次競賽題劉圓范興容張偉_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、數(shù)學建模論文姓名學院年級專業(yè)學號聯(lián)系電話相關(guān)學科成績高等數(shù)學線性代數(shù)概率統(tǒng)計數(shù)學模型數(shù)學實驗英語四級英語六級范興容自動化06級 自動化2006492083858794張 偉自動化06級 自動化2006477862656275530劉 圓軟件工程06級 軟件工程20065404919290499小組成員介紹:基于遺傳算法的機組組合問題的建模與求解摘要本文針對當前科技水平不足以有效存儲電力的情況下產(chǎn)生的發(fā)電機機組組合的問題,考慮負荷平衡、輸電線傳輸容量限制等實際情況產(chǎn)生的約束條件,建立機組組合優(yōu)化模型,追求發(fā)電成本最小。同時采用矩陣實數(shù)編碼遺傳算法(MRCGA)和窮舉搜索算法,利用MATLAB 和

2、C+編程,分別對模型進行求解,并對所得結(jié)果進行分析比較,以此來幫助電力部門制定機組啟停計劃。首先,建立發(fā)電成本最小目標函數(shù)和各項約束條件的數(shù)學表達式。其中機組空載成本和增量成本之和隨該機組發(fā)電出力增長呈折線關(guān)系,在分析計算時為了簡便,本文采用一條平滑的二次曲線來近似代替。對于問題1,選取相應的約束條件對目標函數(shù)進行約束,從而給出優(yōu)化模型。由于問題1的求解規(guī)模很小,所以采用窮舉搜索算法,利用C+編程求解,得到了3母線系統(tǒng)4小時的最優(yōu)機組組合計劃(見表一)。對于問題2,在優(yōu)化模型的基礎(chǔ)上,增加最小穩(wěn)定運行出力約束、機組啟動和停運時的出力約束以及機組最小運行時間和最小停運時間約束這三個約束條件,建立

3、了優(yōu)化模型II。同時采用遺傳算法和窮舉搜索算法,利用MATLAB和C+編程,分別對模型進行求解,部分結(jié)果如下:發(fā)電總成本(單位:元)矩陣實數(shù)編碼遺傳算法6780窮舉搜索算法6820在對所得結(jié)果進行了分析比較,重新制定了3母線系統(tǒng)4小時最優(yōu)機組組合計劃(見表三)。對于問題3,用IEEE118系統(tǒng)對優(yōu)化模型II進行測試。由于求解規(guī)模巨大,同樣采用遺傳算法和窮舉搜索算法,利用MATLAB和C+編程,分別對模型進行求解,部分結(jié)果如下:發(fā)電總成本(單位:百萬)矩陣實數(shù)編碼遺傳算法2.034窮舉搜索算法2.135在對所得結(jié)果進行比較時發(fā)現(xiàn)對于大規(guī)模問題,遺傳算法優(yōu)勢明顯,將其求解結(jié)果作為24小時的最優(yōu)機組

4、組合計劃(見附錄)。最后,我們就模型存在的不足之處提出了改進方案,并對優(yōu)缺點進行了分析。關(guān)鍵字 機組組合優(yōu)化模型 矩陣實數(shù)編碼遺傳算法 窮舉搜索算法一、問題的提出當前的科學技術(shù)還不能有效地存儲電力,所以電力生產(chǎn)和消費在任何時刻都要相等,否則就會威脅電力系統(tǒng)安全運行。為了能夠?qū)崟r平衡變化劇烈的電力負荷,電力部門往往需要根據(jù)預測的未來電力負荷安排發(fā)電機組起停計劃,在滿足電力系統(tǒng)安全運行條件下,追求發(fā)電成本最小。在沒有電力負荷損耗以及一個小時之內(nèi)的電力負荷和發(fā)電機出力均不變的前提下,假定所有發(fā)電機組的發(fā)電成本都是由3部分組成:1.啟動成本(Startup Cost),2.空載成本(No load c

5、ost),3.增量成本(Incremental Cost)。需要考慮的約束有: 1負荷平衡約束2系統(tǒng)備用約束3輸電線路傳輸容量約束4發(fā)電機組出力范圍約束5機組增出力約束6機組降出力約束。問題1:3母線系統(tǒng)有一個3母線系統(tǒng),其中有2臺機組、1個負荷和3條輸電線路,已知4個小時的負荷和系統(tǒng)備用要求。請求出這4個小時的最優(yōu)機組組合計劃。最終結(jié)果應該包括總成本、各小時各機組的狀態(tài)、各小時各機組的發(fā)電出力和各小時各機組提供的備用。問題2:3母線系統(tǒng)在問題1的基礎(chǔ)上,考慮發(fā)電機組的下列物理特性約束:1.發(fā)電機組的穩(wěn)定出力范圍約束2.機組啟動時的出力約束3.機組停運時的出力約束4.機組最小運行時間約束5.機

6、組最小停運時間約束。重新制定最優(yōu)機組組合計劃。問題3:IEEE 118系統(tǒng)用IEEE118節(jié)點的電力系統(tǒng)對問題2的求解模型進行測試,試求出24個小時的最優(yōu)機組組合計劃。最終結(jié)果應該包括總成本、各小時各機組的狀態(tài)、各小時各機組的發(fā)電出力和各小時各機組提供的備用。 二、問題的分析機組優(yōu)化組合和優(yōu)化啟停就是要在滿足約束條件的情況下,優(yōu)化地選定各時段參加運行的機組,求出機組的最佳運行方案,實現(xiàn)發(fā)電成本最小。然而,機組組合問題是一個多變量、多約束的混合整數(shù)非線性規(guī)劃問題。針對此類問題的求解,數(shù)學類優(yōu)化方法如線性規(guī)劃、非線性規(guī)劃、動態(tài)規(guī)劃等,都存在明顯不足之處。而采用智能優(yōu)化算法對此問題的研究較多,主要包

7、括遺傳算法、模擬退火算法、禁忌搜索、人工神經(jīng)網(wǎng)絡(luò)、模糊優(yōu)化等算法。其中模擬退火算法收斂速度慢、禁忌搜索算法對初始解依賴性較強、人工神經(jīng)網(wǎng)絡(luò)算法存在網(wǎng)絡(luò)合適的隱含層數(shù)目和節(jié)點數(shù)目難以確定、模糊優(yōu)化方法的隸屬函數(shù)和模糊推理規(guī)則的確定較困難。鑒于遺傳算法作為一種新的全局 優(yōu)化搜索算法,以其簡單通用、魯棒性強、適于并行處理及應用范圍廣等顯著特點,本文采用基于矩陣實數(shù)編碼遺傳算法來解決機組組合問題??梢詫⒄麄€問題分為以下兩個任務來完成:一、 建立機組組合問題的數(shù)學模型二、 采用窮舉搜索法和遺傳算法,利用C+或者MATLAB編程,求解模型,得到最優(yōu)機組組合計劃由于題目中的三個問題所考慮的約束條件復雜程度不

8、同,發(fā)電機組數(shù)與負荷情況也不相同,本文將三個問題逐一建立模型并求解:問題1根據(jù)負荷平衡、系統(tǒng)備用、輸電線路傳輸容量、發(fā)電機組出力范圍、機組增出力、機組降出力等約束建立優(yōu)化模型I,采用窮舉搜索算法,利用C+編程進行求解。問題2和問題3在問題1的基礎(chǔ)上,增加機組啟動和停運時的出力、機組最小運行時間和最小停運時間約束條件,建立了優(yōu)化模型II,采用窮舉搜索法和遺傳算法,分別利用C+和MATLAB編程進行求解。三、模型假設(shè)和符號系統(tǒng)3.1 模型假設(shè)1. 假設(shè)系統(tǒng)不存在電力負荷損耗2. 假設(shè)一個小時之內(nèi)的電力負荷和發(fā)電機出力均不變3. 假設(shè)參加交叉運算的染色體個數(shù)占全體染色體總數(shù)的比例為0.40.994.

9、 假設(shè)發(fā)生變異的基因位數(shù)所占全體染色體的基因總位數(shù)的比例為0.00010.13.2 符號系統(tǒng)為機組在時段的運行狀態(tài),為機組的啟動成本為機組在時段的發(fā)電成本為機組在時段的出力;為負荷在時段的負荷量;為發(fā)電機組的最大出力;為時段系統(tǒng)備用要求;為線路上流過的電能;為第根輸電線路第條母線的線性傳輸因子;為母線上的注入功率;為第根輸電線路的最大傳輸容量;發(fā)電機組最小穩(wěn)定運行出力;為機組最大減出力;為機組最大增出力;為機組最小運行時間;為機組最小停運時間;四、模型的建立與求解4.1模型建立分析先考慮目標函數(shù)1) 空載成本和增量成本觀察空載成本和增量成本構(gòu)成的部分成本隨該機組發(fā)電出力變化特性圖,如圖一中折線

10、所示。圖一 空載成本和增量成本之和隨該機組發(fā)電出力增長走勢圖在分析計算時為了簡便,通常用一條平滑曲線來近似代替有起伏的部分成本特性,如圖一中平畫曲線所示。當n段直線近似表示時,部分成本特性可表示為 (1)2) 啟動成本 (2)其中:為機組在時段的運行狀態(tài),為機組的啟動成本3) 目標函數(shù)機組組合的目的是針對在指定的周期內(nèi),滿足系統(tǒng)負荷、備用容量、機組最小時間和最小停機時間等限制,優(yōu)化確定各機組的啟停機計劃和優(yōu)化分配其發(fā)電負荷,使發(fā)電總費用最小。因此,要以機組的費用最小為依據(jù)建立相應的目標函數(shù)。設(shè)所研究的計劃周期為,機組臺數(shù)為,則該問題的目標函數(shù)可以表示為: (3)其中:為機組在時段的發(fā)電成本再考

11、慮約束條件1) 負荷平衡約束任何時段,電力負荷之和必須等于發(fā)電機發(fā)電出力之和。 (4)其中:為機組在時段的運行狀態(tài),;為機組在時段的出力;為負荷在時段的負荷量;2) 系統(tǒng)備用約束任何時段,發(fā)電機的備用容量之和必須大于系統(tǒng)備用要求。 (5)其中:為發(fā)電機組的最大出力;為時段系統(tǒng)備用要求;3) 輸電線路傳輸容量約束線路傳輸?shù)碾娔鼙仨氃谒膫鬏斎萘糠秶鷥?nèi)。 (6)其中:為線路上流過的電能;為第根輸電線路第條母線的線性傳輸因子;為母線上的注入功率;為第根輸電線路的最大傳輸容量;4) 發(fā)電機組出力范圍約束與穩(wěn)定出力范圍約束處于運行狀態(tài)的發(fā)電機組的發(fā)電出力必須小于其最大發(fā)電出力,同時必須大于其最小穩(wěn)定運行

12、出力。 (7)其中:發(fā)電機組最小穩(wěn)定運行出力;5) 機組增降出力約束發(fā)電機組在增加發(fā)電出力時,增加出力的速度要小于其最大增出力;發(fā)電機組在減少發(fā)電出力時,減少出力的速度要小于其最大減出力。 (8)其中:為機組最大減出力;為機組最大增出力;6) 機組啟動和停運時的出力約束當機組從停運狀態(tài)變?yōu)檫\行狀態(tài)時,機組在該小時的發(fā)電出力必須為其最小穩(wěn)定運行出力,且當機組從運行狀態(tài)變?yōu)橥_\狀態(tài)時,機組在該小時的發(fā)電出力必須為其最小穩(wěn)定運行出力。 (9)7) 機組最小運行時間和最小停運時間約束機組每次啟動后,連續(xù)運行時間至少為該臺機組的最小運行時間。機組每次停運后,連續(xù)停運時間至少為該臺機組的最小停運時間。 (

13、10) (11)其中:為機組最小運行時間;為機組最小停運時間;4.2模型及其求解問題11) 優(yōu)化模型問題1中的3母線系統(tǒng)僅考慮負荷平衡約束 系統(tǒng)備用約束、輸電線路傳輸容量約束、發(fā)電機組出力范圍約束與穩(wěn)定出力范圍約束和機組增降出力約束,所建優(yōu)化方程模型如下。 (12) (13)其中:為機組在時段的發(fā)電成本;為機組的啟動成本;2)優(yōu)化模型的求解算法機組組合問題在數(shù)學規(guī)劃上屬于NP完全問題,任何NP完全問題只有通過列舉所有可能的組合,才能得到最優(yōu)解,即采用窮舉搜索法。由于問題1的求解規(guī)模不大,所以該問題將采用窮舉搜索法對模型進行求解。我們設(shè)置一計數(shù)器()用以記錄機組已運行的時間。 讀取各機組和負荷的

14、原始數(shù)據(jù)。另。 設(shè)置機組1的第小時的出力大小(從小到大依次搜索,跨度為1),使其出力大小的變化滿足增出力約束和降出力約束。 判斷機組1是否滿足其出力范圍約束。若滿足則繼續(xù)下一步,否則,重復步驟2。 根據(jù)系統(tǒng)負荷平衡約束,求出機組2的出力大小。 判斷機組2出力大小的變化和出力范圍是否滿足增出力約束、降出力約束和出力范圍約束。若滿足則繼續(xù)下一步,否則重復步驟2、3、4。 判斷機組1和機組2是否滿足系統(tǒng)備用約束,若滿足則繼續(xù)下一步,否則重復步驟2、3、4、5。 判斷機組1和機組2是否滿足輸電線路傳輸容量約束,若滿足繼續(xù)下一步,否則重復步驟2、3、4、5、6。 判斷計數(shù)器是否為4,若是則輸出該種情況下

15、兩臺機組各時段出力大 小,否則重復步驟2、3、4、5、6、7,另。直到所有的情況搜索完畢為止。執(zhí)行完該算法,可以得到一最優(yōu)機組組合計劃。3)模型求解與分析我們根據(jù)上面的算法步驟,我們編C+程序(附錄1),并代入各機組和負荷的初始數(shù)據(jù)。可以得到一總成本為6580¥的最優(yōu)機組組合計劃,如表一所示:表一 3母線系統(tǒng)的最優(yōu)機組組合計劃機組G1機組G2小時1狀態(tài)運行關(guān)機出力(MW)1000備用(MW)10002狀態(tài)運行關(guān)機出力(MW)1300備用(MW)7003狀態(tài)運行運行出力(MW)13040備用(MW)70604狀態(tài)運行關(guān)機出力(MW)1400備用(MW)600總成本(¥)6580使用窮舉搜索法對該

16、問題雖然能得出結(jié)果,但其運行效率太低,不能用于求解大規(guī)模問題,且編程實現(xiàn)較復雜,不是一種優(yōu)良的算法。問題2和問題31) 優(yōu)化模型問題2和問題3的優(yōu)化模型為 (14) (15)2)求解算法對于問題2和3,我們同時采用窮舉搜索法和遺傳算法兩種算法進行求解,并將求得結(jié)果進行比較,以比較兩種算法的優(yōu)劣。窮舉搜索法的算法思想與問題1的求解算法思想一致。遺傳算法的流程圖如圖二所示。算法開始編碼確定適應值函數(shù)產(chǎn)生初始種群計算適應值函數(shù)適應值定標滿足終止條件?解碼確定最優(yōu)解輸出最優(yōu)解算法結(jié)束選擇交叉變異是否圖二 遺傳算法流程圖矩陣實數(shù)編碼遺傳算法的描述: 針對機組組合問題的矩陣實數(shù)編碼本文以要安排發(fā)電機組起停

17、計劃作為遺傳算法中的個體,采用實數(shù)矩陣形式進行編碼。其具體形式為 (16)其中: 為遺傳種群中的第個個體為編碼矩陣中的第行第列元素,含義為發(fā)電機組在時段的發(fā)電出力為編碼矩陣中的第個列向量,含義為時段內(nèi)發(fā)電機組間的負荷分配情況為編碼矩陣中的第個行向量,含義為發(fā)電機組在發(fā)電計劃制定周期內(nèi)的出力過程發(fā)電機組的運行狀態(tài)取決于矩陣中元素的具體取值,即根據(jù)機組在某時段中的出力大小來確定啟停狀態(tài),具體表達式為 (17) 遺傳種群初始化遺傳種群初始化時,按編碼矩陣中列向量的順序進行。以中為例,初始過程如下:(1)生成服從均勻分布的隨機數(shù)數(shù)組 (18)其中:為在發(fā)電機組最大最小出力之間隨機生成的正數(shù)(2)計算百

18、分比系數(shù)數(shù)組 (19)其中: (3)初始化各臺發(fā)電機組的出力,即初始化 (20)其中: 為負荷在時段的負荷量 個體調(diào)整方法在進行個體調(diào)整時按列向量的先后順序進行。以個體中為例,具體調(diào)整措施如下:(1)根據(jù)機組組合問題對精度的要求,對列中的各個元素保留(2)調(diào)整列中的元素取值,使其滿足相應發(fā)電機組出力范圍約束。其方法如下: (21)其中:為調(diào)整前發(fā)電機組在時段的發(fā)電出力為調(diào)整后發(fā)電機組在時段的發(fā)電出力為介于0、1之間的常數(shù),本文取發(fā)電機組最小穩(wěn)定運行出力;發(fā)電機組最大出力;(3)調(diào)整列中的元素取值,使其滿足相應發(fā)電機組的增出力和降出力約束約束。具體如下: (22)其中:為前一步調(diào)整完成的發(fā)電機組

19、在時段的發(fā)電出力為此步調(diào)整后的發(fā)電機組在時段的發(fā)電出力為機組最大減出力為機組最大增出力(4)調(diào)整發(fā)電機組啟停狀態(tài)使其滿足系統(tǒng)備用約束。具體調(diào)整方法如下:當 時,增開發(fā)電機組,令新投入運行的發(fā)電機組發(fā)電出力為其最小出力,直至滿足系統(tǒng)備用約束為止。其中,為時段系統(tǒng)備用要求(5)經(jīng)過上述三步調(diào)整后,列中所有元素的總和可能不等于時段中的系統(tǒng)總負荷。因此要進行負荷分配的調(diào)整。具體的調(diào)整辦法為:當時,通過增加運行發(fā)電機組出力來滿足負荷平衡約束;反之,若,則降低運行發(fā)電機組的出力。此步調(diào)整中,只能在發(fā)電機組的最大出力允許范圍內(nèi)進行調(diào)整,不能改變機組的運行狀態(tài)。(6)算法趨于收斂時,若發(fā)電機組的出力過程不滿足

20、最小運行、停運時間約束條件,則通過調(diào)整違反約束發(fā)電機組的運行狀態(tài)滿足此項約束條件,即:時,延長發(fā)電機組的運行時間;時,采用將發(fā)電機組違反約束的全部停運狀態(tài)轉(zhuǎn)變?yōu)檫\行狀態(tài)的方式來滿足約束條件,并令相應的出力為機組的最小出力。其中:為機組最小運行時間;為機組最小停運時間; 適度函數(shù)的選取采用個體調(diào)整方法后,在求解的過程中只有發(fā)電機組的最小運行、停運時間約束條件可能得不到滿足。為了加快算法收斂,本文的適度函數(shù)采用如下形式: (23)其中: 為發(fā)電機組違反最小運行或停運時間約束條件時的懲罰量,本文取為機組的啟動成本;為懲罰因子,本文??;為違反此項約束的次數(shù);為正常數(shù),本文取。其含義為:發(fā)電機組違反1次

21、最小運行時間或停運時間約束,便以機組的倍的啟動成本進行懲罰。 選擇復制(1)群體中各個體的選擇概率選擇概率的計算公式為: (24)其中:為第個體的選擇概率為第個個體,即本文中機組各個時段的發(fā)電出力(2)賭輪選擇法賭輪選擇法用下面的子過程來模擬: 在區(qū)間內(nèi)產(chǎn)生一個均勻分布的隨機數(shù); 若,則染色體被選中; 若, 則染色體被選中。其中稱為染色體的積累概率, 其計算公式為 (25) 交叉通過在父代中選擇交配個體后,將準備進行交叉操作的父代個體表示為 (26)交叉操作產(chǎn)生的個體記為、,保留到子代中的個體記為、。本文的交叉操作是在2個父代個體奇數(shù)列與偶數(shù)列之間進行的。具體操作過程為:(1)生成隨機數(shù);生成

22、隨機交叉位。(2)交叉操作生成個體、,其表達式為 (27)(3)對交叉生成的個體依照個體調(diào)整方法進行個體調(diào)整,然后計算出、的適度值。(4)采用局部錦標賽選擇法在父代個體和交叉產(chǎn)生的個體間進行子代選擇,具體方法如下: (28) 變異通過個體交叉后,將準備進行變異的父代個體表示為 (29)變異后產(chǎn)生的個體記為、,保留到子代中的個體記為、。本文只對某列進行變異處理。具體操作過程為:(1) 生成隨機變異因子;生成隨機變異時段;生成隨機變異個體選擇因子(2)變異后生成個體、,其表達式為 (30)(3)對變異后生成的個體依照個體調(diào)整方法進行個體調(diào)整,然后計算出、的適度值。(4)采用局部錦標賽選擇法在父代個

23、體和變異產(chǎn)生的個體間進行子代選擇,具體方法如下: (31) 終止條件遺傳算法的終止條件有兩類常見條件:第一類:采用設(shè)定最大遺傳代數(shù)的方法,一般可設(shè)為50代,此時就可能得出最優(yōu)解。第二類:根據(jù)個體的差異來判斷,通過計算種群中基因多樣性測度,即所有基因位相似程度來進行控制。本文采用第一類方法,將、個體依照個體調(diào)整方法進行個體調(diào)整,然后計算出對應的適度值,直到第代,循環(huán)迭代結(jié)束,輸出最優(yōu)解Tc0。3)模型求解利用窮舉搜索法和遺傳算法可以分別求解問題1和2。問題2利用C+程序?qū)ΩF舉搜索法進行實現(xiàn),然后求解,所得結(jié)果如表二所示。表二 問題二窮舉搜索法求解結(jié)果機組G1機組G2小時1狀態(tài)運行關(guān)機出力(MW)

24、1000備用(MW)10002狀態(tài)運行運行出力(MW)11020備用(MW)90803狀態(tài)運行運行出力(MW)11060備用(MW)90404狀態(tài)運行運行出力(MW)10040備用(MW)10060總成本(¥)6820利用MATLAB程序?qū)z傳進行實現(xiàn),然后求解。由于遺傳算法具有隨機性,所程序每次運行所得的結(jié)果有略微差別,我們從多次運行的解中選取總成本最小的一組機組組合計劃,結(jié)果如表三所示。表三 問題二遺傳算法求解結(jié)果機組G1機組G2小時1狀態(tài)運行關(guān)機出力(MW)1000備用(MW)10002狀態(tài)運行關(guān)機出力(MW)1300備用(MW)7003狀態(tài)運行運行出力(MW)15020備用(MW)50

25、804狀態(tài)運行運行出力(MW)12020備用(MW)8080總成本(¥)6780從問題2兩種算法的求解結(jié)果中我們可以發(fā)現(xiàn),遺傳算法的求解結(jié)果優(yōu)于窮舉搜索法,但遺傳算法有一定的隨機性,有時需多運行幾次才能得到最優(yōu)解。且遺傳算法比窮舉搜索法更容易實現(xiàn)。問題3利用窮舉搜索法和矩陣實數(shù)編碼遺傳算法分別求解問題3。窮舉搜索法求解結(jié)果見附錄三。由于矩陣實數(shù)編碼遺傳算法得到的成本最小值具有一定的隨機性,且隨算法中迭代次數(shù)的變化而變化,所程序每次運行所得的結(jié)果有略微差別。為求得更為精確的結(jié)果,我們變換迭代次數(shù),以判斷迭代多少次為最優(yōu)(這里取30、50、100次的結(jié)果),見圖三、四、五,詳細結(jié)果見附錄四、五圖三

26、 迭代30次的運行結(jié)果圖四 迭代50次的運行結(jié)果圖五 迭代100次的運行結(jié)果我們從多次運行的結(jié)果中選取最優(yōu)機組組合計劃,使用矩陣實數(shù)編碼遺傳算法求得的最優(yōu)解為迭代次數(shù)為50次(總成本、各小時各機組的狀態(tài)、各小時各機組的發(fā)電出力和各小時提供的備用)見附錄五從問題3的求解結(jié)果中,通過不同迭代次數(shù)之間的比較以及窮舉搜索法與矩陣實數(shù)編碼遺傳算法的對比分析,看出矩陣實數(shù)編碼遺傳算法在進行大規(guī)模機組組合問題求解時,具有很強的適應性和全局搜索能力,而且系統(tǒng)規(guī)模越大算法的優(yōu)化結(jié)果越理想。因此,矩陣實數(shù)編碼遺傳算法的求解結(jié)果優(yōu)于窮舉搜索法,但矩陣實數(shù)編碼遺傳算法有一定的隨機性,需多運行幾次才能得到最優(yōu)解。六、模

27、型的改進及評價6.1模型的改進模型改進一:機組組合優(yōu)化模型I與II的改進在機組組合優(yōu)化模型I、II中,通過二次函數(shù)對空載成本和增量成本曲線參數(shù)進行擬合過程中,采用二次函數(shù)擬合誤差比較大(增量成本變化幅度比較?。?,特別是機組規(guī)模比較小的時候更是如此。鑒于此種情況,當機組規(guī)模比較大時,可以采取平滑曲線進行擬合。如問題三,可以利用二次函數(shù)進行擬合,根據(jù)運行結(jié)果可以看出誤差更小,機組啟停更合理,發(fā)電成本更小。此外,當機組規(guī)模相對較小時,可以不進行曲線擬合,直接采取分段函數(shù),編程求解。如問題一和二,利用C+編程,采取窮舉搜索法求解,精度會更高。模型改進二:基于矩陣實數(shù)編碼遺傳算法的改進在矩陣實數(shù)編碼遺傳

28、算法步驟中,根據(jù)實際情況(如機組規(guī)模,時段等問題)可以對各步驟進行優(yōu)化或改進。如變異,本文實在時段內(nèi)列向量進行的,相當于發(fā)電機組在不同時段發(fā)電出力的重新調(diào)整。因此,還可以采用多窗口變異操作【1】。此操作是在個體內(nèi)行向量間進行的,相當于在不同發(fā)電機組間進行發(fā)電出力的重新調(diào)整。此法具有經(jīng)濟負荷分配的功能,并且,由于是同時進行多個時段的負荷分配調(diào)整,故執(zhí)行效率較高。當然,二者相結(jié)合,效果更佳。6.2模型的評價優(yōu)點:第一,提供了一種求解多變量、多約束的混合整數(shù)非線性規(guī)劃的機組組合優(yōu)化問題的思路,此方法新穎可靠易行,極具參考價值。第二,采用MRCGA算法求解機組組合問題的新方法。利用二維實數(shù)矩陣對發(fā)電計

29、劃安排進行編碼,將機組組合問題轉(zhuǎn)化為單層優(yōu)化問題進行求解,因而降低了算法的時間復雜度。運用個體調(diào)整方法處理各項約束條件,確保了優(yōu)化結(jié)果的可行性,使該算法更易于應用實際。第三, 矩陣實數(shù)編碼遺傳算法(MRCGA)適合求解大規(guī)模機組組合問題。通過MATLAB仿真計算、不同迭代次數(shù)比較分析以及同其他方法(如窮舉法)的對比分析,驗證了該方法在進行大規(guī)模機組組合問題求解時,具有很強的適應性和全局搜索能力,而且系統(tǒng)規(guī)模越大算法的優(yōu)化結(jié)果越理想。缺點:第一,采用二次函數(shù)對空載成本和增量成本曲線參數(shù)進行擬合過程中,擬合誤差比較大。特別是機組規(guī)模比較小時更是如此。第二,MRCGA算法對小規(guī)模機組組合問題求解結(jié)果

30、精度不高,誤差大。參考文獻:1 劉瓊蓀,龔劬,何中市,傅鸝,任善強,數(shù)學實驗,北京:高等教育出版社,20042 姜啟源,謝金星,葉俊,數(shù)學模型,北京:高等教育出版社,20063 孫力勇,張焰,蔣傳文,基于矩陣實數(shù)編碼遺傳算法求解大規(guī)模機組組合問題,中國機電工程學報,第26卷(2期),20064 趙東方,數(shù)學模型與計算,北京:科學出版社,2007附錄附錄1 問題1的C+求解程序#include <iostream>#include <fstream>using namespace std;double cost1(double x);double cost2(double

31、 x);int get_total_price();void fun(int i);ofstream fout("11.doc");const int hour = 5;/ 最大出力int pmax2 = 200, 100;/ 最大增出力int pcmax2 = 30, 40;/ 最大減出力int pdmax2 = 50, 60;/ 狀態(tài)int state2hour = 1, 0;/ 負荷int demand5 = 0, 100, 130, 170, 140;/ 啟動費用int start2 = 350, 100;/ 機組各時段狀態(tài)int power25 = 100, 0;

32、/ 系統(tǒng)備用要求int b_powerhour = 0, 20, 30, 50, 40;/ 最小費用int minprice = 9999999;int main()fun(1);return 0;/ 機組1成本double cost1(double x)if (x <= 100)return 100 + 10*x;elsereturn 14*x - 300;/ 機組2成本double cost2(double x)if (x <= 60)return 12*x + 200;elsereturn 15*x + 20;/ 總成本int get_total_price()int i =

33、 0, j;double price = 0;for (j = 1; j < hour; j+)price += stateij*cost1(powerij)+ stateij*(1-stateij-1)*starti;i = 1;for (j = 1; j < hour; j+)price += stateij*cost2(powerij)+ stateij*(1-stateij-1)*starti;minprice = (minprice > price ? price: minprice);/cout << minprice << "

34、"fout << minprice << " "return price;void fun(int i)for (int j = -50; j <= 30; j+= 1)/ 機組1power0i = power0i-1 + j;/ 機組1出力范圍約束if (power0i < 0 | power0i > 200)continue;/ 機組1增出力和減出力約束if ( (power0i-power0i-1) > pcmax0) && (power0i > power0i-1) | (power0i

35、-1-power0i) > pdmax0) && (power0i-1 > power0i)continue;/ 機組2/ 負荷平衡約束power1i = demandi - power0i;/ 機組2出力范圍約束if (power1i < 0 | power1i > 100)continue;/ 機組2增出力和減出力約束if ( (power1i-power1i-1) > pcmax1) && (power1i > power1i-1)|(power1i-1-power1i) > pdmax1) &&

36、(power1i-1 > power1i)continue;/ 機組1狀態(tài)if (power0i > 0)state0i = 1;elsestate0i = 0;/ 機組2狀態(tài)if (power1i > 0)state1i = 1;elsestate1i = 0;/ 系統(tǒng)備用約束int bei = 0;int k = 0;for ( k = 0; k < 2; k+)bei += stateki * (pmaxk - powerki);if (bei < b_poweri)continue;if (i = hour - 1)/cout << get_t

37、otal_price() << " "/for (k = 0; k < hour; k+)/cout << power0k << "-" << power1k << " "/cout << endl;fout << get_total_price() << " "for (k = 0; k < hour; k+)fout << power0k << "-" <

38、< power1k << " "fout << endl;else/ 繼續(xù)遞歸求解fun(i + 1);附錄22.1 初始化個參數(shù)% IEEE118BusData 遺傳算法計算%分段增量總發(fā)電量 54*5rp = 10 15 20 25 3010 15 20 25 3010 15 20 25 30180 210 240 270 300140 180 220 260 30014 18 22 26 3040 55 70 85 10010 15 20 25 3010 15 20 25 30140 180 220 260 300150 200 250

39、300 35012.4 16.8 21.2 25.6 3012.4 16.8 21.2 25.6 3040 55 70 85 10012.4 16.8 21.2 25.6 3040 55 70 85 10012.4 16.8 21.2 25.6 3012.4 16.8 21.2 25.6 3040 55 70 85 10090 130 170 210 25090 130 170 210 25040 55 70 85 10040 55 70 85 10080 110 140 170 20080 110 140 170 20040 55 70 85 100164 228 292 356 42016

40、4 228 292 356 420124 168 212 256 30040 50 60 70 8014 18 22 26 3010 15 20 25 308 11 14 17 2040 55 70 85 10040 55 70 85 100180 210 240 270 30040 55 70 85 10014 18 22 26 30140 180 220 260 30080 110 140 170 20010.4 12.8 15.2 17.6 2026 32 38 44 50140 180 220 260 300140 180 220 260 300140 180 220 260 3001

41、0.4 12.8 15.2 17.6 2040 55 70 85 10040 55 70 85 10010.4 12.8 15.2 17.6 2030 35 40 45 5040 55 70 85 10040 55 70 85 10040 55 70 85 10030 35 40 45 50;% 分段增量總成本 54*5cp = 26.94 27.985 28.682 29.379 30.07526.94 27.985 28.682 29.379 30.07526.94 27.985 28.682 29.379 30.07514.845 17.129 17.781 18.434 19.0861

42、4.41 16.368 17.238 18.108 18.97827.219 28.473 29.03 29.588 30.14518.332 19.036 19.42 19.804 20.18826.94 27.985 28.682 29.379 30.07526.94 27.985 28.682 29.379 30.07514.41 16.368 17.238 18.108 18.97811.21 11.81 12.11 12.41 12.7127.108 28.278 28.891 29.504 30.11727.108 28.278 28.891 29.504 30.11718.332

43、 19.036 19.42 19.804 20.18827.108 28.278 28.891 29.504 30.11718.332 19.036 19.42 19.804 20.18827.108 28.278 28.891 29.504 30.11727.108 28.278 28.891 29.504 30.11718.332 19.036 19.42 19.804 20.18812.546 12.858 13.05 13.242 13.43512.546 12.858 13.05 13.242 13.43518.332 19.036 19.42 19.804 20.18818.332

44、 19.036 19.42 19.804 20.18813.642 14.126 14.39 14.654 14.91813.642 14.126 14.39 14.654 14.91818.332 19.036 19.42 19.804 20.18810.076 12.491 13.846 15.202 16.55710.076 12.491 13.846 15.202 16.55714.236 16.063 17.02 17.977 18.93417.308 19.604 20.522 21.441 22.35927.219 28.473 29.03 29.588 30.14526.94

45、27.985 28.682 29.379 30.07537.923 38.235 38.404 38.574 38.74418.332 19.036 19.42 19.804 20.18818.332 19.036 19.42 19.804 20.18814.845 17.129 17.781 18.434 19.08618.332 19.036 19.42 19.804 20.18827.219 28.473 29.03 29.588 30.14511.18 11.72 11.96 12.2 12.4413.758 14.954 15.606 16.259 16.91137.991 38.3

46、53 38.489 38.625 38.76123.196 23.509 23.626 23.744 23.86114.41 16.368 17.238 18.108 18.97814.41 16.368 17.238 18.108 18.97814.41 16.368 17.238 18.108 18.97837.991 38.353 38.489 38.625 38.76118.332 19.036 19.42 19.804 20.18818.332 19.036 19.42 19.804 20.18837.991 38.353 38.489 38.625 38.76123.235 23.

47、578 23.675 23.773 23.87118.332 19.036 19.42 19.804 20.18818.332 19.036 19.42 19.804 20.18818.332 19.036 19.42 19.804 20.18823.235 23.578 23.675 23.773 23.871;% 發(fā)電機組的空載成本 54*1load0 = 31.6731.6731.676.786.7831.6710.1531.6731.676.7832.9631.6731.6710.1531.6710.1531.6731.6710.15282810.1510.15393910.1564.

48、1664.166.7874.3331.6731.6717.9510.1510.156.7810.1531.6732.966.7817.9558.816.786.786.7817.9510.1510.1517.9558.8110.1510.1510.1558.81;%1*54 發(fā)電機組的最小出力P_MIN=5 5 5 150 100 10 25 5 5 100 100 8 8 25 8 25 8 8 25 50 50 25 25 50 50 25 100 100 80 30 10 5 5 25 25 150 25 10 100 50 8 20 100 100 100 8 25 25 8 25 25 25 25 25;%1*54 發(fā)電機組的最大出力P_MAX=30 30 30 300 300 30 100 30 30 300 350 30 30 100 30 100 30 30 100 250 250 100 100 200 200 100 420 420 300 80 30 30

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論