我是强化学习的完全新手,并且一直在寻找一个框架/模块来轻松导航这个危险的地形。在我的搜索中,我遇到了两个模块keras-rl& OpenAI GYM。
我可以让他们两个人在他们的WIKI共享的示例上工作,但他们有预定义的环境,很少或没有关于如何设置我自己的自定义环境的信息。
如果有人能指出我的教程,或者只是向我解释如何设置非游戏环境,我会非常感激?
答案 0 :(得分:15)
我已经在这些图书馆工作了一段时间,可以分享我的一些实验。
让我们首先考虑自定义环境的示例文本环境https://github.com/openai/gym/blob/master/gym/envs/toy_text/hotter_colder.py
对于自定义环境,应定义一些事项。
或者,您可以使用类似
的方法创建_render方法 def _render(self, mode='human', **kwargs):
outfile = StringIO() if mode == 'ansi' else sys.stdout
outfile.write('State: ' + repr(self.state) + ' Action: ' + repr(self.action_taken) + '\n')
return outfile
此外,为了更好的代码灵活性,您可以在_get_reward方法中定义奖励的逻辑,并通过_take_action方法中的操作更改为观察空间。