古いゲームの時代には、その古い CPU ではこれらの値の計算が遅いため、事前に計算された sin と cos などの値のルックアップ テーブルを使用していました。
それは動的プログラミング手法と見なされますか? または動的プログラミングは、常に計算されるか、または一種の再帰関数を解決する必要がありますか?
更新: 動的プログラミングの鍵は、sin,cos ルックアップ テーブルの解決策であるメモ化テーブルを用意することです。この手法の実際の違いは何ですか?
古いゲームの時代には、その古い CPU ではこれらの値の計算が遅いため、事前に計算された sin と cos などの値のルックアップ テーブルを使用していました。
それは動的プログラミング手法と見なされますか? または動的プログラミングは、常に計算されるか、または一種の再帰関数を解決する必要がありますか?
更新: 動的プログラミングの鍵は、sin,cos ルックアップ テーブルの解決策であるメモ化テーブルを用意することです。この手法の実際の違いは何ですか?
いいえ、これは動的計画法ではないと思います。計算能力が限られているため、サインとコサインの値は、他の数値定数と同様に事前に計算された値として与えられました。
動的計画法の手法で問題を解決するには、多くの必須条件があります。重要な条件の 1 つは、問題を再帰的に解決可能なサブ問題に分割できることです。その結果、これらのサブ問題をルックアップ テーブルとして使用して、再帰の上位チェーンを置き換えることができます。したがって、再帰とメモリの両方です。
詳細については、ウィキペディアのリンクを参照してください。 http://en.wikipedia.org/wiki/Dynamic_programming
また、このコースのレクチャー 19 では、動的計画法について概説します。 http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/lecture-19-dynamic-programming-i-フィボナッチ-最短パス/