蔣丹鼎,趙 穎
(1.國防科技大學 系統工程學院,長沙 410073;2.中國航天電子技術研究院,北京 100094)
隨著市場國際化以及企業間競爭的加劇,企業必須有快速開發新產品的能力以應對市場需求的不斷變化。相關研究表明[1],新產品開發中約80%的設計內容需要參考已有的設計知識或設計成果。從系統工程和已有設計成果重用的角度出發,方案設計可以理解為是對已有設計結果中要素的篩選、重用和創新[2],而要素的篩選往往使用已有設計結果中的關鍵要素,因此提取出已有設計中存在的關鍵要素并發掘關鍵要素間的關聯對提高新設計的質量和效率具有重要意義。
由于當前產品的設計復雜高、更新換代快,發掘已有設計結果中的關鍵要素面臨兩個方面的問題。一是在產品設計結果中包含要素繁多,難以分析其中要素的關鍵性;二是產品設計結果中要素間的關聯關系交錯復雜,難以梳理不同要素間的相關程度。在以往的關鍵要素提取研究中,MacCalman等人提出了從一個集成系統模型的試驗設計中提取關鍵要素的MBSE方法論[3],利用試驗設計探索更大的設計空間并了解每個要素對結果產生的影響,此方法需要設計試驗,實施難度較高;徐蘭依據貝葉斯原理并利用經驗數據集先驗概率得到復雜質量系統中的關鍵質量要素[4];MaZ采用從機械對稱結構設計實例數據庫中挖掘關聯規則來實現對結構對稱的設計知識在新的設計中的重用[5]。但這兩種方法一方面需要使用大量結果數據,難以適應產品迭代的速度,另一方面忽略了關鍵要素間的相互聯系,不利于關鍵要素的組合使用。
綜上所述,產品的方案設計結果從整體上可以視為由設計要素間相互作用關系組成的網絡,關鍵要素和關鍵要素間關聯的提取就是從上述網絡中提取出由關鍵要素組成的子網絡。與此類似,網頁排名算法的目標是從網頁相互引用組成的網絡中提取高質量的網頁,我們可以將高質量的網頁看作關鍵要素,而把與之互聯的網頁鏈接關系看作關鍵要素與其他要素之間的連接。同時,基于模型的系統工程(model-based systems engineering,簡稱MBSE)及其標準建模語言SysML已經成為復雜產品方案設計的重要方法[6~8],因此本文以產品SysML模型中的關鍵要素提取為目標,借鑒面向互聯網互聯網頁排名算法PageRank,提出了設計關鍵要素的提取算法KEERank(Key Elements Extraction with PageRank)。
Google PageRank算法的思想精華在于:將一個網頁級別(重要性)的排序問題轉化成了一個公共參與、以群體民主投票的方式求解的問題,網頁之間的鏈接即被認為是網頁間的投票行為[9]。產品SysML模型中關鍵要素的提取問題與網頁排序問題相同的是需要評價網絡中節點重要性,與網頁排序問題不同的是產品SysML模型中模型元素間的關系復雜多樣,難以評估不同關系對模型元素重要性的影響。根據上述分析,基于PageRank的產品SysML模型關鍵要素提取方法主要需要解決以下兩個問題:一是如何判斷產品SysML模型中模型元素間不同關系對模型元素重要性評估的影響程度,二是如何在已知不同關系對模型元素重要性評估影響大小的情況下對節點重要性進行合理評估。
KEERank方法共包含兩個步驟,第一步是將產品SysML模型轉化為有向加權圖,第二步是利用有向加權圖評估模型元素的重要性進而獲取其中的關鍵要素。產品SysML模型M可以描述為M=(S,E),其中S表示模型元素的集合,E是模型元素間關系的集合。產品SysML模型對應的有向加權圖即系統加權圖可以描述為WG=(S,E,W),其中S和E與M中的S和E相同,W表示權重集,是E中關系元素所對應的關系強度。關系強度的定義如下:
定義1:關系強度(linkingstrength,簡稱ls)是模型元素間特定類型關系e的連接強度,說明元素之間關聯關系的強弱。
對于任一類型的模型元素間關系e∈E都有一個強度描述函數來反映其連接強度:ls(e)=a,a∈(0,1]為常數,表示e的關系強度值。
KEERank方法的第一步通過計算模型元素間不同關系類型所對應的關系強度,從而將產品SysML模型M轉化為系統加權圖WG。為了分析模型元素間不同關系類型所對應的關系強度,本文運用層次分析法對不同關系所對應的關系強度進行計算。
KEERank方法的第二步是要解決系統加權圖中節點重要性的評估問題。關于有向加權圖中節點重要性的評估方法,已經存在相關研究[10],本文結合關鍵要素提取的特點與該研究成果,基于PageRank算法評估產品系統加權圖中的模型元素的重要性。
產品SysML模型中的九種視圖可以分為需求、功能和結構三個部分[11](如圖1所示),需求部分描述了產品的存在價值,行為部分說明了產品功能的實現形式,結構部分體現了產品的組成元素及其元素間的作用關系。三部分雖然各有側重點,但是結構部分作為行為的載體以實現產品功能,反映了設計結果中最根本的內容,因此下文將針對產品SysML模型中的結構部分進行分析。

圖1 產品SysML模型中所包含的視圖分類
產品SysML模型到系統加權圖的轉換需要首先從模型M中獲取元素集合S及其關系集合E,然后評價不同模型元素間關系的關系強度并進而得出系統加權圖WG中的W集合中的元素,進而得到系統加權圖WG。為了探討產品模型結構部分中模型元素間的相關關系,本文根據文獻[12]將SysML結構圖中模型元素間關系表達總結為5種,如表1所示。
根據表1,本文對不同模型元素間關系定義及其方向的說明如下:交互關系記作ia(si,sj),根據建模時對應的接口或流屬性來確定,方向與建模時表達方向一致;約束關系記作cs(si,sj),方向為雙向關系;引用關系記作rt(si,sj),方向與建模時表達方向一致;分解關系記作di(si,sj),在分解關系的提取中,復合關聯關系根據建模方向拆解為一對或兩對關系,每個結構屬性與模塊發生雙向關系;依賴關系記作ro(si,sj),在關系提取中,將受某一模型元素影響的模型元素與該模型元素建立依賴關系,方向與建模時表達方向一致。模型元素si指向sj的類型為f的關系可以描述為其中
為了獲得上述五種關系對應的關系強度,采用層次分析法實現計算,步驟如下:
步驟1:構建遞階層次結構模型。如圖2所示,將目標層設為確定不同關系類型的關系強度,方案層即為五種關系,在策略層提出2個評價準則:約束強度F1和元素間距離F2。約束強度指的是關系能夠體現的兩個元素間的相關程度,元素間距離指的是關系的靈活程度。以分解關系和交互關系為例,分解關系只能作用于有從屬關系的要素之間,而交互關系可以聯系不同層級的系統,相較來說,分解關系的約束強度高,交互關系能夠約束的模型元素間距離大。
步驟2:用成對比較法和1-9比較尺構造比較矩陣。評價準則F1、F2對目標的比較矩陣為A,五種關系對F1、F2的比較矩陣為

表1 SysML模型中的模型元素間相關關系提取

圖2 關系強度評估的層次結構模型圖

表2 評價因素對目標的比較矩陣A

表3 五種關系對F1的比較矩陣B(3)1
步驟3:計算單層排序權向量,并做一致性檢驗。對每個對比較矩陣計算最大特征值及其對應的特征向量,然后根據計算一致性指標比,其中n為比較矩陣中包含元素的個數。比較矩陣A為二階矩陣,滿足一致性要求,其特征向量歸一化后為w(2)=[0.75, 0.25]T。比較矩陣B1(3)和B2(3)計算結果如表所示,其中當n=5時,查表得RI=1.12,通過一致性校驗。
表4 五種關系對F2的比較矩陣

表4 五種關系對F2的比較矩陣
F2 cs ia rt di ro cs 1 1/3 1/3 5 1 ia 3 1 1 7 3 rt 3 1 1 7 3 di 1/5 1/7 1/7 1 1/5 ro 1 1/3 1/3 5 1

表5 比較矩陣B1(3)和B2(3)的權向量計算結果

表6 五種關系的關系強度
計算出模型元素間不同關系類型對應的關系強度后,根據產品SysML模型M中關系類型E獲得相對應的關系強度,即可生成系統加權圖WG中的模型元素間關系強度集合W。
根據PageRank算法的原理,評價模型元素的關鍵性必須引入鄰接矩陣,然后借助鄰接矩陣建立概率轉移矩陣Q,并迭代求解計算模型元素的重要性,最后調整權值從模型元素中篩選關鍵要素。由于產品SysML模型的特殊性,在使用系統加權圖構建鄰接矩陣時,有可能存在兩個模型元素間存在兩個及兩個以上關聯的情況,因此本文引入了貢獻度的概念來描述鄰接矩陣中兩個模型元素間的聯系強弱。
定義2:貢獻度lss是兩個模型元素間全部關系所對應的關系強度之和,反應了模型元素間的聯系強弱,計算方式如下:

其中f(si, sj)是判斷模型元素si到sj是否存在類型為f的相關關系,若存在,則f(si, sj)=1,反之f(si, sj)=0。
根據模型元素間的貢獻度計算方法將產品系統加權圖轉化為鄰接矩陣M。

以液壓缸系統加權圖中的部分為例,其鄰接矩陣的構建方法如圖3所示,其中鄰接矩陣第i行第j列對應的值為以第i行對應元素為起始模型元素,以第j列對應元素為目標模型元素的所有模型元素間關系對應的關系強度之和,若關系強度為0,則此處取值為1/n。

圖3 液壓缸系統加權圖模型(部分)到鄰接矩陣的轉換
算法:基于PageRank的關鍵要素提取。
輸入:系統加權圖WG。

步驟3:根據式(3),迭代計算設計元素的重要度。

其中,σ(0<σ<1)為阻尼系數,n是模型元素的總個數,E為元素全為1的n階方陣。計算時取NR0為元素都為1/n的1×n階矩陣。
每次迭代過程會更新NR矩陣的值,等到前后兩次NR值的差值小于某個接近0的數時,結束迭代過程,此時NR值對應了要素的重要程度。
步驟4:通過動態設置閾值σ,從要素中篩選不同層次的關鍵要素。

表7 液壓缸模型元素間的關聯關系局部
以單桿活塞式液壓缸的SysML模型[13,14]為例,本節首先從系統模型中獲取模型元素集合S和模型元素間關系集合E,依據模型元素間不同關系種類對應的關系強度將SysML模型轉化為系統加權圖,然后根據模型元素間的貢獻度計算方式求解出液壓缸系統的鄰接矩陣和鄰接矩陣對應的概率轉移矩陣,最后使用迭代計算的方式求解出液壓缸系統中模型元素對應的重要度矩陣。其中關鍵步驟及對應結果如下。
分析單桿活塞式液壓缸的SysML模型提取到的部分模型元素及模型元素間的關系如表7所示。
計算模型元素間的貢獻度,并進一步得到鄰接矩陣圖如表8所示。
根據鄰接矩陣構建概率轉移矩陣Q,并根據基于PageRank的關鍵要素提取算法評價模型元素的重要性,得到模型元素對應的NR值,如表9所示。從表8中可以看出,導向套是當前液壓缸系統中重要性評價最高的模型元素,這也反應了此液壓缸擁有較高精度的特點。
隨著方案設計過程的深入,設計者對當前系統的關注將逐漸偏移到重要度較低的要素。因此,我們可以通過動態調整關鍵要素的篩選閾值σ,查看不同層級結構中的關鍵要素。σ越小表示要查看設計要素的重要性越低,就越依賴于其它要素或者該要素對其他要素的影響越弱。例如:圖4和圖5是σ分別取=1.1和0.55所獲得的關鍵要素可視化圖。在圖4中,壓力P1、P2并不屬于關鍵要素,隨著設計進程的推進,取較低的閾值之后,在圖5可以看見這兩個要素。

圖4 σ=1.1時液壓缸SysML模型中關鍵要素的分布圖

圖5 σ=0.55時液壓缸SysML模型中關鍵要素的分布圖

表8 液壓缸產品對應的鄰接矩陣(部分)

表9 液壓缸系統模型模型元素及其NR值(部分)
同時,根據鄰接矩陣中設計要素的關聯關系,我們可以快速地從歷史設計結果中取得與關鍵要素相關的其他設計要素,更好地分析設計變更的傳播影響,從而節約設計者時間,加快方案設計的進程。例如,從滿足液壓缸推力設計的角度出發,在表8中提取所有與推力相關的關鍵要素及其對應的貢獻度如表10所示。

表10 與推力元素F1相關的關鍵要素及其貢獻度
本文提出了一種關鍵要素的提取方法KEERank,通過將產品SysML模型轉化為系統加權圖,然后利用考慮權值的PageRank方法來提取關鍵要素。與仿真方式或者根據使用結果反饋結合概率推算的方式相比,KEERank方法一方面不需要進行試驗設計或者收集反饋信息,另一方面求解速度與上述方法差異不大,因此從總體上來說時間短、效率高,并且對使用者的要求低,只要具有相應的歷史產品SysML模型,就能將模型元素的重要程度評估出來。通過實例驗證可以發現,關鍵要素的提取能夠為設計人員提供了思考的切入點和優化的核心,幫助設計者快速理解并重用已有設計結果。
本文中的關鍵要素挖掘主要針對系統模型中的結構設計部分,而需求設計與行為設計都尚未涉及,未來需要全面研究系統模型,能夠在不同的設計階段為設計人員提供相應的關鍵要素。此外本文中對于關鍵要素閾值的設定尚無有效的方法,有待進一步研究。