本發(fā)明屬于蒸汽管網(wǎng)調(diào)度規(guī)則技術(shù)領(lǐng)域,特別是提供一種基于決策樹方法的蒸汽管網(wǎng)調(diào)度規(guī)則系統(tǒng),實現(xiàn)了蒸汽管網(wǎng)調(diào)度規(guī)則的程序化,科學(xué)化。
背景技術(shù):
在大型聯(lián)合鋼鐵企業(yè)里,蒸汽系統(tǒng)是具有大時滯、大慣性、變參數(shù)、非線性、多變量耦合等特點的復(fù)雜對象,面對這樣的復(fù)雜運行狀況,管理人員基本還是依靠多年來的生產(chǎn)所運行積累下的經(jīng)驗指揮系統(tǒng)運行,難以避免發(fā)生放空、降質(zhì)使用等情況,造成極大的浪費。這樣必然導(dǎo)致調(diào)度的盲目性和管網(wǎng)運行的低效。同時由于生產(chǎn)量、季節(jié)性變化等原因蒸汽用量會隨之發(fā)生變化,對蒸汽系統(tǒng)的優(yōu)化調(diào)度與管理是相關(guān)企業(yè)節(jié)能增效減少環(huán)境污染的有效措施。建立基于決策樹的調(diào)度規(guī)則庫,結(jié)合企業(yè)調(diào)度規(guī)則庫,合理優(yōu)化蒸汽管網(wǎng)調(diào)度,可大大降低人工調(diào)度的盲目性和滯后性,從而提高蒸汽系統(tǒng)調(diào)度水平。
決策樹算法是一種以決策樹這種數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)的分類算法。決策樹是一個類似于流程圖的樹結(jié)構(gòu),其中每個內(nèi)部結(jié)點表示一個屬性上的測試,每個分枝代表一個測試輸出,而每個樹葉結(jié)點代表一個類或類分布。在給未知的樣本分類時,由樹根開始對該樣本中對象的屬性按照順序逐個測試其值,并且沿著符合條件的分枝向下走,直至到達(dá)某個葉結(jié)點,這個葉結(jié)點代表的類則為該對象所屬的類?;跊Q策樹方法,建立鋼鐵企業(yè)蒸汽管網(wǎng)調(diào)度規(guī)則決策樹系統(tǒng)。根據(jù)決策樹原理的系統(tǒng)熵及決策屬性等方法,結(jié)合現(xiàn)有企業(yè)調(diào)度規(guī)則庫、專家知識庫以及事實庫,以典型的決策樹ID3算法建立鋼鐵企業(yè)蒸汽管網(wǎng)調(diào)度規(guī)則決策樹系統(tǒng),使得管網(wǎng)調(diào)度策略更加合理安全,有效降低管網(wǎng)波動范圍
本發(fā)明將建立一種科學(xué)的蒸汽管網(wǎng)調(diào)度規(guī)則系統(tǒng),可科學(xué)合理的建立蒸汽管網(wǎng)調(diào)度規(guī)則系統(tǒng),減少管網(wǎng)波動,保障管網(wǎng)高效安全運行。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種基于決策樹方法的蒸汽管網(wǎng)調(diào)度規(guī)則系統(tǒng),實現(xiàn)了蒸汽管網(wǎng)調(diào)度規(guī)則的程序科學(xué)化,使得管網(wǎng)運行更加科學(xué)合理。系統(tǒng)采用自頂向下遞歸的分治方式來構(gòu)建,從訓(xùn)練樣本集以及與其相關(guān)的屬性開始構(gòu)造。隨著決策樹的不斷深層次構(gòu)造,訓(xùn)練樣本集將遞歸地被劃分為幾個較小的子集。樹根與各節(jié)點之間的路徑對應(yīng)著一條關(guān)聯(lián)規(guī)則,因此整個決策樹也就對應(yīng)著一組完整的關(guān)聯(lián)規(guī)則。
本發(fā)明硬件系統(tǒng)包括關(guān)系數(shù)據(jù)庫服務(wù)器,實時數(shù)據(jù)庫服務(wù)器,應(yīng)用服務(wù)器,工程師站。關(guān)系數(shù)據(jù)庫服務(wù)器與工程師站和應(yīng)用服務(wù)器相連,應(yīng)用服務(wù)器除與關(guān)系數(shù)據(jù)庫服務(wù)器相連外,還與實時數(shù)據(jù)庫和工程師站相連,保持三者之間數(shù)據(jù)交換。應(yīng)用模塊包括關(guān)系數(shù)據(jù)庫,數(shù)據(jù)采集模塊,調(diào)度規(guī)則結(jié)果顯示模塊,決策樹規(guī)則庫生成模塊。其中調(diào)度規(guī)則結(jié)果顯示模塊部署在工程師站,決策樹規(guī)則庫模塊部署在應(yīng)用服務(wù)器,關(guān)系數(shù)據(jù)庫部署在關(guān)系數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)采集模塊部署在實時數(shù)據(jù)庫。
關(guān)系數(shù)據(jù)庫是顯示模塊與決策樹規(guī)則庫模塊之間的數(shù)據(jù)通訊媒介。決策樹規(guī)則庫模塊將生成的決策規(guī)則寫入關(guān)系數(shù)據(jù)庫,顯示模塊再從關(guān)系數(shù)據(jù)庫中讀出并予以顯示。
關(guān)系數(shù)據(jù)庫:存儲用于調(diào)度記錄、決策樹規(guī)則庫、顯示的數(shù)據(jù)。
數(shù)據(jù)采集模塊:由實時數(shù)據(jù)庫和現(xiàn)場采集儀表以及傳輸網(wǎng)絡(luò)組成;現(xiàn)場采集儀表將信息實時傳入實時數(shù)據(jù)庫中;
調(diào)度規(guī)則結(jié)果顯示模塊:數(shù)據(jù)接口部分,為決策樹算法提供數(shù)據(jù)輸入功能,包括讀取數(shù)據(jù)文件;
決策樹規(guī)則庫模塊:包括1、樹根是從代表訓(xùn)練樣本集的單個節(jié)點開始的;2、訓(xùn)練樣本集屬于同一個類的節(jié)點為樹葉,并對該類進(jìn)行標(biāo)記;3、否則以信息增益度量為分裂準(zhǔn)則,選擇可以實現(xiàn)最好地樣本分類的屬性作為該節(jié)點的分裂屬性;4、為分裂屬性的每個已知值創(chuàng)建一個分枝,并以此為依據(jù)劃分樣本集;5、使用上述同樣的過程,遞歸地形成每個劃分的樣本決策樹。一旦某個屬性出現(xiàn)在某個節(jié)點上,則其后代就不必再考慮了;6、當(dāng)滿足下列條件之一時,遞歸劃分步驟停止:a)給定節(jié)點的所有樣本集同屬一個類;b)沒有剩余屬性可以用來對樣本進(jìn)行進(jìn)一步的劃分;c)分枝中無樣本。
1、數(shù)據(jù)集劃分前的熵:
對于有s個數(shù)據(jù)樣本集合S,其中分類屬性C有m個不同的離散取值c1,c2,…,cm(即數(shù)據(jù)樣本S最終要被分成m個類別)。分類屬性值為c1,c2,…,cm的樣本數(shù)分別s1,s2,…,sm。那么劃分之前,樣本集S的總熵(期望信息)為:
其中,pi是S集中任意一個樣本屬于類別Ci的概率,并用si/s估計。注意,對數(shù)函數(shù)以2為底,因為信息用二進(jìn)制編碼。容易看出,數(shù)據(jù)集S的總熵在劃分前是屬于不同類別的樣本的信息量的加權(quán)平均。
2、數(shù)據(jù)集劃分后的熵:
設(shè)屬性A有n個不同的離散屬性值{a1,a2,…,an},可使用屬性A將數(shù)據(jù)集S劃分為n個子集{s1,s2,…,sn},對應(yīng)每個子集Sj中所有樣本的屬性A都是aj。
設(shè)子集Sj中的全部樣本數(shù)為sj,其中分類屬性值為c1,c2,…,cm的樣本數(shù)為s1j,s2j,…,smj,則子集Sj的熵為:
其中pij=sij/sj,是Sj中樣本分別屬于類別Ci的概率。
使用屬性A把數(shù)據(jù)集S劃分成n個子集后,S的總熵為n個子集的熵的加權(quán)平均:
其中為Sj子集的權(quán)重,表示sj子集在數(shù)據(jù)集S中的比重。
信息增益:
信息增益表示系統(tǒng)由于分類獲得的信息量,由系統(tǒng)熵的減少量度,定義數(shù)據(jù)集S按屬性A劃分后的信息增益為S劃分前后的熵差:
Gain(A)=I(s1,s2,…,sm)-E(A)
算法計算每個屬性的信息增益,然后選擇具有最高信息增益的屬性作為給定數(shù)據(jù)集S的決策屬性,創(chuàng)建一個結(jié)點,并以該屬性標(biāo)記,對屬性的每個值創(chuàng)建分枝,并據(jù)此劃分樣本。
3、ID3算法
ID3算法是基于信息增益的典型決策樹算法,通過自頂向下遞歸的分治方式構(gòu)造決策樹來進(jìn)行學(xué)習(xí)。其具體方法是對所有的候選屬性進(jìn)行測試,選擇信息增益最大的屬性作為最佳分裂屬性,并以此分裂屬性作為決策樹的根結(jié)點,通過該屬性的不同取值構(gòu)造分支,然后對各分支的子集不斷重復(fù)上述方法,并依次構(gòu)造決策樹結(jié)點的其它分支,一直到所有的子集合只包括同類別的訓(xùn)練樣本集為止。最終所得到的ID3決策樹模型就可以對新的數(shù)據(jù)樣本集進(jìn)行分類和預(yù)測。屬性皆為離散型,或數(shù)值屬性事先經(jīng)過預(yù)處理轉(zhuǎn)化成離散型。
假設(shè)用T代表當(dāng)前樣本集,當(dāng)前候選屬性集用T_attributelist表示,候選屬性集中所有屬性皆為離散型,或數(shù)值屬性事先經(jīng)過預(yù)處理轉(zhuǎn)化成離散型。則ID3算法ID3formtree(T,T_attributelist)的流程具體描述如下:
步驟一:創(chuàng)建根節(jié)點N;
步驟二:如果T都屬于同一類C,則返回N為葉節(jié)點,標(biāo)記為類C;
步驟三:如果T_attributelist為空,則返回N為葉節(jié)點,標(biāo)記N為T中出現(xiàn)最多在類;
步驟四:對每一個T_attributelist中的屬性,計算信息增益gain;
步驟五:N的測試屬性test_attribute=T_attributelist具有最高gain值的屬性;
步驟六:對每一個test_attributelist的取值,由節(jié)點N一個新的葉子節(jié)點,且如果新葉子節(jié)點對應(yīng)的樣本子集T為空,則不分裂此葉子節(jié)點,將其標(biāo)記為T中出現(xiàn)最多在類;否則在該葉子節(jié)點上執(zhí)行ID3formtree(T,T_attributelist),繼續(xù)對它分裂;
本發(fā)明的優(yōu)點在于:基于決策樹方法建立蒸汽管網(wǎng)調(diào)度規(guī)則系統(tǒng),實現(xiàn)管網(wǎng)調(diào)度的規(guī)則化,科學(xué)化,保證管網(wǎng)運行安全高效,提高運行效率,為企業(yè)節(jié)能減排。
附圖說明
圖1是本發(fā)明系統(tǒng)各模塊之間關(guān)系圖。
圖2是決策樹規(guī)則求解流程圖。
圖3是并行求解方程組過程圖。
具體實施方式
本發(fā)明硬件系統(tǒng)包括關(guān)系數(shù)據(jù)庫服務(wù)器,實時數(shù)據(jù)庫服務(wù)器,應(yīng)用服務(wù)器,工程師站。關(guān)系數(shù)據(jù)庫服務(wù)器與工程師站和應(yīng)用服務(wù)器相連,應(yīng)用服務(wù)器除與關(guān)系數(shù)據(jù)庫服務(wù)器相連外,還與實時數(shù)據(jù)庫和工程師站相連,保持三者之間數(shù)據(jù)交換。應(yīng)用模塊包括關(guān)系數(shù)據(jù)庫,數(shù)據(jù)采集模塊,調(diào)度規(guī)則結(jié)果顯示模塊,決策樹規(guī)則庫生成模塊。其中調(diào)度規(guī)則結(jié)果顯示模塊部署在工程師站,決策樹規(guī)則庫模塊部署在應(yīng)用服務(wù)器,關(guān)系數(shù)據(jù)庫部署在關(guān)系數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)采集模塊部署在實時數(shù)據(jù)庫。
關(guān)系數(shù)據(jù)庫是顯示模塊與決策樹規(guī)則庫模塊之間的數(shù)據(jù)通訊媒介。決策樹規(guī)則庫模塊將生成的決策規(guī)則寫入關(guān)系數(shù)據(jù)庫,顯示模塊再從關(guān)系數(shù)據(jù)庫中讀出并予以顯示。
圖1是發(fā)明系統(tǒng)各模塊之間關(guān)系圖。本發(fā)明系統(tǒng)包括關(guān)系數(shù)據(jù)庫,數(shù)據(jù)采集模塊,調(diào)度規(guī)則結(jié)果顯示模塊,決策樹規(guī)則庫生成模塊。其中調(diào)度規(guī)則結(jié)果顯示模塊部署在工程師站,決策樹規(guī)則庫生成模塊部署在應(yīng)用服務(wù)器,關(guān)系數(shù)據(jù)庫部署在關(guān)系數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)采集模塊部署在實時數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫是調(diào)度規(guī)則結(jié)果顯示模塊與決策樹規(guī)則庫生成模塊之間的數(shù)據(jù)通訊媒介。決策樹規(guī)則庫生成模塊將生成的規(guī)則庫寫入關(guān)系數(shù)據(jù)庫,顯示模塊再從關(guān)系數(shù)據(jù)庫中讀出并予以顯示。
圖2是決策樹規(guī)則求解流程圖。首先創(chuàng)建根節(jié)點N,判斷如果T都屬于同一類C,則返回N為葉節(jié)點,標(biāo)記為類C;然后判斷如果T_attributelist為空,則返回N為葉節(jié)點,標(biāo)記N為T中出現(xiàn)最多在類;其次對每一個T_attributelist中的屬性,計算信息增益gain;N的測試屬性test_attribute=T_attributelist具有最高gain值的屬性;最后對每一個test_attributelist的取值,由節(jié)點N一個新的葉子節(jié)點,且如果新葉子節(jié)點對應(yīng)的樣本子集T為空,則不分裂此葉子節(jié)點,將其標(biāo)記為T中出現(xiàn)最多在類;否則在該葉子節(jié)點上執(zhí)行ID3formtree(T,T_attributelist),繼續(xù)對它分裂。