摘 要:構建了基于本體的物流行業信息化知識庫。應用語義Web和Web服務技術研究物流知識資源,設計了物流領域本體,實現了文本摘要、規則抽取、本體整合等關鍵功能,解決物流系統中語義和重用問題,提高了物流企業的知識共享和協作能力。這不僅為物流行業信息化奠定了堅實基礎,而且為知識庫的復用創造了條件。
關鍵詞:本體;物流;知識庫;知識復用;面向服務的架構
中圖分類號:TP316 文獻標志碼:A
文章編號:1001-3695(2008)09-2734-04
Study on ontologybased logistics industry repository
RAO Guozheng1,FENG Zhiyong1,ZHANG Li2,NIE Xufei1
(1. School of Computer Science Technology, Tianjin University, Tianjin 300072, China;2.School of Economy Management, Tianjin University of Science Technology, Tianjin 300222, China)
Abstract:This paper presented ontologybased logistics industry repository.Logistics knowledge resources were discussed with semantic Web and Web services technology.The problem of semantic and reuse in logistics information system was resolved by implementation of designing logistics domain ontology, text summary, rules extraction and ontology merge. The knowledge sharing ability of logistics enterprises is improved, which is the foundation of logistics industry informationization and the conditions of reusing repository.
Key words:ontology; logistics; repository; knowledge reuse; service oriented architecture
0 引言
隨著經濟全球化和信息技術的迅猛發展,全球產業結構的調整不斷深入,社會生產、物資流通、商品交易及其管理方式正發生深刻的變革。繼物質資源市場、人力資源之后的“第三利潤源”——現代物流正在世界范圍內迅速發展,成為現代經濟中最活躍的增長因素。
在我國,隨著經濟的快速發展和現代物流理念的逐漸普及,物流產業發展迅速,已經作為國民經濟中的一個新興的產業部門,成為21世紀我國的主要支柱產業和國民經濟新的增長點。據文獻[1]顯示,社會物流總額(指一定時期內實現社會物流的全部物品的總價值,在一定意義上也就是采購貨物的總價值)從2000年開始進入快速增長期,2000—2006年,全國社會物流總額由17.1萬億元人民幣上升至59.7萬億元人民幣,7年間增長2.5倍,年均增幅19.6%,大大高于同期10.7%的GDP年均增長率。隨著物流產業的發展,對物流信息化提出了更高、更新的要求。由于物流行業的復雜性、動態性和分散性,以及管理模式的多變性,當前物流企業的信息化水平還難以達到企業的需求,這直接影響了物流中心與用戶的溝通和協作,阻礙了物流服務質量的提高。就整體來看,國內的物流信息化狀況依然存在很多問題,還不能達到國際化的要求,從而制約了我國物流產業的發展。面對這種現狀,迫切需要針對物流信息化存在的問題,結合現代物流的發展趨勢和發展要求,分析物流產業對信息系統的具體要求,研究適合中國國情的物流信息化關鍵性技術。
行業信息化知識庫,是對行業核心應用軟件起支撐作用的行業信息化經驗積累的集合,也可以說是行業經驗的沉淀;是行業信息化建設的關鍵知識、規律及訣竅等知識的匯聚;是知識復用和軟件開發的基礎。馬希文教授曾指出“軟件是人類知識的濃縮和結晶”, 知識開發將從軟件開發中分離出來,知識模塊將從軟件平臺中分離出來。陸汝鈐院士也曾在2004年智能科學技術基礎理論重大問題研討會上提出:“知識產業要從軟件產業中分離出來,我們將從軟件復用走向知識復用……”因此,行業應用知識資源的開發利用水平很大程度上代表了行業信息化建設的成功與否,以及在行業信息化建設中所占有的舉足輕重的地位。在行業信息化中,無論是技術、管理,還是數據,沉淀下來都是知識資源,尤其是以行業應用知識體現的行業標準、行業模型、行業構件,更是寶貴的知識資源。充分開發利用行業應用知識資源,構建先進的行業信息化知識庫,對分布在物流行業中的零散知識進行有效管理,挖掘蘊藏在行業中的寶貴的知識財富,并在物流行業中進行充分的復用,是大勢所趨。
目前很多學者建立了各種不同的知識庫系統[2~5],大多作為專家系統的一部分。但是物流行業的知識庫比較少,且只有少量的國外研究者將知識庫應用于物流中的某些環節,如文獻[6]給出了一個利用知識庫制定物流戰略規劃的框架;文獻[7]基于知識庫實現了一個物料自動編號的物流信息系統;文獻[8]通過EDI和工作流為美國國防部提供了一個軍事物流(后勤)解決方案。但是這些系統難以實現知識的共享和交換。這種情況造成了用大量精力建立起來的基于領域知識的系統應用面狹窄,不能充分發揮效率。因此設計良好的共享重用體系不僅可以減少知識庫的冗余,保證知識庫系統的簡潔性,而且還可以提高知識系統的性能。
1 本體與知識庫
知識表示是研究用機器表示知識的可行性、有效性的一般方法;是一種數據結構與控制結構的統一體,既考慮知識的存儲又考慮知識的使用。知識表示可看成是一組描述事物的約定,即把人類知識表示成機器能處理的數據結構。知識表示方法通常可以分為基于符號的表示方法和基于連接機制的表示方法。前者主要是面向邏輯知識的表示,如一階謂詞邏輯表示法、產生式表示法、框架表示法以及腳本表示法等;后者則主要是面向形象知識的表達,如語義網絡表示法、過程表示法、Petri網表示法以及面向對象的表示法等。在實際的知識表示過程中,傳統知識表示方法在知識表示、傳遞和共享過程中存在先天性的缺陷。其一方面,所表達的知識無法保證在傳遞和共享過程中知識理解的惟一性與無二義性;另一方面,在大量的原子性知識的環境中對復雜知識的表達與推理可能會產生組合爆炸。為了解決上述知識表示方法中存在的問題,在知識工程領域需要引入本體的概念[9]。
本體(ontology)是一個哲學概念,它是“共享概念化的形式的、明確的規范”[10]和“某些方面概念化的明確解釋或表示”[11]。
從知識表示角度考慮,本體和知識庫有類似之處,都是對一個具體或是抽象領域中包含的知識的定義、表示和組織。根據Gloria定義[12]知識庫是知識系統的知識模塊,它包含特定領域抽象或特定的知識,這些知識以機器可讀的格式表達。在本體概念被提出來后,理想的領域知識庫是應該建立在領域本體的基礎之上,并根據領域本體中的全部或部分概念生成系統所需的知識庫。而且本體為人們描述目標世界提供了一組通用詞匯,而這種通用的詞匯正是實現知識系統化的基礎。通用詞匯和知識的系統化有利于實現知識的標準化。傳統的知識管理方法往往只是從語法上對知識進行描述,并不對其意義進行描述,常采用基于關鍵字的檢索方法(字符匹配),查全率和查準率都較低。物流領域本體提供了領域相關的概念及其關系描述,因此可以對具體知識進行標注,形成含有豐富語義信息的知識庫,進而可以利用這些語義信息進行檢索,查全率和查準率都較高。此外由于基于本體的知識管理具有語義層、自動化、支持推理等優點,不僅可以清晰地描述領域知識庫中的概念及其關系,還可以實現領域知識的共享和重用,十分有利于領域知識庫的管理和維護,大大深化了知識管理的內涵,促進知識的共享和復用。
國內外已有許多研究者將本體引入知識庫中,如文獻[13]從半結構化的數據中采用語義模式創建疾病知識庫;文獻[14]基于本體構建了醫學知識庫;文獻[15]基于ontology探討了領域知識庫構建的分層模型,并將構建的知識庫應用于采用C++和ASP實現的基于Web的學習支持系統中;文獻[16]結合中國的法律法規給出了一個法律領域的本體模型DOLegal,介紹了法律知識庫的設計思路及架構。
上述這些應用領域相對而言問題比較單一,知識的變化較慢。但像物流這樣包含采購、檢測、包裝、運輸、倉儲、配送等眾多環節,包含的知識跨越了多個領域,而且錯綜復雜,隨時間變化速度較快的行業應用卻非常少見。
2 SOA與Web服務
伴隨著企業需求的不斷變化,一種被譽為下一代Web服務的技術架構,由于它是以實現服務資源的反復重用、服務資源之間的通信、協調,從而消除服務資源的多樣性、層次性、復雜性帶來的困難為目標,再一次引起業內關注,這就是面向服務的架構(service oriented architecture, SOA)。它是一種完全低耦合的分布應用集成方法[17],將成為占有絕對優勢的軟件工程實踐方法。SOA中主要有三種角色(圖1):a)服務使用者。它是一個應用程序、一個軟件模塊或需要一個服務的另一個服務。它發起對注冊中心的服務的查詢,通過傳輸綁定服務,并執行服務功能,服務使用者根據接口契約來執行服務。b)服務提供者。它是一個可通過網絡尋址的實體,接收和執行來自使用者的請求,并將自己的服務和接口契約發布到服務注冊中心,以便服務使用者可以發現和訪問該服務。 c)服務注冊中心。它是服務發現的支持者,包含一個可用服務的存儲庫,并允許感興趣的服務使用者查找服務提供者接口。
SOA是一種新的分布應用集成示范。Web服務是SOA的一個實例,基本的Web服務規范包括Web服務描述語言(WSDL)、簡單對象訪問協議(SOAP)、通用描述、發現與集成(UDDI)、Web服務安全(WSSecurity)、Web服務事務(WS Coordination、WS AtomicTransaction) 等規范。Web服務體系使用WSDL描述服務,使用UDDI來發布和查找服務,使用SOAP協議來執行服務調用[18,19]。WSDL就是描述XML Web服務的標準XML格式,由Ariba、Intel、IBM和微軟等開發商提出。它用一種與具體語言無關的以抽象方式定義了給定Web服務收發的有關操作和消息。
Web服務的規范的標準化和松耦合的特性使得我們可以把物流行業知識庫包裝成一個用Web服務來實現的SOA構件,這樣知識庫不僅重用性好而且可維護性大大提高。
3 基于本體的物流行業知識庫
知識庫的構建,是一個耗時長、代價高的工作。首先需要建立一套科學的基于物流行業知識的可擴展資源分類方法,對成千上萬的異構知識源進行梳理;然后就是研究這種大型知識庫的知識表示和推理,以及這些知識如何在物流行業的眾多企業中得到廣泛的復用。
如圖2所示,基于本體的物流行業信息化知識庫體系結構采用分層模式,自底向上分別為三層:a)行業知識資源層,在該層根據行業的實際情況,將行業知識資源分為不同的類型。b)知識庫層(第二層)。在該層總體上采用Web服務標準,將知識庫中的經過語義標注的知識庫包裝成一個個Web服務,每個Web服務可以作為一個獨立的整體被復用,從而方便行業的各種不同層次的應用需求。c)應用層(第三層)。該層主要是為不同的使用者提供API、Web服務和控制接口等提供各種各樣的應用接口,方便不同的用戶查詢,從而更好地為不同的使用者服務。
1)行業知識資源梳理 物流行業隱藏著大量豐富的知識,不能得到很好的應用,行業知識資源可以分為物流行業報告、物流行業法律法規、物流行業標準規范、物流行業標桿數據、物流行業業務規則、物流行業解決方案、物流行業業務模型、物流行業數據模型、物流行業領域構件和物流行業數據庫、物流行業其他相關文檔等。其中物流行業報告又包含數以百計的像物流行業研究報告、物流行業分析報告、物流行業年度報告、物流行業發展趨勢、物流行業全景圖和物流行業規劃等。物流行業又包括上百個像海關通關類、進出口類和運輸類等類型的法律法規,更是有數以百計的行業標準規范、物流行業標桿數據,數以千計的物流行業業務模型和物流行業數據模型、物流行業領域構件等,以及數以萬計的物流行業解決方案、物流行業其他相關文檔。這些成千上萬的知識源異構地分布在行業中,因此要建立完善的分類系統對行業知識資源進行有效的梳理,通過像文本摘要工具和知識、規則抽取方法等,將這些知識以結構化和半結構化的形式存放到相應的知識庫中,如文檔庫、規則庫、解決方案庫、模型庫和構件庫等。
2)文本摘要 該摘要工具能用來對海量的文檔進行摘要處理,從而為用戶產生物流相關文檔源的精簡表示,使用戶可以方便省時地了解文本源的中心意思,從而快速地獲得有價值的信息。如圖3所示是網上的一篇與物流相關的文檔,經過該工具的自動摘要生成如圖4所示的能表達該文檔的縮略版,并最終能將該文檔的縮略版轉換為XML文檔,存儲在相應的庫中(如文檔庫)。
3)知識、規則抽取 OWL(Web ontology language)是一種本體語言,可以用于語義知識的表示。其主要作用是將領域內的概念分類,通過約束、布爾組合等來描述概念自身的語義含義,利用屬性來表達概念與概念之間復雜的依賴。所以通過本體可以得到一個類的實例所具有的屬性,以及類與類之間的關系。但OWL所擁有的描述能力主要來自于以類別為基礎的關聯性的推理,若知識不是用類別的方式表達時,OWL便難以表示。例如:If…Then…的關系是很普通的邏輯判斷,但是OWL描述以規則為基礎的知識的能力并不足。在物流領域中,有很多物流規則需要用類似的If…Then…來表達,所以有必要在OWL概念知識庫基礎上制定一個規則庫,從而更好地表達物流領域知識。
如在配貨過程中,要遵循的配貨規則為:易產生水分的貨物不能和怕水、怕潮的貨物一起運輸;易燃燒的貨物和易爆炸的貨物不能一起運輸;有毒、有放射性、有腐蝕性等的危險品要分別單獨運輸,不能和其他貨物一起運輸。當把貨物都配好之后,便可以為每批貨物找合適的運輸工具進行運輸。需要遵循的規則為:怕潮、怕水的貨物要用篷車運輸;液態貨物要用油罐車或管道運輸;危險品要用專用車輛運輸等規則。
以上規則語義表達明確,便于理解,并且支持將規則放在規則庫中供程序調用,這就避免了在業務規則發生變化時更改源程序。以下是規則庫中描述上述規則的片段:
# rule file
@prefix LO:〈http://www.owlontologies.com/logistics.owl〉.
[hygroscopicRule: (?x LO:isHygroscopic ?b) (?y LO:isWatery ?b)(?b rdf:type LO:True)
→(?x LO:cannotTransportWith ?y)]
[explosiveRule:(?x LO:isExplosive ?b)(?y LO:isFlammable ?b)(?b rdf:type LO:True)
→(?x LO:cannotTransportWith ?y)]
[poisonousRule: (?x rdf:type LO: PoisonousCargo)(?y isPoisonous ?b)(?b rdf:type LO:False)
→(?x LO:cannotTransportWith ?y)]
[dangerousTransportRule: (?x rdf:type LO:DangerousCargo)
→(?x LO:isTranportedBy LO:SpecialVehicle]
規則庫獨立于應用程序,所以規則可以動態地增加、刪除、修改,而不會對應用程序產生影響。
4)領域本體庫的構建 領域本體的開發使用的是Protégé 3.1,利用從各個庫中的結構化和半結構化的數據完成本體的建模,構建物流領域的本體庫,并采用德國漢堡大學計算機學科學系所開發的描述邏輯推理機RACER對本體進行推理。
圖5所示是物流本體模型的整體結構,依據該模型目前實現的頂層本體及其派生的領域本體模型中有171個類和300個屬性,是對物流領域建立的一個核心的本體模型,涉及到貨物、倉庫、運輸工具、物流模式、公司等幾個物流子領域。
5)本體整合 對于物流行業這樣一個較大的領域來說,建立一個大而全的本體幾乎是不可能,不同的人和組織可能根據自己的需要構建不同的物流領域本體。由于不同的人們和組織可能具有不同的世界觀,這些不同的世界觀甚至有可能是沖突的,這就必然導致本體具有分布和異構的屬性,并且本體本身并不能協調這種異構性,這種異構性為相同或不同領域的知識系統之間的互操作性帶來了嚴重的問題。本體整合是解決本體自身語義異構性的一種重要手段。圖6所示的是基于Jena開發的本體整合工具OntMerge,它采用實體內外部特征分析相結合的方式來計算實體間的相似度,并以此為依據進行本體整合。針對實體內部特征中缺少語義理解的問題,在使用字符串比較方法的基礎上引入字典對概念的語義進行識別。同時,該工具綜合語法和語義兩個方面得到的結果作為內部特征相似度,并通過字典技術克服本體層中同義詞、近義詞的問題;其次,針對實體的外部特征,采用啟發式規則計算本體中實體間的結構相似度,進而可以判斷兩個實體在本體中的地位是否相似。通過綜合使用這兩種方式可以有效地識別出待整合本體中相似的部分,提高了本體整合的準確性。
6)知識的語義標注 語義標注就是利用領域本體對原始數據作標記,使其具有語義信息,是使機器理解所處理數據的一種手段。語義標注的過程就是創建機器可理解的知識的過程。知識提供了領域(如物流領域)內部不同主體(人、機器、軟件系統等)之間進行交流(對話、互操作、共享等)的一種語義基礎。在語義Web中,這種知識主要是面向機器理解的,以本體形式表達的。物流行業的知識庫大多是非結構化和半結構化的,非常不適用于查詢與復用。本文利用本體庫通過語義標注工具[20]對物流行業成千上萬的知識源進行語義標注,就是利用本體對那些結構化和非結構化的知識進行本體實例化,從而為這些知識添加了語義信息,在一定程度上讓機器能理解知識,為知識庫的復用創造更有利的條件。
根據不同的用途進行語義標注,需要明確要標注的對象。從本體的角度來說,就是明確將本體中的哪些成分與現實世界建立聯系,即將哪些知識標注為本體的實例,因此會涉及標注的粒度問題。本體標注的粒度可根據需要由粗到細分為:a)標注概念,即建立概念和個體間的聯系,一個個體是本體中某個概念的實例,那么它就會繼承該概念的屬性。b)標注屬性,即給出實例對應的屬性值,這樣有利于進行推理和查詢。c)標注關系,即指出實例間的關系,本體建模時僅會指出關系的定義域和值域,在進行關系標注時需要根據相應的規則和條件實例化這種關系。d)標注實例,如一個實例可能會出現有不同的URI,這就需要通過語義標注來標志出不同的URI。
7)應用接口 該層主要是為不同的使用者提供API、Web服務和控制接口等提供各種各樣的應用接口,主要是采用WSDL將相應的經過標注的知識庫包裝成Web service, 并將相應的知識庫平臺的組件發布為可供調用的API;同時提供控制接口,為用戶提供個性化的服務,方便不同的用戶查詢和應用,從而更好地為不同的使用者服務。
4 結束語
物流行業知識庫可以大大提高物流知識的準確程度和使用效率;盡可能地復用知識,有利于行業信息化的推進。而ontology形式表達了領域知識的基本概念、屬性、處理方法和內在關系,在知識表示和推理方面很有優勢,是構建知識庫的理想技術。本文在分析物流信息化的需求和現狀之后,指出了知識庫在物流行業中的作用和地位;在研究了知識庫與物流知識庫相關理論和技術的基礎上,建立了一種結合本體和SOA技術的物流知識庫模型,并實現了系統的關鍵功能。但是目前所做的工作還不徹底,有許多問題值得進一步研究,進一步對知識庫系統的完備性進行驗證,系統的細節還需進一步的研究,也需要在實際應用中得到更好的完善。
參考文獻:
[1]國家發展改革委員會,國家統計局,中國物流與采購聯合會.2006年全國物流運行情況通報[EB/OL].(2007-0510).http://www.ndrc.gov.cn/zjgx/t20070315_121530.htm.
[2]WHITE C C III.A survey on the integration of decision analysis and expert systems for decision support[J].IEEE Trans on Systems, Man and Cybernetics,1990,20(2):358-364.
[3]RAPHAEL M J,DELOACH S A.A knowledge base for knowledgebased multiagent system construction[C]//Proc of IEEE National Aerospace and Electronics Conference.Dayton:IEEE,2000:383-390.
[4]GUO J,LUQI.A survey of software reuse repositories[C]//Proc of the 7th IEEE International Conference and Workshop on the Engineering of Computer Based Systems.Edinburgh: IEEE,2000:92100.
[5]DOCTOR G,RAMACHANDRAN S.enabling knowledge sharing with an institutional repository[C]// Proc of the 7th IEEE International Conference on Advanced Learning Technologies.Southampton:IEEE,2007:432-433.
[6]QI Xu.A framework for logistics strategy planning based on knowledge syntheses[C]//Proc of International Conference on Computational Intelligence and Security.Guangzhou:IEEE,2006:933-936.
[7]HSU Pangyen,MA Shaoping,SUN Fuchun,et al.Implementation of a knowledgebased system for automatic part numbering in a logistics information system[C]//Proc of IEEE International Conference on Service Operations and Logistics, and Informatics.Shanghai:IEEE,2006:10241029.
[8]GIANNOTTI E,NEGRON R,ANTZOULIS T.An integrated information system approach for performance based logistics[C]//Proc of IEEE Systems Readiness Technology Conference. Anaheim:IEEE,2006:336-340.
[9]袁磊,張浩,陳靜,等.基于本體化知識模型的知識庫構建模式研究[J].計算機工程與應用,2006,42(30):65-68,104.
[10]Description of OIL[EB/OL].[200711-22].http://www.ontoknowledge.org/oil/.
[11]OntoEdit[EB/OL].[200711-22].http://www.ontoknowledge.org/tools/ontoedit.shtml.[12]ZIGA G L.Ontology:Its transformation from philosophy to information systems[C]//Proc of the 2nd International Conference on Formal Ontology in Information Systems.New York:ACM Press,2000:187197
[13]LIU Xiaoli,WU Guoqing,YANG Min.Building knowledge base from semistructured data[C]//Proc of International Conference on Machine Learning and Cybernetics. Hong Kong:IEEE,2007:839-843.
[14]XU Binfeng,LUO Xiaogang,PENG Chenglin,et al.Based on ontology:construction and application of medical knowledge base[C]//Proc of IEEE/ICME International Conference on Complex Medical Engineering.Beijing:IEEE,2007:15861589.
[15]范黎林,王曉東,屈喜龍.基于Ontology知識庫系統建模[J].計算機應用研究,2006,23(5):134136.
[16]何慶,湯庸,黃永釗.基于本體的法律知識庫的研究與實現[J].計算機科學,2007,34(2):175177.
[17]NEWCOMER E,LOMOW G.Understanding SOA with Web services[M].[S.l.]:AddisonWesley Professional,2004.
[18]McINTOSH,ROGER L.Opensource tools for distributed device control within a serviceoriented architecture[J].Journal of the Association for Laboratory Automation,2004,9(6):404-410.
[19]KNIGHT,W.Security:builtin or boltedon to the SOA?[J].Infosecurity Today,2005,2(2):38-40.
[20]廖述梅.基于本體的語義標注原型評述[J].計算機工程與科學,2006,28(9):123125,128