无约束的最小化是找到向量的问题
术语
Fminunc.信任地区算法
非线性最小化的信任区域方法
优化工具箱™载体中使用的许多方法都基于信任地区,优化中简单而强大的概念。
要了解优化的信任区域方法,请考虑无约束的最小化问题,最小化F(X),该函数占据矢量参数并返回标量。假设你在一个点X在N- 空间,您希望改进,即,移动到较低函数值的点。基本思想是近似F具有更简单的功能问:,合理地反映了功能的行为F在一个附近N围绕X。这个社区是信任区域。审判步骤S.通过最小化(或大约最小化)来计算N。这是信任区域子问题,
(1)
当前点被更新为X+S.如果F(X+S.)<F(X);否则,当前点保持不变N,信任区域缩小,重复试验步骤计算。
定义特定信任区域方法最小化的关键问题F(X)是如何选择和计算近似值问:(在当前点定义X),如何选择和修改信任区域N,以及如何准确地解决信任区域子问题。本节重点介绍了不受约束的问题。后面的部分由于存在对变量的限制而讨论了额外的并发症。
在标准信任区域方法中([48]),二次近似问:由泰勒近似的前两个条款定义F在X;邻里N通常是球形或椭圆形的形状。在数学上,通常陈述信任区域子问题
(2)
在哪里G是渐变的F在当前点X那H是黑森州矩阵(第二衍生物的对称矩阵),D.是对角线缩放矩阵,δ是正标量和∥。∥是2常态。解决了良好的算法等式2(看[48]);这种算法通常涉及计算所有特征值的计算H和牛顿过程适用于世俗方程
这种算法提供了准确的解决方案等式2。但是,它们需要时间与几种因素成正比H。因此,对于大规模问题,需要一种不同的方法。基于的几种近似和启发式策略等式2,在文献中提出([42]和[50])。优化工具箱求解器中遵循的近似方法是将信任区域子标数限制为二维子空间S.([39]和[42])。一旦子空间S.已经计算过,工作要解决等式2即使需要完整的特征值/特征向量信息,也是微不足道的(因为在子空间中,问题只是二维)。主导工作现已转移到子空间的确定。
二维子空间S.借助A借助确定预处理缀合物梯度过程下面描述。求解器定义S.随着线性空间跨越S.1和S.2, 在哪里S.1朝着梯度方向G, 和S.2是近似的牛顿方向,即解决方案
(3)
或者方向负曲率,
(4)
这种选择背后的哲学S.是强制全局收敛(通过最陡的下降方向或负曲率方向),实现快速局部收敛(通过牛顿步骤,当存在时)。
使用信任区域思想的无约束最小化的草图现在很容易给出:
制定二维信任区域子问题。
解决等式2确定试验步骤S.。
如果F(X+S.)<F(X), 然后X=X+S.。
调整δ。
这四个步骤重复直到收敛。根据标准规则调整信任区域维度Δ。特别地,如果不接受试验步骤,则减少,即,F(X+S.)≥F(X)。看[46]和[49]有关这方面的讨论。
优化工具箱溶剂处理一些重要的特殊情况F具有专业功能:非线性最小二乘,二次函数和线性最小二乘。然而,底层算法思想与常规案例相同。这些特殊情况在后面的部分中讨论。
预处理的共轭梯度法
一种解决大型,对称,线性方程式系统的流行方式生命值= -G是预先处理的共轭梯度(PCG)的方法。这种迭代方法需要能够计算表单的矩阵矢量产品s manbetx 845H·V.在哪里V.是一个任意的矢量。对称正定矩阵m是A.预处理器为了H。那是,m=C2, 在哪里C-1HC.-1是一种条件良好的矩阵或具有聚类特征值的矩阵。
在最小化背景下,您可以假设Hessian矩阵H是对称的。然而,H保证只能在最小最小化器附近积极确定。算法PCG在遇到负(或零)曲率方向时出口,即,D.T.高清≤0.。PCG输出方向P.是负曲率的方向或牛顿系统的近似解决方案生命值= -G。在任一情况下,P.有助于定义在讨论的信任区域方法中使用的二维子空间非线性最小化的信任区域方法。
Fminunc.Quasi-Newton.算法
无约束优化的基础知识
尽管对于无约束优化存在广泛的方法,但是可以在衍生信息中广泛地分类方法,或者没有使用。仅使用函数评估的搜索方法(例如,Simplex搜索Nelder和Mead[30])最适合不顺利或有许多不连续性的问题。当最小化的功能在其第一个衍生物中是连续的,梯度方法通常更有效。诸如牛顿的方法之类的更高阶方法仅适用于易于计算二阶信息时,因为使用数值差异计算二阶信息的计算是计算昂贵的。
梯度方法使用有关功能斜率的信息来指示最小被认为撒谎的搜索方向。这些中最简单的是最陡的方法,其中在方向上执行搜索,-F(X), 在哪里∇F(X)是目标函数的梯度。当最小化的功能具有长窄谷时,该方法是非常效率的,例如,情况是rosenbrock的功能
(5)
此功能的最低限度为X= [1,1], 在哪里F(X)= 0.。此功能的轮廓图如下图所示,以及在点[-1.9,2]的最陡阶段实现的溶液路径。在1000次迭代后,优化终止,仍然距离最小相当大。黑色区域是该方法不断从山谷的一侧锯齿形的地方。注意,朝向绘图的中心,当一个点恰好在谷的中心落地时,采取了许多较大步骤。
图5-1,Rosenbrock函数上最陡的血清方法
这种功能,也称为香蕉函数,在无约束例子中是臭名昭着的,因为曲率弯曲围绕原点。在本节中使用了rosenbrock的功能,以说明使用各种优化技术。由于U形谷周围的斜坡的陡度,以指数增量绘制了轮廓。
有关此图的更完整描述,包括生成迭代点的脚本,请参阅香蕉功能最小化。
拟牛顿方法
使用梯度信息的方法,最受青睐的是准牛顿方法。这些方法在每次迭代时建立曲率信息,以制定形式的二次模型问题
(6)
黑森州矩阵的地方,H,是一个正定的对称矩阵,C是一个常数矢量,和B.是一个常数。当偏衍生物的部分衍生物时,会发生这个问题的最佳解决方案X去零,即,
(7)
最佳解决方案点,X*,可以写作
(8)
牛顿型方法(与准牛顿方法相反)计算H直接并在下降方向上进行,以定位在许多迭代后的最小值。计算H数值上涉及大量计算。准牛顿方法通过使用观察到的行为来避免这种情况F(X) 和∇F(X)建立曲率信息以使近似H使用适当的更新技术。
已经开发了大量的Hessian更新方法。但是,泡德丹的公式[3],弗莱彻[12],金菲尔布[20]和桑诺[37](BFGS)被认为是以通用方法使用最有效的方法。
bfgs给出的公式是
(9)
在哪里
作为起点,H0.可以设置为任何对称的正明矩阵,例如身份矩阵一世。避免黑森州的反演H,您可以派生更新方法,避免了直接反演H通过使用近似反向黑森州的公式H-1每次更新。众所周知的程序是Davidon的DFP公式[7],弗莱彻和鲍威尔[14]。这使用与BFGS方法相同的公式(等式9.) 除了那个问:K.被替换为S.K.。
梯度信息通过分析计算的梯度提供,或者通过有限差异使用数值差异化方法通过部分导数导出。这涉及扰乱每个设计变量,X,反过来计算目标函数的变化率。
在每个主要的迭代,K.,在方向上执行线路搜索
(10)
Quasi-Newton方法由解决方案路径说明rosenbrock的功能图5-2,BFGS方法在RosenBrock的函数上。该方法能够遵循谷的形状,并且仅使用仅有限差分梯度将收敛到140函数评估之后的最小值。
图5-2,BFGS方法在RosenBrock的函数上
有关此图的更完整描述,包括生成迭代点的脚本,请参阅香蕉功能最小化。
线搜索
线搜索 是一种作为更大优化算法的一部分的搜索方法。在主要算法的每个步骤中,线路搜索方法沿着包含当前点的线进行搜索,XK.,平行于搜索方向,这是由主要算法确定的矢量。也就是说,该方法发现下一个迭代XK.+1形式
(11)
在哪里XK.
表示当前迭代,D.K. 是搜索方向,和α.*是标量步长度参数。
线路搜索方法尝试沿线减少目标函数XK. +α.*D.K.通过反复最小化目标函数的多项式插值模型。行搜索过程有两个主要步骤:
这括号阶段确定线上的点范围
被搜查。这括号对应于指定值范围的间隔α.。
这切片步骤将括号划分为子内部,其中目标函数的最小值由多项式插值近似。
得到的步长α满足Wolfe条件:
(12)
(13)
在哪里C1和C2是0 <C1<C2<1。
第一个条件(等式12.)要求α.K.充分降低目标函数。第二个条件(等式13.)确保步长度不太小。满足两个条件的点(等式12.和等式13.) 叫做可接受的观点。
线路搜索方法是第2-6节中描述的算法的实现[13]。也可以看看[31]有关线路搜索的更多信息。
黑森州更新
许多优化功能通过使用BFGS方法更新每次迭代的Hessian矩阵来确定搜索方向等式9.)。功能Fminunc.还提供了使用所提供的DFP方法的选项拟牛顿方法(放Hessupdate.至'dfp'在选项选择DFP方法)。黑森州,H,总是保持积极明确,以便搜索方向,D.,总是处于下降的方向。这意味着对于一些任意小的步骤α.在这个方向上D.,目标函数的幅度幅度幅度。你达到了积极的明确H通过确保这一点H被初始化为正定状态,此后
(从等式14.)总是积极的。术语
是线路搜索步长参数的乘积α.K.和搜索方向的组合D.过去和现在的渐变评估,
(14)
你总是达到这个条件
通过执行足够精确的线路搜索是积极的。这是因为搜索方向,D.,是一个下降方向,这样α.K.和负梯度-F(XK.)T.D.总是积极的。因此,可能的负项-F(XK.+1)T.D.通过提高线路搜索的准确性,可以根据需要制作小的幅度。