アルゴリズム工学データベース離散最適化

最短路問題

6点[12点]24点48点


Java を有効にするとデモが表示されます。
Please enable Java.

 このデモでは、与えられたグラフの始点から他のすべての節点への最短路を計算し、 それらを最短路木として与えます。 計算に用いている Dijkstra(ダイクストラ) 法は、 最短路木(赤色の枝)を1節点ずつ成長させていきますが、 追加される節点には、その時点のラベル (最短路の候補となる路の長さ)が最小のものが選ばれます。 すべての節点が最短路木に含まれると、計算終了となります。

 アルゴリズムの動作は、1ステップずつ実行することもできますし、 自動的に最後まで走らせることもできます。 動作のスピードも調節できます。 なんと動作を逆にたどることもできます。 あれこれ試して、楽しみながらアルゴリズムを理解して下さい。

茨木 俊秀

プログラムは 茨木俊秀先生(京都大学)最短路問題のソースプログラム を元に作りました。

画面表示は 柳浦睦憲先生(京都大学)グラフアルゴリズムのアニメーション を元に作りました。


土村 展之(tutimura@logopt.com)
<最終更新日 2000年7月1日 >