邏輯智能體
- 邏輯智能體:基于知識的智能體
- 知識和推理的重要性
- 部分可觀察的環(huán)境
- 自然語言理解
- 基于知識的智能體的靈活性
Knowledge bases
- 知識庫是一組用形式化語言表述的陳述句,其中包含有系統(tǒng)需要了解的信息。
- 在構(gòu)建一個(gè)智能體時(shí),通常采用“告訴”和“詢問”的方式,即先將需要的知識加入知識庫中,然后智能體會(huì)通過查詢知識庫中的信息來得出答案。
- 智能體可以從知識層次上進(jìn)行觀察,即從它們所知道的知識來描述,而不考慮具體的實(shí)現(xiàn)細(xì)節(jié)。
- 也可以從實(shí)現(xiàn)層次上進(jìn)行觀察,即從知識庫的數(shù)據(jù)結(jié)構(gòu)和處理這些數(shù)據(jù)結(jié)構(gòu)的算法來描述。通過這種方式,智能體能夠有效地利用知識庫中的信息進(jìn)行推理和決策。
一個(gè)簡單的基于知識的智能體
如下是基于知識的Agent的程序輪廓。與其他Agent一樣,基于知識的Agent用感知信息作為輸入,返回一個(gè)行動(dòng)。Agent維護(hù)一個(gè)知識庫,KB,該知識庫在初始化時(shí)就包含了一些背景知識。
-
一個(gè)智能體(agent)必須具備的幾個(gè)關(guān)鍵能力。
- 智能體需要能夠表示狀態(tài)和行為,以便在環(huán)境中執(zhí)行任務(wù)。
- 此外,智能體需要能夠?qū)⑿碌母兄畔⒓{入到其內(nèi)部狀態(tài)中,并更新其對世界的狀態(tài)表示。
- 智能體還需要能夠推導(dǎo)關(guān)于世界的隱藏屬性,并基于這些推斷出合適的行為。
- 這些能力可以通過代表性方法來實(shí)現(xiàn),從而使智能體能夠在環(huán)境中自主地執(zhí)行任務(wù)。
一般邏輯
- 邏輯是一種用于表示信息以推斷出結(jié)論的形式語言。
- 語法定義了該語言中的句子,即如何構(gòu)建語句的規(guī)則。
- 而語義定義了句子的“含義”,即句子在世界中的真實(shí)性。
- 例如,算術(shù)語言中的x+2≥y是一個(gè)句子,而x2+y>不是一個(gè)句子。
- x+2≥y是真的,如果x+2的數(shù)值不小于y的數(shù)值。在x=7,y=1的世界中x+2≥y是真的,在x=0,y=6的世界中x+2≥y是假的。
- 這些知識與邏輯學(xué)中語法和語義的基本概念相關(guān)。同時(shí),這些概念在人工智能中也具有重要作用,尤其是在推理和決策系統(tǒng)中。
Entailment 蘊(yùn)涵
-
邏輯中的關(guān)鍵概念之一是蘊(yùn)涵,它指的是兩個(gè)命題之間的關(guān)系,其中一個(gè)命題邏輯上可以推導(dǎo)出另一個(gè)命題。也就是說,如果命題A蘊(yùn)涵命題B,則如果A為真,B也必須為真。例如,命題“所有人都會(huì)死亡”蘊(yùn)涵命題“蘇格拉底會(huì)死亡”,因?yàn)樘K格拉底是一個(gè)人。
-
蘊(yùn)涵表示一個(gè)語句邏輯上跟隨另一個(gè)語句而出現(xiàn),即如果一個(gè)語句A蘊(yùn)涵另一個(gè)語句B,那么當(dāng)A為真時(shí),B也必須為真。
-
這種蘊(yùn)涵關(guān)系可以用$KB |= α $來表示,其中KB是一個(gè)知識庫,sentence α是一個(gè)語句。
-
如果在KB為真的所有世界中, α也為真,則KB蘊(yùn)涵 α。
-
蘊(yùn)涵是基于語義的關(guān)系,因?yàn)樗谡Z句在不同世界中的真值。因此,語句的語法語義是蘊(yùn)涵關(guān)系的基礎(chǔ)。
-
如一個(gè)知識庫包含“巨人隊(duì)贏了”和“紅隊(duì)贏了”蘊(yùn)涵“要么巨人隊(duì)贏了,要么紅隊(duì)贏了”,以及x + y = 4蘊(yùn)涵4 = x + y。
Models模型
當(dāng)需要精確描述時(shí),用術(shù)語模型取代“可能世界"
- 首先,當(dāng)一個(gè)語句 α \alpha α 在一個(gè)模型 m m m 中為真時(shí),我們稱 m m m 是 α \alpha α 的一個(gè)模型。用語言表達(dá)就是“ m m m 是 α \alpha α 的一個(gè)模型”表示語句 α \alpha α 在模型 m m m 中為真。
- 其次, M ( α ) M(\alpha) M(α) 表示 α \alpha α 的所有模型的集合。
- 最后,當(dāng)且僅當(dāng)在知識庫 KB 為真的所有模型中 α \alpha α 為真時(shí),我們說 α \alpha α 在 KB 中是可滿足的。用語言表達(dá)就是“在 KB 為真的所有模型中 α \alpha α 為真”等價(jià)于“KB |= α \alpha α”。
- 例如,當(dāng)知識庫 KB 包含“Giants 贏了”和“Reds 贏了”時(shí),語句 α \alpha α = “Giants 贏了”在 KB 中是可滿足的。
蘊(yùn)涵與推理
命題邏輯
邏輯連接詞
兩個(gè)句子在邏輯上是等價(jià)的(邏輯等價(jià)):
枚舉推理
所有模型的深度優(yōu)先枚舉是合理和完整的
但是,對于n個(gè)符號,時(shí)間復(fù)雜度為
O
(
2
n
)
O(2^n)
O(2n),空間復(fù)雜度為
O
(
n
)
O(n)
O(n);問題是co-NP-complete的
有效性
可滿足性
推導(dǎo)和證明
- 證明方法主要有兩類:推理規(guī)則的應(yīng)用和模型檢查。
- 其中推理規(guī)則的應(yīng)用是通過合法的(sound)推理規(guī)則,從已知的句子中產(chǎn)生新的句子,通過應(yīng)用一系列推理規(guī)則來構(gòu)建證明。這個(gè)過程可以看作是在搜索空間中使用推理規(guī)則作為操作符的搜索過程。通常需要將句子轉(zhuǎn)換成正常形式,以便應(yīng)用推理規(guī)則。
- 另一種方法是模型檢查,即對于給定的句子,通過枚舉其所有可能的賦值,檢查是否存在一個(gè)模型使得該句子為真。這種方法包括真值表枚舉(在 n 中始終是指數(shù)級別的),改進(jìn)的回溯算法(如Davis-Putnam-Logemann-Loveland算法)和模型空間中的啟發(fā)式搜索(sound但不完備)。
霍恩子句
Forward chaining 前向鏈接
前向鏈接算法:
流程:
箭頭表示決定某個(gè)符號的符號,比如,A和B蘊(yùn)涵L,
- agenda為AB,count如圖所示
![]()
- 處理完A,對應(yīng)的count-1
![]()
- AB都為真且處理完畢,此時(shí)知道L為真,待處理
![]()
- 此時(shí)M計(jì)數(shù)為0,添加到agenda待處理
![]()
- 處理完畢后P再次變?yōu)?
![]()
- 最后處理Q
![]()
- 前向鏈接算法結(jié)束“:
![]()
- 對于霍恩子句構(gòu)成的知識庫,F(xiàn)orward chaining 是
- 可靠的:每個(gè)推理本質(zhì)上是分離規(guī)則的一個(gè)應(yīng)用
- 完備的:每個(gè)被蘊(yùn)涵的原子語句都將得以生成
Proof of completeness(完備性)
)
Backward chaining 反向鏈接
- 從目標(biāo)Q開始
![]()
- 試圖找到能令蘊(yùn)涵式P->Q為真的情況
![]()
- 同理繼續(xù)往回推,幾個(gè)步驟后得到這樣的情況:根據(jù)AB得到L為真
![]()
- 根據(jù)BL得到M為真
![]()
- 最后結(jié)果是相同的:
![]()
Resolution歸結(jié)
合取范式(CNF)
合取范式(CNF)是一個(gè)邏輯學(xué)術(shù)語,它表示為文字的析取式的合取式,其中每個(gè)文字都是一個(gè)變量或者它的否定形式,而每個(gè)合取項(xiàng)都是由一個(gè)或多個(gè)文字的析取組成的,這些合取項(xiàng)被稱為clauses。因此,CNF是由多個(gè)clause(子句)組成的合取式。
例如:
Resolution inference rule歸結(jié)推理規(guī)則 (for CNF):
其中l(wèi)i和mj是互補(bǔ)的文字,例如:
- 命題邏輯中歸結(jié)是可靠和完備的
CNF轉(zhuǎn)換
文章來源:http://www.zghlxwxcb.cn/news/detail-721275.html
舉例
文章來源地址http://www.zghlxwxcb.cn/news/detail-721275.html
小結(jié)
- 邏輯智能體應(yīng)用推理于知識庫,以推導(dǎo)新信息并作出決策。邏輯的基本概念包括:
- 語法:句子的形式結(jié)構(gòu)
- 語義:句子關(guān)于模型的真假性
- 蘊(yùn)涵:給定一個(gè)句子,另一個(gè)句子成立的必要條件
- 推理:從其他句子推導(dǎo)出新句子
- 可靠性:推導(dǎo)過程只產(chǎn)生蘊(yùn)涵的句子
- 完備性:推導(dǎo)可以產(chǎn)生所有蘊(yùn)涵的句子
- “Wumpus world”需要能夠表示部分和否定信息,通過情況進(jìn)行推理等能力。
- 前向鏈接和后向鏈接是線性時(shí)間的,并且對于霍恩子句具有完備性。
- 歸結(jié)對于命題邏輯具有完備性。
- 命題邏輯缺乏表達(dá)能力。
到了這里,關(guān)于【人工智能】— 邏輯Agent、一般邏輯、Entailment 蘊(yùn)涵、命題邏輯、前向鏈接、反向鏈接、Resolution歸結(jié)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!