劉 麗,宮霞霞
(成都大學工業制造學院,四川成都 610106)
在離散制造業中,數控編程一直是目前我國數控機床應用的瓶頸之一.對于采用數控加工的復雜零件來說,編制出正確的數控程序是保證數控加工質量的基礎.面對復雜零件數控編程的知識復雜性、形式多樣性、動態實時性等特點,傳統的數控編程決策已無法滿足現代制造業發展的需要.隨著計算機技術的飛速發展,多智能體系統(multi-agent system,MAS)已成為計算機自動化領域的關鍵性技術之一,并在相關領域得到廣泛的應用[1-3].基于此,本文建立了一種基于多智能體技術的復雜零件數控編程系統模型.該系統模型通過黑板模型集成了包含在工作流管理過程中的編程語言、加工策略、圖形計算、仿真模擬、程序編輯和線程通信6個智能體,同時,提出了“CBR+RBR"混合推理模型的Agent結構及其實現方法,并通過黑板機制完成了不同Agent系統之間的通訊和協作.
在人工智能領域中,Agent被定義為具有感知能力、問題求解能力和與外界進行通信能力的實體,是完全自治的或者半自制的[4],并具有自主性、通信能力、感知能力和響應能力、推理和規劃能力等特性.多智能體系統(MAS)是一個分布式的智能體系統,代理彼此分工,互相協作.
根據復雜零件的數控編程特點以及多Agent系統的特點,本研究建立了基于多智能體的復雜零件數控編程系統模型總體框架結構(見圖1),它采用瀏覽器/服務器/數據庫模式(Browser/Server/Database)的3層網絡體系結構,由系統資源層、編程控制層和multi-agent執行層組成.

圖1 基于多智能體的復雜零件數控編程系統模型示意圖
工作流管理Agent是整個系統的進程管理中心.在多Agent系統中,各Agent是自治的,Agent之間只能通過通訊和改變環境達到相互影響的目的,Agent自身的行為最終是由其自己決策的.復雜零件的工作流管理Agent通過黑板模型對編程語言A-gent、加工策略Agent、圖形計算Agent、仿真模擬A-gent、程序編輯Agent和線程通信Agent進行集中控制,以實現各個Agent之間進行信息共享和交換.
近年來,國內外開發的 Pro/ENGINEER、UG (Unigraphics)、UGⅡ和Visual C++編程語言等軟件,都是性能較完善的數控編程一體化軟件,可以面向眾多的數控機床和大多數數控系統.為實現面向任務和知識的數控編程語言Agent,本研究選擇Microsoft的Visual C++編程語言作為人工智能和智能控制用編程語言.
加工策略Agent是根據編程員輸入的有關參數與指標,確定各工步及加工參數,并確定數控加工策略Agent.根據編程員輸入的材料、加工精度要求等,以及刀庫數據庫的刀具信息,智能地確定出合理的加工參數,如選擇合適的刀具、適當的進給率、切削速度、主軸轉速及合理的工步流程,同時,根據需要調整刀庫.
圖形計算Agent,即圖形編輯和坐標計算A-gent,是根據零件圖的幾何尺寸、確定的工藝路線及設定的坐標系,計算零件粗、精加工運動的軌跡,得到刀位數據.圖形計算Agent的實現由編程員輸入刀具軌跡,軟件系統自動計算全部節點坐標,以形成G00、G01、G02、G03、G8X等指令參數.
仿真模擬Agent,即仿真模擬NC程序Agent.仿真模擬Agent對給定NC程序執行過程的模擬,由編程員給出與其相應NC程序相關的零件外形與尺寸,以單步/自動方式仿真模擬加工過程.在有CRT圖形顯示的數控機床上,可用模擬刀具與工件切削過程進行檢驗.
程序編輯Agent是編程員根據仿真模擬NC程序的結果對NC程序直接進行必要的調整、打印輸出等操作.
Windows多線程技術與串行通信是數控系統的主要通訊程序,串行通信技術已在DNC通信系統中得到了廣泛的應用.各個應用Agent之間通過Internet或Intranet網進行通信與合作,在網絡上傳輸和存取數據時的安全問題由線程通信Agent統一負責.
在復雜零件數控編程系統中設置的每一個A-gent都具有一定的推理能力.因此,在完成一個A-gent推理過程時,必須首先建立推理模型.基于規則推理(rule based reasoning,RBR)稱為基于規則的專家系統,是只依靠專家的經驗獲得規則,而基于實例推理(case based reasoning,CBR)是人工智能發展過程中涌現出來的區別于 RBR和基于模型推理(MBR)的一種推理模式.在基于實例的系統中,知識的基本單元是實例而不是規則,可以通過自己的方法來獲取知識而不必從專家那里獲取知識.
將CBR與RBR 2種人工智能技術相結合可以提高混合推理的效率.本系統在推理機制設計上采用了“CBR+RBR"混合推理模型.
系統在使用“CBR+RBR"進行推理之前,首先要對每一個Agent需要解決的問題進行分析,并建立推理模型,然后根據專家的知識和經驗建立推理所需的規則庫和知識庫[5].根據上述特點,本文建立了復雜零件數控編程的Agent結構(見圖2).

圖2 復雜零件數控編程的Agent結構示意圖
在圖2所示的復雜零件數控編程的Agent結構中,每一個Agent都具有自己的知識庫(知識模板)、規則庫和推理機,推理機通過“CBR+RBR"混合推理,利用獲得的信息和本身的信息進行推理形成數控編程知識模板,同時,將推理結果(NC程序)傳送到全局黑板中與其他智能體進行分配和共享.
推理模型的知識表達要在外部問題域與Agent內部符號推理系統之間建立起聯系.合理的知識表示模式應滿足表達充分、便于推理、方便管理和易于理解等要求[6].“CBR+RBR"混合推理的知識表示方式為:知識庫系統中規則和實例采用統一的編碼機制,以提高CBR的主動性和高效性;用RBR優化CBR的質量,以提高實例修改的自動化水平.
2.3.1 RBR推理模型的規則表示.
在RBR中,知識單元是規則,描述信息實體之間的關系.規則表示符合人類常規的思維,可用不完全的啟發式知識解決特定問題,特別適合于需要大量經驗性知識求解的復雜零件數控編程.目前,大多采用產生式規則表示方法,其一般形式為:
IF(條件1);……;IF(條件n);
THEN(結論,CF)(n>1)
其中,CF表示規則的可信度,指出規則為真的可信程度.
2.3.2 CBR推理模型的實例表示.
在CBR中,知識的單元是實例,是數控編程過程模型的具體體現.這里,復雜零件數控編程實例[7]的描述為,

其中,ID為實例的唯一標識碼,Index為實例檢索,Content為復雜零件數控編程實例的內容,其由復雜零件的名稱、所屬類別、主參數規格等組成,形成數控編程知識模板,PCS為零件控制結構,表示裝配信息和附件類型.
在實際應用中,我們采用Java方案和IBM公司的Aglets技術相結合的方法,利用Java多媒體框架JMF開發出集音頻、視頻為一體的,包含黑板、在線討論等協同功能的工具,同時,根據數控車編程與操作工藝通過成都數控機床產業集群論壇使用黑板的派遣—回收機制查詢到相對應的階梯軸NC程序模板,完成了階梯軸的計算機模擬仿真和優化NC程序(見圖3).

圖3 階梯軸數控編程NC程序
本文設計了一種基于多智能體的復雜零件數控編程系統,通過因特網可將這些不同智能體聯系在一起,實現多機分布計算,提高了編程效率,而且便于數控編程管理者參與管理和決策.將多智能體技術應用到復雜零件數控編程中是一項很有意義的工作,隨著多智能體技術的日趨成熟,其必將對數控編程的分布式協同模式起著較好的促進作用.實際應用表明,采用多智能體技術對復雜零件數控編程進行管理不僅能夠提高編程的自動化程度,而且能夠有效反映數控編程員的管理思想,為數控編程系統管理提供決策支持.
[1]Adler J L,Blue V J.A Cooperative Multi-agent Transportation Management and Route Guidance System[J].Transportation Research(Part C),2002,10(5-6):433-454.
[2]Kosonen I.Multi-Agent Fuzzy Signal Control Based on Realtime Simulation[J].Transportation Research(Part C),2003,11(5):389-403.
[3]王俊松,崔世剛.Muti-Agent技術及應用[J].計算機工程與應用,2003,40(18):61-66.
[4]朱淼良,楊建剛,吳春明.自主式智能系統[M].杭州:浙江大學出版社,2000.
[5]徐麗群.基于多智能體技術的出行誘導管理系統研究[J].東南大學學報(自然科學版),2004,11(6):814-818.
[6]Parrott L,Lacroix R,Wade K M.Design Considerations for the Implementation of Multi-Agent Systems in the Dairy Industry[J].Computers and Electronics in Agriculture,2003,38(2):79-98.
[7]賈維,張勝文,張亮,等.數控編程KBE系統的基礎性使能技術研究[J].CAD/CAM與制造業信息化,2008,15 (7):88-91.
[8]周長春,殷國富,胡曉兵,等.面向復雜機械產品開發的多Agent系統研究[J].高技術通訊,2008,18(8):830-836.