Shortest path on directional weighted graph (street network) 坂道の負荷によって異なる最短経路

This example is about Tokyo Akasaka area.

formula of up/down weighted consent-distance
h: level difference of edge both ends.
ku : coefficient for climb up edge
kd: coefficient for going down edge

consent-distance(up) = actual length + h * ku
consent-distance(down) = actual length + h * kd

勾配や移動する方向によって体感する距離が変わることを,実際の距離(実距離)が伸縮したように置き換え,これを「見なし距離 consent-distance」と呼ぶことにします(式で表すとすると「見なし距離」=実距離+高低差×負荷係数)。つまり,坂道の上りは時間がかかるので見なし距離が長くなり,下りでは短くなるというように,勾配や進む方向によって見なし距離が異なると仮定します

同じ徒歩の場合でも、平坦な道、坂道上り、と下りで、負荷が異なります。それぞれの負荷によって、みなし距離が伸び縮みすると考えることによって、その負荷の違いを一元的に表現することができます。上り勾配がきついほど、みなし距離が長くなり、平坦になるほどみなし距離が実距離に近づきます。下り坂は、勾配があれば、ある程度みなし距離が短くなる、という係数の定義も可能です。都市街路をネットワークと見なし、街路をエッジとすると、これらのみなし距離の考え方は、進む方向によって重み(移動速度)の異なる、directional-graph有向グラフ(ネットワーク)として計算することができます。

本ポストの動画は、下り道の負荷の係数を -1 に固定し、上り負荷係数を0.0から10.0まで、10.0から0.0まで連続的に変化させながら、赤坂見附付近の交差点→東京ミッドタウン西 交差点までの最短ルートをダイクストラ法に従って算出しています。係数4.1、係数7.7で最短ルートが変化しています。上り負荷係数が高い場合の最短ルートほど、急勾配の経路を避けたルート、と見ることができます。本モデルは、年齢や個人差によって感じる坂道の負荷が変化するとき、最短ルートがどのように変化するかを明らかにするモデルです。