私はこのアルゴリズムをPythonで数日間実装しようとしています。私はそれに戻ってきて、ただあきらめてイライラし続けます。何が起こっているのかわかりません。助けを求める人もどこにもいないので、ここに来ました。
PDF警告:http ://www.cs.uiuc.edu/class/sp08/cs473/Lectures/lec10.pdf
私はそれが明確に説明されているとは思いません、私は確かに理解していません。
何が起こっているのかについての私の理解はこれです:
一連の点(x1、y1)、(x2、y2)..があり、このデータに最適な線をいくつか見つけたいと思います。複数の直線を持つことができ、これらの直線はaとb(y = ax + b)の特定のフォーラムからのものです。
ここで、アルゴリズムは最後(?)から始まり、点p(x_i、y_i)が線分の一部であると想定します。次に、メモには、最適解は'{p1 、.の最適解であると書かれています。。。pi-1}と{pi、。を通る(最良の)線。。。pn}'。これは、私にとっては、ポイントp(x_i、y_i)に移動し、後方に移動して、残りのポイントを通る別の線分を見つけることを意味します。現在、最適なソリューションは、これらの両方の線分です。
次に、私がたどることができない論理的なジャンプが必要で、「最後のポイントpnがp_iで始まるセグメントの一部であると仮定します。Opt(j)が最初のjポイントのコストを示し、e(j、k)点jからkまでの最良の線の誤差、次にOpt(n)= e(i、n)+ C + Opt(i − 1) "
次に、アルゴリズムの擬似コードがありますが、私にはわかりません。ポイントのリストを繰り返し処理して、OPT(n)式を最小化するポイントを見つけたいと理解していますが、私はそれに従いません。それは私を愚かに感じさせています。
この質問はお尻の痛みであり、答えるのは簡単ではないことを私は知っていますが、私はこのアルゴリズムを理解するためのガイダンスを探しています。PDFをお詫びしますが、読者に重要な情報を提供するためのきちんとした方法がありません。
お時間を割いていただき、ありがとうございました。