当前位置: 首页 > news >正文

机器人中的数值优化之线性共轭梯度法

欢迎大家关注我的B站:

偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com)

本文ppt来自深蓝学院《机器人中的数值优化》

目录

1.无约束优化方法对比

2.Hessian-vec product

3.线性共轭梯度方法的步长​编辑

4.共轭梯度方向的求解

5.线性共轭梯度方法整体流程


1.无约束优化方法对比

拟牛顿方法和牛顿共轭梯度方法是最优的,实现收敛速率与iteration work之间的平衡

2.Hessian-vec product

 hessian矩阵需要n方的复杂度,逆需要n三次方的复杂度,我们求解d需要hessian矩阵的逆

hessian与向量的乘积经过泰勒展开的简化可以变为只需求两次梯度

3.线性共轭梯度方法的步长

 A应该也是未知的,我们只能输入x得到Ax的值

 

 求解线性方程这个任务转化为求二次函数的最小值

最速下降法收敛比较慢

牛顿方法需要涉及Hessian求逆

如果A=I,那么等高线是圆,n维则是对应超球,但是每次的迭代都是相互垂直的,只要n步这样正交的方向迭代搜索就能获得精确的最小值 

对于A!=I时,等高线为椭球,相当于做了仿射变换,原来的正交,现在则是共轭,定义如上

这里对步长进行求导则可以得到步长的闭式解,并且由其形式可看出我们只需要知道Ax这样输入x得出Ax的值的接口就行

4.共轭梯度方向的求解

施密特正交化就是不断把基底方向的分量减掉,剩下的就是和已经存在的基底正交的另一个基底 

共轭的施密特正交化与一般的施密特正交化的区别就是内积中间有系数矩阵A

按部就班来还是k方的复杂度,实际上可以增量式地计算

这里令每一次Vk是残差,但这个残差已经把在之前的共轭投影上都是零了

5.线性共轭梯度方法整体流程

http://www.lryc.cn/news/271011.html

相关文章:

  • 嵌入式Linux C语言介绍
  • 基于Java电影院票票务系统
  • HarmonyOS应用开发实战—开箱即用的登录页面3【ArkTS】
  • Unity坦克大战开发全流程——1)需求分析
  • python练习2【题解///考点列出///错题改正】
  • 7.2 uvm_resource_db in UVM
  • 洛谷——P3879 [TJOI2010] 阅读理解(STL:hash+set,c++)
  • Windows/Linux环境登入mysql、mysqldump命令等多方式解决方案之简易记录
  • 【基础】【Python网络爬虫】【13.免费代理与付费代理】(附大量案例代码)(建议收藏)
  • 【 YOLOv5】目标检测 YOLOv5 开源代码项目调试与讲解实战(3)-训练yolov5模型(本地)
  • fastApi 项目部署
  • python操作mysql数据库
  • Redis6.0 Client-Side缓存是什么
  • Leetcode—1572.矩阵对角线元素的和【简单】
  • 基于SpringBoot的二手手机商城系统的设计与实现
  • OpenFeign相关面试题及答案
  • c盘扩容时,d盘无法删除卷问题
  • NumPy 中级教程——广播(Broadcasting)
  • python-39-flask+nginx+Gunicorn的组合应用
  • C#-CSC编译环境搭建
  • 【JVM】一文掌握JVM垃圾回收机制
  • 【AIGC风格prompt】风格类绘画风格的提示词技巧
  • vue exceljs json数据转excel
  • Navicat for MySQL 创建函数——报错1418
  • java球队信息管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目
  • 设计模式(4)--对象行为(7)--观察者
  • MySQL所有常见问题
  • 锐捷交换机配置 SNMP
  • Windows 10 安装和开启VNCServer 服务
  • js遍历后端返回的集合将条件相同的放入同一个数组内