2016-04-07 17 views
0

私はCentOS 7でOSRMセットアップを実行していますが、私はosmデータを抽出するためにcar.luaプロファイルを少し修正して使用しました。OSRMで「移動時間モデル」を使用できますか?

また、私が持っているGPSトレース(これはさらにgpx形式に変換されました)では、以下のプログラムを使用して実際の "旅行時間モデル"を生成しました。

http://wiki.openstreetmap.org/wiki/Routing/Travel_Time_Analysis

と結果ウォールド以下のようになる:
<models-db> 
    <model node-from="338720677" node-to="832908078" way="214413814" freeflow="5.4" avg-delay="0.9" /> 
     <model node-from="832908078" node-to="315264821" way="214413814" freeflow="1.0" avg-delay="0.2" /> 
     <model node-from="315264821" node-to="315264861" way="28682394" freeflow="7.3" avg-delay="2.1" /> 
     <model node-from="256019073" node-to="256019073" way="30625842" freeflow="18.0" avg-delay="5.9"> 
     <traffic-delay from="03:15:00" to="07:15:00" day="Any" delay="0.2" /> 
     <traffic-delay from="15:00:00" to="19:15:00" day="Any" delay="0.9" /> 
     <traffic-delay from="19:15:00" to="23:30:00" day="Any" delay="5.4" /> 
     </model> 
     .......... 
     .......... 

この 「旅行時間モデル」ノードからノードとしてOSRMデータで結果を使用する方法があります-toは、osmノードIDに直接接続されています。

私は、luaプロファイルを使用して速度(前後)を変更し、データを再入力できることを知っています。上記の結果は、"フリーフロー" & "avg-delay"のように、私はosrmデータのライブ走行時間モデルを使用するのに苦労しています。

はまた、私は機能下記のリンクから「トラフィック」OSRMのwikiで

https://github.com/Project-OSRM/osrm-backend/wiki/Traffic

が見つかりましたが、再び我々はスピード(edge_speed_in_km_h)と一緒にノードとして入力を与える必要があります。

ありがとうございます。

答えて

2

悲しいことに、上記のフォーマットをOSRMが理解できるものに変換するためにここに少し努力する必要があります。私たちはシンプルなCVSベースのスキーマを使用しています。

  • OSMファイルを読み、(OSMのノードIDでインデックス化)各ノードの座標を保存します。あなたは次のことを行い変換ツールを作成する必要があります値を高速化するために、あなたの期間の値を変換するには

  • は、あなたのXMLファイルを読み込み、各modelのために:
    • node-fromの座標を取得し、node-to
    • は距離を計算しますそれらの座標の間で計算します。
    • 計算された距離を抽出したいフィールドで除算します。 free_flow/distance = speed [m/s]
    • m/sで除算スピードをそれほどkm/h
    • 保存に私はǹode-fromnode-toは常に隣接していることを、ここで仮定してい

CVS {node_from};{node_to};{speed}として結果を変換する3.6で割ます。あなたが投稿したフォーマットがどのように定義されているかわからないので、あなたが提供したリンクの下で実際の仕様を見つけることができませんでした。

OSRMは時間依存性自体を扱っていません。これをあなた自身で調整し、道路ネットワークの現在のモデルに最新のcsvファイルを提供する必要があります。

+0

ご利用いただきありがとうございます。私も上記と同じように考えました。私は、OSRMで「旅行時間とエッジの重みを独立させる」という機能リクエストを見てきました。そのため、時間の点でよりコストがかかるので、上記の代わりにosmデータを抽出しながら、「移動時間」を利用する直接的な方法があるかどうかを知りたいと思うでしょう。とにかく私はさらに掘り下げていくつもりです。ありがとう。 – sudesh

+0

ルーティングの基礎として任意の重み(距離や安全性など)を使用できることは問題ではありません。あなたは最短か安全なルートを見つけることができました。これは、現在の重みが旅行時間であるため、この問題とは無関係です。 – themarex

+0

よろしいですか?明確化のためにもう一度おねがいします。 「Duration」を「スピード」のように使用するロードマップや機能のリクエストはありますか? – sudesh

関連する問題