1、前言
在做逆强化学习的过程中,需要用到数据采集,这里仅展示某个环境下的数据采集框架,需要采集更多信息可以按自己的需求进行改动。
2、代码
import json
import gym
import highway_env
import sys
import matplotlib.pyplot as plt
import numpy as np
env = gym.make("highway-v0")
env.configure({
"manual_control": True, #手动操作
"action": {
"type": "DiscreteMetaAction"} #动作类型,主要分为连续动作(ContinuousAction)与离散动作(DiscreteMetaAction)
})
env.reset()
done = False
speed_ = []
for i in range(100):
obs, reward, done, info = env.step(env.action_space.sample())
speed_.append(info["speed"])#这里只采集了速度信息,其他信息可以调试info查看一下,还可以直接更改源代码,添加自己需要的信息
env.render()
with open("./v1.json", 'w', encoding='UTF-8') as f:#将采集到的数据保存为json文件
f.write(json.dumps(speed_))
with open("./v1.json", 'r', encoding = 'UTF-8') as f:#从json文件读取保存的数据
d_m = json.load(f)
print("\n读取JSON格式文件的内容并转换为字典:\n")
print(d_m)