如何在给定固定车辆编号的情况下在 SUMO 模拟中随机生成流量?
How to randomly generate flow in SUMO simulation given a fixed vehicle number?
在我的交通模拟网络中,我有几段高速公路由十条相连的道路组成(例如,id 从 1 到 10)。我想尽可能多地随机生成一个满足以下要求的流:
- 车辆总数是固定的,例如1000辆。
- 车辆的出发时间在模拟时间内是随机的。
- 所有车辆预计从 1 号路开始,到 10 号路结束(如果达到模拟时间,则不必到达)。
- 如果车辆类型也能随机化就更好了
我已经阅读了 SUMO 的文档 Simulation/Randomness,但仍然不知道如何满足上述要求。任何建议表示赞赏。
您应该像这样在路由文件中定义流程
<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 并在 运行 模拟时将其作为附加文件加载。
在我的交通模拟网络中,我有几段高速公路由十条相连的道路组成(例如,id 从 1 到 10)。我想尽可能多地随机生成一个满足以下要求的流:
- 车辆总数是固定的,例如1000辆。
- 车辆的出发时间在模拟时间内是随机的。
- 所有车辆预计从 1 号路开始,到 10 号路结束(如果达到模拟时间,则不必到达)。
- 如果车辆类型也能随机化就更好了
我已经阅读了 SUMO 的文档 Simulation/Randomness,但仍然不知道如何满足上述要求。任何建议表示赞赏。
您应该像这样在路由文件中定义流程
<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 并在 运行 模拟时将其作为附加文件加载。