開放式機器人智體
計算機軟件技術
作者:武丹鳳 曾廣平 肖超恩 張青川
摘要:針對機器人功能的更新、修改、升級、維護等工作,普遍隻能采用離線、靜態方式進行的問題,將“軟件人”引入機器人平台中,搭建了以宿主“軟件人”為管理中心的機器人係統架構,並重點對宿主“軟件人”進行了研究。首先,構造了宿主“軟件人”的體係結構;然後,提出了宿主“軟件人”知識行為一體化描述模型,並對其知識模型進行了基於數據結構的構造和實現,對其主要服務類行為給出了相應的設計規範及算法的參考實現;最後,句子不通順,前麵說平台,後麵是係統,將平台和係統合一嗎請核實描述,此句中的機器人平台改為機器人係統。將引入宿主“軟件人”的機器人係統與網絡平台中的“軟件人”係統進行合一,經測試,機器人功能的在線、動態更替取得成功,什麼意義,且此句過於抒情,摘要應簡潔明了將”引入宿主‘軟件人’的意義得以實現“這句去掉。同時也驗證了對宿主“軟件人”設計、實現方法的正確性和可行性。
關鍵詞:機器人;宿主“軟件人”; 知行模型;“軟件人”係統;合一係統
中圖分類號: TP181 文獻標誌碼:A
英文摘要
Abstract:To solve the problems of updating, modifying, upgrading and maintaining the function of robot by offline and static method, SoftMan was introduced for robot platform, and the architecture of robot system, whose managing center is host SoftMan, was built. The host SoftMan was mainly researched. Firstly, the architecture of host SoftMan was constructed. Then the descriptive unification model of knowledge and behavior of host SoftMan was put forward, the knowledge model was constructed and implemented based on data structure, and the design specifications and reference realization of the algorithm were given for its main service behaviors. Finally, the robot system was unified with the SoftMan system. Through the test, the function of robot was successfully replaced online and dynamically, implementing the meaning of the introduction of host SoftMan and verifying the correctness and feasibility of the method of designing and implementing the host SoftMan.
英文關鍵詞
Key words:robot; host SoftMan; model of knowledge and behavior; SoftMan system; syncretic system
0 引言
目前,機器人控製結構的開放化、模塊化[1],機器人控製器的標準化、網絡化以及PC(Personal Computer)化已成為機器人領域的研究熱點。實際上,早在20世紀90年代初開始,美國三大汽車製造公司就已聯合發表了它們對未來開放式模塊化控製器的需求白皮書,提出了“開放式、模塊化體係結構控製器(Open Modular Architecture Controllers,OMAC)”的概念,並於1997年成立了OMAC用戶組織[2]。歐洲共同體的22家控製器開發商、機床生產商、控製係統集成商和科研機構於1990年聯合發起“自動化係統中開放式體係結構(Open System Architecture for Controls within Automation System,OSACA)的研究和開發”的倡議[3]。近二十幾年間,機器人係統的開放可重構研究更是受到了極大的重視。White等[4]從物理運動學理論的角度證明了任意尺寸自重構機器人的存在性,並於2005年設計了Molecubes模塊化機器人;Ferenc等[5]提出了一種實時的基於公共對象請求代理體係結構 (Common Object Request Broker Architecture,CORBA)協議的分布式機器人控製係統;麻省理工學院(Massachusetts Institute of Technology, MIT)的Gilpin等[6]於2006年設計了Miche晶格式模塊化機器人,實現了機器人任意形狀的組建。國內對機器人的研究起步相對較晚,但在開放可重構機器人研究方麵也取得了一定的成果。劉明堯等[7]提出一種基於多智體(Agent)的機器人控製方法;張玉華等[8]提出了一種新型模塊化可重構機器人(Hit Modular Selfreconfigurable Robot,HitMSR)係統的硬件和軟件係統實現方案;謝峰等[9]以異構多Agent 係統(MultiAgent System, MAS)理論為基礎,提出了一種可在多個層次上動態重構的控製係統設計方案。
“軟件人”[10]是近年來在軟計算、智能化領域提出並發展較快的一個課題方向。它是將人工生命、人工社會研究方法與現有(多)智體(Agent)[11-12]的研究成果結合起來的、網絡世界中的虛擬機器人,是“智體(Agent)”和“對象”的升華,比通常的Agent更富有“人工生命”的特性和活性,具有感知、通信交互、任務分解、局部規劃、任務分配、學習、控製與決策、進化(自適應)等功能,其中學習與進化特征是其區別於Agent的關鍵所在[13]。作為人的“自然生命”在軟件世界裏的模擬、延伸和擴展,“軟件人”能進入、遷移並駐留各種計算機信息網絡中,完成計算、通信等各種信息處理工作,因此“軟件人”屬於軟件範疇,它需與類人機器人(humanoid robot)有所區分。類人機器人是外觀和功能與人一樣的智能機器人,通常是由傳感器、微型處理器等組建搭建的機器人係統,它包含了硬件和軟件兩個範疇。
普通的機器人控製係統通常采用的是封閉式的結構,程序改動困難,無法實現機器人功能的在線實時更新。針對這一問題,本文擬將宿主“軟件人”和附體“軟件人”[14]引入到機器人的控製係統中,通過附體“軟件人”與宿主“軟件人”配合工作來代替普通的機器人控製係統,為機器人與PC機上的“軟件人”係統[15]之間構造一個對等、柔性、動態的協同模式,實現機器人控製係統的開放化、標準化以及模塊化。“軟件人”係統通過遷移不同的附體“軟件人”附著到機器人控製係統中,實現對機器人功能的動態配置與在線重構,進一步提升機器人係統的柔性智能能力,改善其環境的適應協調能力。引入的宿主“軟件人”不僅是機器人係統的信息處理和管理中心、PC平台與機器人交互的樞紐,同時需為應用層的附體“軟件人”搭建運行支撐環境。此時機器人蛻變為傳感載體和末端執行機構平台,如圖1所示。
本文將重點對宿主“軟件人”進行研究。首先依據“軟件人”構造分層體係理論[10],對宿主“軟件人”的體係結構進行設計;然後,以“軟件人”知行模型[14]為指導提出宿主“軟件人”的知識行為一體化描述模型,並對其知識模型進行實現研究,對相關服務行為進行描述及算法研究;最後,通過測試用例,驗證在以本文提出的宿主“軟件人”的設計理論與實現方法的基礎上,以宿主“軟件人”為管理中心的機器人平台能否實現上文提出的對機器人功能的在線重構,是否真正實現引入的宿主“軟件人”在機器人平台中的角色功能。
1 宿主“軟件人”模型設計
1.1 宿主“軟件人”體係結構設計
宿主“軟件人”為機器人平台的守護、信息處理和管理中心,根據其在合一係統機器人平台中的角色,結合“軟件人”構造分層體係理論[10],對其體係結構的設計如圖2所示。
各層功能定義如下。
本體核心層 組成“軟件人”最基本的部分。它包括“軟件人”的構造數據結構、本體控製機製。相應的構造數據如“軟件人”腦、眼、耳、手、腳及其基本動作機製。本體的控製如本體各部分的驅動、“肢體”的協調、信息的刷新。
守護內核層 負責注入到機器人係統中,改變係統的啟動流程,並負責初始化相關數據,使得機器人係統能正確運行。
宿主抽象層 宿主“軟件人”不僅要能對機器人的硬件設備進行控製,同時,還需要在此基礎上對其進行抽象與封裝,使得外界能了解機器人提供的行為功能信息。
節點數據層 節點數據層負責機器人社區內活動的附體“軟件人”信息和環境資源信息的管理及維護。此層是機器人社區管理的關鍵依據,同時,此層還存儲由管理“軟件人”或社會協調“軟件人”向機器人平台下達的相關策略信息。
內外交互層 宿主“軟件人”既有與外地聯絡的職責,也有本地交互的義務。內部交互就是為完成與附體“軟件人”的交互而設立的,通過此層接受內部信息,同時向附體“軟件人”傳遞外來的信息。外部交互是指與外社區的信息交流,包括與某個社區“軟件人”的交流、與某個社區管理機構的交流或與“軟件人”社會協調機構的交流。此外,內外交互層內部還構成出/入兩個消息隊列。
遷移接收層 宿主“軟件人”需要搭建一個運行支撐環境供附體“軟件人”控製機器人完成任務。
社區決策層 社區決策層是“軟件人”對本地社區實施行動的決策依據和決策算法。但是考慮到機器人端資源的緊張性以及響應的實時性要求,本文將宿主“軟件人”社區決策層的功能弱化,它隻負責任務調度以及執行管理“軟件人”的決策。
節點協調層 執行管理“軟件人”或社會協調“軟件人”的協調策略,從而保證局部與整體、局部與局部的協調運行、效益最大化與整體最大化。
1.2 宿主“軟件人”知識行為一體化描述模型
機器知行學是研究使機器具有一定“知行能力”的學科[16-17],其理論核心是“信息-知識-智能的轉換與統一理論”,從機器知行學在Agent技術[18]、自然語言處理[19]、情感計算[20]等方麵的應用,可以認識到,從擬人角度出發的,生存於網絡環境下的虛擬機器人——“軟件人”的設計與實現也應該遵循機器知行學中的相關規律。關於“軟件人”的知行模型理論在文獻[14]中已有詳細論述,本文依據宿主“軟件人”的體係結構,將“軟件人”知識行為一體化描述模型[14]應用於宿主“軟件人”資源及服務的抽象建模中,建立了一種結構化、易於動態維護和調整的宿主“軟件人”知識行為一體化描述模型,如圖3所示。白色節點為普通的知識節點,節點名稱是用戶自定義的;灰色節點為係統的保留節點,節點名稱不可變。