(1)當機器人的機械手拿一本圖書時,機器手上的自動識別系統(tǒng)即帶有傳感器的環(huán)境識別Agent 立即感知環(huán)境變化,且獲取圖書條形碼信息,并將這些信息傳遞給圖書識別Agent.這一過程主要是實現(xiàn)從環(huán)境狀態(tài)(E)到感知(Per)的映射(函數(shù)see 的輸出是一種感知,即感知的輸入):see : E--》 Per.
(2)信息庫包括了圖書信息的集合和圖書館的電子地圖,存儲著所有圖書條形碼的信息、書名及其圖書標簽和圖書館電子地圖。通過傳感器識別出條形碼,圖書識別Agent 接收條形碼信息,將信息分解,并跟信息庫中已有的條形碼進行模式匹配,找到符合的樣本,返回圖書的基本信息,用函數(shù)book(館號,條形碼,條形碼號,書名,標簽)表示,其中標簽指的是在圖書館里的位置編碼,分為2 大部分,前一部分字母遵循中國圖書館圖書分類法,指出圖書的類別,而后一部分則為每個圖書館各自的編碼方式,存儲著每本圖書在館內(nèi)的具體位置。并將這個函數(shù)傳遞給圖書歸類Agent.
(3)規(guī)則庫是規(guī)則的集合,存儲著中國圖書館圖書分類法及本地圖書館子規(guī)則。
圖書歸類Agent 接收函數(shù)book,將對應(yīng)的標簽跟規(guī)則庫中的規(guī)則進行比較得到圖書在館中的位置,并將其分解為某類圖書的某個具體書柜,用函數(shù)position(編碼號,書柜號)將位置函數(shù)傳遞給動作Agent.
(4)動作選擇函數(shù)獲得推理結(jié)果實現(xiàn)從內(nèi)部狀態(tài)到動作(Ac)的映射:action:I--》 Ac.動作Agent將圖書放入推車的空格子中,并在臨時庫中記錄每本書的書柜號和推車格號,同一書柜號的圖書可以記錄在一條記錄中,在原先記錄尾部追加其推車格號即可,那么機器人可將推車中同一個書柜的圖書一次性擺放,不需下次折回。臨時庫見表1 所示。
表1 臨時庫表一
(5)當推車上的格子都擺滿后,動作Agent 傳遞消息給智能決策Agent 圖書已擺滿,則智能決策Agent查看臨時庫中的各個書柜號,根據(jù)信息庫中已存儲的圖書館的電子地圖即各個書柜的擺放次序利用改進BUG 算法計算出各個目的地的優(yōu)先次序和機器人的行走路徑,并指導(dǎo)動作Agent 到各個目的地完成擺書操作,最后回到還書處等待下一次的擺書動作。
3 關(guān)鍵算法分析
3.1 圖書歸類
依據(jù)圖書館給圖書分類編碼的標準,參照中國圖書館圖書分類法,因為國家圖書館圖書分類法,從首字符可以分出大的圖書所屬類別,從一級類別中再細分,部分首字符,例如:E、U、V 就代表一類,不需要再細分,而有些要細分出來,則需要首四位字符的判斷才能分析出來,更特別的是審計類編碼規(guī)則,要有前六位才可以分辨出來。據(jù)此我們設(shè)計圖書分類編碼,共12 位,由26 個大寫字母和十個數(shù)字0~9 組成,前四位代表圖書的類別,如果按照中國圖書館分類法,字符不足四位的用通用字符*補足,例如:U 代表交通運輸類,一本書的分類編碼前四位可以設(shè)計為U***;TP1 代表自動化基礎(chǔ)理論,該類別一本書的分類編碼前四位可以設(shè)計為:TP1*,后8 位按照各個不同圖書館的不同要求進行編碼,從而根據(jù)類別和后八位的編碼確定某本書所在的碼段,接著確定具體的位置和所在柜。
我們根據(jù)該編碼規(guī)則來設(shè)計圖書分類規(guī)則庫。我們設(shè)計四個子規(guī)則庫:
唯一字符規(guī)則庫:
r1: IF 第一個字符是U/E/P/Q/R/V THEN 該本書是所對應(yīng)的某一大類。
兩個字符規(guī)則庫:
r1: IF 第一個字符是某個字母 THEN 該本書是某種一級類;
r2: IF 第二個字符是某個字母或數(shù)字 THEN 該本書是二級類;
三個字符規(guī)則庫:
r1: IF 第一個字符是某個字母 THEN 該本書是某種一級類;
r2: IF 第二個字符是某個字母或數(shù)字 THEN該本書是某二級類;
r3: IF 第三個字符是某個字母或數(shù)字 THEN該本書是某三級類;
四個字符規(guī)則庫:
r41: IF 第一個字符是某個字母 THEN 該本書是某種一級類;
r42: IF 第二個字符是某個字母或數(shù)字 THEN該本書是某二級類;
r43: IF 第三個字符是某個字母或數(shù)字 THEN該本書是某三級類;
r44: IF 第四個字符是某個字母或數(shù)字 THEN該本書是某四級類;
r45: IF 第五字符是點 THEN 根據(jù)前四位已判斷類別和后8 位字符的范圍找到該書相應(yīng)的柜子的編碼 AND 跳出規(guī)則庫;
ELSE 第五個字符是某個字母或數(shù)字 THEN該S 本書是某五級類;
r46: IF 第6 個字符是點 THEN 根據(jù)前五位已判斷類別和后7 字符的范圍找到該書相應(yīng)的柜子的編碼 AND 跳出規(guī)則庫;
根據(jù)上述規(guī)則庫我們給出編碼和對應(yīng)書柜編號的識別通用算法如下:
If(第二個字符=*)
{ 轉(zhuǎn)入唯一字符規(guī)則庫;
根據(jù)該類別和后8 位字符的范圍找到該書相應(yīng)書柜的編碼;}
Else if(第三個字符=*)
{ 轉(zhuǎn)入兩個字符規(guī)則庫;
根據(jù)該類別和后8 位字符的范圍找到該書相應(yīng)書柜的編碼 ;}
Else if(第四個字符=*)
{ 轉(zhuǎn)入三個字符規(guī)則庫
根據(jù)該類別和后8 位字符的范圍找到該書相應(yīng)書柜的編碼 ;}
Else 轉(zhuǎn)入四個字符規(guī)則庫;
我們以一個例子具體說明編碼規(guī)則:
假設(shè)某一高校圖書館給出非審計類8 位的編碼規(guī)則是,對于U 類書籍,編碼范圍U***00000000-U***00000200 內(nèi)的書籍放在1 號柜。我們對一本編碼為U***00000023 使用本文所述的分類算法進行分類。首先,判斷第二位字符,根據(jù)算法第二位是*,轉(zhuǎn)入唯一字符規(guī)則庫,首先根據(jù)規(guī)則r11,判斷出該本書是交通運輸類,結(jié)合后八位0000023,該編碼在U***0000000-U***0000200 范圍內(nèi),判斷出該書所在的位置為1 號柜。
評論
查看更多