精华内容
下载资源
问答
  • 最优化中的牛顿法,二阶收敛性

    万次阅读 2016-11-17 02:05:35
    最近偶尔翻阅一本写的不错的最优化理论教材,该书讲得很详细,很透彻。我对非线性规划理论又有了全新的认识,发现牛顿法...适用对象:二阶可微函数 牛顿法的几何意义本质: 在原函数的某一点处用一个二次函数近似

    最近偶尔翻阅一本写的不错的最优化理论教材,该书讲得很详细,很透彻。我对非线性规划理论又有了全新的认识,发现牛顿法可以说是是无约束优化中最重要的方法,其他方法:LM方法,高斯牛顿,拟牛顿法,共轭梯度法可以说是对牛顿法的扩展。准备闲来无事时将牛顿法的原理以及求解过程用数例好好再过一遍。
     

    适用对象:二阶可微函数

     

    1. 牛顿法的几何意义本质

           在原函数的某一点处用一个二次函数近似原函数,然后用这个二次函数的极小值点作为原函数的下一个迭代点。

    上面这句话也说明,若原函数本身是一个二次函数,则牛顿法一步就能到达极小点或鞍点。若原函数本身是一个二次正定函数,则牛顿法一步到达最小值点。

     

    2. 牛顿法的代数意义

     

    梯度与黑塞矩阵分别由下列符号表示:

      

      

    设任意点为 Xk,下个一迭代点位 Xk+Sk, 该迭代点在 Xk 处的泰勒展开式为:

    用下个迭代点的值代替改点的值,即:

    因此:

    所以,迭代方向为:

    该方向又称作牛顿方向。

     

    3. 牛顿法的二阶收敛性

    若初始点 x0 充分靠近极值点 x*,并且极值点 x* 的黑塞矩阵非奇异,并且黑塞矩阵在极值点附近 Lipschitz 连续,则牛顿法具有二阶收敛性。

    注:Lipschitz 连续是一种比普通连续性更强的连续,它限制了函数的改变速度。对于函数可行域的任意两点,存在一个常数 K,使得:

    证明:

    由黑塞矩阵的非奇异性与连续性知道,在 x*附近,存在一个常数 M,对于任意的 k,使得

    而:

    上式右端成立,是因为 g(x*)=0。继续:

    上式是因为:

    继续,再利用到 Lipstchitz 连续,得到:

    因此,牛顿迭代法二阶收敛。

    展开全文
  • 本文的目的是使用MATLAB进行数值实验,以支持和验证Wang用L2投影方法求解二阶椭圆问题的有限元方法(CFEM)的超收敛性。 MATLAB代码已发布在https://github.com/annaleeharris/Superconvergence-CFEM,供任何人使用...
  • 在本文中,标准同伦分析方法应用于线性和非线性情况下具有某些不连续二阶初值问题。 为了显示求解结果与精确求解相比的高精度,使用标准同伦分析方法对积分方程进行迭代,对数值结果进行了辛普森规则求解,对...
  • 求解NSOCP的增广拉格朗日方法的局部收敛性分析,张思雨,刘陶文,本文研究求解非线性二阶锥规划问题(NSOCP)的增广拉格朗日函数方法, 证明了该方法在约束非退化条件和强二阶充分条件下具有局部收敛性
  • 为了提高传统二阶终端滑模控制的全局收敛性,提出一种快速二阶终端滑模控制算法.设计一种二阶趋近律,将绝对值函数隐藏在积分项里,并增加线性项以提高全局收敛性.当系统状态未到达滑模面时,采用二阶趋近律,并通过调整...
  • 基于非光滑的类二次型Lyapunov 函数, 对二阶滑模Super-twisting 算法的有限时间收敛性进行了分析. 当系 统受常值干扰时, 通过Lyapunov 方程证明了该算法有限时间收敛, 并给出了收敛时间的最优估计; 当系统受...
  • 因为它利用了目标函数的曲率信息, 相比一阶优化方法而言, 能显示出更好的 鲁棒, 且收敛速度更快. 然而二阶优化算法在每次迭代时需要求解黑塞矩阵和 对应的逆, 一旦遇到高维情况, 这是很大的计算开销甚至无法完成...
  • 针对一类线性广义系统,研究其P型迭代学习控制在离散频域中的收敛性态。在离散频域中,对广义系统进行奇异值分解后,利用傅里叶级数系数的性质和离散的Parseval能量等式,推演了一阶P型迭代学习控制律跟踪误差的离散...
  • 利用Volterra滤波器二阶权系数矩阵的对称和对称矩阵可对角化分解性质,推导得到了一阶权系数与二阶权系数个数相同的信号矢量与权系数矢量内积的二阶Volterra滤波器输出信号表达式;提出了基于DCT的二阶Volterra...
  • 第一种控制器能够稳定地控制滚转角收敛至期望值,而第二种控制器不仅能够有效降低气动参数不确定对弹体滚转控制造成的影响,而且能控制滚转角速度在有限时间内收敛至期望值,并有效抑制滑模算法固有的抖振现象....
  • 优化算法——拟牛顿法之DFP算法

    万次阅读 2015-05-19 22:11:04
    Method)”中介绍了牛顿法的思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。在牛顿法中使用到了函数的二阶导数的信息,对于函数,其中表示向量。在牛顿法的求解过程中,首先是将函数在处展开,展开...

    一、牛顿法

        在博文“优化算法——牛顿法(Newton Method)”中介绍了牛顿法的思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。在牛顿法中使用到了函数的二阶导数的信息,对于函数,其中表示向量。在牛顿法的求解过程中,首先是将函数处展开,展开式为:



    其中,,表示的是目标函数在的梯度,是一个向量。,表示的是目标函数在处的Hesse矩阵。省略掉最后面的高阶无穷小项,即为:



    上式两边对求导,即为:



        在基本牛顿法中,取得最值的点处的导数值为,即上式左侧为。则:



    求出其中的

    从上式中发现,在牛顿法中要求Hesse矩阵是可逆的。  
        当时,上式为:



    此时,是否可以通过模拟出Hesse矩阵的构造过程?此方法便称为拟牛顿法(QuasiNewton),上式称为拟牛顿方程。在拟牛顿法中,主要包括DFP拟牛顿法,BFGS拟牛顿法。

    二、DFP拟牛顿法

    1、DFP拟牛顿法简介

            DFP拟牛顿法也称为DFP校正方法,DFP校正方法是第一个拟牛顿法,是有Davidon最早提出,后经FletcherPowell解释和改进,在命名时以三个人名字的首字母命名。
    对于拟牛顿方程:



    化简可得:



    ,可以得到:



    DFP校正方法中,假设:



    2、DFP校正方法的推导

        令:,其中均为的向量。
        则对于拟牛顿方程可以简化为:



    代入上式:



    代入上式:





    已知:为实数,的向量。上式中,参数解的可能性有很多,我们取特殊的情况,假设。则:



    代入上式:





    ,则:






    则最终的DFP校正公式为:



    3、DFP拟牛顿法的算法流程

        设对称正定,由上述的DFP校正公式确定,那么对称正定的充要条件是
        在博文优化算法——牛顿法(Newton Method)”中介绍了非精确的线搜索准则:Armijo搜索准则,搜索准则的目的是为了帮助我们确定学习率,还有其他的一些准则,如Wolfe准则以及精确线搜索等。在利用Armijo搜索准则时并不是都满足上述的充要条件,此时可以对DFP校正公式做些许改变:



           DFP拟牛顿法的算法流程如下:

    4、求解具体的优化问题

        求解无约束优化问题



    其中,

    python程序实现:
    1. function.py
      #coding:UTF-8
      '''
      Created on 2015年5月19日
      
      @author: zhaozhiyong
      '''
      
      from numpy import *
      
      #fun
      def fun(x):
          return 100 * (x[0,0] ** 2 - x[1,0]) ** 2 + (x[0,0] - 1) ** 2
      
      #gfun
      def gfun(x):
          result = zeros((2, 1))
          result[0, 0] = 400 * x[0,0] * (x[0,0] ** 2 - x[1,0]) + 2 * (x[0,0] - 1)
          result[1, 0] = -200 * (x[0,0] ** 2 - x[1,0])
          return result
      

    2. dfp.py
      #coding:UTF-8
      '''
      Created on 2015年5月19日
      
      @author: zhaozhiyong
      '''
      
      from numpy import *
      from function import *
      
      def dfp(fun, gfun, x0):
          result = []
          maxk = 500
          rho = 0.55
          sigma = 0.4
          m = shape(x0)[0]
          Hk = eye(m)
          k = 0
          while (k < maxk):
              gk = mat(gfun(x0))#计算梯度
              dk = -mat(Hk)*gk
              m = 0
              mk = 0
              while (m < 20):
                  newf = fun(x0 + rho ** m * dk)
                  oldf = fun(x0)
                  if (newf < oldf + sigma * (rho ** m) * (gk.T * dk)[0,0]):
                      mk = m
                      break
                  m = m + 1
              
              #DFP校正
              x = x0 + rho ** mk * dk
              sk = x - x0
              yk = gfun(x) - gk
              if (sk.T * yk > 0):
                  Hk = Hk - (Hk * yk * yk.T * Hk) / (yk.T * Hk * yk) + (sk * sk.T) / (sk.T * yk)
              
              k = k + 1
              x0 = x
              result.append(fun(x0))
          
          return result
      

    3. testDFP.py
      #coding:UTF-8
      '''
      Created on 2015年5月19日
      
      @author: zhaozhiyong
      '''
      
      from bfgs import *
      from dfp import dfp
      
      import matplotlib.pyplot as plt  
      
      x0 = mat([[-1.2], [1]])
      result = dfp(fun, gfun, x0)
      
      n = len(result)
      ax = plt.figure().add_subplot(111)
      x = arange(0, n, 1)
      y = result
      ax.plot(x,y)
      
      plt.show()
      

    5、实验结果







    展开全文
  • 第7章-二阶时滞多智能体系统分组一致7.1 引言7.2 预备知识7.3 问题描述与分析7.4 例子与数值仿真7.5 本章小结 7.1 引言 分组一致主要考虑两个关键因素: 分组一致的具体收敛状态 分组收敛的速度 一般采用...
    第6章 回到目录 第8章

    7.1 引言

    分组一致性主要考虑两个关键因素:

    • 分组一致性的具体收敛状态
    • 分组收敛的速度

    一般采用牛顿第二定律进行描述

    牛顿第二定律又称为“加速度定律”。
    牛顿第二定律被誉为经典力学的灵魂。在经典力学里,它能够主导千变万化的物体运动与精彩有序的物理现象。牛顿第二定律的用途极为广泛,它可以用来设计平稳地耸立于云端的台北101摩天大厦,也可以用来计算从地球发射火箭登陆月球的运动轨道。
    牛顿第二定律是一个涉及到物体运动的理论,根据这定律,任意物体的运动所出现的改变,都是源自于外力的施加于这物体。这理论导致了经典力学的诞生,是科学史的一个里程碑,先前只是描述自然现象的理论不再被采纳,取而代之的是这个创立了一种理性的因果关系架构的新理论。
    牛顿第二定律

    相比于一阶时滞网络,二阶系统一致性需要考虑两个物理量,即速度位置

    牵制算法

    LaSalle 不变集原理

    Lyapunov 稳定性理论

    牵制控制方法

    牵制控制的基本思想是: 通过有选择地对网络中的少部分节点施加控制而使得整个网络具有期望的行为。比起对所有节点进行控制的方式,由于较小的资源花费,对网络的小部分节点应用局部反馈控制的牵制控制是更有吸引力和令人期待的。

    Lyapunov 第一定理

    Hopf 分叉理论

    当考虑系统动态环节后, 系统将可能遇到 Hopf 分岔 (Hopf bifurcation, HB) 现象, 相应的失稳为振荡型失稳。
    微分方程理论在自动控制、航天技术、生态生物等方面一直有着广泛的应用,在这些实际应用中,系统通常都是一些含有参数的微分方程组。考虑如下形式的系统:
    dX/dt=f(X,λ,μ)(1)dX/dt=f(X, λ,μ) \tag{1}
    系统(1)的解显然随参数μ的变化而变化。如果 λλλλ 等于一个确定值的一个小邻域内变化时,系统(1)在相空间的相图拓扑结构发生了变化,那么就称系统发生了分岔,称 λλ 为分岔参数,λλ 的确定值为分岔值。
    而今在应用数学中,Hopf 分岔理论已经成为研究微分方程小振幅周期解产生和消亡的经典工具。因此,对 Hopf 分岔的研究是十分有意义的。

    7.2 预备知识

    包含 n+mn+m 个智能体的二阶连续系统如下:
    x˙i(t)=vi(t)v˙(t)=ui(t),i=1,2,,m+n(7.1)\dot{x}_i(t) = v_i(t)\\ \dot{v}(t) = u_i(t),\quad i=1,2,\cdots,m+n \tag{7.1}

    7.3 问题描述与分析

    不同时滞影响下二阶系统的一致性协议:
    ui(t)=αvjNiaij(xj(tTij)xi(tT))+βvjNiaij(vj(tTij)vi(tT)),i=1,2,,N(7.2)\begin{aligned} u_i(t) = &\red{\alpha}\sum_{v_j\in N_i} a_{ij} (\red{x}_j(t-T_{ij}) - \red{x}_i(t-T)) + \\ &\red{\beta}\sum_{v_j\in N_i} a_{ij} (\red{v}_j(t-T_{ij}) - \red{v}_i(t-T)),\quad i=1,2,\cdots,N \tag{7.2} \end{aligned}

    α,β\alpha,\beta 分别为该系统的耦合强度。

    耦合强度

    定理7.1

    考虑包含 n+m(n,m>1)n+m(n,m>1) 个智能体的多智能体系统(7.4),基于入度平衡的假设条件(A1)和(A2),当网络拓扑结构中包含全局可达节点时,若满足 d~i(αcos(ωi0Ti)+βωi0sin(ωi0Ti))<12ωi02\tilde{d}_i(\alpha \cos(\omega_{i0} T_i) + \beta \omega_{i0} \sin(\omega_{i0} T_i)) < \frac{1}{2} \omega_{i0}^2 成立,则称系统能渐进实现分组一致。其中 d~i=k=1,kim+naik\tilde{d}_i = \sum_{k=1,k\ne i}^{m+n} a_{ik}ωi0\omega_{i0} 表示圆盘中心 Gi0(jω)=d~iejωTijωα+βjωjωG_{i0}(j\omega)=\tilde{d}_i \frac{e^{-j\omega T_i}}{j\omega} \frac{\alpha+\beta j \omega}{j\omega} 的奈奎斯特曲线与复平面实轴的交点,同时 tan(ωi0Ti)=βαωi0\tan(\omega_{i0} T_i) = \frac{\beta}{\alpha} \omega_{i0}

    7.4 例子与数值仿真

    在这里插入图片描述

    在这里插入图片描述

    以上工作,几经尝试,未出现一次收敛的情况。

    第二天,换一种新思路来进行

    在这里插入图片描述

    在这里插入图片描述

    当未进行任何更改时(即权重全都保持1,未添加任何时滞,并且为删除掉不同组的节点状态),直接出现了收敛状态。

    结果如下图所示
    在这里插入图片描述

    在这里插入图片描述

    在此基础上更改权重后,
    状态信息如下:
    在这里插入图片描述
    速度信息如下:
    在这里插入图片描述

    更改权重之后,再将不同组节点的状态值删除掉
    在这里插入图片描述

    在这里插入图片描述

    更改 aij 为入度

    对比之前的发现一个有趣的现象,虽然状态同样还是发散,但是分组情况发生了变化。

    之前使用出度时,1 4 5 为一组,2 3 为一组;
    现在使用入度时,1 2 3 为一组,4 5 为一组。
    在这里插入图片描述

    在这里插入图片描述

    更改拓扑图后,结果正确
    在这里插入图片描述

    在这里插入图片描述

    在此基础更改入度为出度

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在此做个小总结。
    首先,系统的一致性研究主要分为以下几个主要因素:

    1. 系统拓扑关系图
    2. 权重的设定
    3. 控制协议
    4. 输入时滞的影响
    5. 通信时滞的影响

    在此基础上,搭建仿真模型,进行控制协议的验证。

    通过以上几组实验对比,可基本得出时由于系统拓扑关系图不满足一致性要求所引起的。

    书中所给的定理7.1,系统若想一致,需要满足以下三个条件:

    1. 基于入度平衡的假设条件(A1)和(A2);

    2. 当网络拓扑结构中包含全局可达节点时;

    3. 若满足 d~i(αcos(ωi0Ti)+βωi0sin(ωi0Ti))<12ωi02\tilde{d}_i(\alpha \cos(\omega_{i0} T_i) + \beta \omega_{i0} \sin(\omega_{i0} T_i)) < \frac{1}{2} \omega_{i0}^2 成立,则称系统能渐进实现分组一致。

    通过观察书中所给的系统拓扑关系图,均满足以上要求,并且未设置任何时滞,也一定满足条件(3)。

    既然已经满足上述三个条件,但是还是不能收敛。接下来的实验,先验证之前搭建的系统模型没有问题,之后再研究拓扑图为什么不能收敛的问题。

    之前的模型,将拓扑关系图更改之后,结果也都正常,包括节点分组情况也正确。
    位置信息如下:
    在这里插入图片描述
    速度状态如下:
    在这里插入图片描述

    保持时滞为零,其他条件与采用第6章实验2所用拓扑图条件一致的情况下,仅更改为第7章拓扑图,还是无法收敛。算是再次验证了拓扑图是错误的。
    在这里插入图片描述

    在这里插入图片描述

    7.5 本章小结

    18. Ren W, Beard R. Consensus seeking in multiagent systems under dynamically changing interaction topologies[J]. IEEE Transactions on Automatic Control, 2005, 50(5):655-661.

    展开全文
  • 学习因子二阶振荡使种群在粒子数目不变的情况下维持多样, 是提高全局搜索能力的主要方法. 自然选择原理使算法改善了因二阶振荡和随机权重的加入而造成收敛速度降低的情况. 测试实验表明, 所提出的算法能避免早熟...
  • 滑模超曲面和相应的控制策略,使输入输出子系统状态渐近收敛到平衡点,零动态子系统随后也渐近收 敛到平衡点。 所提出方法对于控制维数较高的系统具有较大的意义,可简化设计, 实现鲁棒分解控制。 由 于采用...
  • 本文将加权平均预测(WAP)引入到现有的共识协议中,以同时提高通信延迟的鲁棒和达成共识的收敛速度。 运用频域分析和代数图理论推导了必要的充分条件,以保证应用基于WAP的共识协议的二阶时滞多智能体系统达到...
  • 在考虑非线性干扰和跟随者速度不可测的情况下, 研究二阶有向网络的有限时间估计和鲁棒包容控制问题.提出包含有估计层、控制层和跟随者层的新型分布式控制结构. 应用有限时间稳定理论和等效输出注入的思想,设计幂次...
  • 本文将延迟状态导数反馈引入现有的延迟共识协议中,以提高针对通信延迟的鲁棒和同时达到共识的收敛速度。 利用频域分析和代数图理论推导了充分条件和必要条件,保证了采用具有时滞状态导数反馈的共识协议来渐近...
  • 结合复杂网络可控理论和二分图最大匹配算法给出满足网络可控的领导者和跟随者集合, 并为跟随者智能体设计相应的控制协议, 驱使跟随者能够渐近收敛到由多个领导者构成的静态凸包中, 从而实现网络的可控包含控制....
  • 讨论了一类带有一阶导数的二阶三点边值问题解的存在唯一,运用反序上下解方法和单调迭代的理论得到了此类问题解的存在唯一的充分条件,同时给出了解的迭代收敛格式,改进了文献中的相关结论。
  • 给出了易于实现的动量梯度学习算法, 并对其收敛性进行了验证. 仿真结果表明, 直接多步预 测不依赖于单步预测的结果, 对比单步预测模型能快速、准确地预测船舶横摇运动时间序列, 具有更好的预测精度 及较...
  • Method)”中介绍了牛顿法的思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。在牛顿法中使用到了函数的二阶导数的信息,对于函数,其中表示向量。在牛顿法的求解过程中,首先是将函数在处展

    转载地址:http://blog.csdn.net/google19890102/article/details/45848439

    一、牛顿法

        在博文“优化算法——牛顿法(Newton Method)”中介绍了牛顿法的思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。在牛顿法中使用到了函数的二阶导数的信息,对于函数,其中表示向量。在牛顿法的求解过程中,首先是将函数处展开,展开式为:



    其中,,表示的是目标函数在的梯度,是一个向量。,表示的是目标函数在处的Hesse矩阵。省略掉最后面的高阶无穷小项,即为:



    上式两边对求导,即为:



        在基本牛顿法中,取得最值的点处的导数值为,即上式左侧为。则:



    求出其中的

    从上式中发现,在牛顿法中要求Hesse矩阵是可逆的。  
        当时,上式为:



    此时,是否可以通过模拟出Hesse矩阵的构造过程?此方法便称为拟牛顿法(QuasiNewton),上式称为拟牛顿方程。在拟牛顿法中,主要包括DFP拟牛顿法,BFGS拟牛顿法。

    二、DFP拟牛顿法

    1、DFP拟牛顿法简介

            DFP拟牛顿法也称为DFP校正方法,DFP校正方法是第一个拟牛顿法,是有Davidon最早提出,后经FletcherPowell解释和改进,在命名时以三个人名字的首字母命名。
    对于拟牛顿方程:



    化简可得:



    ,可以得到:



    DFP校正方法中,假设:



    2、DFP校正方法的推导

        令:,其中均为的向量。
        则对于拟牛顿方程可以简化为:



    代入上式:



    代入上式:





    已知:为实数,的向量。上式中,参数解的可能性有很多,我们取特殊的情况,假设。则:



    代入上式:





    ,则:






    则最终的DFP校正公式为:



    3、DFP拟牛顿法的算法流程

        设对称正定,由上述的DFP校正公式确定,那么对称正定的充要条件是
        在博文优化算法——牛顿法(Newton Method)”中介绍了非精确的线搜索准则:Armijo搜索准则,搜索准则的目的是为了帮助我们确定学习率,还有其他的一些准则,如Wolfe准则以及精确线搜索等。在利用Armijo搜索准则时并不是都满足上述的充要条件,此时可以对DFP校正公式做些许改变:



           DFP拟牛顿法的算法流程如下:

    4、求解具体的优化问题

        求解无约束优化问题



    其中,

    python程序实现:
    1. function.py
      [python] view plain copy
       在CODE上查看代码片派生到我的代码片
      1. #coding:UTF-8  
      2. ''''' 
      3. Created on 2015年5月19日 
      4.  
      5. @author: zhaozhiyong 
      6. '''  
      7.   
      8. from numpy import *  
      9.   
      10. #fun  
      11. def fun(x):  
      12.     return 100 * (x[0,0] ** 2 - x[1,0]) ** 2 + (x[0,0] - 1) ** 2  
      13.   
      14. #gfun  
      15. def gfun(x):  
      16.     result = zeros((21))  
      17.     result[00] = 400 * x[0,0] * (x[0,0] ** 2 - x[1,0]) + 2 * (x[0,0] - 1)  
      18.     result[10] = -200 * (x[0,0] ** 2 - x[1,0])  
      19.     return result  

    2. dfp.py
      [python] view plain copy
       在CODE上查看代码片派生到我的代码片
      1. #coding:UTF-8  
      2. ''''' 
      3. Created on 2015年5月19日 
      4.  
      5. @author: zhaozhiyong 
      6. '''  
      7.   
      8. from numpy import *  
      9. from function import *  
      10.   
      11. def dfp(fun, gfun, x0):  
      12.     result = []  
      13.     maxk = 500  
      14.     rho = 0.55  
      15.     sigma = 0.4  
      16.     m = shape(x0)[0]  
      17.     Hk = eye(m)  
      18.     k = 0  
      19.     while (k < maxk):  
      20.         gk = mat(gfun(x0))#计算梯度  
      21.         dk = -mat(Hk)*gk  
      22.         m = 0  
      23.         mk = 0  
      24.         while (m < 20):  
      25.             newf = fun(x0 + rho ** m * dk)  
      26.             oldf = fun(x0)  
      27.             if (newf < oldf + sigma * (rho ** m) * (gk.T * dk)[0,0]):  
      28.                 mk = m  
      29.                 break  
      30.             m = m + 1  
      31.           
      32.         #DFP校正  
      33.         x = x0 + rho ** mk * dk  
      34.         sk = x - x0  
      35.         yk = gfun(x) - gk  
      36.         if (sk.T * yk > 0):  
      37.             Hk = Hk - (Hk * yk * yk.T * Hk) / (yk.T * Hk * yk) + (sk * sk.T) / (sk.T * yk)  
      38.           
      39.         k = k + 1  
      40.         x0 = x  
      41.         result.append(fun(x0))  
      42.       
      43.     return result  

    3. testDFP.py
      [python] view plain copy
       在CODE上查看代码片派生到我的代码片
      1. #coding:UTF-8  
      2. ''''' 
      3. Created on 2015年5月19日 
      4.  
      5. @author: zhaozhiyong 
      6. '''  
      7.   
      8. from bfgs import *  
      9. from dfp import dfp  
      10.   
      11. import matplotlib.pyplot as plt    
      12.   
      13. x0 = mat([[-1.2], [1]])  
      14. result = dfp(fun, gfun, x0)  
      15.   
      16. n = len(result)  
      17. ax = plt.figure().add_subplot(111)  
      18. x = arange(0, n, 1)  
      19. y = result  
      20. ax.plot(x,y)  
      21.   
      22. plt.show()  
    展开全文
  • 最优化 - 拟牛顿法DFP算法

    千次阅读 2017-06-20 13:30:53
    Method)”中介绍了牛顿法的思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。在牛顿法中使用到了函数的二阶导数的信息,对于函数,其中表示向量。在牛顿法的求解过程中,首先是将函数在处展开,展开...
  • 所提方法无需引入整数变量,使得所求解问题均为凸优化问题,能够保证ADMM算法的收敛性,并具有较快的求解速度。最后,通过算例仿真验证了所提方法的有效性和快速性,并分析了算例参数对所提方法性能的影响。
  • 该方法不需要PV节点转化为PQ节点的过程,也不需要将环路解列及复杂的节点编号,没有对Jacobian矩阵进行简化和近似,具有二阶收敛性。算例表明,所提方法计算速度快,能够处理所有常见的分布式电源,具有较强环路处理...
  • 研究一类二阶非线性系统的输出反馈控制问题.利用有限时间控制和有限时间收敛观测器技术,提出一种基于观测器的有限时间输出反馈控制器,可以保证系统的状态在有限时间内收敛到平衡状态.为了验证理论方法的实际效果,...
  • 【优化方法】拟牛顿法之DFP算法

    千次阅读 2019-05-21 17:47:45
    上一篇牛顿法(Newton Method)中介绍了牛顿法的基本思路,牛顿法具有二阶收敛性,相比较最速下降法,收敛的速度更快。 但是牛顿法也有一个缺点就是:求解Hessian矩阵复杂度比较大 1、下面是第k+1步的牛顿迭代: ...
  • 对于二阶系统, 单向收敛是指初始状态与状态到 达滑动模态的位置位于相平面同一象限的过程. 通过分析到达阶段的动态特性, 揭示了状态非单向收敛的原因, 并提 出了一种单向收敛条件, 给出了系统状态单向...
  • 用自收敛束宽法,对有硬边衍射超高斯光束束宽的传输及其参数作了研究,研究表明,当自收敛束宽因子满足一定条件时,超高斯光束的自收敛束宽与基于无截断二阶矩定义的束宽遵循相同的传输规律,因此,自收敛束宽法定义的光束...

空空如也

空空如也

1 2 3 4 5 6
收藏数 117
精华内容 46
热门标签
关键字:

二阶收敛性