凸优化和非凸优化

在工程实践中,无需关心 二次规划/凸优化的细节,工程师 只需要 调相应的第三方成熟软件包计算二次规划/凸优化的结果即可。当然,更重要的是知道算法的使用条件、优缺点、使用场景

决策规划算法的输出目标:输出一条满足约束条件的最优轨迹。(用代价函数来量化最优性)
最优的评价指标:
1,平滑
2,舒适
3,耗时短
约束:
1,轨迹连续
2,无碰撞
3,遵守交通规则
4,满足车辆动力学、运动学约束

一、迭代法求高维复杂约束函数的最小值

回顾

高中数学,求连续可导函数F(x)在定区间[a,b]上的最小值。
在这里插入图片描述
步骤:
1,计算F(a),F(b)
2,求F(x)的极值
3,在极值、F(a)、F(b)中选择最小值即为F(x)在区间[a,b]上的最小值。
但此方法无法快速求出高维复杂约束下函数的最小值。
比如:
在这里插入图片描述
**缺点:**1,快速求解出极值点较难,且极值点可能非常多。2,约束区间可能不连续,是多个小区间的拼凑,难以处理
故一般求复杂函数在复杂约束下的最小值采用迭代法 ,计算速度较快:
1,牛顿法;
2,梯度下降法;
3,高斯牛顿法。

迭代法的基本原理:

在这里插入图片描述
按照梯度反方向进行迭代,迭代步长取决于斜率大小,最终收敛于极值处。

迭代法的缺点:

在这里插入图片描述
1,对初值比较敏感:函数有多个极值时,若初始值不同,则迭代法求出的极值就不同,最终可能输出局部最小值,即迭代法对于初值比较敏感。

应用场景:

在这里插入图片描述
前提条件:
1,只有一个极值点的函数,且极值点就是最小值。或单调函数,即代价函数是凸函数。
2,约束空间是连续完整的,即约束空间是凸空间。
则该场景对于初始值不敏感,且迭代法必然收敛于最小值,故该场景很适合用迭代法快速求解出全局最小值,该问题称为凸优化问题

凸优化问题具备的性质:

1,代价函数只有一个极值点,或代价函数为单调函数,这样的函数称为凸函数
2,约束空间是连续完整的空间,这样的空间称为凸空间,且凸多边形形成的空间是凸空间,凹多边形形成的空间是非凸控制。
求凸函数在凸空间上的最小值问题,称为凸优化
注:这里对于凸函数,凸空间的定义仅限于自动驾驶决策规划领域,数学领域有较为严谨的定义,我们只关注决策规划领域的定义即可

二、凸优化的好处和意义

凸优化是最简单的非线性优化方法,也是目前为止求解非线性问题最值的最为成熟的优化方法,是复杂优化算法的基石,非凸问题一般都转化为凸问题进行求解。

三、如何在决策规划模块中使用凸优化

在这里插入图片描述
车辆避障

自动驾驶静态和动态避障的空间均是非凸空间,如何求非凸空间的最小值????------>目前并无完美的非凸问题的求解算法,故需要转化为凸空间进行求解。
在这里插入图片描述
案例1
在这里插入图片描述
案例2
1,非凸转化为凸的方法:非凸空间---------->离散化---------->比较离散点而得出粗解---------->迭代---------->最优解
在约束空间采样,找到采样点的最小值,然后进行迭代法求解。本质是将约束空间离散化,求离散化空间的最优解,作为迭代的初始值,即粗解
2,非凸转化为凸的缺点:
采样点不足时,求出的是局部的最优解。但采样点过多会引发维度灾难。

总结:非凸优化转化为凸优化的方法并非完美算法,也有缺点,故需要在实际工程开发中进行采样个数的权衡和试验,找到满足特定场景功能需求的参数即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值