結論から言うと、これらは同じものではありません。
アルゴリズム3で中核となすアルゴリズムは、ダイカストラのアルゴリズムです。簡単に言うと、グラフがあって、その最短重み和の経路を求めたいとき、一度計算した結果をメモしておくやり方です。この考え方は、深宇宙通信で使われる符号化方式、ビタビアルゴリズムに本質的に似ています。と言うよりも、ビタビ教授自身、類似性を認めています。
ダイクストラ法は、動的計画法(DP)の考え方を利用したアルゴリズムの一つ、という関係性です。っくりとした違いは以下の通りです。
- 動的計画法(DP):大きな問題を小さな部分問題に分けて解く、「考え方の枠組み(手法)」のことです。
- ダイクストラ法:グラフの最短経路を求めるための、具体的な「手順(アルゴリズム)」のことです。
- イメージとしては、「料理(動的計画法)」という大きなジャンルの中に、「カレーの作り方(ダイクストラ法)」という具体的なレシピがあるような関係です。
ダイクストラ法は、「今の地点から一番近いところを確定させる」という手順を繰り返しますが、これは「過去の計算結果(確定した距離)を使って次の計算をする」という点で、動的計画法の仕組みに基づいています。
0 件のコメント:
コメントを投稿