擅长:python、mysql、java
<p>最小二乘问题要求找到一条与给定点最匹配的直线,并且有一个很好的闭合形式解。将此解作为求解分段最小二乘问题的基元。在</p>
<p>在分段最小二乘问题中,我们可以有任意数量的线段来拟合给定的点,并且我们必须为每一个使用的新线段支付费用。如果使用新线段的成本为0,我们可以通过将一条单独的线穿过每个点来完美地拟合所有点。在</p>
<p>现在假设我们正在寻找与n个给定点最匹配的线段集。如果我们知道n-1子问题的最佳解:第一个点的最佳拟合,前2个点的最佳拟合,…,前n-1个点的最佳拟合,那么我们可以计算出含有n个点的原问题的最佳解,如下所示:</p>
<p>第n个点位于一个线段上,该线段从某个较早的点i开始,对于某些i=1,2,…,n。我们已经解决了所有较小的子问题,即少于n个点,因此我们可以找到n个点的最佳拟合,从而使:</p>
<p>第一个i-1点的最佳拟合成本(已计算)+
最适合点i到n的单线成本(使用最小二乘问题)+
使用新段的成本</p>
<p>使上述数量最小化的i值给出了一个解决方案:对子问题i-1和通过点i到n的线段使用最佳拟合</p>
<P>如果你需要更多帮助,我已经写了一个算法的解释,并在这里提供了C++实现:^ a1}</p>