网刊加载中。。。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读

求解实对称互补特征值问题的积极集方法  PDF

  • 雷渊
  • 朱琳
  • 李斌
湖南大学 数学学院,湖南 长沙 410082

中图分类号: O241.6

最近更新:2021-11-25

DOI:10.11908/j.issn.0253-374x.21200

  • 全文
  • 图表
  • 参考文献
  • 作者
  • 出版信息
EN
目录contents

摘要

基于序列二次规划算法构造了求解实对称互补特征值问题的一类积极集方法。 通过特殊的积极集指标选取策略,该积极集方法计算得到的迭代序列具有单调下降特征,并从理论上证明了该方法的收敛性。 数值实验结果表明该方法是行之有效的,并且在互补性和迭代时间上均优于Matlab软件的内置算法。

互补特征值问

1( EiCP)是一类特殊的互补问2,又称为锥约束下的特征值问3-5,它是经典特征值问题的推广。近年来,互补特征值问题受到了广泛的关注,在结构机械系统的动力学分析、信号处理、摩擦弹性系统和声波系统的稳定性分析以及流体动力学等方面都涉及到互补特征值问题的理论和对应的特征值与特征向量的计算问6-8

目前关于互补特征值问题研究主要集中于2类常用的自对偶锥:非负锥和二阶

9-10。当锥为非负锥R+n时,该问题又称为Pareto特征值问题,其数学描述为:给定n 阶实矩阵A和对称正定矩阵B,求实数λR和非零向量xRn满足

x0,Ax-λBx0,xT(Ax-λBx)=0 (1)

称满足式(1)的实数λ是矩阵对(A,B)的一个Pareto特征值,x是相应的互补特征向量。 当式(1)中的矩阵A为实对称矩阵时,该问题可称为对称Pareto特征值问题。由于Pareto特征值问题(1)等价于单纯形上一个连续函数的变分不等式问题,所以该问题的解一定存

11

与线性或非线性互补问题类似,利用非线性互补函数可以将Pareto特征值问题等价地转化成一个非光滑方程组,然后用半光滑牛顿方法求

12,但是它在许多情况下会失败。另外,求解约束规划问题的内点算13、投影算14以及DC(difference of convex functions)算15都可用于计算大规模实对称互补特征值,但都存在计算效率不高的问题。在文献[16]中提出了一种具有谱选择搜索方向的块积极集算法(BAS),并通过大量的计算实验证明了其有效性。

序列二次规划(SQP)算法是求解非线性规划问题的一种高效算

17-18。 序列二次规划算法通过构造一系列二次规划子问题来求解非线性规划问题,而积极集方法适合求解二次规划问题。本文主要将积极集方法和序列二次规划算法相结合,构造求解对称Pareto特征值问题的一类积极集方法。

1 求解对称Pareto特征值的序列二次规划方法

主要讨论对称Pareto特征值问题,即矩阵AB都是对称矩阵,其中B是对称正定矩阵。当矩阵A非正定,可以找到一个足够大的正常数δ>0,使得矩阵A+δB是正定的。若(λ,x)是矩阵对(A+δB,B)的Pareto特征值和特征向量,则由式(1)可以很容易地得到(λ-δ,x)是矩阵对(A,B)的一个Pareto特征值和特征向量。 因此下面仅考虑AB都是对称正定矩阵的情况,用符号S+n表示n阶实对称正定矩阵的集合。

在求解对称Pareto特征值问题时,可以将原问题(1)转化为如下约束优化问题:

minxRn   f(x)=12xTAxs.t.   12xTBx-1=0x0 (2)

其拉格朗日函数为

L(x,λ,z)=12xTAx-λ12xTBx-1-zTx (3)

显然问题(2)的稳定点满足如下KKT(Karush-Kuhn-Tucker)条件:

Ax-λBx=z12xTBx-1=0xTz=0z,x0 (4)

式中:λRzR+n为相应等式约束和不等式约束的拉格朗日乘子。从式(4)可以知道(λ,x)是原问题(1)的一个解。因此可以利用序列二次规划方法找到优化问题(2)的一个稳定点,继而得到原问题(1)的一个Pareto特征值和其特征向量。

首先由当前迭代点xk构造二次规划子问题:

mindRn    12dTMd+(Axk)Td         s.t.    (Bxk)Td+12xkTBxk-1=0d+xk0 (5)

其中矩阵M是个对称正定矩阵。当可行域非空时,问题(5)有解且有唯一解,记问题(5)的解为dk。用dk作为第k次迭代的搜索方向,再选取适当步长αk,从而由迭代格式为xk+1=xk+αkdk生成序列{xk}。可以证明当问题(5)的解dk=0时,xk就是原问题(1)的一个Pareto特征向量。

下面定义一个罚函数Pσ(x)

Pσ(x)=f(x)+σ12xTBx-1 (6)

式中:σ是罚参数,σ>0。 在经典的序列二次规划算法中,当给定的罚参数σ对所有的k都满足σ>|λk|,其中λk是问题(5)等式约束的拉格朗日乘子,则dk是罚函数Pσ(x)的下降方向。又因为罚函数Pσ(x)>0有下界,故算法可收敛。在文献[

19]中有类似证明,这里不再阐述。在后面的数值实验中,发现这确实可以实现,其罚参数σ随着每次迭代而更新。

简单描述用SQP算法求解对称正定矩阵Pareto特征值的基本框架如下。

(1)初始值。①给定对称正定矩阵A,BS+n;②选取对称正定矩阵MS+n和罚参数σ>0;③选取误差参数ε>0和初始迭代点x00k=0

(2)迭代。①求出子问题(5)唯一解dk;②如果dkε,则算法停止,输出xk。否则,转至步骤③;③选取恰当的步长αk(0,1],使得Pσ(xk+αkdk)=min0<α1Pσ(xk+α dk);④xk+1=xk+αkdkk=k+1,转至步骤①。

从上面算法可知,利用序列二次规划问题求Pareto特征值问题需要找到适当的步长αk(0,1],使得Pσ(xk+αkdk)=min0<α1Pσ(xk+αdk)。在研究过程中发现函数Pσ(xk+αkdk)在区间(0,1]上是分段连续函数,可以直接计算出需要的步长,这里就不赘述求解过程,直接给出结果(详见文献[

19])。

定理 1   设xkdk由算法SQP生成,假设dk0σ>ρ,其中ρ是矩阵B-1A的谱半径。如式(1)式(2)选取的步长αk

(1)当ck>0

αk=1,   1δk         δk,  δk1<δk<1δk1,  δkδk1    

(2)当ck0

αk=1,   1δkδk,δk<1

则有Pσ(xk+αkdk)=min0<α1Pσ(xk+αdk)。式中:ck=1-12xkTBxkδk=-xkTAdk+σckdkT(A+σB)dkδk1=-ck+ck2+2ckdkTBdkdkTBdk

定理 2   设{xk}是算法SQP生成的迭代序列,当罚参数σ对所有的k都满足σ>max|λk|,ρ,其中λk是问题(5)等式约束的拉格朗日乘子,ρ是矩阵B-1A的谱半径,则序列{xk}的任意聚点都是原问题(1)的一个Pareto特征向量。

从上面可以发现算法SQP的主要思想是用子问题(5)解dk作为搜索方向,生成迭代序列,最后收敛到原问题的解。如何快速精确求解子问题(5)是问题的关键,下面利用积极集方法求解子问题。

2 积极集算法

众所周知,积极集方法被认为是求解中小规模二次规划问题的高效的算法之一。本节主要目的是构造一类有效求解子问题(5)的解dk的积极集方法。已知当前点xk,为了简洁,将下面的量重新进行标记: q:=Axkb:=Bxkc:=1-12xkTBxk,则可行域可简记为D:={d|bTd=c,d+xk0}。进而子问题(5)可以简写为

mindRn    g(d)=12dTMd+qTd                       s.t.      bTd=c         d+xk0      (7)

对于对称正定矩阵M,当可行域D非空时,易知问题(7)存在唯一解。那么dk是问题(7)的解当且仅当存在(λk,zk)满足下面KKT条件:

Mdk+q=λkb+zkbTdk=czkT(dk+xk)=0dk+xk0zk0 (8)

其中λkRzkR+n分别是等式约束和不等式约束的拉格朗日乘子。

下面定义2个指标集:Jk=J(dk)={i|(dk)i+(xk)i=0,iN},   Ik=N/Jk,Jk为问题(7)在点dk处的积极集,其中N={1,2,,n}。若dk是问题(7)的解,不难发现dk也是如下二次规划问题的稳定点:

mindRn   ĝ(d)=12dTMd+qTd s.t.       bTd=c     di=-(xk)i ,iJk (9)

引理1   若问题(9)有解,则其解为

d̂k=-xJkd̂Ik

其中d̂Ik满足下面方程:

MIbIkbIkT0 d̂Ik-λ̂k=MI,JxJk-qIkbJkTxJk+c (10)

证明   不失一般性,对矩阵和向量进行如下分块:

M=MJk,JkMJk,IkMIk,JkMIk,Ik=MJMJ,IMI,JMI
b=bJkbIk,q=qJkqIk
d=dJkdIk,xk=xJkxIk

其中MJk,Ik表示抽取矩阵MJk行和Ik列上的元素组成的主子矩阵,dJk={di|iJk}。令

ĝ(d)=12dTMd+qTd=12dIkTMIdIk+(MI,JdJk+qIk)TdIk+12dJkTMJdJk+qJkTdJk

则问题(9)转化为

min   ĝ(d)=12dIkTMIdIk+(MI,JdJk+qIk)TdIk+12dJkTMJdJk+qJkTdJks.t.      bIkTdIk=-bJkTdJk+c          dJk=-xJk (11)

又因为dJk=-xJk,所以只需要求出d̂Ik的值即可。显然可以通过解下面优化问题得到要求的值d̂Ik

min   g¯(dIk)=12dIkTMIdIk+(-MI,JxJk+qIk)TdIks.t.      bIkTdIk=bJkTxJk+c  (12)

问题(12)的解满足KKT条件:

MId̂Ik-λ̂kbIk=MI,JxJk-qIkbIkTd̂Ik=bJkTxJk+c

其中λ̂k是其相应的拉格朗日乘子,显然解(d̂Ik,λ̂k)是下面方程的解:

MIbIkbIkT0 d̂Ik-λ̂k=MI,JxJk-qIkbJKTxJk+c

证毕。

综上可知,二次规划问题(7)的解也是问题(9)的解,可通过求解问题(9)来找到问题(7)的解。由于问题(9)依赖于问题(7)的最优解dk,所以解决问题(7)的关键步是确定哪些不等式约束是积极的,即设计一类确定指标集Jk的策略。

下面建立积极集法求解子问题(7)的基本框架。

(1)初始值。①给定对称正定矩阵MS+n,向量xkRnqRnbRn及标量cR;②选取初始点d0D,令k=0Kk为空集;③确定初始积极集:Jk=J(d0)={i|(d0)i+(xk)i=0}Ik=N/Jk

(2)迭代。①求问题(9)的解(d̂k, λ̂k);②求ẑk=Md̂k+q-λ̂kb;③判断。(a)若d̂k+xk0,且ẑk0,则算法停止,输出(d̂k, λ̂k, ẑk);(b)若d̂k+xk0,但存在指标i使得(ẑk)i<0,则令Ĵk={i|(d̂k)i+(xk)i=0},显然有JkĴk,这里又分2种情况讨论:情况1,若JkĴk,则取dk+1=d̂kKk+1为空集,Jk+1=ĴkIk+1=N/Jk+1;情况2,若Jk=Ĵk,取dk+1=d̂kKk+1={iĴk|(ẑk)i<(ẑk)m}Jk+1=Jk/Kk+1Ik+1=N/Jk+1,其中ẑkm表示向量ẑk中第m小的分量;(c)若存在i使(d̂k)i+(xk)i<0,即d̂kD。令Sk={iIk|(d̂k)i+(xk)i<0},分2种情况讨论:情况1,若KkSk=,令β*=min(xk)i+(dk)i(dk)i-(d̂k)i|iSkd(β)=dk+β(d̂k-dk),求出βk使得g(d(βk))=min0βkβ*g(d(β)),则取dk+1=dβkKk+1为空集,Jk+1={i|(dk+1)i+(xk)i=0}Ik+1=N/Jk+1;情况2,若KkSk,求出下面优化问题的解d˜k

mindRn   g˜(d)=12dTMd+qTd           s.t.   bTd=cdJk=-(xk)Jk            dIk+(xk)Ik0 (13)

dk+1=d˜kKk+1为空集,Jk+1={i|(dk+1)i+(xk)i=0}Ik+1=N/Jk+1;④k=k+1,转至步骤①。

接下来讨论积极集算法的一些基本性质。

定理 3   设若序列{dk}由积极集算法生成,其中d0Dxk0,则有如下性质:①对任意的k都有,dkD,即bTdk=cdk+xk0;②对任意的k都有,g(dk+1)g(dk),且等号成立当且仅当dk+1=dk

证明   (1)用归纳法证明。因为d0D,不妨假设dkD成立,所以只需证dk+1D即可。在积极集算法的情况(a)、(b)中dk+1=d̂kdk+1是问题(9)的解,显然有dk+1D。在情况(c)中分2种情况讨论。

情况1:当KkSk=时,因为dk+xk0,所以对iSk,有dk+xk>0。又因为Sk={iIk|(d̂k)i+(xk)i<0},所以对iSk,有(d̂k)i<-xki<dki,进而可知β*>0。而

(xk)i+(dk)i(dk)i-(d̂k)i=(xk)i+(dk)i-(d̂k)i+(d̂k)i(dk)i-(d̂k)i=1+(xk)i+(d̂k)i(dk)i-(d̂k)i<1

综上可知0<β*<1。令d*=d(β*)=dk+β*(d̂k-dk),下面证明d*D

等式约束:bTd*=bT(dk+β*(d̂k-dk))=bTdk+β*(bTd̂k-bTdk)=c

不等式约束分2种情况如下。①当iSk时,易知(dk)i+(xk)i0(d̂k)i+(xk)i0。所以有

(d*)i+(xk)i=(dk)i+β*((d̂k)i-(dk)i)+(xk)i=(1-β*)(dk)i+β*(d̂k)i+(xk)i=(1-β*)((dk)i+(xk)i)+β*((d̂k)i+(xk)i)0

②当iSk时,易知(d̂k)i-dki<0。所以有

(d*)i+(xk)i=(dk)i+β*((d̂k)i-(dk)i)+(xk)i=(dk)i+(xk)i+β*((d̂k)i-(dk)i)(dk)i+(xk)i+(dk)i+(xk)i(dk)i-(d̂k)i((d̂k)i-(dk)i)=0

综上可知d*+xk0,所以d*D。又因为dk+1=dβk0βkβ*,显然dk+1也满足bTdk+1=cdk+1+xk0,即dk+1D

情况2:当KkSk时,则dk+1是问题(13)的解,显然有dk+1D

(2)由上可知dkdk+1都在可行域内,由于dkdk+1有多种取法,下面分情况讨论。

dk=d̂k-1时,且Ĵk={i|(d̂k-1)i+(xk)i=0},即dk是如下问题的解:

mindRn    ĝ(d)=12dTMd+qTds.t.      bTd=c          di=-(xk)i         iJk-1

①若dk+1=d̂k,那么dk+1是问题(9)的稳定点,显然dk也满足问题(9)的约束条件,则易得g(dk+1)=ĝ(dk+1)ĝ(dk)=g(dk),即g(dk+1)g(dk),等号成立当且仅当dk+1=dk。②若dk+1=d(βk)=dk+βk(d̂k-dk),由算法可知g(d(βk))=min0βkβ*g(d(β)),显然有g(dk+1)g(dk),等号成立当且仅当dk+1=dk。③若dk+1=d˜k,即dk+1是问题(13)的解,显然dk也满足问题(13)的约束条件,同①可知g(dk+1)g(dk),等号成立当且仅当dk+1=dk

dk=d̂k-1Jk=Jk-1/Kk、或者dk=dk+βk-1(d̂k-1-dk-1)、或者dk=d˜k-1这3种情况时,在这里就不一一讨论了,与情况dk=d̂k-1Ĵk={i|(d̂k-1)i+(xk)i=0}相同,可证g(dk+1)g(dk),等号成立当且仅当dk+1=dk。证毕。

从上面定理3可知由积极集算法生成的序列{dk}在可行域内,且保证目标函数g(d)下降。

定理 4   若(d̂k, λ̂k, ẑk)是算法输出的解,则有如下性质:①bTd̂k=c;②d̂k+xk0;③ẑk=Md̂k+q-λ̂kb;④ẑk0;⑤ẑkT(d̂k+xk)=0,综上可知(d̂k, λ̂k, ẑk)是问题(7)的解。

证明   由积极集算法和定理3,性质①②③④显然易得,所以只需证明ẑkT(d̂k+xk)=0。因为ẑk=Md̂k+q-λ̂kb,即

ẑJkẑIk=MJMJ,IMI,JMId̂Jkd̂Ik+qJkqIk-λ̂kbJkbIk

所以

ẑJk=MJd̂Jk+MJ,Id̂Ik+qJk-λ̂kbJk
ẑIk=MI,Jd̂Jk+MId̂Ik+qIk-λ̂kbIk

由引理1知,d̂k=-xJkd̂Ik,且(d̂Ik, λ̂k)满足KKT条件MId̂Ik-λ̂kbIk=MI,JxJk-qIk,则

ẑIk=MId̂Ik-λ̂kbIk+MI,Jd̂Jk+qIk=MI,JxJk-qIk+MI,Jd̂Jk+qIk=MI,JxJk-qIk-MI,JxJk+qIk=0

可知ẑk=ẑJk0,所以ẑkT(d̂k+xk)=0。证毕。

定理4表明可以通过积极集算法找到问题(7)的解,即子问题(5)的解。积极集算法相当于是个组合问题,这保证了算法会在有限步结束,接下来讨论算法中一些具体问题,如在算法迭代步③中求解出βk使得g(d(βk))=min0βkβ*g(d(β))

定理 5   在积极集算法中,若g(d(βk))=min0βkβ*g(d(β)),则

βk=β*  , β*β0    β0  ,0<β0<β*0   , β00        (14)

其中d¯k=d̂k-dkβ0=-dkTMd¯k+qTd¯kd¯kTMd¯kβ*=min(xk)i+(dk)i(dk)i-(d̂k)i|iSk

证明   令d¯k=d̂k-dk,则d(β)=dk+β(d̂k-dk)=dk+βd¯k。而

g(d(β))=g(dk+βd¯k)=12(dk+βd¯k)TM(dk+βd¯k)+qT(dk+βd¯k)=12(d¯kTMd¯k)β2+(qTd¯k+dkTMd¯k)β+12dkTMdk+qTdk

所以

g(dk+βd¯k)=(d¯kTMd¯k)β+qTd¯k+dkTMd¯k

又因为矩阵M是正定的,d¯k0,则有d¯kTMd¯k>0,所以g(d(β))的最小值点为β0=-dkTMd¯k+qTd¯kd¯kTMd¯k。显然当βk满足式(14)时,使得g(d(βk))=min0βkβ*g(d(β))。证毕。

最后对问题(9)是否有解进行讨论。从引理1可以知道,当方程(10)有解时,显然问题(9)也有解。因为矩阵M是正定的,则它的主子矩阵MI也是正定矩阵,即矩阵MI可逆,那么有如下2种情况:①bIk0,则MIbIkbIkT0=MI-bIkTMI-1bIk0。系数矩阵行列式不等于零,即矩阵可逆,方程有唯一解。②bIk=0,则方程无解或有无穷多个解。

为了避免第2种情况出现,即保证bIk0,那么可对指标集Jk做如下处理。因为b为非零向量,则必可找到一个i使得bi0。若iJk,则Jk=Jk/i;若iJk,则指标集Jk保持不变。这样保证了bIk0,方程(10)有唯一解,所以在实际计算中可以保证问题(9)有解。

3 数值实验

本节详细描述数值算例的设计,尝试通过数值实验验证积极集方法的有效性以及其在计算时间、迭代步数以及互补精度方面均优于已有算法。所有数值实验在操作系统为64位windows 10和处理器为Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz 3.19 GHz 的电脑上进行,使用的软件是Matlab R2018b。

SQP算法最不可缺少的部分是子问题(5)中对称正定矩阵M的选取。因为本文主要讨论矩阵A是对称正定的情况,在这里直接令M=A。为了简洁,用积极集算法求解子问题的序列二次规划问题,记为SQP(J)。又因为Matlab软件中的内置函数“quadprog”能直接求解二次规划,在所有实验中算法SQP(Q)表示直接用内置函数“quadprog”求解子问题(5)。

积极集算法中求解子问题的初始向量d0的公式如下:

(d0)i=12x0TBx0+1(Bx0)i-(x0)i,j=i-(x0)j,                 ji

其中,iBx0中第1个分量为正的指标。因为矩阵B为正定矩阵,这样的分量一定存在。这样选取保证了d0在可行域内,也从侧面证明了子问题可行域非空。在第k次外迭代后,积极集算法中求解子问题的初始向量为dk=(1-αk-1)dk-1,其中αk-1dk-1分别为上一步外迭代得到的步长和子问题的解。另外,积极集算法在迭代步③中(b)的情况2中m的选取也会影响迭代次数,在这里取m=l5,其中l表示ẑk小于零的分量的个数。

为了有效地分析算法SQP(J)和SQP(Q)性能,也用算法BAS

16求解了所有数值实验。在本节的所有数值实验中,初始矩阵AB都为随机生成的对称正定矩阵。初始向量为x0=es,其中es表示第s个分量为1、其余分量为零的向量,且s=argmax{ri|i=1,,n}ri=min{ajibii-aiibji|j=1,,n}。所有算法的停止准则为dk2<10-8。另外,还讨论了算法的互补性,即H=min{Axk-λkBxk,xk}2

例1   为了测试算法的可行性,首先计算一个简单的问题。 在这里令

A=4-200-2760069-100-18B=1000010000100001

初始向量为x0=1010T,通过算法SQP(J)和算法SQP(Q)得到

x*=1.264 90.632 500,λ*=3Ax*-λ*Bx*=003.794 70

这意味这λ*x*是矩阵对A,B的Pareto特征值和对应的Pareto特征向量。

例2   为了进一步测试算法的有效性,测试一些随机生成的问题。随机生成5组阶数分别为50、500和1 000的对称正定矩阵对(A,B),分别列出了算法BAS、算法SQP(Q)和算法SQP(J)计算矩阵对(A,B)的Pareto特征值所需的CPU运行时间(s),迭代次数IT以及互补性H,见表1-3。其中,N表示矩阵的阶数。

表1表2表3可以看出在阶数N=50时,算法BAS的运行时间少于算法SQP(J),但互补性精度低于算法SQP(J)。当矩阵阶数增高到N=1 000时,算法SQP(J)的运行时间明显低于算法BAS,而算法SQP(Q)的互补性表现糟糕。从整体运算时间和互补性上来看,算法SQP(J)比算法BAS和算法SQP(Q)性能更稳,效率更高。

表1 随机生成的50阶问题的数值结果比较
Tab. 1 Comparison of numerical results of randomly generated 50th order problems

实验

次数

BASSQP(Q)SQP(J)
CPU运行时间/sITHCPU运行时间/sITHCPU运行时间/sITH
1 0.000 947 65 4.445 8 ×10-6 0.022 173 8 2.428 9 ×10-6 0.006 272 8 1.947 9 ×10-6
2 0.001 478 126 6.103 4 ×10-6 0.033 262 8 3.979 4 ×10-6 0.006 002 8 2.73 76 ×10-7
3 0.000 890 71 4.753 9 ×10-6 0.023 004 8 1.101 5 ×10-5 0.006 316 8 8.552 7 ×10-7
4 0.003 668 109 6.513 7 ×10-6 0.021 788 8 1.1383 ×10-5 0.005 014 8 7.567 4 ×10-8
5 0.002 325 185 4.928 0 ×10-6 0.024 468 8 2.097 6 ×10-5 0.005 053 8 1.587 3 ×10-6
表2 随机生成的500阶问题的数值结果比较
Tab. 2 Comparison of numerical results of randomly generated 500th order problems

实验

次数

BASSQP(Q)SQP(J)
CPU运行时间/sITHCPU运行时间/sITHCPU运行时间/sITH
1 0.647 598 775 4.505 1 ×10-5 0.328 313 10 6.479 5 ×10-4 0.243 969 10 1.719 2×10-9
2 0.765 895 903 4.902 7 ×10-5 0.337 919 10 8.700 5 ×10-4 0.250 600 10 1.308 9 ×10-9
3 0.825 336 969 5.971 3 ×10-5 0.347 302 10 4.131 4 ×10-4 0.227 094 10 1.936 7 ×10-9
4 0.092 072 100 4.926 5 ×10-6 0.366 384 10 9.921 4 ×10-5 0.298 834 10 1.745 1 ×10-9
5 0.265 748 298 2.343 4 ×10-5 0.358 240 10 2.519 9 ×10-4 0.232 598 10 1.223 7 ×10-9
表3 随机生成的1 000阶问题的数值结果比较
Tab. 3 Comparison of numerical results of randomly generated 1000th order problems

实验

次数

BASSQP(Q)SQP(J)
CPU运行时间/sITHCPU运行时间/sITHCPU运行时间/sITH
1 6.687 324 1 360 8.917 8 ×10-5 1.444 580 11 0.002 1 1.764 132 10 2.272 9 ×10-7
2 0.503 070 103 4.808 7 ×10-6 1.460 458 10 0.001 2 1.650 242 10 2.788 6 ×10-7
3 5.928 741 1 197 8.351 4 ×10-5 1.426 617 10 0.002 5 1.347 867 10 1.959 7 ×10-7
4 8.955 474 1 812 1.141 1 ×10-4 1.442 109 10 0.001 1 1.861 311 10 2.946 4 ×10-7
5 6.787 376 1 353 9.138 6 ×10-5 1.468 115 10 0.002 1 1.632 466 10 1.945 3 ×10-7

4 结论

构造了求解实对称互补特征值问题的积极集方法。实验数值结果表明,所提出的算法SQP(J)在迭代步数和计算时间以及互补性上均优于算法BAS和算法SQP(Q)。算法SQP(J)能够快速求解实对称互补特征值问题,主要原因在于积极集算法更加适合求解子问题。如何选取子问题中的矩阵M是接下来需要研究的问题。

作者贡献声明

雷 渊:提出研究思路,设计研究方案,修订最终版本。

朱 琳:完成研究方案,进行数值实验,分析数据,起草论文。

李 斌:负责数值实验的编程。

参考文献

1

SEEGER A. Eigenvalue analysis of equilibrium processes defined by linear complementarity conditions [J]. Linear Algebra and its Applications19992921-3): 1. DOI: 10.1016/S0024-3795(99)00004-X. [百度学术

2

韩继业修乃华戚厚铎. 非线性互补理论与算法 [M]. 上海上海科学技术出版社2006. [百度学术

HAN JiyeXIU NaihuaQI Houduo. Nonlinear complementarity theory and algorithm [M]. ShanghaiShanghai Scientific and Technical Publishers2006. [百度学术

3

SEEGER ATORKI M. On eigenvalues induced by a cone constraint [J]. Linear Algebra and its Applications20033723): 181. DOI: 10.1016/S0024-3795(03)00553-6. [百度学术

4

PINTO DA COSTA ASEEGER A. Cone-constrained eigenvalue problems: theory and algorithms [J]. Computational Optimization and Applications2010451): 25. DOI: 10.1007/s10589-008-9167-8. [百度学术

5

QUEIROZ MJÚDICE Jet al. The symmetric eigenvalue complementarity problem [J]. Mathematics of Computation200473248): 1849. DOI: 10.1090/S0025-5718-03-01614-4. [百度学术

6

PINTO DA COSTA AMARTINS J A CFIGUEIREDO I Net al. The directional instability problem in systems with frictional contacts [J]. Computer Methods in Applied Mechanics and Engineering2004, 193( 3-5): 357. DOI: 10.1016/j.cma.2003.09.013. [百度学术

7

MARTINS J A CPINTO DA COSTA A. Stability of finite-dimensional nonlinear elastic systems with unilateral contact and friction [J]. International Journal of Solids and Structures20003718): 2519. DOI: 10.1016/S0020-7683(98)00291-1. [百度学术

8

PINTO DA COSTA AMARTINS J A C. A numerical study on multiple rate solutions and onset of directional instability in Quasi-staticfrictional contact problems [J]. Computers and Structures20048217): 1485. [百度学术

9

FERNANDES L MFUKUSHIMA MJÚDICE Jet al. The second-order cone quadratic eigenvalue complementarity problem [J]. Optimization Methods and Software2015311): 1. DOI: 10.1080/10556788.2015.1040156. [百度学术

10

ADLY SRAMMAL H. A new method for solving second-order cone eigenvalue complementarity problems [J]. Journal of Optimization Theory and Applications20151652): 563. DOI: 10.1007/s10957-014-0645-0. [百度学术

11

SEEGER AVICENTE-PÉREZ J. On cardinality of Pareto spectra [J]. Electronic Journal of Linear Algebra2011221):758. [百度学术

12

MA Changfeng. The semismooth and smoothing Newton methods for solving Pareto eigenvalue problem [J]. Applied Mathematical Modelling2012361): 279. DOI: 10.1016/j.apm.2011.05.045. [百度学术

13

WÄCHTER ABIEGLER L T. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming [J]. Mathematical Programming20061061): 25. DOI: 10.1007/s10107-004-0559-y. [百度学术

14

JÚDICE JRAYDAN MS.ROSA Set al. On the solution of the symmetric eigenvalue complementarity problem by the spectral projected gradient algorithm [J]. Numerical Algorithms2008474): 391. DOI: 10.1007/s11075-008-9194-7. [百度学术

15

LE THI H AMOEINI MDINH T Pet al. A DC programming approach for solving the symmetric Eigenvalue complementarity problem [J]. Computational Optimization and Applications2012513): 1097. DOI: 10.1007/s10589-010-9388-5. [百度学术

16

BRÁS C PFISCHER AJÚDICE Jet al. A block active set algorithm with spectral choice line search for the symmetric eigenvalue complementarity problem [J]. Applied Mathematics and Computation201729436. DOI: 10.1016/j.amc.2016.09.005. [百度学术

17

MURRAY W. Sequential quadratic programming methods for large-scale problems [J]. Computational Optimization and Applications199771): 127. DOI: 10.1007/978-0-585-26778-4_8. [百度学术

18

GOULD N I MTOINT P L. SQP methods for large-scale nonlinear programming [C]// IFIP TC7 Conference on System Modelling and Optimization. BostonSpringer1999149-178. [百度学术

19

袁亚湘孙文瑜. 最优化理论与方法 [M]. 北京科学出版社1997. [百度学术

YUAN YaxiangSUN Wenyu. Optimization theory and method [M]. BeijingScience Press1997. [百度学术