所有笔记
工具教程2025年5月9 分钟阅读2,300 字
SUMO 仿真:从路网构建到信号优化的一次实践
为什么从路网开始
在 SUMO 中,一切仿真都始于一张路网。路网的质量决定了后续配时、需求、结果分析的可信度。我习惯用 OSM 作为起点,但 OSM 是为导航而生,不是为仿真而生——它包含大量无关的细节,又缺少仿真需要的车道数与转向连接。
netconvert 的取舍
bashnetconvert --osm-files area.osm.xml \ --geometry.remove --roundabouts.guess \ --ramps.guess --junctions.join \ --tls.guess-signals --tls.join \ -o net.net.xml
几个关键开关的含义:
--geometry.remove:合并共线的多余节点--ramps.guess:猜测匝道,避免主干道被错误降级--junctions.join:把复杂交叉口合并为单一节点
一个易踩的坑
OSM 中的车道数经常缺失,netconvert 会按道路等级默认推导。但这与真实情况往往差一个量级。我的做法是用 Python 脚本结合街景抽样校验,再写回 *.edg.xml。
仿真的第一原则:垃圾进,垃圾出。路网校验值得花两倍的时间。
下一步
路网就绪后,下一步是需求。我会在下一篇笔记里讲如何用 OD 矩阵与 duarouter 生成符合早晚高峰形态的流量。
工具教程交通工程研究笔记