基于nsga算法的管路多目標布局優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及管路多目標布局優(yōu)化領(lǐng)域,具體涉及一種基于非支配排序遺傳算法 (NSGA)的管路多目標布局優(yōu)化方法。
【背景技術(shù)】
[0002] 復(fù)雜裝備如航空發(fā)動機等通常包含大量管路和線纜,在管線敷設(shè)過程中需要考慮 多個工程規(guī)則的要求,該問題就是典型的多目標優(yōu)化問題。目前,管路敷設(shè)一般只考慮工 期、質(zhì)量、費用等指標,采用加權(quán)法或是變權(quán)重加權(quán)的方法將多個目標合并成一個目標進行 優(yōu)化。這種優(yōu)化方法所采用的權(quán)重值具有主觀性,其最優(yōu)解只是多個目標函數(shù)的簡單疊加, 只能得出一個局部最優(yōu)解,無法提供決策者多個解的選擇,并未解決多目標優(yōu)化的本質(zhì)。
[0003] 實際中,大多數(shù)多目標優(yōu)化問題不像單目標優(yōu)化那樣存在唯一的最優(yōu)解,其最優(yōu) 解通常為一個集合,即ParetO解集。只有真正求得管路多目標布局優(yōu)化問題的Pareto最 優(yōu)解集或逼近Pareto最優(yōu)解集,才能更加客觀的反映多目標優(yōu)化問題的本質(zhì),從而真正意 義上解決多目標優(yōu)化問題。目前,基于Pareto解集的管路多目標布局優(yōu)化方法還比較少, 總體上針對這一方面的研究仍處于起步階段,基于NSGA算法解決管路的多目標優(yōu)化問題 理論研究和實際應(yīng)用還未見報道。
【發(fā)明內(nèi)容】
[0004] 為解決上述問題,本發(fā)明提供了一種基于NSGA算法的管路多目標布局優(yōu)化方法, 采用NSGA算法來求得滿足工程規(guī)則的Pareto解集,決策者可以根據(jù)自身需求進行選擇,更 能符合實際生產(chǎn)需要,在本質(zhì)上解決管路布局這一多目標優(yōu)化問題。
[0005] 為實現(xiàn)上述目的,本發(fā)明采取的技術(shù)方案為:
[0006] 基于NSGA算法的管路多目標布局優(yōu)化方法,包括如下步驟:
[0007] S1、基于定長度編碼方法建立管路路徑與個體的對應(yīng)關(guān)系,建立管路長度、彎頭數(shù) 以及安裝性三個目標函數(shù);
[0008] S2、對種群進行非支配排序來計算個體適應(yīng)值,在該過程中引入非支配排序方法 和小生境技術(shù),以保證得到分布均勻的Pareto最優(yōu)解集;
[0009] S3、采用標準遺傳算法中的選擇、交叉、變異操作對種群進行擇優(yōu),如果滿足迭代 停止條件則輸出Pareto解集,如果不滿足停止條件則繼續(xù)執(zhí)行迭代操作。
[0010] 其中,Sl中所述編碼方式上按如下處理:給定起點和終點坐標分別為A(xA,y A)和 B(xb,yB),編碼[xA,yA,1,x B,yB]代表從 A 點經(jīng)過 P(xA,yB)點至 1」達 B 點;編碼[xA,yA,0, xB, yB]代表從A點經(jīng)過Q(xB,yA)點到達B點。需要指出,編碼方式只是提供了一個預(yù)處理,本 發(fā)明的多目標布局優(yōu)化方法具有普適性,其仍可適用于其他編碼方式。
[0011] 其中,SI中所述評價函數(shù)的函數(shù)形式如下:
[0015] 式中,Ipipe為管路長度,b pipe為管路彎頭數(shù),e pipe為表示管路位置能量值,h pipe為管 路與障礙相交的懲罰項,可根據(jù)種群中個體編碼對應(yīng)的路徑計算得到;α,β,γ以及S為 正常數(shù),根據(jù)經(jīng)驗進行調(diào)整確定。
[0016] 其中,S2中所述種群排序和小生境技術(shù)中采用NSGA算法的非支配排序思想計算 個體適應(yīng)值,采用小生境技術(shù)對個體適應(yīng)值的擁擠程度進行計算,并引入共享函數(shù)。具體而 言,S2中所述個體適應(yīng)值可通過下式計算:
[0018] 式中,η為種群的規(guī)模,一個個體用X表示,其他個體用Zt表示,共享前個體的適應(yīng) 值為σ (X),共享后的得到的適應(yīng)值為σ (X) Ishara。
[0019] 式中,所述共享函數(shù)定義如下:
[0021] 式中,兩個個體的歐氏距離用σ (X,Υ)表示,〇 &_表示共享半徑。
[0022] 本發(fā)明具有以下有益效果:
[0023] 采用NSGA算法進行求解可以得到一組滿足要求的非劣解,即Pareto解集,對應(yīng)一 組管路路徑,決策者根據(jù)設(shè)計需要選擇合適的管路敷設(shè)路徑,不僅在本質(zhì)上解決管路多目 標優(yōu)化問題,同時也能符合實際工程設(shè)計需要。
【附圖說明】
[0024] 圖1為本發(fā)明實施例基于NSGA算法的管路多目標布局優(yōu)化方法的流程圖。
[0025] 圖2為本發(fā)明實施例基于NSGA算法的管路多目標布局優(yōu)化方法中各代產(chǎn)生的 Pareto 解集。
[0026] 圖3為本發(fā)明實施例基于NSGA算法的管路多目標布局優(yōu)化方法中獲得的Pareto 解集,即一組非劣解1、2、3和4對應(yīng)的管路布局方案。
【具體實施方式】
[0027] 為了使本發(fā)明的目的及優(yōu)點更加清楚明白,以下結(jié)合實施例對本發(fā)明進行進一步 詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā) 明。
[0028] 如圖1所示,本發(fā)明實施例提供了一種基于NSGA算法的管路多目標布局優(yōu)化方 法,包括如下步驟:
[0029] Sl、采用定長度編碼方法建立管路路徑與個體的對應(yīng)關(guān)系,并建立適合管路敷設(shè) 的編碼機制和評價函數(shù);
[0030] S2、進行種群非支配排序,在該過程中引入種群排序和小生境技術(shù),以保證得到分 布均勾的Pareto最優(yōu)解集;
[0031] S3、基于遺傳算法中的選擇、交叉、變異操作對種群進行擇優(yōu),如果滿足迭代停止 條件則輸出Pareto解集,如果不滿足停止條件則繼續(xù)執(zhí)行迭代操作。
[0032] 編碼方式按如下處理:給定起點和終點坐標分別為A (xA,yA)和B (xB,yB),編碼[xA, yA,1,xB,yB]代表從A點經(jīng)過P (xA,yB)點到達B點;編碼[xA,yA,0, xB,yB]代表從A點經(jīng)過 Q(xB,yA)點到達B點。需要指出,對于本發(fā)明,編碼方式只是提供了一個預(yù)處理,本發(fā)明的 多目標布局優(yōu)化方法適用于其他編碼方式,。
[0033] 本發(fā)明采用的目標函數(shù)分別為:管路長度最短、直角彎頭數(shù)最少、能量值最少(便 于管路的安裝和固定),約束條件是避開周邊所有障礙。
[0034] 首先,建立管道路徑的長度的目標函數(shù),給定個體的編碼[xl,yl,x2, y2…xn,yn, dl,d2,···,dn+1],并給定路徑的起點和終點坐標分別為(xs,ys)和(x t,yt),從而建立計算 路徑的方程:
[0036] 設(shè)彎頭數(shù)的目標函數(shù)為bpipe,對于彎頭數(shù)的求取,采用坐標判別法進行處理,通過 判斷前后坐標之間的關(guān)系來確定彎頭數(shù)的數(shù)量。判斷方法是:坐標χ η= X n := X n 2或者y n =yn i= yn2,若成立此時彎頭數(shù)不發(fā)生變化。若不成立,則彎頭的數(shù)量會增加一個。
[0037] 針對路徑避障問題在平面上采用線段求交的方法,在曲面中則采用近似測地線求 交的方法。通過判斷求得到的交點與障礙物的位置關(guān)系來判斷是否與障礙物相交。
[0038] 為保證管路沿著周圍的附件和設(shè)備安裝便于管道的安裝和固定,采用評價函數(shù)一 能量值來進行描述,能量值用e pilre來表示,設(shè)計思想是:在每一個障礙上都取一點作為能量 源,一般情況下,取障礙的中心作為能量源,給定一條符合給定規(guī)則的路徑,計算路徑上的 各點到能量源的距離,這個距離的總和就是能量值,能量值越小代表給定的路徑越靠近周 圍的障礙,越符合安裝和固定要求。
[0039] 建立評價函數(shù)時,應(yīng)考慮如下因素:
[0040] (1)由于遺傳算法針對的是求最大值問題,而本文優(yōu)化目標為最小化的管路長度、 彎頭數(shù)及能量值,因此進行倒數(shù)處理;
[0041] (2)采用懲罰函數(shù)法處理約束條件-避障;
[0042] (3)考慮到管路長度、彎頭數(shù)及能量值的取值