簡介
規則依存模型,也可以稱作規則依賴模型,屬於一種
推理規則方式,是指
專家系統或
決策支持系統推理獲得的知識基於或依賴系統已存在的規則庫和推理機制。規則庫(Rule Base)是指一個用規則來表達的知識集,包括執行推理所需要的知識。依賴關係表示兩個活動 (前導活動和後續活動)中一個活動的變更將會影響到另一個活動的關係。
規則
在現實生活中,規則無處不在。我們最長接觸的是法律、法規和各種制度;對於企業級套用來說,第一步的業務調研中很重要的內容就是了解業務規則。在企業流程再造中,可能還會接觸到流程規則。
在IT技術領域,很多地方也套用了規則,比如路由表,
防火牆策略,乃至角色許可權控制(RBAC),或者Web框架中的URL匹配。不管是哪種種規則,都規定了一組確定的條件和此條件所產生的結果。規則由條件和動作組成,格式一般為:
IF 條件
Then 動作
每條規則都是一組條件決定的一系列結果
一條規則可能與其他規則共同決定最終結果。
可能存在條件互相交叉的規則,此時有必要規定規則的優先權。
規則作為一種知識,其典型運用就是通過實際情況,根據給定的一組規則,得出結論。這個結論可能是某種靜態的結果,也可能是需要進行的一組操作。這種規則的運用過程叫做推理。如果由程式來處理推理過程,那么這個程式就叫做推理機/推理引擎(Inference Engine)。推理機是專家系統(專家系統是人工智慧的一個分支)的核心模組。
知識表達
知識是人類對客觀世界的認識,是人們經過時間得到客觀世界規律性的東西,是經過人們篩選,加工改造而形成的。知識用來解決問題,指導思考、行為和交流。知識是人類的寶貴財富。知識是專家系統的重要組成部分,知識庫是推理的依據,它的質量將決定系統的推理結果。知識需要轉化成機器能夠識別的形式,即知識的表示問題。由於知識庫在專家系統中的重要性,知識的表示問題成為重要的研究內容。所謂知識的表示是指知識用符號表示或進行形式轉化的過程。知識的表示往往和知識的運用相結合,不僅考慮存儲,還要考慮使用,以達到知識運用的最佳性能。知識的表示是用某種數據結構描述知識,該結構可代表知識本身。好的知識應具有以下特徵:
可擴充性:知識庫應具備足夠的靈活性,知識是隨著時間不斷完善的,並不是一開始就一成不變的。因此知識的存放和讀取應該是松耦合的,這使得不需要對推理機制進行修改就能對現有的知識庫進行補充,即要求知識的表示模式與依據知識推理的推理機相互獨立,專家系統通過把知識庫與推理機分離來提高靈活性;另一方面,在初期不能為專家系統建立一個領域知識完備的知識庫,通過在現有的知識庫的基礎上,不斷添加、修改、刪除來擴充和完備知識庫。
明確性:對知識的表示應當明確,並且是對知識的完整表示,以方便對知識庫中的知識進行檢查,提高求解效率。
清晰性:專家系統的推理機是根據知識進行推理,並需匹配求解過程中的知識,知識的清晰度將直接影響推理的效率和正確性。知識的清晰性可增強知識庫的正確性和一致性。
可理解性:知識只有被理解以後才能使用,可理解性差的知識難於表示,並且在推理過程中容易產生錯誤或衝突。
方便性:是指用一種程式語言或開發工具實現時方便表示。
推理方向
推理方向分為正向推理、反向推理和混合推理。
正向推理
正向推理就是從初始事實出發、推出新的事實,根據推出的事實推出另外的事實,它是由已知事實推理直到推出需要的事實。因此這是一種正向的推理方式。正向推理的基本過程是:首先由用戶輸入初始事實,然後推理機從知識庫尋找事實和前提條件匹配的規則,並根據規則得出結論或產生新的事實,將產生的新事實併入到已有的事實中,並在此根據新的事實集合推理。這個過程一直進行到得出所需的事實或無法再產生新的事實。算法描述:
(1)把用戶提供的初始證據放入綜合資料庫;
(2)查看綜合資料庫中是否含有所需的事實,如果有,則推理結束,並成功退出;否則執行下一步;
(3)根據已有的事實匹配知識庫中的規則的前提條件,如果沒有匹配的則轉(5),如果有匹配的,則把匹配的所有規則形成匹配的規則集,執行下一步;
4)從當前的匹配規則集中以某種方式選出一條最適合的規則進行推理,然後將產生的新的事實併入到已有的事實中,並轉至(2);
(5)向用戶徵求是否有可用的新的事實,如果有,把用戶輸入的新的事實加入到綜合資料庫中,然後轉至(2);否則表示推不出問題的解,失敗退出。
反向推理
反向推理是從所需的事實出發尋找支持該事實的規則,並尋找支持該事實的更多事實,直到初始事實滿足為止,這種從結論出發尋找支持該結論的事實推理稱為反向推理。
反向推理的的基本過程是首先由用戶輸入所需要的的事實,這些事實構成一個集合,然後推理機從知識庫中匹配支持該事實的規則,如果有匹配的規則,則將產生的事實放入綜合資料庫中,如果所需證明的事實所有證據能夠找到,則說明原假設成立;否則繼續這個過程,這個過程一直進行到得出結論或找不到新的事實。反向推理的優點是不必搜尋和匹配那些與假定目標無關的規則,推理過程目標明確,也還有利於向用戶提供解釋。反向推理缺點是系統推理的盲目性比較大,推理效率低。
混合推理方式
正向推理的主要缺點是推理盲目、效率低,在推理過程中會產生許多與求解無關的事實。反向推理的缺點是目標選擇不符合實際,特別是初始目標的選擇。混合推理則是結合了前兩種推理方式各自長處的有效方法。其基本過程為:先通過正向推理確定一個事實作為初始事實,然後從初始事實推出新的事實,從中確定一個目標,再反向證明該目標,反向證明中會得出更多事實,把這些事實加入綜合資料庫,再利用正向推理進行推理,這個過程反覆進行,直至無法推出新的事實或找到解。
推理規則
在
邏輯中,特別是數理邏輯中,推理規則(推論規則)是構造有效推論的方案。這些方案建立在一組叫做前提的公式和叫做結論的斷言之間的語法關係。這些語法關係用於推理過程中,新的真的斷言從其他已知的斷言得出。規則也適用於非形式邏輯和邏輯論證,但是形式化更加困難和有爭議。
按照規定,推理規則的套用純粹是語法過程。儘管如此它必須是有效的,或者更精確地說保持有效性。為了使保持有效性的要求有意義,某種形式的語義與推理規則有關和推理規則自身的斷言是必需的。即正確的推理形式。在形式邏輯學中研究推理時,往往只研究推理形式,而不研究推理的具體內容。推理形式實質上是對有具體內容的推理的一種抽象。推理形式有正確的,也有不正確的。正確的推理形式是在假設前提為真時其結論必真的推理形式。
命題邏輯中推理規則的顯著例子是肯定前件和否定後件規則。對於一階謂詞邏輯,推理規則需要處理邏輯量詞。對這種論證的更詳細的描述請參見有效性。在一階謂詞邏輯中把所有推理規則作為一個單一規則來統一處理請參見一階歸結。
注意有很多不同的形式邏輯系統,每個都帶有合式公式、推理規則和語義的自己的集合。參見時間邏輯、模態邏輯或直覺邏輯的實例。量子邏輯也是一種不同尋常形式的邏輯。在謂詞演算中,需要一個補充的推理規則。它叫做普遍化。