前回、改善:分岐の順序を最適化での5路線の計算は、
- 東山線、名城線、名港線、鶴舞線、桜通線 → 計算できず
- 東山線、名城線、名港線、鶴舞線、上飯田線 → 2秒で計算
10分経っても終わらない場合は「計算できず」とすることにしてるけど、もしかしたらもう少し待てば計算できるのではないかと思い、検索中のルートを表示するようにしてみた。
10分経過した時点で思ったよりも計算が進んでいたため、そのまま計算を続行。
2,927秒(約49分)で終わった。
計算ルート数は4路線の97,514ルート(約10万)から698,771,279ルート(約7億)で7千倍以上に増えている。
5路線(東山線、名城線、名港線、鶴舞線、桜通線)
藤が丘 ~( 東山線 )~ 高畑 高畑 ~( 東山線 )~ 名古屋 名古屋 ~( 桜通線 )~ 中村区役所 中村区役所 ~( 桜通線 )~ 徳重 徳重 ~( 桜通線 )~ 新瑞橋 新瑞橋 ~( 名城線 )~ 金山 金山 ~( 名港線 )~ 名古屋港 名古屋港 ~( 名港線 )~ 金山 金山 ~( 名城線 )~ 八事 八事 ~( 鶴舞線 )~ 赤池 赤池 ~( 鶴舞線 )~ 上小田井 藤が丘-(東山線)-本山-(東山線)-今池-(東山線)-栄-(東山線)-伏見-(東山線)- 名古屋-(東山線)-高畑-(東山線)-名古屋-(桜通線)-中村区役所-(桜通線)-名古 屋-(桜通線)-丸の内-(桜通線)-久屋大通-(桜通線)-今池-(桜通線)-御器所-(桜 通線)-新瑞橋-(桜通線)-徳重-(桜通線)-新瑞橋-(名城線)-八事-(名城線)-本山 -(名城線)-平安通-(名城線)-久屋大通-(名城線)-栄-(名城線)-上前津-(名城線 )-金山-(名港線)-名古屋港-(名港線)-金山-(名城線)-新瑞橋-(名城線)-八事-( 鶴舞線)-赤池-(鶴舞線)-八事-(鶴舞線)-御器所-(鶴舞線)-上前津-(鶴舞線)-伏 見-(鶴舞線)-丸の内-(鶴舞線)-上小田井 所要時間: 328(分) 乗車時間: 228(分) 乗換回数: 5(回)×10(分) 折返回数: 5(回)×10(分) intMakeRouteNum = 31370501 intRouteNumMax = 50 -- 処理時間: 2927(秒) intMakeRouteNum = 698771279 intRouteNumMax = 50 |
残りは上飯田線の1路線だけ。
上飯田線は平安通駅から1区間だけ(続きは名鉄小牧線)だけど、3分岐で分岐して戻るり(1分岐)、また3分岐になるので、5路線の場合の数倍の計算量になると思われる。
5路線で約49分なので、5倍で4時間ちょっと、10倍だと8時間以上の計算時間か。
待てない時間じゃないけど、ここはもう少し改善を進めた方が良さそう。
つづく。
0 件のコメント:
コメントを投稿