问题遇到的现象和发生背景
在单向三车道的平直道路,在rou.xml文件中使用flow生成两种车辆的车流,一种只会从最左侧车道驶出,一种从右侧两车道驶出,但是flow中的arrivalLane属性好像不能设定多个值。这样的问题能不能通过其他方式解决,比如在python脚本中能不能通过traci进行控制?
操作环境、软件版本等信息
win11系统,SUMO 1.16.0
我想要达到的结果
为flow的arrivalLane指定多条车道
在单向三车道的平直道路,在rou.xml文件中使用flow生成两种车辆的车流,一种只会从最左侧车道驶出,一种从右侧两车道驶出,但是flow中的arrivalLane属性好像不能设定多个值。这样的问题能不能通过其他方式解决,比如在python脚本中能不能通过traci进行控制?
win11系统,SUMO 1.16.0
为flow的arrivalLane指定多条车道
可以通过在python脚本中使用traci进行控制来实现为flow的arrivalLane指定多条车道的目的。具体操作步骤如下:
在rou.xml文件中只生成一种车流,不指定arrivalLane属性。
在python脚本中使用traci生成车辆,并指定车辆的出发车道和到达车道。
例如,以下代码可以生成从最左侧车道驶出的车辆:
import traci
# 生成车辆
traci.vehicle.add("vehicle1", "route1", departLane="free", departSpeed="max")
# 指定车辆的出发车道和到达车道
traci.vehicle.moveTo("vehicle1", laneIndex=0, pos=0)
traci.vehicle.changeTarget("vehicle1", "gneE1", laneIndex=0)
以下代码可以生成从右侧两车道驶出的车辆:
import traci
# 生成车辆
traci.vehicle.add("vehicle2", "route1", departLane="free", departSpeed="max")
# 指定车辆的出发车道和到达车道
traci.vehicle.moveTo("vehicle2", laneIndex=1, pos=0)
traci.vehicle.changeTarget("vehicle2", "gneE1", laneIndex=1)
通过这种方式,可以实现为flow的arrivalLane指定多条车道的目的。