第四章 系統(tǒng)上下文的數(shù)據(jù)結構與智能數(shù)據(jù)庫
系統(tǒng)上下文是組織系統(tǒng)信息的基本部分,是當前求解狀態(tài)的符號、事實和各種設計結果的集合,是專家系統(tǒng)運行的基礎。
4.1系統(tǒng)上下文的組成
1.系統(tǒng)的上下文:專家系統(tǒng)在運行過程中,通過訪問上下文(動態(tài)數(shù)據(jù)庫)獲得數(shù)據(jù),決策完成后再將決策結果儲存在上下文中。上下文的組織形式、布局、數(shù)據(jù)的交換過程對專家系統(tǒng)的組織影響很大。如果系統(tǒng)上下文的組織符合數(shù)據(jù)的內在聯(lián)系,很容易存取各項數(shù)據(jù),不僅能夠使系統(tǒng)的數(shù)據(jù)組織順理成章,而且便于使用系統(tǒng)的數(shù)據(jù)庫以及快速查詢,從而提高系統(tǒng)的使用性能和實用價值。
圓柱齒輪減速器設計專家系統(tǒng)是由LlSP語言編寫。LISP 語言是一種表處理語言(listpr cessing language ),數(shù)據(jù)及程序均由S一表達式構成,其基本結構形式是表(程序和數(shù)據(jù)沒有本質區(qū)別)。使用這種表結構,具有:
·全局性能好。通過表之間的連接,系統(tǒng)能夠進行統(tǒng)籌管理;
·透明度高。按一定的格式,程序很容易讀;
·結構性好;
·以表形式表達的數(shù)據(jù)非常容易擴充。
利用人工智能語言LISP 在構造程序上的極大便利性,可方便地實現(xiàn)動態(tài)的智能數(shù)據(jù)庫(上下文)。
2.上下文的組成:圓柱齒輪減速器設計專家系統(tǒng)的上下文由三部分組成,它們分別是斷言表(ASSAERTIONS)、設計參數(shù)表(PARA METERAS)和進程表(HlSTORY)。
斷言表是構成產生式系統(tǒng)的基本組成部分,它實際上是一堆棧表,即后進入斷言表的斷言在規(guī)則調用中首先被匹配,這種組織方式能夠節(jié)省時間上的開銷,因為本階段設計任務與當前設計環(huán)境有更直接的聯(lián)系。
設計參數(shù)表是用于存放圓柱齒輪減速器專家系統(tǒng)設計中的各種零件參數(shù)及其它設計結果果的表的集合,它由一系列的框架組成。其中包括了圈柱齒輪減速羚的所有零件,例如箱體、軸、齒輪、……。用框架形式表達設計參數(shù)比用斷言形式更加自然。
斷言表和設計參數(shù)表根據(jù)實際需要可以互相轉化,通過作者研制的一套轉換函數(shù),能夠實現(xiàn)從斷言表中匹配出所需的斷言,并從斷言中取得所要求的公式、數(shù)表或數(shù)值以及所需的操作;同時,參數(shù)設計表中的內容也可通過相應的函數(shù)實現(xiàn)相反的轉變。
進程表是專家系統(tǒng)運行過程的記錄,主要用于解釋、查詢及控制等功能。
4.2智能數(shù)據(jù)庫
1.智能數(shù)據(jù)庫的組織
圓柱齒輪減速器作為一個機器整體,各零件間是密切關聯(lián)的,其相互間的聯(lián)系如圖4-1所示。
從圖4-1中衍生的圓往齒輪減速器設計專家系統(tǒng)的數(shù)據(jù)間的邏輯組織形式如圖4-2。
圖4-2為一樹狀結構,其中樹的葉結點均為相應零、部件所定義的框架結構。根據(jù)數(shù)據(jù)組織的層次關系,建立起專家系統(tǒng)的動態(tài)數(shù)據(jù)庫的層次關系庫。
2.智能數(shù)據(jù)庫的實現(xiàn)
LlSP語言是表處理語言,讓我們簡單看一下表的內存表示法。
從概念上看,一般計算機內存是由許多編了號碼的內存單元組成。一個特定的內存單元的編號稱內存地址。如
單元的地址 |
單元的內容 |
2001 |
9100 |
2003 |
9025 |
2003 |
9001 |
內存單元的內容是數(shù)字,像地址一樣。因此,一個內存單元的內容可以說包含了另一個單元的地址。如果對內存單元的內容作這種解釋,那么第一內存單元被說成包含另一個單元的指針。如內存單元2001含有指向9100內存單元的指針。一般在LISP語言中,內存單元大的可以包含兩個指針,左半指針和右半指針。其中,右半指針把表串在一起,而左半指針指出表的各元素。可以用下面的抽象方式表示,即方盒一箭頭表示。每一個指針用一個箭頭表示,表可以用帶有左、右指針的許多方盒來表示,用右指針把方盒連在一起,用帶斜杠的方盒表示表的結尾,原子則簡單地寫下名字。
通過以上的描述方法,原子context的值(assertions parameters history)可表達為:

通過層次結構(或稱樹結構)的遍歷,通過LISP語言的再求值(EVAL)函數(shù),便可實現(xiàn)數(shù)據(jù)庫的一系列操作。以圖4-2為例,說明數(shù)據(jù)庫的查詢過程。
在當前數(shù)據(jù)庫中查找到box-data,通過對原于box-data再求值,便可得到box-data框架,通過對box-data框架運行,可得到箱體的各項數(shù)據(jù)。
數(shù)據(jù)庫的智能查詢:數(shù)據(jù)庫的智能查詢是指可對當前數(shù)據(jù)庫進行如下所示的操作:
·所設計的圓柱齒輪減速器的傳動級數(shù);
·各傳動軸的功能;
·某軸上安裝的齒輪號;
·與該齒輪嚙合的齒輪號;
·齒輪傳遞關系;
……
以上操作可以通過斷言表及設計參數(shù)框架的組合進行實現(xiàn)。
3.智能數(shù)據(jù)庫的存取
(1)樹的遍歷:這種方法中,數(shù)據(jù)以前序遍歷、即首先搜索樹的根結點,然后搜索樹的子結點的方法實現(xiàn)。
(2)通用選擇法:通用選擇法不依賴于選擇內容在樹結構中的位置和順序,而是根據(jù)所確定的選擇條件,直接對原子求值,選擇所需內容。


上一頁
下一頁