'use_attention': use_attention }) if use_attention: if use_hypernet: gnn_conf = MultiStepInputNetworkConfig( hist_rnn_conf={ 'input_size': node_input_dim, 'hidden_size': rnn_hidden_size }, hist_enc_conf={ 'num_layers': enc_gnn_num_layer, 'model_dim': node_input_dim, 'use_hypernet': use_hypernet, 'hypernet_input_dim': num_relations, 'num_relations': None, 'num_neurons': num_neurons, 'num_head': num_attn_head }, curr_enc_conf={ 'num_layers': enc_gnn_num_layer, 'model_dim': node_input_dim, 'use_hypernet': use_hypernet, 'hypernet_input_dim': num_relations, 'num_relations': None, 'num_neurons': num_neurons, 'num_head': num_attn_head }) else: gnn_conf = MultiStepInputNetworkConfig( hist_rnn_conf={ 'input_size': node_input_dim,
reward_name = 'victory_if_zero_enemy' qnet_conf = HierarchicalMultiStepInputQnetConfig( multi_step_input_qnet_conf={'exploration_method': 'clustered_random'}, qnet_actor_conf={ 'spectral_norm': spectral_norm, 'node_input_dim': node_input_dim, 'pooling_op': pooling_op, 'use_concat_input': use_concat_input, 'init_node_dim': node_input_dim, 'pooling_init': pooling_init, 'num_neurons': num_neurons }, mixer_conf={'rectifier': mixer_rectifier}) if use_attention: gnn_conf = MultiStepInputNetworkConfig() else: gnn_conf = MultiStepInputGraphNetworkConfig( hist_rnn_conf={'input_size': node_input_dim}, hist_enc_conf={ 'spectral_norm': spectral_norm, 'model_dim': node_input_dim, 'use_concat': use_concat_input_gnn, 'num_neurons': num_neurons }, curr_enc_conf={ 'spectral_norm': spectral_norm, 'model_dim': node_input_dim, 'use_concat': use_concat_input_gnn, 'num_neurons': num_neurons })