專利名稱:基于模擬退火算法的多觀察點設置方法
技術領域:
本發(fā)明屬于地形分析技術領域,具體涉及一種基于人工智能的能夠快速尋找到地形上最有利的觀察點的方法。
背景技術:
地形可視性分析(Terrain Visibility Analysis)是運用計算幾何原理和計算機圖形學技術解決地形上觀察點集合的可視性問題的方法和技術。在給定觀察點性質(人,轉發(fā)站等)條件下,該觀察點在其視線可達范圍內的可見區(qū)域構成該觀察點的視域。
地形可視性分析中的觀察點設置問題是指對于一塊地形區(qū)域,尋找盡可能少的觀察點,使它們的聯(lián)合視域覆蓋該地形區(qū)域中一定比率的面積?;诘匦慰梢曅苑治龅亩嘤^察點最優(yōu)部署是指對于指定區(qū)域,在給定觀察點性質(目視,雷達等)和可視范圍的條件下,尋找盡可能少的觀察點,使它們的聯(lián)合視域覆蓋最大偵察區(qū)域。多觀察點最優(yōu)設置是地形分析的一項重要內容,許多應用可以歸結為觀察點設置問題,例如電信基站選址,瀕危動物保護觀察站設置,最佳風力發(fā)電位置選擇等等,在民用上的典型應用是無線基站位置選取。
最傳統(tǒng)的解決方法是采用沙盤或電子沙盤,憑經(jīng)驗來選址。隨著計算機技術的發(fā)展應用,解決最優(yōu)觀察點設置問題的方法基本上都是基于對真實地形離散化采樣后的數(shù)據(jù)進行計算機仿真分析。這些數(shù)據(jù)根據(jù)格式不同分為兩類——不規(guī)則三角形網(wǎng)(Triangulated Irregular Network,TIN)和規(guī)則正方形格網(wǎng)(Regular SquareGrid,RSG),后者由于地形離散采樣點之間間隔固定便于進行分析與計算而被廣泛應用于觀察點設置分析中。這些仿真分析也基本上都是采用貪婪算法,即通過比較所有觀察點組合的聯(lián)合視域,從中找到最佳的觀察點組合。這種方法的一個最大的缺點是其計算量隨著問題復雜程度的增大呈指數(shù)級增長,遠遠超出現(xiàn)有計算機的計算能力,因此不能夠實用化。
為解決計算量過大這一問題,F(xiàn)ranklin W.提出了將大地形分塊然后進行迭代求解(Franklin,W.R.and Vogt,C.,2004.Efficient Multiple Observer Sitingon Large Terrain Cells,GIScience 2004 Third International Conference onGeographic Information Science.University of Maryland Conference Center,USA.);Rana提出了基于地形特征的待選觀察點集合概念,通過只比較滿足一定地形特征(如山脊,制高點等)的觀察點集合來達到減少計算量的目的(Rana,S.,2003.Fast approximation of visibility dominance using topographic features astargets and the associated uncertainty,Photogrammetric EngineeringandRemote Sensing,69(8),881-888.);Kim Y.H.提出了基于人工智能算法的解決辦法,例如使用模擬退火算法(Simulated Annealing Algorithms,SA)和遺傳算法(Genetic Algorithms,GA)(Kim,Y.H.,Rana,,S.,Wise,S.,2004.Exploring multiple viewshed analysis using terrain features andoptimisation techniques.Computers and Geosciences,30(9-10),pp.1019-1032.)。這些方法雖然很大程度上減少了計算量,使問題的解決變?yōu)榭赡?,然而對于一些問題規(guī)模較大或是需要實時解決的場合,這些方法的仿真效率仍然很低,例如在400*400數(shù)據(jù)點的地形上設置兩個觀察點共耗時1.14小時(4104秒)。
模擬退火算法是基于Monte Carlo迭代求解策略的一種隨機尋優(yōu)算法,其出發(fā)點是基于物理退火過程與組合優(yōu)化之間的相似性。模擬退火算法由某一較高初溫開始,利用具有概率突跳特性的Metropolis抽樣策略在待選觀察點組合中進行隨機搜索,伴隨溫度的不斷下降重復抽樣過程,最終得到問題的全局最優(yōu)解。經(jīng)典的模擬退火算法中,新狀態(tài)產(chǎn)生函數(shù),新狀態(tài)接受函數(shù),退溫函數(shù),抽樣穩(wěn)定準則和退火結束準則以及初始溫度是直接影響算法優(yōu)化結果的主要環(huán)節(jié)。在給定地形數(shù)據(jù)和觀察點個數(shù)的條件下,隨機選擇滿足個數(shù)的觀察點作為當前最佳觀察點組合,計算它們的聯(lián)合視域覆蓋范圍(通過狀態(tài)函數(shù)求得,經(jīng)典模擬退火算法中沒有給出具體的函數(shù)形式,需要根據(jù)問題自行確定)。在初始退火溫度t0下,將每個當前最佳觀察點在以各自位置為中心R為半徑(R和t0成正比)的范圍內隨機變換位置,得到一組新的觀察點,計算這組新觀察點的聯(lián)合視域覆蓋范圍,如果大于上一次的值則馬上接受這組觀察點為當前最佳觀察點組合,如果不是,則隨機生成一個數(shù),該數(shù)在0和1之間,如果該數(shù)大于0.5則也接受這組觀察點位置為當前最佳觀察點組合,否則認為當前最佳觀察點組合不變。在這個退火溫度下,不斷重復上述工作,直到有N次(N事先確定)都出現(xiàn)了當前最佳觀察點組合不變的情況,這時進入下一個退火溫度tk其中tk=t0·λk,0<λ<1,λ為退溫系數(shù)。重復進行上述操作直到tk小于一個給定的值,這時候的當前最佳觀察點組合就是最終解。模擬退火算法的實驗性能具有質量高、初值魯棒性強、通用易實現(xiàn)的優(yōu)點。但是,為了尋找到最優(yōu)解,算法通常要求較高的初溫、較慢的降溫速率、較低的終止溫度以及各溫度下足夠多次的抽樣,因而模擬退火算法往往優(yōu)化過程較長,從而制約了該算法在解決多觀察點設置問題的應用。
另外,上述解決方法都是著眼于減少待比較的觀察點組合數(shù)量來提高仿真效率的,而忽略了影響問題復雜程度的一個十分重要的因素——地形數(shù)據(jù)的大小,也就是地形數(shù)據(jù)的格網(wǎng)點數(shù)n。對于相同的地形區(qū)域,采用不同大小的數(shù)據(jù)(即不同的分辨率)其問題復雜程度有很大的差別。
綜上,現(xiàn)有的解決多觀察點設置問題的方法主要有兩類。一類是通過限制觀察點所在位置(例如山脊,高地等)來減少需比較的觀察點組合;另一類是通過引入人工智能算法(例如模擬退火算法,遺傳算法等)通過比較少數(shù)觀察點組合得到近似全局最優(yōu)解來達到提高仿真效率的目的。上述兩種方法主要是從如何減少待比較的觀察點組合數(shù)量的角度來實現(xiàn)問題解決的可行性的。但是從問題的復雜性分析可以清楚的看到,影響問題解決可行性的一個很大的因素是地形數(shù)據(jù)的大小對同樣一塊地形,在不同分辨率的地形數(shù)據(jù)上進行多觀察點設置的仿真計算復雜性差異巨大。所以,從地形數(shù)據(jù)角度分析和解決多觀察點設置問題,提高問題解決的可行性和效率的潛力是巨大的。
發(fā)明內容
為了克服計算上的效率問題,本發(fā)明提出了一種基于改進后的模擬退火算法的的多觀察點優(yōu)化設置的辦法,在保證精度的前提下,在求解最優(yōu)觀察點組合的時間上明顯優(yōu)于基于經(jīng)典的模擬退火算法的解決辦法,使得通過計算尋找多觀點優(yōu)化位置成為了一項實用技術。
本發(fā)明的技術方案如下基于模擬退火算法的多觀察點設置方法,包括以下步驟一、根據(jù)需要設置的觀察點的個數(shù)n和實際處理的地形大小將地形分為K等塊,則每塊內觀察點個數(shù)為n/K,n能被K整除。為方便計算,K可以取2的整數(shù)冪。
二、隨機在每個地形塊中選擇n/K個觀察點,并計算所有觀察點的視域以及視域合并后的可視覆蓋范圍。
三、以第二步得到的結果作為初始狀態(tài),采用如下所述的改進后的模擬退火算法分別求出每個地形塊中的最佳觀察點組合,每個地形塊的觀察點的變化限制在該地形塊內部,由此即可得到近似全局的觀察點設置。
所述的改進后的模擬退火算法,具有如下新的狀態(tài)函數(shù)和退溫函數(shù)(a)狀態(tài)函數(shù)為(ok)=f(ok)+g(ok),k=1,2…n,其中f(ok)=1∪k=1,2,···nv(ok),]]>v(ok)是觀察點集合ok的視域。g(ok)是與觀察點集合ok中觀察點之間平均距離成反比的懲罰函數(shù)。
(b)退溫函數(shù)為t′k=c·(tkα)1/γtk<=0.5[1-c·(1-tk)α]1/γtk>0.5,]]>其中c=1/2·(0.5)α,tk=t0·λk,t0為初始溫度,tk為經(jīng)過k步退溫后達到的溫度,λ為退溫系數(shù),0<λ<1,λ、α、γ的取值根據(jù)對退溫過程的控制需要而設定。
上述的狀態(tài)函數(shù)和退溫函數(shù)是發(fā)明人經(jīng)過艱辛的研究設計出來的,以下將詳細描述以上狀態(tài)函數(shù)和退溫函數(shù)是如何設計出來的。
發(fā)明人首先測定觀察點之間距離與聯(lián)合視域覆蓋率的平均增加值的變化關系,這一研究是基于水平方向2米、垂直方向0.5米精度的DEM(數(shù)字高程模型)數(shù)據(jù)的基礎上的。發(fā)明人選取了六組不同特征的地形塊作為測試樣本,分別代表最典型的五種地形平原、丘陵、峽谷、山脈以及一種混合多種地形特征的復雜地形。地形數(shù)據(jù)采樣點數(shù)為1024×1024,樣本統(tǒng)計指標如表1所示。
表1地形樣本的統(tǒng)計指標
具體的測定方法是對某一個測試樣本地形,隨機選取一個觀察點,計算其視域覆蓋范圍。然后在該觀察點所在的地形塊內隨機選取一個觀察點,計算兩個觀察點的聯(lián)合視域覆蓋范圍,并求出聯(lián)合視域的增加值,重復同樣的過程50000次,計算兩觀察點X和Y方向的平均距離和聯(lián)合視域覆蓋率的平均增加值之間的變化關系。對樣本1~6所有六塊地形重復上述操作,制作變化曲線,得到的結果見圖2。找出曲線上變化率大的區(qū)間,作為模擬退火函數(shù)設計的依據(jù)。從圖2可知,若觀察點之間的距離過近則會降低所有觀察點視域合并后的總視域覆蓋范圍,所以新狀態(tài)函數(shù)的設計應當同時考慮觀察點視域合并后的總體視域范圍和觀察點之間的距離。因此,改進的模擬退火算法的新狀態(tài)函數(shù)包含兩部分(ok)=f(ok)+g(ok),k=1,2…n。ok表示由n個觀察點組成的觀察點集合??紤]到模擬退火算法得到的結果是解空間中的最小值,所以新狀態(tài)函數(shù)中的f(ok)=1∪k=1,2,···nv(ok),]]>即為所有當前觀察點總體視域范圍的倒數(shù),其中v(ok)為觀察點集合ok的視域。而g(ok)為與觀察點之間距離相關的懲罰函數(shù),可由兩部分組成與分塊內部各觀察點之間平均距離成反比的懲罰函數(shù)g1(ok)和與相臨分塊之間各觀察點之間平均距離成反比的懲罰函數(shù)g2(ok)。若觀察點之間平均距離越小,則懲罰函數(shù)值越大,產(chǎn)生的效果是在這種情況下得到的新解則越不容易被接受,因此新的狀態(tài)函數(shù)避免了觀察點設置“聚集”的情況的產(chǎn)生。
發(fā)明人對退溫函數(shù)也進行了新的設計。根據(jù)圖2所示的觀察點之間距離和覆蓋率增量之間的變化關系,解決多觀察點最優(yōu)位置設置問題應采取的退溫策略是在延長高溫狀態(tài)持續(xù)時間的同時,縮短低溫狀態(tài)的持續(xù)時間。為此,引入溫度控制調節(jié)函數(shù)調制指數(shù)退溫函數(shù)tk,得到新的退溫函數(shù)t′k=c·(tkα)1/γtk<=0.5[1-c·(1-tk)α]1/γtk>0.5]]>其中c=1/2·(0.5)α,tk=t0·λk,0<λ<1,λ、α、γ的具體取值根據(jù)對退溫過程的控制設定。
關于λ、α、γ的具體取值,可以根據(jù)對退溫過程的控制需要(即設定各種邊界條件)計算得出。舉例如下
為達到控制退溫過程的目的,引入邊界條件邊界條件1設經(jīng)典退火算法中第k1步退溫到初始溫度的70%,則在新的退溫過程中達到同樣的狀態(tài)時的退火步數(shù)為2·k1;邊界條件2設經(jīng)典退火算法中第k2步退溫到初始溫度的10%,則在新的退溫過程中達到同樣的狀態(tài)時的退火步數(shù)為k2/2。
根據(jù)邊界條件1和2,可解得α/γ≈3.98。
設α/γ=β可以證明limγ→∞{kmax|tkmax=t0}=log1/2βλβ,]]>其中kmax為在退火過程中保持退火初溫的最大步數(shù),如表2。
表2不同退火系數(shù)退下退火溫度保持初溫的最大步數(shù)
進一步引入邊界條件3設退火過程中在kmax步時的退火溫度為初溫的80%??梢越獾貌煌嘶鹣禂?shù)條件下對應的α和γ,如表3。
表3滿足三條邊界條件時對應不同退火系數(shù)下的α和γ
本發(fā)明在上述基于模擬退火算法的多觀察點設置方法上,還進一步做了改進。
具體如下通常情況下,地形被建模為一個2.5維的表面模型,即地形數(shù)據(jù)只反映地球表面特征信息。對這個表面模型進行數(shù)字化處理,即使用有限個數(shù)的地表采樣點來反映連續(xù)的地形表面信息。具體到地形可視性分析領域,主要涉及地表采樣點之間的位置信息,水平方向相臨的兩采樣點之間的間隔則稱之為分辨率。
考慮到地形數(shù)據(jù)的大小是影響問題復雜程度的一個十分重要的因素,對于相同的地形區(qū)域,采用不同大小的數(shù)據(jù)(即不同的分辨率)其問題復雜程度有很大的差別。因此,本發(fā)明同時在分析了地形分辨率和問題解決準確度之間關系的基礎上,結合改進模擬退火算法,本發(fā)明進一步提出了一種基于多分辨率地形格網(wǎng)數(shù)據(jù)的多觀察點設置的優(yōu)化解決方法。即對于特定的地形塊,先進行地形多分辨率處理,得到不同分辨率的地形數(shù)據(jù)。對于該特定地形塊上給定的觀察點個數(shù),首先基于該地形塊的最低分辨率地形數(shù)據(jù)使用本發(fā)明的基于改進后的模擬退火算法的多觀察點設置方法得到在該分辨率數(shù)據(jù)上的最優(yōu)觀察點集合(圖1中初始較優(yōu)結果)。再以所得到的最優(yōu)觀察點為初始值,采用雙線性插值的方法找到其對應的高一級分辨率地形數(shù)據(jù)上的對應位置,重新使用本發(fā)明的基于改進后的模擬退火算法的多觀察點設置方法,在前面低一級分辨率地形數(shù)據(jù)上得到的初始值基礎上計算在這一較高分辨率數(shù)據(jù)上的最優(yōu)觀察點集合(圖1中中間次優(yōu)結果)。按照此方法,從分辨率較低的地形數(shù)據(jù)開始,直至得到該地形塊基于原始分辨率地形數(shù)據(jù)下的最優(yōu)觀察點位置(圖1中最終最優(yōu)結果)。
對地形進行多分辨率處理的方法,是采用離散余弦變換的方法處理地形數(shù)據(jù),包括以下操作設地形的格網(wǎng)點數(shù)為N*N,(a)對原始地形進行離散余弦變換,得到變換矩陣A。
(b)抽取操作(a)得到的矩陣A的前N/r行和N/r列,組成矩陣B。
(c)對操作(b)的得到的矩陣B進行離散余弦反變換得到分辨率為原始地形1/r的地形。
(d)對不同的取值r,重復操作(a)、(b)、(c)得到不同分辨率的地形數(shù)據(jù)。
本發(fā)明的優(yōu)點和積極效果本發(fā)明從目標函數(shù)和退溫函數(shù)兩個方面對經(jīng)典的模擬退火算法進行了與問題相關的改進。改進的模擬退火算法中目標函數(shù)的設計充分考慮了觀察點之間距離對聯(lián)合視域覆蓋的影響,新的目標函數(shù)結合分塊搜索的引入避免了在問題解決過程中搜索到大量無效的觀察點組合,從而提高了搜索效率;改進算法的退溫函數(shù)的設計則充分考慮到多觀察點設置問題中不同的搜索溫度在解決問題過程中的重要性,從而引入一種新的退溫策略,在不影響問題解決準確程度的基礎上縮短了問題解決時間?;诟倪M模擬退火算法的多觀察點設置解決方案克服了基于傳統(tǒng)模擬退火算法的設置方案效率低下,不能應用于實際的缺點。進一步,基于多分辨率地形格網(wǎng)數(shù)據(jù)的多觀察點設置的優(yōu)化解決方法充分考慮了地形數(shù)據(jù)對問題解決的影響,在保證問題解決準確性的前提下,有效的縮短了解決問題所消耗的時間,實現(xiàn)了平衡多觀察者設置問題計算準確度和計算時間兩者之間的關系的目的。
發(fā)明人使用改進后的模擬退火算法(ISA)和多分辨率處理(MRP)相結合的方法,針對6個地形樣本數(shù)據(jù),設置不同的觀察點個數(shù),和單純使用模擬退火算法(SA)進行比較,觀察點高度設定為1.6m,退溫參數(shù)λ=0.9,觀察點的視域半徑為256個地形采樣點間隔,得到的實驗結果如圖3和圖4所示。從實驗結果可以看到,基于改進后的模擬退火算法(ISA)和多分辨率處理(MRP)相結合的方法解決多觀察點最優(yōu)設置問題,時間效率提高15-20倍,精度損失在2%以內。并且隨著問題復雜程度的增加(觀察點數(shù)量增加,觀察點的視域半徑增加),在確保計算精度的前提下,時間效率的提高將更加顯著。
圖1是采用本發(fā)明的方法(MRP+ISA)進行多次逼近求解方案的過程圖;圖2是觀察點之間距離與聯(lián)合視域覆蓋率的平均增加值的變化關系圖;圖3是本發(fā)明的方法(MRP+ISA)與采用經(jīng)典模擬退火算法(SA)的方法的視域覆蓋率和耗時比較,64個觀察點;圖4是本發(fā)明的方法(MRP+ISA)與采用經(jīng)典模擬退火算法(SA)的方法的視域覆蓋率和耗時比較,128個觀察點;圖5是本發(fā)明的方法(ISA)與采用經(jīng)典模擬退火算法(SA)的方法的退火溫度與退火次數(shù)比較圖。
具體實施例方式
需要處理的地形是地形樣本1,格網(wǎng)點數(shù)1024*1024需要設置的觀察點個數(shù)為64個退火系數(shù)λ=0.9第一步,根據(jù)需要設置的觀察點的個數(shù)和實際處理的地形大小將地形分為8等塊每塊內觀察點個數(shù)為64/8=8。
第二步,隨機在每個地形塊中選擇8個觀察點,并計算所有觀察點的視域以及視域合并后的可視覆蓋范圍。
第三步,以第二步得到的結果作為初始狀態(tài),采用改進后的模擬退火算法分別求出每個地形塊中的最佳觀察點組合,每個地形塊的觀察點的變化限制在該地形塊內部。由此即可得到近似全局的觀察點設置。
所述的改進的模擬退火算法,具有如下新的狀態(tài)函數(shù)和退溫函數(shù)(a)狀態(tài)函數(shù)為(ok)=f(ok)+g(ok),k=1,2…8,其中f(ok)=1∪k=1,2,···8v(ok),]]>v(ok)是觀察點集合ok的視域。g(ok)是與觀察點集合中觀察點之間平均距離成反比的懲罰函數(shù),g(ok)=g1(ok)+g2(ok),其中,g1(ok)是與分塊內部各觀察點之間平均距離成反比的懲罰函數(shù),g2(ok)是與相臨分塊之間各觀察點之間平均距離成反比的懲罰函數(shù),本實施例中g1(ok)=2RAVD1(ok),k=1,2···8,g2(ok)=2RAVD2(ok),k=1,2···8,]]>其中AVD1(ok)為分塊內部各觀察點之間平均距離,AVD2(ok)為相臨分塊之間各觀察點之間平均距離,R為單一觀察點的視域半徑。
(b)根據(jù)退火系數(shù)λ=0.9從退溫函數(shù)參數(shù)表(表3)中查找對應的退溫函數(shù)的參數(shù)α和γ,得到一個具體的退溫函數(shù)t′k=(2048.12·(tk12.06))1/3.03tk≤0.5[1-2048.12·(1-tk)12.06]1/3.03tk>0.5,tk=t0·λk.]]>該地形上的最佳觀察點組合是通過下述方法得到的先對原始地形數(shù)據(jù)進行地形多分辨率處理,得到不同分辨率的地形數(shù)據(jù),也就是說將涉及到的地形區(qū)域進行逐級粗粒度濾波,形成不同精度的地形模型。
以分辨率降為原始地形分辨率1/2為例,地形多分辨率處理是采用離散余弦變換的方法處理地形數(shù)據(jù),包括以下操作(a)對原始地形進行離散余弦變換,得到變換矩陣A。
(b)抽取矩陣A的前512行和512列,組成矩陣B。
(c)對矩陣B進行離散余弦反變換得到分辨率為原始地形1/2的地形。
再以步驟(c)得到的分辨率為原始地形1/2的地形為原始地形,重復進行上述(a)~(c)操作,得到地形分辨率為原始值1/4的一塊新地形數(shù)據(jù)。依此類推,得到地形分辨率為原始值1/8的一塊新地形數(shù)據(jù)。
首先基于該地形塊的1/8分辨率地形數(shù)據(jù)使用改進模擬退火算法得到在該分辨率數(shù)據(jù)上的最優(yōu)觀察點集合。再以所得到的最優(yōu)觀察點為初始值,采用雙線性插值的方法找到其對應的1/4分辨率地形數(shù)據(jù)上的對應位置,重新使用改進模擬退火算法在得到的觀察點對應位置的基礎上計算在1/4分辨率數(shù)據(jù)上的最優(yōu)觀察點集合。按照此方法,直至得到該地形塊基于原始分辨率地形數(shù)據(jù)下的最優(yōu)觀察點位置。
圖5中,實線曲線為經(jīng)典模擬退火算法在退火系數(shù)為0.9時退火溫度和退火循環(huán)次數(shù)的關系(函數(shù)tk=(0.9)k關系,橫軸表示k,縱軸表示tk),虛線曲線是對應相同退火系數(shù)條件下改進模擬退火算法的退火溫度和退火循環(huán)次數(shù)的關系(函數(shù)t′k=(2048.12·(tk12.06))1/3.03tk=(0.9)k≤0.5[1-2048.12·(1-tk)12.06]1/3.03tk=(0.9)k>0.5]]>關系。橫軸表示k,縱軸表示tk′)。由圖5可以看出,在相同的退火系數(shù)情況下,改進算法在高溫時(tk′>0.7)的歷經(jīng)時間k大于傳統(tǒng)算法在高溫時(tk>0.7)的歷經(jīng)時間k,而在低溫時則恰恰相反。
權利要求
1.基于模擬退火算法的多觀察點設置方法,其特征在于包括以下步驟(1)根據(jù)需要設置的觀察點的個數(shù)n和實際處理的地形大小將地形分為K等塊,則每塊內觀察點個數(shù)為n/K,n能被K整除;(2)隨機在每個地形塊中選擇n/K個觀察點,并計算所有觀察點的視域以及視域合并后的可視覆蓋范圍;(3)以步驟(2)得到的結果作為初始狀態(tài),采用模擬退火算法分別得出每個地形塊中的最佳觀察點組合,每個地形塊的觀察點的變化限制在該地形塊內部;由此得到全局的觀察點設置;所述的模擬退火算法,具有如下的狀態(tài)函數(shù)和退溫函數(shù)狀態(tài)函數(shù)為(ok)=f(ok)+g(ok),k=1,2…n,其中f(ok)=1∪k=1,2,···nv(ok),]]>v(ok)是觀察點集合ok的視域,g(ok)是與觀察點集合中觀察點之間平均距離成反比的懲罰函數(shù);退溫函數(shù)為t′k=c·(tkα)1/γtk<=0.5[1-c·(1-tk)α]1/γtk>0.5,]]>其中c=1/2·(0.5)α,tk=t0·λk,t0為初始溫度,tk為經(jīng)過k步退溫后達到的溫度,λ為退溫系數(shù),0<λ<1,λ、α、γ的取值根據(jù)對退溫過程的控制需要而設定。
2.如權利要求1所述的基于模擬退火算法的多觀察點設置方法,其特征在于,所述步驟(1)中將地形分成的塊數(shù)K為2的整數(shù)冪。
3.如權利要求1所述的基于模擬退火算法的多觀察點設置方法,其特征在于,所述步驟(3)中的退溫函數(shù)中,λ=0.5,α=11.43,γ=2.86;或者λ=0.6,α=10.81,γ=2.70;或者λ=0.7,α=9.09,γ=2.27;或者λ=0.8,α=11.43,γ=2.86;或者λ=0.9,α=12.06,γ=3.03。
4.如權利要求1所述的基于模擬退火算法的多觀察點設置方法,其特征在于,所述步驟(3)中的退溫函數(shù)中,g(ok)=g1(ok)+g2(ok),其中,g1(ok)是與分塊內部各觀察點之間平均距離成反比的懲罰函數(shù),g2(ok)是與相臨分塊之間各觀察點之間平均距離成反比的懲罰函數(shù)。
5.如權利要求1所述的基于模擬退火算法的多觀察點設置方法,其特征在于,所述步驟(3)中,每個地形塊中的最佳觀察點組合是通過如下方法得出的對所述地形塊進行地形多分辨率處理,得到該地形塊的不同分辨率的地形數(shù)據(jù);從分辨率最低的地形數(shù)據(jù)開始,重復進行如下操作,直至得到該地形塊基于原始分辨率地形數(shù)據(jù)下的最佳觀察點位置獲得所述地形塊基于低一級分辨率地形數(shù)據(jù)上的最佳觀察點集合,并以所得到的最優(yōu)觀察點為初始值,采用雙線性插值的方法找到其對應的高一級分辨率地形數(shù)據(jù)上的對應位置,然后以得到的這些位置為初始值再次應用智能優(yōu)化算法獲得所述地形塊基于高一級分辨率數(shù)據(jù)上的最佳觀察點集合。
6.如權利要求5所述的基于模擬退火算法的多觀察點設置方法,其特征在于,所述對地形進行多分辨率處理的方法具體如下設原始地形的格網(wǎng)點數(shù)為N*N,(a)對原始地形進行離散余弦變換,得到變換矩陣A;(b)抽取矩陣A的前N/r行和N/r列,組成矩陣B;(c)對矩陣B進行離散余弦反變換得到分辨率為原始地形l/r的地形;(d)對不同的取值r,重復操作(a)、(b)、(c)得到不同分辨率的地形數(shù)據(jù)。
全文摘要
本發(fā)明提供了一種基于模擬退火算法的多觀察點設置方法,首先根據(jù)需要設置的觀察點的個數(shù)n和實際處理的地形大小將地形分為K等塊;然后隨機在每個地形塊中選擇n/K個觀察點,并計算所有觀察點的視域以及視域合并后的可視覆蓋范圍;以前一步得到的結果作為初始狀態(tài),采用新改進的模擬退火算法分別求出每個地形塊中的最佳觀察點組合,由此即可得到近似全局的觀察點設置。本發(fā)明從目標函數(shù)和退溫函數(shù)兩個方面對經(jīng)典的模擬退火算法進行了改進,克服了基于傳統(tǒng)模擬退火算法的設置方案效率低下,不能應用于實際的缺點,時間效率提高15-20倍,精度損失在2%以內。
文檔編號G06T7/00GK101034478SQ20071000323
公開日2007年9月12日 申請日期2007年2月2日 優(yōu)先權日2007年2月2日
發(fā)明者呂品, 張金芳, 李磊, 魯敏, 李原野 申請人:中國科學院軟件研究所