解衛(wèi)華, 韓曉建
(1.臺(tái)州科技職業(yè)學(xué)院,浙江 臺(tái)州 318020; 2.北京航空航天大學(xué),北京 100191)
隨著現(xiàn)代飛機(jī)設(shè)備艙功能的不斷發(fā)展,機(jī)載設(shè)備越來越多,設(shè)備艙內(nèi)設(shè)備的布置也越來越復(fù)雜。要在飛機(jī)設(shè)備艙有限的空間內(nèi)滿足載重、散熱、供電、電磁等要求,是一個(gè)帶約束的布局問題。
飛機(jī)的艙室布局問題本質(zhì)上是帶約束的三維布局問題。國內(nèi)外學(xué)者在解決無約束三維空間布局問題上做了大量的研究和探索,典型的方法有啟發(fā)式算法、擬物擬人算法和混合式算法等。文獻(xiàn)[1]在帶動(dòng)不平衡約束衛(wèi)星艙布局中采用啟發(fā)式算法;文獻(xiàn)[2]利用粒子群算法對(duì)多艙段進(jìn)行組件的布局設(shè)計(jì);文獻(xiàn)[3-4]采用模擬退火算法解決發(fā)動(dòng)機(jī)艙布局設(shè)計(jì)問題;文獻(xiàn)[5]提出求解衛(wèi)星艙布局問題的分治混合算法;文獻(xiàn)[6]采用協(xié)同差分進(jìn)化算法解決衛(wèi)星艙的布局問題;文獻(xiàn)[7]采用擬物算法求解長方體Packing問題,在布局效果和效率上都取得了很好的研究進(jìn)展。學(xué)術(shù)界在有約束布局的問題上開展研究較少,近些年才開始關(guān)注和研究。文獻(xiàn)[8]采用聚塊算法依據(jù)物體間的約束關(guān)系定義布局模塊,再利用布局模塊進(jìn)行布局;文獻(xiàn)[9]在約束的處理問題上,歸納了很多種約束,并應(yīng)用于家居設(shè)計(jì);文獻(xiàn)[10]是在對(duì)裝配關(guān)系進(jìn)行抽象的基礎(chǔ)上,利用三維約束與驅(qū)動(dòng)實(shí)現(xiàn)概念化設(shè)計(jì)階段的空間布局設(shè)計(jì)。
總體上,針對(duì)飛機(jī)設(shè)備艙復(fù)雜多約束情況下的三維布局問題研究,特別是把復(fù)雜約束集形式化、有效地結(jié)合到布局算法中的布局研究不夠充分。針對(duì)飛機(jī)設(shè)備艙三維布局問題提出一種基于多約束形式化處理的布局設(shè)計(jì)方法,以期解決上述問題。
根據(jù)飛機(jī)前設(shè)備艙和電子設(shè)備艙原型,本文將飛機(jī)設(shè)備艙室抽象為階梯式容器,具體模型如圖1所示。
圖1 飛機(jī)設(shè)備艙簡(jiǎn)化圖Fig.1 Simplified aircraft cabin
為了使算法能快速處理不同形狀的物體,把所有的待布局物體都簡(jiǎn)化為長方體和圓柱體。每個(gè)布局物體有6個(gè)自由度,即ε(Xi,Yi,Zi,αi,βi,γi)。各變量含義為:Xi為物體在X方向的坐標(biāo);Yi為物體在Y方向的坐標(biāo);Zi為物體在Z方向的坐標(biāo);αi為物體繞X軸的角度;βi為物體繞Y軸的角度;γi為物體繞Z軸的角度。
設(shè)整個(gè)飛機(jī)設(shè)備艙中的布局物體數(shù)量為N,那么這些物體的集合構(gòu)成待布局物體集B=(B0,B1,B2,B3,…,BN),B0代表飛機(jī)設(shè)備艙的容器,BN代表待布局物體。(Li.X,Li.Y,Li.Z)為布局物體在X,Y,Z方向上的長度。
優(yōu)化布局方案應(yīng)滿足的基本準(zhǔn)則為:1) 所有待布局物體布局后的外包絡(luò)面圍成的體積為最?。?) 物體與物體之間或物體與外容器之間不發(fā)生干涉;3) 布局后系統(tǒng)的質(zhì)心要接近預(yù)定的坐標(biāo)位置,且偏差要小于許用值;4) 滿足各類約束條件的要求。
根據(jù)不同的布局約束條件,約束分為以下兩種。
1) 布局本身約束。分為點(diǎn)約束、線約束和面約束,其對(duì)應(yīng)的自由度分別為3(3個(gè)轉(zhuǎn)動(dòng)),4(在線上的位置平移和3個(gè)轉(zhuǎn)動(dòng)自由度),5(在面上的2個(gè)移動(dòng)以及3個(gè)相對(duì)旋轉(zhuǎn)自由度)。
2) 相對(duì)約束。分為對(duì)稱約束、定距約束等。對(duì)稱約束自由度應(yīng)該大于面約束,其自由度大于5,只是處理比較復(fù)雜。定距約束即待布局物體存在確定的距離要求,確定的距離約束可以轉(zhuǎn)換成點(diǎn)約束,相當(dāng)于3個(gè)自由度,距離遠(yuǎn)的約束在一定的布局空間可布局空間比較大。
2.1.1 物體自身的約束
1) 物體本身在布局容器的位置和姿態(tài)位置要求如下
(1)
式中:(Bi.X,Bi.Y,Bi.Z)表示第i個(gè)布局物體的坐標(biāo)原點(diǎn)在布局容器中的位置;(xi,yi,zi)表示該物體在布局容器中的坐標(biāo)值。
姿態(tài)要求為
(2)
式中:(Bi.α,Bi.β,Bi.γ)表示第i個(gè)布局物體相對(duì)X,Y,Z軸旋轉(zhuǎn)角度,αi,βi和γi表示角度值。
2) 物體約束在某條軸線上。
(3)
式中:t為系數(shù);(mi,ni,li) 表示容器內(nèi)某條直線的向量;(mi0,ni0,li0)表示直線上的一點(diǎn),同時(shí)也可以處理約束中的共線的問題,即令(mi,ni,li)=(mj,nj,lj),(mi0,ni0,li0)=(mj0,nj0,lj0)。
3) 在飛機(jī)設(shè)備艙內(nèi)某面板上。
mi×(Bi.X-mi 0)+ni×(Bi.Y-ni 0)+li×(Bi.Z-li 0)=0
(4)
式中,(mi,ni,li)表示艙室內(nèi)某平面的法向向量,(mi 0,ni 0,li 0)表示直線上的一點(diǎn),同時(shí)也可以處理約束中的共面的問題,即令(mi,ni,li)=(mj,nj,lj),(mi 0,ni 0,li 0)=(mj 0,nj 0,lj 0)。
2.1.2 物體之間的約束
1) 定距約束,比如電、磁等,需要保持一定的距離,為此建立下面模型
(5)
式中,(mij,nij,lij)表示兩物體i,j相對(duì)距離矢量的分量。
2) 對(duì)稱約束,在本文中分為關(guān)于XY,YZ,XZ面對(duì)稱。
(6)
(7)
(8)
根據(jù)上述約束關(guān)系建立如圖2所示的約束樹。
圖2 約束相互聯(lián)系圖Fig.2 Constraints relationship tree
約束矩陣的建立。根據(jù)約束性質(zhì),對(duì)于G約束圖Gi=(Bi,Ri),可以構(gòu)造一個(gè)矩陣,
(9)
式中:N為矩陣的階數(shù),它與約束系統(tǒng)中實(shí)體的數(shù)量相等;Rij表示第i個(gè)待布局物體相對(duì)于第j個(gè)待布局物體的約束關(guān)系。目的是抽象出可以用計(jì)算機(jī)語言處理又符合工程實(shí)際的約束模型。
由于布局中約束的復(fù)雜性,所以其處理是非常復(fù)雜的。約束的處理方法借鑒計(jì)算機(jī)的作業(yè)調(diào)度,根據(jù)約束的重要性、自由度和相應(yīng)的可布局空間來確定優(yōu)先級(jí)。約束表如表1所示。
表1 約束表
1) 布局容器的處理。
容器處理,設(shè)立系統(tǒng)坐標(biāo)系。根據(jù)要布局的物體個(gè)數(shù)、總的體積以及艙室參數(shù)計(jì)算出大概長度和半徑,并根據(jù)實(shí)際要求固定一個(gè)方向的參數(shù)。r=LZ/k,在本文中首先確定的是Z方向的長度LZ。根據(jù)中心線向外圍漸漸擴(kuò)大。布局容器幾何簡(jiǎn)化如圖1所示。
2) 約束處理。
如果存在約束,按照上一節(jié)中的處理方法處理約束,該布局容器在Z方向的一定范圍是要求Bi.Y-Li.Y/2≥0。所以布局中要根據(jù)約束矩陣將待布局物體布置到布局空間。
3) 無約束物體的分組分類。
4) 布局物體初始化。
在布局環(huán)境中,布局物體的初始位置為(0,0,Bi.Z=-LZ/2+Li.Z/2)。
r=0。
5) 判斷是否干涉。
判斷條件與三維長方體布局中的判斷條件相同,如果干涉轉(zhuǎn)6),否則轉(zhuǎn)7)。
6) 改變布局位置。
根據(jù)使得步長增量Δf=fni+1-fni改變最小的原則進(jìn)行。在本文算法中, (Δθ,Δr,Δz)分別為周向角度、半徑方向以及Z方向增加的步長。具體過程見圖3。
7) 判斷布局完成與否。若是,轉(zhuǎn)8);否則,轉(zhuǎn)4)。
8) 計(jì)算優(yōu)化結(jié)果,完成退出。
圖3 布局算法流程圖Fig.3 The flow chart of the layout algorithm
為驗(yàn)證算法的可行性,以Pro/e 2.0和VC++6.0為平臺(tái),開發(fā)自動(dòng)布局的軟件系統(tǒng)。對(duì)飛機(jī)設(shè)備艙室布局進(jìn)行了16次實(shí)驗(yàn),得到結(jié)果數(shù)據(jù)如表2所示。所有實(shí)例中,帶有10個(gè)5種約束類型的布局物體,圖4為布局個(gè)數(shù)為40的三維布局結(jié)果模型。
圖4 三維布局結(jié)果模型(40個(gè)布局物體)Fig.4 The 3D layout model of 40 objects
數(shù)目時(shí)間/sX向重心Y向重心Z向重心容積率3021.0780.32814.631-52.2840.689 94057.9698.46113.391-47.4290.692 050172.516-2.29019.945-55.3530.702 364134.6413.21917.427-39.3590.727 767232.8443.92920.072-48.8430.711 470307.766-0.17116.339-57.6520.695 876262.3757.86317.543-62.6810.723 980231.7033.79019.430-59.0930.714 084215.9847.73317.895-52.185 30.701 788523.2663.99020.960-65.301 30.698 290392.8282.15019.070-52.925 30.686 491515.2972.51119.898-58.893 30.676 094452.2032.94220.820-59.4160.694 897495.4225.02915.982-62.7880.692 5100714.3604.05820.011-67.7460.700 4110814.9532.88519.065-62.9430.691 2
當(dāng)優(yōu)化步長為Δr=3,Δθ=0.1,Δz=3時(shí),優(yōu)化布局容積率基本處于70%左右,因?yàn)槭请A梯狀,所以Z方向的重心值絕對(duì)值比較大,但是還比較穩(wěn)定。國內(nèi)外沒有類似的研究結(jié)果可以比較,但從統(tǒng)計(jì)結(jié)果來看,布局算法穩(wěn)定,無論從布局容積率、重心變化和布局時(shí)間來看均遠(yuǎn)遠(yuǎn)優(yōu)于手工布局。
實(shí)現(xiàn)有約束處理的自動(dòng)化布局設(shè)計(jì),主要是面向飛機(jī)早期的概念設(shè)計(jì)階段,面對(duì)的布局問題較抽象,因此將模型簡(jiǎn)化為可以處理的三維布局問題。本文針對(duì)飛機(jī)設(shè)備艙三維布局設(shè)計(jì),利用約束物體對(duì)應(yīng)布局空間大小、約束的重要性、約束處理的難度來建立約束的優(yōu)先級(jí),控制布局的有序性,在過程中可以保證大部分約束的實(shí)現(xiàn),通過分組分類的待布局物體預(yù)處理技術(shù),保證了有約束布局的重心、容積率和較高布局效率,從而驗(yàn)證了約束模型和布局方法的有效性。