《人工智能專(zhuān)家系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《人工智能專(zhuān)家系統(tǒng)(69頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、2021-4-26 1 第五章 專(zhuān)家系統(tǒng) 1 專(zhuān)家系統(tǒng)概述 2 LISP語(yǔ)言 3 知識(shí)庫(kù)與推理機(jī) 2021-4-26 2 專(zhuān)家系統(tǒng)概述 1、定義 專(zhuān)家系統(tǒng)(ES, Expert System)是一種模擬人類(lèi)專(zhuān)家解決領(lǐng)域問(wèn)題的計(jì)算機(jī)程序系統(tǒng)。 2021-4-26 3 專(zhuān)家系統(tǒng)概述 2、專(zhuān)家系統(tǒng)的類(lèi)型 1)解釋型 6)預(yù)測(cè)型 2)診斷型 7)規(guī)劃型 3)調(diào)試型 8)設(shè)計(jì)型 4)維修型 9)監(jiān)測(cè)型 5)教育型 10)控制型 2021-4-26 4 專(zhuān)家系統(tǒng)概述 3、專(zhuān)家系統(tǒng)的一般特點(diǎn) (1)知識(shí)的匯集 (2)啟發(fā)性推理 (3)推理和解釋的透明性(how而在WHAT型語(yǔ)言中,程序編制者只需簡(jiǎn)單說(shuō)明要做
2、的事情是什么(WHAT) 。 現(xiàn)代的LISP語(yǔ)言是這些語(yǔ)言的佼佼者,因?yàn)椴捎肅ommon Lisp格式的Lisp具有非凡的表現(xiàn)力,但是如何做某件事情仍然是有待于Lisp程序編制者來(lái)表達(dá)的東西.相反,Prolog是一種明顯地沖破了HOW型語(yǔ)言陳規(guī)的語(yǔ)言, 它鼓勵(lì)程序編制者去描述情況和問(wèn)題,而不是那些用來(lái)解決問(wèn)題的詳細(xì)步驟。” 2021-4-26 14 LISP語(yǔ)言 1、BackGround 1959年,麥卡錫基于阿隆索.邱奇(Alonzo Church)的-演算和西蒙、紐厄爾首創(chuàng)的表結(jié)構(gòu),開(kāi)發(fā)了著名的LISP語(yǔ)言(LISt Processing language or LISt Processo
3、r),成為人工智能界第一個(gè)最廣泛流行的語(yǔ)言。 2021-4-26 15 LISP語(yǔ)言 2、LISP語(yǔ)言的特點(diǎn) a、計(jì)算用的是符號(hào)表達(dá)式而不是數(shù); b、具有表處理能力,即用鏈表形式表示所有的數(shù)據(jù); c、控制結(jié)構(gòu)基于函數(shù)的復(fù)合,以形成更復(fù)雜的函數(shù); d、用遞歸作為描述問(wèn)題和過(guò)程的方法; e、用LISP語(yǔ)言書(shū)寫(xiě)的EVAL函數(shù)既可作為L(zhǎng)ISP語(yǔ)言的解 釋程序,又可以作為語(yǔ)言本身的形式定義;f、程序本身也同所有其他數(shù)據(jù)一樣用表結(jié)構(gòu)形式表示。 2021-4-26 16 LISP語(yǔ)言 2、LISP的符號(hào)表達(dá)式 符號(hào):以字母開(kāi)頭不含規(guī)定的特殊字符的字符串,相當(dāng)于其他語(yǔ)言中的變量。 原子:LISP中不可再分割的
4、對(duì)象,如數(shù)、符號(hào)、空表。 表:若干個(gè)數(shù)或符號(hào)用括號(hào)括起來(lái)就構(gòu)成一個(gè)表,表中的元素用空格分開(kāi),沒(méi)有元素的表稱(chēng)為空表,用( )或者nil表示。 符號(hào)表達(dá)式:原子和表的統(tǒng)稱(chēng)。 2021-4-26 17 LISP語(yǔ)言 LISP的符號(hào)表達(dá)式采用前綴表示形式,即表中第一個(gè)元素是函數(shù)符號(hào)名,其余的元素是這個(gè)函數(shù)要求的運(yùn)算或處理的元素。例如:(setq y (* 2 3 4 ) ) 2021-4-26 18 LISP語(yǔ)言 3、LISP語(yǔ)言的基本函數(shù) (1)數(shù)值運(yùn)算函數(shù) (2)求值與賦值函數(shù) (3)表處理函數(shù) (4)邏輯函數(shù) (5)條件函數(shù) (6)自定義函數(shù)與無(wú)名函數(shù) 2021-4-26 19 LISP語(yǔ)言 (
5、1)數(shù)值運(yùn)算函數(shù) a、算術(shù)運(yùn)算函數(shù):+ - * / 1+ 1- 等 (setq a 10) (/ a 2 2) b、超越函數(shù):exp expt log sqrt abs signum c、數(shù)的邏輯運(yùn)算函數(shù):logior logxor logand lognot 2021-4-26 20 LISP語(yǔ)言 2021-4-26 21 LISP語(yǔ)言 (2)求值與賦值函數(shù) a、禁止求值函數(shù) quote (quote (a b c) (setq x (a b c) (setq x (a b c) b、賦值函數(shù) setq c、求值函數(shù) (values (* 2 3) (+ 4 5) ) 2021-4-26 2
6、2 LISP語(yǔ)言 2021-4-26 23 LISP語(yǔ)言 (3)表處理函數(shù):LISP的基本數(shù)據(jù)結(jié)構(gòu)是表,LISP語(yǔ)言最擅長(zhǎng)的也是表。 a、取表部分內(nèi)容的函數(shù) car函數(shù):取表的第一個(gè)元素 (car (a b c) a cdr函數(shù):取表中去除第一個(gè)元素的余下表 (cdr (a b c) (b c) car和cdr的連續(xù)作用 (car (cdr (cdr (cdr (a b c d e f )可表示為 (cadddr (a b c d e f ) Max=4 2021-4-26 24 LISP語(yǔ)言 2021-4-26 25 LISP語(yǔ)言b、構(gòu)造表的函數(shù) 2021-4-26 26 LISP語(yǔ)言c、其
7、他表函數(shù) 2021-4-26 27 LISP語(yǔ)言4、邏輯函數(shù):只能返回真t或假nil 數(shù)據(jù)類(lèi)型判斷函數(shù) 2021-4-26 28 LISP語(yǔ)言數(shù)的比較函數(shù) = = = /= 等值函數(shù) equal (equal ( ) nil ) t (equal (a b c) (a b d) nil邏輯運(yùn)算函數(shù) and or not 2021-4-26 29 LISP語(yǔ)言5、條件函數(shù) if 函數(shù) (if test then else) 返回:else or nilwhen函數(shù): (when test form* ) unless函數(shù) (unless test form* ) 2021-4-26 30 LIS
8、P語(yǔ)言condition函數(shù) 2021-4-26 31 LISP語(yǔ)言6、自定義函數(shù)與無(wú)名函數(shù) 自定義函數(shù) 2021-4-26 32 LISP語(yǔ)言6、自定義函數(shù)與無(wú)名函數(shù) 無(wú)名函數(shù) 2021-4-26 33 LISP語(yǔ)言7、迭代與遞歸 2021-4-26 34 LISP語(yǔ)言do函數(shù) 2021-4-26 35 LISP語(yǔ)言do函數(shù) 2021-4-26 36 LISP語(yǔ)言(2)非結(jié)構(gòu)化迭代 2021-4-26 37 LISP語(yǔ)言 2021-4-26 38 專(zhuān)家系統(tǒng)實(shí)例動(dòng)物識(shí)別系統(tǒng)這是一個(gè)用以識(shí)別虎、金錢(qián)豹等七種動(dòng)物的小型專(zhuān)家系統(tǒng)。系統(tǒng)結(jié)構(gòu)1、主控模塊 2、創(chuàng)建知識(shí)庫(kù)模塊 3、建立數(shù)據(jù)庫(kù)模塊 4、推理
9、機(jī) 5、解釋機(jī)構(gòu) 2021-4-26 39 創(chuàng)建知識(shí)庫(kù)模塊 用于知識(shí)獲取,建立知識(shí)庫(kù),并且把各條知識(shí)用鏈連接起來(lái),形成“知識(shí)庫(kù)規(guī)則鏈表”。此外,它還對(duì)包含最終結(jié)論的規(guī)則進(jìn)行檢測(cè),做上標(biāo)志。建立數(shù)據(jù)庫(kù)模塊 用于把用戶(hù)提供的已知事實(shí)以及推理中推出的新事實(shí)放入數(shù)據(jù)庫(kù)中,并分別形成“已知事實(shí)鏈表”和“結(jié)論事實(shí)鏈表”。專(zhuān)家系統(tǒng)實(shí)例 2021-4-26 40 專(zhuān)家系統(tǒng)實(shí)例推理機(jī):用于實(shí)現(xiàn)推理,推理中凡是被選中參加推理的規(guī)則形成“已使用規(guī)則鏈表”。解釋機(jī)構(gòu):用于回答用戶(hù)的問(wèn)題,它將根據(jù)“已使用規(guī)則鏈表”進(jìn)行解釋。推理過(guò)程:采用正向推理和反向推理。 2021-4-26 41 知識(shí)庫(kù)與推理機(jī)領(lǐng)域?qū)<医鉀Q領(lǐng)域問(wèn)題
10、的能力主要體現(xiàn)在兩個(gè)方面: 1、專(zhuān)家擁有大量的知識(shí)。 2、專(zhuān)家具有選擇知識(shí)來(lái)解決問(wèn)題的能力。 知識(shí)庫(kù)是專(zhuān)家系統(tǒng)中必不可少的組成部分,是基于知識(shí)的推理的基礎(chǔ)和核心 2021-4-26 42 知識(shí)庫(kù)與推理機(jī) 1、產(chǎn)生式規(guī)則與規(guī)則庫(kù)的存儲(chǔ)產(chǎn)生式規(guī)則的存儲(chǔ)結(jié)構(gòu) 一條產(chǎn)生式規(guī)則的前件或后件可能是有限個(gè)事實(shí)或結(jié)論的合取式的析取。例如:規(guī)則R為: (F1 F2 F3) (F4 F5) H1 H2 2021-4-26 43 知識(shí)庫(kù)與推理機(jī)規(guī)則R等價(jià)變換為:R11: F1 F2 F3 H1 R12: F4 F5 H1 R21: F1 F2 F3 H2R22: F4 F5 H2a.允許有前件不同但后件相同的規(guī)則。
11、b.后件相同時(shí),它們的前件沒(méi)有包含關(guān)系。 2021-4-26 44 知識(shí)庫(kù)與推理機(jī)可以用一個(gè)與/或圖表示產(chǎn)生式的規(guī)則的事實(shí)和結(jié)論之間的與或關(guān)系。F1 F5F4F2F3 H2H1 2021-4-26 45 知識(shí)庫(kù)與推理機(jī) LISP中產(chǎn)生式規(guī)則的存儲(chǔ)形式:表 (規(guī)則名 (if (條件1) (條件2). (條件n) ) (then (結(jié)論1) (結(jié)論2). (結(jié)論m) ) ) 2021-4-26 46 知識(shí)庫(kù)與推理機(jī) 2、規(guī)則庫(kù)的存儲(chǔ)結(jié)構(gòu):分層結(jié)構(gòu)的表 若規(guī)則庫(kù)有N條規(guī)則,則規(guī)則庫(kù)表就有N個(gè)頂層元素,每個(gè)頂層元素是一個(gè)規(guī)則子表,每個(gè)規(guī)則子表有3個(gè)元素,分別是規(guī)則名,規(guī)則前件和規(guī)則后件。 2021-4
12、-26 47 知識(shí)庫(kù)與推理機(jī)規(guī)則庫(kù)的例子 2021-4-26 48 知識(shí)庫(kù)與推理機(jī) 2021-4-26 49 知識(shí)庫(kù)與推理機(jī)動(dòng)物識(shí)別專(zhuān)家系統(tǒng)規(guī)則庫(kù)與/或圖 2021-4-26 50 知識(shí)庫(kù)與推理機(jī) 3、推理機(jī)及其實(shí)現(xiàn) a.正向推理 b.反向推理(自學(xué)) 2021-4-26 51 知識(shí)庫(kù)與推理機(jī)正向推理過(guò)程: 根據(jù)在綜合數(shù)據(jù)庫(kù)中給出的已知事實(shí),正向使用規(guī)則,即把規(guī)則的前件同當(dāng)前數(shù)據(jù)庫(kù)的內(nèi)容進(jìn)行匹配來(lái)選取可用規(guī)則,若多條規(guī)則可用,則按沖突消解策略從中選擇一條規(guī)則執(zhí)行,將執(zhí)行規(guī)則的結(jié)論添加到綜合數(shù)據(jù)庫(kù)中,直至問(wèn)題求解或沒(méi)有可用規(guī)則。 2021-4-26 52 知識(shí)庫(kù)與推理機(jī) 2021-4-26 53
13、 知識(shí)庫(kù)與推理機(jī)反向推理過(guò)程: 根據(jù)在綜合數(shù)據(jù)庫(kù)中給出的假設(shè),反向使用規(guī)則,即把規(guī)則的后件同當(dāng)前數(shù)據(jù)庫(kù)的內(nèi)容進(jìn)行匹配來(lái)選取可用規(guī)則,若有多條規(guī)則可用,則按沖突消解策略從中選擇一條規(guī)則,將該規(guī)則的前件添加到綜合數(shù)據(jù)庫(kù)中,直至問(wèn)題求解或沒(méi)有可用規(guī)則。 2021-4-26 54 知識(shí)庫(kù)與推理機(jī) 2021-4-26 55 知識(shí)庫(kù)與推理機(jī)正向推理機(jī) 用LISP語(yǔ)言編制的產(chǎn)生式系統(tǒng)中的綜合數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)也是一個(gè)表,我們用facts作為綜合數(shù)據(jù)庫(kù)表的名稱(chēng)。 我們首先給出正向推理機(jī)需要調(diào)用的幾個(gè)函數(shù)的定義,最后給出實(shí)現(xiàn)的正向推理機(jī) 2021-4-26 56 知識(shí)庫(kù)與推理機(jī) 2021-4-26 57 知識(shí)庫(kù)與
14、推理機(jī) 2021-4-26 58 知識(shí)庫(kù)與推理機(jī) 2021-4-26 59 知識(shí)庫(kù)與推理機(jī) 2021-4-26 60 知識(shí)庫(kù)與推理機(jī) 2021-4-26 61 知識(shí)庫(kù)與推理機(jī) 2021-4-26 62 知識(shí)庫(kù)與推理機(jī) 2021-4-26 63 知識(shí)庫(kù)與推理機(jī) 2021-4-26 64 解釋機(jī)制與解釋器 How解釋 2021-4-26 65 解釋機(jī)制與解釋器Why解釋 2021-4-26 66 專(zhuān)家系統(tǒng)工具 1、概述 80年代以來(lái),專(zhuān)家系統(tǒng)工具不斷涌現(xiàn)。 EMYCIN:PUFF, SACON, CLOT, HEAMED, DART, BLUEBOX, OPS:R1 2021-4-26 67 專(zhuān)家
15、系統(tǒng)工具 2、專(zhuān)家系統(tǒng)工具分類(lèi) 專(zhuān)家系統(tǒng)工具按其功能主要分為兩類(lèi),一類(lèi)是用于生成專(zhuān)家系統(tǒng)的工具,稱(chēng)為生成工具;另一類(lèi)用于改善專(zhuān)家系統(tǒng)性能的工具,稱(chēng)為輔助工具。 (1)系統(tǒng)生成工具 系統(tǒng)生成工具主要幫助知識(shí)工程師構(gòu)造專(zhuān)家系統(tǒng)中的推理機(jī)和知識(shí)庫(kù)結(jié)構(gòu)。 2021-4-26 68 專(zhuān)家系統(tǒng)工具 程序設(shè)計(jì)語(yǔ)言 LISP PROLOG C PASCAL 骨架系統(tǒng) EMYCIN MYCIN 知識(shí)工程語(yǔ)言 OPS: Official Production System KEE: Knowledge Engineering Environment ROSIE: Rule-Oriented System for Implementing Expertise CLIPS: C Language Integrated Production System ART: Automatic Reasoning Tool 2021-4-26 69 專(zhuān)家系統(tǒng)工具 專(zhuān)家系統(tǒng)開(kāi)發(fā)環(huán)境 專(zhuān)家系統(tǒng)開(kāi)發(fā)環(huán)境是以一種或多種工具和方法為核心,加上與之配套的各種輔助工具和界面環(huán)境的完整的集成系統(tǒng)。 目前,有些知識(shí)工程語(yǔ)言系統(tǒng)已經(jīng)發(fā)展成這樣的集成系統(tǒng),集成系統(tǒng)中有一組預(yù)先定義的稱(chēng)為組件的程序模塊,每個(gè)組件實(shí)現(xiàn)一種人工智能技術(shù)。