飛機觀測數(shù)據(jù)修正模型.ppt
飛機觀測數(shù)據(jù)修正模型,例飛機在飛行過程中,能夠收到地面上各個監(jiān)控臺發(fā)來的關(guān)于飛機當(dāng)前位置的信息,根據(jù)這些信息可以比較精確地確定飛機的位置。如圖所示,VOR是高頻多向?qū)Ш皆O(shè)備的英文縮寫,它能夠得到飛機與該設(shè)備連線的角度信息;DME是距離測量裝置的英文縮寫,它能夠得到飛機與該設(shè)備的距離信息。圖中飛機接收到來自3個VOR給出的角度和1個DME給出的距離(括號內(nèi)是測量誤差限),并已知這4種設(shè)備的x,y坐標(biāo)(假設(shè)飛機和這些設(shè)備在同一平面上)。如何根據(jù)這些信息精確地確定當(dāng)前飛機的位置?,問題分析 記4種設(shè)備VOR1、VOR2、VOR3、DME的坐標(biāo)為(xi, yi)(以km為單位),i=1, 2, 3, 4;VOR1、VOR2、VOR3測量得到的角度為i (從圖中可以看出,按照航空飛行管理的慣例,該角度是從北開始,沿順時針方向的角度,取值在003600之間),角度的誤差限為i,i=1, 2, 3;DME測量得到的距離為d4 (km),距離的誤差限為4。設(shè)飛機當(dāng)前位置的坐標(biāo)為(x, y),則問題就是由下表的已知數(shù)據(jù)計算(x, y)。,模型1及求解,圖中角度i是點(xi, yi)和點(x, y)的連線與y 軸的夾角(以y 軸正向為基準(zhǔn),順時針方向夾角為正,而不考慮逆時針方向的夾角),于是角度i的正切,i=1, 2, 3,對DME測量得到的距離,顯然有,直接利用上面得到的4個等式確定飛機的坐標(biāo)x, y,這時是一個求解超定(非線性)方程組的問題,在最小二乘準(zhǔn)則下使計算值與測量值的誤差平方和最小(越接近0越好)。,這是一個非線性(無約束)最小二乘擬合問題。,則需要求解,MODEL: SETS: VOR/1.3/: x, y, cita, sigma; ENDSETS DATA: x, y, cita, sigma = 74613932.813470.0140 6293750.787140.0105 15712595.393070.0227; x4 y4 d4 sigma4 = 155987864.32.0; ENDDATA ! XX,YY表示飛機坐標(biāo); min = sum(VOR: sqr(xx-x)/(yy-y) - tan(cita) ) + sqr(d4 - sqrt(sqr(xx-x4)+sqr(yy-y4) ); END,很容易寫出其LINGO程序如下:,求解該模型得到的解為(只列出部分結(jié)果):,Local optimal solution found. Objective value: 128.0226 Variable Value Reduced Cost XX 243.4204 0.1315903E-08 YY 126.3734 0.000000,顯然,這個解的目標(biāo)函數(shù)值很大(128.0226), 因此我們懷疑是一個局部最小點。用“LINGO|OPTIONS”菜單命令啟動“Global Solver”選項卡上的“Use Global Solver”選項,然后求解,可以得到全局最優(yōu)解如下:,Global optimal solution found. Objective value: 0.7050440E-03 Variable Value Reduced Cost XX 980.6926 0.000000 YY 731.5666 0.000000,這個解的目標(biāo)函數(shù)值很小(0.000705),飛機坐標(biāo)為(980.6926,731.5666)。,模型2及求解,注意到這個問題中角度和距離的單位是不一致的(角度為弧度,距離為公里),因此將這4個誤差平方和同等對待(相加)不是很合適。并且,4種設(shè)備測量的精度(誤差限)不同,而上面的方法根本沒有考慮測量誤差問題。如何利用測量設(shè)備的精度信息?這就需要看你對例中給出的設(shè)備精度如何理解。 一種可能的理解是:設(shè)備的測量誤差是均勻分布的。以VOR1為例,目前測得的角度為161.20,測量精度為0.80,所以實際的角度應(yīng)該位于區(qū)間161.20-0.80,161.20+0.80內(nèi)。對其他設(shè)備也可以類似理解。由于很小,即測量精度很高,所以在相應(yīng)區(qū)間內(nèi)正切函數(shù)tan的單調(diào)性成立。,于是可以得到一組不等式:,(i=1, 2, 3),也就是說,飛機坐標(biāo)應(yīng)該位于上述不等式組成的區(qū)域內(nèi)。例如,模型1中得到的目標(biāo)函數(shù)值很小,顯然滿足測量精度要求,因此坐標(biāo)(980.6926, 731.5666)肯定位于這個可行區(qū)域內(nèi)。,由于這里假設(shè)設(shè)備的測量誤差是均勻分布的,所以飛機坐標(biāo)在這個區(qū)域內(nèi)的每個點上的可能性應(yīng)該也是一樣的,我們最好應(yīng)該給出這個區(qū)域的x和y坐標(biāo)的最大值和最小值。于是我們可以分別以min x、max x、min y、max y、為目標(biāo),以上面的區(qū)域限制條件為約束,求出x和y坐標(biāo)的最大值和最小值。,以min x為例,相應(yīng)的LINGO程序為:,MODEL: Title 飛機定位模型2; SETS: VOR/1.3/: x, y, cita, sigma; ENDSETS,DATA: x, y, cita, sigma = 74613932.813470.0140 6293750.787140.0105 15712595.393070.0227; x4 y4 d4 sigma4 = 155987864.32.0; ENDDATA ! XX,YY表示飛機坐標(biāo); min=xx; for(VOR: (xx-x)/(yy-y) tan(cita - sigma) ); for(VOR: (xx-x)/(yy-y) sqrt(sqr(xx-x4)+sqr(yy-y4) ; END,用LINGO求解上述模型,LINGO系統(tǒng)返回的信息是這個模型沒有可行解。其實這顯然是一個不正確的信息,可能只是由于求解空間太大,LINGO沒有找到可行解。其實,我們可以想象這個問題的可行解大致就該在模型1中得到的最優(yōu)解附近,因此可以把這個解作為初始值告訴LINGO。例如,在上面程序中增加以下三行:,INIT: xx, yy = 980.6926, 731.5666; ENDINIT,此時求解,馬上就得到XX的最小值為974.8424。類似地(只需要換換目標(biāo)函數(shù)就可以了),可得到XX的最大值為982.2129,YY的最小值為717.1587,YY的最大值為733.1944。 因此,最后得到的解是一個比較大的矩形區(qū)域,大致為975,982717,733。,模型3及求解,模型2得到的只是一個很大的矩形區(qū)域,仍不能令人滿意。實際上,模型2中假設(shè)設(shè)備的測量誤差是均勻分布的,這是很不合理的。一般來說,在多次測量中,應(yīng)該假設(shè)設(shè)備的測量誤差是正態(tài)分布的,而且均值為0。本例中給出的精度i可以認(rèn)為是測量誤差的標(biāo)準(zhǔn)差(也可以是與標(biāo)準(zhǔn)差成比例的一個量,如標(biāo)準(zhǔn)差的3倍或6倍等)。 在這種理解下,用各自的誤差限i對測量誤差進行無量綱化(也可以看成是一種加權(quán)法)處理是合理的,即求解如下的無約束優(yōu)化問題更合理:,其中,i=1, 2, 3,由于目標(biāo)函數(shù)是平方和的形式,因此這是一個非線性最小二乘擬合問題。相應(yīng)的LINGO程序為(仍然將迭代初值告訴LINGO):,MODEL: TITLE 飛機定位模型3; SETS: VOR/1.3/: x, y, cita, sigma; ENDSETS DATA: x, y, cita, sigma = 74613932.813470.0140 6293750.787140.0105 15712595.393070.0227; x4 y4 d4 sigma4 = 155987864.3 2.0; ENDDATA INIT: xx, yy = 980.6926, 731.5666; ENDINIT,! XX,YY表示飛機坐標(biāo); !min = sum(VOR: sqr(xx-x)/(yy-y) - tan(cita)/sigma) ) + sqr(d4 - sqrt(sqr(xx-x4)+sqr(yy-y4)/sigma4 ); min = sum(VOR: (xx-x)/(yy-y) - tan(cita)/sigma)2 ) + (d4 - (xx-x4)2+(yy-y4)2).5 )/sigma4 )2; END,Global optimal solution found. Objective value: 2.600539 Model Title: 飛機定位模型3 Variable Value Reduced Cost XX 980.2106 0.000000 YY 727.3056 0.000000,計算結(jié)果為:,即飛機坐標(biāo)為(980.21, 727.31),這個解對應(yīng)的目標(biāo)函數(shù)值大約為2.6。,這個誤差為什么比模型1的大很多?這是因為模型1中使用的是絕對誤差,而這里使用的是相對于精度i的誤差。分母i很小,所以相對誤差比絕對誤差大,這是可以理解的。其實,可以認(rèn)為此時的目標(biāo)函數(shù)是四個標(biāo)準(zhǔn)正態(tài)分布的誤差平方和,只要在4以內(nèi)都是合理的。,