李孝忠,周艷軍
(天津科技大學(xué)計(jì)算機(jī)科學(xué)與信息工程學(xué)院,天津 300222)
模糊神經(jīng) Petri網(wǎng)(fuzzy neural Petri net,F(xiàn)NPN)是將 Petri網(wǎng)與模糊理論相結(jié)合,并引入神經(jīng)網(wǎng)絡(luò)算法而提出的.目前,已有針對(duì) FNPN的相關(guān)研究,文獻(xiàn)[1]提出了一種基于BP算法的無回路模糊Petri網(wǎng)(fuzzy Petri net,F(xiàn)PN)模型的自學(xué)習(xí)推理算法,使得網(wǎng)絡(luò)具有很好的泛化和自適應(yīng)能力,但是網(wǎng)絡(luò)震蕩趨勢(shì)較大;文獻(xiàn)[2]采用基于專家經(jīng)驗(yàn)的系統(tǒng)結(jié)構(gòu),提出了一種適合于可靠性估計(jì)的 FNPN模型,其既可以表示模糊產(chǎn)生式規(guī)則的知識(shí)庫系統(tǒng)又具有學(xué)習(xí)能力,但是并沒有考慮到網(wǎng)絡(luò)震蕩性的問題;文獻(xiàn)[3]提出一種自適應(yīng) FPN,通過對(duì)變遷點(diǎn)燃條件的判斷及變遷點(diǎn)燃后傳遞給輸出庫所的新標(biāo)記,建立 S型連續(xù)函數(shù)并引入 BP算法,實(shí)現(xiàn)了對(duì)知識(shí)的動(dòng)態(tài)推理及學(xué)習(xí),但是沒有在專家系統(tǒng)方面進(jìn)行預(yù)測(cè);此外,F(xiàn)NPN在故障診斷[4–7]方面的應(yīng)用研究也存在收斂慢或震蕩較大等問題.
本文提出一種適合于基于專家經(jīng)驗(yàn)系統(tǒng)結(jié)構(gòu)的FNPN模型的參數(shù)修正優(yōu)化算法,即在傳統(tǒng) BP神經(jīng)網(wǎng)絡(luò)參數(shù)修正公式中加入新型動(dòng)量項(xiàng)[8],從而達(dá)到改善學(xué)習(xí)收斂速度、提高計(jì)算精確度并減小網(wǎng)絡(luò)震蕩的效果.
Petri網(wǎng)[9–10]是由庫所、變遷和連接庫所與變遷間關(guān)系的有向弧組成的一種有向圖.一般地,圖中表示位置用圓圈,表示變遷用直線段或矩形框,位置與變遷間的關(guān)系用有向弧連接.
定義1 模糊Petri網(wǎng)[1]定義為九元組
定義2 模糊神經(jīng)Petri網(wǎng)[2]定義為十二元組的含義同定義 1;0:M P→[0,1]為初始模糊標(biāo)識(shí);Kp為隱含層和輸出層庫所的活動(dòng)狀態(tài)集;Kt為變遷集T到規(guī)則集的一一映射;
其中:為置信度集合,它與每個(gè)變遷一一映射.
模糊產(chǎn)生式規(guī)則[1]中的簡單規(guī)則和“與”規(guī)則均對(duì)應(yīng) FNPN中的一個(gè)變遷,而一條“或”規(guī)則對(duì)應(yīng) FNPN中的一組變遷,模糊產(chǎn)生式規(guī)則中的命題與 FNPN中的庫所是一一對(duì)應(yīng)的,規(guī)則中模糊命題的當(dāng)前隸屬度值為 FNPN中庫所的標(biāo)記值,規(guī)則的置信度和閾值對(duì)應(yīng) FNPN中變遷的一個(gè)映射函數(shù),規(guī)則中的權(quán)值對(duì)應(yīng) FNPN中相應(yīng)變遷的輸入有向弧上的權(quán)值.簡單規(guī)則、“與”規(guī)則及“或”規(guī)則對(duì)應(yīng)的FNPN模型類似于文獻(xiàn)[1]中的定義2.
對(duì)于一個(gè)變遷jtT∈,若為庫所ip 的標(biāo)識(shí),i=1,2,…,m,j=1,2,…,n,稱變遷jt是使能的.都有,其中
使能的變遷可以點(diǎn)燃,當(dāng)變遷 t點(diǎn)燃時(shí),其輸入庫所中的標(biāo)記值不改變,而向輸出庫所傳送新的標(biāo)記值,新標(biāo)記的計(jì)算規(guī)則如下.
對(duì)于圖 1所示的模糊產(chǎn)生式簡單規(guī)則[1],輸出庫所2p將獲得新標(biāo)記值2()Mp′,計(jì)算規(guī)則為
圖1 簡單規(guī)則的FNPN模型Fig.1 FNPN model of simple rules
對(duì)于圖2所示的模糊產(chǎn)生式“與”規(guī)則[1],輸出庫所 pm將獲得新的標(biāo)記值計(jì)算規(guī)則為
圖2 “與”規(guī)則的FNPN模型Fig.2 FNPN model of“and”rules
對(duì)于圖 3所示的模糊產(chǎn)生式“或”規(guī)則[1],輸出
庫所 pm將獲得新的標(biāo)記值計(jì)算規(guī)則為
圖3 “或”規(guī)則的FNPN模型Fig.3 FNPN model of“or”rules
針對(duì)FNPN模型中變遷的使能條件及FNPN的樣本數(shù)據(jù)學(xué)習(xí)訓(xùn)練中的特點(diǎn),采用 2種 S型連續(xù)函數(shù)分別表示變遷使能及變遷點(diǎn)燃后的新標(biāo)記值.
為了改善網(wǎng)絡(luò)的收斂特性,在增大學(xué)習(xí)率的同時(shí)不至于產(chǎn)生震蕩,在傳統(tǒng)的權(quán)值、置信度及閾值修正公式[8]中增加一個(gè)新型動(dòng)量項(xiàng),即
以上內(nèi)容對(duì) FNPN模型的相關(guān)定義和算法改進(jìn)之處進(jìn)行了描述,為了更加清晰明確的闡述其中涉及的公式計(jì)算,特別列舉一實(shí)例加以說明.
現(xiàn)假設(shè)有一個(gè)專家系統(tǒng)[11]R,系統(tǒng)中命題集為其模糊產(chǎn)生式規(guī)則如下:
其中
該專家系統(tǒng)R對(duì)應(yīng)的FNPN模型如圖4所示.
圖4 專家系統(tǒng)R的FNPN模型Fig.4 FNPN model of expert system R
FNPN模型為
式中:
假設(shè)圖 4中初始輸入庫所的標(biāo)記值分別為 0.9、0.8、0.95,變遷的置信度分別為 0.7、0.9、0.8、0.95、0.98,閾值分別為 0.6、0.7、0.7、0.72、0.65,初始權(quán)值為
(1)判斷變遷1t、2t和3t的使能狀態(tài).庫所1p傳遞標(biāo)識(shí)給1t后,利用函數(shù)1()Fx判斷1t的使能狀態(tài),經(jīng)計(jì)算可知當(dāng)常數(shù)b足夠大時(shí)即變遷1t是使能的.同理可知,變遷2t和3t也是使能的.
(2)計(jì)算庫所4p、5p和6p的標(biāo)記值.對(duì)于4p,
(3)判斷變遷4t和5t的使能狀態(tài).4p、5p和6p傳遞標(biāo)識(shí)給4t后,利用函數(shù)1()Fx判斷4t的使能狀態(tài),計(jì)0.76,同理可計(jì)算得算可知且當(dāng)常數(shù)b足夠大時(shí)即變遷4t是使能的.同理可知,變遷5t也是使能的.
(4)計(jì)算最終輸出庫所7p和8p的標(biāo)記值. 對(duì)于7p,0.2166,同理可計(jì)算得
(1)對(duì)系統(tǒng)設(shè)置初始值,將所有輸入權(quán)值、變遷置信度以及節(jié)點(diǎn)閾值的初始值設(shè)置為較小的隨機(jī)數(shù),令輸入命題和中間命題的總個(gè)數(shù)為m,變遷的總個(gè)數(shù)為n,樣本總數(shù)為N,i和 j分別為1.
(2)由設(shè)計(jì)思路自動(dòng)生成目標(biāo)函數(shù)f,并規(guī)定誤差限ε.
(3)輸入隨機(jī)樣本數(shù)據(jù)以及期望輸出、函數(shù)1()Fx和2()F x的各常數(shù)值,根據(jù)1()Fx的判斷結(jié)果,對(duì)使能的變遷 t利用2()F x計(jì)算實(shí)際輸出,得到初始誤差,若0fε<,則結(jié)束;否則就直接進(jìn)入下一步.
(4)依據(jù)式(5)對(duì)權(quán)值進(jìn)行調(diào)整,并且判斷是否每一個(gè)權(quán)值都大于等于零,若權(quán)值都大于等于零,轉(zhuǎn)(5);否則,轉(zhuǎn)(6).
(5)依據(jù)調(diào)整后的權(quán)值,重新計(jì)算得到的誤差值,比較誤差值if與1if?,若則轉(zhuǎn)至(4);否則進(jìn)入下一步.
(6)改變動(dòng)量因子α 的值,重新調(diào)整權(quán)值,說明原來的權(quán)值調(diào)整方式不正確.
(7)令 1ii=+ ,判斷 i是否大于 n,若不大于則轉(zhuǎn)(3),否則轉(zhuǎn)入下一步.
(8)判斷此時(shí)的if是否已經(jīng)達(dá)到規(guī)定的誤差限,若已經(jīng)達(dá)到,則終止訓(xùn)練;若還沒有達(dá)到,判斷權(quán)值訓(xùn)練次數(shù)是否超過規(guī)定次數(shù),若沒有,則將if賦值給并重新使得 i=1,轉(zhuǎn)(3),開始下一輪的訓(xùn)練;如果已經(jīng)超過了規(guī)定的訓(xùn)練次數(shù),則轉(zhuǎn)(9).
(9)對(duì)變遷的置信度進(jìn)行訓(xùn)練,逐個(gè)調(diào)整置信度,使其不超過 1,逐次計(jì)算誤差值kf并判斷是否達(dá)到誤差限,若達(dá)到誤差限,則終止訓(xùn)練;若還沒有達(dá)到,則一直調(diào)整置信度直到達(dá)到規(guī)定的訓(xùn)練次數(shù)為止;如果此時(shí)還沒有達(dá)到要求,則轉(zhuǎn)(10).
(10)同步驟(9)對(duì)節(jié)點(diǎn)閾值進(jìn)行訓(xùn)練.
定理 對(duì)于式(5)的 FNPN 調(diào)整公式,當(dāng)t→∞時(shí),r?∈N都有即按照此算法調(diào)整網(wǎng)絡(luò)是收斂的.
當(dāng)r=1時(shí)
根據(jù)范數(shù)的齊次性有
此式顯然存在如下關(guān)系式:
因此是收斂的.
假設(shè)r=k時(shí)公式收斂,即
根據(jù)范數(shù)的性質(zhì),對(duì)于0ε?>,2n?∈N,都有
則當(dāng)r=k+1時(shí),有
亦即
進(jìn)而有
根據(jù)范數(shù)的三角不等式性質(zhì)有
根據(jù)兩面夾定理有
綜上所述,可知0ε?>,t→∞都有
亦即調(diào)整算法是收斂的.
本文提出的 FNPN優(yōu)化算法利用帶有不同參數(shù)的S型函數(shù)不僅使得FNPN學(xué)習(xí)訓(xùn)練過程變遷t使能狀態(tài)的判斷更快捷、變遷點(diǎn)燃后傳遞給輸出庫所的新標(biāo)記值結(jié)果更精確;而且在訓(xùn)練過程中為了改善網(wǎng)絡(luò)的收斂特性,在增大學(xué)習(xí)率的同時(shí)不至于產(chǎn)生震蕩,在傳統(tǒng)的參數(shù)修正公式中引入動(dòng)量項(xiàng),對(duì)網(wǎng)絡(luò)中的權(quán)值、閾值及置信度進(jìn)行修改,經(jīng)過證明此調(diào)整算法是收斂的.
針對(duì)優(yōu)化算法精確度、收斂性及網(wǎng)絡(luò)震蕩趨勢(shì)的數(shù)據(jù)和圖像方面的展示證明還有待進(jìn)一步闡述.
[1] 鮑培明. 基于 BP網(wǎng)絡(luò)的模糊 Petri網(wǎng)的學(xué)習(xí)能力[J].計(jì)算機(jī)學(xué)報(bào),2004,27(5):695–702.
[2] 原菊梅,侯朝楨,王小藝,等. 復(fù)雜系統(tǒng)可靠性估計(jì)的模糊神經(jīng) Petri網(wǎng)方法[J]. 控制理論與應(yīng)用,2006,23(5):687–691.
[3] Li Xiaoou,Yu Wen,Lara-Rosano F. Dynamic knowledge inference and learning under adaptive fuzzy Petri net framework[J]. IEEE Transactions on Systems,Man and Cybernetic,Part C:Applications and Reviews,2000,30(4):442–450.
[4] 劉靜,潘煉. 基于模糊 Petri網(wǎng)的高爐故障診斷系統(tǒng)[J]. 計(jì)算機(jī)測(cè)量與控制,2013,21(5):1157–1159.
[5] Binh P T T,Tuyen N D. Fault diagnosis of power system using neural Petri net and fuzzy neural Petri net[C]//Proceedings of 2006 IEEE Power India Conference. Piscataway:IEEE,2006,554–558.
[6] 張智泉. 基于模糊神經(jīng)Petri網(wǎng)的絕緣子運(yùn)行狀態(tài)診斷系統(tǒng)研究[D]. 武漢:湖北工業(yè)大學(xué),2011.
[7] 徐輝. 基于模糊神經(jīng) Petri網(wǎng)的高爐故障診斷[D]. 武漢:武漢科技大學(xué),2012.
[8] Li Xiaozhong,Li Qiu. A parameter adjustment algorithm of BP neural network[C]//Proceedings of the 3rd International Conference on Intelligent System and Knowledge Engineering. Piscataway:IEEE,2008:892–895.
[9] Ahson S I. Petri net models of fuzzy neural networks[J].IEEE Transactions on Systems,Man and Cybernetics,1995,25(6):926–932.
[10] 方平. 基于Petri網(wǎng)的知識(shí)表示方法研究[D]. 武漢:武漢理工大學(xué),2013.
[11] Liu Xin,Yin Guisheng. Fuzzy neural Petri nets for expert systems[C]//Proceedings of the 2nd International Conference on Intelligent Computing Technology and Automation. Piscataway:IEEE,2009:732–735.
[12] Wai R J,Chu C C. Motion control of linear induction motor via Petri fuzzy neural network[J]. IEEE Transactions on Industrial Electronics,2009,54(1):281–295.
[13] Hanna M M,Buck A,Smith R. Fuzzy Petri nets with neural networks to model products quality from a CNC-millings machining center[J]. IEEE Transactions on Systems,Man and Cybernetics,Part A:Systems and Humans,1996,26(5):638–645.