人工智能第六部分_第1頁
人工智能第六部分_第2頁
人工智能第六部分_第3頁
人工智能第六部分_第4頁
人工智能第六部分_第5頁
已閱讀5頁,還剩140頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、人工智能第六部分 專家系統(tǒng)是人工智能應(yīng)用研究的一個重要領(lǐng)域。它實現(xiàn)了人工智能從理論研究走向?qū)嶋H應(yīng)用,從一般思維方法探討轉(zhuǎn)入專門知識運用的重大突破。自2O世紀(jì)7O年代專家系統(tǒng)的開發(fā)獲得成功以來,目前已被成功地運用到科學(xué)技術(shù)、工業(yè)、農(nóng)業(yè)、軍事、醫(yī)療、教育等眾多領(lǐng)域,并已產(chǎn)生了巨大的社會效益和經(jīng)濟效益。2專家系統(tǒng)的基本概念專家系統(tǒng)的基本結(jié)構(gòu)知識的獲取專家系統(tǒng)的開發(fā)與評價專家系統(tǒng)的開發(fā)工具與環(huán)境專家系統(tǒng)實例MYCIN剖析專家系統(tǒng)的進一步發(fā)展內(nèi)容提要3一. 什么是專家系統(tǒng)二. 專家系統(tǒng)的分類三. 專家系統(tǒng)的特點1. 專家系統(tǒng)的基本概念4目前,對什么是專家系統(tǒng)還沒有一個嚴(yán)格公認(rèn)的形式化定義。作為一種一般的

2、解釋,可以認(rèn)為專家系統(tǒng)是一種具有大量專門知識與經(jīng)驗的智能程序系統(tǒng),它能運用領(lǐng)域?qū)<叶嗄攴e累的經(jīng)驗和專門知識,模擬領(lǐng)域?qū)<业乃季S過程,解決該領(lǐng)域中需要專家才能解決的復(fù)雜問題。一. 什么是專家系統(tǒng)5從上述解釋可以看出,專家系統(tǒng)包括以下三個方面的含義: (1)專家系統(tǒng)是一種程序系統(tǒng),但又具有智能,因此它不同于一般的程序系統(tǒng),而是一種能運用專家知識和經(jīng)驗進行推理的啟發(fā)式程序系統(tǒng)。 (2)專家系統(tǒng)的智能來源于領(lǐng)域?qū)<业闹R、經(jīng)驗及解決問題的訣竅。為此,專家系統(tǒng)內(nèi)部必須包含有大量專家水平的領(lǐng)域知識與經(jīng)驗,并且能夠在運行過程中不斷地增長新知識和修改原有知識。 (3)專家系統(tǒng)所要解決的問題一般是那些本來應(yīng)該由

3、領(lǐng)域?qū)<也拍芙鉀Q的問題。6 通常,專家系統(tǒng)都是針對某一應(yīng)用領(lǐng)域而建立的。不同應(yīng)用領(lǐng)域的專家系統(tǒng),其功能、設(shè)計方法及實現(xiàn)技術(shù)也各不同。為了明確各類專家系統(tǒng)的特點及其所需要的技術(shù)和系統(tǒng)組織方法,本小節(jié)討論專家系統(tǒng)的分類問題。 對專家系統(tǒng)的類型,可以有多種不同的劃分方法。例如,可以按求解問題的性質(zhì)分類,也可以按求解問題的要求分類,還可以按系統(tǒng)的體系結(jié)構(gòu)分類。二. 專家系統(tǒng)的分類71按求解問題的性質(zhì)分類 海葉斯-羅斯(FHeyes-Roth)按照求解問題的性質(zhì),將專家系統(tǒng)分為十種類型: (1)解釋型專家系統(tǒng) 解釋型專家系統(tǒng)的任務(wù)是通過對已知信息和數(shù)據(jù)的分析與解釋,確定它們的含義。 主要特點有:第一,系

4、統(tǒng)處理的數(shù)據(jù)量很大,而且往往是不準(zhǔn)確的、錯誤的或不完全的;第二,系統(tǒng)能夠從不完全的信息中得出解釋,并能對數(shù)據(jù)做出某些假設(shè);第三,系統(tǒng)的推理過程可能很復(fù)雜和很長,因而要求系統(tǒng)具有對自身推理過程做出解釋的能力。 作為解釋型專家系統(tǒng)的例子有語音理解、圖像分析、系統(tǒng)監(jiān)視、化學(xué)結(jié)構(gòu)分析和信號解釋等。例如,衛(wèi)星圖像分析、集成電路分析、石油測井?dāng)?shù)據(jù)分析、染色體分類等。8(2)預(yù)測型專家系統(tǒng) 預(yù)測型專家系統(tǒng)的任務(wù)是通過對過去或現(xiàn)在知識狀況的分析,推斷未來可能發(fā)生的情況。 主要特點有:第一,系統(tǒng)處理的數(shù)據(jù)隨時間變化,而且可能是不準(zhǔn)確或不完備的;第二,系統(tǒng)需要有適應(yīng)時間變化的動態(tài)模型,能夠從不完全和不準(zhǔn)確的信息中

5、得出預(yù)報,并達到快速響應(yīng)的要求。 預(yù)測型專家系統(tǒng)的例子主要有氣象預(yù)報、軍事預(yù)測、人口預(yù)測、交通預(yù)測、經(jīng)濟預(yù)測和作物產(chǎn)量預(yù)測等。9(3)診斷型專家系統(tǒng) 診斷型專家系統(tǒng)的任務(wù)是根據(jù)觀察到的情況來推斷出某個對象機能失常的原因。 主要特點有:第一,能夠了解被診斷對象和客體各組成部分的特性,以及它們之間的聯(lián)系;第二,能夠區(qū)分一種現(xiàn)象及其所掩蓋的另一種現(xiàn)象;第三,能夠向用戶提出測量的數(shù)據(jù),并從不確切信息中得出盡可能正確的診斷。 診斷型專家系統(tǒng)的例子特別多,有醫(yī)療診斷、電子或機械故障診斷以及材料失效診斷等。著名的血液病診斷專家系統(tǒng)MYCIN、青光眼治療專家系統(tǒng)CASNET等都屬于這類專家系統(tǒng)。10(4)設(shè)計

6、型專家系統(tǒng) 設(shè)計型專家系統(tǒng)的任務(wù)是根據(jù)設(shè)計要求,求出滿足設(shè)計問題約束的目標(biāo)配置。 主要特點有:第一,善于從多方面的約束中得到符合要求的設(shè)計結(jié)果;第二,系統(tǒng)需要檢索較大的可能解空間;第三,善于分析各種子問題,并處理好子問題間的相互作用;第四,能夠試驗性地構(gòu)造出可能設(shè)計,并易于對所得設(shè)計方案進行修改;第五,能夠使用已被證明是正確的設(shè)計來解釋當(dāng)前的設(shè)計。 設(shè)計型專家系統(tǒng)的例子主要有電路設(shè)計、土木建筑工程設(shè)計、機械產(chǎn)品設(shè)計、生產(chǎn)工藝設(shè)計等。11(5)規(guī)劃型專家系統(tǒng) 規(guī)劃型專家系統(tǒng)的任務(wù)是要尋找出某個能夠達到目標(biāo)的動作序列或步驟。 主要特點有:第一,所要規(guī)劃的目標(biāo)可能是動態(tài)的或靜止的;第二,所涉及的問題

7、可能很復(fù)雜,要求系統(tǒng)能抓住重點,處理好各子目標(biāo)間的關(guān)系和不確定的信息,并通過試驗性動作得出可行的規(guī)劃。 規(guī)劃型專家系統(tǒng)可用于機器人規(guī)劃、交通運輸調(diào)度、工程項目論證、通信與軍事指揮以及農(nóng)作物施肥方案規(guī)劃等。12(6)監(jiān)視型專家系統(tǒng) 監(jiān)視型專家系統(tǒng)的任務(wù)在于對系統(tǒng)、對象或過程的行為進行不斷觀察,并把觀察到的行為與其應(yīng)當(dāng)具有的行為進行比較,以發(fā)現(xiàn)異常情況,發(fā)出警報。 主要特點有:第一,系統(tǒng)應(yīng)具有快速反應(yīng)能力,在造成事故之前及時發(fā)出警報;第二,系統(tǒng)發(fā)出的警報要有很高的精確性;第三,系統(tǒng)能夠隨時間和條件的變化而動態(tài)地處理其輸入信息。 監(jiān)視型專家系統(tǒng)可用于核電站的安全監(jiān)視、防空監(jiān)視與報警、國家財政的監(jiān)控及

8、農(nóng)作物病蟲害的監(jiān)視與報警等。13(7)控制型專家系統(tǒng) 控制型專家系統(tǒng)的任務(wù)是自適應(yīng)地管理一個受控對象或客體的全面行為,使其滿足預(yù)期要求。 主要特點是:能夠解釋當(dāng)前情況,預(yù)測未來可能發(fā)生的情況,診斷可能發(fā)生的問題及其原因,不斷修正計劃,并控制計劃的執(zhí)行。也就是說,控制型專家系統(tǒng)具有解釋、預(yù)報、診斷、規(guī)劃和執(zhí)行等多種功能。 控制型專家系統(tǒng)可用于空中交通管制、商業(yè)管理、自主機器人控制、作戰(zhàn)管理、生產(chǎn)過程控制和生產(chǎn)質(zhì)量控制等許多方面。14(8)調(diào)試型專家系統(tǒng) 調(diào)試型專家系統(tǒng)的任務(wù)是對失靈的對象給出處理意見和方法。它要求專家系統(tǒng)須具有規(guī)劃、設(shè)計、預(yù)報和診斷等功能。 調(diào)試專家系統(tǒng)可用于新產(chǎn)品或新系統(tǒng)的調(diào)試

9、,也可用于被維修設(shè)備的調(diào)整、測試與試驗。(9)教學(xué)型專家系統(tǒng) 教學(xué)型專家系統(tǒng)的任務(wù)是根據(jù)學(xué)生的特點、弱點和基礎(chǔ)知識,以最適當(dāng)?shù)慕虒W(xué)方案和教學(xué)方法對學(xué)生進行教學(xué)和輔導(dǎo)。 主要特點有:第一,同時具有診斷和調(diào)試功能;第二,具有良好的人機界面。15(10)修理型專家系統(tǒng) 修理型專家系統(tǒng)的任務(wù)是對發(fā)生故障的對象(系統(tǒng)或設(shè)備)進行處理,使其恢復(fù)正常工作。 主要特點是同時具有診斷、調(diào)試、計劃和執(zhí)行等功能。 除了上述10種專家系統(tǒng)類型外,還有諸如決策型和管理型的專家系統(tǒng)。 決策型專家系統(tǒng)是對各種可能的決策方案進行綜合評判和選優(yōu)的一類專家系統(tǒng)。它同時具有解釋、診斷、預(yù)測、規(guī)劃等功能,并能對相應(yīng)領(lǐng)域中的問題做出輔

10、助決策和對決策做出解釋。 管理型專家系統(tǒng)是在管理信息系統(tǒng)和辦公自動化系統(tǒng)的基礎(chǔ)上發(fā)展起來的一類專家系統(tǒng)。162按求解問題的要求分類 斯特菲克(MStefike)等人根據(jù)專家系統(tǒng)求解問題的要求及其難易程度由低到高將專家系統(tǒng)分為10個不同的層次。(1)具有可靠知識和數(shù)據(jù)的小型搜索空間的專家系統(tǒng) 這類專家系統(tǒng)要求解的問題最簡單,它所具有的知識和數(shù)據(jù)都十分可靠,且問題的解空間也比較小。像這類簡單任務(wù)的專家系統(tǒng),只需經(jīng)過窮舉搜索方式即可得到問題的解。事實上,對這類問題,也沒有研制專家系統(tǒng)的必要。(2)所用知識和數(shù)據(jù)不完全可靠的專家系統(tǒng) 這類專家系統(tǒng)所依據(jù)的知識是不確定的,所采用的推理方法是啟發(fā)性知識推理

11、或不確定性推理。17(3)所求解問題的推理需要隨時間變化的專家系統(tǒng) 這類專家系統(tǒng)所依據(jù)的數(shù)據(jù)是隨時間變化的,因此它應(yīng)該能夠描述和模擬各種數(shù)據(jù)隨時間變化的情況。事實上,對預(yù)測性、實時性要求高的專家系統(tǒng),對時變推理的要求就更高,目前研制這類專家系統(tǒng)的難度較大。(4)所求解的問題是可分解的專家系統(tǒng) 對這類任務(wù)的專家系統(tǒng),可以把解空間劃分成一些較小的子空間,并采用剪枝的方法,以減少搜索范圍和搜索空間。18(5)所求解的問題是不可分解的專家系統(tǒng) 對這類任務(wù)的專家系統(tǒng)不能采用分解和剪枝的方法,而只能采用抽象解空間的方法,即先暫時忽略某些細節(jié)問題,而集中考慮那些重要的原則性問題的求解方法。(6)所求解的問題

12、不能劃分為固定子問題的專家系統(tǒng) 由于所求解的問題不存在固定的子問題劃分或可進行適當(dāng)抽象的固定子問題序列,因此對這類問題的抽象必須體現(xiàn)規(guī)劃的可變結(jié)構(gòu),這就需要專家系統(tǒng)能夠采用自頂向下求解的抽象方法來進行問題求解。19(8)需要多重推理的專家系統(tǒng) 在許多任務(wù)中,單一推理路徑的能力較弱,需要采用多重線路推理,綜合運用不同推理模型的優(yōu)點,來擴大專家系統(tǒng)解決問題的能力。(7)各子問題有相互影響的專家系統(tǒng) 由于自頂向下求解方法缺乏問題求解過程的反饋信息,當(dāng)各子問題間相互影響時,該方法不能很好地處理這類問題。對此,可采用最小冒險原則,即決策不應(yīng)在不成熟的情況下隨意做出,而應(yīng)推遲到有足夠的信息時再做出。20(

13、9)利用多知識源的專家系統(tǒng) 在求解復(fù)雜問題時,采用多種知識來源對問題進行綜合分析,可取得明顯效果。例如,在語音理解專家系統(tǒng)中,往往需要多種知識來源,這些知識通常被放在一個稱為黑板的工作區(qū)中。(10)使用統(tǒng)一知識表示方法的專家系統(tǒng) 為便于對系統(tǒng)中的知識進行統(tǒng)一管理、使用和解釋,目前專家系統(tǒng)的發(fā)展是采用多種知識表示統(tǒng)一的知識表示方法,對日趨龐大的知識庫進行有效的管理和組織。在這方面,用面向?qū)ο蠓椒ńy(tǒng)一知識表示已被多數(shù)專家系統(tǒng)及其開發(fā)工具所采用,并取得了良好的效果。21 3按系統(tǒng)的體系結(jié)構(gòu)分類 按照系統(tǒng)的體系結(jié)構(gòu),專家系統(tǒng)可分為4 種類型。 (1)集中式專家系統(tǒng) 這是一種對知識和推理進行集中管理的一

14、類專家系統(tǒng)。目前,得到成功應(yīng)用的專家系統(tǒng)多屬于這一類型。對這類專家系統(tǒng),又可按照知識及推理機構(gòu)的組織方式,細分為層次式結(jié)構(gòu)、深-淺雙層結(jié)構(gòu)、多層聚焦結(jié)構(gòu)及黑板結(jié)構(gòu)等。22 層次式結(jié)構(gòu)是指具有多層推理機制,逐層進行推理的專家系統(tǒng),例如,青光眼診斷專家系統(tǒng),其推理模型可分為癥狀層、病變層及診斷層。 深-淺雙層結(jié)構(gòu)是指系統(tǒng)分別具有深層知識庫(問題領(lǐng)域內(nèi)的原理性知識)和淺層知識庫(領(lǐng)域?qū)<业慕?jīng)驗知識),并且相應(yīng)地有兩個推理機分別作用于這兩個不同知識庫的專家系統(tǒng)。 多層聚焦結(jié)構(gòu)是指知識庫中的知識是按動態(tài)分層組織的專家系統(tǒng)。它把對當(dāng)前推理最有用、最有希望推出結(jié)論的知識稱為“焦點”,并把它置于聚焦結(jié)構(gòu)的最上

15、層,把有希望入選的知識放在第二層,以此類推。 黑板結(jié)構(gòu)是指那種有多個知識庫和多個推理機,并通過一個結(jié)構(gòu)化的公共數(shù)據(jù)區(qū)(稱為黑板)來交換信息的專家系統(tǒng)。這種專家系統(tǒng)通常用在那些求解問題比較復(fù)雜的系統(tǒng)中。23(2)分布式專家系統(tǒng) 分布式專家系統(tǒng)是指具有分布處理能力以及多專家系統(tǒng)、多知識元的協(xié)同處理能力的專家系統(tǒng)。分布式專家系統(tǒng)的主要特點有:第一,系統(tǒng)中的數(shù)據(jù)、知識及控制不但在邏輯上,而且在物理上都是分布的;第二,系統(tǒng)中的各機構(gòu)通過計算機網(wǎng)絡(luò)實現(xiàn)互連,這些機構(gòu)之間相互協(xié)作,可以求解單個機構(gòu)難以解決,甚至不能解決的問題。目前,基于多 Agent的研究是分布式專家系統(tǒng)研究的重點。(3)神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)

16、這是運行人工神經(jīng)網(wǎng)絡(luò)技術(shù)建造的專家系統(tǒng),目前尚處于研究階段。24(4)符號系統(tǒng)與神經(jīng)網(wǎng)絡(luò)相結(jié)合的專家系統(tǒng) 這是把基于連接主義的神經(jīng)網(wǎng)絡(luò)與基于符號處理的專家系統(tǒng)有機結(jié)合形成的一種混合型專家系統(tǒng)。這種專家系統(tǒng)可以充分發(fā)揮神經(jīng)網(wǎng)絡(luò)與符號系統(tǒng)的優(yōu)點,克服它們的缺點,實現(xiàn)優(yōu)勢互補。 至于神經(jīng)網(wǎng)絡(luò)與符號系統(tǒng)的結(jié)合,可以有多種方式。例如,為充分發(fā)揮神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)能力強的優(yōu)勢,可把它用于知識的自動獲取,而推理仍用符號機制。當(dāng)然,也可以把神經(jīng)網(wǎng)絡(luò)作為推理機構(gòu)中的一個模塊,然后用符號機制加以連接,形成一個專家系統(tǒng)。與基于符號處理的專家系統(tǒng)相比,人工神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)可以充分利用人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)功能和大規(guī)模并行分布處

17、理功能等,實現(xiàn)自動化知識獲取和自適應(yīng)推理,從而提高了專家系統(tǒng)的智能水平。25 總體上,專家系統(tǒng)具有一些共同特點: (1)可具有一個或多個專家的知識和經(jīng)驗,能以接近于人類專家的水平在特定領(lǐng)域工作。 (2)能高效、準(zhǔn)確、迅速地工作,不會像人類專家那樣產(chǎn)生疲倦和不穩(wěn)定。 (3)使人類專家的領(lǐng)域知識突破了時間和空間的限制,專家系統(tǒng)程序可永久保存,并可復(fù)制任意多的副本或在網(wǎng)上供不同地區(qū)或不同部門的人們使用。 (4)能進行有效推理,包括各種精確性推理和非精確性推理等。 (5)具有透明性,能以可理解的方式解釋推理過程。 (6)具有自學(xué)習(xí)能力,可總結(jié)規(guī)律,不斷擴充和完善系統(tǒng)自身。 (7)能提高生產(chǎn)率,產(chǎn)生巨大

18、的社會效益、經(jīng)濟效益等。 (8)對推動人工智能等其他學(xué)科的發(fā)展具有重大的作用。 專家系統(tǒng)無論在當(dāng)前還是未來,都是專家可以信賴和利用的高水平智能助手。三. 專家系統(tǒng)的特點26一. 知識庫二. 數(shù)據(jù)庫三. 推理機四. 解釋機構(gòu)五. 知識獲取機構(gòu)六. 用戶界面2. 專家系統(tǒng)的基本結(jié)構(gòu)27 專家系統(tǒng)的結(jié)構(gòu)是指專家系統(tǒng)各組成部分的構(gòu)造方法和組織形式。不同應(yīng)用領(lǐng)域和不同類型的專家系統(tǒng),其體系結(jié)構(gòu)和功能也都不盡相同。通常,一個最基本的專家系統(tǒng)應(yīng)由知識庫、數(shù)據(jù)庫、推理機、解釋機構(gòu)、知識獲取機構(gòu)和用戶界面6個部分所組成,如圖1所示。用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家圖1

19、專家系統(tǒng)的組成推理機和知識庫完全是分開的28 在專家系統(tǒng)的實際開發(fā)過程中,還可以采用更為理想、先進的專家系統(tǒng)結(jié)構(gòu),如元級和目標(biāo)級控制的專家系統(tǒng),具有黑板結(jié)構(gòu)的專家系統(tǒng),以及多層次、多專家協(xié)同工作的專家系統(tǒng)結(jié)構(gòu)等。對于這些專家系統(tǒng)結(jié)構(gòu),可根據(jù)以后的實際需要逐步了解,本課程主要討論圖1所給出的專家系統(tǒng)的基本結(jié)構(gòu)。29用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家 知識庫是專家系統(tǒng)的知識存儲器,用來存放求解問題的領(lǐng)域知識。對領(lǐng)域問題的專家知識,首先用相應(yīng)的知識表示方法將其表示出來,然后再進行形式化,并經(jīng)編碼放入知識庫中。通常,知識庫中的知識分為兩大類型:一類是領(lǐng)域中的事實

20、,稱為事實性知識,這是一種廣泛公認(rèn)的知識,即在書本上的知識及常識;另一類是啟發(fā)性知識,它是領(lǐng)域?qū)<以陂L期工作實踐中積累起來的經(jīng)驗總結(jié)。專家系統(tǒng)開發(fā)中的一個重要任務(wù)就是要十分認(rèn)真細致地對專家的這類經(jīng)驗知識進行分析。一. 知識庫30 領(lǐng)域?qū)<宜鶕碛械慕?jīng)驗性、判定性知識,實際上是一種直覺性和訣竅性的知識。 在問題求解過程中,這種知識是最難獲得的,原因是不少專家很少意識到自己是如何使用這些知識解決問題的,甚至沒有意識到自己在解決問題時究竟使用了多少這樣的知識,而且讓他們把這些直覺、訣竅、經(jīng)驗講出來,本身就是一件比較困難的事情。但是,這些知識又恰恰是知識庫的核心部分。31 正如費根鮑姆斯指出的:專家系統(tǒng)

21、的力量來自于它們存在的知識,那些知識本來是存儲在專家(人)頭腦中的,而要把它取出來,則是AI專家所面臨的最大難題。 在建立知識庫的過程中,AI專家要與領(lǐng)域?qū)<液芎玫睾献?,認(rèn)真提取領(lǐng)域?qū)<业闹R,并根據(jù)計算機對這些知識的表示和使用要求,從領(lǐng)域?qū)<掖竽X中將這些知識轉(zhuǎn)化成知識庫的一個個組成部分。知識庫一經(jīng)建立,便可供專家系統(tǒng)在推理時使用。32用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家 數(shù)據(jù)庫又稱全局?jǐn)?shù)據(jù)庫或綜合數(shù)據(jù)庫,用來存儲有關(guān)領(lǐng)域問題的事實、數(shù)據(jù)、初始狀態(tài)(證據(jù))和推理過程中得到的各種中間狀態(tài)及目標(biāo)等。實際上,它相當(dāng)于專家系統(tǒng)的工作存儲器,用它存放用戶回答的事實、

22、已知的事實和由推理得到的事實。數(shù)據(jù)庫的規(guī)模和結(jié)構(gòu)可根據(jù)系統(tǒng)的目的不同來確定,而且,隨著問題的不同,數(shù)據(jù)庫的內(nèi)容也可以是動態(tài)變化的??傊?,數(shù)據(jù)庫存放的是該系統(tǒng)二. 數(shù)據(jù)庫當(dāng)前要處理對象的一些事實。例如,在醫(yī)療專家系統(tǒng)中,數(shù)據(jù)庫存放的僅是當(dāng)前患者的情況,如姓名、年齡、癥狀等及推理過程中得到的一些中間結(jié)果、病情等;在氣象專家系統(tǒng)中,數(shù)據(jù)庫存放的是當(dāng)前氣象要素,如云量、溫度、氣壓以及推理得到的中間結(jié)果等。33 專家系統(tǒng)中的數(shù)據(jù)庫只是一個存儲量很小的用于暫存中間信息的工作存儲器(也稱為內(nèi)涵數(shù)據(jù)庫),而不是通常概念上的用于存放大量信息的數(shù)據(jù)庫(也稱為外延數(shù)據(jù)庫) 僅從研制專家系統(tǒng)來看,沒有必要在其內(nèi)部建立

23、一個規(guī)模龐大、功能齊全的數(shù)據(jù)庫。但是,通常要使專家系統(tǒng)達到實用,并使之為廣大信息管理系統(tǒng)工作者所接受,必須解決專家系統(tǒng)對外延數(shù)據(jù)庫的訪問問題。34用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家 推理機是一組用來控制、協(xié)調(diào)整個專家系統(tǒng)的程序。它根據(jù)數(shù)據(jù)庫當(dāng)前輸入的數(shù)據(jù),利用知識庫中的知識按一定的推理策略,去求解當(dāng)前的問題、解釋外部輸入的事實和數(shù)據(jù),推導(dǎo)出結(jié)論并向用戶提出問題等。由于專家系統(tǒng)是模擬人類專家進行工作,因此設(shè)計推理機時,應(yīng)使它的推理過程和專家的推理過程盡量相似,并最好完全一致。推理機所采用的推理方法可以是正向推理、逆向推理、或正逆向結(jié)合的雙向推理,并且,在這

24、三種推理方式中,都包含有精確推理和不確定推理。三. 推理機35 對大中型專家系統(tǒng),由于其知識庫中的知識數(shù)量很多,因此其推理機制由知識庫管理系統(tǒng)和推理機兩個主要部分組成。 其中,知識庫管理系統(tǒng)實現(xiàn)對知識庫中知識的合理組織和有效管理,并能根據(jù)推理過程的需求去搜索、運用知識和對知識庫中的知識做出正確的解釋;而推理機則主要用于生成并控制推理的進程和使用知識庫中的知識。 目前,在更大的專家系統(tǒng)中,知識庫管理系統(tǒng)已從推理機中獨立出來,專門用來管理龐大的知識庫,它需要解決知識庫的一致性、完備性、相容性等問題。 推理機和知識庫相分離,是專家系統(tǒng)的一大特點。這不僅便于對知識庫的管理,而且還可以實現(xiàn)具有可塑性、通

25、用性的系統(tǒng)。36用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家 專家系統(tǒng)應(yīng)該能夠以用戶便于接受的方式解釋自己的推理過程。例如,回答用戶提出的“為什么?”,給用戶說明“結(jié)論是如何得出的?”等。通過這種解釋,既可以使專家系統(tǒng)更取信于用戶,又可以幫助系統(tǒng)建造者發(fā)現(xiàn)知識庫及推理機中的錯誤。因此,無論對用戶,還是對系統(tǒng)自身,解釋機構(gòu)都是不可缺少的。四. 解釋機構(gòu)37 解釋機構(gòu)實際上也是一組程序,它包括系統(tǒng)提示、人機對話、能書寫規(guī)則的語言以及解釋部分程序,其主要功能是解釋系統(tǒng)本身的推理結(jié)果,回答用戶的提問,使用戶能夠了解推理的過程及所運用的知識和數(shù)據(jù)。 在設(shè)計解釋機構(gòu)時,應(yīng)預(yù)先

26、考慮好:在系統(tǒng)運行過程中,應(yīng)該回答哪些問題,然后根據(jù)這些問題,設(shè)計好如何回答。目前,大多數(shù)專家系統(tǒng)的解釋機構(gòu)都采用人機對話的交互式解釋方法。 在基于規(guī)則的專家系統(tǒng)中,系統(tǒng)的解釋通常是與某種規(guī)則的追蹤形式相聯(lián)系的,當(dāng)系統(tǒng)進行解釋時,那些被追蹤的規(guī)則將被觸發(fā)。當(dāng)然,要對一個結(jié)論做出更滿意的解釋,還需要系統(tǒng)能把推理同領(lǐng)域的基本原理(常識性知識)聯(lián)系起來。38 知識獲取是專家系統(tǒng)的一種輔助功能,它可為修改知識庫中的原有知識和擴充新知識提供相應(yīng)手段。其基本任務(wù)是把知識加入到知識庫中,并負責(zé)維持知識的一致性及完整性,建立起性能良好的知識庫。用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<?/p>

27、AI專家五. 知識獲取機構(gòu)39 在不同專家系統(tǒng)中,知識獲取的功能和實現(xiàn)方法差別較大: 有的系統(tǒng)首先由知識工程師向領(lǐng)域?qū)<耀@取知識,然后再通過相應(yīng)的知識編輯軟件把知識送到知識庫中; 有的系統(tǒng)自身就具有部分學(xué)習(xí)功能,由系統(tǒng)直接與領(lǐng)域?qū)<覍υ挮@取知識; 有的系統(tǒng)具有較強的學(xué)習(xí)功能,可在系統(tǒng)運行過程中通過歸納、總結(jié),得出新的知識。 無論采取哪種方式,知識獲取都是目前專家系統(tǒng)研制中的一個重要問題。有關(guān)知識獲取問題,將在下一節(jié)專門討論。40用 戶 界 面解釋機構(gòu)推理機知識獲取機構(gòu)知識庫數(shù)據(jù)庫用 戶領(lǐng)域?qū)<褹I專家六. 用戶界面 用戶界面是專家系統(tǒng)的另一個關(guān)鍵組成部分,它作為專家系統(tǒng)與外界的接口,主要用于系

28、 統(tǒng)和外界之間的通訊與信息交換。通常,專家系統(tǒng)的使用者包括最終用戶、領(lǐng)域?qū)<?、知識工程師。41 在這三種人員中,最終用戶和領(lǐng)域?qū)<乙话愣疾皇怯嬎銠C專業(yè)人員,因此用戶界面必須適 應(yīng)非計算機人員的需求,不僅應(yīng)把系統(tǒng)的輸出信息轉(zhuǎn)換為便于用戶理解的形式,而且還應(yīng)使用戶能方便地操縱系統(tǒng)運行。 一般來說,用戶界面應(yīng)盡可能地擬人化,盡可能地使用接近于自然語言的計算機語言,并能理解和處理聲音、圖像等多媒體信息。42一. 知識獲取的任務(wù)二. 知識獲取方法的分類三. 非自動知識獲取四. 自動知識獲取3. 知識的獲取43 知識獲取一直是專家系統(tǒng)開發(fā)中的一個瓶頸問題。盡管已有許多人工智能工作者在這方面做了大量的研究工

29、作,但至今仍無一種可以完全代替知識工程師的自動化方法。事實上,知識的自動化獲取是一項非常艱難的工作,要實現(xiàn)這一目標(biāo),還有一段漫長的路要走,還有許多理論和技術(shù)上的問題需要解決。目前,專家系統(tǒng)的知識獲取一般是由知識工程師與專家系統(tǒng)中的知識獲取機構(gòu)共同完成的。44一. 知識獲取的任務(wù) 知識獲取一般是指從某個或某些知識源中獲取專家系統(tǒng)實現(xiàn)問題求解所需要的專門知識,并以某種形式在計算機中存儲、傳輸與轉(zhuǎn)移。其基本任務(wù)是為專家系統(tǒng)獲取知識,建立起健全、完善、有效的知識庫,以滿足領(lǐng)域問題求解的需求。為此,需要做以下幾項工作。1從知識源抽取知識 所謂知識源是指專家系統(tǒng)知識的來源,如領(lǐng)域?qū)<?、書本、相關(guān)論文、實例

30、研究、經(jīng)驗數(shù)據(jù)及系統(tǒng)自身的運行實踐等。所謂抽取知識是指把蘊含于知識源中的知識經(jīng)識別、理解、篩選、歸納等處理后抽取出來,以便用于知識庫的建立。45 通常,知識并不是以某種現(xiàn)成的形式存在于知識源中的,為了從知識源中抽取知識還需要做大量的工作。例如,對領(lǐng)域?qū)<?,雖然他們可以利用自己的經(jīng)驗解決該領(lǐng)域中的各種困難問題,但他們往往缺少對自己經(jīng)驗的總結(jié)與歸納,甚至有些經(jīng)驗是只可意會不可言傳的。另一方面,如果要求系統(tǒng)能夠在自身的運行實踐中通過機器學(xué)習(xí)功能從已有知識或?qū)嵗醒堇[、歸納出新知識,則系統(tǒng)自身必須具有一定的“學(xué)習(xí)”能力。這就對抽取知識提出了一種更高的要求。2表示知識 通常,知識源中的知識是以自然語言、

31、圖形、表格等形式表示的,而知識庫中的知識則是用計算機能夠識別的形式來表示的,二者之間有很大差別。為使專家系統(tǒng)能夠使用從知識源中抽取出來的知識,首先需要把這些知識用適當(dāng)?shù)闹R表示形式表示出來。這一工作,通常是由知識工程師來完成的。463知識輸入 把用某種知識表示方法表示的知識經(jīng)編輯、編譯送入知識庫的過程稱為知識輸入。目前,知識的輸入一般有兩條途徑:一條是利用計算機系統(tǒng)提供的編輯軟件;另一條是利用專門編制的知識編輯系統(tǒng)。前者的優(yōu)點是簡單、方便,無須編制專門程序即可直接使用;后者的優(yōu)點是針對性、實用性強,更符合知識輸入的要求。4知識檢測 在上述建立知識庫的過程中,無論哪一步出現(xiàn)錯誤,都會直接影響到專

32、家系統(tǒng)的性能。因此,必須對知識庫進行檢測,以便盡早發(fā)現(xiàn)和糾正可能出現(xiàn)的錯誤。檢測的主要任務(wù)是知識庫中知識的一致性和完整性。47二. 知識獲取方法的分類 知識獲取方法的分類可以有多種方式,例如,按照知識獲取的自動化程度,可將知識獲取分為非自動知識獲取和自動知識獲取兩種方式;按知識獲取所要解決的問題,可將知識獲取分為手工知識獲取、智能知識編輯、知識發(fā)現(xiàn)系統(tǒng)及人工神經(jīng)網(wǎng)絡(luò)知識獲取4種方式。1手工知識獲取 這是一種通過知識工程師與領(lǐng)域?qū)<议L時間接觸與多次交談,直接從領(lǐng)域?qū)<业慕?jīng)驗中,或者在領(lǐng)域?qū)<业闹笇?dǎo)下從其他知識源中提取知識的方法。此外,對獲取的知識也需要知識工程師采用某種合適的知識表示形式將它們編

33、入知識庫中。48 所謂知識工程師,實際上是專家系統(tǒng)設(shè)計者與領(lǐng)域?qū)<抑g的一個中介專家,他既懂得如何與領(lǐng)域?qū)<掖蚪坏?,能從領(lǐng)域?qū)<一蚱渌R源中獲得專家系統(tǒng)所需要的知識,又熟悉知識處理,能把獲得的知識用合適的知識表示方法表示出來。 在實際專家系統(tǒng)的建造中,知識工程師的大多數(shù)工作是由專家系統(tǒng)的設(shè)計及建造者擔(dān)任的。知識工程師的主要任務(wù)有: (1)與領(lǐng)域?qū)<医徽?,閱讀有關(guān)文獻,獲取專家系統(tǒng)所需要的原始知識; (2)對獲得的原始知識進行分析、歸納、整理,形成用自然語言表達的知識條款,然后交領(lǐng)域?qū)<覍彶?。?jīng)反復(fù)交流,最后把知識條款確定下來; (3)把最后確定的知識條款用知識表示語言表示出來,交知識編輯器進

34、行編輯輸入。492智能知識編輯 這種方法是建立一個智能知識編輯器,讓擁有領(lǐng)域知識的專家通過智能知識編輯器直接與專家系統(tǒng)打交道,并由智能知識編輯器自動生成知識庫。所謂智能知識編輯器是指那種具有關(guān)于知識庫結(jié)構(gòu)的知識和會話能力的知識獲取機構(gòu)。這種方法在目前的專家系統(tǒng)開發(fā)工具設(shè)計中頗受重視。3知識發(fā)現(xiàn)系統(tǒng) 這種方法是建立一個帶有歸納、類比或其他高級功能的知識發(fā)現(xiàn)系統(tǒng),是指通過實例或?qū)嶋H問題來總結(jié)、發(fā)現(xiàn)一些尚未為專家系統(tǒng)掌握或認(rèn)識的新知識,將其裝入知識庫,使知識庫的知識不斷完善豐富。這種知識獲取方法已成為機器學(xué)習(xí)的主要研究內(nèi)容。 504人工神經(jīng)網(wǎng)絡(luò)知識獲取 人工神經(jīng)網(wǎng)絡(luò)是一種具有學(xué)習(xí)、聯(lián)想和自組織能力的

35、智能系統(tǒng)。在專家系統(tǒng)中,可利用人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)、聯(lián)想、并行分布式等功能解決專家系統(tǒng)開發(fā)中的知識獲取、表達和并行推理等問題。 建立人工神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)不需要組織大量的規(guī)則,也不需要進行樹的搜索,而且,通過神經(jīng)網(wǎng)絡(luò)可使機器進行自組織、自學(xué)習(xí),不斷地充實、豐富專家系統(tǒng)中原有的知識庫,使專家系統(tǒng)中最困難的知識獲取問題得到很好的解決。在范例十分豐富的情況下,還可以借助人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)機制來解決非精確推理中構(gòu)造知識庫的問題。51三. 非自動知識獲取 在這種方式中,知識獲取可分為以下兩步:首先由知識工程師從領(lǐng)域?qū)<一蚱渌R源獲取知識,然后再由知識工程師用某種知識編輯軟件把它送到知識庫中。在專家系統(tǒng)開發(fā)

36、過程中,知識工程師獲取領(lǐng)域?qū)<抑R的技術(shù)包括:1現(xiàn)場觀察 知識工程師要到現(xiàn)場對領(lǐng)域?qū)<以诠ぷ髦械膶嶋H問題求解進行觀察,而不是在實驗室條件下對設(shè)計出的真實問題進行觀察。這時,知識工程師不要去干預(yù)領(lǐng)域?qū)<?,而是充?dāng)被動的觀察者。這種方法能使知識工程師對問題的復(fù)雜性有所了解。522問題討論 知識工程師選擇一些有代表性的問題,然后與專家進行討論。其目的在于了解專家對每個問題是如何組織知識、如何表示概念和假設(shè)、如何處理與問題有關(guān)的知識和數(shù)據(jù)的不一致性和非精確性的。通常,所要提出的問題如下: (1)該問題與典型問題的差別何在? (2)問題需要什么類型的數(shù)據(jù)? (3)什么樣的答案對問題是最合適的? (4)問

37、題能夠歸結(jié)為互不相交的子問題嗎? (5)問題求解需要什么樣的知識? (6)問題解答的確切解釋或正當(dāng)理由是什么? 在討論中,領(lǐng)域?qū)<铱赡芤胄滦g(shù)語、新概念和新關(guān)系。發(fā)生這種情況時,知識工程師可請領(lǐng)域?qū)<襾矶x這些新概念,并將它們與現(xiàn)有概念和關(guān)系相聯(lián)系。有時,可能需要對知識庫中現(xiàn)有的概念進行重新定義和組合。533. 問題描述 知識工程師請領(lǐng)域?qū)<揖兔款惪赡墚a(chǎn)生的答案描述一個典型問題,以便幫助知識工程師對每類答案定義一個原型問題,專家系統(tǒng)可用其幫助選擇解答問題的策略或基本方法,同時也為專家系統(tǒng)有層次的組織知識提供了啟發(fā)。這種方法特別適用于診斷類型的問題。4問題分析 知識工程師請領(lǐng)域?qū)<医獯鹨幌盗袉栴}

38、,從中探索專家在求解問題中的推理過程。在專家解決問題的過程中,知識工程師給專家提供所需的其它信息或數(shù)據(jù)。專家一邊解決實際問題,一邊描述求解過程,并盡可能多地給出一些中間步驟。知識工程師對每一步提出問題,從中決定其基本原理,包括引入的假設(shè)、用來產(chǎn)生假設(shè)的策略以及用于指導(dǎo)策略選擇的目標(biāo)。545系統(tǒng)精化 先由領(lǐng)域?qū)<医o出一些從易到難的問題,在專家系統(tǒng)投入運行時,知識工程師應(yīng)先在紙上使用從專家那里學(xué)來的概念、形式體系和尚未投入的規(guī)則來求解這些問題,以便對從領(lǐng)域?qū)<夷抢锏脕淼闹R的一致性和完整性做快速檢查。一旦專家系統(tǒng)能夠運行,哪怕能力有限,知識工程師也應(yīng)當(dāng)用之求解領(lǐng)域?qū)<姨峁┑膯栴}。6系統(tǒng)檢查 領(lǐng)域?qū)?/p>

39、家來檢查和評價原型系統(tǒng)中的每條規(guī)則,評價選擇規(guī)則的控制策略。這包含檢驗每條規(guī)則的精確度,說明系統(tǒng)后來用之解釋其操作的理由。領(lǐng)域?qū)<覒?yīng)當(dāng)比較原型系統(tǒng)中的控制策略與自己處理問題的方法是否一致。7. 系統(tǒng)驗證 知識工程師把領(lǐng)域?qū)<壹霸拖到y(tǒng)求解問題的情況交給其他專家驗證。這就提供了一條比較不同專家策略,并從中找出基本差別的途徑。55四. 自動知識獲取 所謂自動知識獲取是指系統(tǒng)自身具有獲取知識的能力,它不僅可以直接與領(lǐng)域?qū)<覍υ?,從專家提供的原始信息中“學(xué)習(xí)”專家系統(tǒng)所需要的知識,而且還能從系統(tǒng)運行實踐中總結(jié)、歸納出新的知識,發(fā)現(xiàn)和改正自身存在的錯誤,并通過不斷地自我完善,使知識庫逐步趨于完整一致。為

40、達到這一目的,它至少應(yīng)具備的能力包括:1. 具有語音、文字、圖像的識別能力 為了實現(xiàn)知識的自動獲取,必須使專家系統(tǒng)能與領(lǐng)域?qū)<抑苯訉υ?,能閱讀相關(guān)的科技資料。這就要求系統(tǒng)應(yīng)具有識別語音、文字及圖像的能力。2具有理解、分析、歸納的能力 領(lǐng)域?qū)<姨峁┑闹R通常是一些處理具體問題的實例,不能直接用于知識庫。為了把它變成知識庫中的知識,必須在理解的基礎(chǔ)上進行分析、歸納、提煉、綜合,從中抽出專家系統(tǒng)所需要的知識并送入知識庫。563具有從自身運行過程中學(xué)習(xí)的能力 在知識庫建成投入使用后,隨著實際應(yīng)用的需要,知識庫的不完善性會逐漸暴露出來。這就要求知識的自動獲取系統(tǒng)能不斷地總結(jié)經(jīng)驗教訓(xùn),從運行實踐中產(chǎn)生新的

41、知識,糾正可能存在的錯誤,實現(xiàn)知識庫的自我完善。 總之,知識的自動獲取是一種理想的專家系統(tǒng)知識獲取方式,要實現(xiàn)這一目標(biāo)將涉及到人工智能的諸多研究領(lǐng)域,如模式識別、自然語言理解、機器學(xué)習(xí)等,甚至對硬件方面也有較高的要求。這些問題目前尚處于研究階段,實現(xiàn)真正意義上的自動知識獲取還任重而道遠。57一. 專家系統(tǒng)的開發(fā)條件二. 專家系統(tǒng)開發(fā)的生命周期三. 專家系統(tǒng)開發(fā)的各個階段四. 專家系統(tǒng)的評價3. 專家系統(tǒng)的開發(fā)與評價58 前面已經(jīng)討論了專家系統(tǒng)的基本結(jié)構(gòu)和有關(guān)技術(shù),本節(jié)主要從建造專家系統(tǒng)的角度討論專家系統(tǒng)的開發(fā)與評價問題。一. 專家系統(tǒng)的開發(fā)條件 在實際應(yīng)用中,并非任何領(lǐng)域都適合開發(fā)專家系統(tǒng)。除

42、了支撐環(huán)境、實現(xiàn)技術(shù)等方面應(yīng)具備的條件外,本節(jié)主要討論問題領(lǐng)域特征、專家及其知識表達方面的一些要求。591問題領(lǐng)域的合適性 選擇合適的問題領(lǐng)域是開發(fā)專家系統(tǒng)的前提,也是專家系統(tǒng)開發(fā)中的一個關(guān)鍵問題??晒﹨⒖嫉挠糜谶x擇專家系統(tǒng)應(yīng)用領(lǐng)域的指導(dǎo)性原則包括:(1)應(yīng)用領(lǐng)域有使用專家系統(tǒng)的需求 對一個應(yīng)用領(lǐng)域,是否需要開發(fā)專家系統(tǒng),首先需要看該應(yīng)用領(lǐng)域是否有應(yīng)用這項技術(shù)的需求。實際上,對任何新技術(shù),需求都是其發(fā)展的主要推動力。專家系統(tǒng)也不例外,開發(fā)一個沒有需求的系統(tǒng)是毫無意義的。因此,應(yīng)用領(lǐng)域的需求是開發(fā)專家系統(tǒng)的首要條件。60(2)領(lǐng)域問題適合用專家系統(tǒng)來解決 通常,領(lǐng)域?qū)<沂峭ㄟ^思維、啟發(fā)式的方法解

43、決問題的。專家系統(tǒng)正好適應(yīng)了領(lǐng)域?qū)<业倪@種工作方式。它特別適合于那些迄今為止人類還沒有徹底掌握的、不存在成熟算法且主要靠專家經(jīng)驗來解決的領(lǐng)域問題。至于那些已存在成熟算法的領(lǐng)域問題,可直接用傳統(tǒng)軟件設(shè)計方法來解決,而不必采用專家系統(tǒng)。(3)領(lǐng)域問題使用專家系統(tǒng)的合理性 對一個特定的領(lǐng)域問題,是否需要為其開發(fā)專家系統(tǒng),還需要考慮它的合理性。通常,在以下情況下開發(fā)專家系統(tǒng)是不合理的: 問題求解需要很高的代價; 人類專家的知識被遺忘或在知識傳遞中被損失; 領(lǐng)域?qū)<业闹R或經(jīng)驗稀少; 61(4)領(lǐng)域問題的難度和規(guī)模要適中 領(lǐng)域問題的難度和規(guī)模是開發(fā)專家系統(tǒng)的另一個關(guān)鍵問題。如果領(lǐng)域問題的難度和規(guī)模太小,

44、開發(fā)專家系統(tǒng)便會失去意義,這樣的專家系統(tǒng)根本沒有研制的必要。如果領(lǐng)域問題的難度和規(guī)模太大,則會使專家系統(tǒng)難以建立,即使建成了,其處理效率也比較低。一般來說,對于一個領(lǐng)域問題,要使人們解決該問題的能力達到專家水平,就需要經(jīng)過多年的學(xué)習(xí)和實踐,那么,這樣的專家系統(tǒng)才有使用價值和實際意義。 從知識庫的規(guī)模來看,如果處理問題所需知識(規(guī)則)的數(shù)量在幾百條之間,則比較適合用來研制實用的專家系統(tǒng)。相對而言,如果一個專家系統(tǒng)僅有幾十條知識,則有點過于簡單,這種專家系統(tǒng)只能是一個演示程序,沒有什么實用價值;如果一個專家系統(tǒng)需要數(shù)千或上萬條知識才能解決該領(lǐng)域問題,則此種專家系統(tǒng)就有點過于復(fù)雜和龐大了。62(5)

45、問題的領(lǐng)域范圍不能太寬 受人工智能技術(shù)水平的限制,目前在知識獲取、知識表示、知識處理與應(yīng)用等方面還沒有一種有效的通用技術(shù)。因此,一個實用專家系統(tǒng)所處理的問題一般應(yīng)限制在一個相對窄的領(lǐng)域內(nèi),而不能太寬。例如,在醫(yī)療領(lǐng)域,目前要開發(fā)一個能醫(yī)治百病的專家系統(tǒng)還很困難。當(dāng)然,人們也正在致力于研究分布式、協(xié)同式的新一代專家系統(tǒng)。632領(lǐng)域?qū)<业膮⑴c和專家知識的可表達性 有高水平領(lǐng)域?qū)<业膮⑴c、專家知識的可表達性與可獲得性是開發(fā)專家系統(tǒng)的重要條件。 64(1)要有公認(rèn)的高水平領(lǐng)域?qū)<业姆e極參與 開發(fā)一個實用專家系統(tǒng)的重要條件之一是看在該領(lǐng)域內(nèi)是否有可合作的真正公認(rèn)的高水平領(lǐng)域?qū)<业膮⑴c。所謂真正公認(rèn)的高水

46、平領(lǐng)域?qū)<沂侵冈谠擃I(lǐng)域具有杰出成就的第一流專家,他不僅具有廣泛的專業(yè)知識,而且在解決該領(lǐng)域的專業(yè)問題方面比一般人能力更強。一般來說,領(lǐng)域?qū)<业乃皆礁?,與他合作出來的專家系統(tǒng)的性能就會越好,也更容易被別的同行專家和用戶所承認(rèn)。此外,僅有公認(rèn)的領(lǐng)域?qū)<沂遣粔虻?,還需要有這些專家的積極參與。 專家系統(tǒng)中強調(diào)符合率而不是準(zhǔn)確率,例如,一個專家治病的準(zhǔn)確率是80,按照該專家開發(fā)的專家系統(tǒng)符合率是90,則該專家系統(tǒng)的準(zhǔn)確率是90*80=72。因此,開發(fā)一個實用專家系統(tǒng)的重要條件之一是看在該領(lǐng)域內(nèi)是否有可合作的真正公認(rèn)的高水平領(lǐng)域?qū)<业膮⑴c。 65(2)領(lǐng)域?qū)<业闹R應(yīng)該是可表達的 僅有高水平領(lǐng)域?qū)<业姆e

47、極參與還不夠,專家還必須能夠明確表達和理解他們在解決領(lǐng)域問題時所采用的知識、經(jīng)驗、技能和方法。當(dāng)有多個領(lǐng)域?qū)<視r,這些領(lǐng)域?qū)<覒?yīng)該能夠在領(lǐng)域問題及其解決方法方面取得一致意見。否則,知識工程師將無法從他們那里獲得知識,建立高性能專家系統(tǒng)也將是一句空話。 從專家知識的可表達性可以看出,只有那些專家的知識、經(jīng)驗?zāi)苡谜Z言表達清楚的領(lǐng)域,才適合開發(fā)專家系統(tǒng)。只有這樣,知識工程師才能通過與領(lǐng)域?qū)<业慕徽劙褜<业闹R整理出來,并加以形式化后存入知識庫。而那些全憑專家的感覺和直覺工作的某些領(lǐng)域(如品嘗專業(yè))和完全依賴于技能的領(lǐng)域(如外科手術(shù)),目前還不太適合建立專家系統(tǒng)。66(3)領(lǐng)域?qū)<业慕?jīng)驗應(yīng)該是易獲得的

48、 問題領(lǐng)域的選擇通常還與專家掌握該問題領(lǐng)域知識的程度有關(guān),即與專家求解問題的準(zhǔn)確性和知識好壞程度有關(guān)。如果任務(wù)非常新、難度又很大,以至于為求解該問題需要做一些基礎(chǔ)性研究工作的話,則該任務(wù)不宜用專家系統(tǒng)來解決。67二. 專家系統(tǒng)開發(fā)過程的生命周期概念 專家系統(tǒng)作為一個軟件系統(tǒng),其開發(fā)也存在一個生命周期的問題,這種生命周期稱為知識工程生命周期。與軟件工程生命周期相比,它們之間有相似的地方,也有不同之處。68 專家系統(tǒng)是一種能夠?qū)︻I(lǐng)域問題給出具有專家水平結(jié)論的特殊的復(fù)雜軟件系統(tǒng),并且不同系統(tǒng)的開發(fā)過程又有著各自的特殊性和側(cè)重點。 因此,不同的專家系統(tǒng)開發(fā)人員對知識工程生命周期的劃分提出了一些不同的看

49、法。有的劃分為:問題(任務(wù))選擇與需求分析、概念設(shè)計、功能設(shè)計、結(jié)構(gòu)設(shè)計、知識獲取、知識表示模式設(shè)計(形式化)、功能模塊的詳細設(shè)計、系統(tǒng)實現(xiàn)、測試與評價、系統(tǒng)集成與維護這樣幾個階段;也有簡單的劃分為問題確定、概念化、形式化、實現(xiàn)和測試五個階段。但是,這些劃分方法都無法解決專家系統(tǒng)建造過程在知識獲取及知識的形式化方面存在的瓶頸問題。 原型技術(shù)是解決瓶頸問題的一種較好方法,引人原型技術(shù)的專家系統(tǒng)開發(fā)過程可分為問題選擇與任務(wù)確定、需求分析、原型化設(shè)計、規(guī)劃與設(shè)計、系統(tǒng)實現(xiàn)、系統(tǒng)測試與評價、系統(tǒng)維護這樣七個階段69三. 專家系統(tǒng)開發(fā)過程的各個階段 1問題選擇與任務(wù)確定 選擇合適的應(yīng)用問題是專家系統(tǒng)能否

50、立項和能否開發(fā)成功的關(guān)鍵問題。這一階段的主要工作主要包括以下幾個方面。 (1)問題調(diào)研 這一步的任務(wù)是通過廣泛地調(diào)查研究和征求意見,列出一切可供考慮的問題。 (2)確定候選問題 這一步的任務(wù)是要縮小問題的選擇范圍,以使剩下的候選問題能夠得到詳細完整的評價和分析。 70 (3)候選問題分析 這一步的主要任務(wù)是對候選問題進行詳細分析。它包括:對問題實用性的分析;對專家及其經(jīng)驗的可獲得性的分析;確定問題的難度和專家系統(tǒng)的規(guī)模;專家系統(tǒng)的費用/效益分析。 (4)確定最終入選的問題 經(jīng)過詳細分析之后,可供選擇的問題都適合于開發(fā)專家系統(tǒng),也都與用戶需求相吻合,并且有合理的費用/效益比。這時,需要和用戶或主

51、管部門一起最終確定一個入選的問題,即確定開發(fā)何種專家系統(tǒng)更適合該領(lǐng)域問題求解的目標(biāo)。712需求分析 要建立一個實用的專家系統(tǒng),首先應(yīng)對用戶的需求進行詳盡的調(diào)查和仔細的分析。需求分析的好壞是系統(tǒng)最終成敗的關(guān)鍵一步,因此知識工程師在進行構(gòu)思和設(shè)計專家系統(tǒng)之前,必須做好對用戶需求的分析。需求分析階段的主要工作包括:反復(fù)地與用戶和領(lǐng)域?qū)<疫M行討論;寫出需求分析報告;選擇有代表性的用戶和專家對需求報告進行評審;寫出專家系統(tǒng)的規(guī)格說明書與開發(fā)計劃。723原型化設(shè)計 所謂專家系統(tǒng)的原型化(Expert System Prototyping)是指對比較大型或難度較大的專家系統(tǒng)的一種研制與開發(fā)方法。即在開發(fā)一個

52、實用專家系統(tǒng)之前先開發(fā)出來一個專家系統(tǒng)原型,然后在對原型開發(fā)取得一定經(jīng)驗的基礎(chǔ)上,再逐步實現(xiàn)實用的專家系統(tǒng)。 建立原型應(yīng)注意以下三點:第一,對選定的領(lǐng)域問題而言,知識庫中的知識類型應(yīng)該是齊全的,但一開始知識的數(shù)量可能較少,知識庫的規(guī)模不宜太大;第二,采用一種能快速實現(xiàn)專家系統(tǒng)原型的工具或方法,光追求系統(tǒng)主要功能的實現(xiàn),而暫不考慮系統(tǒng)的處理效率和那些次要功能;第三,能提供用多種方案或多種知識表示方法實現(xiàn)系統(tǒng)的可能。 構(gòu)造專家系統(tǒng)原型的主要步驟包括:初步知識獲??;基本問題求解方法的確定;推理方式的確定;知識表示方法的確定;工具選擇;原型系統(tǒng)開發(fā);原型系統(tǒng)測試;原型系統(tǒng)演示;項目的修正。734規(guī)劃與

53、設(shè)計 這是大型復(fù)雜專家系統(tǒng)開發(fā)中的一個重要階段,在專家系統(tǒng)生命周期中具有重要作用。這一階段的主要目標(biāo)是:加深對系統(tǒng)的進一步理解;制定好開發(fā)規(guī)劃;確定實施策略;對所有為系統(tǒng)開發(fā)提出過建議的人闡明對問題的理解程度,以得到他們的支持和幫助;為項目管理提供直觀的檢測點,使用戶參與系統(tǒng)的開發(fā);合理組織人員,協(xié)調(diào)項目的進展。 設(shè)計與規(guī)劃的主要任務(wù)包括:問題的詳細定義;確定項目規(guī)劃;對系統(tǒng)各個方面進行設(shè)計,如基本知識描述、系統(tǒng)體系結(jié)構(gòu)、工具選擇、知識表示方式、推理方式、對話模型等;制定測試規(guī)劃;制定產(chǎn)品規(guī)劃;提出實施規(guī)劃等。5系統(tǒng)實現(xiàn) 這一階段要對專家系統(tǒng)進行編程,因此應(yīng)該首先選擇適當(dāng)?shù)恼Z言環(huán)境和軟件開發(fā)工

54、具。系統(tǒng)實現(xiàn)所要完成的主要工作包括:原型系統(tǒng)修改;系統(tǒng)實現(xiàn);系統(tǒng)集成與驗證。746系統(tǒng)測試與評價 這一階段的目的是要測試與評估整個系統(tǒng)的功能,并進行必要的修改,以達到在任務(wù)確定階段所確立的性能與功能指標(biāo)。7系統(tǒng)維護與完善 這是專家系統(tǒng)開發(fā)過程的最后一個階段。對大型的專家系統(tǒng)來說,這一階段十分重要。維護階段的主要工作是:不斷增加系統(tǒng)功能;不斷修改系統(tǒng),尤其是擴充知識庫,增加新的知識,使其更完備;不斷擴大系統(tǒng)應(yīng)用領(lǐng)域,增強系統(tǒng)的問題求解能力;修改系統(tǒng),使其能夠適應(yīng)外部環(huán)境的變化。75四. 專家系統(tǒng)的評價 嚴(yán)格地說,評價是貫穿于整個專家系統(tǒng)建造過程的一項工作,只不過在開始階段進行的評價可以是非正式的

55、,而隨著系統(tǒng)開發(fā)的深入,其評價工作應(yīng)該越來越正式。一般來說,當(dāng)完成了系統(tǒng)原型的建造后,評價工作就必須隨之進行,并同時利用評價結(jié)果去改進系統(tǒng);當(dāng)系統(tǒng)全部完成準(zhǔn)備投入實際運行前,還應(yīng)該對整個系統(tǒng)做最后的評價。 對專家系統(tǒng)的評價是一項十分困難的工作,目前關(guān)于如何評價一個專家系統(tǒng),尚無統(tǒng)一的標(biāo)準(zhǔn)。下面從評價方法、評價內(nèi)容及評價原則三個方面來討論這一問題。 761評價方法 評價專家系統(tǒng)的基本方法有兩種: (1)“軼事”的方法 這種方法是簡單地啟發(fā)式地使用一些例子來檢測系統(tǒng)的工作情況,以評價系統(tǒng)的性能。這是人們在日常生活中經(jīng)常使用的一種方法,例如,人們往往是用一個醫(yī)生治愈疑難病癥的情況去評價該醫(yī)生的醫(yī)術(shù)水

56、平。 (2)實驗的方法 這種方法強調(diào)通過實驗來評價系統(tǒng)在處理數(shù)據(jù)庫中的各種問題事例時的性能。要使用這種方法,必須規(guī)定某種嚴(yán)格的試驗過程,以便把系統(tǒng)產(chǎn)生的解釋與相應(yīng)事例的實際解釋進行比較。這種方法看起來比軼事方法優(yōu)越,但在具體實現(xiàn)方面和得到有代表性的事例方面,常常會遇到一些嚴(yán)重的困難。例如,在醫(yī)學(xué)領(lǐng)域,要得到一些常見病的病例比較容易,但要得到那些非常見病的有代表性的病例就比較困難。772 . 評價內(nèi)容 評價內(nèi)容主要側(cè)重于專家系統(tǒng)的正確性與實用性,它包括以下一些主要方面: (1)知識庫中的知識是否正確和準(zhǔn)確? (2)知識庫中知識的一致性和完整性是否滿足要求? (3)知識的表達方式是否合適?組織方式

57、是否合理? (4)系統(tǒng)的推理是否正確?對各種問題能否給出正確答案?結(jié)果的可信度如何? (5)系統(tǒng)的解釋功能是否完全與合理? (6)用戶界面是否友好?使用是否方便?能否滿足用戶需求? (7)系統(tǒng)的解題效率如何?系統(tǒng)的響應(yīng)速度能否滿足用戶要求? (8)系統(tǒng)的可擴展性和可移植性如何?783評價原則 概括起來,對專家系統(tǒng)的評價大致有以下原則: (1)評價系統(tǒng)的性能,看其是否達到了領(lǐng)域?qū)<业乃?,是否達到了實用的程度; (2)評價系統(tǒng)的靈活性,看是否便于修改和擴充知識庫中的知識; (3)評價系統(tǒng)的透明性,看其解題過程及系統(tǒng)本身是否容易被用戶和維護人員所理解; (4)評價系統(tǒng)的可用性,包括系統(tǒng)的使用方法是

58、否簡單易行,人機通信是否直觀,運行效率是否令人滿意,能否推廣應(yīng)用等; (5)評價系統(tǒng)的運行效率,看系統(tǒng)能否產(chǎn)生預(yù)期的經(jīng)濟效益和社會效益; (6)評價系統(tǒng)的意義,看系統(tǒng)的實現(xiàn)技術(shù)是否對促進專家系統(tǒng)的推廣和發(fā)展有積極意義。79一. 程序設(shè)計語言二. 知識工程語言三. 輔助型工具四. 支持工具五. 專家系統(tǒng)開發(fā)環(huán)境5. 專家系統(tǒng)開發(fā)工具與環(huán)境80 不同應(yīng)用領(lǐng)域的專家系統(tǒng),雖然其基本結(jié)構(gòu)和工作方式相似,但其領(lǐng)域知識截然不同。前者體現(xiàn)了各種專家系統(tǒng)開發(fā)中的共性,后者則體現(xiàn)了不同專家系統(tǒng)中的個性。專家系統(tǒng)開發(fā)中的這種共性和個性,為各種開發(fā)工具的使用提供了基礎(chǔ)。 所謂專家系統(tǒng)開發(fā)工具與環(huán)境,實際上是一種為高

59、效率開發(fā)專家系統(tǒng)而設(shè)計的高級程序系統(tǒng)或高級程序設(shè)計語言環(huán)境。從目前的現(xiàn)狀來看,專家系統(tǒng)開發(fā)工具和環(huán)境可包括五方面的內(nèi)容:程序設(shè)計語言、知識工程語言、輔助型工具、支持工具及開發(fā)環(huán)境。81一. 程序設(shè)計語言 程序設(shè)計語言包括通用程序設(shè)計語言和人工智能語言。它們是開發(fā)專家系統(tǒng)的最基礎(chǔ)的語言工具。作為通用程序設(shè)計語言的主要代表有C、PASCAL、ADA等;作為人工智能語言的主要有以 LISP為代表的函數(shù)型語言,以 PROLOG為代表的邏輯型語言,以及C+等。 在上述人工智能語言中,LISP(LISt Processing Language)是麥卡錫和他的研究小組 1960年研究出來的,在專家系統(tǒng)發(fā)展的

60、早期,有許多著名的專家系統(tǒng)都是用這種語言開發(fā)出來的,例如MYCIN和PROSPECTOR等。 PROLOG(PROgramming in LOGic)語言是由科瓦爾斯基(RKowalski)首先提出,并于1972年由科麥瑞爾(A Comerauer)及其研究小組研制成功的一種邏輯程序設(shè)計語言。由于它具有簡潔的文法以及一階邏輯的推理能力,因而被廣泛地應(yīng)用于人工智能的許多研究領(lǐng)域中。82 C+語言既是一種通用程序設(shè)計語言,又是一種很好的人工智能語言,它以其強大的功能和面向?qū)ο筇卣?,在人工智能中得到了廣泛的應(yīng)用。目前,已有不少人直接用它來開發(fā)專家系統(tǒng)或各種專家系統(tǒng)工具。尤其是 Visual C+的發(fā)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論