信赖域法示例浅析
- 格式:doc
- 大小:22.50 KB
- 文档页数:2
信赖域方法概论非线性优化中的信赖域方法及其应用摘要信赖域方法是非线性优化的一类重要的数值计算方法它在近二十年来受到了非线性优化研究界非常的重视。
特别是最近几年,一直是非线性优化的研究热点。
目前,信赖域方法已经和传统的线收索方法并列为非线性规划的两类主要数值方法。
关键词:信赖域法非线性优化约束条件引言非线性最优化是20世纪50年代发展起来的,它讨论非线性决策问题的最佳选择之特性,构造寻求最佳解的计算方法,研究这些计算方法的理论性质及实际计算表现。
随着电子计算机的发展和应用,非线性最优化理论和方法有了很大发展。
目前,它已成为运筹学的一个重要分支,并且在自然科学,工程技术,经济管理,系统工程,特别是“优化设计”等诸多领域得到广泛的应用,成为一门十分活跃的学科。
非线性优化的传统方法几乎都是线搜索类型的方法,即每次迭代时产生一搜索方向,然后在搜索方向上进行精确的或不精确的一维搜索,以得到下一个迭代点。
信赖域方法是一类很新的方法,它和线搜索法并列为目前求解非线性规划的两类主要的数值方法。
信赖域方法思想新颖,算法可靠,具有很强的收敛性,它不仅能很快地解决良态问题,而且也能有效地求解病态(ill-conditioned)的优化问题。
因而对信赖域方法的研究是近20年来非线性规划领域的一个重要的研究方向,是当今寻求如何构造新的优化计算方法的主要途径。
信赖域方法的研究起源于Powell 1970 年的工作,他提出了一个求解无约束优化问题的算法,该算法在每次迭代时强制性地要求新的迭代点与当前的迭代点之间的距离不超过某一控制量。
引入控制步长是因为传统的线搜索方法常常由于步长过大而导致算法失败,特别是当问题是病态时尤为如此。
控制步长实质上等价于在以当前迭代点为中心的一个邻域内对一个近似于原问题的简单模型求极值。
这种技巧可理解为只在一个邻域内对近似模型信赖,所以此邻域被称为信赖域(trust region)。
利用这一技巧的方法也就被称为信赖域法。
信赖域算法参数解释信赖域算法(Trust Region Method)是一种非线性优化算法,用于求解无约束非线性优化问题。
该算法通过构建一个信赖域模型来逐步逼近最优解。
下面我将对信赖域算法的参数进行逐一解释。
1. 信赖域半径(Trust Region Radius): 信赖域半径是信赖域算法的一个关键参数,用来控制当前信赖域模型的有效范围。
信赖域算法通过在该信赖域内进行迭代计算来逐步逼近最优解。
信赖域半径通常用一个正数来表示,代表了当前信赖域的半径大小。
2. 模型准则函数(Model Objective Function): 模型准则函数是信赖域算法中的一个重要参数,用于评价信赖域模型与原始优化问题之间的拟合程度。
常见的模型准则函数包括二次模型、三次模型等,其中二次模型是最常用的。
模型准则函数的选择会直接影响算法的收敛性和准确性。
3. 模型的预测质量(Model Prediction Quality): 模型的预测质量是衡量当前信赖域模型在给定信赖域半径内的拟合程度和预测能力。
通常采用实际函数值和模型函数值之间的差异来评估。
4. 信赖域约束比率(Trust Region Constraint Ratio): 信赖域约束比率是一个用于控制信赖域半径变化的参数。
当信赖域内的拟合程度较好时,可适当增大信赖域半径;当拟合程度较差时,应缩小信赖域半径。
信赖域约束比率通常取值在(0,1)之间。
5. 信赖域更新策略(Trust Region Update Strategy): 信赖域更新策略用于根据不同的计算情况来更新信赖域半径。
常见的信赖域更新策略包括成功步长比例、信赖域半径调整因子等。
更新策略的选择会影响到算法的收敛性和稳定性。
6. 模型剪裁准则(Model Truncation Criterion): 模型剪裁准则用于判断当前信赖域模型是否拟合程度足够好,是否需要继续进行迭代计算。
常见的剪裁准则有曲率条件和信赖域约束条件等。
信赖域法是一种迭代方法,用于求解非线性方程组。
它是以特定初值作为起点,沿着一个信赖域(trust-region)内的迭代,最终达到收敛的解或最小值的近似值的方法。
信赖域法的基本思想是,每次迭代都会得到一个新的解,然后检查该解是否与上一次迭代的解在某个信赖域内,如果超出信赖域,则修正步长;如果在信赖域内,则更新解,并改变信赖域的大小,使得信赖域大小逐渐增加,以达到收敛的效果。
信赖域法可以用于求解非线性方程组。
它可以确保每次迭代都能得到更优的解,并且可以在可控范围内调整步长,从而控制收敛的速率。
同时,它也可以确保迭代解处于可靠的区域,从而避免计算结果出现大的误差。
因此,信赖域法可以很好地应用于求解具有边界约束的非线性方程组。
它可以有效地控制迭代的步长,确保方程组的解处于可靠的范围,从而保证迭代的准确性。
锥模型的拟牛顿型信赖域方法最近,拟牛顿型信赖域方法已经成为机器学习领域备受关注的研究话题。
拟牛顿算法(NLA)被认为是一种更快、更准确的机器学习算法,并且可以用于许多任务,如分类、估计和聚类。
与传统的牛顿算法相比,拟牛顿方法具有更快、更准确的性能,在处理大规模问题时也表现良好。
拟牛顿型信赖域方法(NLA)就是一种基于拟牛顿算法的概念,其主要目的是通过限定其学习空间来提高机器学习方法的性能。
锥模型的拟牛顿型信赖域方法(NLA)是一种用于进行机器学习的限定空间拟牛顿算法。
它与传统牛顿方法的不同之处在于,它采用的是一种空间近似的信赖域结构,这一信赖域结构使得算法可以在任何给定的参数设置下计算更高的准确度。
它的主要思想是利用锥模型的结构,将牛顿拟合变换转换为在一定范围内的空间优化问题。
从而在一定程度上简化了机器学习问题。
锥模型的拟牛顿型信赖域方法的工作原理可以被分为三个步骤:第一步是建立信赖域。
为了构建这种信赖域,首先要将给定的模型用平方拟合函数近似表示,然后可以根据拟合函数的形式得到一个明确形式的信赖域,该信赖域表示数据集和输出之间的相关性。
第二步是在信赖域中定义特征函数。
特征函数的定义是基于信赖域的,其标准形式如下:f(x)=1-aD(x),其中D(x)表示样本和拟合模型之间的差距,a是可调节参数。
第三步是计算锥模型下的牛顿一步优化法。
在这一步中,采用牛顿一步优化法,根据给定的特征函数计算模型的活动变量w,从而最小化模型的损失函数。
这样的计算过程将拟合变换转换为在一定范围内的空间优化问题。
锥模型的拟牛顿型信赖域方法能够很好地改善机器学习的性能,主要原因在于它可以有效减少机器学习过程中的计算量,从而使机器学习变得更加高效。
而且,它采用的信赖域结构还可以有效地提高机器学习模型处理大规模问题的能力,从而使机器学习更加稳定可靠。
此外,锥模型的拟牛顿型信赖域方法还具有一定的灵活性,因此可以根据实际应用场景调整信赖域结构,从而实现相应的性能。
1无约束优化的信赖域方法宫鲁津摘要无约束优化问题是实际工程中最常见的问题之一。
这类问题虽然形式比较简单,但是对于某些大规模的或者非线性很强的问题,求解它们仍然是有相当难度的。
信赖域方法是求解无约束优化问题的一类非常有效的方法,它具有很好的收敛性质,同时也有良好的数值表现。
为了使信赖域方法能够很好的求解大规模的问题,并且提高其实际计算的性能,我们需要对传统的信赖域方法进行一些改进,使得新的算法既可以继承信赖域算法的良好的收敛性质,又能够具有内存占用量较小,或者效率较高的性质。
本文给出若干改进的信赖域方法。
我们首先提出了一个求解无约束优化问题的有限内存的信赖域方法,将有限内存的思想,和信赖域算法的框架结合起来。
使用有限内存的BFGS公式来得到近似Hessian矩阵,同时重新定义信赖域的范数,从而使得信赖域子问题不需要求解,具有显式的解的表达式。
在存储上,只需要存储最近几步的梯度差和所走的步子,而不需要显式的存储整个近似Hessian矩阵,因而大大的节省了存储空间。
我们证明了算法的收敛性。
数值实验表明,该算法明显优于传统的信赖域算法。
我们还提出了一个求解无约束优化问题的子空间的信赖域方法。
我们构造了一个新的子空间,这个子空间的维数的上界是可以任意设定的。
子空间的方向包括两个部分,一部分是长期存在于子空间中的老的方向,这些方向上积累了大量的信息,对目标函数的近似会比较准确;另一部分是每次迭代都会更新的方向,使得算法可以在新的方向上进行试探。
我们还采用了重开始的技巧,及时的将没有贡献的老的方向删除掉。
数值实验表明,算法无论是在迭代步数还是CPU时间上,都比现有的方法要好。
为了提高算法的效率,我们提出了一个非单调的牛顿-信赖域方法。
由于传统的信赖域方法有时可能过于保守,因而,我们将非单调的技巧以及无约束的牛顿方法,与信赖域框架相结合,使得算法既有信赖域算法的良好的收敛性质,同时又比传统的信赖域方法效率高。
对于不同的模型,采用不同的接收准则。
一类新的自适应信赖域算法摘要:对无约束优化问题提出一种类似带记忆的自适应信赖域算法,迭代过程中利用前面得到的迭代点的导数的信息自动产生一个信赖域半径。
在一定的条件下,证明了算法的收敛性,并通过数值实验验证了算法的有效性。
关键词:无约束优化;自适应信赖域算法;全局收敛性1引言考虑无约束优化问题:minf(x),其中f:R→Rn是二次连续可微函数。
传统的信赖域[1]是一种迭代的方法,每次迭代要求计算如下信赖域子问题:(1)其中gk=△f(xk),Bk是近似于Hessian阵△2f(xk) 的对称矩阵,△k是信赖域半径。
传统的信赖域算法都是根据实际下降量与预测下降量的比值比值来控制信赖域半径的变化[1],这样可能会增加算法的计算量。
基于此,许多自适应信赖域算法[1-6]被提出。
其中Sartenaer[2],张[3-4]都提出依赖于目标函数的一阶梯度及二阶Hessian矩阵(或其近似矩阵)的无记忆型信赖域半径选取机制。
这类无记忆信赖域迭代由于缺乏更全局的信息,可能会使收敛过程过早地陷入局部极小点。
本文基于这类记忆性的信赖域方法,提出一种全新的半径构造机制,提出了一种无约束问题的自适应信赖域算法。
2非单调自适应信赖域算法具体算法如下:算法2.1(非单调自适应信赖域算法)步1给定步2若||gk||≤ε则终止算法。
步3令计算信赖半径△k=λkθk||gk|| 求解子问题(1.2)得到试探步dk,计算。
步4若rk≥η,则xk+1=xk+dk;否则i=i+1转步2。
步5修正Bk,i=0,k:=k+1,转步2。
3算法的收敛性分析假设3.1(H1):对任意的k,存在有节有界闭集Ω使得xk、xk+1∈Ω。
(H2):对使得: 成立,且也成立。
引理3.2[1]引理3.3[1]引理3.3[5] 算法是适定的,即算法2.1中步2与步4间的循环是有限的。
定理3.4 若假设3.1成立且ε=0则算法有限终止于某个||gk||=0 或产生无穷点列使得:证明若结论不成立,即,则对任意k,存在ε0>0使得||gk||≥ε0。
求解一类变分不等式问题的内点信赖域方
法
内点信赖域方法是一种求解一类变分不等式问题的方法。
它利用内点信赖域来求解最优化问题,从而解决变分不等式问题。
内点信赖域方法的思路很简单,就是对于一个满足约束条件的变分不等式,从内点信赖域中选取一组解,将其带入变分不等式中,通过求解变分不等式的最优解,最终得到近似最优解。
内点信赖域方法的主要思想是通过构造一个满足约束条件的内点信赖域,在此域内迭代求解变分不等式问题,以寻找最优解。
其中,内点信赖域是一个数学概念,指的是满足约束条件的内部点的集合,这些内部点的位置是可以通过多种方式确定的。
内点信赖域方法的优点是可以快速求解变分不等式问题的最优解,缺点是由于内点信赖域的构造方式非常复杂,容易出现误差,从而影响最终的结果。
因此,在使用内点信赖域方法求解变分不等式问题时,需要结合其他方法,如梯度下降法等,以避免误差的产生。
总之,内点信赖域方法是一种有效求解变分不等式问题的方法,其优点是可以快速求解变分不等式问题的最优解,缺点是由于内点信赖域的构造方式非常复杂,容易出现误差,因此,
在使用内点信赖域方法求解变分不等式问题时,需要结合其他方法,以避免求解结果的偏差。
一种求解二次模型信赖域子问题的adams方法在优化算法中,信赖域算法是一种常见的数学模型求解方法。
信赖域子问题是信赖域算法中最重要的问题之一,而其求解方法的好坏直接影响到整个算法的收敛性和效率。
本文将阐述一种求解二次模型信赖域子问题的adams方法,具体步骤如下:1. 定义信赖域子问题信赖域子问题是指在给定信赖域半径限制下,求解模型函数在最优点处的步长和方向的问题。
通常采用二次模型来逼近目标函数,因此信赖域子问题可表示为:min q(m) = fm + ∇fmT s + 12 sT B s (s.t. ∥s∥ ≤ Δk)其中,fm是在当前点附近的一次逼近函数,s为搜索方向,B为一个正定的Hessian矩阵近似,∥s∥ ≤ Δk为信赖域半径限制。
通过求解该问题,可以得到最优的步长和方向,从而优化整个信赖域算法的迭代过程。
2. adams方法的优化思想adams方法是基于Krylov子空间的算法,通过构造一组k次的Krylov 向量,在其中选择一些向量组成搜索方向,然后求解信赖域子问题。
与传统的CG等算法相比,adams方法具有以下优势:- 可避免Hessian矩阵的显式计算,从而提高算法的效率;- 相比CG方法更加稳定,避免了CG可能存在的震荡问题。
具体来说,adams方法通过选择Krylov子空间中的向量进行方向搜索,从而避免了显式计算Hessian矩阵。
同时,其通过多步迭代的方式求解信赖域子问题,具有更好的数值稳定性。
3. 求解信赖域子问题的具体步骤(1)初始化:选择初始向量v0为负梯度方向,并设定初始步长sk=1。
同时,设置信赖域半径Δ0和迭代次数上限m,以及收敛精度tol。
(2)生成Krylov子空间:构造第k次的Krylov子空间为:Vk = span{v0, Av0, A2v0 ,... , Ak−1v0}其中,A为目标函数的Hessian矩阵或其近似矩阵。
(3)标准化向量:将Vk中的所有向量标准化,得到q1, q2, ..., qk,即qk是Vk中第k个单位向量。
解线性约束优化问题的新锥模型信赖域法正在研究线性约束优化问题,yaeger等研究人员提出了基于“新锥模型信赖域法”的解决方案。
这种方法有助于确定给定线性约束优化问题的最优解,并且具有简单的属性:可以通过一组简单的步骤求解线性约束优化问题。
本文旨在介绍该方法的基本原理以及其用于线性约束优化问题的实验结果。
首先,本文将重点介绍新锥模型信赖域法的基本原理,该方法可将给定的线性约束优化问题转化为求解一个带有信赖域的非线性规划问题,并且可以确保求解出的结果为最优解。
其次,本文介绍新锥模型信赖域法的实现细节,给出了从线性约束优化问题到非线性规划问题的转换,以及在求解出最优解时如何保证信赖域的完整性等具体细节。
最后,本文对新锥模型信赖域法进行了实验,通过实验证明该方法可以有效地求解多维线性约束优化问题。
新锥模型信赖域法是一种有效而有效的解决多维线性约束优化问题的新方法。
该方法可以有效地将多维线性约束优化问题转换为求解带有信赖域的非线性规划问题,并且可以保证求解出的结果一定是最优解。
该方法在求解多维线性约束优化问题时,可以通过一系列简单的步骤解决问题,比起传统的线性约束优化方法来说,新锥模型信赖域法有更简单高效的特点,可以有效求解多维线性约束优化问题。
新锥模型信赖域法对于线性约束优化问题的研究具有重要的意义,可以帮助研究者更加有效地求解多维线性约束优化问题,并有助于更好地利用线性约束优化在工程实践和研究中的应用。
为了进一步完善新锥模型信赖域法,还需要对该方法的实施细节和实验结果进行进一步的研究,为进一步发展线性约束优化准备更充分和有效的基础。
综上,本文介绍了新锥模型信赖域法,并且给出了该方法在求解线性约束优化问题方面的实验结果。
通过对新锥模型信赖域法的深入研究,可以更好地理解和有效利用线性约束优化在实践和研究中的应用。
信赖域算法参数解释
信赖域算法是一种求解非线性优化问题的数值方法。
以下是信赖域算法的参数解释:
初始点:算法开始时选择的初始解,用于启动迭代过程。
信赖域半径:在每次迭代中,给定一个信赖域,这个信赖域一般是当前迭代点的小邻域。
信赖域半径的大小根据试探步的好坏进行调整,粗略地说,如果试探步较好,在下一步信赖域扩大或者保持不变,否则减小信赖域。
目标函数:在优化问题中需要最小化或最大化的函数。
在信赖域算法中,目标函数被用于评估迭代步骤的效果。
梯度:目标函数在当前迭代点的梯度,用于确定搜索方向和步长。
子问题:在信赖域内求解的近似二次函数极小化子问题。
通过求解子问题,可以找到一个可能使目标函数下降的解。
下降量与近似问题的下降量:通过比较真实下降量和近似问题的下降量,可以评估近似解的质量。
接受准则:根据下降量和近似解的质量等因素,确定是否接受当前试探步,以及如何调整信赖域半径。
通过这些参数和调整策略,信赖域算法在非线性优化问题中寻找一个合适的近似最优解。
请注意,以上解释是基于一般的理解和常见的术语,具体的参数和解释可能会根据具体问题和算法实现有所不同。
一种求解二次模型信赖域子问题的新算法一种求解二次模型信赖域子问题的新算法在机器学习中,二次模型信赖域(QMDR)子问题是一个重要而又复杂的问题。
它是用来找出最佳的特征子集来进行模型拟合的选择问题。
一般情况下,当特征数大于100时,QMDR子问题会变得非常困难。
由于目前常用的搜索算法(如遗传算法、模拟退火、蚁群优化等)都不能有效地解决QMDR子问题,因此对其的研究一直受到人们的广泛关注。
本文提出了一种用于解决QMDR子问题的新算法,被称为“基于可能性理论的二次模型信赖域子问题求解算法(PCT-QMDR)”。
该算法将QMDR子问题转换为可能性理论框架下的一个最大化问题,然后利用单纯形理论和极大值原理来解决这一问题。
这种算法具有两个显著的优势:1)它不需要搜索特征,使得其在特征数大于100时仍能有效地工作;2)它提供了一种直接的方法来解决QMDR子问题,而不需要迭代搜索。
首先,本文将QMDR子问题转换为一个最大化问题。
设X = {X_1, X_2, … , X_n}是一组特征,Y是输出标签。
那么,QMDR子问题可以表示为:最大化f(x) = 1 - sum((y - y_hat)^2 / sum(y^2))s.t. x ∈ X其中,y_hat是基于X的预测值,sum((y - y_hat)^2 / sum(y^2))表示残差和占总误差的比例。
接着,本文利用可能性理论将上述问题转换为一个最小化问题:最小化g(x) = -f(x) = sum((y - y_hat)^2 /sum(y^2))s.t. x ∈ X此外,本文还利用单纯形理论和极大值原理将上述最小化问题转换为可解决的模式:最小化h(x) = sum(c_i * x_i)s.t. a_ij * x_j ≤ b_i其中,c_i表示第i个变量的系数,a_ij表示第i个约束条件中的第j个变量的系数,b_i表示第i个约束条件的右端值。
本文最后利用一种分支定界方法来求解h(x),其中包括一个深度优先搜索(DFS)算法和一个基于动态规划的剪枝策略。
信赖域算法参数解释-回复信赖域算法是一种优化算法,用于求解非线性约束优化问题。
在解决优化问题时,我们经常面临着需要满足一定约束条件的情况。
信赖域算法通过将问题分解为一系列子问题,并在每个子问题中寻找优化方向和步长,从而逐步逼近最优解。
在进行信赖域算法求解时,需要注意以下几个参数的设定和解释:1. 信赖域半径(trust region radius):信赖域是定义在解空间中的一个区域,用来限制每次迭代步长的大小。
信赖域半径通常由用户预设一个初始值,然后在每次迭代中进行调整。
如果当前解点附近的模型(通常是二次模型)对问题的描述较好,可以增加信赖域半径以扩大搜索范围。
相反,如果模型不准确,可以减小信赖域半径以限制搜索范围。
2. 模型质量(model quality):信赖域算法在每次迭代中都会构造一个模型,通常是一个二次模型,用来近似原始问题。
模型质量衡量了模型对实际问题的拟合程度,即模型与原始问题解的一致性。
模型质量越好,信赖域算法迭代的效果越好。
在实际应用中,模型质量可以通过拟合误差来衡量,即模型的输出与实际观测数据之间的差异。
3. 子问题模型解(subproblem model solution):在每次迭代中,信赖域算法需要解决一个子问题,以确定下一次迭代的搜索方向和步长。
子问题通常是通过在当前信赖域内构建一个二次模型来求解的。
通过求解子问题,可以得到相对于当前解点的最优搜索方向,并确定合适的步长大小。
对于二次模型,子问题可以通过求解一个线性方程组来得到解析解。
4. 模型剪切比(model cut-off ratio):信赖域算法通常在每个迭代中通过比较模型预测值与实际值之间的差异来评估模型质量。
模型剪切比是一个常数,用来控制模型预测值与实际值之间的相对差异。
如果差异小于模型剪切比,则模型质量被认为足够好,可以接受当前解作为下一次迭代的起点;反之,如果差异大于模型剪切比,则当前解点被认为不适合作为下一次迭代的起点。
信赖域反射最小二乘(trust-region-
reflective)算法
信赖域反射最小二乘(trust-region-reflective)算法是一种用于非线性最小二乘问题的算法。
它结合了信赖域方法和反射算法的优点,在处理高维、非线性问题时表现良好。
在信赖域反射最小二乘算法中,首先定义一个信赖域,以保证每次迭代能够取得一定程度的进展,然后利用反射算法来寻找最优解。
具体步骤如下:
1. 初始化模型参数和信赖域半径。
2. 计算当前模型参数处的目标函数和梯度。
3. 在信赖域内,用反射算法求解新的模型参数,并计算新的目标函数值和梯度。
4. 比较旧的和新的目标函数值,以决定是否接受新的模型参数。
5. 如果接受了新参数,则更新信赖域半径。
6. 重复步骤2-5,直到收敛或者达到最大迭代次数。
信赖域反射最小二乘算法可以解决非线性最小二乘问题,包括非线性数据拟合、优化等问题。
它具有较高的收敛速度和稳定性,尤其适用于高维问题。
信赖域算法python代码信赖域算法是一种优化算法,常用于求解非线性优化问题。
以下是一个简单的信赖域算法的Python实现,使用了numpy库:```pythonimport numpy as npdef line_search(model, d, initial_guess=1.0, min_ls_步长=1e-6, max_ls_步长=1e-3):"""线搜索函数"""alpha = initial_guessls_步长= 0.5 * (2 - np.sqrt(4 - 2 * alpha))while True:f = model(alpha)g = model(alpha + ls_步长)if np.dot(g - f, ls_步长* d) > 0:breakif abs(ls_步长) < min_ls_步长:return ls_步长ls_步长/= 2return ls_步长def trust_region(model, grad, hessian, initial_radius=1.0, max_radius=100,min_radius=1e-6):"""信赖域算法函数"""x = np.zeros(len(model))radius = initial_radiuswhile True:s = -gradd = np.dot(hessian, s) - np.linalg.norm(s)**2 / radius**2if d >= 0:breakalpha = line_search(model, s)x += alpha * sg = grad + hessian * alpha * sH = hessian + np.outer(s, s) / radius**2 - np.outer(g, g) /np.linalg.norm(g)**2f = model(x)g = model(x + H * g) - f - np.dot(H, g)radius /= 2if abs(g) < min_radius:breakreturn x, radius```上述代码中的`model`是一个返回函数值的函数,`grad`是一个返回函数梯度的函数,`hessian`是一个返回函数Hessian矩阵的函数。
信赖域法示例浅析
摘要:本文介绍了非单调信赖域算法的基本知识,包括非单调信赖域算法的理论、算法框图及数值运算实例,数值结果表明该算法在求解高维非线性规划问题时比一般算法更有效。
关键词:信赖域法信赖半径Hesse阵Bk
引言
信赖域方法是求解非线性规划问题的常用方法之一,因其具有良好的可靠性和强健的收敛性备受非线性优化领域专家们的关注[1],信赖域方法与线搜索技术一样,也是优化算法中的一种保证全局收敛的重要技术。
它们的功能都是在优化算法中求出每次迭代的位移,从而确定新的迭代点。
漂亮的收敛性和有效的计算性确定了信赖域算法是一类重要和实用的方法[2]。
因此研究约束优化问题的信赖域算法具有重要的意义。
1、算法的基本理论
与线搜索技术相比不同的是:线搜索技术是先产生位移方向(亦称为搜索方向),然后确定位移的长度(亦称为搜索步长)。
而信赖域技术则是直接确定位移,产生新的迭代点。
信赖域方法的基本思想是:首先给定一个所谓的“信赖域半径”作为位移长度的上界,并以当前迭代点为中心以此“上界”为半径确定一个称之为“信赖域”的闭球区域。
然后,通过求解这个区域内的“信赖域子问题”(目标函数的二次近似模型)的最优点来确定“候选位移”。
若候选位移能使目标函数值有充分的下降量,则接受该候选位移作为新的位移,并保持或扩大信赖域半径,继续新的迭代。
否则,说明二次模型与目标函数的近似度不够理想,需要缩小信赖域半径,再通过求解新的信赖域内的子问题得到新的候选位移。
如此重复下去,直到满足迭代终止条件。
2、信赖域方法解决无约束线性规划的基本算法结构
设■是第■次迭代点,记是Hesse阵■的第■次近似,则第■次迭代步的信赖域子问题具有如下形式:
其中■是信赖域半径,■是任一种向量范数,通常取2-范数或∞-范数。
定义■为■在第■步的实际下降量:
定义■对应的预测下降量:
定义他们的比值为:。
一般的,我们有■。
因此,若■,则■,■不能作为下一个迭代点,需要缩小信赖半径重新求解问题。
若■比较接近于1,说明二次模型与目标函数在信赖与范围内有很好的相似,此时■可以作为新的迭代点,同时
下一次迭代时可以增大信赖半径,对于其他情况,信赖半径可以保持不变。
3、编程进行算法实现
例:用信赖域法求解,该问题的精确解为。
解:
(1)编译■
输入■
(2)编译■
输入■
(3)编译
输入
(4)运行主程序
输入■
■
(4)显示结果:
新算法不仅不需重解子问题,而且在每步迭代都满足拟牛顿方程同时保证目标函数的近似Hasse阵Bk的正定性。
在适当的条件下,证明了此算法的全局收敛性,数值结果表明该算法是具有全局有效性的。
参考文献:
[1]谢亚辉. 非线性规划的非单调信赖域算法.西安电子科技大学硕士论文集:2007(1).
[2]简金宝. 非线性不等式约束最优化快速收敛的可行信赖域算法.计算数学:2002(8).。