(self)
| 4 | |
| 5 | class Params(nn.Module): |
| 6 | def __init__(self): |
| 7 | super(Params, self).__init__() |
| 8 | self.trainable = True |
| 9 | self.debug_mode = False |
| 10 | self.test_random = False |
| 11 | self.cuda_device = 0 |
| 12 | |
| 13 | self.log_dir = None # TODO:None |
| 14 | self.test_path='/home/linc/dzp/dppo_age/result0507/5uavs/' |
| 15 | # self.test_path = '/home/linc/dzp/dppo_age/result/b64_try_ppo_tc_train/' |
| 16 | self.test_model_path="ckpt/model_3399.pt" |
| 17 | self.root_path = 'result/' |
| 18 | |
| 19 | self.save_interval = 100 |
| 20 | self.use_cuda = True |
| 21 | self.use_opt = True |
| 22 | |
| 23 | # --------------PPO parameters------------------ |
| 24 | self.lr = 3e-4 # TODO:3e-4, try 1e-4 |
| 25 | self.clip = 0.1 |
| 26 | self.ent_coeff = 0.01 |
| 27 | self.value_coeff = 0.1 |
| 28 | self.clip_coeff = 1. |
| 29 | self.max_train_episode = 2500 # TODO:2500 |
| 30 | self.max_time_steps = 500 # TODO:500 |
| 31 | self.num_processes = 15 # TODO:6 ->10G |
| 32 | self.max_test_episode = 1 # TODO:50 |
| 33 | self.mini_batch_num = 3 |
| 34 | self.batch_size = 64 # TODO:64 |
| 35 | self.ppo_epoch = 3 |
| 36 | self.max_grad_norm = 250 |
| 37 | self.update_threshold = self.num_processes - 1 |
| 38 | self.adam_eps = 1e-5 |
| 39 | self.seed = 1 |
| 40 | self.use_obs_norm = False # Not necessary |
| 41 | self.use_adv_norm = False |
| 42 | |
| 43 | # ------Method & NN parameters------------ |
| 44 | self.use_rnn = True |
| 45 | self.use_relational_att = False |
| 46 | self.use_spatial_att = False |
| 47 | self.temporal_hidden_size = 256 # == hidden_state_size in rnn |
| 48 | self.spatial_hidden_size = 128 |
| 49 | self.rnn_seq_len = 10 |
| 50 | |
| 51 | # -----discounted return parameters------- |
| 52 | self.use_gae = True |
| 53 | self.gamma = 0.99 |
| 54 | self.gae_lambda = 0.95 |
| 55 | |
| 56 | # ----------environment parameters--------- |
| 57 | self.uav_num = 2 |
| 58 | self.uav_action_dim = 3 |
| 59 | self.image_size = 80 |
| 60 | self.image_depth = 2 |
| 61 | |
| 62 | def log_info(self, local_time): |
| 63 | log_file_path = os.path.join(self.root_path, str(local_time)) |
nothing calls this directly
no outgoing calls
no test coverage detected