def __init__(self, spec, global_nets=None): self.spec = spec self.index = self.spec['meta']['session'] util.set_random_seed(self.spec) util.set_cuda_id(self.spec) util.set_logger(self.spec, logger, 'session') spec_util.save(spec, unit='session') self.agent, self.env = make_agent_env(self.spec, global_nets) with util.ctx_lab_mode('eval'): # env for eval self.eval_env = make_env(self.spec) logger.info(util.self_desc(self))
def __init__(self, spec, info_space, global_nets=None): self.spec = spec self.info_space = info_space self.index = self.info_space.get('session') util.set_logger(self.spec, self.info_space, logger, 'session') self.data = None # init singleton agent and env self.env = make_env(self.spec) util.set_rand_seed(self.info_space.get_random_seed(), self.env) with util.ctx_lab_mode('eval'): # env for eval self.eval_env = make_env(self.spec) util.set_rand_seed(self.info_space.get_random_seed(), self.eval_env) util.try_set_cuda_id(self.spec, self.info_space) body = Body(self.env, self.spec['agent']) self.agent = Agent(self.spec, self.info_space, body=body, global_nets=global_nets) enable_aeb_space(self) # to use lab's data analysis framework logger.info(util.self_desc(self)) logger.info(f'Initialized session {self.index}')
def __init__(self, spec, info_space, global_nets=None): self.spec = spec self.info_space = info_space self.index = self.info_space.get('session') util.set_session_logger(self.spec, self.info_space, logger) self.data = None # init singleton agent and env self.env = make_env(self.spec) body = Body(self.env, self.spec['agent']) util.set_rand_seed(self.info_space.get_random_seed(), self.env) util.try_set_cuda_id(self.spec, self.info_space) assert not ps.is_list( global_nets ), f'single agent global_nets must be a dict, got {global_nets}' self.agent = Agent(self.spec, self.info_space, body=body, global_nets=global_nets) enable_aeb_space(self) # to use lab's data analysis framework logger.info(util.self_desc(self)) logger.info(f'Initialized session {self.index}')
def __init__(self, spec, info_space, global_nets=None): self.spec = spec self.info_space = info_space self.index = self.info_space.get('session') util.set_logger(self.spec, self.info_space, logger, 'session') self.data = None self.eval_proc = None # reference run_online_eval process # init singleton agent and env self.env = make_env(self.spec) body = Body(self.env, self.spec['agent']) util.set_rand_seed(self.info_space.get_random_seed(), self.env) util.try_set_cuda_id(self.spec, self.info_space) self.agent = Agent(self.spec, self.info_space, body=body, global_nets=global_nets) self.sim_env = spec['sim_env'] enable_aeb_space(self) # to use lab's data analysis framework logger.info(util.self_desc(self)) logger.info(f'Initialized session {self.index}')
def make_agent_env(spec, global_nets=None): '''Helper to create agent and env given spec''' env = make_env(spec) body = Body(env, spec['agent']) agent = Agent(spec, body=body, global_nets=global_nets) return agent, env