張明亮
(中鐵第五勘察設計院集團有限公司鄭州分院 河南鄭州 450001)
道路縱斷面設計優(yōu)化是一個復雜的過程。需要綜合考慮道路性質(等級、車道數、設計速度、服務對象)、建設條件(地物、地形、地質、水文等)、沿線構造物(路基、橋梁、涵洞、隧道等)多方面因素,得到平縱組合合理、平順、流暢的線形,并達到費用省、行車安全、養(yǎng)護簡單的目的。
在縱斷面設計過程中,傳統(tǒng)人工拉坡方式具有較強的主觀性,受經驗、精力、時間所限,即使反復的試坡、調整、核對,也無法保證結果最優(yōu)。設計成果的優(yōu)劣,與設計人員的技術水平和經驗關系甚大[1]。
為了消除人的主觀因素影響,國內多人嘗試采用如遺傳算法[2]、動態(tài)規(guī)劃法[3]、蟻群算法[4]、自由落體法[5]等諸多計算方法,通過建立數學模型,進行縱斷面優(yōu)化任務的自動化嘗試。然而當路線長度較長時,解算規(guī)模爆炸式增長,存在對計算機性能要求苛刻、運算時間過長等問題,難以滿足一般設計工作的需求。
經實踐探索,運用遺傳算法,通過精細化參數控制、優(yōu)化進化策略,能夠有效減小解算規(guī)模,實現(xiàn)縱斷面設計優(yōu)化的目的。
遺傳算法是計算機科學人工智能領域中用于解決最優(yōu)化問題的一種啟發(fā)式搜索算法[6]。其基本思想是模擬自然進化過程,通過對群體中具有某種特性的個體進行量化識別,通過“優(yōu)勝劣汰”的篩選機制,經自然選擇、遺傳、雜交、突變等操作,生成下一代新的群體,使群體內的個體對所處環(huán)境的適應性相對上一代不斷提高。如此經過若干代的循環(huán),逐漸接近更優(yōu)的解。
遺傳算法的基本流程如圖1所示。
圖1 遺傳算法 基本流程
遺傳算法的術語描述,以及其在縱斷面優(yōu)化設計應用的實際意義,列表對照見表1。
表1 算法概念對照
路線縱斷面設計成果有:縱斷面圖、縱坡豎曲線表,實質核心內容為路線中多個變坡點信息的集合。單個變坡點可歸結為3項基本信息:變坡點樁號(L)、變坡點高程(H)和豎曲線半徑(R)。而其他要素諸如坡長、坡度、豎曲線長、改正值等內容,均可由前述3項基本信息通過變換計算得到。
根據經驗,在多數實際項目中,豎曲線半徑的調整對優(yōu)化結果表現(xiàn)不明顯[7]。故僅把變坡點樁號(L)、變坡點高程(H)作為設計優(yōu)化變量。
遺傳算法編碼中,目前常用有二進制編碼、字符編碼、浮點數編碼等編碼技術。本次探索采用最簡單、最易用的二進制編碼方案。
假設優(yōu)化區(qū)段起點樁號為L0,終點樁號為L1,高程取值范圍為h0~h1。
(1)樁號編碼、解碼
考慮到變坡點樁號在小范圍微調對整體方案的影響有限,為了控制解算規(guī)模、提高效率,樁號編碼的精度采用10 m。
則樁號編碼的二進制位長的計算公式如下:
式中,n1為樁號編碼的二進制位長度;L0為區(qū)段起始樁號(m);L1為區(qū)段終止樁號(m)。
每一個變坡點樁號的二進制編碼采用n1位長的{0,1}字符串表達,其轉換為十進制的正整數,記作Xi。則對應的樁號解碼公式為:
式中,Li為解碼后的樁號值(m)。
(2)高程編碼、解碼
高程編碼的精度采用0.05 m。
則高程編碼的二進制位長的計算公式為:
式中,n2為高程編碼的二進制位長度;h0為高程范圍最小值(m);h1為高程范圍最大值(m)。
每一個變坡點高程的二進制編碼采用n2位長的{0,1}字符串表達,其轉換為十進制的正整數,記作Yi。則對應的高程解碼公式為:
式中,Hi為解碼后的高程值(m)。
在縱斷面設計優(yōu)化過程中,邊界條件主要是指某些位置的高程控制條件[8]。主要可分為三類,即:上限點、下限點、必經點。
為了后續(xù)操作方便,對三類高程控制條件進行歸一化處理,形成統(tǒng)一格式:樁號、下限高程、上限高程。詳見表2。
表2 邊界條件的數據描述
若群體規(guī)模過小,多樣性不足會導致尋優(yōu)失敗。而群體規(guī)模過大,又會出現(xiàn)解算規(guī)模大、運算效率低的現(xiàn)象。經測試,初始群體取10~20是較為合理的規(guī)模。
初始群體中個體的變坡點個數,可按照道路等級、道路長度進行估算。平均坡長可按照當前道路設計速度對應最小坡長[9]的2~5倍進行估算。當地形復雜、道路等級低時,變坡點個數可取大值;當地形平坦、道路等級較高時,變坡點個數宜取小值。
需要特別指出的是,該處變坡點個數的初值確定,并不會對優(yōu)化最終結果的變坡點個數造成影響。
通過隨機生成二進制字符串的方法,逐變坡點、逐條縱斷進行填充,形成第一代初始群體。
遺傳算法中,所謂適應度函數是判斷群體中每個個體優(yōu)劣的標準。適應度函數構建的優(yōu)劣,對遺傳算法的性能影響甚大,若適應度函數構建不當,則有可能達不到整體最優(yōu)效果。
考慮到不同的縱斷面方案,有著不同的路、橋、隧比例,同時對應不同的費用。在縱斷面設計優(yōu)化的應用中,可將一條縱斷面方案的工程數量、估算費用[10-11]作為評價適應度的基本指標。
(1)工程數量
為了將工程規(guī)模自動隨著縱斷面方案進行聯(lián)動,采用的方法是:首先按照一定樁號間隔(一般取值2~20 m),逐樁號計算填挖高度,然后根據預設的起橋高度值、設隧深度值對全線進行橋梁、隧道樁號段落進行初步分劃,最后對橋隧段落進行檢查整合處理(例如:取消過短的橋梁、合并間隔較小的橋梁、合并間隔較小的隧道等)后,形成最終的路基、橋梁、隧道段落。
逐段估算工程數量。橋梁、隧道工程數量估算僅逐段計算延米長度;路基內容相對略為復雜,由于是估算,為控制資源開銷,可暫假定橫斷面地面線為水平、假定無超高無加寬,路基土方數量、邊坡面積、路面面積等工程數量僅為路基寬度、邊坡坡度、填挖高度的函數,逐段落、逐樁號計算即可獲得。
(2)估算費用
不同的縱斷面方案,有著不同的路、橋、隧比例,同時對應不同的費用。根據預設單價指標、前述工程數量進行費用估算。即實現(xiàn)工程費用自動
隨著縱斷面方案進行聯(lián)動。估算費用公式為:
式中,F(xiàn)i為個體對應的估算費用合計值(萬元);FL為路基工程費用(萬元);FQ為橋梁工程費用(萬元);FS為隧道工程費用(萬元);FD為用地及其它工程費用(萬元)。
(3)適應度計算
根據遺傳算法后續(xù)選擇操作的要求,適應度應為正數。而工程費用雖然為正,但優(yōu)化的目標是要費用最省,故可根據工程費用進一步變換計算得到適應度。
適應度計算公式為:
式中,fi為個體的適應度值(萬元);Fmax為當代群體中估算費用的最大值(萬元)。
以群體中的所有個體為對象,依次進行選擇、雜交和變異三項基本操作。
(1)選擇
選擇操作的前提,應先對每個個體進行適應度評價。在縱斷面設計優(yōu)化應用中,采取最優(yōu)保存策略[12],即適應度最高的個體不參與后續(xù)雜交和變異,而是用它來替換掉當代群體中適應度最低的個體。
其實際意義在于:當前最好的縱斷面方案,直接進入下一輪計算,可以保證尋優(yōu)過程不會倒退。具體操作策略見表3。
表3 選擇策略描述
(2)雜交
雜交操作是將配對后的兩個個體通過交換部分基因編碼的形式,形成兩個新的個體。具體操作為:將群體內適應度排序在0%~90%的個體進行隨機配對,以隨機樁號為交叉點,逐對進行單點交換,從而形成兩個新的下一代個體。
在縱斷面設計優(yōu)化應用中,交叉點的概念具有特殊性,并非是二進制編碼的序號位置,而是樁號位置。
(3)變異
變異操作是將隨機位置處的編碼進行改變,從而改變個體編碼串的內容,變異是遺傳算法具有局部搜索能力的關鍵。在縱斷面設計優(yōu)化應用中,由于采用的是二進制編碼方案,故這里采用基本位變異的方法。
具體操作為:針對群體內的每一個個體,以指定的變異概率隨機選擇,在隨機變異點位置進行取反運算(即把1替換為0、把0替換為1),從而形成新的個體。
縱斷面設計優(yōu)化計算,在滿足下列條件之一時終止:
(1)達到預定代數時。預定代數可設為100~500代。
(2)連續(xù)10代中,最優(yōu)縱斷面方案的估算費用、適應度值無變化時。
(3)累計運算時間達到600 min。
在通用CAD軟件平臺采用Visual LISP語言進行二次開發(fā),編制縱斷面優(yōu)化設計軟件工具,驗證前述算法的有效性。
考慮到在適應度函數中關于工程數量的計算,需調用路線軟件中的相應功能模塊、計算負荷較大,為了避免多次重復計算引起的時間消耗,在軟件內維護一個全局表,用于存放不同填挖高度所對應的工程數量。
在運用時,根據當前填挖高度數值查詢該全局表,若有記錄則直接取用;若無記錄,則先調用外部函數計算當前填挖高度數值對應的工程數量,然后將工程數量寫入全局表中,供后續(xù)查詢使用。如此可極大地節(jié)約運算時間。
以山西省某一級公路新建工程為例,雙向四車道,路基寬度24.5 m,設計速度80 km/h。擬優(yōu)化路段樁號范圍為K15+400~K18+580,高程范圍為680~720 m。
參數取值計算如下:
式中,n1為樁號編碼的二進制位長度。
式中,n2為高程編碼的二進制位長度。群體規(guī)模取20。
初始群體變坡點間距取2.5倍的最小坡長規(guī)范值,即為500 m,則變坡點個數估算為5個(不含起終點)。
初始群體中,個體的編碼長度為95位。
預定代數取100代,雜交概率取0.4,變異概率取0.05。
在個人計算機上運行前述算法,在達到預定代數后,取出最后一代的最優(yōu)個體,經解碼后形成道路縱斷面設計成果。
(1)運用遺傳算法,通過精細化參數控制、優(yōu)化進化策略,可有效減小解算規(guī)模,能夠實現(xiàn)道路縱斷面設計優(yōu)化的目的,經實踐驗證該方法可行。
(2)在本次應用探索中,由于僅對變坡點樁號及高程進行編碼求解,故初始方案中豎曲線半徑的預估設定對優(yōu)化結果尚有一定的影響。后續(xù)研究可嘗試對樁號、高程、半徑三者進行綜合編碼,以期得到更佳的尋優(yōu)效果。
(3)適應度評價函數的定義,是遺傳算法的關鍵環(huán)節(jié)。為了實現(xiàn)更全面、更細致的評價縱斷面方案的合理性,下一步可考慮加入更多影響因素(如:坡長限制、平縱組合條件等約束),并引入懲罰函數對評價結論予以修正。