蘇鋒++賈明明++李丹
【摘 要】以粗糙集理論為基礎,針對腐蝕條件下航空材料的圖像特征值和蝕坑深度進行了離散化處理,構建了分辨矩陣,通過屬性約簡生成了決策規則集,對蝕坑深度進行了預測。使用Visual Studio2005平臺,開發了基于粗糙集規則庫的腐蝕損傷診斷軟件。該軟件以約簡后得到的圖像特征值為輸入,以蝕坑深度范圍為輸出,界面清晰明了,便于使用。
【關鍵詞】粗糙集;損傷;診斷;圖像
1.引言
粗糙集的研究對象是由一個多值屬性(特征、癥狀、特性等)集合描述的一個對象(觀察、病歷等)集合,對于每個對象及其屬性都有一個值作為其描述符號。對象、屬性和描述符是表達決策問題的3個基本要素[1]。
將腐蝕圖像特征值作為條件屬性,蝕坑深度(腐蝕損傷)作為決策屬性,通過粗糙集處理后得到的規則庫簡便明了,使得非專業人員利用圖像特征值對腐蝕損傷進行判斷成為可能。為了使粗糙集處理后得到的規則庫便于實際應用,以Visual Studio 2005及Microsoft Office Access為基礎,開發了基于粗糙集理論的點蝕條件下腐蝕損傷診斷專家系統。該系統生成的規則庫為基礎,對輸入的腐蝕現象(圖像特征值類別)自動進行腐蝕損傷診斷,給出點蝕坑深度范圍,且該系統具有開放性、實時性的特點,方便使用,也為今后開發適用范圍更廣、更復雜的腐蝕損傷診斷專家系統提供了思路。
2.粗糙集基本概念
粗糙集(Rough Set)理論由波蘭數學家Z.Pawlak于1982年提出。它以等價關系為基礎,反映了認知過程在非確定、非模型信息處理方面的機制和特點,是一種有效的非單調推理工具[2],非常適合處理系統信息不完全和不精確的分類和診斷問題。
知識表達系統就是研究將對象的知識通過指定對象的基本特征和特征值來描述,以便通過一定的方法從大量的數據中發現有用的知識或決策規則。知識表達系統可用一個四元組 表示:
式中:有限非空集合,稱為論域,,其中為研究對象;
為對象屬性的集合;
為屬性值的集合, 是屬性的值域;
為的一個信息函數,為每個對象的每個屬性 賦予一個屬性值,即。
3.腐蝕診斷軟件開發
3.1開發平臺
平臺開發使用的是微軟公司2005年推出的Visual Studio 2005,Visual Studio是目前最流行的Windows平臺應用程序開發環境。雖然.NET字眼從各種語言的名字中被抹去,但是這個版本的Visual Studio仍然還是面向.NET框架的(版本2.0)。它同時也能開發跨平臺的應用程序,如開發使用微軟操作系統的手機的程序等,總體來說是一個非常龐大的軟件,并具有以下特點:
(1)使用改進后的可視化設計工具、編程語言和代碼編輯器,享受高效率的開發環境。
(2)在統一的開發環境中,開發并調試多層次的服務器應用程序。
(3)使用集成的可視化數據庫設計和報告工具,創建SQL Server 2005解決方案。
(4)使用Visual Studio SDK創建可以擴展Visual Studio IDE的工具。
3.2后臺數據庫系統
本文后臺數據庫系統選擇的是Microsoft office Access2003,Access是微軟公司推出的基于Windows的桌面關系數據庫管理系統(RDBMS,即Relational Database Management System),是Office系列應用軟件之一。它具有如下優點:
(1)存儲方式單一。Access管理的對象有表、查詢、窗體、報表、頁、宏和模塊,以上對象都存放在后綴為(.mdb)的數據庫文件中,便于用戶的操作和管理。
(2)面向對象。Access是一個面向對象的開發工具,利用面向對象的方式將數據庫系統中的各種功能對象化,將數據庫管理的各種功能封裝在各類對象中。它將一個應用系統當作是由一系列對象組成的,對每個對象它都定義一組方法和屬性。通過對象的方法、屬性完成數據庫的操作和管理,極大地簡化了用戶的開發工作。同時,這種基于面向對象的開發方式,使得開發應用程序更為簡便。
(3)界面友好、易操作Access 是一個可視化工具,是風格與Windows完全一樣,用戶想要生成對象并應用,只要使用鼠標進行拖放即可。
(4)集成環境、處理多種數據信息。Access基于Windows操作系統下的集成開發環境,該環境集成了各種向導和生成器工具,極大地提高了開發人員的工作效率,使得建立數據庫、創建表、設計用戶界面、設計數據查詢、報表打印等可以方便有序地進行。
3.3運行環境
本平臺開發時所使用的系統為Microsoft公司的Windows XP Professional,因為不同版本的Windows系統對字符串的處理方式的差異,故本平臺最好運行于Windows XP的各種版本,同時該機必須裝有微軟公司推出的NET. Framework 2.0,以方便平臺對數據庫訪問。
4.軟件的結構設計
本軟件是一個面向用戶可擴展的平臺,其核心過程是腐蝕損傷診斷過程,其具體流程如圖1所示。
5.軟件的界面設置
本文所開發的腐蝕損傷診斷軟件界面如圖2所示。用戶首先根據屬性約簡后的結果進行圖像特征值的選擇(第4節得到的約簡為蝕坑半徑和蝕孔分形維數),隨后對激活的圖像特征值類別賦值(共計6個類別)。然后點擊確定按鈕,即可與Access數據進行通信,查詢數據庫中的診斷規則庫,找到相應的蝕坑深度類別(共計4個),并將查詢結果顯示在軟件界面的“蝕坑深度”欄,如圖3所示;如果查詢不到則輸出無法判斷的提示,如圖4所示。在輸入圖像特征值類別過程中若發現輸入有誤,可點擊“重新輸入”按鈕更改輸入的數據。
6結論
使用Visual Studio 2005平臺,開發了基于粗糙集規則庫的點蝕條件下腐蝕損傷診斷軟件。該軟件以約簡后得到的圖像特征值為輸入,以蝕坑深度范圍為輸出,界面清晰明了,便于使用。
參考文獻:
[1]Zdzislaw Pawlak, Jerzy Grzymala-Busse, et al. Rough Sets[J]. COMMUNICATIONS OF THE ACM, June 1995/Vol.38,No.6 89~95.
[2] 楊淑瑩. 模式識別與智能計算——Matlab技術實現[M]. 北京:電子工業出版社, 2008.
[3] 王彪, 段禪倫, 吳昊, 宋永剛. 粗糙集與模糊集的研究與應用[M]. 北京: 電子工業出版社, 2008.
[4] 王廣, 李軍. 基于粗糙集理論的航空發動機故障診斷[J]. 航空發動機, 2005(4):51-53.