




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第8章專家系統的設計與開發由于專家系統
對人類、科學做出的貢獻。使得專家系統越來越受到重視和接受。可以設計一個專家系統來解決各種特定問題,可以在醫療診斷中做出令人信服的推論,可以解釋油井的波形,其應用遍及化學、醫學、地質學、氣象學、教育、軍事領域。但是,如何設計、開發專家系統尚無統一的標準模式和方法。
8.1專家系統的基本設計思想由于人類專家掌握了關于該領域的大量的專門知識,故它稱為領域專家。要使計算機能和專家一樣處理問題,必須先獲取大量的專門知識,然后才是有效地組織和存儲知識,以便推理使用。所以,ES實際上通過在系統中存儲大量與應用領域有關的專門知識來實現高水平的問題求解的。
第6章ES設計1ExpertSystemsDesign第8章專家系統的設計與開發由于專8.1專家系統的基本設計思想
1.專家系統是一種計算機程序,但專家系統程序區別于一般應用程序。一般應用程序——把問題求解的知識隱含地編寫在程序中,即把知識組織成兩級:數據級和程序級;專家系統程序——將應用領域問題求解的知識單獨組成一個知識庫實體,知識庫的處理是通過獨立于知識庫的控制策略來進行的。即把知識組織成三級:數據級、知識庫級和控制級。第6章ES設計2ExpertSystemsDesign8.1專家系統的基本設計思想1.專家系統是一種計算8.1專家系統的基本設計思想
2.專家系統的核心是知識知識的數量與質量是一個專家系統性能的決定性因素。因此,專家系統的主要特征是擁有一個巨大的知識庫,存儲著某個專門領域的知識。專家系統的控制級通常表達成某種推理規則。整個系統的工作過程是從知識庫出發,通過控制推理得到所需的結論。因此,專家系統能“理解”自身行為的目的,“知道”采取某一個步驟的緣由,所以具有較高的智能水平。第6章ES設計3ExpertSystemsDesign8.1專家系統的基本設計思想2.專家系統的核8.1專家系統的基本設計思想
綜上所述,ES的基本設計思想就是將知識和控制推理策略分開,形成知識庫。在推理策略的控制下,利用存儲的知識分析和處理問題。在求解問題時,用戶為ES提供一些已知數據,然后從ES中獲得專家水平的結論。第6章ES設計4ExpertSystemsDesign8.1專家系統的基本設計思想綜8.2專家系統的一般設計方法
目前,還沒有統一的ES設計規范。ES的基本設計思想是使計算機的工作過程竭盡全力地描述領域專家解決實際問題的工作過程。8.2.1ES設計的關鍵問題1)設計ES的兩個關鍵問題(1)建造知識庫涉及知識庫建造的兩項主要技術是:知識獲取和知識表示。(2)設計推理機制與控制策略涉及推理機制設計的兩項主要技術是:基于知識規則的推理和推理解釋機制。
第6章ES設計5ExpertSystemsDesign8.2專家系統的一般設計方法目前,8.2ES的一般設計方法
2)常用的知識獲取方式知識獲取是從領域專家處獲得知識、提取知識并將其轉換成ES程序的艱巨而細致的工作過程,即將問題求解中領域專家的經驗和技術從某個知識源提取到ES中。常用的知識獲取方式有三種:(1)知識工程師領域專家通過與知識工程師反復接觸、交談,把自己擁有的知識提供給知識工程師,由知識工程師和領域專家一起將這些專家知識歸納整理成ES的知識庫。
第6章ES設計6ExpertSystemsDesign8.2ES的一般設計方法2)常用的知識獲取方式8.2ES的一般設計方法
(2)智能編輯程序熟悉計算機的領域專家可以通過智能編輯程序把自己的經驗和知識輸入到ES的知識庫中。智能編輯程序應該具備靈活的人機對話能力和有關知識庫結構方面的知識。(3)歸納學習程序對大量實驗數據進行歸納和總結,將會得到一些新的規律和知識,利用歸納學習程序,可以模擬人的思維過程,從有關知識庫中發現新知識,然后將這些新知識加入到知識庫中,供ES使用。第6章ES設計7ExpertSystemsDesign8.2ES的一般設計方法(2)智能編輯程8.2ES的一般設計方法
由于真正做到能夠發現知識的ES還不多見,所以,歸納學習程序這種知識獲取方式是機器學習研究的一個長期目標,已經引起有關專家的重視,并列為ES的研究課題。3)知識表示知識表示是關于各種存儲知識的數據結構及其對這些數據結構解釋過程的結合。知識表示主要研究各種含有語義信息的數據結構的設計,以便在這些數據結構中存儲知識,開發各種操作這些數據結構的推理過程,使知識表示和知識運用的控制以及新知識的獲取相結合,把領域知識有機地結合到程序設計中。
第6章ES設計8ExpertSystemsDesign8.2ES的一般設計方法由于8.2ES的一般設計方法一個ES的知識表示方法不僅關系到知識的有效存儲,也直接影響推理效率和新知識獲取的能力。目前,有許多知識表示方法,如規則表示、框架表示、邏輯表示、語義網絡表示等。各種知識表示方法都有其獨特的優點和內在的不足,但都要遵循兩個重要的準則:(1)知識表示方法能自然、有效地表示知識;(2)知識表示結構易于檢索、運用、修改和擴充。在實際應用中,易于人們接受并且使用最多的是基于規則的產生式表示法(又稱為規則表示法)。其主要優點是:模塊性,清晰性,自然性。第6章ES設計9ExpertSystemsDesign8.2ES的一般設計方法一個ES8.2ES的一般設計方法
4)基于知識規則的推理基于知識規則的推理是指針對用戶的特定問題,選擇并運用知識庫中的知識,以實現求解問題的控制過程。推理涉及的兩個基本問題是:推理方向的選擇沖突消解策略第6章ES設計10ExpertSystemsDesign8.2ES的一般設計方法4)基于知識規則的推理第68.2ES的一般設計方法
(1)正向推理(前向推理)對于一個具體的ES問題,可以從問題的已有信息出發,選擇和運用知識庫中的可用知識,以推導出一些有用的中間結論,將中間結論作為已有信息的擴充,進一步選擇和運用知識庫中的可用知識,繼續推導,直至得到問題的求解結論。這種過程類似于從“已知”到“求證”的過程,故稱為數據驅動的正向推理方式。
第6章ES設計11ExpertSystemsDesign8.2ES的一般設計方法(1)正向推理(前向推8.2ES的一般設計方法
(2)反向推理(后向推理)對于一個具體的ES問題,還可以先猜測問題的結論,然后從結論開始以相反的方向推導支持結論需要的證據,再看問題的已有信息是否提供了或者否定了這些需要的證據。這種過程類似于從“求證”到“已知”的過程,故稱為目標驅動的反向推理方式。
第6章ES設計12ExpertSystemsDesign8.2ES的一般設計方法(2)反向推理(后向8.2ES的一般設計方法
(3)混合推理正向推理和反向推理是兩種基本的推理方式,在此基礎上,人們研究了交替使用正向推理和反向推理方向的混合推理方式。(4)元控制策略結合啟發式方法的推理方法稱為元控制策略。
第6章ES設計13ExpertSystemsDesign8.2ES的一般設計方法(3)混合推理第6章8.2ES的一般設計方法
5)沖突消解一個ES推理方向的選擇往往取決于問題領域的特點和領域專家習慣使用的推理方式。在問題求解的某個步驟,可用的知識可能不只一條,從中有效地選擇出一條進行運用的問題,稱之為沖突消解。6)不精確推理有時,領域專家的知識具有不精確特征,在推理過程中涉及到的以模糊數學為基礎的推理,成為不精確推理。第6章ES設計14ExpertSystemsDesign8.2ES的一般設計方法5)沖突消解第6章ES設8.2ES的一般設計方法
7)推理解釋推理解釋是解釋機制的重要組成部分,其目的是對系統的推理過程、推理位置以及推理的每個動作做出解釋,使用戶相信問題求解結論的可信性和正確性。推理解釋一般包括兩部分:咨詢過程中使用的推理狀態檢查程序;咨詢中或咨詢后使用的通用回答程序。推理解釋系統實現的方法有:預制文本法、追蹤解釋法、策略解釋法、自動程序員解釋法等。第6章ES設計15ExpertSystemsDesign8.2ES的一般設計方法7)推理解釋第6章ES8.2ES的一般設計方法
8.2.2ES的構造原則掌握了知識獲取、知識表示、知識推理、推理解釋等基本技術后,即可著手實際ES的設計。ES設計與基于算法的傳統程序設計的區別是:ES設計一般是漸增式,通過知識庫由小到大地逐步擴充和改進,要求系統不斷地進行驗證、評價和專家認可,最終才能成為可交付使用的ES。ES所處理、求解的領域專家的問題千差萬別,因此建造ES很難給出統一的規范化模式。但從ES的發展看,大多數ES的構造都遵循如下三個原則:
第6章ES設計16ExpertSystemsDesign8.2ES的一般設計方法8.2.2ES的構8.2ES的一般設計方法
(1)知識與知識處理機構分開和相互獨立的原則ES中有獨立存放知識的知識庫,有用作推理、搜索的推理機和解釋系統等,使得系統具有很好的模塊性、可擴充性和可維護性。(2)按系統功能實現模塊化構造的原則為了使結構清晰和調試容易,絕大多數ES都采用按系統功能分割模塊化的構造原則,把系統分成幾個互相獨立的功能模塊。第6章ES設計17ExpertSystemsDesign8.2ES的一般設計方法(1)知識與知識處理8.2ES的一般設計方法
為使ES的各功能模塊能互相通訊,共享中間信息,許多ES都采用在內存建立一個數據庫的方法,存放各種中間結果和通訊信息等。“黑板”是對其形象的稱謂,在必要時記錄信息,不需要時擦掉信息。黑板系統一般按照信息內容分類,分成若干個區,以便提高運行效率。實際上,黑板就是中間數據庫,用來存放ES在執行與推理過程中的中間結果或論據。第6章ES設計18ExpertSystemsDesign8.2ES的一般設計方法為使ES的各功8.2ES的一般設計方法
在ES開始工作時,先把ES從用戶那里獲得的關于問題求解的事實和初始狀態、初始數據等寫入中間數據庫。然后根據中間數據庫和知識庫的內容,進行各種可能和需要的搜索、匹配和推理等動作,不斷以新的中間結果修改、替代或補充中間數據庫的內容。在此期間,必要時還可以向用戶提出詢問,以求獲得解題必要的補充知識。這些后來從用戶得到的信息也被記錄在中間數據庫中,以便與中間數據庫的其他內容一起參與后續的推理過程。
第6章ES設計19ExpertSystemsDesign8.2ES的一般設計方法在8.2ES的一般設計方法
ES如此往復地不斷改變中間數據庫的內容,直至最終獲得問題的解答。由此可見,中間數據庫的內容動態地控制著ES的工作過程。在推理過程中,中間數據庫的內容是不斷變化的,故又稱之為動態數據庫。由于ES知識庫的內容在一次推理中是不變的,故又稱知識庫為靜態數據庫。知識庫僅由知識獲取模塊和學習模塊來改變其內容。第6章ES設計20ExpertSystemsDesign8.2ES的一般設計方法ES如此往復8.2ES的一般設計方法
(3)交互性原則領域專家和用戶與ES信息交換的人機接口、知識工程師維護知識庫等,都需要與系統具有良好的交互性操作,使得領域專家和用戶都以盡可能自然、易于實現的方式實現信息傳輸和結果輸出,并使知識工程師對于知識矛盾、冗余檢查、新知識加入對現有知識的影響進行調節,以及知識的存儲、共享等能進行交互處理。第6章ES設計21ExpertSystemsDesign8.2ES的一般設計方法(3)交互性原則第68.2ES的一般設計方法
8.2.3ES的主要設計步驟一個ES一般可以按照三個步驟進行設計。1)初步設計首先分析需要求解的領域問題,在領域專家的協作下,明確期望ES實現的目標,確定參與系統研制的合作專家以及知識源,通過知識獲取和領域專家的配合,對ES求解目標任務的主要概念、關系、假設、約束等進行圖解形式的描述(如推理網絡),選擇合適的知識表示方法,把圖解形式的內容形式化地表達出來,并確定推理的控制方向等。第6章ES設計22ExpertSystemsDesign8.2ES的一般設計方法8.2.3ES的主要設計步驟第8.2ES的一般設計方法
2)開發原型系統選擇合適的ES程序設計語言和開發工具設計推理機制,或借用工具語言已具備的推理機制,可將形式化表示的知識以ES求解目標或圖解形式的模塊為單元,逐個單元地把知識轉換為適合程序設計語言或工具接受的內部編碼形式,輸入到知識庫。在不斷供給知識庫新知識的同時,系統不斷對已有知識和新加入知識的正確性及協調性通過實例進行測試。通過不斷擴充知識庫和不斷測試的過程,一般可以發現已形式化知識的不完善之處,然后在領域專家的配合下對系統進行不斷調整。這一階段將產生出可運行的ES雛形,稱為原型系統。第6章ES設計23ExpertSystemsDesign8.2ES的一般設計方法2)開發原型系統第6章8.2ES的一般設計方法
3)知識庫的維護當開發出原型ES后,讓領域專家選擇一些有代表性的實驗實例,在可能的情況下,讓領域專家用這些實驗實例進行實際問題求解。通過實例運行,可能出現新問題(如人機接口輸入輸出模塊、知識庫中知識的不完全或不精確等),讓領域專家或將要實際使用此ES的用戶直接與知識庫打交道,稱此過程為知識庫的維護。經過一定時間的維護,當領域專家和知識工程師都對系統比較滿意時,此ES就可以交付用戶使用了。對于用戶使用中發現的新問題,經過再修改和調試,直至用戶滿意,ES就研制開發成功了。第6章ES設計24ExpertSystemsDesign8.2ES的一般設計方法3)知識庫的維護第6章E8.3專家系統的開發過程
目前,還沒有開發ES時共同遵循的規范方法,僅有一些可貴的經驗性原則可以用來指導ES的開發工作。
8.3.1ES選擇的原則經過幾十年的實踐,人們總結出一些可以用于指導ES選擇的一般性原則。一個適合應用于ES的問題,必須滿足三個先決條件:(1)存在一個可以合作的領域專家。對于不存在公認專家的領域,不適宜采用ES來處理。如地震預報是特別復雜的問題,目前預報的準確率不高,所以研制開發這類ES也不會有很大效果。
第6章ES設計25ExpertSystemsDesign8.3專家系統的開發過程目前,還沒8.3ES的開發過程
(2)領域專家通過啟發式方法解決問題。對于人類還沒有徹底掌握,并且不存在成熟解法的領域問題,采用啟發式推理的ES才充分顯示其優越性。如暴雨預報ES。(3)領域專家的知識能夠表達清楚。能夠表達清楚的領域專家知識,知識工程師才有可能將其整理出來,并加以形式化表示。依賴于感覺的工作領域和依賴于技能的工作領域,都不適合于開發ES,如熱輻射,外科手術等。目前,在醫療診斷領域中,ES應用的比較廣泛和比較成功,主要就是緣于能夠將知識表達清楚。第6章ES設計26ExpertSystemsDesign8.3ES的開發過程(2)領域專家通過啟8.3ES的開發過程
除了以上三個先決條件,在確定ES選題時還應注意:1)問題的范圍由于目前還沒有知識獲取、知識表達等方面的通用技術,因此,應將ES所處理的問題限制在比較小的范圍。如單科疾病的診斷治療、波形的解釋等。2)問題的難度經驗表明,適合于ES所處理問題的難度應適度,過于復雜的問題使得ES難于構造或處理效率過低。3)問題的意義從目前ES的情況看,研制ES應基于兩種應用考慮:第6章ES設計27ExpertSystemsDesign8.3ES的開發過程除了以上三個先8.3ES的開發過程(1)在缺乏高級專門人才的領域中研制ES,以便充分發揮領域專家的作用。如中醫診斷治療ES,可替代屈指可數的著名老中醫,使之創造出更多的價值。(2)利用ES代替人的部分腦力勞動,把人從繁瑣的事務中解放出來。如暴雨預報ES可代替專業人員進行大量的重復性勞動,可夜以繼日地作數據處理與解釋工作。第6章ES設計28ExpertSystemsDesign8.3ES的開發過程(1)在缺乏高級專門人8.3ES的開發過程
此外,數目極大的組合問題(如下棋問題、博弈問題等)、大量信號數據解釋(如油井數據解釋、波形解釋等)、實時監督處理問題(如核反應堆的故障診斷與處理)等類問題,對于開發ES是非常有意義的,ES可以不知疲倦地忘我工作,這就避免了人類專家由于外界環境、工作壓力、心理狀態等不利因素的影響而產生錯誤的結論等實際問題。第6章ES設計29ExpertSystemsDesign8.3ES的開發過程此外,數目極大的組8.3ES的開發過程8.3.2ES開發的基本步驟1)準備階段主要工作是知識工程師和領域專家一起探討研究,選擇一種合適的問題,并初步劃定系統求解問題的范圍。
第6章ES設計30ExpertSystemsDesign8.3ES的開發過程8.3.2ES開發的基本8.3ES的開發過程
2)研究問題(1)確定求解問題的范圍。知識工程師和領域專家共同研究,把求解問題的范圍限制在一個合理的限度內,或把任務分解成若干子任務,每個子任務由各自的ES進行處理。(2)根據劃定問題的范圍,研究問題的難度,據此提出研制ES所需的資源,包括人力、物力財力等。(3)確定開發ES所需設備和資金。包括計算機及其接口設備,開發ES所需的軟件資源,支持系統開發所需的資金等。第6章ES設計31ExpertSystemsDesign8.3ES的開發過程2)研究問題第6章ES設計38.3ES的開發過程3)整理知識項目確定并簽訂合同后,知識工程師和領域專家一起整理領域專家解決問題所需的知識和概念。4)建立模型系統在抽取了應用領域中一些重要概念和知識,并仔細研究了至少一個典型實例的求解過程之后,知識工程師可以開始設計和實現一個模型系統,而且模型系統的開發工作應該盡早進行。主要原因有以下兩點:第6章ES設計32ExpertSystemsDesign8.3ES的開發過程3)整理知識第6章ES設計32Ex8.3ES的開發過程
(1)通過運行模型系統,可以驗證研究問題和抽取知識階段所形成的系統設計方案。根據系統運行情況,知識工程師可以發現問題,從而使一些原則性錯誤得到解決,避免在后期對系統進行較大修改。(2)通過模型系統的正確運行,可以提高領域專家參加ES開發的興趣。
第6章ES設計33ExpertSystemsDesign8.3ES的開發過程(1)通過運行模型系統8.3ES的開發過程在實現ES模型系統時,必須注意以下問題:不追求系統的盡善盡美,尤其是對知識庫的期望;保持模型的簡單化。如自然語言理解、與其他設備的接口等功能可以暫時不考慮,為的是對模型修改修改時無需引起大量的附加修改工作。開發一些簡單的輔助功能。如知識獲取功能可幫助將整理好的只是加入到知識庫;簡單的解釋功能可幫助追查出錯的原因,便于發現系統存在的問題。第6章ES設計34ExpertSystemsDesign8.3ES的開發過程在實現ES模8.3ES的開發過程
5)改進與擴充模型系統通過了測試,就說明采用的方案和技術是可行的,就可以進行系統開發和擴充工作。包括完善推理機制,擴充解釋功能和知識獲取功能,增強知識庫的知識等,不斷修改和完善知識庫。6)測試與維護測試的目的是對系統的性能進行評估,使系統經過修改后達到符合領域專家定義的標準。領域專家對系統的評價可以幫助指示工程師修改系統。維護是不斷進行的。7)評價與商品化評價系統主要是檢察系統程序的正確性和實用性。商品化對推廣應用ES具有重要意義。第6章ES設計35ExpertSystemsDesign8.3ES的開發過程5)改進與擴充第6章ES8.4ES的開發工具
ES的開發工具是生成ES的系統,包括:一種或多種固定的知識表示方法,并具有相應的內部編碼形式;具有知識編輯器,能獲取領域專家移交互訪是輸入的知識,并自動建立知識庫;具有知識庫維護和管理機制,處理知識庫中的矛盾、冗余和不一致性,負責知識的存儲、運籌和調度;提供一套或多套推理機制,實現實際問題的求解;可以設置跟蹤解釋機制,幫助用戶理解ES求解的結論,并能定為知識庫中的錯誤和不完善等問題。第6章ES設計36ExpertSystemsDesign8.4ES的開發工具ES的開發工具是生成E8.4ES的開發工具
8.4.1ES的程序設計語言最常用的是LISP、PROLOG、CLIPS等語言,也可以選用C語言等高級語言。
第6章ES設計37ExpertSystemsDesign8.4ES的開發工具8.4.1ES的程序設計語8.4ES的開發工具8.4.2ES的骨架結構從一個研制成功的ES,抽去其知識庫中的專門知識,留下一個固化的知識表示框架及相應的推理機制、知識獲取機制及解釋機制,成為一個骨架系統。在其中填入另一個領域的專門知識,并經過調試和完善形成一個新的知識庫時,就實現了一個新的ES。問題:用這樣的骨架系統去求解新的領域問題時,可能控制結構不適合新的問題領域;有些領域的專門知識不可識別部分隱含在推理機制中,對新的領域問題根本不使用或不能用。說明骨架系統有很大程度的局限性。
第6章ES設計38ExpertSystemsDesign8.4ES的開發工具8.4.2ES的骨架結構第6章ES8.4ES的開發工具
8.4.3ES的通用開發工具通用開發工具又稱為是通用只是表示語言,它把控制知識也作為一種顯式知識,與知識庫級知識一樣進行表示和推理的ES開發工具。如OPS5提供了ES必需的基本控制策略和知識表示方法,但不側重具體的問題領域。因此,通用開發工具比骨架系統受到的局限少,但其使用過程比骨架系統復雜。
第6章ES設計39ExpertSystemsDesign8.4ES的開發工具8.4.3ES的通用開發工具第8.4ES的開發工具
8.4.4ES的組合型開發工具組合型開發工具是通用性很強的ES開發工具。其主要任務是:從一類任務中分離出知識工程所使用的技術,構成描述這些技術的多種類型的推理機制和多種任務的知識庫預購件,建立使用這些預購件的輔助設施。如AGE系統能給知識工程師提供一些事先確定的成分(模塊),這些成分是LISP變量和函數的集合。AGE成分通過選擇、定義和模塊化編程,可以形成各種組合。不同的組合可以構造出各種不同問題求解系統。因此,組合型開發工具是目前ES研究的熱點問題。第6章ES設計40ExpertSystemsDesign8.4ES的開發工具8.4.4ES的組合型開發思考題和習題1.說明開發ES與設計一般程序的區別。2.簡述ES的基本設計思想。3.簡述ES有哪些開發工具?4.你認為建造ES的過程中,哪個階段最為重要?5.進行ES評估的意義是什么?第6章ES設計41ExpertSystemsDesign思考題和習題1.說明開發ES與設計一般程序的區別。第6章第8章專家系統的設計與開發由于專家系統
對人類、科學做出的貢獻。使得專家系統越來越受到重視和接受。可以設計一個專家系統來解決各種特定問題,可以在醫療診斷中做出令人信服的推論,可以解釋油井的波形,其應用遍及化學、醫學、地質學、氣象學、教育、軍事領域。但是,如何設計、開發專家系統尚無統一的標準模式和方法。
8.1專家系統的基本設計思想由于人類專家掌握了關于該領域的大量的專門知識,故它稱為領域專家。要使計算機能和專家一樣處理問題,必須先獲取大量的專門知識,然后才是有效地組織和存儲知識,以便推理使用。所以,ES實際上通過在系統中存儲大量與應用領域有關的專門知識來實現高水平的問題求解的。
第6章ES設計42ExpertSystemsDesign第8章專家系統的設計與開發由于專8.1專家系統的基本設計思想
1.專家系統是一種計算機程序,但專家系統程序區別于一般應用程序。一般應用程序——把問題求解的知識隱含地編寫在程序中,即把知識組織成兩級:數據級和程序級;專家系統程序——將應用領域問題求解的知識單獨組成一個知識庫實體,知識庫的處理是通過獨立于知識庫的控制策略來進行的。即把知識組織成三級:數據級、知識庫級和控制級。第6章ES設計43ExpertSystemsDesign8.1專家系統的基本設計思想1.專家系統是一種計算8.1專家系統的基本設計思想
2.專家系統的核心是知識知識的數量與質量是一個專家系統性能的決定性因素。因此,專家系統的主要特征是擁有一個巨大的知識庫,存儲著某個專門領域的知識。專家系統的控制級通常表達成某種推理規則。整個系統的工作過程是從知識庫出發,通過控制推理得到所需的結論。因此,專家系統能“理解”自身行為的目的,“知道”采取某一個步驟的緣由,所以具有較高的智能水平。第6章ES設計44ExpertSystemsDesign8.1專家系統的基本設計思想2.專家系統的核8.1專家系統的基本設計思想
綜上所述,ES的基本設計思想就是將知識和控制推理策略分開,形成知識庫。在推理策略的控制下,利用存儲的知識分析和處理問題。在求解問題時,用戶為ES提供一些已知數據,然后從ES中獲得專家水平的結論。第6章ES設計45ExpertSystemsDesign8.1專家系統的基本設計思想綜8.2專家系統的一般設計方法
目前,還沒有統一的ES設計規范。ES的基本設計思想是使計算機的工作過程竭盡全力地描述領域專家解決實際問題的工作過程。8.2.1ES設計的關鍵問題1)設計ES的兩個關鍵問題(1)建造知識庫涉及知識庫建造的兩項主要技術是:知識獲取和知識表示。(2)設計推理機制與控制策略涉及推理機制設計的兩項主要技術是:基于知識規則的推理和推理解釋機制。
第6章ES設計46ExpertSystemsDesign8.2專家系統的一般設計方法目前,8.2ES的一般設計方法
2)常用的知識獲取方式知識獲取是從領域專家處獲得知識、提取知識并將其轉換成ES程序的艱巨而細致的工作過程,即將問題求解中領域專家的經驗和技術從某個知識源提取到ES中。常用的知識獲取方式有三種:(1)知識工程師領域專家通過與知識工程師反復接觸、交談,把自己擁有的知識提供給知識工程師,由知識工程師和領域專家一起將這些專家知識歸納整理成ES的知識庫。
第6章ES設計47ExpertSystemsDesign8.2ES的一般設計方法2)常用的知識獲取方式8.2ES的一般設計方法
(2)智能編輯程序熟悉計算機的領域專家可以通過智能編輯程序把自己的經驗和知識輸入到ES的知識庫中。智能編輯程序應該具備靈活的人機對話能力和有關知識庫結構方面的知識。(3)歸納學習程序對大量實驗數據進行歸納和總結,將會得到一些新的規律和知識,利用歸納學習程序,可以模擬人的思維過程,從有關知識庫中發現新知識,然后將這些新知識加入到知識庫中,供ES使用。第6章ES設計48ExpertSystemsDesign8.2ES的一般設計方法(2)智能編輯程8.2ES的一般設計方法
由于真正做到能夠發現知識的ES還不多見,所以,歸納學習程序這種知識獲取方式是機器學習研究的一個長期目標,已經引起有關專家的重視,并列為ES的研究課題。3)知識表示知識表示是關于各種存儲知識的數據結構及其對這些數據結構解釋過程的結合。知識表示主要研究各種含有語義信息的數據結構的設計,以便在這些數據結構中存儲知識,開發各種操作這些數據結構的推理過程,使知識表示和知識運用的控制以及新知識的獲取相結合,把領域知識有機地結合到程序設計中。
第6章ES設計49ExpertSystemsDesign8.2ES的一般設計方法由于8.2ES的一般設計方法一個ES的知識表示方法不僅關系到知識的有效存儲,也直接影響推理效率和新知識獲取的能力。目前,有許多知識表示方法,如規則表示、框架表示、邏輯表示、語義網絡表示等。各種知識表示方法都有其獨特的優點和內在的不足,但都要遵循兩個重要的準則:(1)知識表示方法能自然、有效地表示知識;(2)知識表示結構易于檢索、運用、修改和擴充。在實際應用中,易于人們接受并且使用最多的是基于規則的產生式表示法(又稱為規則表示法)。其主要優點是:模塊性,清晰性,自然性。第6章ES設計50ExpertSystemsDesign8.2ES的一般設計方法一個ES8.2ES的一般設計方法
4)基于知識規則的推理基于知識規則的推理是指針對用戶的特定問題,選擇并運用知識庫中的知識,以實現求解問題的控制過程。推理涉及的兩個基本問題是:推理方向的選擇沖突消解策略第6章ES設計51ExpertSystemsDesign8.2ES的一般設計方法4)基于知識規則的推理第68.2ES的一般設計方法
(1)正向推理(前向推理)對于一個具體的ES問題,可以從問題的已有信息出發,選擇和運用知識庫中的可用知識,以推導出一些有用的中間結論,將中間結論作為已有信息的擴充,進一步選擇和運用知識庫中的可用知識,繼續推導,直至得到問題的求解結論。這種過程類似于從“已知”到“求證”的過程,故稱為數據驅動的正向推理方式。
第6章ES設計52ExpertSystemsDesign8.2ES的一般設計方法(1)正向推理(前向推8.2ES的一般設計方法
(2)反向推理(后向推理)對于一個具體的ES問題,還可以先猜測問題的結論,然后從結論開始以相反的方向推導支持結論需要的證據,再看問題的已有信息是否提供了或者否定了這些需要的證據。這種過程類似于從“求證”到“已知”的過程,故稱為目標驅動的反向推理方式。
第6章ES設計53ExpertSystemsDesign8.2ES的一般設計方法(2)反向推理(后向8.2ES的一般設計方法
(3)混合推理正向推理和反向推理是兩種基本的推理方式,在此基礎上,人們研究了交替使用正向推理和反向推理方向的混合推理方式。(4)元控制策略結合啟發式方法的推理方法稱為元控制策略。
第6章ES設計54ExpertSystemsDesign8.2ES的一般設計方法(3)混合推理第6章8.2ES的一般設計方法
5)沖突消解一個ES推理方向的選擇往往取決于問題領域的特點和領域專家習慣使用的推理方式。在問題求解的某個步驟,可用的知識可能不只一條,從中有效地選擇出一條進行運用的問題,稱之為沖突消解。6)不精確推理有時,領域專家的知識具有不精確特征,在推理過程中涉及到的以模糊數學為基礎的推理,成為不精確推理。第6章ES設計55ExpertSystemsDesign8.2ES的一般設計方法5)沖突消解第6章ES設8.2ES的一般設計方法
7)推理解釋推理解釋是解釋機制的重要組成部分,其目的是對系統的推理過程、推理位置以及推理的每個動作做出解釋,使用戶相信問題求解結論的可信性和正確性。推理解釋一般包括兩部分:咨詢過程中使用的推理狀態檢查程序;咨詢中或咨詢后使用的通用回答程序。推理解釋系統實現的方法有:預制文本法、追蹤解釋法、策略解釋法、自動程序員解釋法等。第6章ES設計56ExpertSystemsDesign8.2ES的一般設計方法7)推理解釋第6章ES8.2ES的一般設計方法
8.2.2ES的構造原則掌握了知識獲取、知識表示、知識推理、推理解釋等基本技術后,即可著手實際ES的設計。ES設計與基于算法的傳統程序設計的區別是:ES設計一般是漸增式,通過知識庫由小到大地逐步擴充和改進,要求系統不斷地進行驗證、評價和專家認可,最終才能成為可交付使用的ES。ES所處理、求解的領域專家的問題千差萬別,因此建造ES很難給出統一的規范化模式。但從ES的發展看,大多數ES的構造都遵循如下三個原則:
第6章ES設計57ExpertSystemsDesign8.2ES的一般設計方法8.2.2ES的構8.2ES的一般設計方法
(1)知識與知識處理機構分開和相互獨立的原則ES中有獨立存放知識的知識庫,有用作推理、搜索的推理機和解釋系統等,使得系統具有很好的模塊性、可擴充性和可維護性。(2)按系統功能實現模塊化構造的原則為了使結構清晰和調試容易,絕大多數ES都采用按系統功能分割模塊化的構造原則,把系統分成幾個互相獨立的功能模塊。第6章ES設計58ExpertSystemsDesign8.2ES的一般設計方法(1)知識與知識處理8.2ES的一般設計方法
為使ES的各功能模塊能互相通訊,共享中間信息,許多ES都采用在內存建立一個數據庫的方法,存放各種中間結果和通訊信息等。“黑板”是對其形象的稱謂,在必要時記錄信息,不需要時擦掉信息。黑板系統一般按照信息內容分類,分成若干個區,以便提高運行效率。實際上,黑板就是中間數據庫,用來存放ES在執行與推理過程中的中間結果或論據。第6章ES設計59ExpertSystemsDesign8.2ES的一般設計方法為使ES的各功8.2ES的一般設計方法
在ES開始工作時,先把ES從用戶那里獲得的關于問題求解的事實和初始狀態、初始數據等寫入中間數據庫。然后根據中間數據庫和知識庫的內容,進行各種可能和需要的搜索、匹配和推理等動作,不斷以新的中間結果修改、替代或補充中間數據庫的內容。在此期間,必要時還可以向用戶提出詢問,以求獲得解題必要的補充知識。這些后來從用戶得到的信息也被記錄在中間數據庫中,以便與中間數據庫的其他內容一起參與后續的推理過程。
第6章ES設計60ExpertSystemsDesign8.2ES的一般設計方法在8.2ES的一般設計方法
ES如此往復地不斷改變中間數據庫的內容,直至最終獲得問題的解答。由此可見,中間數據庫的內容動態地控制著ES的工作過程。在推理過程中,中間數據庫的內容是不斷變化的,故又稱之為動態數據庫。由于ES知識庫的內容在一次推理中是不變的,故又稱知識庫為靜態數據庫。知識庫僅由知識獲取模塊和學習模塊來改變其內容。第6章ES設計61ExpertSystemsDesign8.2ES的一般設計方法ES如此往復8.2ES的一般設計方法
(3)交互性原則領域專家和用戶與ES信息交換的人機接口、知識工程師維護知識庫等,都需要與系統具有良好的交互性操作,使得領域專家和用戶都以盡可能自然、易于實現的方式實現信息傳輸和結果輸出,并使知識工程師對于知識矛盾、冗余檢查、新知識加入對現有知識的影響進行調節,以及知識的存儲、共享等能進行交互處理。第6章ES設計62ExpertSystemsDesign8.2ES的一般設計方法(3)交互性原則第68.2ES的一般設計方法
8.2.3ES的主要設計步驟一個ES一般可以按照三個步驟進行設計。1)初步設計首先分析需要求解的領域問題,在領域專家的協作下,明確期望ES實現的目標,確定參與系統研制的合作專家以及知識源,通過知識獲取和領域專家的配合,對ES求解目標任務的主要概念、關系、假設、約束等進行圖解形式的描述(如推理網絡),選擇合適的知識表示方法,把圖解形式的內容形式化地表達出來,并確定推理的控制方向等。第6章ES設計63ExpertSystemsDesign8.2ES的一般設計方法8.2.3ES的主要設計步驟第8.2ES的一般設計方法
2)開發原型系統選擇合適的ES程序設計語言和開發工具設計推理機制,或借用工具語言已具備的推理機制,可將形式化表示的知識以ES求解目標或圖解形式的模塊為單元,逐個單元地把知識轉換為適合程序設計語言或工具接受的內部編碼形式,輸入到知識庫。在不斷供給知識庫新知識的同時,系統不斷對已有知識和新加入知識的正確性及協調性通過實例進行測試。通過不斷擴充知識庫和不斷測試的過程,一般可以發現已形式化知識的不完善之處,然后在領域專家的配合下對系統進行不斷調整。這一階段將產生出可運行的ES雛形,稱為原型系統。第6章ES設計64ExpertSystemsDesign8.2ES的一般設計方法2)開發原型系統第6章8.2ES的一般設計方法
3)知識庫的維護當開發出原型ES后,讓領域專家選擇一些有代表性的實驗實例,在可能的情況下,讓領域專家用這些實驗實例進行實際問題求解。通過實例運行,可能出現新問題(如人機接口輸入輸出模塊、知識庫中知識的不完全或不精確等),讓領域專家或將要實際使用此ES的用戶直接與知識庫打交道,稱此過程為知識庫的維護。經過一定時間的維護,當領域專家和知識工程師都對系統比較滿意時,此ES就可以交付用戶使用了。對于用戶使用中發現的新問題,經過再修改和調試,直至用戶滿意,ES就研制開發成功了。第6章ES設計65ExpertSystemsDesign8.2ES的一般設計方法3)知識庫的維護第6章E8.3專家系統的開發過程
目前,還沒有開發ES時共同遵循的規范方法,僅有一些可貴的經驗性原則可以用來指導ES的開發工作。
8.3.1ES選擇的原則經過幾十年的實踐,人們總結出一些可以用于指導ES選擇的一般性原則。一個適合應用于ES的問題,必須滿足三個先決條件:(1)存在一個可以合作的領域專家。對于不存在公認專家的領域,不適宜采用ES來處理。如地震預報是特別復雜的問題,目前預報的準確率不高,所以研制開發這類ES也不會有很大效果。
第6章ES設計66ExpertSystemsDesign8.3專家系統的開發過程目前,還沒8.3ES的開發過程
(2)領域專家通過啟發式方法解決問題。對于人類還沒有徹底掌握,并且不存在成熟解法的領域問題,采用啟發式推理的ES才充分顯示其優越性。如暴雨預報ES。(3)領域專家的知識能夠表達清楚。能夠表達清楚的領域專家知識,知識工程師才有可能將其整理出來,并加以形式化表示。依賴于感覺的工作領域和依賴于技能的工作領域,都不適合于開發ES,如熱輻射,外科手術等。目前,在醫療診斷領域中,ES應用的比較廣泛和比較成功,主要就是緣于能夠將知識表達清楚。第6章ES設計67ExpertSystemsDesign8.3ES的開發過程(2)領域專家通過啟8.3ES的開發過程
除了以上三個先決條件,在確定ES選題時還應注意:1)問題的范圍由于目前還沒有知識獲取、知識表達等方面的通用技術,因此,應將ES所處理的問題限制在比較小的范圍。如單科疾病的診斷治療、波形的解釋等。2)問題的難度經驗表明,適合于ES所處理問題的難度應適度,過于復雜的問題使得ES難于構造或處理效率過低。3)問題的意義從目前ES的情況看,研制ES應基于兩種應用考慮:第6章ES設計68ExpertSystemsDesign8.3ES的開發過程除了以上三個先8.3ES的開發過程(1)在缺乏高級專門人才的領域中研制ES,以便充分發揮領域專家的作用。如中醫診斷治療ES,可替代屈指可數的著名老中醫,使之創造出更多的價值。(2)利用ES代替人的部分腦力勞動,把人從繁瑣的事務中解放出來。如暴雨預報ES可代替專業人員進行大量的重復性勞動,可夜以繼日地作數據處理與解釋工作。第6章ES設計69ExpertSystemsDesign8.3ES的開發過程(1)在缺乏高級專門人8.3ES的開發過程
此外,數目極大的組合問題(如下棋問題、博弈問題等)、大量信號數據解釋(如油井數據解釋、波形解釋等)、實時監督處理問題(如核反應堆的故障診斷與處理)等類問題,對于開發ES是非常有意義的,ES可以不知疲倦地忘我工作,這就避免了人類專家由于外界環境、工作壓力、心理狀態等不利因素的影響而產生錯誤的結論等實際問題。第6章ES設計70ExpertSystemsDesign8.3ES的開發過程此外,數目極大的組8.3ES的開發過程8.3.2ES開發的基本步驟1)準備階段主要工作是知識工程師和領域專家一起探討研究,選擇一種合適的問題,并初步劃定系統求解問題的范圍。
第6章ES設計71ExpertSystemsDesign8.3ES的開發過程8.3.2ES開發的基本8.3ES的開發過程
2)研究問題(1)確定求解問題的范圍。知識工程師和領域專家共同研究,把求解問題的范圍限制在一個合理的限度內,或把任務分解成若干子任務,每個子任務由各自的ES進行處理。(2)根據劃定問題的范圍,研究問題的難度,據此提出研制ES所需的資源,包括人力、物力財力等。(3)確定開發ES所需設備和資金。包括計算機及其接口設備,開發ES所需的軟件資源,支持系統開發所需的資金等。第6章ES設計72ExpertSystemsDesign8.3ES的開發過程2)研究問題第6章ES設計38.3ES的開發過程3)整理知識項目確定并簽訂合同后,知識工程師和領域專家一起整理領域專家解決問題所需的知識和概念。4)建立模型系統在抽取了應用領域中一些重要概念和知識,并仔細研究了至少一個典型實例的求解過程之后,知識工程師可以開始設計和實現一個模型系統,而且模型系統的開發工作應該盡早進行。主要原因有以下兩點:第6章ES設計73ExpertSystemsDesign8.3ES的開發過程3)整理知識第6章ES設計32Ex8.3ES的開發過程
(1)通過運行模型系統,可以驗證研究問題和抽取知識階段所形成的系統設計方案。根
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 墻體線槽切割施工協議書
- 保潔安全生產管理協議書
- 業務團隊獎金分配協議書
- 承包合同安全生產協議書
- 國有資產移交管理協議書
- 住宿會議租憑優惠協議書
- 國企分紅委托代理協議書
- 國企鄉村振興幫扶協議書
- 婦女婚內財產分配協議書
- 公開招聘人員保密協議書
- 兒童口腔護理疑難病例討論
- GB/T 45198-2024老舊汽車估值評價規范
- 重慶市2025年中考物理二模試卷含答案
- 2025年華東師大版八年級物理下冊階段測試試卷
- 【報告案例】河南中孚高精鋁材有限公司生命周期評估報告
- 2024年銀行業全渠道客戶旅程分析與精細化線上運營白皮書-火山引擎
- 施工安全生產風險分級管控和隱患排查治理雙重預防機制建設實施方案
- 中國高血壓防治指南(2024年修訂版)解讀課件
- 浙江溫州樂清市新居民服務中心招考聘用編外工作人員管理單位遴選500模擬題附帶答案詳解
- 基于Arduino的智能鬧鐘設計與制作
- DB36T 477-2019 商品肉鵝規模養殖生產技術規程
評論
0/150
提交評論