【SUMO学习】初级 Driving in Circles

目录

一、Network

二、Demand

(一) 实现车流从edge1 -> edge2

(二) 实现车流环状行驶


目标:创建一个圆环,让车不停地在圆环上行驶,如图所示。

一、Network

1. 构建环状的路网结构

2. 从圆环中随机选两条边,作为车辆行驶的起点和终点。在Inspect模式下选中两条边,并修改其id为"edge1"和"edge2"

二、Demand

(一) 实现车流从edge1 -> edge2

1. 编写circle.rou.xml文件,定义车辆类型和车流。

车流flow中type="car"指的是vType定义的passenger car;number="5"指的是该车流有5辆车;from指车流行进的起点,to指终点。

<routes>
	<vType id="car" type="passenger" length="5" accel="3.5" decel="2.2" sigma="1.0"/>
	<flow id="carflow" type="car" beg="0" end="0" number="5" from="edge1" to="edge2"/>
</routes>

2. 编写circle.sumocfg,配置仿真环境

注:所有涉及到的配置文件(circle.net.xml、circle.sumocfg等),都要保存在同一个文件夹内

<configuration>
	<input>
		<net-file value="circle.net.xml"/>
		<route-files value="circle.rou.xml"/>
	</input>
</configuration>

3. 用sumo-gui.exe打开circle.sumocfg文件,启动仿真环境

 

(二) 实现车流环状行驶

1. 上面的方法提供了车流从起点行驶到终点的方法,为了进一步实现环形行驶,需要再定义一个circle.add.xml文件如下:

<additionals>
	<rerouter id="rerouter_0" edges="edge1">
		<interval end="1e9">
			<destProbReroute id="edge2"/>
		</interval>
	</rerouter>
	<rerouter id="rerouter_1" edges="edge2">
		<interval end="1e9">
			<destProbReroute id="edge1"/>
		</interval>
	</rerouter>
</additionals>

通过定义两个rerouter实现循环路径。定义rerouter_0,汽车达到edge1的时候,让其行驶到edge2;定义的rerouter1则刚好相反,汽车达到edge2的时候,让其行驶到edge1。因此就可以实现interval时间内,车流不断循环行驶的效果。

<rerouter>中的edges指起点,<destProbReroute>指终点;<interval>指运行时长。

2. 除了添加circle.add.xml文件,还要修改circle.sumocfg如下:

添加对于additional文件的引用。

<configuration>
	<input>
		<net-file value="circle.net.xml"/>
		<route-files value="circle.rou.xml"/>
		<additional-files value="circle.add.xml"/>
	</input>
</configuration>

3. 再次仿真的效果如下 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Sumo是一种源自日本的传统摔跤运动,在世界范围内越来越受到关注和喜爱。如果想要学习sumo,以下是一些学习资料的汇总。 1. 图书:有许多关于sumo的图书可供学习。其中一本经典的书籍是《相扑-百科全书》,它详细介绍了相扑的历史、规则、技巧和文化背景。此外,还有一些介绍相扑训练和比赛策略的教程书籍。 2. 视频教程:许多分享sumo技巧和战术的教学视频可以在网络上找到。这些视频通常由专业相扑选手或经验丰富的教练拍摄,在视频中他们会解释和演示各种技术动作和比赛战术。 3. 相扑训练营:参加相扑训练营是学习sumo的好方法。这些训练营通常由经验丰富的教练和专业选手指导,并提供专业的指导和训练设施。参加训练营可以让学习者接触到真实的sumo训练环境,并与其他学习者互动交流。 4. 在线论坛和社区:加入在线的sumo讨论论坛和社区是与其他相扑爱好者交流和学习的好途径。在这些论坛上,你可以提问问题、分享经验,并从其他人的回答和建议中获取帮助。 5. 实践:最重要的学习sumo的方法是实践。找到当地的sumo俱乐部或团体,参与他们的训练和比赛。通过与其他学习者和专业选手一起练习和比赛,你将更加熟悉sumo的技巧和规则,并提高自己的技能水平。 总结来说,要学习sumo,可以利用图书、视频教程、参加训练营、加入在线社区和通过实践来提高自己的技能。这些资源将帮助你更好地了解sumo的规则和文化,并提供专业的指导和交流机会。 ### 回答2: Sumo学习资料汇总可以包括以下内容: 1. 书籍:有很多关于Sumo的书籍可以作为学习资料,其中一些经典的包括《Sumo大将》、《Sumo的哲学》等。这些书籍可以帮助我们了解Sumo的起源、发展历史以及训练技巧等方面知识。 2. 视频教程:有许多Sumo比赛的录像可以通过互联网观看,这些视频可以帮助我们学习Sumo的比赛规则、技巧以及角力的策略等方面知识。同时,还有一些专门的Sumo教学视频,可以教授一些基本的动作和技巧。 3. 网络文章和博客:有很多Sumo爱好者在网络上分享他们的经验和观点,通过搜索相关的关键词,我们可以找到很多有关Sumo的文章和博客。这些文章可以帮助我们了解Sumo的历史背景、技巧训练以及相关比赛等方面内容。 4. Sumo俱乐部和培训班:在一些大城市,可以找到一些Sumo俱乐部或者培训班,这些地方提供专业的指导和培训,可以帮助我们系统地学习Sumo的知识和技巧。在这些场所,我们可以与其他Sumo爱好者一起训练,共同进步。 总而言之,想要学习Sumo,除了了解比赛规则之外,还需要了解Sumo的起源和发展、训练技巧以及背后的哲学理念等方面知识。通过阅读书籍、观看视频、阅读网络文章、参加Sumo俱乐部等方式,我们可以获取丰富的学习资料,提升自己的Sumo水平。 ### 回答3: sumo 是一种名为 "Simulation of Urban MObility" 的交通仿真软件,它被广泛应用于交通规划和研究领域。以下是 sumo 学习资料的汇总: 1. 官方文档和教程:sumo 官方网站上提供了详尽的文档和教程,包括安装指南、用户手册、示例文件等。这些资料可以帮助初学者快速上手 sumo,掌握基本的使用方法和功能。 2. 在线视频教程:在互联网上可以找到许多 sumo 的视频教程,这些教程通常由专业人士制作,通过实例演示 sumo 的使用和各种功能。观看视频教程可以更直观地理解 sumo 的操作和原理。 3. 书籍和论文:一些交通规划和仿真领域的专业书籍和学术论文也涉及到 sumo 的应用和技术细节。阅读这些书籍和论文可以深入了解 sumo 的背景知识和进阶技巧。 4. 开发者社区和论坛:sumo 有一个活跃的开发者社区和官方论坛,用户可以在这些平台上提问、讨论和分享关于 sumo 的问题和经验。通过参与讨论,用户可以学习其他人的使用经验,解决疑惑,并与其他 sumo 用户建立联系。 5. 源代码和示例文件:sumo 是开源软件,其源代码可以在官方网站上下载。对于对编程有一定了解的用户,可以通过研究源代码和示例文件来深入理解 sumo 的内部工作原理和实现细节。 综上所述,初学者可以通过官方文档、在线视频教程和书籍快速入门 sumo。对于进一步学习和探索 sumo 的用户,可以参与开发者社区的讨论,阅读相关论文和源代码,提升对 sumo 的理解和应用能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值