在 Veins 中驾驶车辆的 ASSERT 条件失败

ASSERT condition for driving vehicles in Veins failed

我使用配置 file 和不同持续时间(--duration-d 1--duration-d 7、...)的 SUMO ACTIVITYGEN/DUAROUTER 生成了大量路线(~90.000+) .

结果.rou.xml被SUMO成功执行,没有出现严重错误。只是关于无效 departPos.

的一些警告

但是在使用 Veins 时,我收到以下错误消息:

<!> Error in module (Veins::TraCIScenarioManagerLaunchd)
Scenario.manager (id=6) at event #2327172, t=25619.2: Model error:
ASSERT: condition count == drivingVehicleCount false in function
processVehicleSubscription,
veins/modules/mobility/traci/TraCIScenarioManager.cc line 640.

我删除了 ASSERT 条件并显示了两个值。 count 总是高于 drivingVehicleCount.

包含的 "veins" 示例 运行 没有任何问题。

我正在使用:

此外,我测试了 Veins 3.0 并收到相同的错误消息。

有人遇到同样的问题吗?

注释掉 ASSERT 完全没问题。

在 SUMO 中,任何车辆都可以有五种状态之一(根据 statesvehicleStates_sm.uxf):首先,它是 loaded,过渡到 运行开始行驶,到达目的地后转为arrived。此外,运行车辆可以暂时传送停车

Veins 订阅这些状态变化以跟踪驾驶车辆的数量。为确保簿记正确,它将自己的计数与 SUMO 报告的活跃车辆数进行比较。

我不知道为什么有时数字不匹配。它似乎只发生在大型拥塞网络中。