sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法

1. 首先准备好一个构建的路网(.net.xml)文件

这里我所利用的一个路网构造如下:
sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法_第1张图片
sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法_第2张图片

2. 路由文件(.rou.xml)文件

可以在netedit里边对路网个各个道路边缘id长度以及相关参数进行配置,上述路网经过配置,将其各个边设为0、1、2、3、4、5 、6、 7,所以规划路由的时候可以直接指定就好。

  • 方法1:单车路由:通过指定车类型,然后再规定其路径,即可完成一个完整的路由规划。

<routes xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <vType id="type1" accel="0.8" decel="4.5" sigma="0.5" length="5" maxSpeed="70"/>

    <vehicle id="0" type="type1" depart="0" color="1,0,0">
      <route edges="7 5 7 5"/>
    vehicle>

routes>

通过上述方法可实现定义:一辆id为type1的,加速度、减速度、权衡因子、长度以及最大加速度分别进行设置的车型,然后通过指定这辆车的车类型、id号、仿真开始出现的时间以及车辆本身的颜色(R,G,B),最后在车辆类型里边的标签中设置仿真车辆将会通过的路径。设置完毕,sumocfg文件中将.net.xml文件 和 .rou.xml文件放在.sumocfg文件里,最后在sumo.gui中进行仿真。
以下是我的.net.xml文件 和 .rou.xml文件的前缀名称以及存放位置,根据个人不同,可取相对应名称,只要最后引入的时候正确引入即可完成仿真。


<configuration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <input>
    <net-file value=".\Networks\Base\2kflatTrafficLHD_Traci.net.xml" />
    <route-files value=".\Scenarios\Base\2kflatTrafficLHD_Traci.rou.xml" />
  input>
  <time>
    <begin value="0" />
    <end value="2000870" />
    <step-length value="0.1" />
  time>
  <processing>
    <lanechange.duration value="3" />
  processing>
  <gui_only>
    <gui-settings-file value="2kflatTrafficLHD_Traci.settings.xml" />
  gui_only>
configuration>

仿真结果过如下:生成了一辆红色(自定义颜色)的车辆。其将绕所指定的路径循环,并最后在指定的仿真时间内结束仿真。
tips:单车路由是还可以通过在后边添加多辆车辆的,比较麻烦。除此之外还可以通过flow车流,以及trip旅途。。。
sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法_第3张图片

  • 方法2:通过flow生成车流(此处通过random的四种属性来演示)
    1-通过属性probability(每秒发射一辆车的概率)来随机生成车流:

<routes xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <vType id="type1" accel="0.8" decel="4.5" sigma="0.5" length="5" maxSpeed="70"/>

	<flow id="f1" color="1,0,0" begin="0.5" end="2000868" probability="0.1" type="type1">
        <route edges="2 7 5" />
    flow>

routes>

通过flow标签生成的车流情况是:0.5秒时开始仿真,2000868s结束,设置probability为0.1,车类型为type1,路径为2 7 5;
以下是仿真效果图:
sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法_第4张图片
后续三种属性分别为
number :等间距的车辆总数
period :在该期间插入等间距的数量
vehsPerHour : 每小时等间隔的车辆数量 即成正比 可应用于上下班高峰期的模拟情况
这里就不一一演示了,读者可自行更改属性进行演示。
只需要根据需求在flow中将属性更改为对应的需求属性,(tips:probability取值范围是0-1,其他建议取整数)。
重点:这四种属性在一个flow中不可重复添加,只能添加其中一个

你可能感兴趣的:(sumo,交通流)