摘要:針對虛擬協同設計中的設計沖突問題,提出了基于角色和時序式的協同設計沖突解決機制。在分析虛擬協同設計環境特點的基礎上,根據沖突產生的原因將其劃分為不同的種類。對協同設計中的沖突行為進行建模,引入模糊數學中隸屬度的概念來表示不同角色的優先級,并通過矩陣運算來確定角色對模型的操作權。介紹了角色的管理及變更機制,在虛擬協同設計環境中得到了應用驗證。
關鍵詞:沖突解決;角色;協同設計
中圖分類號:TP391.9文獻標志碼:A
文章編號:1001-3695(2008)05-01477-03
協同設計是計算機支持的協同工作(CSCW)的一個重要應用。它是連接研究人員、技術專家、設計師、制造商及用戶的先進工程環境的一個重要組成部分[1]。通過協同設計,可以有效地降低產品成本,縮短設計周期,增強產品的市場競爭能力。但是在協同設計的過程中,由于各個設計人員領域知識的不同、設計意圖不同、某一參數與約束相矛盾以及對資源的爭奪等,極易產生各式各樣的沖突。從這個角度來說,協同設計過程就是沖突產生與消解的過程。因此,如何進行沖突的協調從而維護設計的一致性是協同設計的一個關鍵問題。
常用的沖突消解策略有基于并發控制的沖突消解、基于知識的沖突消解和基于可信度的沖突消解。常用的并發控制方法有加鎖法、集中控制、事務機制、依賴檢測等。基于知識的沖突消解是利用已有的知識及規則,判斷協同設計過程中是否產生沖突,并用相應的知識及規則消解設計沖突。基于可信度的沖突消解是對產生沖突的設計操作進行可信度評價,并對操作進行可信度高低排序,執行可信度高的操作,從而化解設計沖突。目前對協同設計過程行為沖突消解研究已經取得了不少成果,如基于實例的沖突消解法、最優化問題的沖突解決、基于角色的沖突消解法、基于代理的沖突協商機制研究、基于模糊評價的沖突仲裁法等[2~6]。本文從分析虛擬協同設計環境中沖突產生的原因及特點入手,對協同設計過程進行建模研究,結合具體系統的需要提出相應的解決方案及算法,從并發控制角度研究了基于角色的虛擬協同設計沖突解決機制,從而實現了對整個協同設計過程的協調與管理。
1虛擬協同設計環境及其沖突
1.1虛擬協同設計環境的特點
虛擬協同設計環境(VCDE)是利用虛擬現實技術,提供一個虛擬、直觀的設計環境。通過該虛擬環境異地分布的不同學科的設計團隊,可以同時瀏覽一個或一組零件的三維模型,并能夠操作模型進行干涉檢測,與相鄰零件進行預裝配,對零件模型的三維造型從不同角度、不同特性進行分析評價,并與其他設計人員進行實時的信息交流,提出修改意見。利用虛擬協同設計可以有效地提高產品的設計質量,縮短設計周期[7]。虛擬協同設計環境除了融入虛擬現實技術的三個重要特點,即交互性(interactivity)、沉浸感(immersion)和想象性(imagination)[8]之外,還有下述特點:基于這種虛擬環境,設計者之間可以直觀地瀏覽三維零部件,加強設計者之間設計思想的交流,并且每個設計者之間的視點獨立,從而能夠模擬人人協同交互的過程,極大地提高設計的效率。設計者可以對虛擬產品進行分析評價、物性模擬,在一定程度上起到虛擬樣機的作用,因此降低產品成本的同時提高了產品質量。
由此可見,虛擬協同設計是一項重要的產品開發技術。其中關鍵技術有模型傳遞、數據一致性及沖突消解等。本文僅研究其沖突解決機制。
1.2沖突的分類及特點
對于協同設計中的沖突,不同的文獻有不同的解釋:
沖突是指[9]由于單個設計者內部所對應的子模型之間的約束不滿足,以及不同設計者之間對應的約束與主模型內部的約束不相等而產生的需要系統加以協調的事務。
沖突是指[10]在多個相互關聯的對象之間存在的一種不一致、不和諧或不穩定的狀態。這些對象包括設計對象、設計意圖、產品開發過程、產品開發人員、多學科專家小組等多種具有一定信息結構及相關屬性的信息實體或功能實體。
從上述定義可以看出,協同設計中引起沖突的原因多種多樣。總的來說,可以歸納為以下幾類:
a)方案沖突。它是由于設計團隊成員之間具有不同的領域知識和經驗,考慮問題的出發點不同,在產品或零部件的設計采用何種方案等問題上存在異議而產生的。其主要發生在概念設計階段,可以通過投票表決、專家評審等途徑解決。
b)行為沖突。主要產生于同步協同設計過程。如當設計者對某數據對象執行某操作時,另一設計者需要執行另一操作時就會產生行為沖突。這種沖突可以通過召開會議協商、對數據進行加鎖、對設計者限定角色等方式來解決。
c)過程沖突。主要是由于任務分配不合理,某一任務沒有按時完成,致使任務之間的邏輯順序被打亂,子任務缺乏上游輸入而不能執行。過程沖突的結果是任務延期,其解決途徑是建立工作流模型,對任務邏輯進行分析優化,找出關鍵任務,避免順序混亂。
d)數據沖突。它是指由于協同設計的數據不一致,產生前后矛盾,或者在實時協同設計過程中,不同的設計人員對某一參數、約束、功能產生不同的理解,從而使數據不統一。解決辦法是首先要維護數據的一致性;其次建立協商機制,化解設計數據的沖突。
e)資源沖突。它是由設計資源的有限性產生。在多個協作者進行協同設計時,需要使用一定的信息資源、模型資源、計算資源等。當這些有限的存在資源不能滿足協作者的需求時,便產生了資源沖突。其直接影響是阻擾設計行為的繼續進行,從而影響設計任務的按時完成。可以通過優化資源配置、合理分配資源、提高資源的利用效率等途徑來解決。
要解決協同設計中的沖突,首先必須清楚沖突產生的原因,以此來制訂相應的沖突解決機制。下面分析一下虛擬協同設計環境中沖突的特點。
本文研究的虛擬協同設計環境采用客戶端/服務器(C/S)結構。在同一時刻,虛擬環境中存在著多個設計主體及設計對象。當主體需要對對象實施操作時,在客戶端提出請求;客戶端驗證通過后,將請求通過網絡通信傳遞到服務器端,服務器經過二次驗證確認符合特定條件后,才能給予該設計主體相應的操作權。在同一時刻,當多個主體對同一設計對象提出操作請求時,就會產生沖突。在實際的網絡系統中,其特性決定了在一個特定的時刻只能傳輸特定的數據,因此服務器端接收的請求存在很強的時序關系,即在一個系統內不存在絕對同時地接收多個協同操作請求,從而使得沖突消解中只需考慮特定時間間隔內的操作請求序列即可。
2虛擬協同設計環境沖突建模
在分析虛擬協同設計特點的基礎上可以將某一協同設計行為表示為A={S,O,T}。其中:S代表行為主體;O代表對象;T代表某一時刻。當在某一特定時刻t有多個行為主體對一個對象施加操作就會產生沖突。因此考慮將行為主體劃分為不同的角色,不同的角色擁有不同的優先級;優先級高的主體可以搶奪優先級低的主體的操作權。
若在協同設計環境中有m個行為主體,n個對象,則將時刻t所有的協同設計行為At定義為m×n階矩陣:
3沖突消解實例
3.1角色的管理
虛擬協同設計環境旨在提供一個集成的數字化虛擬環境,用于支持產品開發,可以作為產品數據管理系統(PDM)的一個子系統。出于這方面的考慮,同時也考慮到系統安全性和集成性,協同設計環境人員的用戶名、密碼及其對應的角色由PDM人員角色管理模塊統一管理。客戶端登錄虛擬環境的過程由服務器端統一控制。下面由客戶端登錄的詳細流程來說明設計角色的管理機制,如圖1所示。
在進行虛擬協同設計時,服務器端先啟動,加載需要的零件三維模型,初始化協同設計行為矩陣A0和操作權矩陣A0~(λ)。準備就緒后開始偵聽客戶端的消息。客戶端登錄,用戶需要先輸入用戶名和密碼,客戶端將這些信息通過消息傳遞到服務器端。服務器端調用角色驗證模塊,通過Web服務接口,獲取該用戶在PDM系統中所對應的角色。之后,服務器端將該用戶添加到已登錄用戶列表和角色列表中,然后向該客戶端發出允許登錄的消息,并傳遞角色值。客戶端在虛擬場景中初始位置顯示本機虛擬用戶,創建本地用戶和角色列表,并將本機用戶及角色添加到列表中。接下來,服務器端傳遞項目模型、已登錄用戶名、角色列表及位置信息,客戶端更新后實現所有用戶視點的同步。客戶端的登錄完成,用戶可以用鼠標和鍵盤控制視點的移動,在虛擬場景中瀏覽并操作零件模型,與其他用戶進行交互式協同設計。
3.2角色的控制與變更
在本系統中,目前操作對象的最小單位是零件,設計主體的角色由低到高分為四種:
a)觀察者。只能在虛擬場景中瀏覽模型,提出一些修改意見,該角色可以賦予產品用戶,使用戶直接參與設計,表達其需求。
b)初級用戶。只能對部分模型進行簡單的操作。
c)中級用戶。可以對虛擬模型進行多種操作,但是不能管理本系統。
d)管理員。可以完全操作虛擬模型,對本系統的人員進行管理,解決沖突,中止某一用戶對模型的操作權,以及實時變更用戶的角色等。
相應地,在系統中將各模型對四種角色的隸屬度分別設置為{0,0.4,0.6,1},將數值代入協同設計行為矩陣。當主體協同設計時,根據相應的規則進行對應的矩陣變化即可控制操作行為。基于本系統角色與時序式相結合的沖突解決機制,當某一時刻某主體需要對某虛擬模型進行操作時,其流程如圖2所示。
如果需要對操作對象的粒度進行細分,相應地需要對角色的操作權限進行細分,即在PDM系統定義相應的角色,并在VCDE系統中定義該角色所具有的操作權限。具體地說,就是將模型對各個角色的隸屬度μS~i(oj,t)進行進一步的細分。
用戶角色的變更可以通過兩種途徑實現:在PDM系統中定義各個用戶的角色;協同設計過程中,管理員通過VCDE系統的角色變更模塊進行動態變更。
第一種途徑是進行虛擬協同設計之前,在PDM系統人員角色管理模塊中預先定義各個用戶角色;第二種則是在協同設計的過程中,根據需要,由管理員改變用戶角色。比如:觀察者需要操作模型,首先向管理員遞交申請,管理員同意之后,更改該用戶角色,相應地該用戶的μS~i(oj,t)值改變。此時VCDE系統的用戶角色列表暫時改變,而PDM系統中的用戶角色是不會改變的。比較起來,第一種途徑中設定的角色是相對靜態的,是VCDE系統角色的數據根源。第二種是動態的,在某一協同設計過程中改變的用戶角色不會改變PDM中的原有用戶角色,因而是暫時的。
這種角色管理機制很好地滿足了沖突解決的需要,基于此種機制,VCDE系統可以很方便地集成于PDM的設計工作流程中。當需要對某一零部件的模型進行協同討論設計時,啟動VCDE系統,地理上分布的具有不同角色的用戶登錄虛擬環境,可以直觀高效地對零件進行協同設計。
3.3系統驗證
VCDE系統采用Visual C++6.0編寫。圖3為某一虛擬設計過程。場景中初級用戶Zhgy正在操作H型零件,他需要操作另一軸零件與H型零件的孔進行試裝配。但是他不具備“裝配”這種操作權限,并且該軸零件的操作權由中級用戶Zhaobo控制。因此,用戶Zhgy向管理員提出操作請求。管理員更改其角色(如圖3中對話框),中止用戶Zhaobo對軸零件的操作權之后,用戶Zhgy即可操作兩個零件進行試裝配活動。
4結束語
本文在虛擬協同設計環境的基礎上,根據系統的實際需要,設計并實現了一種角色與時序式相結合的協同設計沖突解決機制。由于本系統的協同設計沖突主要表現在模型操作權的爭奪上,而本系統目前操作的最小單位為零件,故只設置了四種角色。今后隨著系統操作復雜程度的加深、操作對象粒度的細分,基于此種角色管理與控制機制可以很方便地對角色作進一步細分,從而適應需要。本例也可以作為其他需要與PDM集成系統的角色管理問題的參考。此外,角色驗證模塊可以作為一個通用模塊,用于PDM系統集中控制管理各種系統的用戶角色。
參考文獻:
[1]朱愛斌,毛軍紅,謝友柏.美國先進工程環境研究[J].機械工程學報,2004,40(8):1-6.
[2]徐文勝,常天慶,張新訪,等.并行工程基于實例的沖突解決的研究[J].中國機械工程,1999,10(4):384-386.
[3]LI Tao,XIONG Guang-leng. Conflict resolution strategy based on optimization[C]//Proc of IEEE International Conference on Systems, Man and Cybernetics.[S.l.]:IEEE,2001:1789-1794.
[4]崔仁杰,馬明.基于角色訪問的控制模型實現[J].西安文理學院學報:自然科學版,2005,8(4):57-60.
[5]LOPES F, MAMEDE N J, NOVAIS A Q,et al.Towards a generic negotiation model for intentional agents[C]//Proc of the 11th International Workshop on Database and Expert Systems Applications.[S.l.]:IEEE Computer Society, 2000:433-439.
[6]孟秀麗,億紅,倪中華,等.基于模糊評價的協同設計沖突仲裁技術研究[J].計算機集成制造系統,2005,11(3):399-404.
[7]酈仕云,寧汝新.面向虛擬環境的協同設計系統[J].航空制造技術,2006,6(6):85-88.
[8]周祖德,陳幼平.虛擬現實與虛擬制造[M].武漢:湖北科學技術出版社,2005.
[9]黃琦,孫守遷,許宇榮.基于約束的協同設計過程中的沖突協調研究[J].中國機械工程,2006,17(2):160-164.
[10]劉偉,李麗,周峰,等.協同設計中的沖突管理[J].機械科學與技術,2003,22(7):192-193.
“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”