xml控制实现sumo简单仿真(学习笔记与总结)

1.仿真路网准备及参数设置

net.xml文件+turn文件+rou文件+flow文件+sumocfg文件

2.路网net.xml文件

可以使用netedit进行简单路网编辑或者使用代码编写路网文件或者在开源地图(例如,open street map)中进行路网提取。

3.flow文件

<flowdefs>
     <flow id="f0" from='E0' begin='0' end='1000' number='1000'/>
</flowdefs>

定义车流,相关参数包括起始路段,开始时间,结束时间,以及车流量

(文件命名:flows.flows.xml)

4.turn文件

<turns>

	<interval begin="0" end="3600">
		<edgeRelation from="E0" to="E1" probability="0.2"/>
		<edgeRelation from="E0" to="E2" probability="0.3"/>
		<edgeRelation from="E0" to="E3" probability="0.5"/>
	</interval>
	
</turns>

定义交通流流向,设置各流向的概率分布

(文件命名:flows_turn.turns.xml)

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

jtrrouter --route-files=flows.flows.xml --turn-ratio-files=flows_turn.turns.xml --net-file=luwangwenjianming.net.xml --output-file=cross_turn.rou.xml --accept-all-destinations=t

使用jtrrouter命令,在路网文件路径下,使用flow文件,turn文件,路网文件,定义输出文件名称,--accept-all-destinations=t表示接受所有目的地,运行该命令,生成路由文件

(文件命名:cross_turn.rou.xml)

6.sumocfg文件

<configuration>
    <input>
        <net-file value="luwangwenjianming.net.xml"/>
        <route-files value="cross_turn.rou.xml"/>
    </input>
 
    <time>
        <begin value="0"/>
        <end value="10000"/>
    </time>
</configuration>

在sumocfg文件中定义输入的路网文件,路由文件,设置仿真时间

7.运行仿真

 打开sumocfg文件进行仿真。

 在delay中设置合适的延迟时间,运行仿真,更好观察仿真结果。

 仿真效果如下:

 (本篇文章为本人学习后的笔记总结,同时也借鉴了一些博主的文章与思路,供给像我一样入门学习的小伙伴参考,如有侵权,请随时联系,谢谢!)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值