凌 威,劉鳴飛,鮑勁松,2,3+
(1.東華大學(xué) 機械工程學(xué)院,上海 201620;2.東華大學(xué) 上海市現(xiàn)代紡織前沿科學(xué)研究基地,上海 201620;3.東華大學(xué) 纖維材料改性國家重點實驗室,上海 201620)
裝配特征是零件上具備裝配語義的一組幾何基礎(chǔ)形狀的集合,例如孔軸、凹穴和鍵槽等[1]。現(xiàn)有企業(yè)的產(chǎn)品模型主要以中性幾何模型文件格式(如STEP和glTF)儲存,大多數(shù)工業(yè)CAD軟件只能以模型樹讀取裝配體的層級結(jié)構(gòu)以及模型的幾何形狀信息。對于中性幾何模型文件格式來說,這類模型并不具有裝配特征語義,而是以點、線、面等幾何語義形式來儲存信息[2-3],難以直接從中性幾何模型中構(gòu)建出裝配特征語義。中性幾何模型通常是企業(yè)經(jīng)過脫敏處理后儲存文件的一種格式。由于在產(chǎn)品模型儲存時就會缺失裝配特征語義信息,本文所提研究方法從構(gòu)成中性幾何模型的底層點、線、面信息出發(fā),重建出中性幾何模型的裝配特征語義。
許多專家學(xué)者在特征語義重建領(lǐng)域做出了諸多努力,目前已經(jīng)存在多種特征語義重建的方法,如基于規(guī)則推理的方法和基于學(xué)習(xí)的方法?;谕评淼姆椒ㄖ饕菍ρb配體進(jìn)行區(qū)域合理分解,以圖的形式表示模型的幾何形狀,通過設(shè)計規(guī)則將圖與標(biāo)準(zhǔn)屬性鄰接圖進(jìn)行匹配從而推理出特征語義,在基于規(guī)則推理的方法中,BABIC等[4]通過邏輯規(guī)則設(shè)計將CAD模型中的幾何圖元進(jìn)行特征匹配,施建飛等[5]和JIAN等[6]通過構(gòu)建飛機結(jié)構(gòu)件模型的屬性鄰接圖進(jìn)行特征語義識別,ZHAO等[7]和WOO等[8]提出了一種基于增量體積分解和組合策略的工藝特征語義構(gòu)建方法,王軍等[9]通過提取加工特征面提出了基于痕跡的特征識別方法。基于規(guī)則的方法通常只能識別B-Rep邊界表示模型中的特征,不適用于丟失了拓?fù)浣Y(jié)構(gòu)的文件格式,且存在可擴展性差,計算消耗大,魯棒性差,難以處理復(fù)雜相交特征等問題。
基于學(xué)習(xí)的方法是將三角網(wǎng)格模型進(jìn)行體素化或轉(zhuǎn)為點云數(shù)據(jù),將數(shù)據(jù)輸入到三維深度網(wǎng)絡(luò)進(jìn)行特征學(xué)習(xí),或者通過多視圖的方法將圖片作為二維卷積神網(wǎng)絡(luò)(Contolutional Neural Network,CNN)的輸入進(jìn)行特征學(xué)習(xí)。在基于學(xué)習(xí)的方法中,ZHANG等[10]使用深度3D CNN從機械零件CAD模型學(xué)習(xí)零件的加工特征,SHI等[11]采用多視圖的方法構(gòu)建了特征識別器 MSVNET識別加工特征,高玉龍等[12]和呂超凡等[13]通過特征提取和點云深度學(xué)習(xí)對點云數(shù)據(jù)集進(jìn)行特征識別。三維學(xué)習(xí)特征的方法訓(xùn)練噪聲大,分辨率不穩(wěn)定,存在訓(xùn)練時間較長以及局部信息丟失等缺點。二維學(xué)習(xí)特征雖然減少了訓(xùn)練時間,但是在復(fù)雜場景下會出現(xiàn)物體的物理干涉或者遮擋現(xiàn)象,無法學(xué)習(xí)模型內(nèi)部的特征。
知識圖譜作為一種具有圖結(jié)構(gòu)的語義網(wǎng)絡(luò)[14],以語義三元組(“實體-關(guān)系-實體”與“實體-屬性-值”)的形式簡潔、直觀地描述信息元素及元素間的關(guān)系[15-17]。知識圖譜能夠高效地處理具有復(fù)雜語義關(guān)系的數(shù)據(jù)[18],可以有效地表示中性幾何模型的點、線、面語義信息。圖匹配神經(jīng)網(wǎng)絡(luò)是一種用于圖數(shù)據(jù)的深度學(xué)習(xí)模型,能夠?qū)W習(xí)圖之間的相關(guān)性和相似性[19-20]。中性幾何模型通常是企業(yè)經(jīng)過脫敏處理后儲存文件的一種格式,由于在產(chǎn)品模型儲存時就會缺失裝配特征語義信息,本文的目的是從構(gòu)成中性幾何模型的底層點、線、面信息出發(fā),基于知識圖譜的方式表示中性幾何模型的底層幾何語義,通過圖匹配神經(jīng)網(wǎng)絡(luò)與標(biāo)準(zhǔn)特征庫的的特征子圖進(jìn)行相似度遍歷,完成子圖裝配特征語義的匹配,從而實現(xiàn)對缺失了裝配特征語義的中性幾何模型進(jìn)行語義重建。鑒于此,本文提出一種新的基于知識圖譜的構(gòu)建中性幾何模型的裝配特征語義方法。首先通過分析中性幾何模型的特性對裝配體模型文件進(jìn)行解析,生成裝配實體和裝配約束兩種數(shù)據(jù)結(jié)構(gòu),經(jīng)實體映射完成中性幾何模型幾何語義知識圖譜模式層和數(shù)據(jù)層的構(gòu)建,然后根據(jù)節(jié)點/邊的語義信息和鄰接結(jié)構(gòu)信息與標(biāo)準(zhǔn)裝配特征庫的圖網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行相似度計算,從而識別出對應(yīng)的裝配特征。最后以上海某企業(yè)風(fēng)力發(fā)電機機艙裝配體部件為例,驗證了該方法框架的可行性。
中性模型的提出是為了解決不同模型文件格式之間的數(shù)據(jù)傳輸與通信問題而建立的產(chǎn)品數(shù)據(jù)交換規(guī)范。中性幾何模型作為中性模型的一個子集,其構(gòu)成要素主要包括點、線、面以及三角面片等基本幾何單元,如glTF、OBJ以及STL文件都屬于中性幾何模型的范疇。這類模型在CAD軟件中通常只能夠以模型樹的形式表示裝配體的層級結(jié)構(gòu)信息,并不能夠直接讀取其裝配特征語義信息。
根據(jù)文獻(xiàn)[21]提出的定義,裝配特征語義可以分為裝配特征實體語義與裝配特征約束語義,如圖1所示。裝配實體語義指參與裝配的具體實例,如螺栓-螺母連接、孔軸裝配特征等實例。在產(chǎn)品建模時由一系列的點、線、面以及其之間的關(guān)系構(gòu)成裝配實體。裝配約束語義指參與配合的幾何元素實例和實例間的約束關(guān)系,如參與配合的幾何元素為平面,且平面間重合或者存在一定間距。因此本文給出如下兩種基礎(chǔ)定義。
圖1 裝配特征信息
定義1基于知識圖譜的中性幾何語義模型KG-NGSM(knowledge graph-based neutral geometric semantics model),將中性幾何模型中的模型層級結(jié)構(gòu)信息與構(gòu)成模型的底層點線面信息通過知識圖譜以“節(jié)點-關(guān)系-節(jié)點”與“節(jié)點-屬性-值”的組織形式表示。為了實現(xiàn)中性幾何模型幾何信息元素以及元素間關(guān)系的形式化、規(guī)范化描述,定義了如圖2所示的KG-NGSM={AE∪GE∪SR},其中:
圖2 KG-NGSM模型框架
AE表示裝配元素,包含裝配體總成單元類,組件單元類,零件單元類等實體類型。裝配元素單元的實例屬性為名稱和id。
GE表示幾何元素,主要包含構(gòu)成零件實體的面單元類、邊單元類、頂點單元類等實體類型。面單元、邊單元的實例屬性為類型和id,頂點單元的實例屬性為坐標(biāo)和id。
SR表示語義關(guān)系,裝配元素以及幾何元素間的廣義語義關(guān)系如表1所示。
表1 語義關(guān)系定義
定義2裝配特征約束數(shù)據(jù)類型。裝配約束數(shù)據(jù)類型可以通過CAD API可編程接口進(jìn)行構(gòu)建。以Soildworks 2022為例,配合信息對象為MateEntity、Mate、MateGroup[22],其中MateEntity對象代表參與配合的幾何元素,Mate對象代表裝配特征間的配合類型,具體如表2所示。
表2 裝配特征約束數(shù)據(jù)類型
本文基于文件解析和知識圖譜提出了中性幾何模型的裝配特征語義構(gòu)建框架。如圖3所示為裝配特征語義重建流程圖。
圖3 研究框架
(1)模型構(gòu)建 通過CAD軟件構(gòu)建中性幾何模型(glTF、OBJ和STEP等)作為裝配特征語義重建框架的輸入源:中性幾何模型數(shù)據(jù)集,其中主要包含裝配單元和幾何信息以及對應(yīng)的屬性和值。
(2)文件解析 將中性幾何模型數(shù)據(jù)集作為文件解析器的輸入源,首先使用CAD API接口構(gòu)建裝配特征約束語義信息。在3dMAX軟件中將中性幾何模型數(shù)據(jù)集導(dǎo)出為glTF格式的文件作為裝配特征實體語義構(gòu)建的輸入源,通過Python接口解析glTF 中JSON文件和Buffer文件提取幾何體、面、邊、點信息,通過實體關(guān)系映射為類、屬性和值。
(3)特征識別 映射完成后的實體關(guān)系信息為構(gòu)建圖譜的三元組輸入源。讀取拓?fù)湫畔?gòu)建中性幾何模型的幾何語義圖譜。由于一個完整的裝配體知識圖譜節(jié)點數(shù)量龐大,關(guān)系復(fù)雜,需要按照相應(yīng)的零件層級關(guān)系或者是路徑關(guān)系拆解成一系列子圖譜。構(gòu)建鄰接矩陣與裝配實體語義庫進(jìn)行相似度匹配,從而識別出裝配實體信息,否則將該特征作為孤立特征添加到裝配實體語義庫中,擴展裝配實體語義庫。
(4)儲存數(shù)據(jù) 將抽取出的裝配特征約束語義信息和裝配實體語義信息進(jìn)行信息整合,最后統(tǒng)一歸納到數(shù)據(jù)庫中。
中性幾何模型幾何/拓?fù)湫畔⒌奶崛∈菢?gòu)建KG-NGSM的前提。根據(jù)本文提出的研究框架,首先對中性幾何模型進(jìn)行信息抽取,由于在眾多CAD格式文件中g(shù)lTF文件能夠直觀地描述產(chǎn)品中零件、連接件的基本信息及其之間的連接關(guān)系,因此選擇glTF文件作為圖譜數(shù)據(jù)層中實例三元組的數(shù)據(jù)來源。glTF是由KhronosGroup設(shè)計和定義的,用于有效地傳輸3D內(nèi)容轉(zhuǎn)移網(wǎng)絡(luò),其組織結(jié)構(gòu)如圖4所示。其中儲存幾何語義的主要節(jié)點代表的含義如表3所示。
表3 glTF文件各節(jié)點含義
圖4 glTF組織結(jié)構(gòu)
由上可知,首先需要對其中的node、mesh、accessor、bufferView、buffer節(jié)點進(jìn)行解析并抽取幾何信息。glTF JSON的scene可以包含一個節(jié)點數(shù)組,每個nodes可以索引到相應(yīng)的子節(jié)點位置,對nodes節(jié)點進(jìn)行解析以獲取中性幾何模型的裝配層級結(jié)構(gòu)語義,如圖5所示。meshes可能包含多個網(wǎng)格primitives,代表呈現(xiàn)網(wǎng)格所需的幾何數(shù)據(jù)。每個網(wǎng)格primitives都可以表示幾何元素是否應(yīng)該呈現(xiàn)為點、線或者是三角面片的形式,每個屬性都通過將屬性名映射到包含屬性數(shù)據(jù)的訪問器的索引來定義。通過解析meshes節(jié)點可獲取構(gòu)成產(chǎn)品實體的幾何語義。例如,屬性可以定義頂點的坐標(biāo)和法向量, buffers包含用于三維模型、外觀幾何學(xué)的數(shù)據(jù)。bufferViews、accessors和buffers的關(guān)系如圖5所示,每個buffers引用一個二進(jìn)制數(shù)據(jù)文件,使用一個URI。它是具有給定字節(jié)長度的一個原始數(shù)據(jù)塊的源。對該原始數(shù)據(jù)塊進(jìn)行解析以獲取幾何體的點、線、面等幾何語義信息。
圖5 glTF nodes、meshes、buffers數(shù)據(jù)對應(yīng)關(guān)系
glTF文件中的幾何語義包含裝配元素之間的實體名字和連接關(guān)系,以及組成幾何體的低級幾何元素語義。glTF中包含的這些信息無法被計算機程序直接處理,因此需要通過glTF解析接口將glTF中的幾何語義信息轉(zhuǎn)為計算機程序容易處理的JSON文件,以該文件作為生成KG-NGSM的實例三元組數(shù)據(jù)來源。實體映射過程以及JSON設(shè)計格式如圖6所示。
圖6 實體映射及JSON格式設(shè)計
其中:data中存儲的是對glTF進(jìn)行解析后的結(jié)果,entityData存儲的是裝配單元以及幾何元素語義信息,relationData存儲的是關(guān)系語義。包含裝配體總成單元類,組件單元類,零件單元類等實體類型名稱和id,面單元、邊單元的類型和id,以及頂點單元的坐標(biāo)和id等語義信息。根據(jù)以上各節(jié)點關(guān)系以及數(shù)據(jù)類型,本文解析glTF模型文件,抽取模型幾何信息的算法如表4所示。
表4 glTF幾何語義抽取流程
在1.1節(jié)裝配工藝信息的組成與定義中,裝配特征信息包括裝配特征實體信息以及裝配特征間的約束關(guān)系,其中裝配約束關(guān)系可以通過解析基于CAD API可編程接口獲取的特征配合信息進(jìn)行構(gòu)建。如同軸配合約束的提取以及三元組表示如圖7所示。從CAD系統(tǒng)中利用API函數(shù),通過遍歷匹配特征樹對象提取匹配約束信息,并以三元組的形式表示。
圖7 同軸配合及三元組表示
由于Mate與MateEntity儲存于MateGroup對象中,形式為Mate(Component1 圖8 MateGroup對象解析流程 在裝配設(shè)計的工程中,基于知識圖譜可計算性的思想,根據(jù)2.1節(jié)描述的方法,將待識別的裝配特征模型轉(zhuǎn)換為由裝配特征數(shù)據(jù)層構(gòu)成的知識圖譜G。以圖G為匹配項,研究基于圖匹配神經(jīng)網(wǎng)絡(luò)的相似裝配特征項檢索方法,從而構(gòu)建出裝配特征語義信息?;谥R圖譜的特征識別流程如圖9所示。 圖9 特征語義重建流程 首先對glTF中性文件進(jìn)行解析提取出其中的幾何元素信息,將其映射為類、屬性和值,并將他們以知識圖譜的形式表示,將知識圖譜G進(jìn)行屬性分解獲得一系列子圖。然后構(gòu)建預(yù)定義裝配特征實體庫,計算知識圖譜G與預(yù)定義裝配特征實體庫中的圖譜的交叉注意力值,與閾值比較。若交叉注意力值大于閾值,則輸出匹配的裝配特征實例,否則將該特征作為孤立特征添加到預(yù)定義特征庫中,擴展預(yù)定義特征庫。 裝配特征語義能否有效地重建出來,很大程度上取決于預(yù)定義特征庫中是否包含該類特征語義,即特征原型子圖是否保存至預(yù)定義特征數(shù)據(jù)庫中。因此,需要在裝配特征語義匹配之前創(chuàng)建預(yù)定義特征庫。通過大量的實例分析,得出風(fēng)力發(fā)電機機艙中幾種典型的裝配特征語義原型子圖,如表5所示。 表5 特征庫常見裝配特征子圖示例 在表5中,以螺栓螺母裝配特征子圖為例,圖中綠色節(jié)點代表組件單元節(jié)點,橙色節(jié)點為零件單元節(jié)點,紫色節(jié)點為面單元節(jié)點,灰色節(jié)點為邊單元節(jié)點,淺藍(lán)色節(jié)點為頂點單元節(jié)點,紅色虛線部分表示待裝配件PRT1與PRT2和螺栓螺母連接件。由于螺栓螺母在設(shè)計中屬于同一組件,因此在圖中與組件節(jié)點LOCAL_GROUP存在hasPart語義關(guān)系。該特征子圖是路徑以組件單元為起點,以hasPart→hasSub→hasFace→hasEdge→hasAnchors為路徑的子圖。通過在知識圖譜中表示螺栓GB_T_5783_M12和螺母GB_T_889_M12的幾何元素,描述了參與螺栓螺母配合的零件PRT1和PRT2的幾何與拓?fù)潢P(guān)系。而孔軸裝配特征子圖由于孔和軸的型號規(guī)格的多樣性,因此特征庫中的子圖僅表示了孔軸裝配特征的接觸部分幾何元素。該特征子圖是路徑以零件單元為起點,以hasSub→hasFace→hasEdge為路徑的子圖,表示了孔軸裝配特征接觸部分的幾何拓?fù)潢P(guān)系。 給定兩個圖G1=(V1,E1)和G2=(V2,E2),其中V和E分別代表節(jié)點和邊的集合。圖匹配神經(jīng)網(wǎng)絡(luò)能夠計算兩個圖之間的相似度得分s=(G1,G2),將兩張圖的節(jié)點和邊根據(jù)其語義信息以及鄰接結(jié)構(gòu)信息映射至向量空間。經(jīng)過信息傳播器與聚合器,經(jīng)計算圖向量間的歐式距離從而判斷圖結(jié)構(gòu)的相似程度[23]。其思想與尋找識別裝配體中裝配特征實體需要考慮裝配體層級結(jié)構(gòu)、幾何元素(對應(yīng)節(jié)點的語義)、連接關(guān)系(對應(yīng)邊的語義)等因素一致。圖匹配神經(jīng)網(wǎng)絡(luò)由以下3個部分組成[24]: (1)編碼層 首先輸入一對由裝配體層級結(jié)構(gòu)數(shù)據(jù)層與裝配體幾何元素數(shù)據(jù)層構(gòu)成的知識圖譜G1=(V1,E1)與G2=(V2,E2),其中G1代表待匹配的裝配特征實體項,G2代表預(yù)定義特征庫中的裝配特征實體項。通過編碼層將節(jié)點和邊轉(zhuǎn)為狀態(tài)向量來計算G1和G2的相似度。 使用one-hot來表示裝配單元節(jié)點以及幾何元素節(jié)點的特征向量,若以上兩類節(jié)點的語義不同則相似度計算為0,相同則表示為1,如表6所示。在以hasSub→hasFace→hasEdge→hasAnchors的路徑訓(xùn)練GMN(graph matching networks)模型時,該路徑涉及到了圖譜子圖中的裝配單元節(jié)點。因此表6中也列舉了裝配單元的特征向量,增強子圖所包含的語義信息,提高圖匹配的準(zhǔn)確效率,保證裝配特征語義重建的準(zhǔn)確性。 表6 部分幾何單元、裝配單元的特征向量 節(jié)點與邊的MLP編碼器如式1與式2所示。 (1) eij=MLPT(ij)(xij),?(i,j)∈E1∪E2。 (2) (2)傳播層 傳播層是圖匹配神經(jīng)網(wǎng)絡(luò)的關(guān)鍵環(huán)節(jié),用于衡量圖結(jié)構(gòu)中的節(jié)點或邊的相似程度,包括信息流計算、匹配流計算與更新節(jié)點狀態(tài)3個部分。 信息流mj→i為某條邊和對應(yīng)節(jié)點的狀態(tài)信息,如式3所示: (3) 根據(jù)G1和G2中節(jié)點間的匹配程度,匹配流計算指不同節(jié)點間的交叉注意力值來獲取差異信息,交叉注意力權(quán)重αj→i的計算過程如式(4)所示: ?i∈V1,?j∈V2且j′∈T(j)(V2)。 (4) (5) (6) (7) 其中:i為節(jié)點;j為i的一階鄰接節(jié)點;j′表示另一張圖中與i同類型的節(jié)點;Sum為向量求和函數(shù)。 通過式(7),裝配單元節(jié)點的狀態(tài)向量能夠在計算過程中捕捉組件的單元語義、幾何單元語義以及裝配結(jié)構(gòu)等鄰接關(guān)系,提高計算圖結(jié)構(gòu)間相似度的準(zhǔn)確率。 (3)聚合層 聚合層主要是將節(jié)點的最終狀態(tài)向量幾何輸入至聚合層中獲取圖結(jié)構(gòu)的狀態(tài)向量,本文采用0-1權(quán)重向量加權(quán)求和所有的節(jié)點狀態(tài)向量,如式(8)與式(9)所示: (8) (9) (4)損失函數(shù) 本文將輸入圖對相似的標(biāo)簽設(shè)為+1,否則為-1,計算兩張圖的狀態(tài)向量間的歐式距離構(gòu)建Loss函數(shù),如式10所示: (10) 其中:DB為數(shù)據(jù)庫;l∈{-1,+1};γ為邊界值,且0≤γ<1。 根據(jù)圖匹配神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),提出如圖10所示的結(jié)合幾何語義的圖匹配算法。其中構(gòu)造圖譜以及編碼模塊主要是完成中性幾何模型信息的抽取,提取節(jié)點初始特征構(gòu)造知識圖譜,信息傳遞及聚合模塊是基于跨圖注意力機制進(jìn)行信息傳遞更新狀態(tài)向量,匹配求解模塊主要是將源圖和目標(biāo)圖的節(jié)點和邊嵌入至高維度空間中,計算向量間的歐式距離來判斷兩個圖之間的相似程度。 圖10 相似特征項檢索流程 表7 相似裝配特征實體檢索流程 本文以上海某風(fēng)力發(fā)電機企業(yè)的風(fēng)機為對象進(jìn)行裝配特征語義的構(gòu)建,如圖11a所示。首先基于glTF文件與2.1節(jié)中的幾何語義抽取以及映射方法,根據(jù)解析結(jié)果中的id值引用構(gòu)建裝配單元、幾何單元節(jié)點及其名稱、id屬性與裝配結(jié)構(gòu)關(guān)系,最終得到構(gòu)建裝配特征語義的“體-面-邊-點”信息。使用Python、Neo4j、JavaScript等工具構(gòu)建風(fēng)力發(fā)電機裝配體知識圖譜數(shù)據(jù)層。對照語義映射以及JSON表設(shè)計過程,風(fēng)機裝配體WDG42600186對應(yīng)的幾何語義部分知識圖譜如圖11b所示。圖中褐色節(jié)點為裝配體單元節(jié)點,綠色節(jié)點為組件單元節(jié)點,橙色節(jié)點為零件單元節(jié)點,紫色節(jié)點為面單元節(jié)點,灰色節(jié)點為邊單元節(jié)點,淺藍(lán)色節(jié)點為頂點單元節(jié)點。圖11b以JSON格式列舉了部分節(jié)點的屬性值。表8為WDG42600186部分幾何單元/裝配單元節(jié)點數(shù)據(jù)統(tǒng)計。 表8 圖譜節(jié)點數(shù)據(jù)統(tǒng)計 圖11 風(fēng)機裝配體幾何語義圖譜構(gòu)建 首先基于幾何語義圖譜的數(shù)據(jù)層知識子圖來訓(xùn)練圖匹配網(wǎng)絡(luò)模型,然后將待識別的幾何語義知識子圖與預(yù)定義裝配特征庫中的子圖輸入至圖匹配網(wǎng)絡(luò)進(jìn)行相似特征實體的檢索,最后根據(jù)計算交叉注意力值來識別相似的裝配特征實體語義,完成裝配特征語義的構(gòu)建。 在訓(xùn)練圖匹配神經(jīng)網(wǎng)絡(luò)時,以組件單元為起始節(jié)點,以hasSub→hasFace→hasEdge→hasAnchors為路徑從幾何語義知識圖譜中抽取局部子圖譜。在構(gòu)建訓(xùn)練樣本時,隨機在原有子圖上刪除節(jié)點或邊來生成新的驗證集與測試集,以p=0.2的概率隨機刪除子圖中的邊作為正樣本對,以p=0.5的概率隨機刪除子圖中的四條邊作為負(fù)樣本對。循環(huán)5次,總計生成1180個圖對,其中訓(xùn)練集占比0.8,測試集占比0.2。 本文采取的訓(xùn)練環(huán)境為Pytorch1.8.1+Python3.9,batch-size為20,α為0.001,優(yōu)化器采用Adam。其中,模型參數(shù)節(jié)點狀態(tài)向量設(shè)置為32,邊狀態(tài)向量設(shè)置為16,圖狀態(tài)向量設(shè)置為128,MLPT(i)編碼器為32×64×32,MLPT(ij)為16×32×16,MLPm為80×160×32,MLPgate為32×64×32,MLPG為32×64×128。 模型準(zhǔn)確率的影響因素主要為傳播層數(shù)以及邊界值γ,本文采取的組合參數(shù)為傳播層數(shù)1至傳播層數(shù)5,邊界值γ∈{0,0.2,0.4,0.6,0.8}。對比不同參數(shù)組合下模型在測試集的準(zhǔn)確率,如圖12所示。從圖中可以發(fā)現(xiàn),當(dāng)傳播層數(shù)為4,邊界值γ為0.6時,模型對圖相似性的判斷最為準(zhǔn)確。 圖12 不同參數(shù)組合下圖對相似性判斷準(zhǔn)確率的變化 以上海某企業(yè)風(fēng)電機組傳動鏈WDG42600186裝配體為例,基于訓(xùn)練后的圖匹配神經(jīng)網(wǎng)絡(luò)檢索預(yù)定義特征庫中的相似裝配特征實體。首先通過第2章描述的方法抽取模型的幾何語義信息并構(gòu)建幾何語義圖譜,將局部子圖作為訓(xùn)練后的圖匹配神經(jīng)網(wǎng)絡(luò)的輸入,其形式如圖13所示。圖中紅色節(jié)點代表裝配體單元,灰色節(jié)點代表組件單元,橙色節(jié)點代表面單元,綠色節(jié)點代表邊單元,粉紅色節(jié)點代表點單元。本文以0.7為閾值,將輸入圖與預(yù)定義特征庫中的子圖進(jìn)行遍歷計算交叉注意力值。若該輸入子圖的交叉注意力值大于閾值,則在預(yù)定義特征庫中讀取匹配子圖的相關(guān)特征語義,從而構(gòu)建出輸入子圖的裝配特征語義信息,否則考慮將該輸入子圖的特征信息作為孤立特征擴展預(yù)定義特征庫。 圖13 子圖注意力計算 根據(jù)本文提出的方法,最終將構(gòu)建的裝配特征語義以JSON文件形式保存至MongoDB數(shù)據(jù)庫中,方便為后續(xù)裝配過程提供裝配信息(如圖14)。 圖14 裝配體結(jié)構(gòu)層次及特征信息 根據(jù)上述裝配特征語義構(gòu)建方法,本文基于Visual Studio Code 2022開發(fā)平臺,React框架以及JavaScript工具語言開發(fā)一個集成化的裝配特征語義構(gòu)建系統(tǒng)。該系統(tǒng)面向風(fēng)機行業(yè)的風(fēng)力發(fā)電機產(chǎn)品,可以實現(xiàn)風(fēng)機產(chǎn)品幾何語義信息的抽取、裝配特征等非幾何語義信息的提取,如圖15所示。該界面展示的是風(fēng)機裝配環(huán)節(jié)的風(fēng)電機組傳動箱二級行星輪系,從導(dǎo)入風(fēng)機產(chǎn)品模型開始,可以按照模型零件名稱進(jìn)行查詢與篩選,按照產(chǎn)品-組件-零件的層次關(guān)系展示風(fēng)機模型的樹結(jié)構(gòu)信息,并將抽取出來的幾何語義信息以知識圖譜的形式表示,同時展示該行星輪系各個零部件的幾何語義信息表。 圖16展示了風(fēng)電機組WDG42600186裝配體的幾何語義圖譜,如圖所示圖譜的路徑關(guān)系為hasGroup→hasPart→hasFace→hasEdge →hasAnchors,且節(jié)點與關(guān)系支持查詢。WDG42600186的幾何語義圖譜相關(guān)節(jié)點與關(guān)系的數(shù)據(jù)統(tǒng)計以表格形式展示。圖17為產(chǎn)品裝配特征語義提取界面,根據(jù)上述基于幾何語義圖譜與圖神經(jīng)網(wǎng)絡(luò)的特征語義構(gòu)建方法,快速準(zhǔn)確地構(gòu)建WDG42600186裝配體的相關(guān)裝配特征語義。例如螺栓GB_T_97_1_12_A4_HV140-170與螺母GB_T _5783_M12X45_A4_70之間存在裝配關(guān)系,裝配關(guān)系為孔軸裝配,配合類型為圓柱面-圓柱面,且裝配基本件為螺栓GB_T_97_1_12_A4_HV140-170,待裝配件為螺母GB_T _5783_M12X45_A4_70。該系統(tǒng)可以為風(fēng)機裝配環(huán)節(jié)提供裝配信息,可以輔助裝配操作人員的實際裝配過程。 圖16 語義圖譜界面 圖17 特征語義界面 由于中性幾何模型缺少裝配特征語義信息,需要構(gòu)建中性幾何模型的裝配特征語義信息用于風(fēng)機產(chǎn)品的裝配環(huán)節(jié)。本文提出基于中性幾何模型的幾何語義信息的抽取方法,抽取幾何語義生成知識圖譜,并基于圖神經(jīng)網(wǎng)絡(luò)計算圖譜相似度構(gòu)建出風(fēng)機產(chǎn)品的裝配特征語義信息,主要工作如下: (1)提出了基于知識圖譜的中性幾何語義模型KG-NGSM,對中性幾何模型的裝配元素、幾何元素以及裝配關(guān)系進(jìn)行統(tǒng)一規(guī)范化的表達(dá)。提出一種面向中性幾何模型的幾何語義抽取方法,以glTF模型為例,抽取中性幾何模型的幾何語義,通過設(shè)計JSON格式將幾何語義進(jìn)行統(tǒng)一管理。 (2)基于知識圖譜與圖匹配網(wǎng)絡(luò)實現(xiàn)裝配特征語義的構(gòu)建,首先通過CAD接口實現(xiàn)裝配特征約束的提取,其次把從中性幾何模型中抽取出來的幾何語義以知識圖譜三元組的形式表示,利用圖匹配網(wǎng)絡(luò)計算圖譜的相似圖信息從而完成產(chǎn)品特征語義信息的構(gòu)建。 (3)開發(fā)面向風(fēng)機產(chǎn)品的裝配特征語義構(gòu)建系統(tǒng),實現(xiàn)風(fēng)機產(chǎn)品模型裝配特征語義的構(gòu)建,為管理人員以及裝配操作人員提供裝配輔助功能。現(xiàn)場使用結(jié)果表明,該系統(tǒng)對于指導(dǎo)風(fēng)機產(chǎn)品實際裝配環(huán)節(jié)具有一定效果。 本文所研究的內(nèi)容關(guān)注于裝配特征語義中裝配配合種類的表達(dá)與重建過程,并未將裝配關(guān)系中的配合類型(間隙配合、過盈配合、過渡配合)的表示與重建納入研究范圍。因此為了保證裝配特征語義重建的完整性,本文未來的研究可以基于二維CAD文件,裝配工藝手冊等文件類型,利用表格劃分和自然語言處理技術(shù)自動提取出風(fēng)力發(fā)電機的裝配配合類型,從而將相應(yīng)裝配語義定義在知識圖譜中。后續(xù)工作也可以嘗試基于知識圖譜進(jìn)行裝配序列規(guī)劃,從而加強裝配特征語義構(gòu)建的全面性。3 產(chǎn)品裝配特征語義構(gòu)建方法
3.1 裝配特征語義構(gòu)建流程
3.2 基于圖匹配神經(jīng)網(wǎng)絡(luò)的相似裝配特征實體項檢索
4 案例驗證與分析
4.1 幾何語義知識圖譜構(gòu)建
4.2 相似特征項檢索
5 系統(tǒng)實例展示
6 結(jié)束語