Advertisement

CeresSolver官方教程学习笔记(三)——鲍威尔方程

阅读量:

本节内容源自官方教程Powell’s Function(鲍威尔方程)

在本部分内容中,我们将通过一个更为复杂的实例进行讲解——即求解鲍威尔方程的最小值问题。我们设定参数块为x = \left[x_1, x_2, x_3, x_4 \right],并给出相应的代价函数表达式:

F(x) 表示上述四个残差项构成的方程。我们的目标是确定一组 x 的取值,使得 \frac{1}{2}\|F(x)\|^2 达到最小值。

同样地,初始步骤依然是构建残差方程。对于每一个方程,都可以设计一个对应的结构体。例如,针对 f_4(x_1,x_4)

复制代码
    struct F4 {
      template <typename T>
      bool operator()(const T* const x1, const T* const x4, T* residual) const {
    residual[0] = T(sqrt(10.0)) * (x1[0] - x4[0]) * (x1[0] - x4[0]);
    return true;
      }
    };
    

全部评论 (0)

还没有任何评论哟~