李 想,孫 鼎,安 毅,陳 勇,滕云龍
(1.電子科技大學(xué) 機械與電氣工程學(xué)院,成都 611731;2.中國西南電子技術(shù)研究所,成都 610036;3.海裝重大項目中心,北京 100071)
在衛(wèi)星導(dǎo)航接收機進(jìn)行選星過程中,傳統(tǒng)方法主要以幾何精度因子(Geometric Dilution of Precision,GDOP)為依據(jù),采用遍歷的方式搜索最優(yōu)集合,或通過幾何構(gòu)型選出經(jīng)驗解。對于遍歷的方法來說,可見星的數(shù)目決定其運算次數(shù)。對于幾何構(gòu)型方法來說,幾何構(gòu)型隨著選星數(shù)量的增加越來越復(fù)雜,且實際操作時為找出體積最大的解,往往也要進(jìn)行遍歷。由于當(dāng)前接收機可以接收到大量可見星[1-3],傳統(tǒng)的選星方法難以在短時下得出合適的選星集合。在實際的工程場景下,基于遍歷的傳統(tǒng)選星方法難以勝任。
遺傳算法對于優(yōu)化非線性等復(fù)雜問題具有獨特的優(yōu)勢[4]。當(dāng)前已存在一些遺傳算法選星的研究。與傳統(tǒng)方法相比,遺傳算法可以不經(jīng)過遍歷就可以得到次優(yōu)解或最優(yōu)解。宋丹等人[5]提出了一種基于遺傳算法的選星方法,在交叉和變異中穿插了優(yōu)選過程,避免了進(jìn)行個體淘汰,并通過實驗確定了遺傳算法選星的參數(shù)規(guī)律,并給出了推薦的參數(shù)方案。陳燦輝等人[6]提出了一種基于二進(jìn)制編碼的交叉算子,用變異操作來輔助交叉,使得基因交換既可以雙向傳遞也可以單向傳遞,使得交叉概率高于50%時與互補交叉概率有所區(qū)別,這種變異算子實際上把變異操作和交叉操作糅合,變相增大了變異概率?;艉接畹热薣7]提出了一種基于遺傳算法的組合系統(tǒng)選星方法,從選星數(shù)量角度減少了運算量。這些研究基本上都固定了交叉和變異的概率,且如果算子相互糅合,參數(shù)量化規(guī)律會有一定的偏差。Zhu[8]對交叉和變異概率進(jìn)行了改進(jìn),但是這種方法是基于適應(yīng)度的密集程度來進(jìn)行映射的,需要遍歷當(dāng)前種群的適應(yīng)度,計算相對復(fù)雜,且密集程度的判斷標(biāo)準(zhǔn)由于算例不同很難界定。綜上所述,對于交叉和變異概率的改進(jìn)仍需要繼續(xù)研究。
針對上述問題,本文提出了基于種群數(shù)量控制與成熟因子映射的雙系統(tǒng)遺傳選星算法。相較于其它遺傳算法選星方案,本文提出計算相對簡單的成熟因子來反映種群基因的相似程度,并根據(jù)成熟因子調(diào)整交叉和變異的概率,一方面避免種群過早成熟陷入局部最優(yōu),另一方面節(jié)省交叉和變異的操作時長。此外,本文方法通過引入種群數(shù)量控制策略,可以避免較后子代種群數(shù)量過大而迭代過慢的情況,在保證選星集合的GDOP搜索精度的同時可以有效降低計算量。
成熟因子FM是對整個種群在交叉、變異操作后種群個體變得更加優(yōu)良的可能性的一種表征。依據(jù)當(dāng)前種群成熟因子的大小對交叉與變異操作進(jìn)行修改,以引導(dǎo)種群更好地“進(jìn)化”。
在基因庫過于單調(diào)且變異機率較低的情況下,個體的變化幾乎只依賴于重組,使得種群多樣性不足,選星結(jié)果容易陷入局部最優(yōu),即出現(xiàn)早熟現(xiàn)象,因此本文將種群個體間的相似程度作為構(gòu)建成熟因子FM的基礎(chǔ),具體為當(dāng)前種群前5個數(shù)量最多的基因的占比之和:
(1)
式中:Num(·)表示·的數(shù)目;Xj,Xk,Xl,Xm,Xn分別為當(dāng)前種群中數(shù)量最多的前5個基因。
基于成熟因子映射實際上是通過對當(dāng)前種群基因庫的多樣性進(jìn)行評估,具體映射于交叉概率和變異概率的階梯變化?;蛑貜?fù)度過高,成熟度也越高,代表當(dāng)前的種群基因庫已經(jīng)進(jìn)行了較多重組嘗試,此時在保留優(yōu)勢個體的前提下增加種群的多樣性;相反,種群基因重復(fù)度不高時,應(yīng)該優(yōu)先探索當(dāng)前基因庫的潛力,找出其中可能造成GDOP優(yōu)勢的基因組合。
幾何精度因子表征由幾何布局而產(chǎn)生的定位誤差相對于偽距測量誤差的放大倍數(shù),用于評估選星集合的優(yōu)劣[9]。根據(jù)文獻(xiàn)[10],GDOP的評價標(biāo)準(zhǔn)見表1。
表1 GDOP評價標(biāo)準(zhǔn)Tab.1 Evaluation criteria for GDOP
(2)
在計算雙系統(tǒng)GDOP時,觀測矩陣鐘差參數(shù)系數(shù)的位置取決于參與運算的衛(wèi)星所屬的系統(tǒng)。雙系統(tǒng)幾何觀測矩陣的形式如下[11]:
(3)
選星問題實際上是尋找以GDOP值為評價標(biāo)準(zhǔn)的最優(yōu)或次優(yōu)衛(wèi)星組合,因此本文對遺傳因子(對應(yīng)于具體的衛(wèi)星位置信息)采用序列編碼,即按照星歷中衛(wèi)星的順序?qū)πl(wèi)星進(jìn)行對應(yīng)的實數(shù)編碼,將所需數(shù)量的衛(wèi)星序號組合為染色體。當(dāng)需要計算染色體的適應(yīng)度時,在可選衛(wèi)星列表中查找序號對應(yīng)的衛(wèi)星具體位置信息進(jìn)行計算。由于各系統(tǒng)衛(wèi)星在星歷文件中的順序是鄰近的,通過序號也可以對所選衛(wèi)星的系統(tǒng)進(jìn)行標(biāo)定,從而調(diào)整幾何觀測矩陣的形式,使其適應(yīng)雙系統(tǒng)GDOP的計算。對于選星時可能會碰到5顆衛(wèi)星均來自同一系統(tǒng)的情況,以固定幾何觀測矩陣的形式依然可以通過虛擬一個相同的鐘差參數(shù)完成計算。
基于成熟因子映射的選星方法流程如圖1所示,選星算法主要包括獲取初始種群、父代選取和復(fù)制、成熟因子指導(dǎo)交叉、成熟因子指導(dǎo)變異、種群數(shù)量控制以及收斂判斷等關(guān)鍵步驟。
圖1 選星算法流程Fig.1 Flowchart of the satellite selection algorithm
1)獲取初始種群
遺傳算法是一種隨機搜索算法[12],初始種群的選取應(yīng)該既體現(xiàn)出隨機性又能盡量體現(xiàn)樣本的統(tǒng)計特征。Sobol序列是一種構(gòu)造方法簡單、分布均勻的低差異序列,相較于偽隨機數(shù)產(chǎn)生的序列更加均勻。因此,本文首先生成3組長度為可選衛(wèi)星總數(shù)的Sobol序列,對Sobol序列值的大小進(jìn)行排序,并記錄下原序列的索引,得到分布均勻的低差異整數(shù)序列。將序列分割為長度為5的序列段構(gòu)成各個單染色體個體的染色體,長度不足5的暫不構(gòu)成染體,但仍然保留作為變異備選,這些個體構(gòu)成初始種群。因此,初始種群的大小基本上和待選的可見星顆數(shù)的3/5保持一致。
2)父代選取和復(fù)制
為保留每代最優(yōu)GDOP指標(biāo),需要將適應(yīng)度最高的個體復(fù)制到下一代,將適應(yīng)度病態(tài)的個體直接剔除,剩下的種群按等間距多指針輪盤法進(jìn)行選擇和復(fù)制。
3)成熟因子指導(dǎo)交叉
交叉實際上是基因庫內(nèi)部組合的嘗試,本文采取均勻交叉,即每個基因位點均有可能發(fā)生單個位點的基因交換。由于均勻交叉實際是兩個單染色體個體各自位點基因進(jìn)行交換,從概率上可以認(rèn)為每條染色體交換基因占比期望與交換概率相等,而兩條染色體交換一定比例的基因和交換互補比例的互補位點基因是一樣的,因此認(rèn)為單純交換操作中交換概率能夠發(fā)揮作用的上限實際上是50%。在成熟度較高的時候可以認(rèn)為當(dāng)前種群基因庫已經(jīng)經(jīng)過較為充分的組合,為節(jié)省運算,可以降低此時的交換概率。本文將成熟因子FM分段映射為交叉概率Pcross指導(dǎo)每個基因交換的操作。交叉概率Pcross映射函數(shù)為
(4)
4)成熟因子指導(dǎo)變異
將交叉后的個體進(jìn)行均勻變異操作。變異實際上是種群內(nèi)部基因庫和整個可見星集合基因庫的基因交流。已有文獻(xiàn)說明遺傳算法解決選星問題時,為避免陷入局部最優(yōu),變異概率應(yīng)當(dāng)取較高的值,但是變異操作需要隨機選取和檢索剩余基因庫需要較長的運算時間,高變異率意味著頻繁的變異操作,也會導(dǎo)致遺傳算法相同迭代數(shù)內(nèi)的搜索時長增加。在成熟度較低的時候,種群基因多樣性較豐富,可以降低變異概率,讓基因充分組合,探索合適的選星集合,并減少變異操作的時長;在成熟度較高的時候,種群基因多樣性較匱乏,可以提高變異概率,加強基因交流。本文將成熟因子FM分段映射為交叉概率Pmutate指導(dǎo)每個基因交換的操作。交叉概率Pmutate映射函數(shù)為
(5)
經(jīng)過交叉變異的種群連同適應(yīng)度最高的精英個體一同組成下一代種群的備選集合。
5)種群數(shù)量控制
由于選星算法初始種群個體數(shù)與可見星個數(shù)有關(guān),因此在可見星較多的情況下,種群個體數(shù)較多,需要多次計算適應(yīng)度,運算成本較高。本文采取判斷種群是否超過限額的策略進(jìn)行數(shù)量控制,將適應(yīng)度最低的一批個體淘汰。由于最優(yōu)保留策略,種群數(shù)每代會累加1,限額淘汰可以使種群數(shù)量在限額附近波動,既可減少總的運算次數(shù),也能在種群繁盛期進(jìn)行更多的交叉重組嘗試,從而減少后續(xù)子代種群過大、代內(nèi)計算過久的情況。本文采取的限額為初始種群數(shù)量的1.5倍,每次淘汰對應(yīng)GDOP值最差的20%個體。
6)收斂判斷
由于遺傳算法是隨機搜索算法,雖然在采取精英保留策略[13]的情況下可保證收斂到最優(yōu)解,但收斂時間存在著不確定性,實際應(yīng)用時應(yīng)使用可接受最大GDOP門限或者進(jìn)化代數(shù)門限進(jìn)行收斂判斷,當(dāng)滿足收斂條件時跳出進(jìn)化迭代,輸出選星集合。
網(wǎng)絡(luò)新媒體傳播具有開放性、即時性、互動性等特點,深受普通民眾青睞,越來越多的網(wǎng)民群眾在新媒體平臺和渠道上發(fā)布觀點意見,表達(dá)利益訴求,產(chǎn)生了大量的輿情民意信息。地方政府部門通過對這些信息的收集和分析,能夠更好地了解本地公眾需求,有針對性地采取政策措施,提供公共產(chǎn)品和服務(wù),及時發(fā)現(xiàn)和化解社會矛盾,不斷提升治理效能。同樣,地方政府利用新媒體打造與公眾直接對話的交流平臺,傳遞政府決策信息;并借助新媒體技術(shù)實現(xiàn)公共決策的多方參與和公開透明,從而促進(jìn)地方政府治理能力提升。
從歐洲軌道測定中心(Center for Orbit Determination in Europe,CODE)發(fā)布的MGEX軌道鐘差文件2023年1月30日0時0分0秒中的軌道數(shù)據(jù)中,選取來自兩個系統(tǒng)的30顆俯仰角大于10°的衛(wèi)星(其中GPS衛(wèi)星10顆,BDS衛(wèi)星20顆),選取的接收機三維坐標(biāo)為[-2 168 839.180 m,4 386 630.094 m,4 077 164.910 m]。
傳統(tǒng)的遍歷法選出的是最優(yōu)解,搜索時間也比較穩(wěn)定,可以作為評價選星結(jié)果的標(biāo)準(zhǔn),因此將結(jié)果單獨列出。對于上述30顆可見衛(wèi)星集合而言,遍歷算法選星結(jié)果如表2所示。
表2 遍歷算法選星結(jié)果Tab.2 Results of the traversal algorithm for satellite selection
由于遺傳算法通常具有不確定性,所以實驗結(jié)果應(yīng)該采取統(tǒng)計結(jié)果。按照前文所述選星參數(shù)標(biāo)準(zhǔn)和可見星數(shù)為30,此時初始種群數(shù)量為18,種群數(shù)量限額為27。本文對比所用的常規(guī)遺傳算法主體結(jié)構(gòu)參考了文獻(xiàn)[14],各個主要環(huán)節(jié)有多種可選的方案,為了更直觀地體現(xiàn)改進(jìn)點的效果,基于控制變量原則,除去成熟因子和種群數(shù)量控制相關(guān)的改進(jìn)點外所選用機制均與本方法保持一致,交叉概率和變異概率則設(shè)為文獻(xiàn)[5,8]提供的最優(yōu)方案,即Pcross=0.9,Pmutate=0.9。測試發(fā)現(xiàn),Pmutate=0.9時配精英保留策略能夠盡快跳出局部最優(yōu),但相同代數(shù)需要的搜索時間更長,與文獻(xiàn)[5]結(jié)論一致;Pcross對相同代數(shù)搜索精度的影響則不明顯。
設(shè)定進(jìn)化代數(shù)為200,分別進(jìn)行常規(guī)遺傳算法、成熟因子映射遺傳算法和引入種群數(shù)量控制的成熟因子遺傳算法各500次搜索,記錄每代GDOP最優(yōu)值,統(tǒng)計500次實驗每代最優(yōu)組合對應(yīng)GDOP平均值構(gòu)成200代內(nèi)的最優(yōu)個體GDOP進(jìn)化曲線,如圖2所示。
圖2 進(jìn)化200代種群最優(yōu)GDOP進(jìn)化對比Fig.2 Comparison of optimal GDOP evolution for populations of 200 evolutionary generations
記錄下進(jìn)化代數(shù)200代平均搜索時間,如表3所示。
表3 進(jìn)化200代平均搜索時間Tab.3 Average search time of 200 evolutionary generations
由圖2和表3可知,成熟因子映射交叉變異概率遺傳算法相較常規(guī)固定交叉變異概率遺傳算法在相同進(jìn)化代數(shù)的搜索效率沒有明顯的差別,但是在相同代數(shù)內(nèi),成熟因子映射遺傳算法比固定交叉變異概率的常規(guī)遺傳算法平均節(jié)省約24.75%的搜索時間,這是由于成熟因子映射成功減少了不必要的交叉和變異操作。在此基礎(chǔ)上引入種群數(shù)量控制機制,相同代數(shù)下的搜索效率有所下降,但進(jìn)化200代內(nèi)搜索時間進(jìn)一步節(jié)省了約55.32%。這是由于種群數(shù)量控制實際上減少了每代遍歷的個體數(shù),一方面,每代檢索效率難免會有所下降;另一方面,隨著代數(shù)推進(jìn),相較于不斷增長的種群數(shù)量,每一代搜索時間的優(yōu)勢會越來越大。實際上在本節(jié)參數(shù)設(shè)定下,成熟因子映射交叉變異概率遺傳算法迭代到最優(yōu)組合總耗時比常規(guī)遺傳算法減少約4.20%,引入種群數(shù)量控制的成熟因子遺傳算法迭代到最優(yōu)組合總耗時仍然比常規(guī)遺傳算法減少約5.41%。
相較于耗費大量時間搜索最優(yōu)星座集合,在實際選星時,更傾向于選出保證解算精度的可用解。根據(jù)表1中GDOP評估標(biāo)準(zhǔn),本文設(shè)置GDOP的門限為3,對3種方案分別進(jìn)行10 000次搜索,統(tǒng)計搜索時間平均值,如表4所示。
表4 GDOP門限為3時平均搜索時間Tab.4 Average search time when GDOP threshold is 3
根據(jù)圖2可得,設(shè)定門限為3時3種方法的搜索性能相近,且迭代數(shù)平均不到20代,在迭代次數(shù)較小的情況下,成熟因子映射和種群數(shù)量控制在大多數(shù)實驗中起的作用不大,但是實測數(shù)據(jù)中成熟因子映射遺傳算法較常規(guī)算法提高了2.31%,種群控制的成熟因子遺傳算法進(jìn)一步提升了7.20%,主要是這兩種策略在進(jìn)化代數(shù)較多的情形下,可以縮短最差情況下的搜索時間,從而在可見星可組合得出的較優(yōu)解比較少時依然可以保持優(yōu)秀的搜索性能。
表5 進(jìn)化20代平均搜索情況Tab.5 Average search for 20 generations of evolution
由表5可見,限定迭代20代條件下,在可見星數(shù)量15以上時,本文方法穩(wěn)定且快于遍歷法,各可見星方案下所用時長均小于0.1 s,相對于最優(yōu)GDOP的差距始終不超過20%,在最差的情況下進(jìn)化20代GDOP仍然在4以內(nèi),根據(jù)表1評級仍可達(dá)到良。在可見星數(shù)量為10時,本文方法性能不足以替代遍歷法,這是因為遍歷法在10顆星中選取5顆,遍歷所需要的次數(shù)較少,遺傳算法的優(yōu)勢難以彰顯,但搜索20代所需的時間并不長,平均GDOP值僅比最優(yōu)GDOP值大1.86%,雖然最差的情況下GDOP值略大于4,但相較于最優(yōu)GDOP值也只大20.22%,相對于可見星數(shù)15以上時相對搜索精度更高。實際使用時可根據(jù)可見星數(shù)量多少酌情調(diào)整進(jìn)化代數(shù),以平衡搜索精度和搜索時間。在本文所用星歷數(shù)據(jù)下,在選定時刻和選定測站位置GPS+BDS衛(wèi)星仰角超過10°的衛(wèi)星僅有約30顆,因此未對超過30顆可見星的情況下進(jìn)行搜索。本文所述方法取進(jìn)化代數(shù)20代時在雙系統(tǒng)選星的大多數(shù)情況下均可滿足定位解算需求。
從圖2可看出搜索最優(yōu)GDOP與進(jìn)化迭代數(shù)具有某種近似指數(shù)函數(shù)關(guān)系。由于每代相對于GDOP的搜索的貢獻(xiàn)度不同,推測指數(shù)函數(shù)的指數(shù)部分可能為正態(tài)分布,則GDOP或服從對數(shù)正態(tài)分布。
選取前節(jié)可見星為30顆時搜索的最優(yōu)個體對應(yīng)的GDOP數(shù)據(jù)集繪制概率密度圖并對GDOP數(shù)據(jù)進(jìn)行對數(shù)正態(tài)分布擬合,如圖3所示。圖中縱坐標(biāo)為GDOP取值的概率密度而非GDOP取值的概率,由于概率密度函數(shù)在GDOP的數(shù)據(jù)取值全域積分為1,所以某一有限數(shù)值區(qū)間的概率密度可以大于1。
圖3 可見星30顆20代GDOP概率密度分布情況Fig.3 Probability density distribution of GDOP for 20 generations of evolution at 30 visible satellites
根據(jù)圖3可見,除去2.8和2.9區(qū)間內(nèi)某一特解概率密度極高外擬合程度較高。上述推測具有一定的參考性。進(jìn)一步將上節(jié)數(shù)據(jù)都進(jìn)行對數(shù)正態(tài)分布擬合,繪制對數(shù)正態(tài)分布擬合函數(shù)匯總,如圖4所示。
圖4 各情況下20代GDOP概率密度分布情況Fig.4 Probability density distribution of GDOP for 20 generations of evolution at for some cases of the number of visible satellites
圖4中各情形下的遍歷最優(yōu)GDOP值也用同色點狀線標(biāo)出,可見對于可見星15顆及以下擬合函數(shù)的均值已相當(dāng)接近最優(yōu)GDOP值,一方面可以印證前文可以適當(dāng)減少迭代數(shù)來進(jìn)一步減少搜索時間的論斷;另一方面也說明當(dāng)前擬合存在相對較大的失真,由于最優(yōu)GDOP值左側(cè)數(shù)據(jù)均為0,導(dǎo)致擬合得出的曲線均值偏右,實際分布優(yōu)于當(dāng)前的擬合函數(shù)。對于可見星15顆以上的情況,最優(yōu)GDOP值左側(cè)數(shù)據(jù)占比較小,分布相對比較符合實際情況,相較于簡單統(tǒng)計平均值和標(biāo)準(zhǔn)差,基于擬和分布函數(shù)的期望和置信區(qū)間更能準(zhǔn)確評估當(dāng)前搜索方案下的獲得組合的GDOP值落在的區(qū)間。根據(jù)擬合分布獲得的各情況下期望和3σ置信區(qū)間如表6所示。
表6 對數(shù)正態(tài)分布擬合獲得的各情況下GDOP均值和置信區(qū)間Tab.6 GDOP means and confidence intervals for each case obtained by fitting the lognormal distribution
由表6可以看出,除可見星為10顆之外,剩余情況下GDOP搜索置信區(qū)間上限均低于4,由于3σ原則,GDOP搜索值落在區(qū)間外的可能性幾乎為0,可認(rèn)為不發(fā)生,因此可認(rèn)為幾乎不會出現(xiàn)超過表6所示置信區(qū)間上限的情況。基于表5所示最大值雖然高于置信區(qū)間上限,但是差距不大,仍然可以印證這一觀點(由于進(jìn)行了10 000次實驗,出現(xiàn)超過置信區(qū)間上限的最大值是正常的,且擬合本身就存在誤差)。擬合實驗數(shù)據(jù)說明本文所述算法具有一定的穩(wěn)定度,可以進(jìn)行重復(fù)搜索來提高結(jié)果的可信度。在應(yīng)用場景中,由于本文所述方法搜索速度較快,完全可以進(jìn)行重復(fù)選星搜索,取最低GDOP對應(yīng)的選星組合進(jìn)行定位解算。
在衛(wèi)星導(dǎo)航接收機定位解算過程中,為避免傳統(tǒng)遍歷選星方法需要耗費較長計算時間的問題以及常規(guī)遺傳選星算法固定高交叉變異概率造成冗余計算的情況,本文提出了引入成熟因子映射的雙系統(tǒng)衛(wèi)星導(dǎo)航接收機選星方法。該方法在保證可接受GDOP的同時,可以有效降低搜索成本。實驗結(jié)果表明,相較于傳統(tǒng)遍歷選星算法需要較長搜索時間,該算法的搜索時間大幅縮短,且得出的GDOP可以滿足定位需求;相較于常規(guī)遺傳算法,該方法可以明顯減少冗余計算,降低搜索時間。在進(jìn)化200代的條件下,成熟因子映射遺傳算法比固定交叉變異概率的常規(guī)遺傳算法的搜索時間平均節(jié)省約24.75%,引入種群數(shù)量控制機制,每代搜索效率有所下降,但搜索時間進(jìn)一步節(jié)省了約55.32%。在可見星15顆以上的情形下,本方法搜索時間穩(wěn)定優(yōu)于傳統(tǒng)遍歷法,各可見星方案下所用時長均小于0.1 s,且相對于最優(yōu)GDOP的差距始終不超過20%,在大多數(shù)情況下,本方法均可勝任選星任務(wù)。另一方面,由于遺傳算法是隨機搜索算法,單次搜索找到最優(yōu)解的時長是未知的,在極端情況下,可能存在選出的衛(wèi)星集合的GDOP數(shù)值極差或較低門限下解算時間極長的情形,雖然通過概率分布擬合可以認(rèn)為發(fā)生這種概率的可能性極低,但本方法推薦以固定的迭代數(shù)為門限,保證每次搜索的時間幾乎保持一致,避免由于長時間搜索不到較低門限而無法得出可用的集合。本文從概率密度分布的角度對于搜索的期望進(jìn)行評估,說明了在重復(fù)搜索下的結(jié)果期望是穩(wěn)定的。