|
- import matplotlib.pyplot as plt
- import pickle
- import numpy
- greedy_method_result_file= 'greedy_method/greedy_method_test_result1.pkl'
- mTSP_method_result_file='./mTSP_method/mTSP_method_test_result1.pkl'
- random_method_result_file='./random_method/random_select_method_test_result1.pkl'
- Rl_method_result_file='./Rl_method/RL_method_test_result1.pkl'
- file_lst=[greedy_method_result_file,mTSP_method_result_file,random_method_result_file,Rl_method_result_file]
- result_lst=[]
- result_dic={}
- average_ec=[]
- test_times=50
- for file in file_lst:
- sum=0
- with open(file,'rb') as f:
- test_result=pickle.load(f)
- for i in range(len(test_result)):
- test_result[i]=test_result[i]+(2000-test_result[i])*0.5
- sum=sum+test_result[i]
- result_lst.append(test_result)
- average_ec.append(sum/test_times)
- fig=plt.figure('test_result',figsize=(10,8))
- name=['greedy','mTSP','random','RL']
- color=['r','g','b','c']
- for i in range(len(result_lst)):
- plt.plot(result_lst[i],label=name[i],c=color[i])
- for i in range(len(average_ec)):
- plt.plot([0,test_times-1],[average_ec[i],average_ec[i]],ls='dashed',c=color[i],label='average_'+name[i])
- plt.annotate(str(average_ec[i]),xy=(16,average_ec[i]+10))
- plt.xlabel('x:the xth test')
- plt.ylabel('UAV energy consumption')
- plt.legend()
- plt.savefig('test_result.png')
- plt.show()
|