Eigen 曲线拟合之四阶多项式(有界约束,投影法)
文章目录
- 一、简介
- 二、实现代码
- 三、实现效果
一、简介
有时候我们想要对一些参数进行约束,如约束在一个范围内,投影法就是这样一种约束参数的方法,它是一种在优化算法中处理约束(特别是边界约束)的简单而有效的方法。其核心思想是:在每次迭代更新参数后,检查参数是否超出了预设的边界(即约束条件),如果超出了,就将参数“拉回”(投影)到边界内。
不过这种方式可能存在一些问题:
- 在边界处不可导:当参数被投影到边界时,目标函数在边界处可能不可导,这可能导致优化算法收敛变慢(例如,梯度下降在边界处可能会来回震荡)。
- 可能改变优化路径:强制将参数拉回边界可能会改变优化路径,使得收敛到与无约束问题不同的解。
- 不适用于复杂约束:主要适用于边界约束,对于更复杂的约束(如线性不等式约束、等式约束)效果不佳。
因此真正使用该方法时,请尽可能提供良好的初值。
二、实现代码
// 标准文件
#