-1

これがすでに尋ねられている場合は申し訳ありません-ここで使用する適切な用語については確信が持てないため、使用している場合は、私のような他の人がこれがだまされたとマークされているものを見つけるのに役立つことを願っています.

3 つの点からコード (理想的には C# または Javascript) で曲線の式を作成しようとしています - 式は y = a/(t+b) + c の形式である必要があります。ここで、t は時間です - 横軸 - y は縦軸です。明らかに、a、b、および c は、グラフ フィットのためだけに存在します。

これについてどうすればいいですか?使用すべき既存のライブラリはありますか?

ソース データには 3 つ以上のデータ ポイントがあります。データに 1/x 曲線を当てはめる最も簡単な方法を探しているだけです。たとえば、入力として簡単に提供できる精度のために 4 つのポイントが必要な場合。

4

1 に答える 1

1

フォームの機能に適合させたい場合

    y(t) = a/(t + b) + c

ガウス-ニュートン法またはレーベンバーグ-マルカート法を使用できる非線形最小二乗問題に直面している一連のデータ ポイントに。Loeb's algorithmただし、近似が多項式の比率である場合に、適切な (ただし最適ではない - 最適な近似に収束しないことが示される) 近似を生成するために使用できる、という名前の古いアルゴリズムがあります。これは最小二乗問題を線形化することで機能し、反復最小二乗解が得られます (ただし、実際には 1 回の反復で良い結果が得られます)。私は博士号を取得するためにこのアルゴリズムを研究しましたが、多項式比を使用してデータポイントを近似する実際の問題に対して強くお勧めします (そのケースは非常に単純な例です)。

欠点は、このアルゴリズムが非常に古く、適切なドキュメントを見つけるのに苦労する可能性があることです。可能であれば、標準の線形最小二乗近似よりも実装が複雑ではありません。ここで問題に対するより良い答えが得られない場合は、グーグルで検索することを検討してください。まともな情報が見つからない場合は、お知らせください。私の論文を私のウェブサイトにアップロードし(メソッドの実装の詳細が含まれています)、ダウンロードできます。

私が言うように、ここでははるかに簡単な答えが得られるかもしれませんが、そうでない場合は、確かに選択肢になります.

于 2012-06-29T22:22:10.073 に答える