from metrics import Metrics voltage_controller_metrics_vd = Metrics( df_master_CVVd, vd_ref[0], ts, max_episode_steps, position_steady_state=position_steady_state, position_settling_time=position_settling_time) d = { 'Overshoot': [voltage_controller_metrics_vd.overshoot()], 'Rise Time/s ': [voltage_controller_metrics_vd.rise_time()], 'Settling Time/s ': [voltage_controller_metrics_vd.settling_time()], 'Root Mean Squared Error/V': [voltage_controller_metrics_vd.RMSE()], 'Steady State Error/V': [voltage_controller_metrics_vd.steady_state_error()] } print() df_metrics_vd = pd.DataFrame(data=d).T df_metrics_vd.columns = ['Value'] print('Metrics of Vd') print(df_metrics_vd) ######IMPORTANT FOR THE SCORING MODEL INNER LEVEL############################## # Use the following code, to create a pkl-File in which the Dataframe is stored # df_metrics_vd.to_pickle("./df_metrics_vd_controller1.pkl") # Maybe you need to replace 'controller1.pkl' with 'controller2.pkl'
best_agent_plt.savefig('agent_plt.png') ##################################### # Calculation of Metrics # Here, the d- term of idq is analysed df_master_CVId = env.history.df[['master.CVId']] current_controller_metrics_id = Metrics(df_master_CVId, id_ref[0], ts, max_episode_steps, position_steady_state=position_steady_state, position_settling_time=position_settling_time) d = {'Overshoot': [current_controller_metrics_id.overshoot()], 'Rise Time/s ': [current_controller_metrics_id.rise_time()], 'Settling Time/s ': [current_controller_metrics_id.settling_time()], 'Root Mean Squared Error/A': [current_controller_metrics_id.RMSE()], 'Steady State Error/A': [current_controller_metrics_id.steady_state_error()]} df_metrics_id = pd.DataFrame(data=d).T df_metrics_id.columns = ['Value'] print() print('Metrics of id') print(df_metrics_id) ######IMPORTANT FOR THE SCORING MODEL INNER LEVEL############################## # Use the following code, to create a pkl-File in which the Dataframe is stored # df_metrics_id.to_pickle("./df_metrics_id_controller1.pkl") # Maybe you need to replace 'controller1.pkl' with 'controller2.pkl' #####################################
##################################### # Calculation of Metrics # Here, the d- term of vd is analysed df_master_CVVd = env.history.df[['master.CVVd']] from metrics import Metrics voltage_controller_metrics_vd = Metrics(df_master_CVVd, vd_ref[0], ts, max_episode_steps, position_steady_state=position_steady_state, position_settling_time=position_settling_time) d = {'Overshoot': [voltage_controller_metrics_vd.overshoot()], 'Rise Time/s ': [voltage_controller_metrics_vd.rise_time()], 'Settling Time/s ': [voltage_controller_metrics_vd.settling_time_vd_droop()], 'Root Mean Squared Error/V': [voltage_controller_metrics_vd.RMSE()], 'Steady State Error/V': [voltage_controller_metrics_vd.steady_state_error()]} print("\n") print() df_metrics_vd = pd.DataFrame(data=d).T df_metrics_vd.columns = ['Value'] print('Metrics of Vd') print(df_metrics_vd) ######IMPORTANT FOR THE SCORING MODEL PRIMARY LEVEL############################## # Use the following code, to create a pkl-File in which the Dataframe is stored # df_metrics_vd.to_pickle("./df_metrics_vd_controller1_droop.pkl") # Maybe you need to replace 'controller1_droop.pkl' with 'controller2_droop.pkl'