ray.rllib.policy.sample_batch.MultiAgentBatch.timeslices#

MultiAgentBatch.timeslices(k: int) List[MultiAgentBatch][源代码]#

返回包含每个代理在那些步骤中的数据的k步批次。

例如,假设我们有 agent1 的观察结果 [a1t1, a1t2, a1t3],对于 agent2,[a2t1, a2t3],而对于 agent3,只有 [a3t3]。

调用 timeslices(1) 将返回三个包含 [a1t1, a2t1], [a1t2] 和 [a1t3, a2t3, a3t3] 的 MultiAgentBatches。

调用 timeslices(2) 将返回两个包含 [a1t1, a1t2, a2t1] 和 [a1t3, a2t3, a3t3] 的 MultiAgentBatches。

此方法用于实现“锁步”回放模式。请注意,此方法不保证每个批次仅包含来自单个展开的数据。批次可能包含来自多个不同环境的数据。