單調:傳統的邏輯系統實際上作的是 單調推理,加進系統的新知識(信念)必須與已有的知識(信念)相一致,不引起矛盾。所以,隨著運行時間的推移,系統內含的知識有增無減,這就是所謂的單調性。單調性的優點在于:
(1)加入新命題時不需審查與系統原有知識的相容性,因為這些新命題只能是已有知識的邏輯推理結果,不可能引起矛盾。換言之,加入的新命題必定是永真的。
(2)不需要記憶推導過程。因為推導的結論永遠不會失敗,不存在事后審查推導過程的需求問題。
這兩點使定理證明技術能簡單而有效地應用。但眾所周知,真實世界充斥了不完全信息和不斷變化的狀況,在解決復雜問題的過程中,也要求不斷應用并不保證正確的假設。即使對于一個較簡單的問題求解任務,也常常難以找到一組一致性的邏輯公式來表示,就是找到,也不能保證在變化的世界中保持一致性。所以,放寬傳統邏輯系統的限制到允許包含假設是必要的。假設可作為推理的依據,但在推理過程中,隨著新事物的出現,可能到頭來會發現原先所作的假設不正確,應予刪除,從而造成推理的非單調性;即新知識(事實)的加入會引起已有知識(假設以及基于假設的推理結果)的刪除。由此,傳統的定理證明和邏輯演繹技術就不再適用,必須開拓面向非單調推理的概念、方法和技術。
非單調:很少有這樣完美的信息系統,在處理過程中擁有所需的一切信息。在缺乏信息時,一個有效的作法就是根據已有信息和經驗作有益的猜測,只要不發現反面的證據。構造這些猜測的過程稱為缺省推理。例如,在美國第一次應邀去朋友家作客,應帶禮物,但不了解朋友喜歡什么樣的禮物,這時可以根據常識進行猜測,如:鮮花總是受歡迎的。實踐證明,根據常識行事往往正確。但常識不等于真理,有可能在某些特殊情況下出錯,盡管可能性較小。例如當你帶著鮮花到朋友家,可能發現主人由于對花過敏,見了直打噴嚏,顯然這時常識出了錯,若你帶著備用禮品的話,就應立即改送備用禮品。
上述例子屬于一種常見的缺省推理。最有可能的選擇。意指,若已知在一組可選事物中必有一個為真,則在缺乏完全信息的情況下,應該選擇最有可能的一個。如因為大多數人喜歡花,所以會朋友一般首選送花。另一種重要類型的缺省推理是限制(Circumscription),其將滿足某特性的對象,限制為僅是從基本信念可以推導出滿足的那些對象。例如,設想當前的任務是劃船渡河,許多不利的條件:缺少船槳、船漏、船擱淺在泥沙中等,都會阻止劃船渡河的成功。如果我們仔細考慮實際上幾乎不可能發生的所有不利因素和其解決辦法,豈不是杞人憂天,永遠也不能實施劃船渡河?正確的做法是只須考慮實際上明顯存在的不利條件即可,其余的只當不存在。只有這樣,我們才可能快速決定是否利用船和怎樣利用船。例如,我們發現船漏,但不嚴重,就會決定采用一定的措施堵漏,并立即用其渡河。總之,限制推理把應考慮的因素限制在易于清晰證明的范圍內。在上例中,沒有直接的證據指示船不能用,就可視為船可用。
讓我們來觀察缺省推理的一個精確的形式定義。
設:
x--某個信念(可表示為一階邏輯語句),
y--x為假時才為真的某結論;
則可以將缺省推理定義為以下三種:
定義1:若不知道存在x,則有結論y;
定義2:若不能證明x,則有結論y;
定義3:若不能在某個給定的時間期限內證明x,則有結論y。
這三個定義匯總起來意指:若無x為真的跡象,則認為y是真。注意,這三個定義一個比一個更放松其適用范圍。從計算機實現的角度,所謂知道意指信念x顯式存儲于知識庫(信念數據庫);這太狹義了,因為知識庫只存儲世界描述的極小部分,其余必須從已知部分推出。第二個定義將適用范圍放松到x能否被證明;遺憾的是,x能否被證明并不是邏輯系統保證可判定的。為了防止證明無休止地進行下去,第三個定義給證明花費的時間規定了允許的期限。
需要非單調推理的理由可以歸納為以下三個方面:
(1)不完全信息的出現要求缺省推理。正如上面所述,缺省推理是非單調推理的典型表現。
(2)一個不斷變化的世界必須用變化的知識庫加以描述。世界是不斷變化的,即使能獲得關于問題求解的全部知識,也不能持久;當然變化僅涉及局部事物,其它的不變,這就是所謂的框架問題(Frame Problem)。解決的辦法是取消那些已經變得不精確的知識,代之以另一些更精確的知識。這就是說,在增加邏輯語句到知識庫的同時也刪除原有的語句,從而導致非單調推理。
(3)產生一個問題的完全解答或許要求關于部分解答的暫時性假設。有些問題求解系統雖然不存在上述兩方面問題,但為了促進求解,往往也需要加進一些假設作為試探性的部分解答。這些假設可能不正確,需要在以后發現時加以修改或刪除,從而形成非單調推理。
作為第三類需求的例子,讓我們來觀察一個為三個忙人安排會議時間的問題求解任務。解決此問題十分簡單,可以先假設會議在某個具體日期舉行,比如星期三,并將此假設作為部分解答存儲于知識庫;然后再查這一天三人是否有相容的會議參與時間,若出現沖突,則取消此假設,改用另一天作為假設的會議日期,這顯然是一個非單調推理,可用帶回溯的樹搜索來處理(圖7.2)。整個搜索過程可視為一個約束滿足問題求解,需要滿足的約束有兩個:會議舉行時三個忙人都有空,會議舉行時具有可用的會議室。問題的求解可從決定會議舉行日期開始,由于不存在某天最好的理由,可隨機決定星期三。然后檢查前一個約束能否滿足,結果發現三個忙人每天下午兩點均有時間參加會議。再檢查后一個約束能否滿足,不巧得很,星期三下午兩點無會議室可供使用。由此,推理失敗,回溯到選日期的決策點,并撤消星期三舉行會議的假設和部分解答下午兩點有時間。繼而作新假設會議于星期二舉行,再重新推理,結果成功。