|
|
這14條法則統稱為法則庫,當我們想造一個合文法的句子時,首先我們會運用第一條法則,接著根據箭頭右邊 的元件再運用其他相關的法則,直到組成一個完整的句子為止,以下即是其中的一種步驟:
編號 | 法則 | 結果 |
S | ||
(1) | S → NP+VP | NP VP |
(2) | NP → Det Adj Noun | Det Adj Noun VP |
(7) | Det → the | The Adj Noun VP |
(13) | Adj → hesitant | The hesitant Noun VP |
(8) | Noun → cat | The hesitant cat VP |
(6) | VP → Verb NP | The hesitant cat Verb NP |
(11) | Verb → swam | The hesitant cat swam NP |
(3) | NP → Det Noun | The hesitant cat swam Det Noun |
(7) | Det → the | The hesitant cat swam the Noun |
(9) | Noun → river | The hesitant cat swam the river |
包括法則與事實兩部份:
•事實
關於物件之性質、關係、命題....等屬性的宣告,與法則命令式的型態相反,事實通
常是靜態、被動的。
•法則
由【前提--動作】,【條件--結論】或【前因--結果】配對組成,例如
if | P1 & P2 .... & Pn |
then | Q1 & Q2 .... & Qm |
• | 定義系統狀態改變的分解動作,包含簡化系統審核與解釋的狀態。 |
• | 藉由表示邏輯關係與定義宣告的型式,模擬歸納與推理的動作。 |
• | 藉由關聯訊號資料與高階類別來模擬主觀的感知。 |
• | 使用條件式法則來表示經驗性知識的方式來模擬決策決定。 |
包括法則挑選器與法則解譯器及現有事實等三部份。推理機簡單地說是一種【識別--
動作】的循環,包括下列順序步驟:
1. | 核對法則前提之元件與工作記憶體中的元素 |
2. | 若有兩條以上的法則符合,則由法則挑選器決定應該使用那一條【此稱為衝突之解決】 |
3. | 由法則解譯器執行該選定之法則,也許是增加或刪除工作記憶體裡的元件,然後回到步驟1 |
refractoriness | 每條法則不能被同樣的資料驅動超過一次,作法是將【instantiation】中先前已執行過的 部分區別開來 |
recency | 工作記憶體中的元素通常附有一個時間標籤,以致於可以辨別某項資料是在那一次循環中被加進中 作記憶體的,這種策略是將【instantiation】以參與核對資料的先後排序,因此,使用越新資料的法則將優 先被採用 |
specificity | 【instantiation】中較特殊的法則,也就是條件較多較難計算的法則要比一般性法則優先採 用 |
法則 | 結果 |
The chilly bird flew south | |
Det ← the | Det chilly bird flew south |
Adj ← chilly | Det Adj bird flew south |
Noun ← bird | Det Adj Noun flew south |
Verb ← flew | Det Adj Noun Verb south |
Noun ← south | Det Adj Noun Verb Noun |
Np ← Det Adj Noun | Np Verb Noun |
VP ← Verb Noun | NP VP |
S ← NP VP | S |
前向鏈結的問題通常在初始狀態時有大量的資料,然而並沒有單一或最佳的目標狀態
,也就是說只有一組目標需要遵守束制條件而已,前向鏈結的過程中,每一步所面臨
的問題是【下一步該如何走才能更接近目標狀態】,排程問題通常可用前向鏈結法:
某排程任務可開始於要排定的事件或物件與其束制條件,最後的程序則由滿足該條件
的經驗法則產生。
後向鏈結的問題則是始於一項假設或一個目標,然後由該項結論導演出次一層的事實
或證據,後向鏈結每一步所要問的問題是【為使現行狀態為真,什麼必定為真?】。
後向鏈結的問題常常是答案已知或現有狀態明顯可歸類於某一目標狀態,診斷型問題
即屬之。
決定該用前向鏈結還是後向鏈結作為推理策略要看問題的初始及目標狀態,如果要加以合成
而為答案的初始狀態包含很多事實,則前向鏈結較為合適,若對於必須加以解析以在
資料庫中找到能夠支持的現行狀態存有一詳盡的描述,則後向鏈結較佳。而有些問題
則需要兩者的合併使用,即是前後向混合式鏈結,通常應用在較複雜的大型問題,較
為少見。
A表得麻瘋病,P(A)則為得麻瘋病的機率 |
B表發生全身抖動的症狀,P(B)則為全身抖動的機率 |
則P(A|B)表示:當發生全身抖動的症狀時,判定為麻瘋病的機率 |
•Introduction to Expert Systems |
Jackson , Peter,1984 |
•Rule-based Programming with OPS% |
Thomas Cooper,Nancy Wogrin,1988 |
•Knowledge-based System:Fundamental and Tools |
Oscar N.Garcia , Yi-Tzuu Chien , 1992 |
•Rule-based System |
Frederick Hayes-Roth |
•Expert System:Principles and Programming |
Giarratano,Riley , 1989 |