如何从外部应用程序进行keras-rl培训?

问题描述

我正在尝试使用keras-rl来训练和使用AI来开发使用Python绑定以C ++编写的游戏。这是我第一次使用keras-rl,并且发现它与游戏AI界面的实现方式不一致。

据我所知,keras-rl希望通过以下方法通过“健身房环境”来推动强化学习本身:

def reset(self) -> observation # start a new episode,get first observation
def step(self,action) -> observation,reward,done,info # provide an action,get next observation,etc

但是,C ++应用程序希望通过以下方法调用AI:

def start(self,episode_info) -> None # start a new episode
def select(self,observation) -> action # provide an observation,get back an action
def end(self,reward) -> None # end an episode (with a reward)

如何最好地调和这两种看似矛盾的方法?我是否需要在单独的进程中运行keras-rl,并让他们以某种方式进行交流?

(请注意,该应用程序允许针对其他AI重复运行AI,这是在Episode_info中指定的,这也是我计划将训练与使用区分开的方式。)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...