第二章 文獻探討
2.2 決策支援系統
決策支援系統(Decision Support System, DSS)能擴大決策者知識,增加決策 能力,協助決策者解決他們單獨可能需長時間或根本無法解決的複雜問題,有時
Keen and Morton (1978)
面,幫助決策者擷取資料及洞察情勢,以改善其決策品 質而開發的交談式彈性電腦系統。
Turban and Aronson (1998)
決策支援系統是一套互動式的、彈性的、調適的電腦資 訊系統,其特別為了支援非結構化管理問題的解答而被 發展以改善決策的制定,它使用資料、提供簡單的使用 者介面以及能夠整合決策制定者的洞察力。
Sprague and Carlson (1982)
決策支援系統是以電腦為基礎,透過交談的方式,以協 說明不同電腦化系統的比較[Sprague and Carlson, 1983][梁定澎,1991]。
決策支援系統粗略可分為電腦模擬模式(Computer Simulation Model)和專家 系統(Expert System)兩方面:
y 電腦模擬模式:建立的目的,不在於要模擬出完全一樣的數據,也並非
表 3. 不同電腦化系統的比較[Sprague and Carlson, 1983][梁定澎,1991]
處理系統。外部資料包括行業資料、市場調查資料、人口普查資料、國 際網路(Intranet/Internet)的發佈方式。
y 決策者:用戶可看作系統的一部分。決策支援系統的用戶主要是企業各 層次的管理者和商業分析人員甚至是銷售員。
2.2.1 決策支援系統與專家系統的關係
運用專家概念的決策支援系統又稱為專家型支援系統(Expert Support System, ESS)或是管理型專家系統(Expert System for Management, ESM) [曾憲雄等,
2002]。其最大目標為應付複雜多變的外在環境。系統內包含各種專業知識及管 示法(Knowledge Representation),會影響到後續知識推論方法的應用,而問題領 域的特性及不同知識應用方式,則會影響到要用什麼樣的知識表示法來描述及建 構整體知識庫(Knowledge Base)。
知識呈現(Knowledge Representation)可回溯至Feigenbaum所提出的專家系統 觀念[Feigenbaum, 1977] [Feigenbaum, 1979],他認為系統效能是來自於專家對知 識呈現的精確程度,因此,推論的成效,依賴於不同的呈現方式。為使推論能具
有邏輯推理的能力,必須建立知識之間的關係,因此也有不同的知識呈現方式。
依據Minsky的研究[Minsky, 1975] [Minsky, 1995],常用的知識呈現方法,有本體 論(Ontology)、邏輯式(Logical)、語意網路(Semantic Nets)、規則式(Rule base)及 框架式(Frame base)等。本研究係運用規則式推論,故針對規則式知識(Rule-based Knowledge)作一詳細說明:
規則式知識,其基本假設知識都是由一條條的規則所組成的。通常用於淺層 的知識表達,並以IF-THEN的通式表達。在規則表示中,將「狀態」視為事情判 斷時的「前提」(Antecedent)或「假設」(Hypothesis),依據前提,進行知識推論,
最後取得「結果」(Consequent)。一般說來,規則的「前提」也稱為規則左端 (Left-hand Side, LHS),而結果稱為規則右端(Right-hand Side, RHS)。當然,規則 並非獨立存在的,對於特定領域的知識而言,用來表示其知識的規則集合彼此之 間可能會有些關聯。例如,IF 前提(Antecedent) THEN 結論(Consequent)、IF 狀 態(Situation) THEN 動作(Action)。
y 優點:容易擴充及修改資料庫。
y 缺點:不易表達較複雜或完整的知識。
2.2.3 知識的擷取
透過系統自動與專家互動而截取知識,其目的是將專業領域的知識轉換成知 識庫或是其他電腦化的表達形式。而藉由有經驗的知識工程師對專家進行晤談,
此方法較耗費時間,因為知識工程師通常並不通曉領域智識(Domain
Knowledge),同樣地,專家很可能對電腦科學並不具任何概念,所以需要一段時
y What:問題描述、標的特徵與狀況。
y How:量測方法、分析流程與步驟與解決方法。
y Why:原因查證、釐清因果關係。
因此將各領域專家的知識、經驗及推理判斷匯入電腦,以構成保有專業技術 的知識庫。例如:轉動機械異常診斷專家系統知識庫建立[呂銘宏,周永樂,1990]。
知識擷取方式可大致分為下列兩種:
y 機器學習(Machine Learning):直接從專家提供的訓練範例(Training cases) 中歸納出推論規則。此方法在有充分的訓練範例時能有效率的建構知識 庫;然而領域中只有少量或甚至缺乏範例,則機器學習法並不適用。
y 知識擷取系統:專家在接受短時間(通常15-30分鐘)的說明後,即可透過 知識擷取系統對專家進行晤談,不需要知識工程師從旁協助(圖8)。
圖 8. 專家系統獲得知識之模式
2.2.4 專家系統的建構
專家系統,其建構的工具及步驟[Frederick, 1992] (圖 9):首先要確認欲解決 的問題是那些問題,根據這些特定問題的需求找出相關的知識並將其概念化,並 將這些概念加以組織整理成一個有系統的知識結構,接下來就必須訂定一些涵蓋 上述知識的規則,這其中包含了推論技術與演算法的選擇、轉譯、推演等程序。
而在發展的過程中,需求、概念、組織結構與規則都是常常變動的,因此必須不 斷地重新組織,並加以精鍊化。最困難的部分就在於知識工程的層面,包括知識 取得(Knowledge Acquisition)及知識表示(Knowledge Representation)。而將專家知
識有系統地轉化成可以電腦化、有結構的知識的過程。而協助這項轉換的步驟則 稱為「知識工程序」,包含確認、概念化、成型化、實施、測試與修訂,以下將 針對上述步驟一一說明:
y 確認階段(Identification Stage):選擇知識工程師及專家,並且分別定義 系統解決問題之類別,包含系統所運作之資料,以及滿足標準的解答;
並能提供給這個計畫的資源,包含專門知識、人力、時間限制、計算能 力及經費。
y 概念化階段(Conceptualization Stage):讓知識工程師和專家充分溝通,
找出各種關鍵觀念及它們之間的關係並建立共識。這項工作應包含不同 類別的資料,資訊的流動及專門領域的結構,將它們以因果關係、時空 關係、或是部分--整體關係等來表示。
y 成型化階段(Formalization Stage):把上一個階段定義完成的核心概念、
問題及相關知識以正式的方式表達出來(如:法則),並建立知識的模 式,以方便瞭解及在電腦上執行。重要項目包含資訊的確定性及完整 性,對於資料的邏輯解釋之其它限制,諸如時間相依性及不同資料來源 可靠性及一致性。
y 實施階段(Implementation Stage):將上一個階段中所定義出來的正式知 識,以軟體工具來建置成為雛形系統。而在轉變一種知識成為一種可執 行程式的過程中,最需關心的是控制的詳細計畫,以及資訊流動的細 節。在某一個控制規定下,各種規則將必須被表示成某些可執行的形 式,而有關資料結構及程式中各模組間依賴程度則須訂下決策。
y 測試階段(Testing Stage):主要是評估雛形系統中知識的正確性,以及系 統表現方式是否可以正確地提供有用的資訊。藉以發現規則的疏漏、不 完全或完全錯誤。
y 修訂階段(Revision to Complete the System):針對測試所發現的問題,加 以修正並測試,直到結果可以接受為止。
圖 9. 專家系統建構過程[Frederick, 1992]
而一般構建專家系統的語言,多以 LISP (LISt Processor)語言為主,美國 航空太空總署(NASA)有鑒於 LISP 語言無法在一般機器上執行,且於其他語言的 整合性又差,乃以 C 語言另外發展一套專家系統規則庫的構件工具,即 CLIPS (C Language Integrated Production System),而其核心為 C.L.Forgy 在 1970 年代中期 發展的快速模式相配法則(Fast Pattern Matching Algorithm)-Rete Algorithm,也就 是其推論引擎,如 CLIPS 原始碼解析技術[周政璋、林光甫,1991],此也是本研 究所使用 IDSS 的 JESS 推論引擎所用的演算法。
實際上,已有不少專家系統已建構並應用於實際生產管理上,應用一些分析 方法,如分析層級程序法(Analytical Hierarchical Proc ess, AHP)與規則式(Rule- based)知識庫來建立的物流專家系統[梁高榮,1990]或結合訊號特徵與知識庫的 轉動機械異常診斷專家系統[周永樂,1990]。