擅长:python、mysql、java
<p>只需将传递给<code>Box</code>的值的数据类型<em>强制转换为<code>float32</code>:</p>
<p><code>self.action_space = spaces.Box(np.float32(low), np.float32(high))</code></p>
<p>例如,所有这些示例都是有效的:</p>
<p><code>self.action_space = spaces.Box(np.float32(3), np.float32(4.0))</code></p>
<p><code>self.action_space = spaces.Box(np.float32(np.array([3.0,3.5])), np.float32(np.array([4.0,4.5])))</code></p>
<p><code>self.action_space = spaces.Box(np.array([3.0,3.5],dtype=np.float32), np.array([4.0,4.5],dtype=np.float32))</code></p>
<p>顺便说一下:虽然您也可以像@Robert Wilkerson所建议的那样将<code>Box</code>-<code>dtype</code>本身显式地强制转换为<code>np.float32</code>,但是没有必要这样做:它不能解决问题,而且它没有任何效果,因为<code>Box</code>的<code>dtype</code>已经默认为<code>np.float32</code></p>