在我的交通模拟网络中,我有几段高速公路,包括十条相连的道路(例如,id为1到10)。我想尽可能多地随机生成满足以下要求的流程:
我已阅读过SUMO Simulation/Randomness的文档,但仍然不知道如何满足上述要求。任何建议都表示赞赏。
答案 0 :(得分:2)
您应该像这样
在路径文件中定义流程<routes>
<flow id="myflow" begin="0" end="3600" number="1000" from="1" to="10"/>
</routes>
(根据您的需要调整开始和结束时间)。你把它放在一个名为myflow.rou.xml的文件中,并像这样调用duarouter
$ duarouter -n mynet.net.xml -r myflow.rou.xml --randomize-flows -o myroutes.rou.xml
然后,您可以在模拟中使用网络加载生成的路线。
要使车辆类型随机化,最简单的方法是为默认车辆类型分配:
<additional>
<vTypeDistribution id="DEFAULT_VEHTYPE">
<vType id="1" length="1"/>
<vType id="2" length="2"/>
<vType id="3" length="3"/>
</vTypeDistribution>
</additional>
您当然可以添加更多参数而不仅仅是长度,还可以添加概率。将其保存在单独的文件mytypes.add.xml中,并在运行模拟时将其另外加载。