我正在与sumo&rllib合作,我想获取数据(十字路口的车号)以让rllib代理学习,如何检查编号以及如何将数据导入rllib。
答案 0 :(得分:0)
如果您进入scenarios/base_scenario.py
,在specify_routes
的文档字符串中,将看到有关如何指定随机路径的示例:
>>> def specify_routes(self, net_params):
>>> return {
>>> "top": [
>>> (["top", "left", "bottom", "right_0"], 0.9),
>>> (["top", "left", "bottom", "right_1"], 0.1)
>>> ],
>>> "left": [
>>> (["left", "bottom", "right_0", "top"], 0.3),
>>> (["left", "bottom", "right_1", "top"], 0.7)
>>> ],
>>> "bottom": [
>>> (["bottom", "right_0", "top", "left"], 0.5),
>>> (["bottom", "right_1", "top", "left"], 0.5)
>>> ]
>>> }
通过这种方式,车辆将以不确定的方式选择路线,您可以根据需要将其设置为随机。
(这是一项新功能,如果您在文档字符串中没有此示例,请确保从主服务器那里获取)
要使车辆到达网格中的交叉点,请查看k_closest_to_intersection
中的函数envs/green_wave_env.py
。然后,您可以在环境的get_state
函数中使用此函数,例如与RLlib通信。