用SUMO进行交通模拟
“城市交通模拟”(SUMO)是一个开源、高度可移植、微观和连续的交通模拟包,旨在处理大型网络(SUMO 文档)。
TraCI 是“交通控制接口”模块的简称,它可以访问正在运行的道路交通模拟,以检索模拟对象的值并“在线”操纵其行为(TraCI 文档)。
1、安装Python
从这里下载并安装 Python。
2、安装SUMO
从这里下载并安装 Windows 版SUMO。
3、准备SUMO配置文件
在此练习中,在 user1 主目录中创建文件夹 SUMO(osm.net.xml、osm.passenger.trips.xml、osm.poly.xml、osm.sumocfg.xml 和 osm.view.xml)
4、安装所需的包
我们需要 TraCI 包来访问 SUMO。
我们还需要 sumolib 包来帮助我们找到主机中的 sumo 二进制文件位置。
pip install traci sumolib
5、运行 TraCI
import sumolib
sumobin=sumolib.checkBinary('sumo')
traci.start([sumobin,'-c','osm.sumocfg'])
还可以通过 Jupyter 运行 TraCI(使用命令 pip install jupyterlab 安装 Jupyter,然后运行命令 jupyter lab):
6、使用谷歌Colab
注:这是一个实验。
安装SUMO:
# install SUMO
!add-apt-repository ppa:sumo/stable -y
!apt-get update -y
!apt-get install sumo sumo-tools sumo-doc
#Install Traci
!pip install traci
!pip install sumolib
#Declare the environment variable, SUMO_HOME
#import os
#os.environ['SUMO_HOME'] = "/usr/share/sumo"
运行TraCI:
import sumbolib
import traci
# Connect to SUMO simulation
sumobin=sumo
traci.start([sumobin,'-c','osm.sumocfg'])
# Simulation loop
step = 0
while step < 1000:
traci.simulationStep()
# Your simulation logic here
step += 1
# Close TraCI connection
traci.close()
原文链接:Road Traffic Simulation Using SUMO, TraCI, and Python
BimAnt翻译整理,转载请标明出处