巡回セールスマン問題は結構難しそう ―― 一目では正解がわからないときもある
どうやって解くか?
単純に「全ての巡回路を調べる」
非常に時間がかかる!
-
都市の数が N のとき、巡回路の総数は N の階乗(N!)通り
-
N = 8 のとき、巡回路の総数= 8! = 40320 通り、たいしたことはない
-
N = 20 のとき、巡回路の総数= 20! = 約 2.4×1018 通り
1秒間に1兆(=1012)個の巡回路を調べることのできる
コンピュータでも 約27日間 必要
-
N = 24 のとき、巡回路の総数= 24! = 約 6.2×1023 通り
同じコンピュータで
約1万9千年 必要!
でも、何とかして答えを求めたい
効率の良いアルゴリズムの必要性