diff --git a/rllib/evaluation/rollout_worker.py b/rllib/evaluation/rollout_worker.py index 0cef1b178..3097b6c22 100644 --- a/rllib/evaluation/rollout_worker.py +++ b/rllib/evaluation/rollout_worker.py @@ -388,9 +388,10 @@ class RolloutWorker(ParallelIteratorWorker): np.random.seed(seed) random.seed(seed) if not hasattr(self.env, "seed"): - raise ValueError("Env doesn't support env.seed(): {}".format( + logger.info("Env doesn't support env.seed(): {}".format( self.env)) - self.env.seed(seed) + else: + self.env.seed(seed) try: assert torch is not None torch.manual_seed(seed) diff --git a/rllib/tests/test_rollout_worker.py b/rllib/tests/test_rollout_worker.py index e2c8255a6..fb9c7ca65 100644 --- a/rllib/tests/test_rollout_worker.py +++ b/rllib/tests/test_rollout_worker.py @@ -626,6 +626,14 @@ class TestRolloutWorker(unittest.TestCase): del os.environ["env_key_1"] del os.environ["env_key_2"] + def test_no_env_seed(self): + ev = RolloutWorker( + env_creator=lambda _: MockVectorEnv(episode_length=20, num_envs=8), + policy=MockPolicy, + seed=1) + assert not hasattr(ev.env, "seed") + ev.stop() + def sample_and_flush(self, ev): time.sleep(2) ev.sample()