我正在尝试模拟一个带有交通灯和探测器的交叉路口,并训练机器学习分类器以使用来自探测器的信息来设置交通灯相位。
我能够使用以下方法运行模拟:
import traci
traci.start(sumoCmd)
step = 0
while step < 1000:
traci.simulationStep()
step += 1
traci.close()
但是,我不知道如何获取有关汽车的信息。我有 e2 检测器,但我不知道如何使用它们的输出。我不明白 traci 和 sumo 文档。
我试过这个代码:
import traci
traci.start(sumoCmd)
step = 0
lanearea = traci._lanearea.LaneAreaDomain()
detlist = lanearea.getIDList()
while step < 1000:
traci.simulationStep()
print([lanearea.getLastStepVehicleNumber(det) for det in detlist])
step += 1
traci.close()
但它不起作用。我收到此错误
detlist = lanearea.getIDList()
return self._getUniversal(tc.ID_LIST, "")
result = self._connection._sendReadOneStringCmd(self._cmdGetID, varID, objectID)
AttributeError: 'NoneType' object has no attribute '_sendReadOneStringCmd'
谁能告诉我如何修复此代码?或者更一般地说,如果有人知道,如何使用以下任何函数:http : //sumo.dlr.de/wiki/TraCI/Lane_Area_Detector_Value_Retrieval或任何其他方式来获取有关汽车的信息。
慕沐林林
芜湖不芜
蝴蝶不菲
随时随地看视频慕课网APP
相关分类