專利名稱::動(dòng)態(tài)經(jīng)濟(jì)負(fù)荷分配的制作方法
技術(shù)領(lǐng)域:
:各種實(shí)施方案涉及發(fā)電機(jī)組,并且在一個(gè)實(shí)施方案中,但不是為了限制,涉及一種用于在多個(gè)發(fā)電機(jī)組中分配輸出的系統(tǒng)和方法。
背景技術(shù):
:經(jīng)濟(jì)負(fù)荷分配(ELD)算法尋求在幾個(gè)發(fā)電機(jī)組中分配電力輸出,用于以最小成本匹配用戶負(fù)荷需求。ELD是改進(jìn)發(fā)電站運(yùn)行效率的一個(gè)重要的最優(yōu)化問題,當(dāng)通過一組交易的凈和確定發(fā)電廠的負(fù)荷需求曲線時(shí)尤其是這樣。當(dāng)分配問題涉及單個(gè)時(shí)間間隔時(shí),它被稱為靜態(tài)經(jīng)濟(jì)負(fù)荷分配(SELD)。當(dāng)分配問題涉及與負(fù)荷預(yù)測(cè)相關(guān)聯(lián)的有限數(shù)量的分配時(shí)間間隔,以提供跟蹤變化負(fù)荷需求的最佳生成軌跡時(shí),它被稱為一個(gè)動(dòng)態(tài)經(jīng)濟(jì)負(fù)荷(DELD)問題。比較這二者,DELD在所有發(fā)電機(jī)和所有時(shí)間間隔上提供更經(jīng)濟(jì)的解決方案。然而,DELD由于電力系統(tǒng)的動(dòng)態(tài)特性和用戶負(fù)荷需求的巨大變化而長期被認(rèn)為是一個(gè)困難的動(dòng)態(tài)規(guī)劃問題。通常通過將整個(gè)分配時(shí)間段分成許多小時(shí)間間隔而解決動(dòng)態(tài)問題,在這些小時(shí)間段中負(fù)荷被認(rèn)為是不變的,并且該系統(tǒng)被認(rèn)為是處于暫時(shí)穩(wěn)定狀態(tài)。為了獲得在電力系統(tǒng)運(yùn)行中全面減少成本,應(yīng)該根據(jù)當(dāng)時(shí)的靜態(tài)約束和一系列時(shí)間附屬動(dòng)態(tài)約束所增加的額外約束而經(jīng)濟(jì)地分配單獨(dú)的靜態(tài)時(shí)間間隔。由于這些約束,最優(yōu)化搜索空間很窄并且不均勻,而因此挑戰(zhàn)了所有設(shè)法迅速準(zhǔn)確找到最佳分配解決方案的算法。盡管許多方法諸如神經(jīng)網(wǎng)絡(luò)和進(jìn)化程序已經(jīng)被使用以便解決SELD問題,但是僅有二次規(guī)劃和進(jìn)化計(jì)算方法己經(jīng)被用于解決DELD問題。除了進(jìn)化方法,所有這些數(shù)值法都假定每個(gè)機(jī)組的燃料費(fèi)函數(shù)是單調(diào)遞增的,并且能通過分段線形方程或二次方程表示。不幸地是,由于包括不平滑和非凸燃料費(fèi)函數(shù)、斜率限制以及不連續(xù)禁忌操作域的非線性特征,在現(xiàn)實(shí)實(shí)際系統(tǒng)中不是這種情況。當(dāng)解決DELD問題時(shí),即使進(jìn)化方法也有問題。例如,為了滿足許多靜態(tài)和動(dòng)態(tài)約束,進(jìn)化方法向與違反解決方案的約束相應(yīng)的個(gè)體分配非常低的適合度,并且因而導(dǎo)致非常低的生存機(jī)會(huì),或直接地規(guī)定該個(gè)體在總體之外。該類處罰嚴(yán)重地限制了個(gè)體與數(shù)據(jù)組世代之間分享信息。因此,高百分比的個(gè)體在他們能為進(jìn)化做出貢獻(xiàn)之前即被排除。這使該算法效率降低。圖1說明了負(fù)荷需求曲線的例子。圖2說明了負(fù)荷分配曲線的例子。圖3說明了包括禁忌操作域的燃料費(fèi)函數(shù)的例子。圖4說明了組成遺傳算法個(gè)體的表示法。圖5說明了使用約束遺傳算法在發(fā)電機(jī)組之間分配輸出的過程的示例實(shí)施方案。圖6說明了使用約束遺傳算法在發(fā)電機(jī)組之間分配輸出的過程的另一示例實(shí)施方案。圖7說明了在兩個(gè)個(gè)體之間交叉的例子。圖8說明了負(fù)突變的例子。圖9說明了本公開的一個(gè)或多個(gè)實(shí)施方案可在上面工作的計(jì)算機(jī)結(jié)構(gòu)的示例實(shí)施方案。
發(fā)明內(nèi)容在一個(gè)實(shí)施方案中,系統(tǒng)和方法提供了對(duì)遺傳算法的約束,并且還向遺傳算法提供了動(dòng)態(tài)規(guī)劃能力。然后該系統(tǒng)和方法在有限數(shù)量的時(shí)間間隔上,在許多發(fā)電機(jī)組之間,以遺傳算法和遺傳算法的動(dòng)態(tài)規(guī)劃能力的約束的函數(shù)的方式分配負(fù)荷需求。具體實(shí)施方案在下面詳細(xì)描述中,為了說明,參考了可以實(shí)踐本發(fā)明的特定實(shí)施方案的所示附圖。充分詳細(xì)地描述了這些實(shí)施方案,以使本領(lǐng)域的技術(shù)人員能實(shí)踐本發(fā)明。應(yīng)該理解的是,本發(fā)明的不同實(shí)施方案盡管不同,但不必相互排斥。此外,在不違背本發(fā)明的范圍的情況下,可以在其它實(shí)施方案中實(shí)現(xiàn)在此所描述的與一個(gè)實(shí)施方案相關(guān)的特定特征、結(jié)構(gòu)、或特性。此外,應(yīng)該理解的是,在不違背本發(fā)明的范圍的情況下,可以改變每個(gè)所公開的實(shí)施方案中的個(gè)體元件的位置或排列。因而下面詳細(xì)描述沒有限制的意思,并且僅僅通過附加權(quán)利要求與權(quán)利要求所能享受的等價(jià)物的全部范圍一起定義、適當(dāng)?shù)亟忉尡景l(fā)明的范圍。在附圖中,貫穿這些視圖,相同的數(shù)字指代相同或類似功能。本發(fā)明的實(shí)施方案包括包含在通過機(jī)器可讀介質(zhì)所提供的機(jī)器可執(zhí)行指令中的特征、方法或過程。機(jī)器可讀介質(zhì)包括以機(jī)器(例如,計(jì)算機(jī)、網(wǎng)絡(luò)設(shè)備、個(gè)人數(shù)字助理、制造工具、具有一組一個(gè)或多個(gè)處理器的任何設(shè)備等)可訪問的形式提供(即,存儲(chǔ)和/或傳送)信息的任何機(jī)械裝置。在示例性實(shí)施方案中,機(jī)器可讀介質(zhì)包括易失性和/或非易失性介質(zhì)(例如,只讀存儲(chǔ)器(ROM)、隨機(jī)訪問存儲(chǔ)器(RAM)、磁盤存儲(chǔ)介質(zhì)、光盤存儲(chǔ)介質(zhì)、閃存設(shè)備等)、以及電、光、聲或其它形式的傳播信號(hào)(例如,載波、紅外線信號(hào)、數(shù)字信號(hào)等)。利用這樣的指令以使指令編程的通用或?qū)S媚康奶幚砥鲌?zhí)行本發(fā)明的實(shí)施方案的方法或過程。作為替代的,通過包含用于執(zhí)行操作的硬件邏輯的特定硬件部件、或通過編程數(shù)據(jù)處理部件和特定硬件部件的任何組合執(zhí)行本發(fā)明的實(shí)施方案的特征或操作。本發(fā)明的實(shí)施方案包括這里還描述的數(shù)字/模擬信號(hào)處理系統(tǒng)、軟件、數(shù)據(jù)處理硬件、數(shù)據(jù)處理系統(tǒng)實(shí)現(xiàn)方法、以及各種處理操作。一些圖示出了本發(fā)明的實(shí)施方案的系統(tǒng)和裝置的框圖。一些圖示出了用以說明用于這些實(shí)施方案的系統(tǒng)和裝置的流程圖。將參考框圖中所示的系統(tǒng)/裝置描述流程圖的操作。然而,應(yīng)該理解的是,可以通過系統(tǒng)和裝置的實(shí)施方案執(zhí)行流程圖的操作,而不是參考附圖所討論的操作,并且參考該系統(tǒng)/裝置所討論的實(shí)施方案可以執(zhí)行不同于參考流程圖所討論的操作。在實(shí)施方案中,當(dāng)燃料費(fèi)函數(shù)既不是平滑的也不是凸起的時(shí)候,并且當(dāng)存在四類約束時(shí),約束遺傳算法(CGA)進(jìn)行動(dòng)態(tài)經(jīng)濟(jì)負(fù)荷分配(DELD)是可行的。第一約束是負(fù)荷需求與所有發(fā)電機(jī)輸出的總數(shù)是相等的。第二約束是每個(gè)發(fā)電機(jī)組具有輸出上限和下限。第三約束是對(duì)發(fā)電機(jī)組的加速和減速速率的限制。第四并且是最后的約束包括發(fā)電機(jī)組的禁忌操作域。發(fā)明者已發(fā)現(xiàn)傳統(tǒng)的遺傳算法不能解決DELD問題的原因是它的遺傳操作通過逐位的方式影響所給定的個(gè)體,并且不能將這些改變調(diào)整到包括在某些動(dòng)態(tài)關(guān)系中的所有位。因?yàn)橹T如初始化、交叉、以及突變等遺傳操作是固有地不能處理動(dòng)態(tài)約束,所以傳統(tǒng)遺傳算法不能解決DELD問題。他們通過逐個(gè)間隔的方式影響給定的個(gè)體或解決方案,而不關(guān)心所關(guān)注的時(shí)間間隔之前和之后出現(xiàn)的時(shí)間間隔,并且不能調(diào)整對(duì)于某些動(dòng)態(tài)關(guān)系中必須包括的所有時(shí)間間隔發(fā)生的改變。CGA通過下列改變而解決該問題。首先,嚴(yán)重地約束初始化、交叉、以及突變操作使所有進(jìn)化個(gè)體(或解決方案)在可行域內(nèi)或附近。其次,偏移和試探式初始化確保一個(gè)真實(shí)的多樣化初始群體。第三,對(duì)于交叉的可行性位置選擇適應(yīng)動(dòng)態(tài)約束。第四,正和負(fù)突變操作保存燃料費(fèi)并且獲得負(fù)荷相等。CGA自身可以解決所有四類這些約束,而不用包括額外最優(yōu)化方法,諸如二次規(guī)劃。CGA是靈活的,并且可以被改變以適應(yīng)更多約束,諸如發(fā)電機(jī)的預(yù)定在線或離線狀態(tài)、發(fā)電機(jī)的各種最小和最大輸出、以及發(fā)電機(jī)的各種加速和減速速率。此外,CGA能夠以并行模式運(yùn)行,以更加加速優(yōu)化過程。本公開為諸如電力生產(chǎn)發(fā)電廠之類的發(fā)電機(jī)組提供了CGA,以解決DELD問題。CGA確定發(fā)電機(jī)輸出的最佳時(shí)間表,從而以最小生產(chǎn)成本滿足負(fù)荷需求,并且還滿足系統(tǒng)與操作條件施加的各種約束。嚴(yán)重地約束CGA的初始化、交叉、以及突變,從而使所有進(jìn)化個(gè)體在可行域內(nèi)或附近。這使DELD在每個(gè)發(fā)電機(jī)組的燃料費(fèi)函數(shù)既不平衡也不凸起時(shí)可行,并且存在一個(gè)或多個(gè)下面約束負(fù)荷需求與發(fā)電機(jī)輸出的總和必須相等,對(duì)于每個(gè)發(fā)電機(jī)組存在上限和下限,對(duì)加速和減速速率存在某些限制,以及存在禁忌操作域。例如,如果將24小時(shí)負(fù)荷需求(圖1中所說明的例子)被分成等時(shí)間間隔At(每個(gè)時(shí)間間隔等于15分鐘)的T(例如T二96)塊,并且存在N個(gè)發(fā)電機(jī)組,然后給定第i個(gè)(i二l,2,…,N)發(fā)電機(jī)組以及它的最大和最小輸出,第i個(gè)發(fā)電機(jī)組的加速和減速速率分別是《,、f■、W,、W,。該機(jī)組將具有Z,不重疊禁忌操作域(POZ)(^-(/^^/^^("^.."Z,,4",iW,/代表第l個(gè)P0Z的最小和最大輸出));/^=1,2,...,7)代表它的在時(shí)間間隔t的輸出,并且P,。是它的初始輸出;并且C,(《)代表當(dāng)它的輸出功率是/T時(shí)的燃料消耗率。如果"'代表在時(shí)間間隔t時(shí)的負(fù)荷需求,則^表示所有T時(shí)間間隔期間N發(fā)電機(jī)組的燃料費(fèi)。于是動(dòng)態(tài)負(fù)荷經(jīng)濟(jì)分配問題可以公式化為最小化<formula>formulaseeoriginaldocumentpage8</formula>服從a)負(fù)荷相等約束<formula>formulaseeoriginaldocumentpage9</formula>b)功率輸出的上限和下限-<formula>formulaseeoriginaldocumentpage9</formula>c)加速/減速<formula>formulaseeoriginaldocumentpage9</formula>d)禁忌操作域<formula>formulaseeoriginaldocumentpage9</formula>因?yàn)橛捎诩铀俸蜏p速速率的限制發(fā)電機(jī)組在一個(gè)時(shí)間間隔(AO內(nèi)不能完全通過P0Z的可能性很大,所以只要工作在P0Z中的任何機(jī)組的時(shí)間間隔的總數(shù)是最小的,允許所分配的負(fù)荷是在POZ中。因而,約束(d)可被改變?yōu)?e)弱形式的禁忌操作域最小化<formula>formulaseeoriginaldocumentpage9</formula>在該約束中,r皿是對(duì)于工作在poz中的任何發(fā)電機(jī)的時(shí)間間隔的總數(shù),并且l卜l計(jì)算給定集合的基數(shù)(cardinality)(成員數(shù))。解決DELD問題中的二次規(guī)劃(QP)的限制使遺傳算法(GA)更具選擇性。對(duì)于該優(yōu)點(diǎn)的一個(gè)原因是GA可以使用任何形式的燃料費(fèi)函數(shù)(圖1中說明了其中一個(gè)例子),可以考慮各種約束,不需要最優(yōu)化的起始點(diǎn),具有脫離局部最小值的更高機(jī)會(huì),可以以并行模式運(yùn)行,并且可能具有更短運(yùn)行時(shí)間。然而,如先前所提到的,原始GA在沒有QP幫助的情況下不能解決DELD問題,并且QP具有它自身的限制。發(fā)明者已發(fā)現(xiàn)失敗的根本原因是遺傳操作,諸如初始化、交叉、以及突變等是固有地不能處理動(dòng)態(tài)約束。它們以逐個(gè)間隔的方式影響給定的個(gè)體或解決方案,而在被考慮的時(shí)間間隔之前或之后不處理時(shí)間間隔。因此,在必須包含在某些動(dòng)態(tài)關(guān)系中的所有時(shí)間間隔發(fā)生的所有改變中不存在調(diào)整。通過該發(fā)現(xiàn)的試探,發(fā)明者通過對(duì)原始GA做出關(guān)鍵改變而設(shè)計(jì)了約束遺傳算法(CGA)。例如,如果CGA具有大小為L的群體,"生活"在群體中的每個(gè)個(gè)體代表負(fù)荷分配的特定解決方案。在圖2中說明了負(fù)荷分配的解決方案的圖例。圖4說明了第k(bl,2,,L)個(gè)個(gè)體的結(jié)構(gòu),并且在圖4中,《代表在時(shí)間間隔t分配給第i個(gè)發(fā)電機(jī)組的負(fù)荷。以下列方式估計(jì)第k個(gè)個(gè)體的適合度:.(/賺+A)-A。s,W<table>tableseeoriginaldocumentpage10</column></row><table>(2)這里U"表示解決方案的全部燃料費(fèi),/;,-min(U力),并且=maX(/cos,(;)),y/=1,2,…,丄。表達(dá)式A〉0保證(0,1)內(nèi)的每個(gè)個(gè)體的適合度,從而每個(gè)個(gè)體在進(jìn)化中具有非零的選擇機(jī)會(huì)。于是如下計(jì)算全部燃料費(fèi)<formula>formulaseeoriginaldocumentpage10</formula>(6)其中c^0是當(dāng)解決方案破壞約束a(負(fù)荷相等)時(shí)的處罰因子,并且;^)是用于破壞約束e(弱形式中的P0Z)的處罰函數(shù)。因子;7(*)隨著負(fù)荷分配接近P0Z中心而增加處罰值。應(yīng)該由用戶根據(jù)每個(gè)特定條件的需要確定M,)中的"和^值。值得注意的是不同于基于遺傳算法的傳統(tǒng)方法,在適合度函數(shù)中包含處罰因子不是CGA使所有解決方案在可行域內(nèi)或附近所使用的唯一方法。在圖5中說明了CGA500的示例實(shí)施方案。在圖5中,在510,通過偏移和試探式初始化群體。在520,交叉操作被施用于根據(jù)遺傳算法"輪盤賭"策略從群體中所選擇的^7V(《是交叉概率)對(duì)個(gè)體或"父"。在530,復(fù)制使個(gè)體具有最高適合度,并且根據(jù)"輪盤賭"策略從群體中選擇剩余的N-l個(gè)個(gè)體,并且將其放到下一代中。在540,突變操作被施用根據(jù)"輪盤賭"策略從群體中選擇的i^xTV(是突變概率)個(gè)個(gè)體。在550,如果重復(fù)數(shù)大于最大代數(shù)G(由用戶預(yù)定),則停止進(jìn)化,并且過程500將最佳個(gè)體導(dǎo)出為在560的最終解決方案。如果沒有達(dá)到代的最大數(shù),則過程轉(zhuǎn)到塊520。盡管過程500類似于標(biāo)準(zhǔn)GA的過程,但是在CGA中設(shè)計(jì)了新的初始化、交叉、以及突變操作,以使最優(yōu)化問題可以解決。圖6說明了適用于在發(fā)電機(jī)組之間經(jīng)過有限數(shù)量的時(shí)間間隔分配負(fù)荷需求的CGA600的另一示例實(shí)施方案。在605,在遺傳算法上提供約束和動(dòng)態(tài)規(guī)劃能力。如在610、612、和614中所指出的,對(duì)初始化、交叉、以及突變操作做出改變。在620,對(duì)初始化操作的改變可以包括提供偏移和試探式的初始化。如在621-625中所描述的,一個(gè)分配解決方案的偏移與試探式初始化可以包括在621向在禁忌操作域中操作的發(fā)電機(jī)組分配最高優(yōu)先權(quán);在622向隨機(jī)選擇的發(fā)電機(jī)組分配普通優(yōu)先權(quán);在623向剩余發(fā)電機(jī)組分配最低優(yōu)先權(quán);在624根據(jù)優(yōu)先權(quán)列表重復(fù)地選擇發(fā)電機(jī)組;以及在625向那個(gè)發(fā)電機(jī)組分配未完成的負(fù)荷需求,而不破壞一個(gè)或多個(gè)約束。在630,對(duì)交叉操作的改變可以包括為交叉選擇可行位置,以適應(yīng)動(dòng)態(tài)約束。對(duì)突變操作的改變包括在631試探式地維持可能突變點(diǎn)的位置;在632提供正突變操作,以在634降低燃料費(fèi);以及在633提供負(fù)突變操作,以在635釋放以前和/或較晚的時(shí)間間隔,從而能夠在突變點(diǎn)出現(xiàn)需求與分配的相等。在632的正突變僅僅能夠影響在634的單個(gè)時(shí)間間隔,并且在636包括離散的搜索策略,以搜索更好的分配解決方案。對(duì)于在633的負(fù)突變操作,它的在635的釋放操作包括在637保守的釋放操作和在638積極的釋放操作。保守的釋放操作僅僅在639影響一次,并且包括在641的離散搜索策略,以搜索更好的分配解決方案。積極的釋放操作可以在640影響多個(gè)時(shí)間間隔并且可以在一個(gè)或多個(gè)時(shí)間間隔破壞負(fù)荷相等。在650-653,施加在遺傳算法上的約束可以包括一個(gè)或多個(gè)等于發(fā)電機(jī)輸出總和的負(fù)荷需求、發(fā)電機(jī)組的上下限、加速和減速速率限制、以及建立一個(gè)或多個(gè)禁忌域。在660,優(yōu)秀(即,最佳)解決方案和其它通過輪盤賭策略選擇的解決方案被復(fù)制到下一代的群體。最后,在665,在達(dá)到最大代數(shù)的基礎(chǔ)上獲得解決方案。重新參考圖5,在初始化步驟510中,幾乎所有用于ELD的基于GA方法將通過隨機(jī)地在所有發(fā)電機(jī)組之間分配負(fù)荷需求而初始化新個(gè)體。然而,這種方式生成的新個(gè)體可能導(dǎo)致對(duì)于進(jìn)化不利的起始點(diǎn),這是因?yàn)樗鼈冎械亩鄶?shù)可能嚴(yán)重地破壞這里所施加的約束。為了減輕該問題,CGA以偏移和試探式的方式初始化個(gè)體。也就是說,對(duì)于每個(gè)時(shí)間間隔,將根據(jù)優(yōu)先權(quán)列表重復(fù)地選擇一個(gè)發(fā)電機(jī),并且向它分配未完成的負(fù)荷需求。這里所使用的優(yōu)先權(quán)列表向工作在POZ中的機(jī)組分配最高優(yōu)先權(quán),向初始化之前隨機(jī)選擇的優(yōu)選機(jī)組分配普通優(yōu)先權(quán),并且向剩余機(jī)組分配最低優(yōu)先權(quán)。為了不破壞約束b和C,所選擇的發(fā)電機(jī)可以自身決定接受負(fù)荷的可行和隨機(jī)部分,而不是完全地被動(dòng)接收器。既然由于動(dòng)態(tài)約束,不總是滿足負(fù)荷相等約束,所以在重復(fù)一定數(shù)量的次數(shù)之后停止重復(fù)。所有初始化的個(gè)體肯定會(huì)完成約束b和C兩者。詳細(xì)的初始化過程的例子如下1.設(shè)置時(shí)間間隔t:O,并且隨機(jī)地生成E、優(yōu)選機(jī)組的子集2.使t二t+l;《=《7'(當(dāng)t二l時(shí),;AD'=D'-£'-'(當(dāng)t二l時(shí),AD'=D'-。設(shè)置重復(fù)次數(shù)j二O。如果AD、0,則設(shè)置變量NeedDisturbance=FALSE;否則AD"5(5〉0是很小的隨機(jī)值)并且NeedDisturbance=trLie。3.使j二j+l,并且如果在該時(shí)間間隔期間存在工作在POZ中未被選擇為負(fù)荷分配的機(jī)組,則隨機(jī)地從它們中選擇一個(gè)機(jī)組。否則,如果j是很小值,則從E選擇一個(gè)機(jī)組,或者如果j足夠大,則從所有N機(jī)組選擇一個(gè)。為了實(shí)現(xiàn)該例子的目的,假設(shè)所選擇的機(jī)組是第i個(gè)。4.選擇^=^(zl〉l是隨機(jī)值),并且如果《+Ad破壞b和c約義束之一或全部,則將^截取到滿足約束b和c兩者。5.設(shè)置《=《+^,AD'-AD'-.如果j《J(J是重復(fù)次數(shù)的上限)并且Iad'卜o,并且轉(zhuǎn)到步驟3。6.如果NeedDisturbance=FALSE并且t《T,轉(zhuǎn)到步驟2;如果NeedDisturbance=TRUE,則設(shè)置j二0,ad'=-5,并且NeedDisturbance=FALSE,并且轉(zhuǎn)到步驟3。否則,終止初始化。當(dāng)負(fù)荷需求從先前時(shí)間間隔(AD'=0)起保持相同時(shí),使用干擾項(xiàng)5(首先設(shè)置ad^&〉0并且隨后設(shè)置ad'-4),以使步驟3至5有效。這使得破壞約束e可被避免。在傳統(tǒng)的GA中,兩個(gè)個(gè)體之間的交叉可能發(fā)生在一個(gè)(單點(diǎn)交叉)或幾個(gè)(多點(diǎn)交叉)隨機(jī)選擇的位置。然而,為了實(shí)現(xiàn)動(dòng)態(tài)約束,本發(fā)明公開的實(shí)施方案允許CGA的交叉只發(fā)生在可行位置(見圖7)。為了簡化下面的描述,用于在第j時(shí)間間隔的第k個(gè)個(gè)體的負(fù)荷分配被表示為<formula>formulaseeoriginaldocumentpage13</formula>定義l:給定個(gè)體對(duì)分別地/《4,…,^',丄),^,…,丄)〉以及w《C…,d《'…,《>,如果/'"丄),…,丄fu),《',…,z::>并且附',^,zf…,巧>可實(shí)現(xiàn)約束c,則時(shí)間間隔j是可行位置。CGA的交叉操作被如下定義(假定交叉的兩個(gè)參與者分別是f和m):1.搜索所有可行位置;假定總共存在F可行位置;如果F二O,則退出;2.隨機(jī)地選擇n《F交叉點(diǎn),并且將T時(shí)間間隔劃分到至多n+l段。通過從f和m交替地復(fù)制這些段而生成第一子個(gè)體,并且通過從m和f交替地復(fù)制這些段而生成第二子個(gè)體;3.將兩個(gè)新個(gè)體保存回群體(在交叉后將擴(kuò)大群體,并且在復(fù)制后恢復(fù)它的原始大小)。作為例子,假定在步驟2中存在2個(gè)選擇的可行位置,其是"乂2},并且1<。<a2<r。這兩個(gè)可行位置將T時(shí)間間隔分成3段[U,],[q+l^],[f2+i,r]。那么第一子個(gè)體將是<11/.,...,£).,《1,化,'廣..,《>并且第二子個(gè)體是<《"..,化,丄〉+',...,丄),化+'"..,《>。在下文中,將示出通過CGA的交叉操作所生成的新個(gè)體不破壞動(dòng)態(tài)約束c。由于在交叉后將生成兩個(gè)子個(gè)體,所以在不損失一般性的情況下可以只考慮它們中的一個(gè)。首先證明在連接點(diǎn)將不發(fā)生破壞。假定在步驟2中所選擇的兩個(gè)連續(xù)段是[仏+U,]和[《+l,r,+,](仏,^,r,+,是所選擇的可行位置),并且。是這種情況下的連接點(diǎn)。然后s是與新個(gè)體上的上述段相應(yīng)的部分。兩個(gè)段的串聯(lián)可能導(dǎo)致在接近連接點(diǎn)4和/T的兩個(gè)時(shí)間間隔破壞約束c。由于^是可行位置,根據(jù)定義l,S中4和化+1都不會(huì)破壞約束c。由于父個(gè)體總是在所有時(shí)間間隔實(shí)現(xiàn)約束c,所以在不受串聯(lián)影響的時(shí)間間隔總是都能滿足兩個(gè)約束。結(jié)果,新生成的個(gè)體將不破壞約束c。在傳統(tǒng)的GA中,突變操作將從給定個(gè)體隨機(jī)地選擇一個(gè)或幾個(gè)突變點(diǎn)并以某種方式干擾這些點(diǎn)上的值。然而,這些干擾可能很容易導(dǎo)致一個(gè)或多個(gè)約束的新的破壞。為了避免這一點(diǎn),CGA設(shè)計(jì)了兩類突變操作。"正"突變操作和"負(fù)"突變操作。當(dāng)應(yīng)用于單一突變點(diǎn),前者盡力降低那個(gè)時(shí)間間隔的燃料費(fèi),并且如果在那個(gè)時(shí)間間隔約束a被破壞,則同時(shí)減輕負(fù)荷差異,而后者只針對(duì)在那個(gè)間隔滿足負(fù)荷相等,通過釋放以前和/或較晚間隔以便為那個(gè)間隔保存更多可調(diào)整空間。由于新突變操作比傳統(tǒng)操作消耗更多時(shí)間,而不是同傳統(tǒng)GA中一樣隨機(jī)選擇,所以CGA選擇能夠滿足下面標(biāo)準(zhǔn)的任何一個(gè)的時(shí)間間隔作為突變點(diǎn)1)它在以前生成期間直接地被改變,但還沒有突變;2)它通過正操作已突變,并且在那個(gè)間隔的燃料費(fèi)降低了;3)它通過負(fù)操作已突變,但還沒有滿足約束a;4)它直接接近所改變的間隔,但還沒有突變。如果不滿足下面標(biāo)準(zhǔn)的任何一個(gè),則將取消突變點(diǎn)1)它通過正操作已突變,但是不能降低燃料費(fèi),并且己滿足約束a;2)它通過負(fù)操作已突變,并且滿足約束a。在個(gè)體初始化期間,將把所有時(shí)間間隔設(shè)置為突變點(diǎn),即使在進(jìn)化期間將取消它們中的某些。然而,交叉點(diǎn)、在突變中包括的和影響的間隔、以及直接接近它們的間隔可以變成新突變點(diǎn)。突變點(diǎn)的更新真正地將優(yōu)化的成果帶到了需要進(jìn)一步優(yōu)化以及還可以被進(jìn)一步優(yōu)化的時(shí)間間隔。正突變的主要目的是降低突變點(diǎn)的燃料費(fèi),并且同時(shí),如果在那個(gè)間隔破壞了約束a,則減輕負(fù)荷差異。例如,假定考慮的第k個(gè)個(gè)體和突變點(diǎn)是在第j個(gè)間隔,用于該間隔的原始負(fù)荷分配解決方案是丄i給定點(diǎn)的正突變?cè)谙旅孢^程中發(fā)生2)如果。=0,則終止該搜索過程;否則,隨機(jī)地從Q選擇一個(gè)元q,并且使2=,};3)根據(jù)約束b和c,為q決定可行域^/,,j,如果域的大小足夠大,則生成一組m(m是(1,M]中的隨機(jī)數(shù),并且M是預(yù)定的最大搜索步—w—/驟)可行點(diǎn)F-",,&,…^J,從而"<巧=并且5;7-、-1=^~fW—l(p二2,3,…m);設(shè)置搜索步驟i:0,e。s,(Z{);4)i=i+l;如果i〉m,則返回到步驟2;否則,臨時(shí)設(shè)置(c^)'-s,,并且(《)'=《(*e{1,2,...,iV}并且r#i);5)如果AD"Z)'-S(《)、0,則從Q選擇機(jī)組,以形成可調(diào)機(jī)組組^={r|(《)",可以滿足約束b和C兩者,^2并且(《廣>'=(《)'+^};女口果爿^cD,則臨時(shí)設(shè)置(《)'=《IHI6)如果臨時(shí)解決方案(Z4)'=((《)',(《2)',...,(《)')破壞約束b和c的任何一個(gè),則放棄所有改變轉(zhuǎn)到步驟4;7)計(jì)算/'=/,((")'),如果/>4,并且直接轉(zhuǎn)到步驟4;否則更新《{U...,iV}),并且設(shè)置/_=/',然后轉(zhuǎn)到步驟4。從3至6的步驟組成離散搜索的過程,其中如果對(duì)一個(gè)機(jī)組的增加可能破壞負(fù)荷相等約束,則將均勻地分解破壞部分,并且從其它可調(diào)機(jī)組減掉。以嘗試方式構(gòu)造可調(diào)機(jī)組組A,因?yàn)橹挥挟?dāng)Q中所有機(jī)組能夠獲得增加而不破壞約束b和c,;才可以是真增加。如果Q中的某些機(jī)組不能獲得增加,則剩余機(jī)組將獲得增加^,其絕對(duì)值大于^"。這是步驟6中再檢査(K)'有效性的原因。值得注意的是,如果存在破壞約束a,則步驟5和6可能部分地或完全地降低負(fù)荷差異。對(duì)于負(fù)突變,由于動(dòng)態(tài)約束,如果負(fù)荷分配的調(diào)整被限于恰好單個(gè)時(shí)間間隔(不包括以前和/或較晚間隔),即使理論上可能,在某些情況下也不可能滿足負(fù)荷相等的約束。作為例子,假定負(fù)荷需求在時(shí)間間隔j急劇增加。那么,只有所有機(jī)組可以同時(shí)在j增加電力輸出才可能滿足該命令。然而,如果某些發(fā)電機(jī)在j之前已工作在它們的最大功率輸出,則這些發(fā)電機(jī)可能在該關(guān)鍵時(shí)刻不貢獻(xiàn)任何輸出。這種情況下,如果負(fù)荷分配的調(diào)整被限于時(shí)間間隔j,則負(fù)荷差異將總是存在。唯一的解決方案是在以前和/或較晚的時(shí)間間隔改變負(fù)荷分配,以便所有機(jī)組在j能夠保留足夠的能力處理該具挑戰(zhàn)性的情況。然而,由于調(diào)整可能包括多于一個(gè)發(fā)電機(jī)以及多于一個(gè)時(shí)間間隔,需要?jiǎng)討B(tài)規(guī)劃(DP)解決該問題。為了不包括在處理各種約束中耗時(shí)并且不靈活的某些DP算法,CGA再次使用離散搜索方法,其也使用在正突變中,以部分地模擬DP的工作。盡管不能保證在一次運(yùn)行期間滿足負(fù)荷相等,但是通過群體的進(jìn)化證明該簡單策略是有效的。例如,假定它是第k個(gè)個(gè)體,并且考慮的突變點(diǎn)是第j個(gè)間隔,用于該間隔的原始負(fù)荷分配解決方案是"=(《,《2,...,^v)。時(shí)間間隔仏;i^"乂}被認(rèn)為是第一半并且時(shí)間間隔化山、KT1被認(rèn)為是第二半。給定點(diǎn)的負(fù)突變?cè)谙旅孢^程發(fā)生(見圖8):1)如果L;不破壞約束a,則退出;2)計(jì)算AD"D'-S(^),隨機(jī)地選擇第一(或第二)半;釋放第一半中的時(shí)間間隔(whicfflalf二firstHalf)或第二半中的時(shí)間間隔(whichHalf二secondHalf));3)如果"不破壞約束a,則退出;否則,則重新計(jì)算AD'并且釋放剩余一半中的時(shí)間間隔占用兩個(gè)步驟釋放第一(或第二)半中的時(shí)間間隔。I.如果whichHalf=firstHalf,則選擇最靠近j的時(shí)間間隔;e[OJ-1],并且RelaxConservatively(p,AD',whichHalf)=TRUE;如果whichHalf=secondHalf,則選擇最靠近j的時(shí)間間隔pe[y'+l,r],并且RelaxConservatively(p,AD',whichHalf)=TRUE;如果不存在p,直接退出;II.如果whichHalf=firstHalf,則在i二p+l,p+2,,j-1運(yùn)行Relax(i,AZ>',whichHalf)直到返回FALSE;如果Relax(j-l,AD',whichHalf)=TRUE,則在j應(yīng)用正突變;如果whichHalf=secondHalf,則在i二p-l,P-2,…,j+l運(yùn)行Relax(i,AD',whichHalf)直到返回FALSE;如果Relax(j+l,AD',whichHalf)=TRUE,則在j應(yīng)用正突變;如果在某個(gè)時(shí)間間隔的釋放是有效的,則在RelaxConservatively()中使用下面函數(shù)計(jì)算GetlntervalPotential(4,loadDiff,whichHalf)開始將(《)'表示為用于第i個(gè)機(jī)組在時(shí)間間隔j不破壞約束b和c的任何可能值max(zW/W=Z(《")*—Z《〉如果loadDiff>O并且whichHalf=firstHalfmax(zWArf=S(^i—')*—S《〉如果loadDiff>O并且whichHalf=secondHalfmax(Arf=藝(《)—)*》如果loadDiff<O并且whichHalf=firstHalfmax{zWAd=Z(《)—Y)如果loadDiff<O并且whichHalf=secondHalf返回結(jié)束函數(shù)RelaxConservatively(j,loadDiff,whichHalf)包括下面步驟(從c至f的步驟組成離散搜索過程,其在該實(shí)施方案中與正突變中所使用的相同)a)設(shè)置2={1,2,...,},beRelaxed二FALSE;b)如果^=0>,則返回beRelaxed并且終止該搜索過程;否則,隨機(jī)地從Q選擇一個(gè)元q,并且使0=0{《};c)根據(jù)約束b和c,為q決定可行域"/"j,如果域的大小足夠大,則生成一組m(m是(1,M)中的隨機(jī)數(shù),并且M是最大搜索步驟)可行點(diǎn),={、^"..;},從而乙=、w"并且、一、一,=^4(p=2,3,…w—lm);設(shè)置t叟索步驟i=0;設(shè)置《in=G"/"ten;a/尸ofe""W(丄(,/o^D#,W/cWfo//);d)i=i+l;如果i〉m,則返回到步驟b;否則,臨時(shí)地設(shè)置(《)'^,,并且(《)'=《0^£{1,2,...,^}并且r^i);e)如果AD」i)'-5>/,)、0,則從Q選擇機(jī)組,以形成可調(diào)機(jī)組組^葉l(《;r,可以滿足約束b和c兩者,re2并且(《r^(《'+^V,如果J-O,則臨時(shí)地設(shè)置(《)'=《十^,(Wd)爿f)如果臨時(shí)解決方案(^)'=((《)',(《)',...,(O')破壞約束b和c的任何一個(gè),則放棄所有改變轉(zhuǎn)到步驟山g)如果Ge"她,/戶她滴/((K)',油.cW/a//)>《in;則更新《-(《)'(Vre(l,2,…,iV))以及《n,設(shè)置beRelaxed=TRUE;最后,轉(zhuǎn)到步驟d。RelaxConservatively()函數(shù)本身仍然限制只在一個(gè)時(shí)間間隔調(diào)整負(fù)荷分配,并且當(dāng)然,它在處理釋放包括其它時(shí)間間隔的情況時(shí)具有嚴(yán)重的缺點(diǎn)。這可以從下面例子中看出;如果釋放第一半中的間隔,并且AD'-ZV-2(《)、0(在間隔j需要分配更多負(fù)荷),并且現(xiàn)在考慮的是P+K第j個(gè)間隔;機(jī)組i是僅有的可調(diào)整發(fā)電機(jī),并且《+1=《+3,《+2=《+'+W,.A,=《+3+Z)i,.Af(這里我們假定t/J,)。在間隔p的RelaxConservatively()已為間隔p+l保存了可調(diào)整空間,從而可以將《+'增大為《"+A么以向增加的《+2創(chuàng)建附加空間,而不超過機(jī)組i的最大輸出;由于這時(shí)《"對(duì)于RelaxConservatively()是不可調(diào)整的,它為《+2設(shè)置上界《+3+Z^,.A"所以單獨(dú)調(diào)整《+1將不為《+2以及間隔P+2保存增加空間,間隔p+2在可能影響第j個(gè)間隔之前使RelaxConservatively()失貝夂。在上述例子中,即使《+'也是要增加的正確機(jī)組,以便為下一時(shí)間間隔保存更多可調(diào)空間。RelaxConservatively()仍然返回FALSE,僅僅是因?yàn)椴荒芡瑫r(shí)增加cC3。為了減輕該問題,函數(shù)RelaxAgressivley()打破其它間隔的負(fù)荷相等(破壞約束a),用以完成給定間隔的負(fù)荷相等。RelaxAgressively(1,loadDiff,whichHalf)//1是時(shí)間間隔開始〃構(gòu)造約束機(jī)組組CA丄(和u《2,《1《,{!《"(「2,《<^,,/=1,2,...,iV〉如果/oacto^>0并且w/n'c/27/a//=y^W/Za//,/=1,2,...,A^如果/oflt/Z)i/r>0并且w/n'c/2/Za//=seco"c/fo//,!'=1,2,…,〃}如果/0^/)!#<0并且w&cW/a//-secoMHa//開始隨機(jī)選擇wC,設(shè)置OCUc);〃確定在相應(yīng)時(shí)間間隔增加機(jī)組cmin(《隨—《+2,2'/oWDz;^)如果/oac^f>0并且>1^£;/7//"http://=,W/Za//min(S隨—4;2,2D尺.Af,/oadDz;^)如果/otwZ)f>0并且wWc/7Ha//=seco"^/。Z/一1.min(《2-《瞧,2.Dic.,|/0"必刮)如果/oa必f<0并且wWc/z他//=一1-min(《:2-《,',in,2'"《■Af,l/oat/D刮)如果/(^^)^<0并且>1^^/^//=seco"cii/a//〃在相應(yīng)的時(shí)間間隔向機(jī)組c增加Ad,并且改變所影響的間隔,〃從而對(duì)于機(jī)組C在所有時(shí)間間隔都可以滿足約束b和C。如果whichHalf=firstHalf,則startItv=l+2,targetltv二l+l否則startltv=l-2,targetltv=l-1當(dāng)(Ad^O并且tryTimes〈a預(yù)定值)開始如果Augment(c,startltv,whichHalf,Ad)=TRUE,貝U開始fc一^~~結(jié)束將所改變的間隔更新為突變點(diǎn)返回TRUE;tryTimes=tryTimes+l;Ad二Ad/2;結(jié)束結(jié)束返回FALSE;結(jié)束使用迭代函數(shù)Augment,用于確保在RelaxAgressively()中影響的所有時(shí)間間隔仍然滿足約束b和c。由于當(dāng)嘗試改變是固定值的某個(gè)機(jī)組的初始負(fù)荷而實(shí)現(xiàn)動(dòng)態(tài)約束時(shí)Augment()可能失敗,所以在這種情況下RelaxAgressively()將降低增加的絕對(duì){直,并且重試Augment(),直到成功或重試次數(shù)達(dá)到某個(gè)預(yù)定數(shù)。Augment(c,itv,whichHalf,Ad)〃c是機(jī)組號(hào)。開始如果itv<l,則返回FALSE;〃嘗試改變機(jī)組c的初始負(fù)荷K,這是不允許的orgVal二《《=《+Arf如果itv》T,則將間隔itv更新為突變點(diǎn)并且返回TRUE;bSucceeded=FALSE如果whichHalf=firstHalf,則開始則將間隔itv更新為突變點(diǎn)并且返回TRUE;否則max(cC《+'如果《"1<max(《—.Af,&,)bSucceeded二Augment(c,itv+l,whichHalf,Ad)否則〃如果whichHalf=secondHalf如果《—'e[max(《-W..《.細(xì)),minr+Z)ie'《.扁)]則將間隔itv更新為突變點(diǎn)并且返回TRUE;否則<formula>formulaseeoriginaldocumentpage21</formula>結(jié)束如果bSucceeded=TRUE將間隔itv更新為突變點(diǎn);否則<formula>formulaseeoriginaldocumentpage21</formula>不能更新所有被影響的間隔,還原初始值返回bSucceeded;結(jié)束在負(fù)突變使用的Relax()是RelaxConservatively()和RelaxAgressively()的組合Relax(itv,loadDiff,whichHalf)開始如果RelaxConservatively(itv,loadDiff,whichHalf)=TRUE,貝U返回TRUE否貝ll如果RelaxAgressively(itv,loadDiff,whichHalf)二TRUE,貝ij返回TRUE否則返回FALSE結(jié)束對(duì)于為突變所選擇的個(gè)體上的每個(gè)突變點(diǎn),首先向它應(yīng)用正操作。如果降低了間隔費(fèi)用/;,,,,(),則不對(duì)那個(gè)突變點(diǎn)做任何其他事情。否則,只有在這點(diǎn)沒有實(shí)現(xiàn)負(fù)荷相等時(shí),該過程繼續(xù)向它應(yīng)用負(fù)操作。在CGA中使用了七個(gè)參數(shù)控制它的工作。這些參數(shù)是群體尺寸L、最大代數(shù)G、交叉概率C、突變概率&、離散搜索中的最大步驟數(shù)M、用于破壞約束a的處罰因子"、用于破壞約束e的最大處罰因子/。實(shí)驗(yàn)證明CGA優(yōu)選G的小值(〈100)以及4的大值(>0.1)。L的大值可以幫助CGA更快地找到最優(yōu)值。最大步驟數(shù)M可以在1050左右,并且可以將"設(shè)置為大值(例如1000),從而滿足約束a將具有很高優(yōu)先權(quán)。最大處罰因子B可以從大約210選擇值。為了給實(shí)際應(yīng)用中的該方法選擇最合適的和持久的設(shè)置,用戶可以預(yù)先重復(fù)運(yùn)行具有不同參數(shù)設(shè)置的CGA幾次,以分配具挑戰(zhàn)性的負(fù)荷需求,并且根據(jù)最后解決方案的質(zhì)量和所需要的運(yùn)行時(shí)間將最合適的設(shè)置選擇為持久設(shè)置。圖9是與可以實(shí)現(xiàn)本發(fā)明的實(shí)施方案相結(jié)合的硬件和操作環(huán)境的概略圖。圖9的描述是用來提供與可以實(shí)現(xiàn)本發(fā)明相結(jié)合的適當(dāng)?shù)挠?jì)算機(jī)硬件和適當(dāng)?shù)挠?jì)算環(huán)境的簡潔、概括描述。在某些實(shí)施方案中,以可以由諸如個(gè)人計(jì)算機(jī)之類的計(jì)算機(jī)執(zhí)行、諸如程序模塊之類的計(jì)算機(jī)可執(zhí)行指令的一般上下文描述本發(fā)明。通常,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、部件、數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域的普通技術(shù)人員將意識(shí)到本發(fā)明可以和其它計(jì)算機(jī)系統(tǒng)配置一起實(shí)現(xiàn),包括手持設(shè)備、多處理器系統(tǒng)、基于微處理器、或可編程消費(fèi)電子、網(wǎng)絡(luò)PC、微型計(jì)算機(jī)、巨型計(jì)算機(jī)等。本發(fā)明也可以實(shí)現(xiàn)在分布式計(jì)算環(huán)境中,其中由通過通信網(wǎng)絡(luò)連接的I/O遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備兩者中。在圖9中所示的實(shí)施方案中,提供了可應(yīng)用于其它圖中所示的任何服務(wù)器和/或遠(yuǎn)程客戶端的硬件與操作環(huán)境。如圖9中所示,硬件和操作環(huán)境的一個(gè)實(shí)施方案包括以計(jì)算機(jī)20(例如,個(gè)人計(jì)算機(jī)、工作站或服務(wù)器)的形式的通用計(jì)算設(shè)備,所述的通用計(jì)算設(shè)備包括一個(gè)或多個(gè)處理單元21;系統(tǒng)存儲(chǔ)器22;以及系統(tǒng)總線23,該系統(tǒng)總線23可操作地將包括系統(tǒng)存儲(chǔ)器22的各種系統(tǒng)部件連接到處理單元21??梢灾挥幸粋€(gè)或者可以有多于一個(gè)處理單元21,從而計(jì)算機(jī)20的處理器包括單個(gè)中央處理器單元(CPU),或通常稱為多處理器或并行處理器環(huán)境的多處理單元。在各個(gè)實(shí)施方案中,計(jì)算機(jī)20是傳統(tǒng)計(jì)算機(jī)、分布式計(jì)算機(jī)、或任何其它類型計(jì)算機(jī)。系統(tǒng)總線23可以是幾類總線結(jié)構(gòu)的任何一種,該總線結(jié)構(gòu)包括存儲(chǔ)總線或存儲(chǔ)控制器、外圍總線、以及使用各種總線結(jié)構(gòu)的任何一種的局部總線。系統(tǒng)存儲(chǔ)器也可以簡單地稱為存儲(chǔ)器,并且,在某些實(shí)施方案中,包括只讀存儲(chǔ)器(ROM)24和隨機(jī)訪問存儲(chǔ)器(RAM)25?;据斎?輸出系統(tǒng)(BIOS)程序26,包含幫助在計(jì)算機(jī)20內(nèi)的元件之間傳送信息的基本例程,諸如在啟動(dòng)期間,可被保存在R0M24中。。計(jì)算機(jī)20進(jìn)一步包括:向硬盤(未示出)讀和寫;磁盤驅(qū)動(dòng)28,用于從或向移動(dòng)磁盤29讀或?qū)?;以及光盤驅(qū)動(dòng)30,用于從或向諸如CDROM或其它光介質(zhì)之類的移動(dòng)光盤31讀或?qū)?。硬盤驅(qū)動(dòng)27、磁盤驅(qū)動(dòng)28、和光盤驅(qū)動(dòng)30分別地與硬盤驅(qū)動(dòng)接口32、磁盤驅(qū)動(dòng)接口33、以及光盤驅(qū)動(dòng)接口34連接。驅(qū)動(dòng)和它們相關(guān)的計(jì)算機(jī)可讀介質(zhì)為計(jì)算機(jī)20提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲(chǔ)。本領(lǐng)域普通技術(shù)人員將意識(shí)到的是諸如磁帶、閃存卡、數(shù)字視頻盤、伯努利(Bernoulli)筒、隨機(jī)訪問存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、獨(dú)立盤的冗余陣列(例如,RAID存儲(chǔ)設(shè)備)等能夠可以存儲(chǔ)由計(jì)算機(jī)訪問的數(shù)據(jù)的任何類型計(jì)算機(jī)可讀介質(zhì)可以被用于示例性操作環(huán)境中??梢栽谟脖P、磁盤29、光盤31、ROM24、或RAM25上存儲(chǔ)包括操作系統(tǒng)35、一個(gè)或多個(gè)應(yīng)用程序36、其它程序模塊37、以及程序數(shù)據(jù)38的多個(gè)程序模塊。用于本發(fā)明的包含安全傳輸引擎的插件可以位于這些計(jì)算機(jī)可讀介質(zhì)的任何一個(gè)或一些上。用戶可以通過諸如鍵盤40和定位設(shè)備42之類的輸入設(shè)備將命令和信息輸入到計(jì)算機(jī)20中。其它輸入設(shè)備(未示出)可以包括麥克風(fēng)、游戲桿、游戲手柄、衛(wèi)星電視天線、掃描儀等。這些其它輸入設(shè)備通常通過連接到系統(tǒng)總線23的串行端口接口46被連接到處理單元21,但是也可以通過諸如并行端口、游戲端口、或通用串行總線(USB)之類的其它接口被連接。監(jiān)視器47或其它類型的顯示設(shè)備也可以通過諸如視頻適配器48之類的接口被連接到系統(tǒng)總線23。監(jiān)視器40可以為用戶顯示圖形用戶界面。除了監(jiān)視器40,計(jì)算機(jī)典型地包括諸如揚(yáng)聲器和打印機(jī)之類的其它外圍輸出設(shè)備(未示出)。計(jì)算機(jī)20可利用邏輯連接到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)或服務(wù)器,諸如遠(yuǎn)程計(jì)算機(jī)49,在網(wǎng)絡(luò)環(huán)境中操作。通過連接到計(jì)算機(jī)20的通信設(shè)備或者計(jì)算機(jī)20的一部分實(shí)現(xiàn)這些邏輯連接;本發(fā)明不限于特定類型的通信設(shè)備。遠(yuǎn)程計(jì)算機(jī)49可以是另一計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、客戶端、對(duì)等設(shè)備或其它公共網(wǎng)絡(luò)節(jié)點(diǎn),并且典型地包括與計(jì)算機(jī)20相關(guān)的上述I/0的許多或所有元件,盡管只示出了存儲(chǔ)器存儲(chǔ)設(shè)備50。圖9中所描述的邏輯連接包括局域網(wǎng)(LAN)51和/或廣域網(wǎng)(WAN)52。這樣的網(wǎng)絡(luò)環(huán)境在辦公網(wǎng)絡(luò)、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)部互聯(lián)網(wǎng)和因特網(wǎng)所有類型網(wǎng)絡(luò)中是常見的。當(dāng)使用在LAN網(wǎng)絡(luò)環(huán)境中,計(jì)算機(jī)20通過網(wǎng)絡(luò)接口或適配器53連接到LAN51,所述的網(wǎng)絡(luò)接口或適配器是一類通信設(shè)備。在某些實(shí)施方案中,當(dāng)使用在WAN網(wǎng)絡(luò)環(huán)境中,計(jì)算機(jī)20典型地包括調(diào)制解調(diào)器54(另一類通信設(shè)備)或任何其它類型通信設(shè)備例如用于在諸如因特網(wǎng)之類的廣域網(wǎng)上建立通信的無線收發(fā)器。通過串行端口接口46將可以是內(nèi)部或外部的調(diào)制解調(diào)器54連接到系統(tǒng)總線23。在網(wǎng)絡(luò)環(huán)境中,與計(jì)算機(jī)20相關(guān)的所描述程序模塊可以存儲(chǔ)在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器49的遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備50中??梢砸庾R(shí)到,所示的網(wǎng)絡(luò)連接是示例性的,并且在計(jì)算機(jī)之間建立通信鏈路的其他手段和通信設(shè)備可被使用,包括混合光纖同軸連接、Tl-T3線、DSL、0C-3禾卩/或0C-12、TCP/IP、微波、無線應(yīng)用協(xié)議、以及通過任何適當(dāng)?shù)拈_關(guān)、路由器、輸出線和電源線的任何其它電子介質(zhì),正如本領(lǐng)域的普通技術(shù)人員己知和理解的。在前面的實(shí)施方案詳細(xì)描述中,為了簡化本公開,各種特征一起被結(jié)合在一個(gè)或多個(gè)實(shí)施方案中。本公開的方法不應(yīng)當(dāng)被解釋為反映下述意圖,該意圖為本發(fā)明所要求保護(hù)的實(shí)施方案特征不要求比在每個(gè)權(quán)利要求中明確記載的特征更多的特征。相反,如在下面權(quán)利要求所反映的,發(fā)明的主題在于小于單個(gè)公開實(shí)施方案的所有特征。因而下面權(quán)利要求據(jù)此被納入到本發(fā)明的實(shí)施方案的詳細(xì)描述中,其中每個(gè)權(quán)利要求以其自身作為一個(gè)獨(dú)立的實(shí)施方案。應(yīng)該理解上面的描述是用來說明,而不是限制。是用來覆蓋可以包括在附屬權(quán)利要求中所定義的發(fā)明范圍內(nèi)的所有替代、改變和等價(jià)物。在回顧上面描述的基礎(chǔ)上,許多其它實(shí)施方案對(duì)于本領(lǐng)域技術(shù)人員是顯而易見的。因而,應(yīng)參考附屬權(quán)利要求連同這些權(quán)利要求所授權(quán)的等價(jià)物的全部范圍確定本發(fā)明的范圍。附屬權(quán)利要求中,分別使用術(shù)語"包括"和"其中"作為各個(gè)術(shù)語"包括"和"其中"的普通英語等價(jià)詞。此外,使用術(shù)語"首先"、"其次"、和"第三"等僅僅作為標(biāo)簽,而不用來對(duì)它們的對(duì)象施加數(shù)字要求。為了遵循37C.F.R.1.72(b),提供了摘要,以允許讀者快速確定該技術(shù)公開的本質(zhì)和要點(diǎn)。提交摘要應(yīng)理解為不是為了解釋或限制權(quán)利要求的范圍或含意。權(quán)利要求1.一個(gè)過程,包括提供對(duì)遺傳算法的約束;向遺傳算法提供動(dòng)態(tài)規(guī)劃能力;以及在有限數(shù)量的時(shí)間間隔上,在數(shù)個(gè)發(fā)電機(jī)組之間,以遺傳算法和遺傳算法的動(dòng)態(tài)規(guī)劃能力的約束的函數(shù)的方式分配負(fù)荷需求。2.根據(jù)權(quán)利要求l的過程,其中遺傳算法約束包括一個(gè)或多個(gè)負(fù)荷需求與發(fā)電機(jī)組的所有輸出的總和相等;每個(gè)發(fā)電機(jī)組包括輸出下限和輸出上限;發(fā)電機(jī)組的加速和減速速率的限制;以及發(fā)電機(jī)組的一個(gè)或多個(gè)禁忌操作域。3.根據(jù)權(quán)利要求1的過程,其中一個(gè)或多個(gè)發(fā)電機(jī)組的燃料費(fèi)函數(shù)包括一個(gè)或多個(gè)不平滑特征和非凸特征。4.根據(jù)權(quán)利要求1的過程,其中對(duì)遺傳算法的約束規(guī)定和動(dòng)態(tài)規(guī)劃能力規(guī)定包括改變一個(gè)或多個(gè)初始化、交叉、和突變操作,從而維持負(fù)荷分配解決方案在可行域附近自由地進(jìn)化。5.根據(jù)權(quán)利要求4的過程,其中改變初始化操作包括提供偏移和試探式初始化,以保證多樣的初始群體。6.根據(jù)權(quán)利要求5的過程,其中偏移和試探式初始化包括向在禁忌操作域中操作的一個(gè)或多個(gè)發(fā)電機(jī)組分配最高優(yōu)先權(quán);向初始化之前隨機(jī)選擇的一個(gè)或多個(gè)發(fā)電機(jī)組分配普通優(yōu)先權(quán);向未分配最高優(yōu)先權(quán)或普通優(yōu)先權(quán)的剩余發(fā)電機(jī)組分配最低優(yōu)先權(quán);根據(jù)已區(qū)分優(yōu)先權(quán)的發(fā)電機(jī)組重復(fù)地選擇發(fā)電機(jī)組;以及向那個(gè)發(fā)電機(jī)組分配未滿足的負(fù)荷需求,而不破壞遺傳算法的約束。7.根據(jù)權(quán)利要求4的過程,其中改變交叉操作包括為交叉選擇可行位置,以適應(yīng)遺傳算法的約束。8.根據(jù)權(quán)利要求4的過程,其中改變突變操作包括試探地維持可能的突變點(diǎn)的位置;以及提供降低燃料費(fèi)的正突變操作和獲得負(fù)荷相等的負(fù)突變操作;并且此外其中正突變操作每次影響一個(gè)時(shí)間間隔,以及負(fù)突變每次影響多個(gè)時(shí)間間隔。9.根據(jù)權(quán)利要求8的過程,還包括向一個(gè)或多個(gè)正突變操作以及負(fù)突變操作提供離散搜索策略。10.—種包括用于執(zhí)行過程的指令的機(jī)器可讀介質(zhì),指令包括提供對(duì)遺傳算法的約束;向遺傳算法提供動(dòng)態(tài)規(guī)劃能力;以及在有限數(shù)量的時(shí)間間隔上,在數(shù)個(gè)發(fā)電機(jī)組之間,以遺傳算法和遺傳算法的動(dòng)態(tài)規(guī)劃能力的約束的函數(shù)的方式分配負(fù)荷需求。11.根據(jù)權(quán)利要求10的機(jī)器可讀介質(zhì),其中遺傳算法約束包括一個(gè)或多個(gè)負(fù)荷需求與發(fā)電機(jī)組的所有輸出的總和相等;每個(gè)發(fā)電機(jī)組包括輸出下限和輸出上限;發(fā)電機(jī)組的加速和減速速率的限制;以及發(fā)電機(jī)組的一個(gè)或多個(gè)禁忌操作域。12.根據(jù)權(quán)利要求10的機(jī)器可讀介質(zhì),其中一個(gè)或多個(gè)發(fā)電機(jī)組的燃料費(fèi)函數(shù)包括一個(gè)或多個(gè)不平滑特征和非凸特征。13.根據(jù)權(quán)利要求10的機(jī)器可讀介質(zhì),其中對(duì)遺傳算法的約束規(guī)定和動(dòng)態(tài)規(guī)劃能力規(guī)定包括改變一個(gè)或多個(gè)初始化、交叉、和突變操作,從而維持負(fù)荷分配解決方案在可行域附近自由地進(jìn)化。14.根據(jù)權(quán)利要求13的機(jī)器可讀介質(zhì),其中改變初始化操作包括提供偏移和試探式初始化,以保證多樣的初始群體。15.根據(jù)權(quán)利要求14的機(jī)器可讀介質(zhì),其中偏移和試探式初始化包括向在禁忌操作域中操作的一個(gè)或多個(gè)發(fā)電機(jī)組分配最高優(yōu)先權(quán);向初始化之前隨機(jī)選擇的一個(gè)或多個(gè)發(fā)電機(jī)組分配普通優(yōu)先權(quán);向未分配最高優(yōu)先權(quán)或普通優(yōu)先權(quán)的剩余發(fā)電機(jī)組分配最低優(yōu)先權(quán);根據(jù)已區(qū)分優(yōu)先權(quán)的發(fā)電機(jī)組重復(fù)地選擇發(fā)電機(jī)組;以及向那個(gè)發(fā)電機(jī)組分配未滿足的負(fù)荷需求,而不破壞遺傳算法的約束。16.根據(jù)權(quán)利要求13的機(jī)器可讀介質(zhì),其中改變交叉操作包括為交叉選擇可行位置,以適應(yīng)遺傳算法的約束。17.根據(jù)權(quán)利要求13的機(jī)器可讀介質(zhì),其中改變突變操作包括試探地維持可能突變點(diǎn)的位置;以及提供降低燃料費(fèi)的正突變操作和獲得負(fù)荷相等的負(fù)突變操作;并且此外其中正突變操作每次影響一個(gè)時(shí)間間隔,以及負(fù)突變每次影響多個(gè)時(shí)間間隔。18.根據(jù)權(quán)利要求17的機(jī)器可讀介質(zhì),還包括向一個(gè)或多個(gè)正突變操作以及負(fù)突變操作提供離散搜索策略。19.一種系統(tǒng),包括提供對(duì)遺傳算法約束的模塊;向遺傳算法提供動(dòng)態(tài)規(guī)劃能力的模塊;以及在有限數(shù)量的時(shí)間間隔上,在數(shù)個(gè)發(fā)電機(jī)組之間,以遺傳算法和遺傳算法的動(dòng)態(tài)規(guī)劃能力的約束的函數(shù)方式分配負(fù)荷需求的模塊。20.根據(jù)權(quán)利要求19的系統(tǒng),其中遺傳算法約束包括一個(gè)或多個(gè)負(fù)荷需求與發(fā)電機(jī)組的所有輸出的總和相等;每個(gè)發(fā)電機(jī)組包括輸出下限和輸出上限;發(fā)電機(jī)組的加速和減速速率的限制;以及發(fā)電機(jī)組的一個(gè)或多個(gè)禁忌操作域。全文摘要在實(shí)施方案中,系統(tǒng)和方法提供了對(duì)遺傳算法的約束,并且還向遺傳算法提供了動(dòng)態(tài)規(guī)劃能力。然后該系統(tǒng)和方法在有限數(shù)量的時(shí)間間隔上,在數(shù)個(gè)發(fā)電機(jī)組之間,以遺傳算法和遺傳算法的動(dòng)態(tài)規(guī)劃能力約束的函數(shù)的分配負(fù)荷需求。文檔編號(hào)H02J4/00GK101154815SQ20061014067公開日2008年4月2日申請(qǐng)日期2006年9月29日優(yōu)先權(quán)日2006年9月29日發(fā)明者葉晨洲,向珣瑋,張丹青,賀晉衛(wèi)申請(qǐng)人:霍尼韋爾國際公司