コンテンツにスキップ

SUMO

俯瞰

SUMOはシミュレーション自身です。 微視的で連続空間かつ離散時間を持つ交通シミュレーションです。

  • 目的: 定義済みのシナリオのシミュレート
  • システム: ポータブル(Linux/Windowsでテスト済み)で、コマンドラインから動作する
  • 入力(必須):
    • A) [NETCONVERT]または[NETGENERATE]により生成された道路ネットワーク、[ネットワーク構築]を参照
    • B) 経路の集合([DUAROUTER]、[JTTROUTER]、[DFROUTER]または[ACTIVITYGEN]により生成、[車両、車両タイプ及び経路の定義]も参照
  • 入力(任意): 交通信号、様々な速度標識、検知器などその他の定義
  • 出力: SUMOでは様々な出力が可能であり、可視化は[SUMO-GUI]で行なわれる
  • プログラミング言語: C++

使い方

オプション

設定

オプション 説明
-c <FILE>
--configuration-file <FILE>
指定された設定を起動時に読みこむ
-C <FILE>
--save-configuration <FILE>
現在の設定をファイルに保存する
--save-templace <FILE> 設定のテンプレート(空)をファイルに保存する
--save-schema <FILE> 設定のスキーマをファイルに保存
--save-commented <BOOL> 保存されるテンプレート、設定、スキーマにコメントを追加する。デフォルト: false

入力

オプション 説明
-n <FILE>
--net-files <FILE>
ファイルから道路ネットワークを読みこむ
-r <FILE>
--route-files <FILE>
ファイルから経路ファイルを読みこむ
-a <FILE>
--additional-files <FILE>
さらにファイルを読みこむ
-w <FILE>
--weight-files <FILE>
オンラインでの再経路設定用の枝(道路)/車線の重みをファイルから読みこむ
-x {{ DT_STRING }}
--weight-attribute {{ DT_STRING }}
枝(道路)の重みを与えるxmlの属性の名前。デフォルト: traveltime
--load-state <FILE> ネットワークの状態をファイルから読みこむ
--load-state.offset <TIME> 保存された状態から時間をずらす。デフォルト: 0
--load-state.remove-vehicles {{ DT_STRING }} 読みこまれた状態について与えられたIDの車両を削除する

出力

オプション 説明
--write-license <BOOL> 全ての出力ファイルにライセンス情報を付加する。デフォルト: false
--output-prefix {{ DT_STRING }} 全ての出力ファイルに付加する接頭語を指定する。特別な文字列'TIME'は現在の時刻で置き換えられる
--precision <INT> 小数の出力に対し、小数点以下何桁までの出力を行なうかを指定。デフォルト: 2
--precision <INT> 緯度経度の出力に対し、小数点以下何桁までの出力を行なうかを指定。デフォルト: 6
-H <BOOL>
--human-readable-time <BOOL>
時間の値を秒のみのかわりに 時間:分:秒 あるいは 日:時間:分:秒の形式で書きこむ。デフォルト: false
--netstate-dump <FILE> 完全なネットワークの状態をファイルに保存する
--netstate-dump.empty-edges <BOOL> ダンプ時に空の枝についても完全に出力する。デフォルト: false
--netstate-dump.precision <INT> 位置と速度を指定した精度で出力する。デフォルト: 2
emission-output <FILE> 個々の車両の排気ガスを保存する
emission-output.precision <INT> 排気ガスの値を指定した精度で出力。デフォルト: 2
battery-output <FILE> 個々の車両のバッテリーの値を保存する
battery-output.precision <INT> バッテリーの値を指定した精度で出力。デフォルト: 2
--fcd-output <FILE> フローティングカーデータ(FCD)を保存する
--fcd-output.geo <BOOL> FCDを緯度経度を用いて保存する。デフォルト: false
--fcd-output.signals <BOOL> FCD出力に車両のライトの情報(ブレーキランプ等)を含める。デフォルト: false
--fcd-output.filter-edges.input-file <FILE> FCD出力を指定されたファイルで定義された枝(道路)のみに制限する
--full-output <FILE> タイムステップごとに多くの情報を保存する(かなり冗長)
--queue-output <FILE> 交差点での待ち車両列を保存する(実験的)
--vtk-output <FILE> 速度を含めた完全な車両位置をVTKフォーマットで保存する(使い方: /path/out は/path/out_$TIMESTEP$.vtpファイルを出力)
--amitran-output <FILE> 車両の軌跡をAmitranフォーマットで保存する
--summary-output <FILE>
--tripinfo-output <FILE>
--tripinf o-output.write-unfinished <BOOL>
--vehroute-output <FILE>
--vehroute-output.exit-times <BOOL>
--vehroute-output.last-route <BOOL>
--vehroute-output.sorted <BOOL>
--vehroute-output.dua <BOOL>
--vehroute-output.cost <BOOL> 全経路のコストを出力。デフォルト: false
--vehroute-output.intended-depart <BOOL>
--vehroute-output.route-length <BOOL>
--vehroute-output.write-unfinished <BOOL>
--vehroute-output.skip-ptlines <BOOL>
--link-output <FILE>
--railsignal-block-output <FILE>
--bt-output <FILE>
--lanechange-output <FILE>
--lanechange-output.started <BOOL>
--lanechange-output.ended <BOOL>
--stop-output <FILE>
--save-state.times <INT>
--save-state.period <TIME>
--save-state.prefix <FILE>
--save-state.suffix {{ DT_STRING }}
--save-state.files <FILE>

時間

オプション 説明
-b <TIME>
--begin <TIME>
開始時刻を秒単位で指定する。シミュレーションは指定された時刻から始まる。デフォルト: 0
-e <TIME>
--end <TIME>
終了時刻を秒単位で指定する。シミュレーションはこの時刻で終了する。デフォルト: -1
--step-length <TIME> 各ステップの長さを秒単位で指定する。デフォルト: 1

処理工程

オプション 説明
--step-method.ballistic <BOOL> 車両の位置更新に弾道型手法を使うか(デフォルト半暗黙のオイラー手法)。デフォルト: false
--threads <INT> 並列シミュレーションに用いるスレッド数。デフォルト: 1
--lateral-resolution <FLOAT>
-s <TIME>
--route-steps <TIME>
--no-internal-links <BOOL>
--ignore-junction-blocker <TIME>
--ignore-route-errors <BOOL>
--ignore-accidents <BOOL>
--collision.action {{ DT_STRING }}
--collision.stoptime <TIME>
--collision.check-junctions <BOOL>
--collision.mingap-factor <FLOAT>
--max-num-vehicles <INT>
--max-num-teleports <INT>
--scale <FLOAT>
--time-to-teleport <TIME>
--time-to-teleport.highways <TIME>
--waiting-time-memory <TIME>
--max-depart-delay <TIME>
--sloppy-insert <BOOL>
--eager-insert <BOOL>
--random-depart-offset <TIME>
--lanechange.duration <TIME>
--lanechange.overtake-right <BOOL>
--tls.all-off <BOOL>
--tls.acutuated.show-detectors <BOOL>
--time-to-impatience <TIME>
--default.action-step-length <FLOAT>
--default.carfollowmodel {{ DT_STRING }}
--default.speeddev <FLOAT>
--default.emergencydecel {{ DT_STRING }}
--emergencydecel.warning-threshold <FLOAT>
--pedestrian.model {{ DT_STRING }} 歩行者のモデルを指定する['noninteracting', 'striping', 'remote']。デフォルト: striping
--pedestrian.striping.stripe-width <FLOAT>
--pedestrian.striping.dawdling <FLOAT> 'striping'モデルに仕様するランダムな減速[0, 1]の因子を決める。デフォルト: 0.2
--pedestrian.striping.jamtime <TIME>
--pedestrian.remote.address {{ DT_STRING }} 外部シミュレーション用のアドレス(ホスト:ポート)を指定する。デフォルト: localhost:9000

経路設定

オプション 説明
--routing-algorithm {{ DT_STRING }} 経路設定のアルゴリズムを指定する['dijkstra', 'astar', 'CH', 'CHWrapper']。デフォルト: dijkstra
--weights.random-factor <FLOAT>
--weights.minor-penalty <FLOAT>
--astar.all-distances <FILE>
--astar.landmark-distances <FILE>
--pesontrip.walkfactor <FLOAT>
--pesontrip.transfer.car-walk {{ DT_STRING }}
--device.rerouting.probability <FLOAT>
--device.rerouting.explicit {{ DT_STRING }}
--device.rerouting.deterministic <BOOL>
--device.rerouting.period <TIME>
--device.rerouting.pre-period <TIME>
--device.rerouting.adaptation-weight <FLOAT>
--device.rerouting.adaptation-steps <INT>
--device.rerouting.adaptation-interval <TIME>
--device.rerouting.with-taz <BOOL>
--device.rerouting.init-with-loaded-weights <BOOL>
--device.rerouting.threads <INT>
--device.rerouting.synchronize <BOOL>
--device.rerouting.output <FILE>
--person-device.rerouting.probability <FLOAT>
--person-device.rerouting.explicit {{ DT_STRING }}
--person-device.rerouting.deterministic <BOOL>
--person-device.rerouting.period <TIME>

レポート

オプション 説明
-v <BOOL>
--verbose <BOOL>
--print-options <BOOL> 処理前にオプションの値を出力する。デフォルト: false
-? <BOOL>
--help <BOOL>
-V <BOOL>
--version <BOOL>
-X {{ DT_STRING }}
--xml-validation {{ DT_STRING }}
--xml-validation.net {{ DT_STRING }}
-W <BOOL>
--no-warnings <BOOL>
-l <FILE>
--log <FILE>
--message-log <FILE>
--error-log <FILE>
--duration-log.disable <BOOL> 各ステップのパフォーマンスレポートを無効化する。デフォルト: false
--duration-log.statistics <BOOL> 車両の移動に関する統計を有効化する。デフォルト: false
--no-step-log <BOOL> 現在のシミュレーションステップでのコンソール出力を無効化する。デフォルト: false

排気ガス

オプション 説明
--phemlight-path <FILE>
--device.emissions.probability <FLOAT>
--device.emissions.explicit {{ DT_STRING }}
--device.emissions.deterministic <BOOL>

通信

オプション 説明
--device.btreceiver.probability <FLOAT>
--device.btreceiver.explicit {{ DT_STRING }}
--device.btreceiver.deterministic <BOOL>
--device.btreceiver.range <FLOAT>
--device.btreceiver.all-recognitions <BOOL>
--device.btreceiver.offtime <FLOAT>
--device.btsender.probability <FLOAT>
--device.btsender.explicit {{ DT_STRING }}
--device.btsender.deterministic <BOOL>

バッテリー

オプション 説明
--device.battery.probability <FLOAT> 車両がバッテリーデバイスを持っている確率。デフォルト: -1
--device.battery.explicit {{ DT_STRING }}
--device.battery.deterministic <BOOL>

Example Device

オプション 説明
--device.example.probability <FLOAT>
--device.example.explicit {{ DT_STRING }}
--device.example.deterministic <BOOL>
--device.example.parameter <FLOAT>

Ssmデバイス

オプション 説明
--device.ssm.probability <FLOAT>
--device.ssm.explicit {{ DT_STRING }}
--device.ssm.deterministic <BOOL>
--device.ssm.measures {{ DT_STRING }}
--device.ssm.thresholds {{ DT_STRING }}
--device.ssm.trajectories <BOOL>
--device.ssm.range <FLOAT>
--device.ssm.extratime <FLOAT>
--device.ssm.file {{ DT_STRING }}
--device.ssm.geo <BOOL>

Tocデバイス

オプション 説明
--device.toc.probability <FLOAT>
--device.toc.explicit {{ DT_STRING }}
--device.toc.deterministic <BOOL>
--device.toc.manualType {{ DT_STRING }}
--device.toc.automatedType {{ DT_STRING }}
--device.toc.responseTime <FLOAT>
--device.toc.recoveryRate <FLOAT>
--device.toc.lcAbstinence <FLOAT>
--device.toc.initialAwareness <FLOAT>
--device.toc.mrmDecel <FLOAT>
--device.toc.ogNewTimeHeadway <FLOAT>
--device.toc.ogNewSpaceHeadway <FLOAT>
--device.toc.ogMaxDecel <FLOAT>
--device.toc.ogChangeRate <FLOAT>
--device.toc.useColorScheme <BOOL>
--device.toc.file {{ DT_STRING }}

Driver State Device

オプション 説明
--device.driverstate.probability <FLOAT>
--device.driverstate.explicit {{ DT_STRING }}
--device.driverstate.deterministic <BOOL>
--device.driverstate.initialAwareness <FLOAT>
--device.driverstate.errorTimeScaleCoefficient <FLOAT>
--device.driverstate.errorNoiseIntensityCoefficient <FLOAT>
--device.driverstate.speedDifferenceErrorCoefficient <FLOAT>
--device.driverstate.headwayErrorCoefficient <FLOAT>
--device.driverstate.speedDifferenceChangePerceptionThreshold <FLOAT>
--device.driverstate.headwayChangePerceptionThreshold <FLOAT>
--device.driverstate.minAwareness <FLOAT>
--device.driverstate.maximalReactionTime <FLOAT>

Bluelight Device

オプション 説明
--device.bluelight.probability <FLOAT>
--device.bluelight.explicit {{ DT_STRING }}
--device.bluelight.deterministic <BOOL>
--device.bluelight.parameter <FLOAT>

Fcd Device

オプション 説明
--device.fcd.probability <FLOAT>
--device.fcd.explicit {{ DT_STRING }}
--device.fcd.deterministic <BOOL>
--device.fcd.period {{ DT_STRING }}
--person-device.fcd.probability <FLOAT>
--person-device.fcd.explicit {{ DT_STRING }}
--person-device.fcd.deterministic <BOOL>
--person-device.fcd.period {{ DT_STRING }}

Traci Server

オプション 説明
--remote-port <INT>
--num-clients <INT>

Mesoscopic

オプション 説明
--mesosim <BOOL>
--meso-edgelength <FLOAT>
--meso-tauff <TIME>
--meso-taufj <TIME>
--meso-taujf <TIME>
--meso-taujj <TIME>
--meso-jam-threshold <FLOAT>
--meso-multi-queue <BOOL>
--meso-junction-control <BOOL>
--meso-junction-control.limited <BOOL>
--meso-tls-penalty <FLOAT>
--meso-minor-penalty <TIME>
--meso-overtaking <BOOL>
--meso-recheck <TIME>

Random Number

オプション 説明
--random <BOOL>
--seed <INT>
--thread-rngs <INT>

Gui Only

オプション 説明
-g <FILE>
--gui-settings-file <FILE>
-Q <BOOL>
--quit-on-end <BOOL>
-G <BOOL>
--game <BOOL>
--game.mode {{ DT_STRING }}
-S <BOOL>
--start <BOOL>
--breakpoints {{ DT_STRING }}
--edgedata-files <FILE>
-D <BOOL>
--demo <BOOL>
-T <BOOL>
--disable-textures <BOOL>
--registry-viewport <BOOL>
--window-size {{ DT_STRING }}
--window-pos {{ DT_STRING }}
--tracker-interval <FLOAT>
--osg-view <BOOL>
--gui-testing <BOOL>
--gui-testing-debug <BOOL>

入力ファイルの読みこみ順序

入力ファイル中で定義されたシミュレーションオブジェクトA(例: 車)が他のシミュレーションオブジェクトB(例: 車両タイプ)を参照している場合、オブジェクトBは必ずAより前に読みこまれるファイルか、Aと同じ入力ファイルのAより前の行に書かれていなければなりません。

追加ファイルのフォーマット

--additional-files <FILE>オプションで追加されるファイルは、交通信号検知器種々の速度標識バス停など幅広いネットワーク要素を含んでいます。 こうしたファイルは

 <additional>
    <inductionLoop id="myLoop1" lane="foo_0" pos="42" freq="900" file="out.xml"/>
    <inductionLoop id="myLoop2" lane="foo_2" pos="42" freq="900" file="out.xml"/>

    <busStop id="station1" lane="foo_0" startPos="5" endPos="20"/>

    <vType id="bus" maxSpeed="20" length="12"/>
 </additional>

補助資料