微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 step 方法中为 TF-Agents 环境提供一组动作?

如何解决如何在 step 方法中为 TF-Agents 环境提供一组动作?

我想对我的环境进行建模,使每个操作由 3 个可能的子操作组成。

我已将 _action_spectf_agents.environments.py_environment.PyEnvironment 定义为:

self._action_spec = tf_agents.specs.BoundedArraySpec(
            shape=(3,),dtype=np.int32,name="action",minimum=[0,0],maximum=[10,11,12])

我在 step 方法中失败了,我正在尝试:

env = NetworkEnv(discount=0.9)
tf_env = TFPyEnvironment(env)
print(tf_env.reset())
action = tf.constant([3,3,3],dtype=tf.int32,shape=(3,name='action')
print(tf_env.step(action))
tf_env.close()

但它给了 ValueError: cannot select an axis to squeeze out which has size not equal to one

我应该如何为 step 方法提供操作?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。