2019亚洲日韩新视频_97精品在线观看_国产成人精品一区二区_91精品网站在线观看

基于單純形法改進(jìn)的混沌控制算法

來源:期刊VIP網(wǎng)所屬分類:期刊常識(shí)時(shí)間:瀏覽:

  來源:廣西科技大學(xué)學(xué)報(bào) 2022年3期

  作者:夏雨; 湯峰; 余穎燁

  摘 要:混沌控制(chaos control,CC)算法在求解結(jié)構(gòu)可靠度問題中具有優(yōu)越的穩(wěn)健性,但由于其對(duì)步長的嚴(yán)格限制,導(dǎo)致計(jì)算速度較慢。單純形法是一種不將梯度方向作為尋優(yōu)方向的算法,該算法初始計(jì)算速度較快,能夠迅速逼近至極限狀態(tài)面附近,此后計(jì)算速度明顯下降,且計(jì)算結(jié)果誤差較大。為此,提出一種基于單純形法改進(jìn)的混沌控制算法。首先,通過增廣乘子法將可靠度計(jì)算中的非線性等式約束問題轉(zhuǎn)化為非約束問題;然后,通過單純形法進(jìn)行初始迭代計(jì)算;最后,使用CC算法進(jìn)行收斂計(jì)算。算例結(jié)果表明:本文算法能夠有效解決高非線性功能函數(shù)可靠度求解問題,且兼具兩種算法的優(yōu)點(diǎn),與混沌控制算法相比,提高了計(jì)算效率。

  關(guān)鍵詞:結(jié)構(gòu)可靠度;混沌控制算法;單純形法;可靠度計(jì)算;計(jì)算效率

  0 引言

  建筑結(jié)構(gòu)的安全性與穩(wěn)定性對(duì)人類社會(huì)影響巨大,如何對(duì)其進(jìn)行合理評(píng)價(jià)至關(guān)重要。Freudenthal[1]在《結(jié)構(gòu)安全度》一文中提出了結(jié)構(gòu)可靠度的相關(guān)概念;為了得到結(jié)構(gòu)可靠度指標(biāo),Cornell等[2-4]提出了一次可靠度理論,并對(duì)其不斷完善。然而當(dāng)結(jié)構(gòu)功能函數(shù)的非線性程度較大時(shí),經(jīng)典一次可靠度計(jì)算方法往往會(huì)出現(xiàn)迭代振蕩、結(jié)果不準(zhǔn)確的情況。為了解決上述問題,眾多學(xué)者展開了更進(jìn)一步的研究。Liu[5]首先考慮引入merit函數(shù)作為評(píng)價(jià)函數(shù),但是該函數(shù)并不能保證算法的迭代方向?yàn)橄陆捣较?Zhang等[6]考慮引入Armijo準(zhǔn)則進(jìn)行迭代步長的調(diào)控;楊迪雄[7]基于混沌控制理論中的穩(wěn)定轉(zhuǎn)換法,通過引入步長調(diào)控因子提出了混沌控制(chaos control,CC)算法,但由于該方法對(duì)步長的嚴(yán)格限制,致使算法計(jì)算速度相對(duì)較慢;Meng等[8]針對(duì)CC算法中存在的問題,結(jié)合“之”字型迭代路徑,提出了修正混沌控制(modified chaos control,MCC)方法。目前學(xué)術(shù)界對(duì)于Armijo準(zhǔn)則的研究也有了不少的成果[9],而李彬等[10-11]則將Armijo準(zhǔn)則引入到混沌控制算法中,使得計(jì)算速度進(jìn)一步加快,并且進(jìn)行了逆可靠度求解方法的嘗試。與此類似,亢戰(zhàn)等[12]提出的修正迭代算法中也提及了步長調(diào)控因子的控制作用,在文中將其定義為修正系數(shù),并給出了修正系數(shù)的具體計(jì)算方法。

  除此之外,貢金鑫[13]還對(duì)迭代點(diǎn)在極限狀態(tài)面上的負(fù)梯度方向進(jìn)行了深入研究討論,提出了有限步長法,并推理出HL-RF算法只是有限步長法的一個(gè)特例,該方法的初始步長會(huì)影響算法的收斂性。吳狄等[14]提出了自動(dòng)變步長的搜索方法,但是收斂速度較慢。王林軍等[15]使用外罰函數(shù)法進(jìn)行可靠度計(jì)算,但是由于該方法將其中一個(gè)變量用剩余變量進(jìn)行表示,算法魯棒性不好,不夠穩(wěn)定,應(yīng)用受限。高翔等[16]則將模擬退火法與增廣乘子法應(yīng)用到可靠度計(jì)算中,雖然避免了一次二階矩方法中梯度的求解問題,但是卻增加了迭代步驟。許家赫等[17]將自適應(yīng)性PSO算法與fmincon函數(shù)結(jié)合用于尋優(yōu)計(jì)算,拓展了可靠度指標(biāo)的計(jì)算方法。就目前而言,F(xiàn)OSM方法在結(jié)構(gòu)可靠度分析方面的理論研究已經(jīng)比較成熟,但是在實(shí)際的工程可靠度分析中卻鮮有使用,主要原因是:如果結(jié)構(gòu)的功能函數(shù)非線性程度過高,那么將會(huì)導(dǎo)致求解過程復(fù)雜化,致使整個(gè)計(jì)算過程效率低下,誤差也比較大,所以如何實(shí)現(xiàn)快速、準(zhǔn)確求解是當(dāng)前有待解決的一個(gè) 問題。

  針對(duì)上述問題,本文提出一種基于單純形法改進(jìn)的CC算法。首先,通過增廣乘子法將可靠度計(jì)算中的非線性等式約束問題轉(zhuǎn)化為非約束問題;然后,通過單純形法進(jìn)行初始迭代計(jì)算;最后,使用CC算法進(jìn)行收斂計(jì)算,通過數(shù)值算例驗(yàn)證了本文方法的計(jì)算準(zhǔn)確性與效率。

  1 可靠度理論

  Cornell[2]提出將結(jié)構(gòu)構(gòu)件的均值與標(biāo)準(zhǔn)差的比值作為該構(gòu)件的可靠度指標(biāo),并以此建立了一次二階矩方法,但是該方法在實(shí)際應(yīng)用中存在一定的缺陷。Hasofer和Lind重新定義了結(jié)構(gòu)可靠度指標(biāo)的概念,確保了可靠度指標(biāo)在同一構(gòu)件不同極限狀態(tài)函數(shù)下的唯一性,對(duì)可靠度理論進(jìn)行了完善與修正。在數(shù)學(xué)上,可靠度指標(biāo)[β]可以定義為如下非線性約束優(yōu)化問題:

  [minβ=d(X*)=i=1nx*i2] , (1)

  [s. t. G(X)=g(x1, x2, …, xn)=0] . (2)

  式中:[x]是標(biāo)準(zhǔn)正態(tài)空間下的隨機(jī)變量,[G(X)]為結(jié)構(gòu)的功能函數(shù),[β] 是結(jié)構(gòu)可靠度指標(biāo)。結(jié)構(gòu)可靠度的幾何意義是標(biāo)準(zhǔn)正態(tài)空間下,結(jié)構(gòu)功能函數(shù)上一點(diǎn)到原點(diǎn)的最短距離。對(duì)于不服從正態(tài)分布的隨機(jī)變量,可以使用JC法將其當(dāng)量正態(tài)化。該方法的前提條件是驗(yàn)算點(diǎn)[x*i] 處[X'i]和[Xi] 的累積分布函數(shù)和概率密度函數(shù)分別對(duì)應(yīng)相等,由此可以得到正態(tài)化之后的變量均值與標(biāo)準(zhǔn)差:

  [ux′i=x*i-Φ-1[FXi(x*i)]σx′i] , (3)

  [σx′i=?{Φ-1[FXi(x*i)]}fXi(x*i)] . (4)

  式中:[Φ(?)] 為標(biāo)準(zhǔn)正態(tài)的分布函數(shù),而[?(?)] 為標(biāo)準(zhǔn)正態(tài)分布的概率密度函數(shù),[ux′i] 是隨機(jī)變量當(dāng)量正態(tài)化后的均值,[σx′i] 是隨機(jī)變量當(dāng)量正態(tài)化后的標(biāo)準(zhǔn)差。在得到當(dāng)量正態(tài)化后的變量均值與標(biāo)準(zhǔn)差之后便可以進(jìn)行可靠度計(jì)算。

  2 CC算法與單純形法計(jì)算原理

  2.1 CC算法

  在可靠度計(jì)算方法中,經(jīng)典HL-RF算法由于其概念清晰、計(jì)算簡便等優(yōu)點(diǎn),被廣泛用于結(jié)構(gòu)可靠度求解,其核心思想是將結(jié)構(gòu)功能函數(shù)在第k個(gè)迭代點(diǎn)進(jìn)行一階泰勒展開,并使功能函數(shù)在第k+1個(gè)迭代點(diǎn)的函數(shù)值滿足[g(uk+1)=0] ,可得:

  [g(uk)+?g(uk)T(uk+1-uk)=0] . (5)

  令第k+1次迭代點(diǎn)到標(biāo)準(zhǔn)正態(tài)空間下原點(diǎn)的距離為[βk+1] ,并取[uk] 點(diǎn)處梯度負(fù)方向的單位向量作為迭代選取方向,得:

  [uk+1=-βk+1?g(uk)?g(uk)] . (6)

  結(jié)合式(5),可得:

  [βk+1=g(uk)-?g(uk)Tuk?g(uk)] . (7)

  式(6)與式(7)合稱為HL-RF算法,其在解決低非線性功能函數(shù)可靠度求解問題時(shí)計(jì)算效率很高,能夠在迭代過程中逐漸靠近收斂點(diǎn)。但是在解決高非線性功能函數(shù)時(shí),往往會(huì)出現(xiàn)迭代振蕩,甚至不收斂的情況。

  為了提高HL-RF算法的收斂性,楊迪雄[7]采用混沌控制學(xué)理論對(duì)其進(jìn)行改進(jìn),提出了CC算法。該算法引入混沌控制因子對(duì)迭代過程中的振蕩情況進(jìn)行了控制,表達(dá)式變?yōu)椋?/p>

  [uk+1=uk+λC[F(uk)-uk]] , (8)

  [F(uk)=[?g(uk)]Tuk-g(uk)?g(uk)2?g(uk)] . (9)

  式中:[C]代表n×n維對(duì)合矩陣,一般情況下取單位矩陣,[λ]是一個(gè)常數(shù),代表混沌控制因子。通過上式可以發(fā)現(xiàn),CC算法相較于經(jīng)典HL-RF算法而言,補(bǔ)充了迭代步長控制計(jì)算步驟。先通過HL-RF算法求解出[F(uk)]點(diǎn),然后以本次迭代點(diǎn)[uk]為基點(diǎn),將[uk]到[F(uk)]點(diǎn)的方向作為迭代方向,并在該迭代方向上選取一定的步長。如果[λ=0] ,則[uk+1=uk],無法進(jìn)行迭代計(jì)算;如果[λ=1],則可得[uk+1=F(uk)],此時(shí)的迭代公式就變成了經(jīng)典HL-RF算法,所以[λ]的取值為0 ~ 1。為了保證收斂性,[λ]的取值一般設(shè)置為較小的常數(shù),導(dǎo)致CC算法的步長較小,收斂速度較慢。如果能使CC算法初始計(jì)算點(diǎn)盡可能靠近MPP點(diǎn),就可以減少計(jì)算量,加快算法整體收斂速度。

  2.2 單純形法

  單純形法是一種不將函數(shù)梯度信息作為下降方向的算法。該算法在計(jì)算初始階段,收斂速度較快,具有一定的計(jì)算優(yōu)勢,但是在貼近極限狀態(tài)面之后,計(jì)算速度反而開始下降,且單純形法是一種

  用于計(jì)算無約束問題的算法,根據(jù)式(1)、式(2)可知,結(jié)構(gòu)可靠度的計(jì)算屬于有約束問題。通過增廣乘子法可以將有約束的可靠度計(jì)算問題轉(zhuǎn)變?yōu)闊o約束優(yōu)化模型[Mρ]。

  [Mρ(X, r, ρ)=i=1n(Xi-μiσi)2+]

  [r2j=1n[gj(Xi)]2+j=1nρjgj(Xi] [)]. (10)

  式中:[ρ=[ρ1, ρ2, …, ρm]] 為拉格朗日乘子,[r]為罰函數(shù)的懲罰因子,[r2j=1n[gj(Xi)]2] 為乘子項(xiàng),[j=1nρjgj(Xi)] 為懲罰項(xiàng)。

  通過增廣乘子算法對(duì)功能函數(shù)與可靠度指標(biāo)計(jì)算公式進(jìn)行結(jié)合,使得單純形法可以用于可靠度問題的求解。該算法的基本思想是:根據(jù)未知變量的個(gè)數(shù),選擇n+1個(gè)不同的點(diǎn)構(gòu)成正單純形,分別計(jì)算正單純形的n+1個(gè)頂點(diǎn)函數(shù)值,對(duì)比優(yōu)劣,找到函數(shù)值最大的點(diǎn)及函數(shù)下降方向,據(jù)此來搜索新的點(diǎn)代替最大值點(diǎn),依次更迭。在迭代點(diǎn)未接近極限狀態(tài)面時(shí),[Mρ]優(yōu)化模型中的懲罰項(xiàng)發(fā)揮主要作用,迫使算法向極限狀態(tài)面逼近;而當(dāng)?shù)c(diǎn)逼近至極限狀態(tài)面附近,懲罰項(xiàng)與乘子項(xiàng)趨近于0,此時(shí)可靠度指標(biāo)的計(jì)算公式便可以發(fā)揮主要作用,使點(diǎn)通過迭代逐步逼近到最有可能失效點(diǎn)附近,并求得可靠度指標(biāo),該算法的迭代示意圖如圖1所示。

  圖1中,由x3、[x1]與x2 3個(gè)點(diǎn)共同組成一個(gè)單純形,3個(gè)點(diǎn)分別為單純形的3個(gè)頂點(diǎn)。x3為極差點(diǎn),xc為反射基點(diǎn),xD為反射點(diǎn),xR為延伸點(diǎn),xp為收縮點(diǎn)。

  根據(jù)單純形法的基本思想,該理論只適合無約束函數(shù)的計(jì)算,而增廣乘子法可以將約束優(yōu)化問題轉(zhuǎn)化為無約束優(yōu)化問題,這樣單純形法就可以進(jìn)行可靠度求解。計(jì)算步驟如下所示:

  Step 1 將[Mρ]作為目標(biāo)函數(shù),選取均值點(diǎn)[x11=(x111, x112, …, x11n)T]作為初始點(diǎn),并將其視為初始單純形的一個(gè)頂點(diǎn),采用式(11)計(jì)算正單純形剩余頂點(diǎn)的坐標(biāo)[19]:

  [x12=x11+(d1, d2, d2, …, d2)T,x13=x11+(d2, d1,d2,…, d2)T,x14=x11+(d2, d2, d1,…, d2)T, ? x1n+1=x11+(d2, d2, d2, …, d1)T.] (11)

  其中,[d1=sn2(n+1+n-1)],[d2=sn2]

  [(n+1-1)],[s]為初始正單純形的邊長。

  Step 2 計(jì)算[n+1]個(gè)正單純形頂點(diǎn)的函數(shù)值,并找出其中的最好點(diǎn)[(][x1][)]與最差點(diǎn)[(][x3][)],然后計(jì)算除最差點(diǎn)外剩余點(diǎn)的中心點(diǎn)xc,以此作為基點(diǎn)。

  推薦閱讀:計(jì)算機(jī)算法方面能選擇哪些sci期刊

如果您現(xiàn)在遇到期刊選擇、論文內(nèi)容改善、論文投稿周期長、難錄用、多次退修、多次被拒等問題,可以告訴學(xué)術(shù)顧問,解答疑問同時(shí)給出解決方案 。

主站蜘蛛池模板: 岳池县| 榆林市| 广汉市| 文成县| 漾濞| 论坛| 平定县| 炎陵县| 曲阳县| 航空| 乌恰县| 江川县| 柳州市| 普洱| 德清县| 土默特左旗| 平舆县| 万宁市| 桐庐县| 邹平县| 城固县| 突泉县| 游戏| 岚皋县| 沈阳市| 边坝县| 武威市| 西盟| 宁明县| 钟山县| 咸宁市| 余江县| 汤原县| 松桃| 久治县| 乌鲁木齐市| 财经| 仁寿县| 花莲县| 富蕴县| 巴林左旗|