APP下载

线性二阶锥权互补问题的非精确非单调光滑化牛顿法

2021-03-23迟晓妮刘文丽刘三阳

吉林大学学报(理学版) 2021年2期
关键词:二阶牛顿线性

迟晓妮,刘文丽,刘三阳,赵 敏

(1. 桂林电子科技大学 数学与计算科学学院,广西密码学与信息安全重点实验室,广西 桂林 541004; 2. 桂林电子科技大学 数学与计算科学学院,广西自动检测技术与仪器重点实验室,广西 桂林 541004; 3. 西安电子科技大学 数学与统计学院,西安 710071)

0 引 言

作为互补问题(CP)的推广,权互补问题(WCP)在大气化学、多体动力学、经济学等领域的一些均衡问题中应用广泛[1]. 本文考虑线性二阶锥权互补问题(LWSOCCP),即给定M∈n×n,q∈n×n,权向量w∈K,找到一向量对(x,s)∈n×n,使得

x∈K,s=Mx+q∈K,x∘s=w,

(1)

这里K为n维二阶锥,即

K∶={x=(x1,x2)∈×n-1: ‖x2‖≤x1},

其中‖·‖表示Euclid范数. 当w=0时,LWSOCCP(1)退化为线性二阶锥互补问题(LSOCCP):

x∈K,s=Mx+q∈K,x∘s=0.

由于WCP中存在非零权向量,其理论和算法比CP更复杂,因此目前关于WCP的研究文献报道较少,且大多仅限于n上. Potra[1]最早提出了WCP的概念,并研究了求解WCP的两种内点算法;Tang[2]给出了求解线性WCP的非单调光滑化牛顿法;Chi等[3]研究了Euclid Jordan代数上水平线性WCP解的存在性与唯一性.

在优化问题求解[4]中,光滑化牛顿法是一种有效的算法[5-6],其主要思想为先将原问题转化为与之等价的方程组,然后用光滑化算法对该方程组进行求解,从而得到原问题的解. 与内点算法[7-8]不同,光滑化牛顿法不要求初始点和中间迭代点严格可行[9]. 此外,光滑化牛顿算法每次迭代都需精确求解方程组,但当初始点离解较远时,精确线搜索通常效率不高,因此本文采用非精确线搜索,从而减少计算工作量.

本文结合Fischer-Burmeister函数和Natural-Residual函数[2],给出二阶锥上权互补问题的一个新的含参数光滑函数,并基于该函数,提出新的求解LWSOCCP的非精确非单调光滑化牛顿法. 算法采用非单调线搜索技术,提高了找到全局最优解的可能性及收敛速度,数值算例结果表明算法有效.

1 预备知识

对任意x=(x1,x2)∈×n-1,s=(s1,s2)∈×n-1,定义K上的Jordan积[10]为

x∘s=(xTs,x1s2+s1x2),

其单位元e∶=(1,0,…,0)T∈n,且x2∶=x∘x. 对任意x=(x1,x2)∈×n-1,定义箭形矩阵[10]为

其中I为(n-1)阶单位矩阵. 易证x∘s=Lxs,Lx+s=Lx+Ls.Lx是正定(半正定)矩阵当且仅当x∈intK(x∈K).

引理1[10]对任意x,s∈n,w≻K0,有

(2)

w2≻Kx2⟹w≻Kx.

(3)

若将式(2)和式(3)中“≻”替换为“±”,结论也成立.

引理2[11]对任意a,b,u,v∈n,若a≻K0,b≻K0,a∘b≻K0满足〈u,v〉≥0和a∘u+b∘v=0,则u=v=0.

2 光滑函数及其性质

对于LWSOCCP(1),构造一个新的含参数光滑函数φτ(μ,x,s):+×n×n→n:

其中w∈K为给定权向量,参数τ∈[0,4). 当w=0时,φτ(μ,x,s)退化为LSOCCP光滑函数

对任意τ∈[0,4),有

(5)

下面基于含参数光滑函数(4),将LWSOCCP(1)转化为含参数光滑方程组. 令z∶=(μ,x,s)∈+×n×n,定义函数

(6)

由式(1)和式(4)~(6)知,(x*,s*)是LWSOCCP(1)的解,且μ*=0 ⟺Gτ(z*)=0.

定理1令z∶=(μ,x,s)∈+×n×n,τ∈[0,4),则下列结论成立:

1)Gτ(z)全局Lipschitz连续,处处强半光滑,且在点z∶=(μ,x,s)∈++×n×n处连续可微,其Jacobi矩阵为

(7)

其中

(8)

(9)

2) 若M为半正定矩阵,则Gτ(z)在任意点z∶=(μ,x,s)∈++×n×n处可逆.

证明: 1) 因为

故由文献[12]中定理3.2易证结论成立.

2) 令Δz∶=(Δμ,Δx,Δs)∈×n×n是Gτ(z)零空间中任一向量,则只需证Δz=0. 由式(7)知

Δμ=0,

MΔx-Δs=0,

(10)

(11)

将式(11)两端左乘Lc,得

整理式(12)有

从而

对任意μ>0,由c的定义和w∈K,有

因此由引理1得

(15)

(16)

所以

(17)

又因为M为半正定矩阵,故由式(10)知〈Δx,Δs〉=〈Δx,MΔx〉≥0,从而有

〈Δx+μΔs,μΔx+Δs〉=μ(‖Δx‖2+‖Δs‖2)+(1+μ2)〈Δx,Δs〉≥0.

(18)

由式(14)~(18)和引理2有Δx+μΔs=0,μΔx+Δs=0,故由式(10)得Δx=0,Δs=0,结论成立. 证毕.

3 非精确非单调光滑化牛顿法

下面基于光滑函数(4),给出求解LWSOCCP(1)的非精确非单调光滑化牛顿法,且在适当的假设条件下证明算法适定.

定义函数Hτ:+×n×n→+为Hτ(z)∶=‖Gτ(z)‖2.

算法1LWSOCCP的非精确非单调光滑化牛顿法(INS).

选择常数σ,δ∈(0,1),p∈[0,1],μ0>0. 取ρ∈(0,1)和ξ∶=‖Gτ(z0)‖+1,使得μ0ρξ<1. 令z0∶=(μ0,x0,s0)∈×n×n为任意初始点,

Q0=1,C0∶=Hτ(z0),T(z0)=ρmin{1,‖Gτ(z0)‖1+p}.

设序列{υk}满足υk∈[0,1-μ0ρξ]. 选取ηmin和ηmax,使得0≤ηmin≤ηmax<1. 置k∶=0.

步骤1) 若Hτ(zk)=0,则算法停止;

步骤2) 解下列方程组得搜索方向Δzk∶=(Δμk,Δxk,Δsk)∈×n×n:

(19)

其中T(zk)=min{ρ,ρ‖Gτ(zk)‖1+p,T(zk-1)},‖r(zk)‖≤υk‖Gτ(zk)‖;

步骤3) 令αk为1,δ,δ2,…中使得下式成立的最大值:

Hτ(zk+αkΔzk)≤[1-σ(1-μ0ρξ-υk)αk]Ck;

(20)

步骤4) 令ηk∈[ηmin,ηmax],zk+1∶=zk+αkzk,且

Qk+1∶=ηkQk+1,

(21)

(22)

置k∶=k+1,转步骤1).

定理2令{Ck},{T(zk)},{zk}是算法1生成的迭代序列,则:

1) {Ck}单调递减;

2) 对任意k≥0,有Hτ(zk)≤Ck且{T(zk)}单调递减;

3) 对任意k≥0,有μk>0且μ0T(zk)≤μk.

证明:类似文献[13]中注3.1和文献[14]中引理1可得结论.

定理3若M为半正定矩阵,则算法1适定.

下证算法1中步骤3)适定. 对任意α∈(0,1],定义

L(α)=Gτ(zk+αΔzk)-Gτ(zk)-αGτ(zk)Δzk.

(23)

由定理1中1)知Gτ(·)在任意点zk=(μk,xk,sk)∈++×n×n处连续可微,则

‖L(α)‖=ο(α).

(24)

对任意k≥0,由T(zk)的定义知,当‖Gτ(zk)‖≤1时,有

T(zk)≤ρ‖Gτ(zk)‖1+p≤ρ‖Gτ(zk)‖;

(25)

当‖Gτ(zk)‖>1时,有

T(zk)=ρ≤ρ‖Gτ(zk)‖.

(26)

因此由式(25)~(26)得

T(zk)≤ρ‖Gτ(zk)‖.

(27)

由定理2中2)和式(6)知,对任意k≥0,有

故eμk≤ξ. 从而由式(19),(23),(24),(27)知,对任意α∈(0,1],有

Hτ(zk+αΔzk)≤[1-σ(1-μ0ρξ-υk)α]Ck.

故算法1中步骤3)适定. 从而算法1适定.

4 收敛性分析

下面证明算法1的全局收敛性和局部超线性收敛性.

定理4设M为半正定矩阵,{zk}是算法1生成的迭代序列,则{zk=(μk,xk,sk)}的任一聚点z*∶=(μ*,x*,s*)都是Gτ(z)=0的解.

证明: 不失一般性,设当k→∞时,{zk=(μk,xk,sk)}收敛到z*∶=(μ*,x*,s*). 由定理2中1)知{Ck}为收敛序列,即

(28)

由定理2中2)知

0≤‖Gτ(zk)‖2=Hτ(zk)≤Ck≤Ck-1≤C0,

(29)

所以序列{Hτ(zk)}有界,因此必存在收敛子列{Hτ(zk)}k∈J,其中J⊆{0,1,2,…,k,…}. 故

反证法. 设Gτ(z*)>0,则C*>0,考虑下列两种情形:

(i) 若对任意k∈J有αk≥α*>0,其中α*为某固定常数. 由式(20)~(22)得

由{Ck}有界知

(31)

又由式(21)得

(32)

(33)

从而由定理2中2)有

(34)

由定理2中3)知

的解. 由式(29),(33)得Hτ(z*)≤C*≤Hτ(z*),因此

Hτ(z*)=C*.

(35)

从而

2Gτ(z*)TGτ(z*)Δz*≥-σ(1-μ0ρξ-υ*)C*.

(36)

又由式(27)和式(35)知

T(z*)‖Gτ(z*)‖≤ρHτ(z*)=ρC*,

(37)

于是由式(36)~(37)有

即σ(1-μ0ρξ-υ*)≥2(1-μ0ρξ-υ*),与σ∈(0,1)矛盾. 故结论成立.

证明: 类似文献[4]中定理8可证.

5 数值算例

下面用MATLAB R2014在Intel(R) core(TM)i5-5200 CPU 2.7 GHz,4.0 GB内存,Windows 7操作系统的计算机上编程,验证算法1的性能,且每个算例均随机生成15个问题进行求解. 参数取值为σ=0.04,μ0=0.01,δ=0.5,ρ=0.02,υk=2-k,τ=1. 令0=(0,0,…,0)T,e=(1,0,…,0)T,1=(1,…,1)T. 随机生成矩阵N∈n×n和向量q∈n,令矩阵M=NTN,s=Mx+q,以‖G(z)‖≤10-6为算法终止条件,(x0,s0)为初始点,记AIT为平均迭代次数,ACPU为平均CPU时间.

例1给定权向量w=(1,0.1×1),令ηk=0.1,n=100. 表1列出了算法1求解不同初始点和不同p值LWSOCCP的数值结果. 由表1可见,不同初始点对算法所需的AIT和ACPU影响明显,而p值对算法影响较小.

表1 算法1求解不同初始点和不同p值LWSOCCP的数值结果

例2给定权向量w=e,令p=1,初始点(x0,s0)=(e,e),问题规模从200维到600维. 用算法1求解不同ηk值的LWSOCCP,并比较算法1(INS)与采用精确线搜索的光滑化算法NS(nonmontone smoothing)[13]求解LWSOCCP的数值结果,结果列于表2. 由表2可见,算法1采用非单调线搜索(ηk≠0)比采用单调线搜索(ηk=0)所需的ACPU和AIT少,且在相同条件下,算法1比算法NS求解LWSOCCP的效果更好.

表2 算法1和算法NS求解LWSOCCP的数值结果

综合表1和表2可见,算法1可有效求解LWSOCCP,且收敛速度快,迭代次数少,因而算法性能稳定.

猜你喜欢

二阶牛顿线性
牛顿的实验室
二阶整线性递归数列的性质及应用
线性回归方程的求解与应用
牛顿忘食
非齐次线性微分方程的常数变易法
线性回归方程知识点剖析
二阶矩阵、二阶行列式和向量的关系分析
二次函数图像与二阶等差数列
失信的牛顿
非线性m点边值问题的多重正解