第1章:SUMO安装与环境配置
说实话,很多新手学SUMO,第一步就卡在安装上。我见过太多人花了一整天装环境,结果连个demo都跑不起来。这一章,我就带你把这关过了。
1.1 多平台安装:选对路子
SUMO支持Windows、Linux、macOS三大平台。我个人习惯在Linux上做仿真,但日常写脚本还是在Windows上方便。你根据自己情况选就行。
Windows安装
最简单的方式——直接下载安装包。去SUMO官网找到Windows版本,下载后双击运行。注意安装路径不要带中文,也别有空格。我建议装到 C:\SUMO 这种简单目录下。
Linux安装
Ubuntu用户最省心。打开终端,敲一行命令:
sudo apt-get install sumo sumo-tools sumo-doc
CentOS或Fedora用户可以用:
sudo dnf install sumo
嗯,这里要注意——Linux源里的版本可能不是最新的。如果你需要最新特性,建议从源码编译。我在项目中就遇到过源里版本太老,缺少某个关键API的情况,最后只能自己编译。
macOS安装
用Homebrew最方便:
brew install sumo
如果你用Mac M1/M2芯片,可能会遇到一些兼容性问题。我建议先试试Rosetta模式,不行再考虑源码编译。
1.2 环境变量设置:让系统找到SUMO
装完只是第一步。你得让系统知道SUMO在哪。说白了,就是配环境变量。
Windows环境变量
右键「此电脑」→「属性」→「高级系统设置」→「环境变量」。在系统变量里找到 Path,添加SUMO的bin目录。比如:
C:\SUMO\bin
再新建一个变量 SUMO_HOME,值设为SUMO的安装根目录:
C:\SUMO
Linux/macOS环境变量
编辑 ~/.bashrc 或 ~/.zshrc,添加:
export SUMO_HOME=/usr/share/sumo
export PATH=$PATH:$SUMO_HOME/bin
然后执行 source ~/.bashrc 让它生效。
echo $SUMO_HOME,如果能正确输出路径,说明配好了。
1.3 Python接口(TraCI)依赖安装
TraCI是SUMO和Python之间的桥梁。你想用Python控制仿真,就得装这个。我在项目中几乎全靠TraCI写自动化脚本,手动点GUI?太慢了。
首先确保你装了Python 3.6以上版本。然后安装SUMO自带的Python包:
pip install sumo
或者直接从源码装:
cd $SUMO_HOME/tools
pip install .
还需要几个常用库,我建议一次性装好:
pip install traci sumolib xmltodict
1.4 验证安装成功
装完别急着跑。先做几个简单测试,确保一切正常。
测试1:命令行工具
打开终端,输入:
sumo --version
如果输出版本号,比如 SUMO 1.18.0,说明安装成功。
测试2:运行示例
SUMO自带了一些示例文件。找到它们:
cd $SUMO_HOME/docs/examples/sumo
sumo -c demo.sumo.cfg
你应该能看到SUMO GUI弹出来,一辆辆小车在跑。我第一次看到这个画面时,还挺有成就感的。
测试3:TraCI接口
写个简单的Python脚本测试:
import traci
import sumo
# 启动SUMO仿真
sumoBinary = sumo.checkBinary('sumo-gui')
traci.start([sumoBinary, "-c", "demo.sumo.cfg"])
# 跑一步仿真
traci.simulationStep()
# 获取车辆数量
vehicle_count = traci.vehicle.getIDCount()
print(f"当前车辆数:{vehicle_count}")
# 关闭连接
traci.close()
如果没报错,恭喜你——环境配好了。
1.5 本章知识体系
下面这张图帮你理清本章的核心逻辑:
这张图把本章内容串起来了。安装、配置、接口、验证——四步走完,环境就稳了。我建议你按这个顺序来,别跳步。