在交通信号控制领域,使用cityflow的框架,复现代码,写好config文件,运行时,总是报错:RuntimeError: Json parsing error,截图如下图所示。
反复检查config文件:
{
"interval": 20,
"seed": 0,
"laneChange": False,
"dir": "/data1/jjhh/tlc-baselines/",
"roadnetFile": "roadnet_4X4.json",
"flowFile": "hangzhou_4x4_gudang_18041610_1h.json",
"rlTrafficLight": False,
"saveReplay": False,
"roadnetLogFile": "roadnetLogFile.json",
"replayLogFile": "replayLogFile.txt"
}
对比cityflow官网给出的例子:
{
"interval": 1.0,
"seed": 0,
"dir": "data/",
"roadnetFile": "roadnet/testcase_roadnet_3x3.json",
"flowFile": "flow/testcase_flow_3x3.json",
"rlTrafficLight": false,
"saveReplay": true,
"roadnetLogFile": "frontend/web/testcase_roadnet_3x3.json",
"replayLogFile": "frontend/web/testcase_replay_3x3.txt"
}
发现是格式不对,导致解析成json格式文件时出错。错误在于将false的首字母大写了,习惯性错误,没有注意到示例中false,true的首字母都是小写的。