Exemple #1
0
 def reset(self):
     self.done = False
     _reward_e, state_e, _done_e = self.env_space.aeb_space.init_data_s(
         ENV_DATA_NAMES, e=self.e)
     for (a, b), body in util.ndenumerate_nonan(self.body_e):
         state = self.u_env.reset()
         state_e[(a, b)] = state
     # TODO internalize render code
     if not self.train_mode:
         self.u_env.render()
     non_nan_cnt = util.count_nonan(state_e.flatten())
     assert non_nan_cnt == 1, 'OpenAI Gym supports only single body'
     return _reward_e, state_e, _done_e
Exemple #2
0
 def reset(self):
     self.done = False
     _reward_e, state_e, done_e = self.env_space.aeb_space.init_data_s(ENV_DATA_NAMES, e=self.e)
     for (a, b), body in util.ndenumerate_nonan(self.body_e):
         state = self.u_env.reset()
         state_e[(a, b)] = state
         done_e[(a, b)] = self.done
     # TODO internalize render code
     if util.get_lab_mode() == 'dev':
         self.u_env.render()
     non_nan_cnt = util.count_nonan(state_e.flatten())
     assert non_nan_cnt == 1, 'OpenAI Gym supports only single body'
     return _reward_e, state_e, done_e
Exemple #3
0
 def reset(self):
     self.done = False
     _reward_e, state_e, done_e = self.env_space.aeb_space.init_data_s(
         ENV_DATA_NAMES, e=self.e)
     for (a, b), body in util.ndenumerate_nonan(self.body_e):
         state = self.u_env.reset()
         state_e[(a, b)] = state
         done_e[(a, b)] = self.done
     if util.get_lab_mode() == 'dev':
         self.u_env.render()
     non_nan_cnt = util.count_nonan(state_e.flatten())
     assert non_nan_cnt == 1, 'OpenAI Gym supports only single body'
     logger.debug(
         f'Env {self.e} reset reward_e: {_reward_e}, state_e: {state_e}, done_e: {done_e}'
     )
     return _reward_e, state_e, done_e
Exemple #4
0
 def check_u_agent_to_body(self, env_info_a, a):
     '''Check the size match between unity agent and body'''
     u_agent_num = len(env_info_a.agents)
     body_num = util.count_nonan(self.body_e[a])
     assert u_agent_num == body_num, f'There must be a Unity agent for each body; a:{a}, e:{self.e}, agent_num: {u_agent_num} != body_num: {body_num}.'
Exemple #5
0
def test_count_nonan(arr, arr_len):
    assert util.count_nonan(np.array(arr)) == arr_len
Exemple #6
0
def test_count_nonan(arr, arr_len):
    assert util.count_nonan(np.array(arr)) == arr_len
Exemple #7
0
 def check_u_agent_to_body(self, env_info_a, a):
     '''Check the size match between unity agent and body'''
     u_agent_num = len(env_info_a.agents)
     body_num = util.count_nonan(self.body_e[a])
     assert u_agent_num == body_num, f'There must be a Unity agent for each body; a:{a}, e:{self.e}, agent_num: {u_agent_num} != body_num: {body_num}.'