2024 版本变更(版本 1.20.0 和 1.21.0)

版本 1.21.0 (10.10.2024)#

Bugfixes#

  • sumo
    • 修复了在指定站点时使用边ID而非车道ID导致的无用错误消息 #15158 (1.11.0 中的回归)
    • 修复了在加载带有 repeat 属性的路径后直接加载行程时出现的无效错误 #14992 (1.20.0 中的回归)
    • 通过 access 加入边的行人不再与车辆发生碰撞 #15030 (1.20.0 中的回归)
    • personInfo 的总持续时间现在包含乘车等待时间 #14887
    • 修复了同一边上有两个站点时的跳跃相关错误 #14883
    • 修复了从状态保存/加载最大时间值的问题 #14904
    • 修复了共享空间上车辆接近迎面而来的行人时的“爬行”问题 #14920
    • 修复了警告 "aborted waiting at busStop" 中无效的 busStop ID #14929
    • 修复了行人过街处的紧急制动 #14939
    • 修复了亚秒级模拟中行人过街处的紧急制动 #14928
    • 修复了在优先行人过街处右转车辆的紧急制动 #14952
    • 修复了因不安全的插入速度导致的紧急制动 #14941
    • 修复了在使用 --step-method.ballistic 时,优先行人过街前不安全的插入速度问题 #14951
    • 修复了在停止车辆周围的变道相关死锁 #14322
    • 修复了并行路由遇到无效行程时的崩溃 #14963
    • 修复了重新路由后对已通过站点的处理 #14918
    • 修复了在铁路模拟中使用 junction-taz 时的崩溃 #14973
    • 修复了在使用 --device.rerouting.threads --weights.random-factor 时的非确定性行为 #10292
    • 电动车辆现在会在电量耗尽时发出警告 #14980
    • 修复了加载配置错误的 NEMA 控制器时的崩溃 #15001
    • 修复了加载带有 repeat 属性和单个站点的路径时的无效停止问题 #13639
    • 修复了亚车道模拟中 edgedata-output 中的无效密度 #15017
    • 修复了当 GLOSA 设备前方存在 device.glosa.range 范围内的交叉口时的无效行为 #15011
    • 在消失区域中移除 JuPedSim 行人(周期 < 1)现在可以正常工作 #14900
    • 当设置 lcCooperative=-1 时,不再进行协同速度调整 #14871
    • 修复了左侧通行网络中连续变道时的无效初始转向灯 #15058
    • 现在在连续变道模型中,当属性 lcMaxSpeedLatStanding="0" 时,避免正交滑动 #15052
    • GLOSA 设备现在遵循预期的 3 阶段速度轨迹(减速、匀速、加速),而不是(减速、加速) #15067
    • 修复了使用 HBEFA4 模型时的负排放问题 #15079
    • 修复了 vehroute-output 中重复的 'started' 和 'ended' 值 #15086
    • 修复了在停车时收到新调度时的无效出租车状态 #15080
    • 修复了使用 repeat 属性的单站点路径时的无效停止问题 #13639
    • 修复了在有变更禁止的边上进行无效重新路由的问题 #15098
    • 修复了无内部链接网络中环形交叉路口的碰撞问题 #15100
    • 修复了为交通灯加载多个程序时的无效 GLOSA 行为 #15139
    • 修复了在路段作业期间的崩溃 #15165
    • 修复了当列车被另一条边上的车辆连接时跳过站点的问题 #15166
    • 修复了在不使用 --chargingstations-output 时,包含 chargingStations 的模拟中高内存使用问题 #15238
    • 修复了模拟在有 onDemand 站点时无法完成的错误 #15263
    • 修复了基于延迟的交通灯 (delay_based) 的 laneAreaDetectors 的队列长度估计问题 #15247
    • 修复了 laneAreaDetector 结束位置检查无效的问题 #15275
    • 修复了车辆在途经点 (waypoint) 后跳过站点的错误 #15293
    • 修复了在低能见距离 (visibilityDistance) 下拉链式交叉口 (zipper) 的紧急制动问题 #15224
    • 修复了停车重定向器 (parking rerouter) 不重新路由车内人员的错误 #15276
    • 修复了在带有站点和循环路径的车辆上使用重定向器时的崩溃 #15290
    • 修复了在途经点使用 departSpeed="max" 时的低插入速度问题 #15308
    • 修复了保存状态中约束跟踪器的非确定性顺序问题 #15406
    • 修复了当重定向器间隔结束时间 < 开始时间时的无限循环问题 #15416
    • 修复了 vType 参数 "device.rerouting.probability" 无法用于防止重新路由的错误 #15288
    • edgeData 输出现在从 laneDensity 计算中排除非驾驶车道 #15383
    • rerouter closingReroute 现在在计算新路径时保留所有现有站点 #14610
    • 修复了路径终点处途经点的无效紧急停止消息 #15485
    • 修复了出租车在调度过程中消失的错误 #15508
    • 修复了加载与重新路由设备分配相关的状态时的崩溃 #15517
    • 现在在重新路由到替代 parkingArea 时会更新途经的边 #15545
    • StartUpDelay 和 ActionStepLength 现在可以一起使用 #14229
    • StartUpDelay 现在适用于小时间步长和 IDM #14289
    • 修复了在使用预预订和拼车功能的出租车时的崩溃 #15385
  • netconvert
    • 修复了猜测匝道时的崩溃 #14836 (1.20.0 中的回归)
    • 修复了当边移除影响 OSM 中定义的环形交叉口时的崩溃 #14930 (1.20.0 中的回归)
    • OSM: 修复了有轨电车线路上无效的巴士通行权限 #15301 (1.20.0 中的回归)
    • 修复了两条匝道重叠时的不良匝道几何形状 #14839
    • 修复了在使用 --ramps.guess 选项时,如果输入定义了连接则出现无效连接的问题 #14833
    • 修复了交叉口内与行人过街冲突的不安全等待位置 #14946
    • 修复了写入网络中的无效 NEMA 控制器 #15023
    • 修复了 xodr 输出中的信号精度、信号车道有效性以及零长度边的问题 #15078
    • 修复了丑陋的交叉口形状 #15103
    • 修复了自重叠的过街区域轮廓形状 #15111
    • 过街参数现在可以从 plain-xml 加载 #15135
    • 修复了在设置 --proj 选项时节点和过街形状的双重投影问题 #15136, #15137
    • 选项 --railway.signal.guess.by-stops 不再将道岔转换为信号机 #15153
    • 修复了可能导致无效行人路线的无效行人基础设施连接 #15177, #15183
    • 修复了 opendrive 导入中损坏的车道形状 #15197
    • Matsim 导入现在可以处理带有特殊字符的节点 ID #15196
    • 修复了在使用边界过滤器进行 opendrive 导入时的崩溃 #15243
    • 修复了在使用 tlLayout="alternateOneWay" 和过街区域时的崩溃 #14027
    • 从同一边到同一目标边且相互交叉的连接现在被识别为冲突 #15257
  • netedit
    • 多边形上下文菜单功能 简化形状闭合形状 再次工作 #14857 (1.6.0 中的回归)
    • 自定义交叉口形状多边形现在具有正确的上下文菜单 #14858 (1.6.0 中的回归)
    • 修复了尝试将 person 转换为 personFlow 时的崩溃 #15040 (1.19.0 中的回归)
    • 修复了在 stoppingPlaces 上对站点/途经点进行撤销/重做时的崩溃 #15249 (1.19.0 中的回归)
    • 修复了为选区编辑 person 和 container 类型时的崩溃 #15255 (1.19.0 中的回归)
    • 修复了在边模式下悬停时交叉口高亮显示的问题 #15413 (1.19.0 中的回归)
    • 修复了视图中无效的 "embededRoute" 元素 #15492 (1.19.0 中的回归)
    • 车辆类型属性对话框:guiShape 组合框现在在默认 vClass 下工作 #14859 (1.19.0 中的回归)
    • 修复了无效的 tls 链接索引 #14949 (1.20.0 中的回归)
    • 修复了在数据模式下检查和选择元素的问题 #14999 (1.20.0 中的回归)
    • 修复了在保存 NeteditConfig 时附加组件未被保存的错误 #14739 (1.20.0 中的回归)
    • "locate additional" 对话框中的 "center" 按钮再次工作 #14986 (1.20.0 中的回归)
    • 通过上下文菜单选择车道和边再次工作 #14965 (1.20.0 中的回归)
    • 检查的行程再次显示路径 #14964 (1.20.0 中的回归)
    • 选择矩形框现在再次考虑元素锁定 #15010 (1.20.0 中的回归)
    • TazRelations 可以再次被检查 #15019 (1.20.0 中的回归)
    • 修复了在连接带有过街区域的边时的崩溃 #15073 (1.20.0 中的回归)
    • 修复了在加载的网络中移除带有过街区域的交叉口时的崩溃 #15112 (1.20.0 中的回归)
    • 附加对象在特定缩放级别下不再消失 #15104 (1.20.0 中的回归)
    • 修复了校准器 (calibrators) 周围的无效虚线轮廓 #15138 (1.20.0 中的回归)
    • 修复了对 rerouter/vaporizer 和 stoppingPlace 符号的点击检测 #15280 (1.20.0 中的回归)
    • 修复了选中的 Person 和 container 的着色问题 #15254 (1.20.0 中的回归)
    • 修复了创建具有不同速度的 tranship 时的崩溃 #15339 (1.20.0 中的回归)
    • 修复了与无效 endOffset 相关的崩溃 #15317 (1.20.0 中的回归)
    • 修复了变道禁止的无效着色 #15099 (1.20.0 中的回归)
    • 修复了在移动 POI 和 parkingSpace 期间的高亮显示问题 #15509, #15512 (1.20.0 中的回归)
    • 启用了文本渲染(即 ID)的对象在任何缩放级别下始终可见 #15519 (1.20.0 中的回归)
    • 修复了在使用 "用几何点替换交叉口" 且加载了交通需求时的崩溃 #14863
    • 在检查模式下,交叉口轮廓不再隐藏链接索引 #14948
    • 修复了从静态类型更改时的无效 NEMA 控制器 #15007
    • 修复了无效的交叉口轮廓 #15002, #14488
    • 修复了在交通灯框架有活动交通灯时加载另一个网络的崩溃 #15004
    • 修复了使用 'Clean States' 后未受控的行人过街区域 #15047
    • 撤销按钮在可撤销操作后立即变为活动状态 #14770
    • 边上下文菜单功能 应用边模板 现在应用于整个选区 #14458
    • 没有边或车道的 Rerouters 和 VSS 不再被写入 #15151
    • 热键 BACKSPACE 现在可用于在 person 模式下收回站点 #14802
    • 修复了用几何点替换交叉口时的崩溃 #15233
    • edgeData 属性 writeAttributes 现在被正确写入 #15273
    • 修复了在车道上创建 POI 时的错误 #15042
    • 现在可以解析带有人类可读时间的 sumocfg #15267
    • 修复了在多条边上设置 stopOffsetException 时的问题 #15297
    • 修复了在包含 person trips 的网络中用几何点替换交叉口时的崩溃 #15286
    • 修复了在现有计划之上创建 container 的问题 #15344
    • 现在可以通过点击标志来选择/检查/删除 person 站点 #15350
    • 修复了在易变 (volatile) 重新计算和加载车辆时重新计算网络的崩溃 #15356
    • 现在可以创建仅有一条边的乘车 (ride) #15361
    • 修复了在 TAZ 上点击 Person/container 计划的问题 #15363
    • 修复了尝试在 TAZ 上移动 person 时的崩溃 #15365
    • 修复了连接带有过街区域的交叉口时的崩溃 #15328
    • 修复了在使用易变选项重新计算后丢失 TAZ 边的问题 #15401
    • 站点属性 parking 现在在 Stop 模式 下设置时生效 #15439
    • 将交叉口转换为环形交叉口时,过街区域现在被保留 #15231
    • 热键 ESC 现在可以中止创建 edgeRelation #15228
    • 在几何点上右键单击现在打开边上下文菜单 #15322
    • 修复了 E2 多车道检测器上下文菜单中 "视图中光标位置" 的无效值问题 #15064
    • 修复了在检查多个 container 时更改类型导致的崩溃 #14081
    • Person 和 container 现在可以使用任何类型的站点 #12384
    • Person 和 container 模式下的目标高亮现在在鼠标悬停在另一个 person/container 上时也能工作 #14803
    • 修复了加载大量多边形时的减速问题 #14600
    • 修复了在活动网格下合并交叉口的问题 #15483
    • 现在可以加载定义了 endPos 的 laneAreaDetector #14683
    • 复制模板现在复制 changeLeft/changeRight 属性 #15507
    • 非填充多边形的轮廓在移动后现在被重置 #15541
    • 修复了尝试创建联合 NEMA 控制器时的崩溃 #15547
    • 修复了附加元素的左侧绘制问题 #15566
  • sumo-gui
    • 如果未设置 SUMO_HOME,重载现在可以工作 #14830 (1.15.0 中的回归)
    • 修复了在具有自定义长度的边上绘制车厢时的故障 #15075 (1.17.0 中的回归)
    • 修复了将视图设置保存到注册表时的崩溃 #14909 (1.19.0 中的回归)
    • 修复了在 Windows 上使用显示缩放(即高像素密度显示器)时的菜单间距不良和图标过小问题 #14882
    • 修复了代码依赖硬编码英文菜单项导致的翻译相关崩溃 #14710
    • 修复了左侧通行网络中 chargingStation 和 ParkingArea 符号的放置问题 #14744, #14959, #15110
    • 修复了左侧通行网络中基础设施文本标签的无效角度问题 #14743, #14955
    • 修复了飞机在缩小时的无效缩放问题 #14899
    • "设置断点" 在未加载网络时不再导致崩溃 #15003
    • 消息窗口 "time link" 现在对车辆-行人碰撞警告有效 #14931
    • 修复了在 "按坡度着色边" 模式下右键单击时的崩溃 #14856
    • 修复了宽的 busStops 和 containerStops 的无效横向放置问题 #15089
    • 修复了铰接车辆在停放时的无效旋转问题 #15168
    • 改进了翻译 GUI 中可点击的消息日志 #14759
    • 添加了断点文件不存在时的警告 #3424
    • 修复了在车辆夸张显示激活时居中于乘车行人的问题 #15397
    • 修复了步行区形状随缩放不一致渲染的问题 #15424
  • meso
    • 修复了当边不允许乘用车时的无效路段属性问题 #15020
    • 修复了在使用 --meso-multi-queue 选项时的无效 laneData 问题 #15093
  • TraCI
    • 修复了在调用 vehicle.moveToXY 后忽略 vehicle.changeTargetvehicle.setRoute 调用的问题 #15123 (1.13.0 中的回归)
    • 修复了大时间输入值的处理问题 #14793
    • 修复了尝试为未出发的车辆调用 traci.vehicle.dispatchTaxi 时的崩溃 #15016
    • 修复了使用 libsumo 构造新 TraCILogic 时的无效错误 #15164
    • traci.simulation.findIntermodalRoute 现在可用于查找出租车模式路线 #15172
    • traci.vehicle.getNextTLS 现在对停放的车辆有效 #15181
    • 修复了在 meso 中调用 vehicle.getDrivingDistance2D 时的崩溃 #15404
    • vehicle.getLeader 检索现在在后续边只有 1 条车道时(例如铁路)可以超过 3000m 工作 #15418
    • 当不带 varIDs 使用 subscribeContext 时,现在使用目标域的默认属性 #15430
    • vehicle.getLanePosition 现在对停放的车辆有效 #15450
    • 设置站点参数 "expected" 现在有效 #15486
    • 设置 speedFactor 现在对使用 appendStage 和 appendWalkingStage 添加的步行阶段有效 #15518, #15527
  • tools
    • osmGet.py: 修复了从不提供 gzip 数据的服务器下载数据时的错误 #15105 (1.20.0 中的回归)
    • sumolib.net.readNet 现在适用于旧版本的 lxml 和 pathlib.Path 参数 #15422 (1.20.0 中的回归)
    • generateParkingAreaRerouters.py: 当输入文件中存在超过 parkingAreas 时不再失败 #14880
    • traceExporter.py: 修复了不一致的 trj-output #14925
    • matsim_importPlans.py: 现在正确引用所有参数以确保输出是有效的 XML #14988
    • mapDetectors.py: 不再写入无效的车道位置 #15117
    • createScreenshotSequence.py: 现在可以在连续行中使用相同的帧设置 #15352

Enhancements#

  • sumo
    • 提高了 60% 的 xml 输出写入速度 #14994, #8905
    • 为 E3 警告添加了时间戳 #14870
    • personInfo 现在写入实际的阶段出发时间而不是期望出发时间 #14886
    • 添加了选项 --max-num-persons 以在超过给定阈值时延迟 person 的插入 #14884
    • 现在在车辆中启动的 person 超过其 personCapacity 许可时给出警告 #14752
    • Person 和 container 现在支持 vType 属性 boardingFactor,该属性与车辆的 boarding- 或 loadingDuration 相乘 #14869
    • 加载的多边形可用于影响 jupedsim 代理 #14325
    • PHEMlight5 参数现在可以通过 通用参数 进行配置 #14285
    • 电动车辆现在支持 定义可变充电速率 #14860
    • 新选项 --emission-output.attributes 现在可用于自定义输出 #12850
    • Jupedsim 行人模型现在在行人过街处等待 #15012
    • EIDM 模型现在对驾驶员错误强度有一个固定的上限,以避免高加速度车辆的问题 #15066
    • GLOSA 设备现在使用 speedFactor 来设置减速时的目标速度,以改善与 carFollowModels 的交互 #15067
    • 减少了出租车设备发出的冗余 vClass 警告 #15090
    • 在路由期间为掉头添加了额外的惩罚,可通过选项 --weights.turnaround-penalty 进行配置 #4966
    • 当切换车辆类型时(通过校准器、设备或 TraCI),单个 speedFactor 现在会被调整 #15076
    • 添加了 GLOSA 选项以增加或减少安全性 #15152
    • 添加了 vType 属性 jmStopSignWait 以自定义在停车标志处的所需等待时间 #15163
    • 感应式交通灯现在支持阶段属性 earlyTarget="DEFAULT"finalTarget="DEFAULT"。这简化了默认切换规则(基于间隔)与自定义条件的结合 #14669
    • chargingStation 默认功率现在为 22kW(而不是 0) #15144
    • 添加了针对不寻常分布定义的警告 #15146
    • fcd-output 现在包含行人的 vtype #15210
    • 添加了选项 --chargingstations-output.aggregated 以写入更紧凑的输出 #15240
    • vType 属性 jmAllwayStopWait 现在可用于自定义在全向停车标志处的所需等待时间 #15428
    • time-to-teleport.disconnected 现在可以高于 time-to-teleport #15494
    • 站点属性 index 现在可用于编码在循环路径的后续边上的停止 #15503
    • 电池模型现在在 tripinfo 输出中记录耗尽事件 #15529
  • netedit
    • 交叉口和边现在具有虚拟属性 isRoundabout。这使得在网络中选择和查找所有环形交叉口变得容易 #14865
    • 编辑架空电线的模式现在警告其试验性状态 #14974
    • 在子菜单中使用复选框现在保持菜单打开 #15009
    • 不带选项加载单个文件现在支持 .sumocfg 文件 #15015
    • 添加了新的 vClass 图标 #14646
    • 转换为环形交叉口的功能现在根据传入边设置环形交叉口边的属性 #15069
    • 热键 ESC + SHIFT 可用于清除选区,无论编辑模式如何 #14481
    • 在鼠标悬停时使 person/container 计划变宽 #15337
    • 现在在创建 person 和 container 计划时显示交叉口 #15345
    • 在 InductionLoop 属性中添加了 detectPersons #15515
  • sumo-gui
    • 用于跟踪阶段的交通灯对话框现在可以滚动以查看所有链接 #3862
    • 在校准颜色到数据时(重新校准彩虹),现在支持不同的配色方案 #12483
    • 提高了右键单击时的渲染速度 #15035
    • 通过添加换行符减少了车道参数对话框的宽度 #15051
    • POI 属性 width 现在可用于配置 POI 大小(以米为单位) #15444
  • meso
    • 当使用 --meso-junction-control 选项运行时,现在会考虑 vType 属性 jmTimeGapMinor #15171
    • 出发和到达车道现在是 tripinfo 输出的一部分 #7680
  • netconvert
    • OSM 导入现在支持带单位的距离和速度(例如英尺、节) #14885
    • OSM 导入现在会在路径、节点或关系无序时发出警告 #14892
    • OSM 导入现在可以处理无轨电车路线 #14932
    • Shapefile 导入现在尊重选项 --default.spreadtype #14984
    • 添加了选项 --geometry.max-angle.fix 用于移除边内的锐角 #15221
    • 添加了选项 --default.connection.cont-pos 以更改默认的内部交叉口位置(或禁用内部交叉口) #13642
  • marouter
    • 加载的行程属性(例如 departLane 和 departSpeed)现在被保留 #15049
  • duarouter
    • 在路由期间为掉头添加了额外的惩罚,可通过选项 --weights.turnaround-penalty 进行配置 #4966
  • traci
    • 新的 sumo 选项 --keep-after-arrival TIME 在车辆到达后将其对象在内存中保留一段可配置的时间。这使得可以检索其行程的属性 #9891
    • 修复了在强制变道后变道输出中缺少的前导/跟随信息 #14912
    • chargingStation 属性现在可以修改 #12772
    • 添加了函数 edge.getBidiEdgelane.getBidiLane #15186
    • 在 vehicle、person 和 vehicletype 域中添加了函数 getMasssetMass #15258
    • 添加的 person 阶段现在支持所有站点,而不仅仅是 busStops #15281
    • Meso 模拟现在支持函数 vehicle.getSegmentIndexvehicle.getSegmentID #14681
    • 使用 --meso-lane-queue 选项的 Meso 模拟现在支持 vehicle.getLaneIndex #15341
  • tools
    • plotXMLAttributes.py: 现在可以使用特殊属性 @FILE 来简化绘制多个文件,其中每个文件提供一个值 #14843
    • plotXMLAttributes.py: 添加了选项 --robust-parser,用于处理在每个元素后没有换行符的文件 #15340
    • gtfs2pt.py: 现在如果在网络边界内未找到有效的 GTFS,则发出警告 #14876
    • addStops2Routes.py: 现在可以通过设置选项 --speed 来创建途经点 #14895
    • traceExporter.py 现在支持选项 -c-C 用于加载和保存配置文件 #14934
    • generateRailSignalConstraints.py: 为具有 'ended' 值的停放车辆添加了缺失的约束 #14609
    • generateRailSignalConstraints.py: 添加了选项 --abort-unordered.keep-actual,如果检测到超车后的站点具有 started/ended 值,则将其保留为有效 #15065
    • generateRailSignalConstraints.py: 添加了选项 --all-inactive 用于将所有约束设置为非活动状态 #15312
    • createVehTypeDistribution.py: 现在当用户仅定义了 speedFactor 时会自动写入 speedDev,以避免出现比预期更宽的分布 #15025
    • mapDetectors.py: 选项 --max-radius 现在可用于配置最大映射半径 #15118
    • mapDetectors.py: 现在可以处理带 BOM 的 CSV #15116
    • net2geojson.py: 现在可以选择性地将 numLanes 和 speed 作为属性包含 #15109
    • distributeChargingStations.py: 这是一个新工具,用于向带有 parkingAreas 的网络添加 chargingStations #14667

Miscellaneous#

  • 配置文件根元素现在特定于应用程序 #7700
  • 未知的车辆类别现在被 sumo 忽略,以确保在将来添加类别时的向上兼容性。Netconvert 和 duarouter 通过设置选项 --ignore-errors 支持此行为 #14993
  • 保存配置文件现在将环境变量作为绝对路径处理 #15022
  • sumolib.checkBinary 现在可以找到通过 pip 安装的 sumo 二进制文件 #14982
  • SUMO 游戏语言切换现在在可下载的 zip 中可以工作 #13440
  • 修复了游戏交叉场景中损坏的图像 #15083
  • DEFAULT_CONTAINERTYPE 现在使用 vClass container #15092
  • 如果未给出空间定义,parkingArea 默认的路边容量为 1(而不是 0) #15264
  • 绘图工具现在可以处理 Matplotlib 版本后缀,如 ".post1" #15372
  • 修复了文档命令示例中的无效字符 #15441
  • 修复了 libsumo 函数 Vehicle.moveTo 中不一致的参数名称 #15304
  • 现在在尝试将 carFollowModel EIDM 与 actionSteps 一起使用时会给出警告 #15557

版本 1.20.0 (07.05.2024)#

Bugfixes#

  • sumo
    • 修复了不一致的 edgeData 和 laneData 排放问题 #14209
    • 修复了使用 SSM 设备和不完整路径时的崩溃 #14201
    • 修复了在同一地点停止两次后跳跃的无效处理问题 #14324
    • 被传送的车辆不再被移动到受限制的车道上 #14168
    • 由可变限速标志 (VSS) 或 TraCI 施加的速度现在优先于 vClass 限制速度(这在 1.19 中声称已修复但未生效) #13652
    • 修复了在使用 --lateral-resolution--no-internal-links 时的崩溃 #14460
    • chargingstations-output 在电池充满时不再记录充电 #14473
    • 修复了反向行驶期间的未定义行为 #14475
    • 修复了加载带有行人过街的 NEMA 控制器时的崩溃 #14474
    • NEMA 控制器现在对缺失的绿灯阶段发出警告 #14502
    • 修复了在循环公共交通线路上 person 进入错误车辆的错误 #14526
    • 带有跳跃的路径现在支持属性 repeat #14549
    • 修复了当 person 计划包含步行或 personTrips 且起点等于终点时的崩溃 #14558
    • 修复了跳跃后的无效插入问题 #14578
    • 修复了环形交叉口的紧急制动问题 #14587
    • 交通灯检测器不再假设在模拟开始前的步骤中看到了车辆 #14590
    • 移除了当 person 使用车辆连接时不需要的警告 #14619
    • 修复了亚秒级模拟中 IDM 的无效 departSpeed 问题 #14621
    • 修复了定义泊松流 (poisson flows) 且速率低于 0.001 时的无效交通需求问题 #14664
    • 修复了加载没有 person 的 person 阶段时的崩溃(现在写入错误) #14654
    • 修复了带有人类可读时间的路由器间隔的 xsd 验证错误 #14728
    • HBEFA4 电动车辆现在可以回收能量 #14764
    • 现在在加载断开的步行时给出警告 #14779
    • 当模拟断开的步行时,在通过断开部分后步行方向现在是正确的 #14780
    • 修复了无效的行人拥堵警告 #14796
    • Taxi
      • 修复了当目的地无法到达时使用 --device.taxi.idle-algorithm taxistand 的问题 #14115
      • 来自同一 busStop 的出租车预订现在如果调度器允许则会被分组 #14612
      • 修复了模拟挂起的错误 #14821
      • 修复了出租车过早退出模拟的错误 #14819
      • 修复了从 busStop 估计无效的出租车接送时间问题 #14822
    • Railways
      • 修复了由于路由失败导致列车在反转时卡住的问题 #14332(也影响 duarouter)
      • 使用 depart="split" 插入车辆现在在短边上有效 #14359
      • 修复了在列车路径在连接后继续时的路段作业期间的碰撞问题 #14350
      • 铁路信号现在允许列车连接,其中前端连接到后部 #14349
      • 修复了带有跳跃的循环路径的无效铁路信号警告 #14554
  • netedit
    • 修复了创建 poiGeo 时的无效警告 #14425 (1.9.0 中的回归)
    • 车道标记再次渲染在交叉口气泡下方 #14417 (1.12.0 中的回归)
    • 不再为 personTrip 写入不支持的属性 "lines" #14463 (1.15.0 中的回归)
    • 修复了撤销时的崩溃 #14702 (1.15.0 中的回归)
    • 修复了从文件加载附加组件后的无效 "save" 对话框 #14464 (1.16.0 中的回归)
    • 设置对话框的大小和位置现在在会话之间存储 #14571 (1.16.0 中的回归)
    • 修复了添加边后缺少连接的问题 #14391 (1.19.0 中的回归)
    • 菜单的 Alt+热键再次工作 #14396 (1.19.0 中的回归)
    • 修复了组合框中多余的滚动条 #14412 (1.19.0 中的回归)
    • 修复了泊松流速率中的数值错误 #14648 (1.19.0 中的回归)
    • 修复了加载 vTypeDistribution 时的崩溃 #14733 (1.19.0 中的回归)
    • 修复了写入 <laneClosingReroute> 时的无效默认车道权限问题 #14348
    • 工具 plot_trajectories.py 现在可用 #14147
    • "copy type" 现在也复制车辆类别 #14444
    • 修复了尝试在 busStops 之间定义乘车 (ride) 时的崩溃 #14462
    • 修复了在路径中包含空格时使用 python 工具的问题 #14469
    • 修复了在路径中包含空格时保存 python 工具配置的问题 #14506
    • 修复了更改选项后 save-sumoconfig 按钮的无效状态 #14581
    • 将交通灯程序保存到文件时,现在写入所有属性 #14674
    • 自定义连接权限现在可以重置 #14723
    • 修复了对部分联合交通灯应用 '连接交叉口' 后的不良信号计划问题 #14797
    • 修复了 person 模式下的错误,即无法在已有 person 的短边上定义新 person #14801
  • netcovert
    • 修复了导入不完整 OSM 数据时的崩溃 #14766 (1.15.0 中的回归)
    • 不再生成信号状态序列(绿-黄-绿) #14295
    • 在 OSM 中显式定义的环形交叉口现在无论几何形状如何都具有正确的通行权 #13970
    • 修复了与选项 --dlr-navteq-output 相关的问题 #14071
    • 选项 --junctions.minimal-shape 在重新处理网络时现在保持不变 #14375
    • 修复了 OSM 导入渡轮路线时的无效权限问题 #14362
    • 修复了导入具有不寻常几何形状的 Vissim 网络时的崩溃 #14413
    • 防止在出错中止时写入无效网络 #14470
    • NEMA 交叉口在重新计算时现在保持一致 #14491
    • NEMA 交叉口现在与选项 --tls.group-signals 正确工作 #14440
    • 生成的 NEMA 控制器现在也给行人绿灯 #14501
    • 修复了处理带有行人过街的 NEMA 交叉口时的崩溃 #14555
    • 修复了 3D 网络中损坏的交叉口形状 #10645
    • 边参数在使用 --geometry.remove 选项时不再丢失 #14517
    • 修复了 ptline-output 中的无效路径 #14534
    • 自行车道默认宽度现在在 OSM 导入中应用于两个方向 #14560
    • 修复了 OSM 导入中缺少的巴士连接 #14507
    • 修复了属性 alloweddisallowed 未被最小化的错误 #14632
    • 大型环形网络结构不再被误分类为环形交叉口。大小阈值可通过选项 --roundabouts.guess.max-length 配置 #14634
    • 当新交叉口和边的默认 ID 已存在于网络中时,高速公路匝道构建不再失败 #14658
    • 修复了无效的步行区形状 #14688, #14731
    • 修复了 "Unequal lengths of bidi lane" 警告的根本原因 #14699
    • OSM: 修复了导入自行车道时的错误 #14419
    • 防止过大的交叉口合并 #14769
    • 修复了不良的节点形状 #14777
    • 增加了大型步行区的可用宽度(避免在共享空间上拥堵) #14800
  • sumo-gui
    • 修复了在 mesosim 中点击车道时的错误上下文菜单 #14457 (1.15.0 中的回归)
    • 修复了 guiShape "scooter" 的定位问题 #13691
    • 修复了在绘制铁路车厢模式下单节车辆长度的误导性可视化 #14330
    • 修复了加载不完整 gui 设置文件时边 minSize 的无效默认值 #14384
    • 当绘制为三角形时,行人不再被绘制在车辆外部 #14433
    • 来自配置文件的选项 --write-license 现在被尊重 #14494
    • 修复了卫星背景图像图块中可见的网格 #14573
    • 修复了图例名称在黑色背景下不可读的错误 #14651
    • 修复了充电站功率文本标签的位置/旋转问题 #14740
  • meso
    • 修复了出租车无法在当前路段接载行人的错误 #14500
    • traci 函数 edge.setMaxSpeed 和 lane.setMaxSpeed 在提高速度时现在可以正确工作 #14552, #14566
    • 修复了 personTrips 在使用出租车前需要步行时的无效错误 #14575
    • 修复了跨模式路由期间的无效错误 #14575
    • 修复了在车道速度更新后车辆向前跳跃的错误 #14593
  • duarouter
    • 修复了加载带有地理坐标的步行或站点时的 xsd 验证错误 #14426
    • 修复了循环公共交通上的无效跨模式路线(也影响 sumo 中的路由) #14343
  • od2trips
    • 修复了加载大型 TAZ 时的极长运行时间问题 #14784
  • TraCI
    • 修复了在加载具有默认 minDur 和 maxDur 的感应式逻辑时 trafficlight.setProgramLogic 中的错误 #14741 (1.12.0 中的回归)
    • 修复了 traci.vehicle.getNextTLS 中缺少的内部车道长度问题 #14246
    • vehicle.setStopParameter 现在支持 "jump" #14441
    • vehicle.setSpeed 不再导致在错误位置停止 #14459
    • 修复了 vehicle.getLeader 对交叉口前导的结果问题 #14617
    • 修复了使用 vehicle.replaceStop 移除站点后的无效行为 #14696
    • 修复了交通灯类型的无效 traci 常量 #14736
    • 调用 vehicle.changeTarget 时站点不再丢失 #14789
    • 修复了在活动车辆高亮显示时调用 simulation.loadState 的崩溃 #8511
    • 修复了沿路径的行驶距离计算问题 #14760
    • 修复了当车辆 minGap 改变时车道占用计算错误的问题 #13024
  • Tools
    • osmWebWizard 在配置的模式没有基础设施时不再出错中止 #14361
    • edgeDataDiff 的 xml 输出现在可以在 netedit 和 sumo-gui 中加载 #14387
    • tileGet.py 再次能够使用 mapQuest 服务 #14202
    • checkStopOrder.py: 修复了为多个位置生成表时的错误警告 #14562
    • osmGet.py: 修复了缺失的建筑形状(也影响 osmWebWizard.py) #14598
    • 修复了在 Windows 上定位二进制应用程序的问题 #14676
  • Activitygen: 修复了错误的工作时间回退时间 #14344

Enhancements#

  • sumo
    • 添加了新的 vClasses: subway, scooter, aircraft, cable_car, wheelchair, drone, container #12335
    • Access 元素支持 pos="doors" 以更改放置下车乘客的算法 #14336
    • chargingStation 现在支持属性 "parkingArea"。设置后,车辆只有在到达该 parkingArea 后才会充电 #13596
    • split/join 后继续在列车中的 Person 和 container 不再产生 boarding 或 loading 延迟 #14360
    • 添加了新属性 departPos="splitFront",这使得带有 depart="split" 的列车在原始列车的前部而不是后部创建 #14358
    • vType 属性 mass 现在在 carFollowModel="Rail" 中使用 #13055
    • 选项 --fcd-output.attributes 现在支持值 'arrivalDelay' #14447
    • Sumo 现在允许在网络或地理坐标中指定出发和到达位置 #2182
    • carFollowModel "Rail" 现在允许加载自定义的牵引和阻力模型曲线 #14258
    • speedFactorPremature 现在可以利用站点参数 "flexArrival",如果需要除预定到达时间外的参考时间 #14503
    • 现在支持将跳跃与 'via' 一起使用 #14585
    • 选项 --weights.tls-penalty 现在也适用于 tls 控制的行人过街区域 #14653
    • 选项 --vehroute-output.cost 现在适用于已路由的 person #14655
    • 电池设备 现在支持保存和加载状态 #14624
    • <personTrip> 生成的阶段现在继承 personTrip 的参数 #14513
    • 感应式交通灯在控制次要链接时现在更加灵活(减少了 "... has no controlling detector" 类型的警告) #14692
    • 现在可以通过 <param key="device.rerouting.mode" value="..."/> 在 vType 或 vehicle/trip/flow 中设置车辆路由模式。将其设置为值 8 可让车辆在插入和重新路由时忽略 rerouter 引起的权限更改。所有车辆的默认路由模式可以通过选项 --device.rerouting.mode 设置(即使对于没有此类设备的车辆) #13494, #14815
    • 具有 depart="triggered" 的 personFlow 现在可以在车辆流上分布 #14806
    • vTypes 和 parkingAreas 现在支持属性 'parkingBadges' 来控制访问权限 #14482
    • personInfo(在 tripinfo-output 中)现在包含聚合计划所有阶段的数据 #14823
    • 现在可以定义到非 containerStop 站点的 tranship #15399
  • netedit
    • 现在可以在 创建边模式 下编辑人行道和自行车道宽度 #9725
    • 添加了新的 netedit 选项 --ignore-missing-inputs #12395
    • 在 person 和 container 模式下添加了颜色图例 #13139
    • 现在 netedit 在保存前检查重复的路径是否有效 #13503
    • 如果 stopOffset 为 0,则禁用 stopOffsetException 行 #14065
    • 提高了大型网络的渲染速度 #13894
    • 为移动的元素添加了红色轮廓 #14109
    • 组合框的最大行数现在可以在 gui 设置中配置(在会话之间保持不变) #14412
    • 添加了在缩小时选择性隐藏短边的选项(默认启用以提高帧率) #14487
    • POI 和多边形现在在上下文菜单中支持 "显示光标位置/地理位置" #14812
  • sumo-gui
    • 热键 B 现在在当前时间设置断点。Alt+B 在当前时间之前设置断点 #10400
    • 列车可视化参数 locomotiveLength 现在支持值 0,以防止渲染机车 #14351
    • 新的列车可视化参数 carriageImages 接受逗号分隔的图像文件列表,以便为不同的车厢启用不同的图像 #14403
    • 减少了缩小时长车辆(例如列车)的夸张尺寸 #14423
    • 减少了渲染的自行车标记数量,以增加真实感并减少杂乱 #14545
    • 航空线现在有自己的默认颜色 #14813
    • 在车辆参数对话框的站点信息中添加了更多信息 #15395
  • netconvert
    • 边宽度现在从 OSM 导入。新选项 --ignore-widths 可用于恢复旧版行为 #4392
    • 添加了选项 -junctions.endpoint-shape 以基于自定义边端点而不是通常的几何启发法计算交叉口形状 #14341
    • 如果设置了 --shapefile.name,选项 --output.street-names 现在默认启用 #14399
    • OSM 导入现在支持导入受限转弯车道信息(例如 turn:bus:lanes) #14476
    • 从 OSM 导入了更多铁路信号,选项 --osm.railsignals 可用于对信号解释进行细粒度控制 #14483
    • 铁路信号方向现在从 OSM 导入 #14512
    • 选项 --keep-edges.postload 现在适用于基于权限和速度的边过滤器。当这些值通过补丁或公共交通处理更新时,这很有用 #14528
    • 加载的 ptLine 周期现在可以通过在 ptline-files 中加载相同的 ID 进行修补 #14586
    • OSM 导入现在将地铁导出为 vClass "subway",将空中索道导出为 "cable_car" #14644
    • 现在从 OSM 导入 access="no" #14650
    • 改进了形状计算以允许更倾斜的停车线 #14778
    • OSM 导入现在区分了带屏障的铁路道口和不带屏障的铁路道口 #14786
  • polyconvert
    • 选项 --osm.merge-relations 现在处理 "孔" #14599
    • 改进了水体和港口的导入 #14597
  • duarouter
    • 添加了对加载带地理坐标的乘车 (ride) 的支持 #14427
    • 写入 person 站点时,站点名称现在作为注释写入 #14521
    • 添加了选项 --weights.tls-penalty 以提高行程时间的可靠性 #14653
  • TraCI / libsumo
    • person-stage 属性 travelTime 现在反映了当前阶段花费的时间 #11838
    • 函数 vehicle.replaceStop(..., teleport=1) 现在可以在不启用传送的情况下使用(通过使用 "jump" 移动车辆) #14438, #14468
    • inductionloop.getIntervalOccupancy, getIntervalMeanSpeed 和 getIntervalVehicleNumber 现在可以在 meso 中检索 #7492
    • TocDevice openGap 参数现在可以通过 vehicle.setParameter 设置 #14582
    • 在 mesosim 中,当使用 --meso-lane-queue 运行时,lane.setMaxSpeed 现在只影响单个队列 #14589
    • 添加了函数 edge.getFromJunction, edge.getToJunction, junction.getIncomingEdges, junction.getOutgoingEdges 以查询网络拓扑 #14490
    • 路由模式值 ROUTING_MODE_INGNORE_TRANSIENT_PERMISSIONS 现在可用于忽略来自 rerouters 的临时权限更改 #14205
    • 添加了函数 trafficlight.getSpentDuration #14400
    • trafficlight.getParameter(tlsID, "typeName") 现在检索交通灯类型 #14737
  • Tools
    • 添加了 createScreenshotSequence.py 以帮助从带有脚本化视图移动的模拟创建视频 #14060
    • tileGet.py 支持从 OSM 下载渲染的图块 #14241
    • 添加了 sumolib.net.node.getMaxTLLinkIndex #14373
    • gtfs2pt.py 现在使用选项 -H 支持人类可读的时间输出 #11192
    • matsim_importPlans.py 现在支持加载带坐标的输入 #14422
    • plot_trajectories.py 现在在设置选项 --meso 时支持 meso fcd #14592
    • sumolib.net 现在支持 getVersion 以检索网络版本 #14636
    • osmWebWizard 现在考虑跨模式路由的交通灯,以避免 person 错过乘车 #14653
    • osmWebWizard 现在使用选项 --tls.actuated.jam-threshold 30 运行,以提高交通灯的能力(和效率) #14580
    • 添加了 tools/visualization/plotWKT.py 用于绘制 WKT 文件
    • ptlines2flows.py 支持选项 --join 以连接服务于相反方向的线路。这减少了单轨铁路上的冲突 #5320
    • sumolib.shapes.polygon 现在支持更多属性 #5429
    • 添加了工具 net/buildFullGraph.py 以帮助构建点对点空中移动性 #14811
    • 添加了工具 net/patchVClasses.py 用于将新网络降级以用于旧版 SUMO 版本,以及用于一般操作权限 #14798

Miscellaneous#

  • 现在记录了用于路由的 数值访问限制 #14370
  • 修复了跳跃文档不一致的问题 #14316
  • "build" 目录已重命名为 "build_config",以允许 "build" 用于构建输出。
  • Plexe 现在支持车队感知变道逻辑 #14809, #14395
  • MMPEVEM 模型添加了 6 个新的配置文件 #14499
  • 电池设备现在使用参数 "rotatingMass" 而不是 "internalMomentOfInertia"。旧值已被弃用。默认值已更改以提高真实性 #12513, #13422
  • 网络现在包含行人过街的轮廓形状 #11668
  • stop-output 的属性略有重新排序,以便更容易看到 busStop-id 而无需水平滚动 #14542
  • extractTest.py 现在适用于 netdiff.py 测试 #14725
  • duarouter: 调整了 Gawron 默认值,使其与 duaIterate.py 一致 #14772