馮洲鵬,祖象歡,曹瑞國(guó)
1.海軍駐興平地區(qū)軍事代表室,陜西興平 713105
2.哈爾濱工程大學(xué)動(dòng)力與能源工程學(xué)院,黑龍江哈爾濱 150001
3.陜西柴油機(jī)重工有限公司,陜西興平 713105
基于MATLAB GUI的灰色預(yù)測(cè)仿真優(yōu)化平臺(tái)設(shè)計(jì)
馮洲鵬1,祖象歡2,曹瑞國(guó)3
1.海軍駐興平地區(qū)軍事代表室,陜西興平 713105
2.哈爾濱工程大學(xué)動(dòng)力與能源工程學(xué)院,黑龍江哈爾濱 150001
3.陜西柴油機(jī)重工有限公司,陜西興平 713105
利用MATLAB GUI設(shè)計(jì)了基于GM(1,1)模型及改進(jìn)模型的灰色預(yù)測(cè)仿真優(yōu)化平臺(tái),該平臺(tái)集輸入、輸出、仿真計(jì)算以及后處理功能為一體,并通過(guò)編譯生成可脫離MATLAB的.exe可執(zhí)行程序,簡(jiǎn)化了灰色建模過(guò)程,提高了仿真效率。最后在該平臺(tái)上進(jìn)行了仿真實(shí)例,驗(yàn)證了該平臺(tái)的實(shí)用性。
灰色預(yù)測(cè);GM(1,1)模型;圖形用戶界面(GUI);仿真優(yōu)化平臺(tái)
GM(1,1)模型是灰色預(yù)測(cè)模型中最基礎(chǔ)的模型,具有建模簡(jiǎn)單、準(zhǔn)確的優(yōu)點(diǎn),目前已經(jīng)成功應(yīng)用在電力、航天、船舶等多個(gè)領(lǐng)域[1-5]。由于模型自身局限性,GM(1,1)模型主要適用于單調(diào)數(shù)列或光滑性好的數(shù)列,為此不少學(xué)者都提出不同的改進(jìn)方法[6-8],為灰色預(yù)測(cè)的實(shí)現(xiàn)和優(yōu)化奠定了理論基礎(chǔ)與有效方法?,F(xiàn)有的GM(1,1)模型仿真程序大多是通過(guò)編程在命令行界面中完成,無(wú)法實(shí)現(xiàn)程序的模塊化,不便于實(shí)際應(yīng)用。如DU等[9]采用MAT-LAB語(yǔ)言編寫(xiě)灰色預(yù)測(cè)程序m文件,進(jìn)而調(diào)用該m文件進(jìn)行計(jì)算仿真,完成對(duì)柴油機(jī)相繼增壓系統(tǒng)的故障預(yù)測(cè)與診斷。然而,改進(jìn)后的建模方法大多在原模型基礎(chǔ)上,對(duì)原有公式進(jìn)行修正或者融入新的數(shù)學(xué)理論,使得預(yù)測(cè)程序更加復(fù)雜,編程的工作量也隨之增加。在對(duì)模型進(jìn)行大量計(jì)算和驗(yàn)證中,命令行界面操作會(huì)給仿真程序運(yùn)行帶來(lái)諸多不便,影響仿真效率。
GUI(graphical user interfaces)是MATLAB軟件的一個(gè)重要模塊,是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面,具有開(kāi)發(fā)周期短、操作方便、界面友好的特點(diǎn)[10],有利于更方便快捷地控制仿真程序[11-13]。目前,針對(duì)灰色預(yù)測(cè)仿真及優(yōu)化問(wèn)題的界面化仿真平臺(tái)的研究相對(duì)較少,故文中利用MAT-LABT中的GUI設(shè)計(jì)了基于傳統(tǒng)GM(1,1)預(yù)測(cè)模型以及改進(jìn)模型的灰色預(yù)測(cè)仿真平臺(tái),該平臺(tái)集輸入、輸出、仿真計(jì)算以及后處理為一體,簡(jiǎn)化了建模過(guò)程,提高了仿真計(jì)算的效率,有效解決了灰色預(yù)測(cè)的預(yù)測(cè)精度的優(yōu)化問(wèn)題。最后以某型增壓柴油機(jī)為研究對(duì)象,在該平臺(tái)上進(jìn)行實(shí)例驗(yàn)證,結(jié)果表明了該平臺(tái)的準(zhǔn)確性和實(shí)用性。
1.1 GM(1,1)模型
GM(1,1)模型是一階單變量的微分方程模型,其建立的基本思路如下:若原始序列
x(0)={x(0)(1),x(0)(2),…,x(0)(n)}
滿足
式中:
x(1)={x(1)(1),x(1)(2),…,x(1)(n)}(1)
則稱(chēng)x(1)(k)為x(0)的一次累加生成,記為1-AGO。
在式(1)的基礎(chǔ)上建立白化微分方程:
式中a和u為待辨識(shí)參數(shù),記參數(shù)列為α^且
根據(jù)最小二乘法求解α^,得:
式中:由此可得GM(1,1)的離散響應(yīng)方程為
1.2 精度檢驗(yàn)
模型建立后需要進(jìn)行精度檢驗(yàn),主要包括:殘差檢驗(yàn)、后驗(yàn)差檢驗(yàn)以及關(guān)聯(lián)度檢驗(yàn),相應(yīng)的計(jì)算程序均由M語(yǔ)言編寫(xiě),精度等級(jí)參照如表1所示。
對(duì)x^(1)(k+1)作一次累減還原得到預(yù)測(cè)模型
表1 模型精度檢驗(yàn)等級(jí)參照表
1.3 GM(1,1)改進(jìn)模型
文中引用最常用的幾種改進(jìn)模型,包括殘差GM(1,1)預(yù)測(cè)模型、殘差均值GM(1,1)預(yù)測(cè)模型以及加常數(shù)優(yōu)化的GM(1,1)預(yù)測(cè)模型。
1.3.1殘差GM(1,1)模型
建立殘差模型的步驟如下:首先定義殘差為
ε(0)(k)=x(1)(k)-x^(1)(k)
k=i,i+1,…,n
令k=i,i+1,…,n,得到殘差序列:
ε(0)(k)=(ε(0)(i),ε(0)(i+1),…,ε(0)(n))
為便于表示,令n′=n-i+1:
ε(0)(k)=(ε(0)(1′),ε(0)(2′),…,ε(0)(n′))
對(duì)ε(0)(k)建立GM(1,1)模型可以得到:
將上述殘差的GM(1,1)模型加入原模型中得:
式中:
1.3.2 殘差均值GM(1,1)模型
如果按原始數(shù)據(jù)x0(i)建立的GM(1,1)模型,經(jīng)檢驗(yàn)不合格,則對(duì)原模型進(jìn)行修正的最簡(jiǎn)單的方法,就是對(duì)模型預(yù)測(cè)值x^(0)(k)都加上殘差平均值,即修正后的預(yù)測(cè)值為此新模型為殘差均值修正模型。
1.3.3 序列變換GM(1,1)模型
針對(duì)波動(dòng)數(shù)據(jù)預(yù)測(cè)精度受限的問(wèn)題,在原始序列中每一個(gè)數(shù)據(jù)均加上同一常數(shù)b,以此來(lái)弱化數(shù)據(jù)波動(dòng)帶來(lái)的影響。通過(guò)研究不同b值下衡量指標(biāo)的變化關(guān)系,找出最優(yōu)b值。其中,衡量指標(biāo)設(shè)定為:建模平均相對(duì)精度P0、殘差方差σ、關(guān)聯(lián)度ε、絕對(duì)平均誤差后驗(yàn)誤差C。其中:
本平臺(tái)通過(guò)MATLAB的圖形用戶界面(GUI)的設(shè)計(jì)環(huán)境來(lái)實(shí)現(xiàn)人機(jī)交互界面設(shè)計(jì),設(shè)計(jì)主要包括GUI界面設(shè)計(jì)和回調(diào)函數(shù)的設(shè)計(jì),分別對(duì)應(yīng)生成.fig和.m文件。仿真優(yōu)化平臺(tái)界面設(shè)計(jì)如圖1所示。
圖1 仿真平臺(tái)界面
GUI界面設(shè)計(jì)通過(guò)設(shè)置菜單和各個(gè)控件,并對(duì)其進(jìn)行位置布置和屬性編輯來(lái)實(shí)現(xiàn),在設(shè)計(jì)好GUI界面之后,編寫(xiě)菜單和各個(gè)控件的回調(diào)函數(shù)的程序代碼,實(shí)現(xiàn)各個(gè)控件相應(yīng)的功能。其中回調(diào)函數(shù)均采用M語(yǔ)言設(shè)計(jì)。該平臺(tái)設(shè)計(jì)有多個(gè)功能模塊,每個(gè)模塊包含多個(gè)子程序,結(jié)構(gòu)控制流程如圖2所示。
圖2 仿真平臺(tái)結(jié)構(gòu)控制流程
2.1 初始設(shè)置模塊
該模塊包括模型的設(shè)置和基本參數(shù)的輸入。在GM(1,1)模型的基礎(chǔ)上,引入了3種GM(1,1)改進(jìn)模型,便于用戶比較不同模型的仿真計(jì)算效果;通過(guò)導(dǎo)入功能,可以從指定的EXCEL或WORD中讀取歷史數(shù)據(jù)作為輸入,有利于進(jìn)行實(shí)時(shí)在線預(yù)測(cè)。
2.2 操作模塊
該模塊包括仿真、精度檢驗(yàn)、誤差分析、預(yù)測(cè)、步長(zhǎng)選擇等操作。用戶只需要通過(guò)這些操作即可完成對(duì)原始數(shù)據(jù)序列的灰色預(yù)測(cè)仿真計(jì)算。
2.3 輸出模塊
該模塊負(fù)責(zé)建模精度檢驗(yàn)結(jié)果和仿真結(jié)果的輸出,主要包括預(yù)測(cè)值、仿真計(jì)算過(guò)程中的中間反饋參數(shù)、曲線對(duì)比圖以及誤差分析的輸出等,每項(xiàng)輸出均可獨(dú)立顯示。此外,模塊設(shè)置有導(dǎo)出功能,可以將每次仿真計(jì)算的結(jié)果以及相關(guān)反饋參數(shù)保存至工作目錄下EXCEL或WORD文件中。
本計(jì)算實(shí)例根據(jù)文獻(xiàn)[9]中的試驗(yàn)數(shù)據(jù),分別取7個(gè)采樣時(shí)刻,前6個(gè)時(shí)刻的數(shù)據(jù)為原始數(shù)據(jù),第7個(gè)采樣時(shí)刻數(shù)據(jù)用來(lái)驗(yàn)證模型的預(yù)測(cè)精度。部分試驗(yàn)數(shù)據(jù)如表1所示。
表2 部分試驗(yàn)數(shù)據(jù)
1)單調(diào)數(shù)據(jù)。如油耗率,模型設(shè)置為傳統(tǒng)GM(1,1)模型,平臺(tái)仿真計(jì)算結(jié)果如圖3所示。從圖3可以看出,平臺(tái)輸出的模型擬合值為:[182.5 183.472 6 787.483 4 191.581 9 195.769 9 200.019 5];相對(duì)誤差為:[0 1.227 4 -0.883 41-1.081 9 0.1301 0.650 51];誤差精度“良好”;模型預(yù)測(cè)值為204.423,與文獻(xiàn)[9]中的預(yù)測(cè)值為204.4基本吻合,說(shuō)明了仿真平臺(tái)的準(zhǔn)確性。相比于文獻(xiàn)[9]的命令窗口操作形式,本平臺(tái)操作方便,仿真計(jì)算效率更高,同時(shí)所有中間反饋信息可以通過(guò)導(dǎo)出功能保存至工作目錄下.xls文件中,以便于用戶查詢和后處理。
圖3 油耗率仿真結(jié)果輸出
2)波動(dòng)數(shù)據(jù)。如增壓器轉(zhuǎn)速,模型設(shè)置為傳統(tǒng)GM(1,1)模型,平臺(tái)仿真計(jì)算結(jié)果如圖4所示。
圖4 增壓器轉(zhuǎn)速仿真結(jié)果輸出
從圖4可以看出,對(duì)于波動(dòng)數(shù)據(jù)傳統(tǒng)GM(1,1)模型擬合出的序列已經(jīng)無(wú)法準(zhǔn)確描述原序列的變化趨勢(shì),因而無(wú)法進(jìn)行準(zhǔn)確預(yù)測(cè),需要采取改進(jìn)模型。模型設(shè)置改為殘差GM(1,1)模型,不同i值下的模型結(jié)果與試驗(yàn)值對(duì)比圖如圖5所示。
圖5 不同i值時(shí)殘差GM(1,1)模型結(jié)果輸出
從圖5可以看出,當(dāng)i=1時(shí)即殘差GM(1,1)模型能夠反應(yīng)出增壓器轉(zhuǎn)速的波動(dòng)特點(diǎn),因此宜采用殘差GM(1,1)模型來(lái)對(duì)增壓器轉(zhuǎn)速進(jìn)行預(yù)測(cè),這與文獻(xiàn)[9]中的結(jié)論一致,進(jìn)一步說(shuō)明了該平臺(tái)的準(zhǔn)確性。
利用MATLAB GUI編程環(huán)境開(kāi)發(fā)了多功能灰色預(yù)測(cè)仿真優(yōu)化平臺(tái),有效避免了灰色預(yù)測(cè)建模過(guò)程中編程以及程序運(yùn)行的繁瑣,簡(jiǎn)化了建模過(guò)程,提高了建模仿真的效率;平臺(tái)提供多種改進(jìn)模型選擇,可以有效解決不同特點(diǎn)原始序列的灰色預(yù)測(cè)仿真及其優(yōu)化;通過(guò)編譯生成的.exe可執(zhí)行文件可脫離MATLAB單獨(dú)運(yùn)行,便于實(shí)際應(yīng)用。通過(guò)實(shí)例驗(yàn)證結(jié)果表明,此仿真平臺(tái)界面友好,操作方便,具有良好的實(shí)用性和交互性。
同時(shí)本研究在日后的工作中,將為平臺(tái)不斷補(bǔ)充更多的GM(1,1)優(yōu)化模型如全負(fù)數(shù)據(jù)序列GM(1,1)預(yù)測(cè)模型、基于Gourier GM(1,1)模型、GM(1,1)冪模型等,以此豐富模型庫(kù),為用戶的灰色預(yù)測(cè)建模研究提供更多的方式選擇。
[1]ZHANG Y J,ZHANG X T,LI Q H,et al.Gray theory based energy saving potential evaluation and planning for distribution networks[J].Information and Software Technol-ogy,2013,57:298-303.
[2]吳軍,劉滌塵.基于灰色預(yù)測(cè)的電力系統(tǒng)靜態(tài)頻率特性系數(shù)計(jì)算[J].電力系統(tǒng)保護(hù)與控制,2012,40(2):97-103.
[3]王霄婷,周軍,林鵬,等.變質(zhì)心再入飛行器的灰色預(yù)測(cè)PID控制[J].西北工業(yè)大學(xué)學(xué)報(bào),2012,30(4):485-490.
[4]LU X Z,LUW K.Pre-alarm model of diesel vapour detec-tion and alarm based on grey forecasting[J].Measurement,2012,45(4):656-662.
[5]朱顯輝,崔淑梅,師楠,等.電動(dòng)汽車(chē)電機(jī)故障時(shí)間的粒子群優(yōu)化灰色預(yù)測(cè)[J].高電壓技術(shù),2012,38(6):1391-1396.
[6]王正新,黨耀國(guó),趙潔玨,等.優(yōu)化的GM(1,1)冪模型及其應(yīng)用[J].系統(tǒng)工程理論與實(shí)踐,2012,32(9):1973-1978.
[7]張華,任若恩.基于小波分解和殘差GM(1,1)-AR的非平穩(wěn)時(shí)間序列預(yù)測(cè)[J].系統(tǒng)工程理論與實(shí)踐,2010,30(6):1016-1020.
[8]尚軍亮,方敏.一種優(yōu)化的高精度灰色GM(1,1)預(yù)測(cè)模型[J].電子與信息學(xué)報(bào),2010,32(6):1301-1305.
[9]DU JW,WANG Y Y.Fault forecast and diagnosis of se-quential turbocharging system based on grey theory and neural network[J].Transactions of CSIC,2008,26(6):543-545.
[10]陳垚光,毛濤濤.精通MATLAB GUI設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2011:47-52.
[11]王兆文,李浩,黃都,等.Matlab/GUI的汽油機(jī)缸內(nèi)直接噴霧圖像處理方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2013,44(9):19-23.
[12]秦輝,席裕庚.基于Matlab GUI的預(yù)測(cè)控制仿真平臺(tái)設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報(bào),2006,18(10):2778-2781.
[13]楊娟,郭海湘,楊文霞,等.基于MATLAB的GUI設(shè)計(jì)車(chē)輛路徑問(wèn)題的仿真優(yōu)化平臺(tái)[J].系統(tǒng)仿真學(xué)報(bào),2012,24(3):722-727.
Design for the simulation platform of grey forecast based on MATLAB GUI
FENG Zhoupeng1,ZU Xianghuan2,CAO Ruiguo3
1.The PLA Navy Military Affairs Representative Office in Xingping,Xingping 713105,China
2.College of Power and Energy Engineering,Harbin Engineering University,Harbin 150001,China
3.Shaanxi Diesel Engine Heavy Industry Co.,Ltd.,Xingping 713105,China
A simulation optimization platform of grey forecast based on GM(1,1)model and improvedmodelswas designed by GUI of MATLAB.The platform integrates input,output,simulation calculation and post processing functions,which are further compiled to generate executable program that can operate withoutMATLAB.It simpli-fies the greymodeling process and improves the efficiency of simulation.Finally,the practicability of the platform was verified by the simulation examples.
grey forecast;GM(1,1)model;graphical user interfaces(GUI);simulation optimization platform
TP391.9
A
1009-671X(2015)03-040-04
10.3969/j.issn.1009-671X.201409018
2014-09-30.
日期:2015-04-20.
國(guó)家863計(jì)劃資助項(xiàng)目(2012BAF01B01).作者簡(jiǎn)介:馮洲鵬(1975-),男,工程師;祖象歡(1991-),男,博士研究生.
祖象歡,E-mail:zuhuan0815@163.com.
http://www.cnki.net/kcms/detail/23.1191.U.20150420.1012.002.html