如果给定固定的车辆编号,如何在SUMO模拟中随机生成流量?

时间:2018-04-11 14:08:26

标签: omnet++ veins sumo

在我的交通模拟网络中,我有几段高速公路,包括十条相连的道路(例如,id为1到10)。我想尽可能多地随机生成满足以下要求的流程:

  1. 车辆总数是固定的,例如1000。
  2. 车辆的出发时间在模拟时间内是随机的。
  3. 所有车辆预计从1号公路开始,到10号公路结束(如果达到模拟时间,则不必到达)。
  4. 如果车辆的类型也可以随机化会更好。
  5. 我已阅读过SUMO Simulation/Randomness的文档,但仍然不知道如何满足上述要求。任何建议都表示赞赏。

1 个答案:

答案 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中,并在运行模拟时将其另外加载。

相关问题