0

我一直在研究一些 Tensorflow 代理示例,并且想知道是否有人知道如何/在何处将银行/存储添加到环境中的一个很好的示例,以便如果代理用完资金,这一集会提前结束?

似乎将逻辑添加到重置功能将是一个不错的选择,但评论似乎相当坚决不这样做。

 # These two functions below should not be overridden by subclasses.


def _reset(self):
    """Returns a time step containing an observation."""
    return ts.restart(self._observe(), batch_size=self.batch_size)

  def _step(self, action):
    """Returns a time step containing the reward for the action taken."""
    reward = self._apply_action(action)
    return ts.termination(self._observe(), reward)

我最初的想法是做类似的事情:

def _reset(self):
    """Returns a time step containing an observation."""
    self.bank += reward
    return ts.restart(self._observe(), batch_size=self.batch_size)

从 _take_action(...) 中其他地方定义的银行减去。这似乎可以运行,但我一直在阅读一些文档,但我不确定它的行为方式是否与我认为的一样。这是将银行添加到 MAB 问题的适当方法吗?

4

0 回答 0