看牛顿法的改进

今天继续看Numerical Optimization这本书,在看第六章,实用牛顿法。

6.1 提到“不准确”的牛顿法。意思是每次确定迭代方向都要解方程,很慢,实际上也不一定要解出非常精确的迭代方向。于是尝试用一些迭代解法(例如,共轭梯度法)去解 H*x + G = 0这个方程。

6.2 提到通过共轭梯度法解 Ax = b 找搜索方向p = x的具体做法。

一旦发现一个点x有 x^T * A * x <= 0此时A非正定,若当前为第一次迭代,以此迭代方向更新牛顿法,否则,以上一次迭代方向更新。前一种情况实际等价于最速下降法。

初始位置x0可以设置为0,也可以设置为上一帧的搜索方向。两种方法差不多。

此法不需要显式的H,只需要H * p。因此节省了计算H的时间。

时间: 2024-10-03 22:25:13

看牛顿法的改进的相关文章

深入了解 Scala 并发性

2003 年,Herb Sutter 在他的文章 “The Free Lunch Is Over” 中揭露了行业中最不可告人的一个小秘密,他明确论证了处理器在速度上的发展已经走到了尽头,并且将由全新的单芯片上的并行 “内核”(虚拟 CPU)所取代.这一发现对编程社区造成了不小的冲击,因为正确创建线程安全的代码,在理论而非实践中,始终会提高高性能开发人员的身价,而让各公司难以聘用他们.看上去,仅有少数人充分理解了 Java 的线程模型.并发 API 以及 “同步” 的含义,以便能够编写同时提供安全

【JavaEE】Springmvc+Spring+Hibernate搭建方法及example

前面两篇文章,分别介绍了Springmvc和Spring的搭建方法,本文再搭建hibernate,并建立SSH最基本的代码结构. Hibernate和前面两个比就比较复杂了,Hibernate是一个orm的框架,也就是负责面向对象中的对象(Object)和关系型数据库这个关系(Relation)之间的映射(Mapping).因为关系型数据库的思维方式,和编程的时候对于对象的理解是有偏差的,所以也有一些面向对象的数据库,但是随着这些orm框架的完善,面向对象的数据库就销声匿迹了. 当然,我这篇文章

Python:编程“八荣八耻”

以动手实践为荣,以只看不练为耻. 以打印日志为荣,以单步跟踪为耻. 以空白分隔为荣,以制表分隔为耻. 以单元测试为荣,以手工测试为耻. 以代码重用为荣,以复制粘贴为耻. 以多态应用为荣,以分支判断为耻. 以Pythonic为荣,以冗余拖沓为耻. 以总结思考为荣,以不求甚解为耻. 刚刚看到,不可尽信,也不可全部不信.理性看待. 1. "以动手实践为荣, 以只看不练为耻" 俺写一个程序时间通常是这么分配的. 70% 的时间用来寻找和阅读现有代码, 如果找到了, 就不用自己写了.如果不够用或

关于SLAM的那些事——通用图优化(G2O)环境搭配(windows8.1 vs2013)

好久不见啊各位亲,最近刚中期答辩完,得以有时间好好更新下博客啦. 自从上一个单目AR系统做完后,就仔细思考了一下我到底在做什么,接下来要做什么.之前博客上写的是3d重建,后来视野开阔了之后发现无论我做3d重建,SLAM,AR,重要的都是姿态更新.一个精准的稳定的姿态更新,决定着系统的好坏.贝叶斯滤波器(EKF扩展卡尔曼滤波,PF粒子滤波)和通用图优化(G2O)是使得姿态更加精准稳定的两种方法.近些年来G2O在视觉SLAM领域逐渐成为了主流的后端优化方法. 具体的视觉SLAM流程和G2O的相关知识

DSP的繁华和伤心

1.什么是DSP? 我习惯从两个角度理解任何一个技术 1. 它解决什么问题  2. 它为谁服务.对于DSP来说,我认为DSP是解决广告主程序化购买的复杂性和ROI问题,它为广告主而生.如果把广告行业简化成:媒体(Supply),广告平台(ADX)和广告主(Demand).DSP起的作用就是在程序化购买过程中,为广告主优化投放效果. 从这个角度来看,DSP是非常有前途的方向,它消除之前手工投放的很多信息不对称的问题,保护了广告主的利益,DSP的存在是”没毛病“的. 2.独立DSP的生存空间 单一角

22、DDMS(转载)

本文是转载,出处为http://www.xuebuyuan.com/1291595.html 如需删除本文,请私信我,谢谢 DDMS DDMS是一款Google* 提供的应用,可作为独立的工具运行,也可通过ADT Eclipse* 插件集成到Eclipse* 中.它提供了强大的特性集合,能帮助您快速了解应用的运行状况. 线程更新 DDMS中的线程监控和评测浏览对于管理大量线程的应用很有用.要启用,点击 Update Threads(更新线程)图标即可开始. 图 1 这使下面的窗口会显示面向选中V

阅读计划3---《大道至简》

以前一直以来都是自己编程,自己摸索思路,一直都以为编软件是一个人的事情.后来开设了软件工程概论这门课,在老师的讲解下才逐渐有了团队这个概念.后来看了<大道至简>这本书,也更了解了软件工程.每个组织的大小,行业,具体情况都不同,更不要说人员组成和客户需求了,这样看来,每个团队都要找到适合自己发展的软件工程的方法和过程.软件项目需要在时间,资源和功能中找到平衡,如果项目本身就有问题,你怎么期待他能成功呢?就像我们现在每个团队在座的软件,有人认为别人的软件不实用,有的认为功能不健全,有的则因为进度问

3d照片环效果

今天用用前两天总结的css3新效果写了一个3d照片环的效果,其中还有些bug大家可以看一看,一起改进. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> *{ padding:0; margin:0; list-style:none; } body{

不懂设计模式

本篇是讲设计模式方面的,比较杂,不像书上的那样. 我们先从很简单的一个需求开始:“想让系统中只存在一个SendEmailObject对象” 代码: public class SendEmailObject { public bool Send() { Console.WriteLine("Email sent from : "+this.GetHashCode()); //加这个GetHashCode调用是用来查看instance是否同一个的 return false; } } pub