投稿者 トピック: [r4424以降] 降りない乗客が発生する  (参照数 2319 回)

z9999+

  • 管理人
  • 急行
  • *
  • 投稿: 364
問題:
ルート検索で「駅数」を考慮する場合、帰りの乗客は別途ルート検索をしなければ、降りない乗客が発生する可能性がある。

例:
ルート1: 0=>1=>2=>3=>4=>5=>6=>7=>8=>9=>10=>11=>12=>0
ルート2: 1<=>12

仮定条件:
0駅周辺に町がある。12駅周辺に産業施設または観光地があり、町はない。

結果:
0駅から1駅を経由して12駅に向かう旅客が発生し、12駅から1駅を経由して0駅に帰る旅客が発生する。
ルート2に乗った乗客は1駅に着いた時点で、再び12駅に戻ってしまい、バスから降りない。

理由:
1. 12駅の周辺に町がないため、新規に12駅から0駅へのルートが検索されない。
2. 新しく駅を作ったりすると、12駅から0駅への正しいルートが検索されるが、新しく帰る旅客が発生すれば、再び1駅を経由して0駅に帰るルートに戻ってしまう。

Knightly

  • 各駅停車
  • *
  • 投稿: 4
Re:[r4424以降] 降りない乗客が発生する
« 返信 #1 on: 2011/05/07 19:11 »
Thanks for your report, Z9999+ ;)

Indeed, the assumption in the original implementation that the best return route is the reverse of the best forward route no longer holds with more complex connection weights.

Dwachs has been working on a patch to make search_routeS() resumable with route-caching, and performance is good. Hopefully we can solve this problem by re-using Dwachs' much more optimised search_routeS() to calculate the return routes for return pax/mail -- but this is just my proposal to Dwachs, and may or may not be adopted.

For your info, the connection weight criteria has not been finalised yet -- the current 8:1 transfer to intermediate halt ratio is just arbitrary. We want to finalise on the search code first (which hopefully will be complete once Dwachs has finished with his optimisation of search_routeS()), before dealing with the more controversial formula of connection weight.
« 最終編集: 2011/05/07 19:14 by Knightly »

z9999+

  • 管理人
  • 急行
  • *
  • 投稿: 364
Re:[r4424以降] 降りない乗客が発生する
« 返信 #2 on: 2011/05/09 23:02 »
Knightly, thank you for that information.