未来的你已在我的身边,\textbf{未来的你已在我的身边,}
虽然经过了很多个弯;\textbf{虽然经过了很多个弯;}
现在的我已经没了号码牌,\textbf{现在的我已经没了号码牌,}
虽然已经相伴了很多年。\textbf{虽然已经相伴了很多年。}
遇见你,是我最美的意外。\textbf{遇见你,是我最美的意外。}
——畅宝宝的傻逼哥哥\quad\textbf{——畅宝宝的傻逼哥哥}

大部分算法计算效率是有很大差别的,高效或者快速的算法仅需要少量的迭代就能收敛到解,并且计算量也很小。从经济的角度来说,我们会选择选择最有效的算法,因此我们就需要度量算法收敛速率的定量指标或准则。

最基本的准则是序列的收敛阶,如果{xk}∞k=0\{x_k\}_{k=0}^{\infty}是实数序列,那么它的收敛阶就是最大的非负整数pp,满足关系

0≤β<∞

0\leq\beta

其中

β=limk→∞|xk+1−x̂ ||xk−x̂ |p(1)

\begin{equation} \beta=\lim_{k\to\infty}\frac{|x_{k+1}-\hat{x}|}{|x_k-\hat{x}|^p}\tag1 \end{equation}
x̂ \hat{x}是 k→∞k\to\infty的极限,参数 β\beta称为收敛比。

例1:\textbf{例1:}如果

  • xk=γk, for 0<γ<1x_k=\gamma^k,\ for\ 0
  • xk=γ2k, for 0<γ<1x_k=\gamma^{2^k},\ for\ 0

那么求出序列{xk}∞k=0\{x_k\}_{k=0}^{\infty}的收敛阶与收敛比。

解:\textbf{解:}(a)因为x̂ =0\hat{x}=0,所以

β=limk→∞γk(1−p)+1

\beta=\lim_{k\to\infty}\gamma^{k(1-p)+1}

对于p=0,1,2p=0,1,2,我们有β=0,γ,∞\beta=0,\gamma,\infty,所以p=1,β=γp=1,\beta=\gamma。
(b)

β=limk→∞γ2(k+1)γ2kp=limk→∞{γ2k(2−p)}

\beta=\lim_{k\to\infty}\frac{\gamma^{2^{(k+1)}}}{\gamma^{2^kp}}=\lim_{k\to\infty}\{\gamma^{2^k(2-p)}\}

对于p=0,1,2,3p=0,1,2,3,我们有β=0,0,1,∞\beta=0,0,1,\infty,所以p=2,β=1p=2,\beta=1。

如果等式(1)的极限存在,那么

limk→∞|xk−x̂ |=ε

\lim_{k\to\infty}|x_k-\hat{x}|=\varepsilon

其中ε<1\varepsilon,所以

limk→∞|xk+1−x̂ |=βεp

\lim_{k\to\infty}|x_{k+1}-\hat{x}|=\beta\varepsilon^p

所以pp增加或者β\beta减少的话,收敛速率在增加。如果ρ=0.8\rho=0.8,那么(a)(b)的序列分别为

{xk}∞k={1,0.8,0.64.0.512,0.409,…,0}

\{x_k\}_k^{\infty}=\{1,0.8,0.64.0.512,0.409,\ldots,0\}

{xk})∞k=0={1,0.64,0.409,0.167,0.023,…,0}

\{x_k\})_{k=0}^{\infty}=\{1,0.64,0.409,0.167,0.023,\ldots,0\}

第二个序列的收敛速率比第一个更快。

如果p=1,β<1p=1,\beta,那么我们称序列是线性收敛的;如果p=1,β=0p=1,\beta=0或者p≥2p\geq2,那么称序列是超线性收敛的。

大部分非线性规划算法都是线性收敛的,因此他们的比较都是基于β\beta值。

另一种度量序列收敛速率的是平均收敛阶数,也就是满足关系

ρ=limk→∞|xk−x̂ |1/(p+1)k=1

\rho=\lim_{k\to\infty}|x_k-\hat{x}|^{1/(p+1)^k}=1

的最小非负整数。如果不存在p>0p>0,那么收敛的阶数为无穷大。

例2:\textbf{例2:}找出序列{xk}∞k=0\{x_k\}_{k=0}^{\infty}的平均收敛阶数

  • xk=γk, for 0<γ<1x_k=\gamma^k,\ for\ 0
  • xk=γ2k, for 0<γ<1x_k=\gamma^{2^k},\ for\ 0

解:\textbf{解:}(a)因为x̂ =0\hat{x}=0,

ρ=limk→∞(ρk)1/(p+1)k=1

\rho=\lim_{k\to\infty}(\rho^k)^{1/(p+1)^k}=1

所以对于p=0,1,2p=0,1,2,我们有ρ=0,1,1\rho=0,1,1,因此p=1p=1。

(b)

ρ=limk→∞(ρ2k)1/(p+1)k=1

\rho=\lim_{k\to\infty}(\rho^{2^k})^{1/(p+1)^k}=1

所以对于p=0,1,2,3p=0,1,2,3,我们有ρ=0,ρ,1,1\rho=0,\rho,1,1,因此p=2p=2。

如果收敛的平均阶数是单位1,那么我们称序列是平均线性收敛,平均线性收敛定义为

ρ=limk→∞|xk−x̂ |1/k

\rho=\lim_{k\to\infty}|x_k-\hat{x}|^{1/k}

上面的讨论中,我们考虑的是数列的收敛性。随着越来越靠近解,这样的序列可能由目标函数的值构成,这时候我们度量目标函数靠近其最小值的速度。或者说,如果我们想知道问题靠近最优解有多快,可以用向量xk−x̂ \mathbf{x}_k-\mathbf{\hat{x}}的长度或长度的平方,即∥xk−x̂ ∥\lVert\mathbf{x}_k-\mathbf{\hat{x}}\rVert或者∥xk−x̂ ∥2\lVert\mathbf{x}_k-\mathbf{\hat{x}}\rVert^2。

上面收敛速率的度量中,重点都是在解邻域内考虑算法的有效性。通常而言优化的大部分计算都花在解的邻域内,所以上面的度量是很有意义的。然而偶尔会有些算法在解的邻域内有效而其他地方无效。这时候上面的判别准则会误导我们,所以需要改用其他的准则。

漫步最优化二十二——收敛速率相关推荐

  1. 漫步最优化四十二——Partan法

    漆黑的冷空中有你,\textbf{漆黑的冷空中有你,} 惺忪的眼睛中有你,\textbf{惺忪的眼睛中有你,} 心底的记忆中有你,\textbf{心底的记忆中有你,} 你留在我的脑海中,\textbf ...

  2. 漫步最优化三十二——最速下降法

    爱需要勇气,\textbf{爱需要勇气,} 但是也许是天意,\textbf{但是也许是天意,} 让我爱上你,\textbf{让我爱上你,} 也许轮回里早已注定,\textbf{也许轮回里早已注定,} ...

  3. 2021年大数据Hadoop(二十二):MapReduce的自定义分组

    全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 MapReduce的自定义分组 需求 分析 实现 第一步: ...

  4. 一位中科院自动化所博士毕业论文的致谢:二十二载风雨求学路,他把自己活成了光.........

    4月18日,中国科学院官方微博发布消息,披露了这篇论文为<人机交互式机器翻译方法研究与实现>,作者是2017年毕业于中国科学院大学的工学博士黄国平. 这篇论文中情感真挚的<致谢> ...

  5. iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2)

    iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2) 此时,当用户轻拍按钮后,一个叫tapButton()的方法就会被触发. 注意:以上这一种方式是动作声明和关联一起进行的,还有一种先 ...

  6. 实验二十二 SCVMM中的SQL Server配置文件

    实验二十二 SCVMM中的SQL Server配置文件 在VMM 2012中管理员可以使用 SQL Server 配置文件,在部署完成虚拟机之后,实现 SQL Server 数据库服务自动化部署并交付 ...

  7. 插入DLL和挂接API——Windows核心编程学习手札之二十二

    插入DLL和挂接API --Windows核心编程学习手札之二十二 如下情况,可能要打破进程的界限,访问另一个进程的地址空间: 1)为另一个进程创建的窗口建立子类时: 2)需要调试帮助时,如需要确定另 ...

  8. OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十

    OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...

  9. 读书二十二载,信念很简单,把书念下去,然后走出去,不枉活一世。

    ‍ ‍ 关注+星标公众号,不错过精彩内容 昨天看了一篇关于博士论文的致谢,看的我想哭.改变命运有很多条路,但是对于大多数人而言,读书是改变命运的捷径. 内容是讲述了自己20多年的求学经历:小时候煤油灯 ...

  10. (原创)无废话C#设计模式之二十二:总结(针对GOF23)

    无废话C#设计模式之二十二:总结(针对GOF23) 比较 设计模式 常用程度 适用层次 引入时机 结构复杂度 Abstract Factory 比较常用 应用级 设计时 比较复杂 Builder 一般 ...

最新文章

  1. Vue之for列表渲染、methods事件和model表单绑定
  2. linux如何锁定文件夹,如何在没有加密的情况下保护Linux / Unix上的文件夹? | MOS86...
  3. Spring入门介绍:
  4. java集合——树集(TreeSet)+对象的比较
  5. java联接pg库_Java14:使用Java 14的新记录联接数据库表
  6. c#.net多线程编程教学(2):Thread类
  7. 端口被占用问题Error: listen EADDRINUSE 127.0.0.1:8888
  8. eggjs 项目实践
  9. web前端性能优化方案
  10. 联想笔记本BIOS设置中文详解
  11. 3G UMTS与4G LTE核心网(一):移动核心网基础
  12. 我们为什么要使用空接口
  13. mysql 备份数据库结账_年度结转问题综合解答(转)
  14. 华为全球发布六款全场景新品;西门子加速在华发展数字化创新 | 美通企业日报...
  15. 基于Spring+SpringMVC+MyBatis博客系统的开发教程(十六)
  16. Oracle VirtualBox备份、恢复虚拟机
  17. 利用图像内插法放大缩小图像 Matlab
  18. anaconda conda 切换为国内源 、windows 和 Linux配置方法、 添加清华源——【一文读懂】
  19. 2022年G1工业锅炉司炉特种作业证考试题库及在线模拟考试
  20. Web技术老矣,尚能Run否?| U4内核在Web开发平台的探索之路

热门文章

  1. 2015第25周三iframe小结
  2. TypeScript入门教程 之 点差算子/散布运算符/...运算符/剩余参数/...参数
  3. Nginx并发数、每秒连接数、下载速度限制,防攻击杀手锏
  4. Apache Tomcat 9 用户指南
  5. css overflow: scroll 去滚动条后,低端手机有兼容问题,可以这样
  6. jquery ajax 跨域解决方案 - CORS
  7. 【Python】编写一个类,求圆的周长和面积
  8. C#LeetCode刷题之#226-翻转二叉树(Invert Binary Tree)
  9. 面向对象设计原则之7-迪米特法则
  10. 命令行部署程序保存pid到文件