2. 中南大学有色金属成矿预测与地质环境监测教育部重点实验室,长沙市麓山南路932号,410083;
3. 中南林业科技大学土木工程学院,长沙市韶山南路498号,410004
在大地测量数据处理中,参数通常会有一些附加信息或者先验信息,这些信息能够在一定程度上给出参数解的可行范围,充分利用先验信息对参数建立某种约束,能够有效降低大地测量问题中的不适定性,保证解的稳定性和唯一性。一些学者利用先验信息建立了附等式约束和附不等式约束的平差模型[1-3],如朱建军等[2]将罚函数与测量平差中的零权和无限权思想结合,提出一种简单的附不等式约束的平差迭代方法;王乐洋等[3]提出附不等式约束的大地测量反演理论,有效解决了反演解的非唯一性问题。但这些前期得到的关于参数解的附加信息或者先验信息有时需要以区间、集合或模糊数形式表达[4],如果仍用不等式来表达这种区间约束,就会大大增加约束方程的个数,从而增加不等式约束解算的难度。对传统的平差模型附加这种区间约束,可以得到一种参数带区间约束的平差模型[5],这种平差模型可以转换成边界约束的二次规划问题。在数学领域,有一些学者提出解决这种边界约束二次规划的算法,如内点算法[6]、分解方法[7]、子空间截断牛顿法[8],但这些算法只注重解的最优性,忽视了平差的另一任务——精度评定。本文尝试将最优化理论中的子空间截断牛顿法引入到测量平差中,用病态问题对这种算法进行验证,并给出精度评估方法,扩展了现有的误差理论与测量平差方法。
1 参数带区间约束的平差模型与截断牛顿法对传统的平差模型附加区间约束,可以建立参数带区间约束的平差模型:
$ \left\{ \begin{array}{l} \mathit{\boldsymbol{L}} = \mathit{\boldsymbol{BX}} + \mathit{\boldsymbol{ \boldsymbol{\varDelta} }} ,\mathit{\boldsymbol{ \boldsymbol{\varDelta} }} \sim N\left( {0,{\sigma ^2}{\mathit{\boldsymbol{P}}^{ - 1}}} \right)\\ {l_i} \le {x_i} \le {u_i},i = 1,2, \cdots ,n \end{array} \right. $ | (1) |
其中,B是m×n(m≥n)维系数矩阵,L是m维观测向量,Δ是m维随机误差向量,l={l1, …,ln}是参数X的下界,u ={u1, …,un}是参数X的上界。对模型(1)进行最小二乘平差,即求解如下二次规划问题:
$ \left\{ \begin{array}{l} \min F\left( \mathit{\boldsymbol{X}} \right) = {\mathit{\boldsymbol{V}}^{\rm{T}}}\mathit{\boldsymbol{PV}} = {\left( {\mathit{\boldsymbol{L}} - \mathit{\boldsymbol{BX}}} \right)^{\rm{T}}}\mathit{\boldsymbol{P}}\left( {\mathit{\boldsymbol{L}} - \mathit{\boldsymbol{BX}}} \right)\\ {\rm{s}}.\;{\rm{t}}.\;{l_i} \le {x_i} \le {u_i},i = 1,2, \cdots ,n \end{array} \right. $ | (2) |
在目标函数F(X)=(L -BX)TP(L -BX)=XT(BTPB)X-2LTPBX+LTPL中,LTPL是一个常量,因此二次规划问题(2)可以转化为如下边界约束的二次规划问题:
$ \left\{ \begin{array}{l} \min f\left( \mathit{\boldsymbol{X}} \right) = \frac{1}{2}{\mathit{\boldsymbol{X}}^{\rm{T}}}\mathit{\boldsymbol{NX}} - {\mathit{\boldsymbol{c}}^{\rm{T}}}\mathit{\boldsymbol{X}}\\ {\rm{s}}.\;{\rm{t}}.\;{l_i} \le {x_i} \le {u_i},i = 1,2, \cdots ,n \end{array} \right. $ | (3) |
其中,N =BTPB,c =BTPL。g(X)=NX -c是f(X)在X处的梯度,H =N是f(X)在X处的Hesse矩阵[8]。对于不带区间约束的二次规划minf(X)=
$ {\mathit{\boldsymbol{X}}_{k + 1}} = {\mathit{\boldsymbol{X}}_k} + {\alpha _k}{\mathit{\boldsymbol{d}}_k} $ | (4) |
式中,dk是n维搜索方向,αk是通过一维搜索满足f(Xk+αkdk)=minα>0f(Xk+αdk)得到的步长。
针对无约束优化的凸二次规划,牛顿法虽然具有局部二次收敛性,但在实际运用中存在不少问题,如Hesse矩阵求逆、选取初始值困难,修正牛顿法部分地克服了这些不足并具有非常强的整体收敛性。但牛顿方向主要具有局部性质,当迭代点远离最优解时求解牛顿方程的计算量非常大。为了减少计算量,Dembo等[9]在修正牛顿法的基础上提出无约束优化的截断牛顿法(TNCG),这种方法是利用共轭梯度法,按一种截断机制求出一个截断牛顿方向p。令gp(X)和Hp分别是对应截断牛顿方向p的梯度和Hesse矩阵。截断牛顿法求截断牛顿方向p的具体步骤[8-9]如下:
1) 令t=0,p0=0,r0=-gp(X),d0=r0以及δ0=r0Tr0;
2) 令qt=Hpdt,如果dtTqt≤εδt,停止迭代得到截断牛顿方向p:如果t=0,p =d0,否则p =pt,其中ε是充分小的常数,一般取ε=10-6;
3) 令αt=rtTrt/dtTqt,pt+1=pt+αtdt以及rt+1=rt-αtqt,如果‖rt+1‖/‖gp(X)‖≤η,停止迭代并得到p =pt+1;
4) 令βt=rt+1Trt+1/rtTrt,dt+1=rt+1+βtdt,δt+1=rt+1Trt+1+βt2δt以及t=t+1,并转到步骤2)。
上述算法是截断牛顿法的内部迭代过程,目的是求出截断牛顿方向p,并将p作为搜索方向,其余外部迭代步骤与修正牛顿法相同。文献[15]证明了无约束的截断牛顿法的收敛性在线性收敛和二次收敛性之间,这种收敛性依赖于强制序列{ηk}的选取,一般具有超线性收敛性或更快的收敛性。强制序列{ηk}一般由用户给定,也可以由算法外部迭代自动产生:ηk=min{1/k, ‖g(X)‖},k=1, 2, …。但当参数受到区间约束时,搜索方向就不能完全由截断牛顿方向决定。针对这个问题,子空间截断牛顿法将搜索方向分成4个部分,截断牛顿方向只是搜索方向的一部分。
2 基于积极集的子空间截断牛顿法定义有效指标集I ={i:li≤xi≤li+b}∪{i:ui-b≤xi≤ui},非有效指标集J ={i:li+b≤xi≤ui-b},将指标在I中的参数称为有效参数,将指标在J中的参数称为非有效参数,其中b是很小的常数,可取b=10-6,再将指标集I分成3个部分:
$ \left\{ \begin{array}{l} {\mathit{\boldsymbol{I}}_1} = \left\{ {i:{x_i} = {l_i}} \right\} \cup \left\{ {i:{x_i} = {u_i}} \right\} \cap \left\{ {i:\left( {{l_i} + {u_i} - 2{x_i}} \right){g_i}\left( x \right) \ge 0} \right\}\\ {\mathit{\boldsymbol{I}}_2} = \left\{ {i:{l_i} \le {x_i} \le {l_i} + b} \right\} \cup \left\{ {i:{u_i} - b \le {x_i} \le {u_i}} \right\} \cap \left\{ {i:\left( {{l_i} + {u_i} - 2{x_i}} \right){g_i}\left( x \right) < 0} \right\}\\ {\mathit{\boldsymbol{I}}_3} = \left\{ {i:{l_i} < {x_i} \le {l_i} + b} \right\} \cup \left\{ {i:{u_i} - b \le {x_i} < {u_i}} \right\} \cap \left\{ {i:\left( {{l_i} + {u_i} - 2{x_i}} \right){g_i}\left( x \right) \ge 0} \right\} \end{array} \right. $ | (5) |
其中,指标在I1中的有效变量是最速下降方向指向可行域外侧的,指标在I2中的有效变量是最速下降方向指向可行域内部的,指标在I3中的有效变量是最速下降方向指向可行域边界的[8]。
子空间截断牛顿法的关键在于求解搜索方向,其搜索方向根据有效集和非有效集的划分被分为4个部分。
第一步,求解非有效变量的搜索方向。这一部分的搜索方向由截断牛顿方向决定,类似于无约束优化,得到的截断牛顿方向p需要通过转化得到非有效参数的搜索方向。具体方法是令p左乘n×nJ维Z矩阵,即d =Zp,此时对应有效指标集的搜索方向为0,nJ代表指标集J中元素的个数,zsj是Z矩阵中第s行第j列元素,由式(6)得到:
$ {z_{sj}} = \left\{ \begin{array}{l} 1,\;\;如果\;s = {J_j}\\ 0,\;\;其他 \end{array} \right. $ | (6) |
其中,Jj代表指标集J中第j个元素。
第二步,求解有效变量的搜索方向。对应I1、I2、I3这3个有效指标集的搜索方向,由式(7)得到:
$ {\mathit{\boldsymbol{d}}_i} = \left\{ \begin{array}{l} 0,i \in {\mathit{\boldsymbol{I}}_1}\\ - {g_i}\left( \mathit{\boldsymbol{X}} \right),i \in {\mathit{\boldsymbol{I}}_2}\\ - {\lambda _i}{g_i}\left( \mathit{\boldsymbol{X}} \right),i \in {\mathit{\boldsymbol{I}}_3} \end{array} \right. $ | (7) |
其中,
子空间截断牛顿法的步长α通过投影搜索法得到,能够保证参数在约束区间范围内,即满足f(PΩ[X +αd])≤ f(PΩ[X])+μαg(X)Td,其中μ∈(0, 0.5)是给定的常数,PΩ是Ω ={X :li≤xi≤ui,i=1, 2, …,n}的投影算子,投影公式如(8),满足要求的步长α通过Armijio非精确搜索技巧确定:
$ {\rm{mid}}\left( {\mathit{\boldsymbol{X}},\mathit{\boldsymbol{l}},\mathit{\boldsymbol{u}}} \right) = \left\{ \begin{array}{l} {l_i},{x_i} < {l_i}\\ {x_i},{x_i} \in \left[ {{l_i},{u_i}} \right]\\ {u_i},{x_i} > {u_i} \end{array} \right. $ | (8) |
子空间截断牛顿算法步骤如下:
1) 选取初始点X0,使得l <X0 <u,计算g(X0)和H,令k=0;
2) 划分指标集I1k、I2k、I3k、Jk;
3) 构建Zk,gp(Xk)=ZkTg(Xk),Hpk=ZkH,ηk=min{1/k, ‖g(X)‖},用TNCG算法解算得到截断牛顿方向pk,令dk=Zkpk,继续计算式(7)得到完整的搜索方向dk;
4) 选取参数μ∈(0, 0.5)且令α=1,求最小非负整数w(w=0, 1, …),从w=0开始取值,直到满足:
$ \begin{array}{*{20}{c}} {f\left( {{\mathit{\boldsymbol{P}}_\mathit{\Omega }}\left[ {{\mathit{\boldsymbol{X}}_k} + {2^{ - w}}\bar \alpha {\mathit{\boldsymbol{d}}_k}} \right]} \right) \le f\left( {{\mathit{\boldsymbol{P}}_\mathit{\Omega }}\left[ {{\mathit{\boldsymbol{X}}_k}} \right]} \right) + }\\ {\mu {2^{ - w}}\bar \alpha g{{\left( {{\mathit{\boldsymbol{P}}_\mathit{\Omega }}\left[ {{\mathit{\boldsymbol{X}}_k}} \right]} \right)}^{\rm{T}}}{\mathit{\boldsymbol{d}}_k}} \end{array} $ |
令αk=2-wα,Xk+1=PΩ[Xk+αkdk],计算g(Xk+1);
5) 如果满足‖Xk+1-Xk‖<
当搜索方向dk≠0时,这始终是一个下降方向,即f(Xk)是严格单调递减的,而且集合I2、I3在大部分迭代中是空的。梁昔明等[8]证明算法得到的序列{Xk}的任一聚点均是问题(3)的KT点,即证明了子空间截断牛顿法具有整体收敛性。
针对边界约束的二次规划问题(3),子空间截断牛顿法利用有效集的思想将参数划分成有效参数和非有效参数进行迭代,最终参数得到有效约束,从而参数带区间约束的平差模型(1)可以转化为带等式约束的平差模型:
$ \left\{ \begin{array}{l} \mathit{\boldsymbol{L}} = \mathit{\boldsymbol{BX}} + \mathit{\boldsymbol{ \boldsymbol{\varDelta} }},\mathit{\boldsymbol{ \boldsymbol{\varDelta} }} \sim N\left( {0,{\sigma ^2}{\mathit{\boldsymbol{P}}^{ - 1}}} \right)\\ \mathit{\boldsymbol{CX}} = {\mathit{\boldsymbol{L}}_x} \end{array} \right. $ | (9) |
式中,若有效参数个数为mx,则矩阵C是mx×n维约束矩阵,其中对应有效参数xi的元素为1,其他元素为0;Lx是mx维约束向量,元素是对应的li或ui。
平差模型(9)的参数估值与参数协因数矩阵[10]分别为:
$ \begin{array}{*{20}{c}} {{{\mathit{\boldsymbol{\hat X}}}_C} = \left( {\mathit{\boldsymbol{N}}_b^{ - 1} - \mathit{\boldsymbol{N}}_b^{ - 1}{\mathit{\boldsymbol{C}}^{\rm{T}}}\mathit{\boldsymbol{N}}_c^{ - 1}\mathit{\boldsymbol{CN}}_b^{ - 1}} \right){\mathit{\boldsymbol{B}}^{\rm{T}}}\mathit{\boldsymbol{PL}} + }\\ {\mathit{\boldsymbol{N}}_b^{ - 1}{\mathit{\boldsymbol{C}}^{\rm{T}}}\mathit{\boldsymbol{N}}_c^{ - 1}{\mathit{\boldsymbol{L}}_x}} \end{array} $ | (10) |
$ {\mathit{\boldsymbol{Q}}_X} = \mathit{\boldsymbol{N}}_b^{ - 1} - \mathit{\boldsymbol{N}}_b^{ - 1}{\mathit{\boldsymbol{C}}^{\rm{T}}}\mathit{\boldsymbol{N}}_c^{ - 1}\mathit{\boldsymbol{CN}}_b^{ - 1} $ | (11) |
其中,Nb=BTPB,Nc=CNb-1CT。平差模型(9)与参数带区间约束的平差模型(1)是等价的,因此参数协因数矩阵(11)也为平差模型(1)的参数协因数矩阵。
3 算例分析算例中测边网数据引自文献[11]。该测边网得到的系数矩阵是病态矩阵,P1点到P10点是已知点,其坐标以及与未知点之间的观测边长如表 1所示;K1、K2、K3为未知点,其真实坐标与近似坐标如表 2所示,各观测量为等精度观测。根据前期观测得到的点位精度为σ=±0.01 m,约束区间D1是由点位精度推算的,为了便于算法分析,将约束区间D1放大2倍、3倍得到D2和D3。3个未知点之间的观测边长分别为dK1K2=88.340 2 m,dK1K3=73.355 1 m。相对于未知点近似坐标的改正数参数估值为
方案1:令θ ={0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01}T,l1=-3θ,u1=3θ,约束区间为D1={X :l1≤X ≤u1};方案2:l2=-6θ,u2=6θ,约束区间为D2={X:l2≤X ≤u2};方案3:l3=-9θ,u3=9θ,约束区间为D3={X:l3≤X ≤u3}。
表 3是求解测边网未知点坐标改正数的算法结果。从中可以看出:
1) 经典最小二乘法的结果偏离真值较大,m=32.367 5,严重失真。
2) 岭估计(L曲线)[12]的参数估值与真值的残差平方和m=0.013 4,对于由前期点位精度推算的约束区间D1,本文算法的m=0.004 4 < 0.013 4,这说明本文算法参数估值比岭估计(L曲线)的结果好;从另一方面来看,若D1是一个可靠的先验信息,最小二乘解和岭估计解并不是D1的可行解。
3) 对于放大2倍和3倍的约束区间,本文算法虽然没有比岭估计(L曲线)的结果好,但m也远小于经典最小二乘法,当先验信息有效时,本文算法能够改善病态性。
4) 由约束区间D1下的算法结果可得:
$ \left\{ \begin{array}{l} \mathit{\boldsymbol{C}} = \left[ {\begin{array}{*{20}{c}} 0&1&0&0&0&0&0&0&0\\ 0&0&1&0&0&0&0&0&0\\ 0&0&0&0&0&0&1&0&0\\ 0&0&0&0&0&0&0&0&1 \end{array}} \right]\\ {\mathit{\boldsymbol{L}}_x} = \left[ {\begin{array}{*{20}{c}} { - 0.0300}\\ {0.0300}\\ { - 0.0300}\\ {0.0300} \end{array}} \right] \end{array} \right. $ | (12) |
根据式(10),解得:
5) 测边网的算法结果进一步说明,本文算法在充分利用先验信息的基础上,能够有效改善平差模型的病态性,并能给出精度评定。
6) 随着先验约束区间的增大,算法的精度会逐渐降低,对病态性的改善程度也会逐渐减弱。
4 结语大地测量数据处理过程中,利用可靠的先验信息对参数附加一定的约束,能够降低平差模型的不适定性。针对参数带有区间约束的平差模型,本文基于积极集的思想,提供了一种关于区间约束解算的新算法。子空间截断牛顿法可以迅速改变积极约束集的构成,得到区间约束的积极集(也称为有效约束),它不需要化为不等式约束而增加算法的复杂性,可以直接对区间约束进行迭代解算。在精度评估上,可以利用积极集构成的等式约束,通过带有等式约束的平差理论,对参数的精度进行评估,解决了不等式约束平差算法的精度评估问题,通过最优估计理论拓展了现有的误差理论与测量平差方法。
[1] |
朱建军, 谢建, 陈宇波, 等. 附不等式约束平差的理论与方法研究[J]. 测绘工程, 2008, 17(6): 1-5 (Zhu Jianjun, Xie Jian, Chen Yubo, et al. Research on Theory and Methods of Inequality Constrained Least Squares[J]. Engineering of Surveying and Mapping, 2008, 17(6): 1-5 DOI:10.3969/j.issn.1006-7949.2008.06.001)
(0) |
[2] |
朱建军, 谢建. 附不等式约束平差的一种简单迭代算法[J]. 测绘学报, 2011, 40(2): 209-212 (Zhu Jianjun, Xie Jian. A Simple Iterative Algorithm for Inequality Constrained Adjustment[J]. Acta Geodaetica et Cartographica Sinica, 2011, 40(2): 209-212)
(0) |
[3] |
王乐洋, 朱建军. 附不等式约束的大地测量反演[J]. 大地测量与地球动力学, 2008, 28(1): 109-113 (Wang Leyang, Zhu Jianjun. Geodetic Inversion Theory Constrained with Inequality[J]. Journal of Geodesy and Geodynamics, 2008, 28(1): 109-113)
(0) |
[4] |
宋迎春, 谢雪梅, 陈晓林. 不确定性平差模型的平差准则与解算方法[J]. 测绘学报, 2015, 44(2): 135-141 (Song Yingchun, Xie Xuemei, Chen Xiaolin. Adjustment Criterion and Algorithm in Adjustment Model with Uncertainty[J]. Acta Geodaetica et Cartographica Sinica, 2015, 44(2): 135-141)
(0) |
[5] |
左廷英, 陈仲儿, 宋迎春. 参数有界约束下的最小二乘平差算法[J]. 测绘工程, 2015(9): 1-4 (Zuo Tingying, Chen Zhonger, Song Yingchun. On the Application of Parameter-Bounded Least Squares Adjustment Algorithm[J]. Engineering of Surveying and Mapping, 2015(9): 1-4 DOI:10.3969/j.issn.1006-7949.2015.09.001)
(0) |
[6] |
魏紫銮. 边界约束凸二次规划问题的预校正内点法[J]. 数值计算与计算机应用, 1998, 19(3): 192-202 (Wei Ziluan. For Convex Quadratic Programming Problem with Box Constraints[J]. Journal on Numerical Methods and Computer Applications, 1998, 19(3): 192-202)
(0) |
[7] |
卢战杰, 魏紫銮. 边界约束二次规划问题的分解方法[J]. 计算数学, 1999, 21(4): 475-482 (Lu Zhanjie, Wei Ziluan. Decomposition Method for Quadratic Programming Problem with Box Constraints[J]. Mathematica Numerica Sinica, 1999, 21(4): 475-482 DOI:10.3321/j.issn:0254-7791.1999.04.009)
(0) |
[8] |
梁昔明, 钱积新. 大规模界约束优化的子空间截断牛顿法[J]. 浙江大学学报:理学版, 2002, 29(5): 494-499 (Liang Ximing, Qian Jixin. Subspace Truncated-Newton Algorithm for Large-Scale Bound Constrained Optimization[J]. Journal of Zhejiang University: Sciences Edition, 2002, 29(5): 494-499)
(0) |
[9] |
Dembo R S, Steihaug T. Truncated-Newton Algorithms for Large Scale Unconstrained Optimization[J]. Mathematical Programming, 1983, 26(2): 190-212 DOI:10.1007/BF02592055
(0) |
[10] |
朱建军. 误差理论与测量平差基础[M]. 北京: 测绘出版社, 2013 (Zhu Jianjun. Error Theory and Basis of Surveying Adjustment[M]. Beijing: Surveying and Mapping Press, 2013)
(0) |
[11] |
郭建锋.测量平差系统病态性的诊断与处理[D].郑州: 信息工程大学, 2002 (Guo Jianfeng. Diagnosis and Processing of Ill-Conditioning Surveying Adjustment System[D]. Zhenzhou: Information Engineering University, 2002)
(0) |
[12] |
王振杰, 欧吉坤. 用L-曲线法确定岭估计中的岭参数[J]. 武汉大学学报:信息科学版, 2004, 29(3): 235-238 (Wang Zhenjie, Ou Jikun. Determining the Ridge Parameters in a Ridge Estimation Using L-Curve Method[J]. Geomatics and Information Science of Wuhan University, 2004, 29(3): 235-238)
(0) |
2. Key Laboratory of Metallogenic Prediction of Nonferrous Metals and Geological Environment Monitoring, Ministry of Education, Central South University, 932 South-Lushan Road, Changsha 410083, China;
3. School of Civil Engineering, Central South University of Forestry and Technology, 498 South-Shaoshan Road, Changsha 410004, China