from cityflow_env import CityFlowEnv from dqn_agent import DQNAgent from utility import parse_roadnet import numpy as np import os from utility import parse_arguments args = parse_arguments() roadnet = 'data/{}/roadnet.json'.format(args.scenario) if __name__ == "__main__": ## configuration for both environment and agent config = { 'scenario': args.scenario, 'data': 'data/{}'.format(args.scenario), 'roadnet': roadnet, 'flow': 'data/{}/flow.json'.format(args.scenario), #'replay_data_path': 'data/frontend/web', 'num_step': args.num_step, 'lane_phase_info': parse_roadnet( roadnet) # get lane and phase mapping by parsing the roadnet } intersection_id = list(config['lane_phase_info'].keys())[0] phase_list = config['lane_phase_info'][intersection_id]['phase'] config['state_size'] = len( config['lane_phase_info'][intersection_id]['start_lane']) + 1 config['action_size'] = len(phase_list) # add visible gpu if necessary os.environ["CUDA_VISIBLE_DEVICES"] = ''
def main(): args = parse_arguments() sim_setting = sim_setting_control sim_setting["num_step"] = args.num_step evaluate_one_traffic(sim_setting, args.scenario)
return cmd2 def test_cmd_maker(mn, inp_drop, rec_drop, counter, do=0.2): cmd = [ f"CUDA_VISIBLE_DEVICES={int(counter%3)+1}", "python3", "predict.py", "-mn", f"{mn}", "-ctsm", "1999_2009_2014", "-ctsm_test", "2014_2019-07-04", "-mts", f"\"{{'htuning':True,'htune_version':{counter},'stochastic':True,'stochastic_f_pass':5,'distr_type':'Normal','discrete_continuous':True,'var_model_type':'mc_dropout', 'do':{do},'ido':{inp_drop},'rdo':{rec_drop}, 'location':['Cardiff','London','Glasgow','Birmingham','Lancaster','Manchester','Liverpool','Bradford','Edinburgh','Leeds'],'location_test':['Cardiff','London','Glasgow','Birmingham','Lancaster','Manchester','Liverpool','Bradford','Edinburgh','Leeds']}}\"", "-ts", f"\"{{'region_pred':True}}\"", "-dd", "/media/Data3/akanni/Rain_Data_Mar20", "-bs", f"{65}" ] cmd2 = ' '.join(cmd) return cmd2 def save_param_dict(mn, param_dict): path_ = os.path.join('./hypertune', f'{mn}_param_dict.json') json.dump(param_dict, open(path_, "w")) if __name__ == "__main__": s_dir = utility.get_script_directory(sys.argv[0]) args_dict = utility.parse_arguments(s_dir) main(args_dict) #python3 hypertuning.py -mn "HCGRU" -mts "{}" -ctsm "" #python3 hypertuning.py -mn "TRUNET" -mts "{}" -ctsm ""