return action def select_action(self, state, noiseFlag=False): if noiseFlag: action = self.forward(state) action += torch.tensor(self.noise.get_noise(), dtype=torch.float32, device=config['device']).unsqueeze(0) return self.forward(state) configName = 'config.json' with open(configName, 'r') as f: config = json.load(f) env = ActiveParticle3DEnv('config.json', 1) if config['localFrameFlag']: N_S = 6 else: N_S = 6 N_A = env.nbActions netParameter = dict() netParameter['n_feature'] = N_S netParameter['n_hidden'] = 256 netParameter['n_output'] = N_A actorNet = Actor(netParameter['n_feature'], netParameter['n_hidden'], netParameter['n_output'])
obstacles, obstacleCenter = [], [] for i in range(config['numObstacles']): name = 'obs' + str(i) obstacles.append( RBCObstacle(np.array(config[name]['center']), config[name]['scale'], np.array(config[name]['orient']))) obstacleCenter.append(obstacles[i].center) return obstacles, obstacleCenter env = ActiveParticle3DEnv('config.json', 1, obstacleConstructorCallBack) N_S = env.stateDim[0] N_A = env.nbActions netParameter = dict() netParameter['n_feature'] = N_S netParameter['n_hidden'] = 256 netParameter['n_output'] = N_A actorNet = ActorConvNet(netParameter['n_feature'], netParameter['n_hidden'], netParameter['n_output']) actorTargetNet = deepcopy(actorNet) criticNet = CriticConvNet(netParameter['n_feature'], netParameter['n_hidden'],
def select_action(self, state, noiseFlag=False): if noiseFlag: action = self.forward(state) action += torch.tensor(self.noise.get_noise(), dtype=torch.float32, device=config['device']).unsqueeze(0) action = torch.clamp(action, -1, 1) return action return self.forward(state) configName = 'config.json' with open(configName, 'r') as f: config = json.load(f) env = ActiveParticle3DEnv('config.json', 1) if config['localFrameFlag']: N_S = 6 else: N_S = 6 N_A = env.nbActions netParameter = dict() netParameter['n_feature'] = N_S netParameter['n_hidden'] = 256 netParameter['n_output'] = N_A actorNet = Actor(netParameter['n_feature'], netParameter['n_hidden'], netParameter['n_output'])