姜 飛
1.宿州學(xué)院信息工程學(xué)院,安徽宿州,234000;2.宿州學(xué)院智能信息處理實(shí)驗(yàn)室,安徽宿州,23400
傳感器技術(shù)作為信息社會(huì)的三大技術(shù)之一,隨著電子計(jì)算機(jī)、生產(chǎn)自動(dòng)化、化學(xué)、環(huán)保、能源、海洋開發(fā)、遙感、航天等科學(xué)技術(shù)的發(fā)展,對傳感器的需求量與日俱增,其應(yīng)用已滲入到國民經(jīng)濟(jì)的各個(gè)部門及人們的日常生活之中??梢哉f,從太空到海洋,從各種復(fù)雜的工程系統(tǒng)到人們?nèi)粘I畹囊率匙⌒?,都離不開各種各樣的傳感器。對廣大傳感器選型制造商來說,在他們所生產(chǎn)的產(chǎn)品中選擇合適的傳感器,不僅會(huì)使產(chǎn)品的性價(jià)比獲得最佳狀態(tài),而且能夠使產(chǎn)品更符合消費(fèi)者的需求,從而更好地適應(yīng)從以“產(chǎn)品中心”向以“用戶和市場”為中心的方向轉(zhuǎn)變,加速企業(yè)經(jīng)濟(jì)效益。因此,需要什么樣的傳感器和選擇理想的傳感器作為產(chǎn)品的部件,已成為該領(lǐng)域制造商的迫切需要,本文開發(fā)的專家系統(tǒng)能夠很好地解決上述問題。
近年來,隨著人工智能的蓬勃發(fā)展,人工智能已在許多領(lǐng)域中備受關(guān)注,獲得了快速的發(fā)展,專家系統(tǒng)就是其中最廣泛、最實(shí)用、最有成就的分支。但對于專家系統(tǒng),目前還沒有形成統(tǒng)一精確的概念,美國斯坦福大學(xué)Edward Feigenbaum教授提出專家系統(tǒng)是“一種智能的計(jì)算機(jī)程序”,它的功能是“運(yùn)用知識(shí)和模擬人的推理來解決只有領(lǐng)域?qū)<也拍芙鉀Q的復(fù)雜問題”[1]。
一般提出的專家系統(tǒng)模塊結(jié)構(gòu)圖,如圖1所示,各個(gè)功能模塊的主要作用如下所述:
圖1 專家系統(tǒng)的一般結(jié)構(gòu)
(1)人機(jī)接口(Human & Machine Interface):用戶或者專家對專家系統(tǒng)之間的通信界面以及通信機(jī)制。
(2)解釋機(jī)(Explanation Facility):解釋專家系統(tǒng)的推理過程,處理結(jié)果給相關(guān)用戶。
(3)推理機(jī)(Interface Engine):是知識(shí)庫系統(tǒng)的最重要部分,用戶可以設(shè)定哪些規(guī)則滿足事實(shí)或目標(biāo),并對每個(gè)規(guī)則設(shè)置不同優(yōu)先級,然后通過執(zhí)行關(guān)聯(lián)規(guī)則來進(jìn)行推理[2]。
(4)知識(shí)獲取機(jī)(Knowledge Acquisition Facility):通過編程實(shí)現(xiàn)機(jī)器學(xué)習(xí),以代替專家去逐一編寫規(guī)則,讓知識(shí)庫自主添加優(yōu)化的規(guī)則。
(5)數(shù)據(jù)庫(Database):存放時(shí)實(shí)數(shù)據(jù),推理過程中間結(jié)果,供推理機(jī)與解釋機(jī)構(gòu)使用。
(6)知識(shí)庫(Knowledge Base):利用規(guī)則存放完善的基本規(guī)則、豐富的專家經(jīng)驗(yàn)、規(guī)范的知識(shí)模型,庫中的知識(shí)數(shù)據(jù)為量化分級而被推理機(jī)所采納,同時(shí),可以通過相應(yīng)的知識(shí)管理接口來維護(hù)[2]。因此,專家系統(tǒng)可以表示為:專家系統(tǒng)=知識(shí)+推理。
專家系統(tǒng)建設(shè)最基礎(chǔ)的部分就是知識(shí),系統(tǒng)內(nèi)的知識(shí)質(zhì)量和數(shù)量決定了專家系統(tǒng)所能達(dá)到的智能化程度,因此,知識(shí)的獲取在專家系統(tǒng)中有著舉足輕重的地位。按知識(shí)獲取的主動(dòng)性可分為兩種方式:自動(dòng)知識(shí)獲取和非自動(dòng)知識(shí)獲取。就目前而言,還不能真正實(shí)現(xiàn)自動(dòng)獲取知識(shí)功能。本系統(tǒng)的知識(shí)獲取方式以非自動(dòng)為主,通過知識(shí)庫工程師和相關(guān)領(lǐng)域?qū)<叶啻谓涣鳒贤▉硇纬苫局R(shí)、高等規(guī)則等,再從因特網(wǎng)、相關(guān)書籍和其他渠道,利用數(shù)據(jù)挖掘技術(shù)來獲得知識(shí)。
所謂知識(shí)表示,就是以某種語言或媒介描述論域的內(nèi)容,即如何將關(guān)于世界的事實(shí)、關(guān)系、過程等編碼成為一種合適的數(shù)據(jù)結(jié)構(gòu),適合于計(jì)算機(jī)操作和運(yùn)行[3]。
知識(shí)庫中所涵蓋的知識(shí)非常廣泛,知識(shí)的結(jié)構(gòu)也比較復(fù)雜,知識(shí)一般需要進(jìn)行推理和維護(hù)等工作。采用面向?qū)ο蟮闹R(shí)表示方法,把知識(shí)作為一個(gè)復(fù)雜的基對象,它是由簡單對象組成的。以此類推,經(jīng)過層層分解,直至形成一個(gè)樹型結(jié)構(gòu),包含若干個(gè)元對象[2]。
推理機(jī)的推理實(shí)現(xiàn)包括兩個(gè)方面:一方面是采用什么推理方法,另一方面是采用什么控制策略。推理方法主要有確定性推理和不確定性推理,傳感器選型專家系統(tǒng)主要使用確定性推理(即CF=1)。推理的控制策略主要有三個(gè)方面:推理方向、沖突消解和搜索策略。其中推理方向有正向推理、反向推理、混合推理和雙向推理。本系統(tǒng)結(jié)合自身特點(diǎn),采用雙向推理,既能從傳感器選型推理所需的傳感器,又能從某類傳感器推理出所能應(yīng)用的領(lǐng)域。
圖2 面向?qū)嶓w的推理機(jī)工作周期示意圖
推理機(jī)工作周期模塊圖如圖2所示。
沖突消解的基本思想是對要用的知識(shí)進(jìn)行排序。主要用來消除冗余的知識(shí)和有異議的知識(shí),維護(hù)知識(shí)的簡潔性和一致性。
搜索是一類重要的知識(shí)運(yùn)用。搜索的對象可以是一個(gè)狀態(tài)空間,也可以是一個(gè)知識(shí)或數(shù)據(jù)的集合等。搜索方法可分為“深度優(yōu)先搜索方法”、“廣度優(yōu)先搜索”、“啟發(fā)式搜索方法”等幾大類。傳感器選型采用深度優(yōu)先搜索和啟發(fā)式搜索相結(jié)合的搜索方法。
傳感器按不同分類方法可以分成多種類別。通常按測量方式劃分為三類:物理量傳感器(Physical quantity sensor) 、化學(xué)量傳感器(Chemical quantity sensor)和生物量傳感器(Biological quantity sensor)[4]。為了方便處理,部分傳感器類別編號如圖3所示。
圖3 傳感器樹形分類結(jié)構(gòu)局部圖
根據(jù)圖3樹形結(jié)構(gòu)逐漸將產(chǎn)品編號細(xì)致化,例如,某款差壓傳感器雖然在廠家產(chǎn)品具體編號是KYC04系列,要想獲得的對應(yīng)產(chǎn)品編碼,就需要根據(jù)結(jié)構(gòu)圖逐步查找為:物理傳感器(以字母P開頭)→P01→P0101→P010104→P01010101(即KYC04系列差壓傳感器編碼)。如有需要傳感器類型子層次可再建立,該傳感器可應(yīng)用于哪些領(lǐng)域的子樹[3]。采用傳感器產(chǎn)品樹型結(jié)構(gòu)表示法,可以方便地為日益龐大的傳感器數(shù)據(jù)表按類別領(lǐng)域分類,建立多張索引表,實(shí)現(xiàn)知識(shí)的索引順序表查找達(dá)到塊查找方式,提高知識(shí)搜索效率。查找時(shí)間復(fù)雜度由O(n)提高到O(log2n)[4-5]。這也為推理算法快速運(yùn)算的實(shí)現(xiàn)提供一個(gè)保證。
隨著科技和傳感器技術(shù)的發(fā)展,傳感器所應(yīng)用的領(lǐng)域越來越廣,在此,只就傳感器在一些主要領(lǐng)域中的應(yīng)用進(jìn)行簡要介紹。根據(jù)傳感器選型可分以下幾個(gè)主要類別:(1)傳感器在工業(yè)檢測和自動(dòng)控制系統(tǒng)中的應(yīng)用;(2)傳感器在汽車中的應(yīng)用;(3)傳感器在家用電器中的應(yīng)用;(4)傳感器在機(jī)器人上的應(yīng)用;(5)傳感器在醫(yī)療及人體醫(yī)學(xué)上的應(yīng)用;(6)傳感器在環(huán)境保護(hù)中的應(yīng)用;(7)傳感器在航空及航天上的應(yīng)用;(8)傳感器在遙感技術(shù)上應(yīng)用。
根據(jù)專家系統(tǒng)所面對的用戶以及本專家系統(tǒng)采用關(guān)系數(shù)據(jù)庫來實(shí)現(xiàn)知識(shí)庫等特點(diǎn),本專家系統(tǒng)選用Microsoft公司開發(fā)的VB.NET作為前臺(tái)開發(fā)工具,利用VB.NET提供的ADO.NET數(shù)據(jù)接口技術(shù)實(shí)現(xiàn)與后臺(tái)的SQL Server 2000系統(tǒng)中的數(shù)據(jù)表和推理規(guī)則表的無縫連接,開發(fā)出一套實(shí)用、可行的應(yīng)用界面,專家利用這個(gè)知識(shí)獲取界面進(jìn)行知識(shí)輸入,用戶可以方便地進(jìn)行數(shù)據(jù)和知識(shí)的查詢和推理,并且具有自動(dòng)進(jìn)行一致性檢查、重復(fù)檢測和維護(hù)等工作[5-6]。
由于關(guān)系數(shù)據(jù)庫管理系統(tǒng)在解決結(jié)構(gòu)化策略問題,以及數(shù)據(jù)共享、并發(fā)控制、數(shù)據(jù)存取和查詢等方面功能強(qiáng)大,且具有低冗余性的特點(diǎn),所以可以很好地彌補(bǔ)知識(shí)庫在查找、訪問和管理海量數(shù)據(jù)方面能力低下的缺點(diǎn)。另外,數(shù)據(jù)庫在數(shù)據(jù)抽象能力和推理演繹能力方面的缺陷,可通過基于面向?qū)嶓w的知識(shí)表示方法來解決,形成一個(gè)很有特色的專家數(shù)據(jù)庫管理系統(tǒng)[7-8]。
在此采用SQL Server 2000關(guān)系數(shù)據(jù)庫管理軟件來開發(fā)實(shí)施專家系統(tǒng)知識(shí)庫和數(shù)據(jù)庫。特別是知識(shí)庫建設(shè)中采取規(guī)范化審核,達(dá)到規(guī)則描述清晰、邏輯判斷明確。在專家系統(tǒng)具體實(shí)現(xiàn)過程中,本系統(tǒng)的傳感器知識(shí)采用面向?qū)嶓w的知識(shí)表示的方法,產(chǎn)生式規(guī)則具有前提和結(jié)論兩部分。知識(shí)庫可由規(guī)則表、前提列表、結(jié)論列表、規(guī)則關(guān)系表、知識(shí)庫索引表和建議列表構(gòu)成,規(guī)則間的關(guān)系通過面向?qū)ο蟮姆椒▽?shí)現(xiàn);數(shù)據(jù)庫是由廠家表、產(chǎn)品表、參數(shù)表、實(shí)例表和數(shù)據(jù)庫索引表構(gòu)成,兩大索引表使專家系統(tǒng)在擁有海量知識(shí)的情況下,能夠加快知識(shí)的搜索效率。各表的關(guān)系模式如下(帶有下劃線的字段為主鍵):
規(guī)則表(規(guī)則號,規(guī)則名,規(guī)則類)
前提列表(規(guī)則號,條件1,條件2,…,條件n)
結(jié)論列表(規(guī)則號,結(jié)論1,結(jié)論2,…,結(jié)論n)
規(guī)則關(guān)系表(關(guān)系號,超類,子類)
知識(shí)庫索引表(ID,規(guī)則類,規(guī)則類地址)
建議列表(建議號,建議人,聯(lián)系方式,建議1,建議2,…,建議n)
廠家表(廠家編號,廠家名,廠家地址,廠家網(wǎng)站,廠家聯(lián)系方式,其他屬性)
產(chǎn)品表(產(chǎn)品編號,產(chǎn)品型號,產(chǎn)品名稱,廠家號,傳感器類型,外形圖,特點(diǎn),應(yīng)用領(lǐng)域,其他屬性)
參數(shù)表(產(chǎn)品編號,測量介質(zhì),量程范圍,工作溫度,補(bǔ)償溫度,線性度,靈敏度,分辨率,重復(fù)性及遲滯,精度,穩(wěn)定性,引線方式,其他屬性)
實(shí)例表(ID,應(yīng)用領(lǐng)域,實(shí)例方案)
數(shù)據(jù)庫索引表(索引號,傳感器類型,在產(chǎn)品表中地址,在參數(shù)表中地址)
按以上關(guān)系模式,可以在SQL Server 2000企業(yè)管理器中創(chuàng)建“知識(shí)庫”和“數(shù)據(jù)庫”,但這樣做非常麻煩,最好把關(guān)系模式轉(zhuǎn)化為SQL語言后,為知識(shí)庫和數(shù)據(jù)庫及其他數(shù)據(jù)表創(chuàng)建腳本文件,然后在查詢分析器里執(zhí)行,即可創(chuàng)建。然后用VB.NET開發(fā)傳感器選型的專家系統(tǒng)軟件,當(dāng)用戶打開專家系統(tǒng)軟件時(shí),首先進(jìn)入用戶登錄界面,只有合法用戶才能訪問該系統(tǒng)。
圖4 傳感器應(yīng)用領(lǐng)域?qū)<蚁到y(tǒng)主界面
合法用戶即可進(jìn)入圖4所示主界面:單擊某一按鈕即可進(jìn)入相應(yīng)的操作窗口,例如:單擊知識(shí)推理系統(tǒng)的按鈕并進(jìn)行可視化選擇,即可獲得圖5所示的推理運(yùn)行結(jié)果界面。
圖5 知識(shí)推理系統(tǒng)運(yùn)行結(jié)果圖
本系統(tǒng)由VB.NET語言和SQLServer2000數(shù)據(jù)庫軟件開發(fā)而成,以應(yīng)用軟件包的形式提供給用戶。本系統(tǒng)在獲取相當(dāng)數(shù)量的知識(shí)后,進(jìn)行反復(fù)測試,運(yùn)行結(jié)果比較滿意。然而,從全球范圍來看,專家系統(tǒng)雖然比數(shù)據(jù)庫系統(tǒng)誕生得還要早,但由于其受到人工智能和知識(shí)工程發(fā)展水平的制約,發(fā)展一直相對緩慢。因此,需要更多的科研人員不斷地探索和研究,使專家系統(tǒng)和計(jì)算機(jī)技術(shù)、人工智能等技術(shù)進(jìn)一步深度融合,發(fā)揮百家之長,這樣設(shè)計(jì)的專家系統(tǒng)才能擁有更高水準(zhǔn)的“智能化”,成為名副其實(shí)的專家。
參考文獻(xiàn):
[1]張煜東,吳樂南,王水花.專家系統(tǒng)發(fā)展綜述[J].計(jì)算機(jī)工程與應(yīng)用,2010(19):43-47
[2]滕佑水.基于知識(shí)的傳感器概念設(shè)計(jì)智能啟發(fā)系統(tǒng)的研究[D].合肥:安徽農(nóng)業(yè)大學(xué)工學(xué)院,2007:5-50
[3]滕佑水,尹成龍,朱林,等.基于知識(shí)的傳感器概念設(shè)計(jì)的研究[J].沈陽工業(yè)大學(xué)學(xué)報(bào),2007,29(1):82-85
[4]樊尚春.傳感器技術(shù)新發(fā)展[J].世界電子元器件,2002(12):26-27
[5]洪學(xué)海.協(xié)同式專家系統(tǒng)原理方法及應(yīng)用[J].成都理工學(xué)院學(xué)報(bào),1999(3):56-59
[6]雷金紅,程禮富,王君.模糊控制理論在專家系統(tǒng)中的應(yīng)用[C]//第三十一屆中國控制會(huì)議論文集:B卷.合肥:中國自動(dòng)化學(xué)會(huì)控制理論專業(yè)委員會(huì),2012:5-6
[7]BruceG Buchanan,RichardO Duda,陳屹,等.基于規(guī)則的專家系統(tǒng)原理[J].計(jì)算機(jī)科學(xué),1986(3):23-37
[8]彭瑩瓊,王映龍,唐建軍,等.B/S模式的水稻病蟲害診斷專家系統(tǒng)研究[J].江西農(nóng)業(yè)大學(xué)學(xué)報(bào),2008(6):1157-1160