![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数值优化
文章平均质量分 67
学习最优化理论,能够应用于机器学习、深度学习、现代控制理论、机器人学等领域
无意2121
研究方向1:自动驾驶决策规划与控制
研究方向2:无人系统群体智能
展开
-
机器人中的数值优化之罚函数法
由于L1-罚函数非光滑,因此无约束优化问题P的收敛速度无法保证,这实际上就相当于用牺牲收敛速度的方式来换取优化问题P的精确最优解。,如在1e-2~1e-3之间可接受。约束违背量不要求特别小时可采用。除了直接一步到位,还可以。原创 2023-12-29 22:42:52 · 1283 阅读 · 0 评论 -
机器人中的数值优化之无约束优化
欢迎大家关注我的B站:偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com)本文ppt来自深蓝学院《机器人中的数值优化》原创 2023-12-28 21:24:14 · 941 阅读 · 0 评论 -
机器人中的数值优化之牛顿共轭梯度法
如何解决Hessian矩阵非正定的情况求解线性系统需要很精确么引入截断的机制,如果Hessian矩阵不是正定的,而且是初始位置,说明刚开始用共轭梯度的效果很差,所以直接把搜索方向改为负梯度方向,到达一个相对较好的初始位置否则直接break,因为如果此时用共轭法可能会让函数上升原创 2023-12-28 21:11:20 · 944 阅读 · 0 评论 -
机器人中的数值优化之线性共轭梯度法
hessian矩阵需要n方的复杂度,逆需要n三次方的复杂度,我们求解d需要hessian矩阵的逆hessian与向量的乘积经过泰勒展开的简化可以变为只需求两次梯度原创 2023-12-28 20:42:11 · 1498 阅读 · 0 评论 -
机器人中的数值优化之L-BFGS
对于strong wolfe conditions来说,非凸函数会导致条件失败,因为非凸。通过右侧框图中的算法流程可以把复杂度从n方降到n,具体细节可以阅读论文。想要实现应用于非凸非光滑函数的BFGS,需要在BFGS的基础上加上。对于非凸光滑的函数,L-BFGS是最优的,对于非凸非光滑函数,L-BFGS也可以应用。这也就是所谓limited-memory。来实现每次迭代只利用m+1对。当迭代点之间相隔很远,不是很有用,同时为了。原创 2023-12-28 17:19:03 · 1153 阅读 · 0 评论 -
机器人中的数值优化之BFGS(nonconvex and smooth)
这是cautious update,一般在。当我们需要搜索方向是下降方向时,一定要让。,这就需要满足wolfe条件。首先需要满足充分下降条件,,当离最优解很近时没必要。原创 2023-01-31 17:43:10 · 891 阅读 · 3 评论 -
机器人中的数值优化之修正阻尼牛顿法
当函数是二次型时,近似没有起到效果,迭代的过程就是求解原函数最优解的过程,因此当然。当遇到hessian矩阵不是正定时,我们需要。将牛顿法与最速下降法相比,,否则会出现上述两种情况,,具体的数学推导请参考。,具体的数学推导请参考。原创 2023-01-28 18:02:46 · 1227 阅读 · 0 评论 -
机器人中的数值优化之最速下降法
梯度方向是函数上升最快的方向,而负梯度方向则是函数下降最快的方向,因此。如果采用衰减步长迭代,可以保证收敛,但是随着步长越来越短,收敛越来越慢。如果采用恒定步长迭代,将导致不停的震荡,始终无法收敛。非精确线搜索:我们不希望再求解子优化问题,也就是。前面我们讨论了迭代方向如何选择,现在讨论。,对于条件数,不清楚的读者可以参考。而这里也采用了一种二分的方法,当。这里我们还需要考虑条件数的问题,对于次梯度的介绍,读者请参考。时,就可以停止二分,取此步长。,但实际上这导致我们又。原创 2023-01-28 16:48:55 · 1298 阅读 · 2 评论 -
机器人中的数值优化之凸函数
条件数:存在hessian矩阵的函数,作奇异值分解,最大的奇异值除最小的奇异值就是条件数,可导但没有二阶信息的函数,通过利普希茨常数与强凸函数的常数的比值得到条件数,对于一般的不可微的函数,构造等高线,长轴与短轴之比为条件数。条件数决定了我们需不需要在优化算法中利用函数的高阶信息原创 2023-01-01 23:07:33 · 1419 阅读 · 0 评论 -
机器人中的数值优化之函数高阶信息
hessian矩阵是对称矩阵,最后一个公式是函数关于0的泰勒展开 负梯度是函数下降的最快方向注意区分Hessian矩阵与Jacobian矩阵,Hessian矩阵对应的函数是向量映射到标量,矩阵元素是二阶信息,而Jacobian矩阵对应的函数是向量映射到向量,矩阵元素是一阶信息。 上述几种不同的高阶信息是由于函数映射中X、Y的不同类型导致导数的形式不同Matrix calculus - HandWiki用两种方法计算梯度,一种是元素法,一种是向量法原创 2023-01-01 21:23:30 · 400 阅读 · 0 评论 -
机器人中的数值优化之凸集
集合中任意两点连线形成的线段属于这个集合,这个集合是凸集。注意:是否是凸集,集合的边界是否属于这个集合很重要这涉及到构造最小凸包的问题。上面列出的超平面、半空间等等都是凸集的典型代表锥不一定是凸集,比如锥的横截面是非凸集合,那么锥也是非凸的。上面的二阶锥是通过增加一个维度产生的。半正定的锥为何是凸集可以利用在集合中取A,B,证明他们的凸组合仍然在这个集合里。2 凸集的运算凸集的并集不一定是凸或非凸,凸集的交集一定是凸集。凸集的sum与product一定是凸集。原创 2023-01-01 20:09:49 · 1158 阅读 · 0 评论 -
机器人中的数值优化之基本概念
目标函数不能存在负无穷的值,这样会使得最小值无法在计算机中用浮点数表示,最小值可以很小但必须有界,也就是上述的 lower bounded。sub-level sets就是下水平集,此时要求目标函数不能存在当x趋于无穷时函数趋于某个值即下水平集无界,这同样会导致最小值无法用浮点数表示原创 2023-01-01 19:33:18 · 964 阅读 · 0 评论 -
【数值优化之线搜索方法】
对于无约束优化问题,寻求最小值的过程相当于盲人下山的过程,为了下山,需要做两个判断,第一,需要知道朝哪个方向走,第二,需要知道走几步,而通过不断重复这两个判断就能达到迭代的效果,不断逼近最优值。注意:上面的搜索方向只要和梯度方向夹角大于90度,那么就会是下降方向。但是走了过多的步数又会使下降效果不好,甚至不降反升,因为负梯度方向仅是迭代点的最快下降方向,一旦偏离就会产生新的最快下降方向。虽然步子卖得小能保证函数值降低,但是算法的效率就很低,下降得慢。所以下面主要讨论如何恰当的选取步长。首先我们构造辅助函数:原创 2022-07-01 10:49:45 · 3698 阅读 · 0 评论 -
【数值优化之凸集与凸函数】
本文参考书籍《最优化计算方法》,若侵权请联系删除目录1 凸集的相关定义1.1 凸集、仿射集1.2 凸组合、凸包 1.3 重要的凸集1.3.1 超平面与半空间1.3.2 球、椭球、锥1.3.3 多面体1.4 保凸运算 2 分离超平面定理 可见仿射集一定是凸集,但是要注意凸集的边界是开还是闭 同理可得仿射组合与仿射包可以通过降维的方式去理解超平面与半空间3 凸函数3.1 凸函数、严格凸函数、强凸函数 强凸函数减去一个正定二次函数仍然是凸函数,强凸函数一定是严格凸函数,而当强凸参数为0时,则退化成凸函数。3.2原创 2022-06-29 20:52:12 · 2926 阅读 · 0 评论 -
【数值优化之范数与导数】
范数相当于是从向量空间到实数域的映射,也就是度量向量与原点之间的距离,但是这里有很多不同的范数,1范数就相当于是曼哈顿距离,2范数相当于欧几里得距离,无穷范数就相当于闵氏距离。...原创 2022-06-16 12:26:16 · 2357 阅读 · 0 评论 -
【数值优化综述】
最优化问题泛指定量决策问题,主要关心如何对有限资源进行有效分配和控制,并达到某种意义上的最优。它通常需要对需求进行定性和定量分析,建立恰当的数学模型来描述该问题,设计合适的计算方法去寻找最优解。............原创 2022-06-05 15:12:39 · 1182 阅读 · 0 评论