人工智能:第二章 知识表示方法
第二章 知識表示方法
教學(xué)內(nèi)容:本章討論知識表示的各種方法,是人工智能課程三大內(nèi)容(知識表示、知識推理、知識應(yīng)用)之一,也是學(xué)習(xí)人工智能其他內(nèi)容的基礎(chǔ)。
教學(xué)重點:狀態(tài)空間法、問題歸約法、謂詞邏輯法、語義網(wǎng)絡(luò)法。
教學(xué)難點:狀態(tài)描述與狀態(tài)空間圖示、問題歸約機制、置換與合一。
教學(xué)方法:課堂教學(xué)為主,同時結(jié)合《離散數(shù)學(xué)》等已學(xué)的內(nèi)容實時提問、收集學(xué)生學(xué)習(xí)情況,充分利用網(wǎng)絡(luò)課程中的多媒體素材來表示抽象概念。
教學(xué)要求:重點掌握用狀態(tài)空間法、問題歸約法、謂詞演算法、語義網(wǎng)絡(luò)法來描述問題;解決問題;掌握幾種主要方法之間的差別;并對其它幾種表示方法有一般了解。
2.1 狀態(tài)空間法
教學(xué)內(nèi)容:本節(jié)是通過狀態(tài)空間法來求解問題,它是以狀態(tài)和算符(operator)為基礎(chǔ)來表示和求解問題的。
教學(xué)重點:問題的狀態(tài)描述,操作符。
教學(xué)難點:選擇一個好的狀態(tài)描述與狀態(tài)空間表示方案。
教學(xué)方法:以課堂教學(xué)為主;充分利用網(wǎng)絡(luò)課程中的多媒體素材來闡述抽象概念。
教學(xué)要求:重點掌握對某個問題的狀態(tài)空間描述,學(xué)會組織狀態(tài)空間圖,用搜索圖來求解問題。
2.1.1 問題狀態(tài)描述
1、狀態(tài)(State)的基本概念
狀態(tài)(state)是為描述某類不同事物間的差別而引入的一組最少變量q0,q1,…,qn的有序集合,其矢量形式如下:
Q=[q0,q1,…,qn]T (2.1)
式中每個元素qi(i=0,1,…,n)為集合的分量,稱為狀態(tài)變量。給定每個分量的一組值就得到一個具體的狀態(tài),如
Qk=[q0k,q1k,…,qnk]T (2.2)
算符:使問題從一種狀態(tài)變化為另一種狀態(tài)的手段稱為操作符或算符。操作符可為走步、過程、規(guī)則、數(shù)學(xué)算子、運算符號或邏輯符號等。
問題的狀態(tài)空間(state space)是一個表示該問題全部可能狀態(tài)及其關(guān)系的圖,它包含三種說明的集合,即所有可能的問題初始狀態(tài)集合S、操作符集合F以及目標(biāo)狀態(tài)集合G。因此,可把狀態(tài)空間記為三元狀態(tài)(S,F,G)。
提問: 1. 列舉已經(jīng)學(xué)習(xí)過的“狀態(tài)”概念,并比較之。2. 列舉算符。
舉例: 列舉幾個日常生活中狀態(tài)與算符的例子,如:棋局。
討論: 每走一步后,棋局都變化了,以此來理解問題的狀態(tài)空間。
2、狀態(tài)空間的表示法
對一個問題的狀態(tài)描述,必須確定3件事:
(1) 該狀態(tài)描述方式,特別是初始狀態(tài)描述;
(2) 操作符集合及其對狀態(tài)描述的作用;
(3) 目標(biāo)狀態(tài)描述的特性。
舉例:講解初始狀態(tài)、算符、中間狀態(tài)與目標(biāo)狀態(tài)之間的關(guān)系;講解三數(shù)碼難題的狀態(tài)變化過程。
2.1.2 狀態(tài)圖示法
圖的基本概念
圖由節(jié)點(不一定是有限的節(jié)點)的集合構(gòu)成。一對節(jié)點用弧線連接起來,從一個節(jié)點指向另一個節(jié)點。這種圖叫做有向圖(directed graph)。
某個節(jié)點序列(ni1,ni2,…,nik)當(dāng)j=2,3,…,k時,如果對于每一個ni,j-1都有一個后繼節(jié)點nij存在,那么就把這個節(jié)點序列叫做從節(jié)點ni1至節(jié)點nik的長度為k的路徑。
代價(cost) 是給各弧線指定數(shù)值以表示加在相應(yīng)算符上的代價。
圖的顯式說明 是指各節(jié)點及其具有代價的弧線由一張表明確給出。
圖的隱式說明 是指各節(jié)點及其具有代價的弧線不能由一張表明確給出。
提問:舉已經(jīng)學(xué)習(xí)過的“有向圖”、“路徑”及“代價”等的概念。
舉例:針對三數(shù)碼難題的狀態(tài)變化過程講解圖的幾個基本概念。
2.1.3 狀態(tài)空間表示舉例
1、產(chǎn)生式系統(tǒng)
一個產(chǎn)生式系統(tǒng)由下列3部分組成:
一個總數(shù)據(jù)庫(global database),它含有與具體任務(wù)有關(guān)的信息。
一套規(guī)則,它對數(shù)據(jù)庫進行操作運算。每條規(guī)則由左右兩部分組成,左部鑒別規(guī)則的適用性或先決條件,右部描述規(guī)則應(yīng)用時所完成的動作。應(yīng)用規(guī)則來改變數(shù)據(jù)庫。
一個控制策略,它確定應(yīng)該采用哪一條適用規(guī)則,而且當(dāng)數(shù)據(jù)庫的終止條件滿足時,就停止計算。
2、狀態(tài)空間表示舉例
猴子與香蕉的問題
狀態(tài)空間表示 用四元組(W,x,y,z)其中:W-猴子的水平位置;x-當(dāng)猴子在箱子頂上時取x=1;否則取x=0;Y-箱子的水平位置;z-當(dāng)猴子摘到香蕉時取z=1;否則取z=0。
算符
(1) goto(U)猴子走到水平位置U;
(2) pushbox(V)猴子把箱子推到水平位置V;
(3) climbbox猴子爬上箱頂;
(4) grasp猴子摘到香蕉。
求解過程 令初始狀態(tài)為(a,0,b,0)。這時,goto(U)是唯一適用的操作,并導(dǎo)致下一狀態(tài)(U,0,b,0)。現(xiàn)在有3個適用的操作,即goto(U),pushbox(V)和climbbox(若U=b)。把所有適用的操作 繼續(xù)應(yīng)用于每個狀態(tài),我們就能夠得到狀態(tài)空間圖,如圖所示。從圖不難看出,把該初始狀態(tài)變換為目標(biāo)狀態(tài)的操作序列為:
{goto(b),pushbox(c),climbbox,grasp}
舉例:針對多媒體上的猴子與香蕉問題的狀態(tài)空間圖,講解問題的狀態(tài)空間表示和產(chǎn)生式規(guī)則的應(yīng)用。
2.2 問題歸約法
教學(xué)內(nèi)容:知識表示的歸約法,即已知問題的描述,通過一系列變換把此問題最終變?yōu)橐粋€子問題集合;這些子問題的解可以直接得到,從而解決了初始問題的方法。
教學(xué)重點:問題歸約的基本思想,問題描述,問題變換的操作符,與或圖表示。
教學(xué)難點:如何把初始問題變換為子問題,與或圖表示方法。
教學(xué)方法:課堂教學(xué)為主,充分利用網(wǎng)絡(luò)課程中的相關(guān)多媒體素材來表示抽象概念。
教學(xué)要求:通過梵塔難題重點掌握問題歸約法的機理和問題歸約描述方法。學(xué)會用與或圖表示歸約問題。
2.2.1 問題歸約描述
1、問題歸約法的概念
已知問題的描述,通過一系列變換把此問題最終變?yōu)橐粋€子問題集合;這些子問題的解可以直接得到,從而解決了初始問題。
該方法也就是從目標(biāo)(要解決的問題)出發(fā)逆向推理,建立子問題以及子問題的子問題,直至最后把初始問題歸約為一個平凡的本原問題集合。這就是問題歸約的實質(zhì)。
2、問題歸約法的組成部分
(1)一個初始問題描述;
(2)一套把問題變換為子問題的操作符;
(3)一套本原問題描述。
3、示例:梵塔難題
問題 有3個柱子(1,2,3)和3個不同尺寸的圓盤(A,B,C)。在每個圓盤的中心有個孔,所以圓盤可以堆疊在柱子上。最初,全部3個圓盤都堆在柱子1上:最大的圓盤C在底部,最小的圓盤A在頂部。要求把所有圓盤都移到柱子3上,每次只許移動一個,而且只能先搬動柱子頂部的圓盤,還不許把尺寸較大的圓盤堆放在尺寸較小的圓盤上。
歸約過程
(1)移動圓盤A和B至柱子2的雙圓盤難題;
(2)移動圓盤C至柱子3的單圓盤難題;
(3)移動圓盤A和B至柱子3的雙圓盤難題。
由上可以看出簡化了難題每一個都比原始難題容易,所以問題都會變成易解的本原問題。
講述:梵塔問題的來源。
提問:一圓盤問題要走幾步?兩圓盤問題要走幾步?三個、四個...等?
4、歸約描述
問題歸約方法是應(yīng)用算符來把問題描述變換為子問題描述。
可以用狀態(tài)空間表示的三元組合(S、F、G)來規(guī)定與描述問題;對于梵塔問題,子問題[(111)→(122)],[(122)→(322)]以及[(322)→(333)]規(guī)定了最后解答路徑將要通過的腳踏石狀態(tài)(122)和(322)。
問題歸約方法可以應(yīng)用狀態(tài)、算符和目標(biāo)這些表示法來描述問題,這并不意味著問題歸約法和狀態(tài)空間法是一樣的。
2.2.2 與或圖表示
1、與或圖的概念
用一個類似圖的結(jié)構(gòu)來表示把問題歸約為后繼問題的替換集合,畫出歸約問題圖。
例如,設(shè)想問題A需要由求解問題B、C和D來決定,那么可以用一個與圖來表示;同樣,一個問題A或者由求解問題B、或者由求解問題C來決定,則可以用一個或圖來表示。
舉例:含有與圖與或圖的混合圖。
提問:對于一個與或圖如何引入附加節(jié)點,使得后繼問題的每個集合能夠聚集在它們各自的父輩節(jié)點之下。
2、與或圖的有關(guān)術(shù)語
父節(jié)點 是一個初始問題或是可分解為子問題的問題節(jié)點;
子節(jié)點 是一個初始問題或是子問題分解的子問題節(jié)點;
或節(jié)點 只要解決某個問題就可解決其父輩問題的節(jié)點集合;
與節(jié)點 只有解決所有子問題,才能解決其父輩問題的節(jié)點集合;
弧線 是父輩節(jié)點指向子節(jié)點的圓弧連線;
終葉節(jié)點 是對應(yīng)于原問題的本原節(jié)點。
舉例:對于一個與或圖。
提問:指出圖中的父節(jié)點、子節(jié)點、或節(jié)點、與節(jié)點、弧線和終葉節(jié)點。
3、與或圖的有關(guān)定義
可解節(jié)點 與或圖中一個可解節(jié)點的一般定義可以歸納如下:
(1) 終葉節(jié)點是可解節(jié)點(因為它們與本原問題相關(guān)連)。
(2) 如果某個非終葉節(jié)點含有或后繼節(jié)點,那么只有當(dāng)其后繼節(jié)點至少有一個是可解的時,此非終葉節(jié)點才是可解的。
(3) 如果某個非終葉節(jié)點含有與后繼節(jié)點,那么只要當(dāng)其后繼節(jié)點全部為可解時,此非終葉節(jié)點才是可解的。
舉例:對于一個與或圖。
提問:指出圖中的終葉節(jié)點、可解節(jié)點、不可解節(jié)點。
不可解節(jié)點 不可解節(jié)點的一般定義歸納于下:
(1) 沒有后裔的非終葉節(jié)點為不可解節(jié)點。
(2) 如果某個非終葉節(jié)點含有或后繼節(jié)點,那么只有當(dāng)其全部后裔為不可解時,此非終葉節(jié)點才是不可解的。
(3) 如果某個非終葉節(jié)點含有與后繼節(jié)點,那么只要當(dāng)其后裔至少有一個為不可解時,此非終葉節(jié)點才是不可解的。
舉例:對于三圓盤梵塔難題根據(jù)構(gòu)圖規(guī)則畫出其歸約圖。
提問:指出圖中的終葉節(jié)點、可解節(jié)點、不可解節(jié)點。
課后作業(yè):教材第二章習(xí)題2-2與2-5
4、與或圖構(gòu)圖規(guī)則
(1) 與或圖中的每個節(jié)點代表一個要解決的單一問題或問題集合。圖中所含起始節(jié)點對應(yīng)于原始問題。
(2) 對應(yīng)于本原問題的節(jié)點,叫做終葉節(jié)點,它沒有后裔。
(3)?對于把算符應(yīng)用于問題A的每種可能情況,都把問題變換為一個子問題集合;有向弧線自A指向后繼節(jié)點,表示所求得的子問題集合。
(4) 一般對于代表兩個或兩個以上子問題集合的每個節(jié)點,有向弧線從此節(jié)點指向此子問題集合中的各個節(jié)點。
(5) 在特殊情況下,當(dāng)只有一個算符可應(yīng)用于問題A,而且這個算符產(chǎn)生具有一個以上子問題的某個集合時,由上述規(guī)則3和規(guī)則4所產(chǎn)生的圖可以得到簡化。
?
2.3 謂詞邏輯法
教學(xué)內(nèi)容:本節(jié)主要講述問題的謂詞邏輯表示的基本方法。
教學(xué)重點:謂詞邏輯、謂詞公式、謂詞演算、置換與合一。
教學(xué)難點:如何選擇謂詞,問題的謂詞邏輯表示及運算。
教學(xué)方法:課堂教學(xué)為主,充分利用網(wǎng)絡(luò)課程中的示例程序。
教學(xué)要求:重點掌握謂詞邏輯表示的語言與方法,掌握謂詞公式的性質(zhì)及謂詞演算,學(xué)會謂詞公式的置換與合一,運用謂詞推理來解決問題。
2.3.1 謂詞演算
1、語法和語義
謂詞邏輯的基本組成部分是謂詞符號、變量符號、函數(shù)符號和常量符號,并用圓括弧、方括弧、花括弧和逗號隔開,以表示論域內(nèi)的關(guān)系。
原子公式是由若干謂詞符號和項組成,只有當(dāng)其對應(yīng)的語句在定義域內(nèi)為真時,才具有值T(真);而當(dāng)其對應(yīng)的語句在定義域內(nèi)為假時,該原子公式才具有值F(假)。
2、連詞和量詞
連詞有∧(與)、∨(或),全稱量詞(x),存在量詞(x)。
原子公式是謂詞演算的基本積木塊,運用連詞能夠組合多個原子公式以構(gòu)成比較復(fù)雜的合適公式。
3、幾個有關(guān)定義
用連詞∧把幾個公式連接起來而構(gòu)成的公式叫做合取,而此合取式的每個組成部分叫做合取項。一些合適公式所構(gòu)成的任一合取也是一個合適公式。
用連詞∨把幾個公式連接起來所構(gòu)成的公式叫做析取,而此析取式的每一組成部分叫做析取項。由一些合適公式所構(gòu)成的任一析取也是一個合適公式。
用連詞→連接兩個公式所構(gòu)成的公式叫做蘊涵。蘊涵的左式叫做前項,右式叫做后項。如果前項和后項都是合適公式,那么蘊涵也是合適公式。
前面具有符號~的公式叫做否定。一個合適公式的否定也是合適公式。
量化一個合適公式中的某個變量所得到的表達式也是合適公式。如果一個合適公式中某個變量是經(jīng)過量化的,就把這個變量叫做約束變量,否則就叫它為自由變量。在合適公式中,感興趣的主要是所有變量都是受約束的。這樣的合適公式叫做句子。
2.3.2 謂詞公式
1、謂詞合適公式的定義
在謂詞演算中合適公式的遞歸定義如下:
(1) 原子謂詞公式是合適公式。
(2) 若A為合適公式,則~A也是一個合適公式。
(3) 若A和B都是合適公式,則(A∧B),(A∨B),(A=>B)和(A←→B)也都是合適公式。
(4) 若A是合適公式,x為A中的自由變元,則(x)A和(x)A都是合適公式。
(5) 只有按上述規(guī)則(1)至(4)求得的那些公式,才是合適公式。
舉例:試把下列命題表示為謂詞公式:任何整數(shù)或者為正或者為負。
提問:指出此例題謂詞公式中的量詞、連詞及蘊涵符號。
2、合適公式的性質(zhì)
(1) 否定之否定
~(~P)等價于P
(2) P∨Q等價于~P→Q
(3) 狄·摩根定律
~(P∨Q)等價于~P∧~Q
~(P∧Q)等價于~P∨~Q
(4) 分配律
P∧(Q∨R)等價于(P∧Q)∨(P∧R)
P∨(Q∧R)等價于(P∨Q)∧(P∨R)
(5) 交換律
P∧Q等價于Q∧P
P∨Q等價于Q∨P
(6) 結(jié)合律
(P∧Q)∧R等價于P∧(Q∧R)
(P∨Q)∨R等價于P∨(Q∨R)
(7) 逆否律
P→Q等價于~Q→~P
此外,還可建立下列等價關(guān)系:
(8) ~(x)P(x)等價于(x)[~P(x)]
~(x)P(x)等價于(x)[~P(x)]
(9) (x)[P(x)∧Q(x)]等價于
(x)P(x)∧(x)Q(x)
(x)[P(x)∨Q(x)]等價于
(x)P(x)∨(x)Q(x)
(10) (x)P(x)等價于(y)P(y)
(x)P(x)等價于(y)P(y)
證明:否定之否定,~(~P)等價于P。
2.3.3 置換與合一
1、置換
假元推理,就是由合適公式W1和W1→W2產(chǎn)生合適公式W2的運算。
全稱化推理,是由合適公式(x)W(x)產(chǎn)生合適公式W(A),其中A為任意常量符號。
一個表達式的置換就是在該表達式中用置換項置換變量。
一般說來,置換是可結(jié)合的,但置換是不可交換的。
2、合一
尋找項對變量的置換,以使兩表達式一致,叫做合一(unification)。如果一個置換s作用于表達式集{Ei}的每個元素,則用{Ei}s來表示置換例的集。稱表達式集{Ei}是可合一的。如果存在一個置換s使得:E1s=E2s=E3s=…那么稱此s為{Ei}的合一者,因為s的作用是使集合{Ei}成為單一形式。
舉例:表達式P[x,f(y),B]的一個置換為s1={z/x,w/y},則:P[x,f(y),B]s1=P[z,f(w),B]
2.4 語義網(wǎng)絡(luò)法
教學(xué)內(nèi)容:本節(jié)主要講述知識的語義網(wǎng)絡(luò)表示法。
教學(xué)重點:語義網(wǎng)絡(luò)表示的詞法、結(jié)構(gòu)、過程、語義。
教學(xué)難點:如何選擇節(jié)點和弧線來構(gòu)成語義網(wǎng)絡(luò)。
教學(xué)方法:課堂教學(xué)。
教學(xué)要求:重點掌握語義網(wǎng)絡(luò)的結(jié)構(gòu),掌握二元語義網(wǎng)絡(luò)表示方法,了解語義網(wǎng)絡(luò)的特點。
2.4.1 二元語義網(wǎng)絡(luò)的表示
1、語義網(wǎng)絡(luò)的基本概念語義網(wǎng)絡(luò)是知識的一種結(jié)構(gòu)化圖解表示,它由節(jié)點和弧線或鏈線組成。節(jié)點用于表示實體、概念和情況等,弧線用于表示節(jié)點間的關(guān)系。
語義網(wǎng)絡(luò)表示由下列4個相關(guān)部分組成:
(1) 詞法部分 決定表示詞匯表中允許有哪些符號,它涉及各個節(jié)點和弧線。
(2) 結(jié)構(gòu)部分 敘述符號排列的約束條件,指定各弧線連接的節(jié)點對。
(3) 過程部分 說明訪問過程,這些過程能用來建立和修正描述,以及回答相關(guān)問題。
(4) 語義部分 確定與描述相關(guān)的(聯(lián)想)意義的方法即確定有關(guān)節(jié)點的排列及其占有物和對應(yīng)弧線。
語義網(wǎng)絡(luò)具有下列特點:
(1) 能把實體的結(jié)構(gòu)、屬性與實體間的因果關(guān)系顯式地和簡明地表達出來,與實體相關(guān)的事實、特征和關(guān)系可以通過相應(yīng)的節(jié)點弧線推導(dǎo)出來。
(2) 由于與概念相關(guān)的屬性和聯(lián)系被組織在一個相應(yīng)的節(jié)點中,因而使概念易于受訪和學(xué)習(xí)。
(3) 表現(xiàn)問題更加直觀,更易于理解,適于知識工程師與領(lǐng)域?qū)<覝贤ā?/span>
(4) 語義網(wǎng)絡(luò)結(jié)構(gòu)的語義解釋依賴于該結(jié)構(gòu)的推理過程而沒有結(jié)構(gòu)的約定,因而得到的推理不能保證像謂詞邏輯法那樣有效。
(5) 節(jié)點間的聯(lián)系可能是線狀、樹狀或網(wǎng)狀的,甚至是遞歸狀的結(jié)構(gòu),使相應(yīng)的知識存儲和檢索可能需要比較復(fù)雜的過程。
2、二元語義網(wǎng)絡(luò)的表示用兩個節(jié)點和一條弧線可以表示一個簡單的事實,對于表示占有關(guān)系的語義網(wǎng)絡(luò),是通過允許節(jié)點既可以表示一個物體或一組物體,也可以表示情況和動作。每一情況節(jié)點可以有一組向外的弧(事例弧),稱為事例框,用以說明與該事例有關(guān)的各種變量。
在選擇節(jié)點時,首先要弄清節(jié)點是用于表示基本的物體或概念的,或是用于多種目的的。否則,如果語義網(wǎng)絡(luò)只被用來表示一個特定的物體或概念,那么當(dāng)有更多的實例時就需要更多的語義網(wǎng)絡(luò)。
選擇語義基元就是試圖用一組基元來表示知識。這些基元描述基本知識,并以圖解表示的形式相互聯(lián)系。
舉例:用二元語義網(wǎng)絡(luò)表示:小燕是一只燕子,燕子是鳥;巢-1是小燕的巢,巢-1是巢中的一個。
2.4.2 多元語義網(wǎng)絡(luò)的表示
語義網(wǎng)絡(luò)是一種網(wǎng)絡(luò)結(jié)構(gòu)。節(jié)點之間以鏈相連。從本質(zhì)上講,接點之間的連接是二元關(guān)系。語義網(wǎng)絡(luò)從本質(zhì)上來說,只能表示二元關(guān)系,如果所要表示的事實是多元關(guān)系,則把這個多元關(guān)系轉(zhuǎn)化成一組二元關(guān)系的組合,或二元關(guān)系的合取。具體來說,多元關(guān)系R(X1,X2,…,Xn)總可以轉(zhuǎn)換成R1 (X11,X12)∧R2 (X21,X22)∧…∧Rn (Xn1,Xn2)。要在語義網(wǎng)絡(luò)中進行這種轉(zhuǎn)換需要引入附加節(jié)點。
舉例:用”Liming is a man”的語義網(wǎng)絡(luò)和謂詞邏輯表示說明謂詞邏輯與語義網(wǎng)絡(luò)的等效性。
?
2.4.3 連詞和量化的表示
可以用語義網(wǎng)絡(luò)表示謂詞邏輯法中的各種連詞及量化。
1.合取多元關(guān)系可以被轉(zhuǎn)換成一組二元關(guān)系的合取,從而可以用語義網(wǎng)絡(luò)的形式表示出來。
2.析取在語義網(wǎng)絡(luò)中,為與合取關(guān)系相區(qū)別,在析取關(guān)系的連接上加注析取界限,并標(biāo)記DIS。
3.否定采用~ISA和~PART OF關(guān)系或標(biāo)注NEG界限來表示否定。
4.蘊涵在語義網(wǎng)絡(luò)中可用標(biāo)注ANTE和CONSE界限來表示蘊涵關(guān)系。
5.量化存在量化在語義網(wǎng)絡(luò)中可直接用ISA鏈來表示。而全稱量化就要用分割方法來表示。
2.5 其他方法
教學(xué)內(nèi)容:簡介知識表示的其他三種表示方法,即框架表示法、劇本表示法和過程表示法,闡述了三種表示法的原理和應(yīng)用范圍。
教學(xué)重點:各方法的基本原理及基本結(jié)構(gòu)。
教學(xué)難點:各方法的推理過程。
教學(xué)方法:課堂教學(xué)為主。適當(dāng)提問,加深學(xué)生對概念的理解。
教學(xué)要求:初步了解三種方法的基本原理。
2.5.1 框架
1、框架的構(gòu)成
框架通常由描述事物的各個方面的槽組成,每個槽可以擁有若干個側(cè)面,而每個側(cè)面又可以擁有若干個值。一個框架的一般結(jié)構(gòu)如下: 〈框架名〉
〈槽1〉〈側(cè)面11〉〈值111〉…
〈側(cè)面12〉〈值121〉…
…
〈槽2〉〈側(cè)面21〉〈值211〉…
…
…
〈槽n〉〈側(cè)面n1〉〈值n11〉…
…
〈側(cè)面nm〉〈值nm1〉…
較簡單的情景是用框架來表示諸如人和房子等事物。例如,一個人可以用其職業(yè)、身高和體重等項描述,因而可以用這些項目組成框架的槽。當(dāng)描述一個具體的人時,再用這些項目的具體值填入到相應(yīng)的槽中。表2.2給出的是描述John的框架。
表2.2 簡單框架示例
| JOHN | ? | ? |
| Isa | : | PERSON |
| Profession | : | PROGRAMMER |
| Height | : | 1.8m |
| Weight | : | 79kg |
框架是一種通用的知識表達形式,對于如何運用框架系統(tǒng)還沒有一種統(tǒng)一的形式,常常由各種問題的不同需要來決定。
2、框架的推理
如前所述,框架是一種復(fù)雜結(jié)構(gòu)的語義網(wǎng)絡(luò)。因此語義網(wǎng)絡(luò)推理中的匹配和特性繼承在框架系統(tǒng)中也可以實行。除此以外,由于框架用于描述具有固定格式的事物、動作和事件,因此可以在新的情況下,推論出未被觀察到的事實。框架用以下幾種途徑來幫助實現(xiàn)這一點:
(1) 框架包含它所描述的情況或物體的多方面的信息。(2) 框架包含物體必須具有的屬性。在填充框架的各個槽時,要用到這些屬性。
(3) 框架描述它們所代表的概念的典型事例。
用一個框架來具體體現(xiàn)一個特定情況的過程,經(jīng)常不是很順利的。但當(dāng)這個過程碰到障礙時,經(jīng)常不必放棄原來的努力去從頭開始,而是有很多辦法可想的:
(1) 選擇和當(dāng)前情況相對應(yīng)的當(dāng)前的框架片斷,并把這個框架片斷和候補框架相匹配。選擇最佳匹配。
(2) 盡管當(dāng)前的框架和要描述的情況之間有不相匹配的地方,但是仍然可以繼續(xù)應(yīng)用這個框架。
(3) 查詢框架之間專門保存的鏈,以提出應(yīng)朝哪個方向進行試探的建議。
(4) 沿著框架系統(tǒng)排列的層次結(jié)構(gòu)向上移動(即從狗框架→哺乳動物框架→動物框架),直到找到一個足夠通用,并不與已有事實矛盾的框架。
2.5.2 劇本
劇本是框架的一種特殊形式,它用一組槽來描述某些事件的發(fā)生序列,就像劇本中的事件序列一樣,故稱為“劇本”或腳本。
一個劇本一般由以下各部分組成:
(1) 開場條件 給出在劇本中描述的事件發(fā)生的前提條件。
(2) 角色 用來表示在劇本所描述的事件中可能出現(xiàn)的有關(guān)人物的一些槽。
(3) 道具 這是用來表示在劇本所描述的事件中可能出現(xiàn)的有關(guān)物體的一些槽。
(4) 場景 描述事件發(fā)生的真實順序,可以由多個場景組成,每個場景又可以是其它的劇本。
(5) 結(jié)果 給出在劇本所描述的事件發(fā)生以后通常所產(chǎn)生的結(jié)果。
例子:以餐廳劇本為例說明劇本各個部分的組成。
根據(jù)劇本的重要性,可以有二種準(zhǔn)備劇本的方法。
(1) 對于不屬于事件核心部分的劇本,只需設(shè)置指向該劇本的指針即可,以便當(dāng)它成為核心時啟用。
(2) 對于符合事件核心部分的劇本,則應(yīng)使用在當(dāng)前事件中涉及到的具體對象和人物去填寫劇本的槽。劇本的前提、道具、角色和事件等常能起到啟用劇本的指示器的作用。
一旦劇本被啟用,則可以應(yīng)用它來進行推理。其中最重要的是運用劇本可以預(yù)測沒有明顯提及的事件的發(fā)生。
劇本結(jié)構(gòu),比起框架這樣的一些通用結(jié)構(gòu)來,要呆板得多,知識表達的范圍也很窄,因此不適用于表達各種知識,但對于表達預(yù)先構(gòu)思好的特定知識,如理解故事情節(jié)等,是非常有效的。
2.5.3 過程
語義網(wǎng)絡(luò)、框架和劇本等知識表示方法,均是對知識和事實的一種靜止的表達方法,是知識的一種顯式表達形式。而對于如何使用這些知識,則通過控制策略來決定。
和知識的陳述式表示相對應(yīng)的是知識的過程式表示。所謂過程式表示就是將有關(guān)某一問題領(lǐng)域的知識,連同如何使用這些知識的方法,均隱式地表達為一個求解問題的過程。它所給出的是事物的一些客觀規(guī)律,表達的是如何求解問題。知識的描述形式就是程序,所有信息均隱含在程序之中。從程序求解問題的效率上來說,過程式表達要比陳述式表達高得多。但因其知識均隱含在程序中,因而難于添加新知識和擴充功能,適用范圍較窄。
?
2.6 小 結(jié)
知識表示方法很多,本章介紹了其中的7種,有圖示法和公式法,結(jié)構(gòu)化方法,陳述式表示和過程式表示等。
狀態(tài)空間法是一種基于解答空間的問題表示和求解方法,它是以狀態(tài)和操作符為基礎(chǔ)的。在利用狀態(tài)空間圖表示時,從某個初始狀態(tài)開始,每次加一個操作符,遞增地建立起操作符的試驗序列,直到達到目標(biāo)狀態(tài)為止。由于狀態(tài)空間法需要擴展過多的節(jié)點,容易出現(xiàn)“組合爆炸”,因而只適用于表示比較簡單的問題。
問題歸約法從目標(biāo)(要解決的問題)出發(fā),逆向推理,通過一系列變換把初始問題變換為子問題集合和子子問題集合,直至最后歸約為一個平凡的本原問題集合。這些本原問題的解可以直接得到從而解決了初始問題,用與或圖來有效地說明問題歸約法的求解途徑。問題歸約法能夠比狀態(tài)空間法更有效地表示問題。狀態(tài)空間法是問題歸約法的一種特例。在問題歸約法的與或圖中,包含有與節(jié)點和或節(jié)點,而在狀態(tài)空間法中只含有或節(jié)點。
謂詞邏輯法采用謂詞合適公式和一階謂詞演算把要解決的問題變?yōu)橐粋€有待證明的問題,然后采用消解定理和消解反演來證明一個新語句是從已知的正確語句導(dǎo)出的,從而證明這個新語句也是正確的。謂詞邏輯是一種形式語言,能夠把數(shù)學(xué)中的邏輯論證符號化。謂詞邏輯法常與其它表示方法混合使用,靈活方便,可以表示比較復(fù)雜的問題。
語義網(wǎng)絡(luò)是一種結(jié)構(gòu)化表示方法,它由節(jié)點和弧線或鏈線組成。節(jié)點用于表示物體、概念和狀態(tài),弧線用于表示節(jié)點間的關(guān)系。語義網(wǎng)絡(luò)的解答是一個經(jīng)過推理和匹配而得到的具有明確結(jié)果的新的語義網(wǎng)絡(luò)。語義網(wǎng)絡(luò)可用于表示多元關(guān)系,擴展后可以表示更復(fù)雜的問題。
框架是一種結(jié)構(gòu)化表示方法。框架通常由指定事物各個方面的槽組成,每個槽擁有若干個側(cè)面,而每個側(cè)面又可擁有若干個值。大多數(shù)實用系統(tǒng)必須同時使用許多框架,并可把它們聯(lián)成一個框架系統(tǒng)。框架表示已獲廣泛應(yīng)用,然而并非所有問題都可以用框架表示。
劇本是框架的一種特殊形式,它使用一組槽來描述事件的發(fā)生序列。劇本表示特別適用于描述順序性動作或事件,但使用不如框架靈活,因此應(yīng)用范圍也不如框架那么廣泛。
過程是一種知識的過程式表示,它將某一有關(guān)問題領(lǐng)域知識同這些使用方法一起,隱式地表示為一個問題求解過程。過程表示用程序來描述問題,具有很高的問題求解效率。由于知識隱含在程序中難以操作,所以適用范圍較窄。
在表示和求解比較復(fù)雜的問題時,采用單一的知識表示方法是遠遠不夠的。往往必須采用多種方法混合表示。例如,綜合采用框架、語義網(wǎng)絡(luò)、謂詞邏輯的過程表示方法(兩種以上),可使所研究的問題獲得更有效的解決。
此外,在選擇知識表示方法時,還要考慮所使用的程序設(shè)計語言所提供的功能和特點,以便能夠更好地描述這些表示方法。
from:http://netclass.csu.edu.cn/jpkc2003/rengongzhineng/rengongzhineng/jiaoan/chapter2.htm
總結(jié)
以上是生活随笔為你收集整理的人工智能:第二章 知识表示方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人工智能:第一章 绪 论
- 下一篇: 人工智能:第四章 计算智能(1)