劉 巖
(長安大學(xué) 建筑工程學(xué)院,陜西 西安710061)
隨著結(jié)構(gòu)優(yōu)化設(shè)計、電算技術(shù)的發(fā)展,國內(nèi)外學(xué)者曾提出若干關(guān)于望遠(yuǎn)鏡結(jié)構(gòu)設(shè)計的優(yōu)化方法[1-3]。Hoerner提出了保型設(shè)計這一概念,后來陳樹勛進一步提出了嚴(yán)格保型優(yōu)化設(shè)計。這一方法在理論上可行,但據(jù)實際應(yīng)用仍然有距離。其原因是:背架結(jié)構(gòu)節(jié)點數(shù) (N)過多,其約束條件數(shù) (共3 N)會顯著超過設(shè)計變量數(shù) (通常以截面尺寸為變量),導(dǎo)致方程組無解。于是,Leve又提出采用準(zhǔn)則法對望遠(yuǎn)鏡結(jié)構(gòu)進行優(yōu)化設(shè)計,但該方法理論基礎(chǔ)不是太牢固,迭代設(shè)計過程不夠穩(wěn)定,同時存在對不同問題需要推導(dǎo)不同的準(zhǔn)則通式等缺陷,在一定程度上影響了其被廣泛應(yīng)用的進程。本文的研究對象——新疆110m 全可動射電望遠(yuǎn)鏡背架結(jié)構(gòu)形式較為復(fù)雜,即使同一位置的一圈桿件采用相同截面,仍然有上百個獨立變量,且均為型材式的圓鋼管,這一特征導(dǎo)致截面優(yōu)化尤為困難。
由此可見,傳統(tǒng)的優(yōu)化算法隨著反射面口徑的不斷擴大,在變量數(shù)目激增且均為離散型變量的情況下顯得不再那么奏效,因此需要結(jié)合本文的研究對象尋求簡便且能解決大規(guī)模變量數(shù)優(yōu)化的高效算法。
目前,遺傳算法是一種通過模擬自然進化過程搜索問題最優(yōu)解的方法。其主要特點是所采用的整體搜索策略和優(yōu)化搜索方法在計算時不依賴于梯度信息或其它輔助信息,本身易于實現(xiàn)并行化以及更好的全局尋優(yōu)能力,其標(biāo)準(zhǔn)算法的基本分析流程如圖1所示。
圖1 標(biāo)準(zhǔn)遺傳算法分析流程
具體針對新疆即將建造的110 m 巨型全可動射電望遠(yuǎn)鏡,選取角錐系背架結(jié)構(gòu)方案進行優(yōu)化計算,給出背架結(jié)構(gòu)桿件布置如圖2所示。
圖2 背架結(jié)構(gòu)
整個背架結(jié)構(gòu)上弦共1056個節(jié)點,8654根桿件。同一環(huán)桿件定義為一個截面變量,這樣對一榀單元給予變量標(biāo)定,共有120個變量。以反射面面型精度最高 (即RMS值最?。槟繕?biāo),對背架結(jié)構(gòu)截面進行優(yōu)化,其優(yōu)化數(shù)學(xué)模型如下
其中,式 (1)代表將截面尺寸作為自變量,式 (2)表示約束條件,在具體優(yōu)化程序中體現(xiàn)為拉彎構(gòu)件按照強度、壓彎構(gòu)件按照穩(wěn)定分別進行驗算并對自變量的選取予以約束,式 (3)體現(xiàn)了背架結(jié)構(gòu)桿件截面作為圓鋼管型材,其截面庫可選截面種類對截面的約束。
通過對背架結(jié)構(gòu)的相關(guān)描述可知,本優(yōu)化問題的特點——變量數(shù)龐大且均為型材式變量,若采用標(biāo)準(zhǔn)遺傳算法,在初始階段,變量數(shù)與種群個體數(shù)在同一數(shù)量級,導(dǎo)致初始種群多樣性較為簡單,不夠豐富;其次,由于初始種群個體間相似度本身較高,若采用標(biāo)準(zhǔn)的交叉和變異,而不針對個體特征加以有效干預(yù),會使得交叉后產(chǎn)生的父、子兩代個體間并無顯著改善[4,5]。因此為避免這種 “近親繁殖”,提高遺傳算法效率,通過對標(biāo)準(zhǔn)遺傳算法中的一些關(guān)鍵算子及相關(guān)參數(shù)提出改進,最終采用改進遺傳算法作為本問題的優(yōu)化分析方法,解決了背架結(jié)構(gòu)大規(guī)模型材式變量的優(yōu)化問題。如下就這些具體的相關(guān)改進措施予以必要的闡述。
種群的多樣性可作為評價遺傳進化過程的重要標(biāo)志。當(dāng)遺傳算法找到存在極值的某個區(qū)域時 (無論是全局還是局部),種群中的個體會持續(xù)不斷的向該區(qū)域集中,從而出現(xiàn)諸多相似甚至相同的個體,導(dǎo)致種群多樣性程度逐漸降低,最終影響到算法操作的效率以及搜索其它區(qū)域極值的能力。
為解決這個問題,采用Hamming 距離 (Hamming 距離是指兩個體相應(yīng)基因片段不同基因位的總數(shù))控制初始種群的個體差異,用來豐富種群多樣性,遏制超長個體的快速繁殖。具體方法如下:種群初始化中,每產(chǎn)生新的個體,都與前面所有個體進行比較,若新個體與前面某一個體的Hamming距離小于某一設(shè)定值 (例如:2~4,該數(shù)與個體編碼長度有關(guān)),則停止比較,跳出循環(huán),重新產(chǎn)生新個體。如此往復(fù)循環(huán),直到產(chǎn)生個體間均有一定差異的種群[6,7]。
適應(yīng)度比例法是目前遺傳算法中最基本也是最常用的選擇方法,是一種回放式隨機抽樣的方法。但若單純采用適應(yīng)度比例法進行選擇,有可能會出現(xiàn)最優(yōu)個體在選擇過程中沒有被選擇復(fù)制到下一代。因此,本文在傳統(tǒng)選擇算子的基礎(chǔ)上,引入父子競爭機制[8]。具體表現(xiàn)為父代的兩個體交叉產(chǎn)生出子代的兩個體,對這4個個體 (父子兩代共4個)按照適應(yīng)度高低排列,最高的2個個體進入下一代;如果父子兩代的個體適應(yīng)度相等,子代個體優(yōu)先進入下一代[9]。將這兩種方法結(jié)合起來,既能保證全局多峰性質(zhì)的空間搜索,同時又能保證算法的收斂性。
交叉操作是遺傳算法的主要進化手段,交叉算子的設(shè)計包括以下3個方面:交叉點位置的確定、個體交叉概率的選擇以及交叉配對方式的選擇。標(biāo)準(zhǔn)算法中交叉算子對所有個體采用同一概率,并未具體結(jié)合個體的特點予以考慮。結(jié)合本問題特點——變量規(guī)模數(shù)龐大,若采用標(biāo)準(zhǔn)算法進行配對交叉,很容易產(chǎn)生前述提及的 “近親繁殖”問題。因此對這三方面做出了如下改進:
(1)交叉位置的選擇:兩個體交叉最常用的就是單點交叉,當(dāng)對兩個體X、Y 進行交叉操作時,設(shè)X ={x1,x2,…,xM},Y ={y1,y2,…,yM},假 使交叉點選 擇不當(dāng),仍有可能得到與父代一模一樣的個體,導(dǎo)致交叉操作失效,算法無法跳出局部極值點[10],如圖3所示。因此有必要合理準(zhǔn)確的定出其有效交叉域,并且在該范圍內(nèi)隨機的進行交叉點選擇,確保父子兩代個體具有明顯的差異性。其有效域確定方法如下[11]
有效域為:(vmin,vmax)。如:例如兩個體X =1101101,Y =1010011,其交叉有效區(qū)域為 (2,6)。
圖3 單點交叉無效操作
(2)自適應(yīng)交叉概率:遺傳算法的收斂性直接受到交叉概率的影響,較大的交叉概率pc使得新個體產(chǎn)生的速度較快,從而也導(dǎo)致優(yōu)秀個體被破壞的可能性越高;而較小的交叉概率pc又會使得算法的有效進程大大降低。因此需要因個體的差異性不同而采用自適應(yīng)交叉概率,即適應(yīng)度值較高的個體采用較小的交叉概率,適應(yīng)度值較低的個體采用較高的交叉概率,如式 (4)所示,公式中各符號的意義請參見文獻 [9]
(3)相關(guān)性配對交叉:相關(guān)性描述了兩個體間的相似程度,設(shè)兩個體X、Y 分別為
其中:xi∈{0,1},yi∈{0,1},i=1,2,...,M。二者間的不相關(guān)指數(shù)如式 (5)所示
由此可以看出r(X,Y)代表了個X 和Y 之間不同基因的數(shù)目,因此在選擇算子結(jié)束時,對篩選出的個體兩兩之間分別進行相關(guān)性計算,將相關(guān)性較小的兩兩個體組成配對,使得后續(xù)交叉操作的有效性大大提高。
變異算子對遺傳算法的局部搜索能力起到了輔助作用。該算子主要包含兩方面:變異點位置的確定以及基因值的替換方式。最常用的變異算子是以某概率進行隨機單基因座變異,而變異概率是隨著進化階段的更迭,不同階段針對不同個體采用自適應(yīng)的變異概率,如式 (6)所示
其中,pm1=0.1;fmax是群體中最大適應(yīng)度值;為各代群體平均適應(yīng)度值;f 是待變異的個體適應(yīng)度值。
為了說明改進算法的有效性,首先選取優(yōu)化領(lǐng)域中常用的經(jīng)典測試函數(shù)和典型結(jié)構(gòu)模型為算例,分別采用標(biāo)準(zhǔn)遺傳算法和本文的改進遺傳算法,對其展開優(yōu)化計算分析。通過對優(yōu)化結(jié)果的優(yōu)越性、迭代進化過程快慢、優(yōu)化空間改進幅度大小等多方面進行對比,表明改進遺傳算法的優(yōu)勢。
(1)問題描述:利用標(biāo)準(zhǔn)遺傳算法和改進遺傳算法對2個常用的二元多峰數(shù)值Shaffer函數(shù)進行優(yōu)化測試計算,并進行比較。其中函數(shù)f1是求最小值,函數(shù)f2是求最大值。且兩個函數(shù)的定義域均為-100<x,y<100
(2)算法設(shè)置:對于標(biāo)準(zhǔn)遺傳算法和改進遺傳算法選擇相同的參數(shù):種群規(guī)模數(shù)M=100,交叉和變異算子均采用自適應(yīng)的交叉概率和變異概率,遺傳的進化終止代數(shù)T=200。由于f2是求最大值,可直接用函數(shù)本身作為其適應(yīng)度函數(shù);而f1是求最小值,需采用置大數(shù)(可設(shè)置為100)與函數(shù)做差后的結(jié)果,作為其適應(yīng)度函數(shù)。同時,引入父子競爭機制。兩種算法各自隨機運行50次,其數(shù)值計算結(jié)果見表1。
表1 標(biāo)準(zhǔn)算法和改進算法測試結(jié)果對比
(3)標(biāo)準(zhǔn)算法與改進算法優(yōu)結(jié)果比較:從表1以及圖4可知,改進算法最小收斂代數(shù)、平均收斂代數(shù)都比標(biāo)準(zhǔn)算法相應(yīng)值要少,改進算法更為穩(wěn)定,不但很快收斂到全局最大值,且種群的優(yōu)良性程度好。表明在優(yōu)化過程中由于改進遺傳算法引入了初始種群的多樣性,以及交叉算子有效性的大大增強,使得優(yōu)秀個體得以更快的產(chǎn)生。
圖4 測試函數(shù)平均適應(yīng)度曲線
(1)問題描述:十桿桁架結(jié)構(gòu)如圖5 所示,已知P=10kN。材料屬性為:彈性模量E=2.0×105Mpa,密度=7.8×103kg/m3,材料的容許應(yīng)力為 [σ]=100 MPa,a=b=2 m。根 據(jù) 材 料 供 應(yīng) 的 截 面 庫A = [1.132,1.432,1.459,1.749,1.859,2.109,2.276,2.359,2.659,2.756,3.086,3.382,3.486,3.791,4.292,5.076]cm2,該問題屬于離散變量優(yōu)化設(shè)計,采用遺傳算法設(shè)計此結(jié)構(gòu),使得結(jié)構(gòu)最輕。
圖5 十桿桁架
(2)算法設(shè)置:以桿件截面面積為設(shè)計變量,結(jié)構(gòu)質(zhì)量最輕為設(shè)計目標(biāo),其優(yōu)化數(shù)學(xué)模型如式(7)~式(9)所示
式中:C 為罰因子,采用大數(shù),本文取C=10 000
式中:Cmax為一個適當(dāng)?shù)南鄬^大的數(shù)。
由材料力學(xué)強度理論可知,各桿件應(yīng)力應(yīng)滿足約束條件,如式 (8)所示。具體計算時,由于是求質(zhì)量最輕,即最小值問題,并考慮到約束條件,采用罰函數(shù)將目標(biāo)函數(shù)轉(zhuǎn)化為遺傳算法所能處理的無約束問題,如式 (9)所示,這樣解空間中某一點目標(biāo)函數(shù)值W 到搜索空間對應(yīng)個體的適應(yīng)度函數(shù)采用如式 (10)表示。運行參數(shù)為:群體規(guī)模M=100,遺傳的進化終止代數(shù)T=100,改進遺傳算法采用上述相關(guān)性配對交叉,并采用自適應(yīng)交叉和變異概率,同時引入父子競爭機制。
(3)標(biāo)準(zhǔn)算法與改進算法結(jié)果比較:最終優(yōu)化的迭代曲線如圖6所示,由圖5可以看出采用標(biāo)準(zhǔn)遺傳算法目標(biāo)函數(shù)從第80代基本開始收斂,最優(yōu)值為19.9kg;而采用改進遺傳算法,目標(biāo)函數(shù)從第55代基本開始收斂,最優(yōu)值為16.3kg。
從如上給出的多峰值數(shù)學(xué)函數(shù)、平面桁架結(jié)構(gòu)優(yōu)化分析可以看出,本文提出的改進遺傳算法較標(biāo)準(zhǔn)遺傳算法而言,在優(yōu)化全程中,由于采用了自適應(yīng)的交叉和變異概率,使其能依據(jù)個體的優(yōu)劣程度靈活的選擇交叉和變異概率,且在交叉中通過引入不相關(guān)性指數(shù)配對個體,確定有效區(qū)域來進行交叉,有效避免了近親繁殖,從而使得每代種群的多樣性及平均適應(yīng)度值始終高于標(biāo)準(zhǔn)算法的結(jié)果。而在獲取優(yōu)秀個體方面,改進算法比標(biāo)準(zhǔn)算法能較早的獲得更為優(yōu)秀的解,且改進幅度也比標(biāo)準(zhǔn)算法更大。較好體現(xiàn)出了本文改進算法的有效性和先進性。
如前所述,選取常用的圓型鋼管截面構(gòu)建截面庫,共有16種截面?zhèn)溥x,編碼與型鋼截面對應(yīng)關(guān)系如表2所示。按照已建立的優(yōu)化數(shù)學(xué)模型 (式 (1)~式 (3)),以反射面RMS值為優(yōu)化目標(biāo),構(gòu)件強度 (或穩(wěn)定性)為約束條件,分別采用標(biāo)準(zhǔn)遺傳算法以及改進遺傳算法對背架結(jié)構(gòu)桿件進行截面優(yōu)化,兩種算法的參數(shù)取值及說明見表3,最終優(yōu)化迭代曲線如圖7所示。這里給出采用改進遺傳算法優(yōu)化后的背架結(jié)構(gòu)桿件截面尺寸:上弦徑向桿件最大截面為146×7mm,最小截面為121×6mm;環(huán)向桿件最大截面為146×7mm,最小截面為121×6mm;下弦徑向桿件最大截面為245×8mm,最小截面為121×6mm;環(huán)向桿件最大截面為146×7mm,最小截面為121×6mm;腹桿最大截面為219×8mm,最小截面為83×4mm。
圖6 十桿桁架優(yōu)化結(jié)果
表2 編碼串與截面尺寸的映射關(guān)系
表3 遺傳算法中的參數(shù)取值
圖7 背架結(jié)構(gòu)截面優(yōu)化結(jié)果
從優(yōu)化歷程曲線來看,本文提出的集成多種改進措施后的遺傳算法,針對該巨型射電望遠(yuǎn)鏡背架結(jié)構(gòu)截面優(yōu)化,其優(yōu)化進程較標(biāo)準(zhǔn)算法能較快的產(chǎn)生優(yōu)秀個體;從優(yōu)化歷程變化幅度來看,采用改進算法其變化幅度更大;從最后的優(yōu)化目標(biāo)來看RMS 值更小,即結(jié)果更優(yōu) (標(biāo)準(zhǔn)算法為0.34mm,改進算法為0.306 mm);較為有效地解決了望遠(yuǎn)鏡背架結(jié)構(gòu)大規(guī)模數(shù)型材式變量的優(yōu)化問題。
(1)選取經(jīng)典的數(shù)學(xué)測試函數(shù)以及十桿優(yōu)化模型作為算例,較好的驗證了本文提出的改進遺傳算法。
(2)以110 m 角錐式網(wǎng)架方案背架結(jié)構(gòu)為分析對象,主反射面RMS值為優(yōu)化目標(biāo),在標(biāo)準(zhǔn)算法對截面優(yōu)化取得高精度結(jié)果的前提下,采用本文提出的改進算法對結(jié)構(gòu)予以優(yōu)化,發(fā)現(xiàn)不但精度提高10%,而且獲得優(yōu)化結(jié)果的速度更快,優(yōu)化幅度更大。
(1)對目前主要的望遠(yuǎn)鏡結(jié)構(gòu)優(yōu)化分析方法進行了總結(jié),在分析了各自優(yōu)缺點的基礎(chǔ)上,針對背架結(jié)構(gòu)截面變量數(shù)較多,且均為圓鋼管型材截面這一特點,對其算法中的部分算子進行了局部改進,提出了改進的優(yōu)化算法,解決了大規(guī)模離散型變量的優(yōu)化問題,目前適用于望遠(yuǎn)鏡結(jié)構(gòu)型鋼截面的優(yōu)化。
(2)本文提出的優(yōu)化方法主要是針對背架結(jié)構(gòu)截面尺寸的優(yōu)化,并且是在重力荷載下的優(yōu)化。今后可繼續(xù)拓寬全可動望遠(yuǎn)鏡背架結(jié)構(gòu)優(yōu)化層次,逐漸過渡到節(jié)點坐標(biāo)優(yōu)化以及背架結(jié)構(gòu)拓?fù)鋬?yōu)化,最終能夠達到對背架結(jié)構(gòu)實現(xiàn)多工況下的多類變量優(yōu)化。
[1]LIU Yan.Structural selection and accuracy control of the large aperture all-movable telescope [D].Harbin:Harbin Institute of Technology,2013:4-6 (in Chinese).[劉巖.超大口徑全可動望遠(yuǎn)鏡結(jié)構(gòu)選型及精度控制 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2013:4-6.]
[2]ZHAO Yun.Design of the three millimeter wave beam Cassegrain antenna [D].Nanjing:Nanjing University of Science and Technology,2012:32-38(in Chinese). [趙蕓.毫米波三波束卡塞格倫天線設(shè)計[D].南京:南京理工大學(xué),2012:32-38.]
[3]Fu L,Du XW,Wan ZM.Analysis of effect of pressure on surface accuracy for inflatable antenna [J].Journal of Harbin Institute of Technology,2008,15 (6):786-789.
[4]BIAN Xia,MI Liang.Development on genetic algorithm theory and its applications [J].Application Research of Computers,2010,27 (7):2425-2429 (in Chinese).[邊霞,米良.遺傳算法理論及其應(yīng)用研究進展 [J].計算機應(yīng)用研究,2010,27 (7):2425-2429.]
[5]ZHUANG Jian,YANG Qingyu,DU Haifeng.High efficient complex system genetic algorithm [J].Journal of Software,2010,21 (11):2790-2801 (in Chinese).[莊健,楊清宇,杜海峰.一種高效的復(fù)雜系統(tǒng)遺傳算法 [J].軟件學(xué)報,2010,21 (11):2790-2801.]
[6]WANG Yinnian.Research and applications of the genetic algorithm [D]. Wuxi:Jiangnan University,2009:35-40 (in Chinese).[王銀年.遺傳算法的研究與應(yīng)用 [D].無錫:江南大學(xué),2009:35-40.]
[7]KUANG Suqiong.Research on the adaptive control of genetic algorithm parameters and convergence [D].Changsha:Central South University,2009:86-94 (in Chinese). [鄺溯瓊.遺傳算法參數(shù)自適應(yīng)控制及收斂性研究 [D].長沙:中南大學(xué),2009:86-94.]
[8]YUE Qin,F(xiàn)ENG Shan.The statistical analyses for computational performance of the genetic algorithms[J].Chinese Journal of Computers,2009,32 (12):2389-2392 (in Chinese).[岳嵚,馮珊.遺傳算法的計算性能的統(tǒng)計分析 [J].計算機學(xué)報,2009,32 (12):2389-2392.]
[9]CAO Daoyou,CHENG Jiaxing.A genetic algorithm based on modified selection operator and crossover operator [J].Computer Technology and Development,2010,20 (2):44-47 (in Chinese).[曹道友,程家興.基于改進的選擇算子和交叉算子的遺 傳 算 法 [J].計 算 機 技 術(shù) 與 發(fā) 展,2010,20 (2):44-47.]
[10]JIANG Wei.Improvement of crossover operator in the genetic algorithm [D].Changchun:Jilin University,2009:104-113(in Chinese).[姜薇.遺傳算法中交叉算法的改進 [D].長春:吉林大學(xué),2009:104-113.]
[11]ZHANG Chen,ZHAN Zhihui.Comparison of selection strategy in genetic algorithm [J].Computer Engineering and Design,2009,30 (23):5471-5474 (in Chinese). [張琛,詹志輝.遺傳算法選擇策略比較 [J].計算機工程與設(shè)計,2009,30 (23):5471-5474.]