SUMO学习入门(一)SUMO介绍
声明:该文章为博主转载自知乎用户:侘寂升平,侵删!
非常感谢知乎朋友无私分享的sumo系列文章,给了我很多的指导!欢迎读者关注该博主!
以下为转载正文:
在过去的两个月间我从零入手学习了SUMO,并基于SUMO平台和Python语言实现了自己的一篇论文模型的仿真。温故而知新,就立足于现在的基础写几篇总结作为共勉,若有疑问还请大家多指教。
图1 SUMO仿真界面
一. 为什么要学习SUMO
SUMO,全称Simulation of Urban Mobility,是开源、微观、多模态的交通仿真软件,发展始于2000年。它纯粹是微观的,可以针对每辆车进行单独控制,因此非常适合交通控制模型的开发。学习SUMO是一个趋势,但是会涉及路网文件、车辆文件等文件的编写,所以最好有些编程基础,在理解的基础上套用就足以实现一些简单的仿真。总结来说,SUMO有以下优点:
开源,容易获取
易提取车辆与道路信息
自带有很多跟驰模型和换道模型(如IDM、ACC、CACC跟驰模型)
VISSIM无法进行模型的开发,而SUMO可以利用TraCI((Traffic Control Interface))接口用Python语言实现模型开发
可以导入VISUM, Vissim, Shapefiles, OSM, RoboCup, MATsim, OpenDRIVE, and XML-Descriptions(可导入地图)
二. 我怎么学习SUMO
同样作为交通仿真软件,SUMO的学习资料比VISSIM就少很多,并且网上并没有实际的模型开发案例,所以要从零开始实现模型仿真很是头疼,在模型实现的过程中很多都是靠着直接学习Python的经验,也无法与他人验证。那么在我刚开始学习SUMO这个软件首先是了解了它的一些基础操作,知道了如何实现一个简单的仿真,在此基础上(这里要表白师兄师姐)不断探索,碰壁了好多次,反正最后实现效果还不错。在之后的文章也会引入些自己的模型案例。在此列一些比较好的学习平台:
- SUMO官方网站:利用Chrome的网页一键翻译同步英文学习 (最主要的学习工具)
https://sumo.dlr.de/docs/index.html
- B站up主
酷酷的风暴之灵(SUMO入门非常好,它还有对应的学习QQ群)网址链接https://space.bilibili.com/110602843?from=search&seid=6972657569966499773
二胡的日常 网址链接
https://www.bilibili.com/video/BV1H7411F76Bfrom=search&seid=18074238600246103248
- CSDN,哪里不会查哪里
基本上就靠着这三个平台磕磕绊绊建了模。
图2 SUMO官网
三. SUMO仿真的简单实现
3.1 SUMO下载
SUMO的下载在它的官网上就可以直接下,并且解压了之后可以直接用,我用的版本是1.3.1。它的安装包里有SUMO-GUI、NETCONVERT、NETDIT、DUAROUTER等应用,我在桌面上建立了netdit.exe和sumo-gui.exe两个程序的快捷方式,其中NETEDIT是用于绘制路网文件和生成需求的,生成路网文件画好之后储存即可生成.net.xml文件,SUMO-GUI是用于仿真模拟的。
3.2 环境变量的设置
使用TraCI接口的话需要先设置环境变量,官网上对环境变量的设置也有所说明,具体见下图3。概括来说在环境变量界面选择用户变量-path-编辑-新建“D:\software\sumo\bin”(取决于下载位置);在用户变量中新建-SUMO_HOME-增加值"D:\software\sumo"(取决于下载位置)。
图3 环境变量设置
3.3 最简单仿真实现流程
基本流程:生成道路文件(.net.xml)——生成车辆文件(.rou.xml)——将车辆文件和道路文件写入.sumocfg文件——在SUMO-GUI中打开.sumocfg文件即可开始仿真
以上文件可用记事本写,也可用Spyder或XMLSpy写。
图4 .sumocfg文件展示
四. SUMO的缺点
展示界面不美观
换道模型少(这点我没特殊感受)
新增或改变跟驰模型需要较难的操作
SUMO学习入门(一)SUMO介绍相关推荐
- sumo学习心得——让sumo跑起来
刚看到sumo,我的心态是崩溃的,网上的资料也很少,不知道如何下手.好在本蓝灵机一动,找到了示例文件,模仿着弄了一下,成功跑了起来. 首先,一个仿真模型需要的基本文件如下: 网上冲浪的时候发现很多选手 ...
- sumo学习——sumo介绍及安装
sumo介绍 "城市交通仿真"(SUMO)是一个开源.高度便携.微观和连续的交通仿真软件包,旨在处理大型网络.它允许包括行人在内的多式联运仿真,并配有一套用于场景创建的大型工具.它 ...
- Sumo学习日记 - day1 从traci开始
Sumo学习日记 之前经常使用sumo,但是网络上相关教程较少,且并没有行成系统的教学.官方文档教育效果很棒,但是对于想学习sumo这个软件的萌新来说好像有点不友好,所以在这里开一个专题 主要介绍su ...
- 【SUMO学习】初级 Quick Start
参考自官网教程:https://sumo.dlr.de/docs/Tutorials/quick_start.html 目录 一.Network 1. 节点和边的构建 2. 修改车道数 3. 修改道路 ...
- 深度学习入门之PyTorch学习笔记:深度学习介绍
深度学习入门之PyTorch学习笔记:深度学习介绍 绪论 1 深度学习介绍 1.1 人工智能 1.2 数据挖掘.机器学习.深度学习 1.2.1 数据挖掘 1.2.2 机器学习 1.2.3 深度学习 第 ...
- SUMO学习日志(一)SUMO安装
SUMO学习(一): 在sumo官网(https://sumo.dlr.de/docs/Downloads.php)提供了windows,linux等平台的安装教程. 这里以windows为例,可以直 ...
- SUMO学习(二)创建路网
SUMO学习(二): 创建路网 学习内容: netconvert转换第三方源 OSM Overpass API query page下载城市地图 OSMWebWizard.py openstreetm ...
- 干货|《深度学习入门之Pytorch》资料下载
深度学习如今已经成为了科技领域中炙手可热的技术,而很多机器学习框架也成为了研究者和业界开发者的新宠,从早期的学术框架Caffe.Theano到如今的Pytorch.TensorFlow,但是当时间线来 ...
- 福利丨一门面向所有人的人工智能公开课:MIT 6.S191,深度学习入门
对初学者来说,有没有易于上手,使用流行神经网络框架进行教学的深度学习课程?近日,麻省理工学院(MIT)正式开源了在线介绍性课程「MIT 6.S191:深度学习入门」.该课程包括一系列有关神经网络及其在 ...
最新文章
- python的主函数如何书写_Python程序的入口在哪里?main函数的恰当写法
- linux+bbu电池模块,服务器Raid卡电池自动充电
- 一个SAP老司机多年的中间件使用心得
- C#操作快捷方式(获取快捷方式属性、创建快捷方式)
- 《你必须掌握的Entity Framework 6.x与Core 2.0》书籍出版
- 动态表格数据序号从1开始_EXCEL对面的表姐看过来,你真的会给表格添加序号吗?...
- 近期计算机视觉算法竞赛汇总—总奖池超300万人民币
- Hadoop(六)搭建分布式HBase集群
- Bootstrap文件上传插件File Input的使用
- 软件架构之前后端分离与前端模块化发展史
- 记参加 2022 Google开发者大会
- 熊猫酒仙服务器位置,刀塔传奇里熊猫酒仙全面分析
- xkcd目录_使用随机XKCD漫画作为您的桌面墙纸
- android系统证书导入工具,添加Fiddler/Mitmproxy证书为安卓系统证书
- 学计算机女生考研什么专业好就业,适合女生考研易就业的十大专业有哪些
- python之turtle库学习(海龟图形)
- java部门管理_系统管理模块_部门管理_实现基本的增删改查功能
- SharePoint 2010管理中心创建网站集
- ThingsBoard——v3.3.3源码编译
- iOS游戏开发开源库总结