歡迎來到專家系統的世界!

在本章中,我們將一起探索專家系統 (Expert Systems)。試想像你有一個朋友,他對汽車引擎的所有知識瞭如指掌;或者想像有一位醫生,他讀過所有曾出版的醫學教科書,且從未遺漏任何細節。專家系統正是如此——它是一個電腦程式,設計目標是模仿人類專家,以解決複雜的問題。

如果這聽起來有點像科幻小說,別擔心!讀完這些筆記後,你會發現它們其實只是幫助人類做出更好決策的邏輯工具。讓我們開始吧!

1. 什麼是專家系統?

專家系統是一種利用人工智慧 (AI) 的軟件,用於模擬在特定領域擁有專業知識和經驗的人類或組織的判斷力與行為。

比喻:你可以把專家系統想像成一位「數位顧問」。你提供有關情況的事實,它會運用其「大腦」(軟件)來為你提供建議或解決方案。

2. 專家系統的組成部分

為了正確運作,專家系統需要多個部分協同工作。你可以將這些部分想像成人類專家大腦的不同功能區域。

用戶介面 (User Interface)

這是用戶與系統互動的方式。通常是一個顯示螢幕,系統會在螢幕上提出問題(例如:「病患是否有發燒?」),而用戶則輸入答案。

知識庫 (Knowledge Base)

這是系統的「圖書館」,包含兩項內容:
1. 事實 (Facts):關於該主題的基本事實(例如:「水在 100°C 下沸騰」)。
2. 規則庫 (Rules Base):一組 IF...THEN(如果……那麼……)結構(例如:「IF 引擎無法啟動 AND 車燈昏暗,THEN 電池很可能沒電了」)。

推理引擎 (Inference Engine)

這是負責思考的「引擎」或「大腦」。它會查看用戶提供的資訊,並在知識庫中透過規則庫進行搜尋與比對。它將用戶的回答與規則連結起來,從而得出結論。

解釋系統 (Explanation System)

人類專家可以解釋他們 為什麼 給出某個建議。解釋系統也能做到這一點。它會向用戶展示它得出結論所使用的邏輯,這有助於建立對系統的信任。

知識庫編輯器 (Knowledge Base Editor)

知識會隨著時間而改變(例如,新藥物的發明)。知識庫編輯器允許人類專家更新系統中的事實和規則,而無需重新編寫整個程式。

快速回顧:
用戶介面:螢幕/輸入方式。
知識庫:事實與規則。
推理引擎:邏輯/思考部分。
解釋系統:告訴你「為什麼」。
知識庫編輯器:用於更新資訊。

3. 現實世界中的應用場景

專家系統並非萬能,它們僅用於特定的高風險任務。以下是你考試中需要了解的常見應用:

醫療診斷:根據症狀協助醫生識別疾病。
汽車引擎故障診斷:協助技工找出汽車運作異常的原因。
礦產勘探:分析土壤和岩石數據,預測地下黃金或石油的可能藏匿點。
投資分析:預測哪些股票或債券能帶來最高收益。
財務規劃:協助人們規劃退休儲蓄。
保險規劃:針對客戶的特定風險,確定最合適的保險方案。
貨運車輛路線調度:為物流車隊尋找派送包裹的最快路徑。
動植物鑑定:使用特徵(如葉片形狀或毛髮類型)來辨識物種名稱。

4. 專家系統如何「思考」:鏈結 (Chaining)

推理引擎使用兩種主要方法來得出解決方案。這往往是學生容易感到困惑的地方,但其實比看起來更簡單!

正向鏈結 (Forward Chaining / 數據驅動)

這種方法從現有數據開始,利用規則庫查看數據會導致什麼結果。它是「數據驅動 (Data Driven)」的。

例子:你告訴醫療系統「我有咳嗽」且「我有發燒」。系統查看這些事實並向推導,得出結論:「你患了流感」。

反向鏈結 (Backward Chaining / 目標驅動)

這種方法從目標結論開始,向推導以查看現有事實是否支持該結論。它是「目標驅動 (Goal Driven)」的。

例子:系統設定一個目標:「該病患是否患有流感?」然後它向後檢查:問「病患是否有發燒?」以及「病患是否有咳嗽?」。如果這些事實都符合,則目標得到證實。

記憶小撇步:
Forward(正向)從 Facts(事實)開始。
Backward(反向)從 Big goal(大目標)開始。

5. 數據驅動與目標驅動的應用

我們在不同的領域使用這些不同的邏輯:

診斷:通常使用正向鏈結(從症狀開始以找出疾病)。
遊戲:非玩家角色 (NPC) 通常使用目標驅動邏輯。例子:一個 NPC 的目標是「攻擊玩家」。接著它會檢查自己是否有武器以及玩家是否在攻擊範圍內。
社交媒體中的人工智慧:用於操控你看到的內容。系統有一個目標(讓你更長時間留在應用程式上),並透過反向推導來決定哪些貼文能實現此目標。

6. 優點與缺點

如同任何技術一樣,專家系統有其優缺點。

優點

全天候可用:電腦不需要睡覺、吃飯或休假。
一致性:與人類不同,系統不會因為「心情不好」而對同一個問題給出不同的答案。
匯集多位專家:系統可以將多位不同專家的知識集合在同一個地方。
適用於危險區域:它們可以用在對人類專家而言不安全的地方(例如核電廠)。

缺點

沒有「常識」:系統盲目遵循規則。如果用戶提供的答案明顯荒謬,它無法察覺。
成本高昂:建立和維護它們非常昂貴且耗時。
垃圾進,垃圾出 (Garbage In, Garbage Out):如果知識庫中的規則或事實錯誤,建議也會錯誤。
缺乏情感/共情:在醫療等領域,電腦無法提供人類醫生所能給予的「人情味」或情感支持。

重點總結:專家系統之所以強大,是因為它們具備一致性且永不遺忘,但它們受限於人類提供規則的質量,以及缺乏一般的人類直覺。

需避免的常見錯誤

錯誤:認為推理引擎 就是 知識庫。
修正:知識庫是 儲存(書本);推理引擎是 處理器(閱讀書本的人)。
錯誤:認為專家系統具有「創造力」。
修正:它們嚴格遵循邏輯。它們只知道透過 IF...THEN 規則所告知的內容。

如果剛開始覺得鏈結邏輯有點抽象,請別擔心。只要記住:正向 (Forward) 從你已知 (Known) 的開始,而反向 (Backward) 從你想要證明 (Prove) 的目標開始即可!