信赖域方法和线搜索类似都是迭代方法,与其不同的是,每次迭代时,在一个选定的可信赖区域内,选择当前迭代点的近似模型 mkm_kmk ,然后计算最优步长;如果步长不合适,可以对区域进行缩放。该小结主要介绍:
- 信赖域方法的基本形式
- 求解信赖域的基础方法
- 信赖域方法的收敛性和收敛速度
- 信赖域方法的扩展
信赖域方法的基本形式
在信赖域方法中,可信赖的区域(Region)的选择很重要,一般都会根据上一步结果进行动态变化;如果上一步太大则缩小,否则进行扩大。
在模型最优化问题中,选择TR方法比LS方法能够较快的收敛,例如
在该例子中,在非凸函数F中,当前步骤TR方法要优于LS。
信赖域方法有几个参数需要选择:
- 近似模型 mkm_kmk
- 可信赖区域 Δk\Delta_kΔk
- 求解参数 pkp_kpk
基本形式
在本节中模型选择为二次近似模型,采用函数二阶泰勒展开,即f(xk+p)=fk+gkTp+12pT∇2fkpf(x_k+p)=f_k + g_k^Tp + \frac 12 p^T \nabla^2 f_k pf(xk+p)=fk+gkTp+21pT∇2fkp一般情况下会用 BkB_kBk 去近似Hessian矩阵,即mk=fk+gkT+12pTBkpm_k = f_k + g_k^T + \frac 12 p^T B_k pmk=fk+gkT+21pTBkp其中 BkB_kBk为对称矩阵。
信赖域的基本形式为:min mk(p)=fk+gkT+12pTBkps.t ∣∣p∣∣≤Δkmin \ m_k(p)=f_k + g_k^T + \frac 12 p^T B_k p \quad s.t \ ||p|| \le \Delta_kmin mk(p)=fk+gkT+21pTBkps.t ∣∣p∣∣≤Δk
该问题为关于p的带约束的最优化问题,参数p被限制在一个球形区域内。如果BkB_kBk选择为Hessian,则为TR的牛顿方法。
如果∣∣Bk−1gk∣∣≤Δk||B_k^{-1}g_k|| \le \Delta_k∣∣Bk−1gk∣∣≤Δk则 pk=−Bk−1gkp_k=-B_k^{-1}g_kpk=−Bk−1gk为完全步(Full Step),即球形约束没有作用。
Δk\Delta_kΔk的选择
参数Δk\Delta_kΔk的选择一般会根据上一步的结果进行调整,定义ρk=fk−f(xk+pk)mk(0)−mk(pk)\rho_k=\frac{f_k-f(x_k+p_k)}{m_k(0)-m_k(p_k)}ρk=mk(0)−mk(pk)fk−f(xk+pk)其中分子表示函数实际减小的值;分母表示近似模型减少的值。分析 ρk\rho_kρk:
- 如果 ρk\rho_kρk 小于0,一般情况下分母不可能小于0,因为目标函数求解的是最小值;此时说明分子小于0,即下一个目标点比上一步大,此时需要舍弃。
- 如果 ρk\rho_kρk 大于0并且接近1,说明模型和实际的预期比较相符合,此时可以考虑扩大Δk\Delta_kΔk
- 如果ρk\rho_kρ