diff --git a/CustomAgent.py b/CustomAgent.py old mode 100644 new mode 100755 index fb61cad..e145d06 --- a/CustomAgent.py +++ b/CustomAgent.py @@ -241,3 +241,48 @@ def merge_combined_actions_subs(self, sub_actions_dict, subs_keys): acts.append(act) return acts + + +class DoNothing_Attention_Agent(BaseAgent): + """ + This is the most basic BaseAgent. It is purely passive, and does absolutely nothing. + As opposed to most reinforcement learning environments, in grid2op, doing nothing is often + the best solution. + """ + + def __init__(self, env): + BaseAgent.__init__(self, env.action_space) + self.alarms_lines_area = env.alarms_lines_area + self.alarms_area_names = env.alarms_area_names + + def act(self, observation, reward, done=False): + """ + As better explained in the document of :func:`grid2op.BaseAction.update` or + :func:`grid2op.BaseAction.ActionSpace.__call__`. + The preferred way to make an object of type action is to call :func:`grid2op.BaseAction.ActionSpace.__call__` + with the dictionary representing the action. In this case, the action is "do nothing" and it is represented by + the empty dictionary. + Parameters + ---------- + observation: :class:`grid2op.Observation.Observation` + The current observation of the :class:`grid2op.Environment.Environment` + reward: ``float`` + The current reward. This is the reward obtained by the previous action + done: ``bool`` + Whether the episode has ended or not. Used to maintain gym compatibility + Returns + ------- + res: :class:`grid2op.Action.Action` + The action chosen by the bot / controller / agent. + """ + res = self.action_space({}) + + zones_alert = [] + if (len(self.alarms_area_names)>=1): + zones_alert=[0] + res = self.action_space({"raise_alarm": zones_alert}) + # print(res) + return res + + + diff --git a/generate_sample.py b/generate_sample.py old mode 100644 new mode 100755 index 5564f2b..533bf26 --- a/generate_sample.py +++ b/generate_sample.py @@ -4,13 +4,14 @@ import os import grid2op +from grid2op.operator_attention import LinearAttentionBudget from grid2op.Agent import TopologyGreedy, DoNothingAgent from grid2op.Runner import Runner -from grid2op import make -from CustomAgent import RandomRedispatchAgent, MultipleTopologyAgent +from grid2op import make,make_from_dataset_path +from CustomAgent import RandomRedispatchAgent, MultipleTopologyAgent, DoNothing_Attention_Agent from grid2op.Parameters import Parameters -dataset = "rte_case14_realistic" +dataset_path = "tests/data/rte_case14_realistic"#"rte_case14_realistic" # use lightsim2grid to go a lot faster if available try: @@ -35,62 +36,88 @@ print("MultiTopology") path_save = "grid2viz/data/agents/multiTopology-baseline" os.makedirs(path_save, exist_ok=True) -with make(dataset, param=params, backend=backend) as env: - agent = MultipleTopologyAgent(env.action_space, env.observation_space) - runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) - # need to be seeded for reproducibility as this takes random redispatching actions - runner.run( - nb_episode=1, - path_save="grid2viz/data/agents/multiTopology-baseline", - nb_process=1, - max_iter=30, - env_seeds=[0], - agent_seeds=[0], - pbar=True, - ) - env.close() + +env=make_from_dataset_path(dataset_path, param=params, backend=backend, has_attention_budget=True, + attention_budget_class=LinearAttentionBudget, + kwargs_attention_budget={"max_budget": 3., + "budget_per_ts": 1. / (12. * 16), + "alarm_cost": 1., + "init_budget": 2.}) +#with make(dataset, param=params, backend=backend) as env: +agent = MultipleTopologyAgent(env.action_space, env.observation_space) +runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) +# need to be seeded for reproducibility as this takes random redispatching actions +runner.run( + nb_episode=1, + path_save="grid2viz/data/agents/multiTopology-baseline", + nb_process=1, + max_iter=30, + env_seeds=[0], + agent_seeds=[0], + pbar=True, +) +#env.close() #problem closing for now: says already closed print("redispatching") -with make(dataset, param=params, backend=backend) as env: - agent = RandomRedispatchAgent(env.action_space, env) - runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) - # need to be seeded for reproducibility as this takes random redispatching actions - runner.run( - nb_episode=1, - path_save="grid2viz/data/agents/redispatching-baseline", - nb_process=1, - max_iter=100, - env_seeds=[0], - agent_seeds=[0], - pbar=True, - ) - env.close() +#with make(dataset, param=params, backend=backend2) as env2: +agent = RandomRedispatchAgent(env.action_space, env) +runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) +# need to be seeded for reproducibility as this takes random redispatching actions +runner.run( + nb_episode=1, + path_save="grid2viz/data/agents/redispatching-baseline", + nb_process=1, + max_iter=100, + env_seeds=[0], + agent_seeds=[0], + pbar=True, +) + #env2.close() print("do-nothing") -with make(dataset, param=params, backend=backend) as env: - agent = DoNothingAgent(env.action_space) - runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) - runner.run( - nb_episode=2, - path_save="grid2viz/data/agents/do-nothing-baseline", - nb_process=1, - max_iter=2000, - pbar=True, - ) - env.close() +#with make(dataset, param=params, backend=backend) as env: +agent = DoNothingAgent(env.action_space) +runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) +runner.run( + nb_episode=2, + path_save="grid2viz/data/agents/do-nothing-baseline", + nb_process=1, + max_iter=2000, + pbar=True, +) + #env.close() print("greedy") -with make(dataset, param=params, backend=backend) as env: - agent = TopologyGreedy(env.action_space) - runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) - runner.run( - nb_episode=2, - path_save="grid2viz/data/agents/greedy-baseline", - nb_process=1, - max_iter=2000, - pbar=True, - ) - env.close() +#with make(dataset, param=params, backend=backend) as env: +agent = TopologyGreedy(env.action_space) +runner = Runner(**env.get_params_for_runner(), agentClass=None, agentInstance=agent) +runner.run( + nb_episode=2, + path_save="grid2viz/data/agents/greedy-baseline", + nb_process=1, + max_iter=2000, + pbar=True, +) + +print("alarm-agent") +agent = DoNothing_Attention_Agent(env) +runner = Runner( + **env.get_params_for_runner(), agentClass=None, agentInstance=agent +) +# need to be seeded for reproducibility as this takes random redispatching actions +runner.run( + nb_episode=1, + path_save="grid2viz/data/agents/alarm-baseline", + nb_process=1, + max_iter=10, + env_seeds=[0], + agent_seeds=[0], + pbar=True, +) + +env.close() + + diff --git a/grid2viz/src/episodes/episodes_clbk.py b/grid2viz/src/episodes/episodes_clbk.py old mode 100644 new mode 100755 diff --git a/grid2viz/src/episodes/episodes_lyt.py b/grid2viz/src/episodes/episodes_lyt.py index b1a9342..abb563c 100644 --- a/grid2viz/src/episodes/episodes_lyt.py +++ b/grid2viz/src/episodes/episodes_lyt.py @@ -11,29 +11,29 @@ import plotly.figure_factory as ff import seaborn as sn -from grid2viz.src.manager import survival_df, grid2viz_home_directory, scenarios +from grid2viz.src.manager import survival_df, attention_df, grid2viz_home_directory, scenarios from grid2viz.src.utils.constants import DONT_SHOW_FILENAME from grid2viz.src.utils.layout_helpers import modal, should_help_open # This is to improve readability of the heatmap of survival steps for agents -def get_heatmap_survival_score(df): - if (df.shape[0] >= 2) and (df.shape[1] >= 2): - clustered_df = sn.clustermap(df) +def get_heatmap_survival_attention_score(df_survival,df_attention): + if (df_survival.shape[0] >= 2) and (df_survival.shape[1] >= 2): + clustered_df = sn.clustermap(df_survival) reordered_scenarios = clustered_df.dendrogram_row.reordered_ind reordered_agents = clustered_df.dendrogram_col.reordered_ind - return df.iloc[reordered_scenarios, reordered_agents] + return df_survival.iloc[reordered_scenarios, reordered_agents], df_attention.iloc[reordered_scenarios, reordered_agents] else: - return df + return df_survival, df_attention -def create_heatmap_figure(df): - clustered_survival_df = get_heatmap_survival_score(df) +def create_heatmap_figures(df_survival, df_attention): + clustered_survival_df, clustered_attention_df = get_heatmap_survival_attention_score(df_survival, df_attention) z_text = clustered_survival_df.copy().astype(str) z_text[z_text == "-1"] = "" - heatmap_figure = ff.create_annotated_heatmap( # go.Figure(data=go.Heatmap( + heatmap_figure_survival = ff.create_annotated_heatmap( # go.Figure(data=go.Heatmap( z=clustered_survival_df.values, # survival_df.values,#z=pd.concat([survival_df, survival_df]))), x=clustered_survival_df.columns.tolist(), y=clustered_survival_df.index.tolist(), @@ -41,38 +41,72 @@ def create_heatmap_figure(df): zmid=50, annotation_text=z_text.values, ) - heatmap_figure.update_layout( + heatmap_figure_survival.update_layout( {"yaxis": {"type": "category"}, "xaxis": {"type": "category"}} ) - return heatmap_figure + z_text = clustered_attention_df.copy().astype(str) + #z_text[z_text == "-1"] = "" + heatmap_figure_attention = ff.create_annotated_heatmap( # go.Figure(data=go.Heatmap( + z=clustered_attention_df.values, # survival_df.values,#z=pd.concat([survival_df, survival_df]))), + x=clustered_attention_df.columns.tolist(), + y=clustered_attention_df.index.tolist(), + colorscale="RdYlGn", + zmid=0.5, + annotation_text=z_text.values, + ) + heatmap_figure_attention.update_layout( + {"yaxis": {"type": "category"}, "xaxis": {"type": "category"}} + ) -def generate_heatmap_components(df): - heatmap_div = html.Div( + return heatmap_figure_survival, heatmap_figure_attention + + + +def generate_heatmap_components(df_survival, df_attention): + + heatmap_survival, heatmap_attention=create_heatmap_figures(df_survival, df_attention) + heatmap_survival_div = html.Div( children=[ - html.H5("Percentage of Agents' survival time over a scenario"), + + html.H3("Percentage of Agents' survival time over a scenario"), dcc.Graph( - id="heatmap", - figure=create_heatmap_figure(df), + id="heatmap survival", + figure=heatmap_survival, ), ], - className="col-xl-12 align-self-center heatmap", + className="four columns"#"col-xl-12 align-self-center heatmap", ) - return html.Div( - className="lineBlockSlim card", + heatmap_attention_div = html.Div( children=[ - dbc.Collapse(heatmap_div, id="collapse"), - scenarios_filter(sorted(list(scenarios))), + html.H3("Agent attention score over a scenario"), + dcc.Graph( + id="heatmap attention", + figure=heatmap_attention, + ), ], + className="four columns"#"col-xl-12 align-self-center heatmap", + ) + + heatmaps_div=html.Div(className="row", children=[heatmap_survival_div, heatmap_attention_div]) + + return html.Div( + className="lineBlockSlim card", + children=[html.Div(className="row", + children=[dbc.Collapse(heatmaps_div, id="collapse"), + scenarios_filter(sorted(list(scenarios))) + ]) + ], ) def scenarios_filter(scenarios): return html.Div( id="scenario_filter_div", + className="four columns", children=[ - html.H5("Select the scenarios you want to see below."), + html.H5("Select the scenarios you want to see in cards below."), dac.Select( id="scenarios_filter", options=[ @@ -115,7 +149,7 @@ def layout(): children=[ dcc.Store(id="relayoutStoreScenario"), comparison_button(), - generate_heatmap_components(survival_df), + generate_heatmap_components(survival_df, attention_df), dbc.Row(id="cards_container", className="m-1"), modal(id_suffix="episodes", is_open=open_help, header=header, body=body), ], diff --git a/grid2viz/src/kpi/EpisodeAnalytics.py b/grid2viz/src/kpi/EpisodeAnalytics.py old mode 100644 new mode 100755 index 1f0efca..404fb89 --- a/grid2viz/src/kpi/EpisodeAnalytics.py +++ b/grid2viz/src/kpi/EpisodeAnalytics.py @@ -107,6 +107,7 @@ def _make_df_from_data(self, episode_data): - flow and voltage by line - target and actual redispatch - attacks + - alarms Returns ------- @@ -140,6 +141,8 @@ def _make_df_from_data(self, episode_data): "lines_modified", "subs_modified", "gens_modified", + "is_alarm", + "alarm_zone" ] action_data_table = pd.DataFrame( index=range(size), @@ -159,6 +162,8 @@ def _make_df_from_data(self, episode_data): "lines_modified", "subs_modified", "gens_modified", + "is_alarm", + "alarm_zone" ], ) @@ -200,6 +205,10 @@ def _make_df_from_data(self, episode_data): # objs_on_bus_2 will store the id of objects connected to bus 2 objs_on_bus_2 = {id: [] for id in range(episode_data.observations[0].n_sub)} + is_alarm=False + if(("last_alarm" in episode_data.observations[0].__dict__.keys())): + #if(len(episode_data.observations[1].last_alarm)>=1): + is_alarm = (episode_data.observations[0].time_since_last_alarm[0]==0) # Distance from original topology is then : # len(line_statuses) - line_statuses.sum() + subs_on_bus_2.sum() @@ -223,6 +232,14 @@ def _make_df_from_data(self, episode_data): act, list_actions, obs, gens_modified_ids, actual_redispatch_previous_ts ) + alarm_zone = [] + if (("last_alarm" in episode_data.observations[1].__dict__.keys())): + #is_alarm=(obs.time_since_last_alarm[0]==0)#last_alarm[1] + is_alarm = (obs.time_since_last_alarm[0] == 0) + if is_alarm: + alarm_zone=[obs.alarms_area_names[zone_id] + for zone_id,zone_value in enumerate(obs.last_alarm) if (int(zone_value)==time_step)] + actual_redispatch_previous_ts = obs.actual_dispatch # Building load DF @@ -263,6 +280,8 @@ def _make_df_from_data(self, episode_data): lines_modified, subs_modified, gens_modified_names, + is_alarm, + alarm_zone ] flow_voltage_line_table.loc[time_step, :] = np.array( diff --git a/grid2viz/src/kpi/EpisodeTrace.py b/grid2viz/src/kpi/EpisodeTrace.py old mode 100644 new mode 100755 index d6e55cf..ee20ad4 --- a/grid2viz/src/kpi/EpisodeTrace.py +++ b/grid2viz/src/kpi/EpisodeTrace.py @@ -177,6 +177,9 @@ def get_all_prod_trace(episode, prod_types, selection): trace.append(go.Scatter(x=total_series.index, y=total_series, name="total")) for name in prod_type_names: if name in selection: + color=None + if name in dic_colors_prod_types.keys(): + color=dic_colors_prod_types[name] trace.append( go.Scatter( x=prod_with_type[prod_with_type.prod_type.values == name][ @@ -186,6 +189,7 @@ def get_all_prod_trace(episode, prod_types, selection): .groupby(["timestamp"])["value"] .sum(), name=name, + marker_color=color ) ) selection.remove( diff --git a/grid2viz/src/kpi/actions_model.py b/grid2viz/src/kpi/actions_model.py index 7bba30d..5f0edad 100644 --- a/grid2viz/src/kpi/actions_model.py +++ b/grid2viz/src/kpi/actions_model.py @@ -65,9 +65,9 @@ def update_layout(predicate, msg): return figure_layout -def get_actions_sum(new_episode): +def get_actions_sum(action_data_table): return ( - new_episode.action_data_table.set_index("timestamp")[ + action_data_table.set_index("timestamp")[ ["action_line", "action_subs", "action_redisp"] ] .sum(axis=1) diff --git a/grid2viz/src/macro/macro_clbk.py b/grid2viz/src/macro/macro_clbk.py index 48aeea2..7570421 100644 --- a/grid2viz/src/macro/macro_clbk.py +++ b/grid2viz/src/macro/macro_clbk.py @@ -288,6 +288,8 @@ def get_nb_maintenances(episode): gen_name="Gen name", action_id="Action id", distance="Topological distance", + is_alarm="is_alarm", + alarm_zone="alarm_zone" ) @app.callback( @@ -299,7 +301,7 @@ def update_agent_log_action_table(study_agent, scenario): table = actions_model.get_action_table_data(new_episode) table["id"] = table["timestep"] table.set_index("id", inplace=True, drop=False) - cols_to_exclude = ["id", "lines_modified", "subs_modified", "gens_modified"] + cols_to_exclude = ["id", "lines_modified", "subs_modified", "gens_modified","is_action"] cols = [ {"name": action_table_name_converter[col], "id": col} for col in table.columns diff --git a/grid2viz/src/manager.py b/grid2viz/src/manager.py index 62f6451..2d60fa1 100644 --- a/grid2viz/src/manager.py +++ b/grid2viz/src/manager.py @@ -388,9 +388,11 @@ def check_all_tree_and_get_meta_and_best(base_dir, agents): meta_json = {} scenarios = set() survival_dic = {} + attention_dic = {} for agent in agents: survival_dic_agent = {} + attention_dic_agent = {} for scenario_name in os.listdir(os.path.join(base_dir, agent)): scenario_folder = os.path.join(base_dir, agent, scenario_name) @@ -434,18 +436,34 @@ def check_all_tree_and_get_meta_and_best(base_dir, agents): best_agents[scenario_name]["out_of"] = ( best_agents[scenario_name]["out_of"] + 1 ) + other_reward_json_path=os.path.join(scenario_folder, "other_rewards.json") + if os.path.exists(other_reward_json_path): + with open(other_reward_json_path) as f: + other_reward_meta = json.load(fp=f) + last_step_rewards=other_reward_meta[len(other_reward_meta) - 1] + if 'attention_score' in last_step_rewards.keys(): + attention_dic_agent[scenario_name] = last_step_rewards['attention_score'] + f.close() + + survival_dic[agent] = survival_dic_agent + attention_dic[agent] = attention_dic_agent survival_df = pd.DataFrame(columns=agents, index=scenarios) + attention_df = pd.DataFrame(columns=agents, index=scenarios)#, dtype=np.int64) for agent in agents: survival_dic_agent = survival_dic[agent] + attention_dic_agent = attention_dic[agent] for (scenario, survival_time) in survival_dic_agent.items(): survival_df.loc[scenario][agent] = survival_time + if len(attention_dic_agent) != 0: + for (scenario, attention_score) in attention_dic_agent.items(): + attention_df.loc[scenario][agent] = np.round(attention_score,2) survival_df = survival_df.fillna(-1) # To be able to cast as int below. survival_df = survival_df.astype(int) - return meta_json, best_agents, survival_df + return meta_json, best_agents, survival_df, attention_df """ @@ -470,7 +488,7 @@ def check_all_tree_and_get_meta_and_best(base_dir, agents): if os.path.isdir(os.path.join(agents_dir, file)) and not file.startswith("_") ] ) -meta_json, best_agents, survival_df = check_all_tree_and_get_meta_and_best( +meta_json, best_agents, survival_df, attention_df = check_all_tree_and_get_meta_and_best( agents_dir, agents ) scenarios = [] diff --git a/grid2viz/src/utils/common_graph.py b/grid2viz/src/utils/common_graph.py index 7a0ed71..06418c8 100644 --- a/grid2viz/src/utils/common_graph.py +++ b/grid2viz/src/utils/common_graph.py @@ -213,74 +213,183 @@ def action_tooltip(episode_actions): return tooltip - -def make_action_ts(study_agent, ref_agent, scenario, layout_def=None): +def make_action_trace( agent_name,agent_episode,max_ts,color,graph_type="Reward"): """ - Make the action timeseries trace of study and reference agents. - - :param study_agent: studied agent to compare - :param ref_agent: reference agent to compare with - :param scenario: - :param layout_def: layout page - :return: nb action and distance for each agents + Make a trace for action events + + :param agent_name: agent to consider + :param agent_episode: agent episode + :param max_ts: maximum number of timesteps to display + :param color: marker color + :param marker_type: type of event considered for marker name + :return: a marker trace """ - ref_episode = make_episode(ref_agent, scenario) - study_episode = make_episode(study_agent, scenario) - actions_ts = get_actions_sum(study_episode) - ref_agent_actions_ts = get_actions_sum(ref_episode) + study_action_df = agent_episode.action_data_table - # used below to make sure the x-axis length is the study agent one - study_agent_length = len(study_episode.action_data_table) + if(graph_type=="Reward"): + + action_events_df = reward_trace_event_df(agent_episode, col="is_action") + + + else:# (graph_type=="Topology") + action_events_df=topology_trace_event_df(study_action_df, col="is_action") + + action_text = ["
-".join(str(act).split("-")) for act in agent_episode.actions] + + marker_type="Actions" + action_trace=make_marker_trace(action_events_df.iloc[:max_ts],marker_name=agent_name+" "+marker_type, + color=color,text=action_text[:max_ts]) + + return action_trace + + + actions_ts = get_actions_sum(agent_episode) action_events_df = pd.DataFrame( index=actions_ts.index, data=np.nan, columns=["action_events"] ) action_events_df.loc[ (actions_ts["Nb Actions"] > 0).values, "action_events" - ] = study_episode.action_data_table.loc[ + ] = agent_episode.action_data_table.loc[ (actions_ts["Nb Actions"] > 0).values, "distance" ].values - study_text = ["
-".join(str(act).split("-")) for act in study_episode.actions] - action_trace = go.Scatter( - x=action_events_df.index, - y=action_events_df["action_events"], - name=study_agent + " Actions", - mode="markers", - marker_color="#FFEB3B", - marker={"symbol": "hexagon", "size": 10}, - text=study_text, + study_text = ["
-".join(str(act).split("-")) for act in agent_episode.actions] + + action_trace = make_marker_trace(action_events_df.iloc[:max_ts], marker_name=agent_name + " "+marker_type, + color=color, text=study_text[:max_ts]) + return action_trace + +def reward_trace_event_df(agent_episode,col="is_action"):#else is_alarm + df = observation_model.get_df_computed_reward(agent_episode) + study_action_df = agent_episode.action_data_table + + actions_ts = get_actions_sum(study_action_df) + study_action_df["is_action"]=(actions_ts["Nb Actions"] > 0).values + + reward_event_df = pd.DataFrame( + index=df["timestep"], data=np.nan, columns=["events"] ) + reward_event_df.loc[ + study_action_df[col].values, "events" + ] = df.loc[(study_action_df[col]), "rewards"].values + + return reward_event_df + #alarm_text = ["
-".join(alarm_zone) for alarm_zone in study_action_df.alarm_zone] + - ref_action_events_df = pd.DataFrame( - index=ref_agent_actions_ts.index, data=np.nan, columns=["action_events"] +def topology_trace_event_df(study_action_df, col="is_action"): + actions_ts = get_actions_sum(study_action_df) + study_action_df["is_action"]=(actions_ts["Nb Actions"] > 0).values + + topology_distance_events_df = pd.DataFrame( + index=actions_ts.index, data=np.nan, columns=["events"] ) - ref_action_events_df.loc[ - (ref_agent_actions_ts["Nb Actions"] > 0).values, "action_events" - ] = ref_episode.action_data_table.loc[ - (ref_agent_actions_ts["Nb Actions"] > 0).values, "distance" + topology_distance_events_df.loc[ + study_action_df[col].values, "events" + ] = study_action_df.loc[ + study_action_df[col], "distance" ].values - ref_text = ["
-".join(str(act).split("-")) for act in ref_episode.actions] - ref_text = ref_text[:study_agent_length] - ref_action_trace = go.Scatter( - x=ref_action_events_df.index[:study_agent_length], - y=ref_action_events_df["action_events"][:study_agent_length], - name=ref_agent + " Actions", + return topology_distance_events_df + # alarm_text = ["
-".join(alarm_zone) for alarm_zone in study_action_df.alarm_zone] + +def make_alarm_trace( agent_name,agent_episode,max_ts,color,graph_type="Reward"): + """ + Make a trace for alarm events + + :param agent_name: agent to consider + :param agent_episode: agent episode + :param max_ts: maximum number of timesteps to display + :param color: marker color + :param marker_type: type of event considered for marker name + :return: a marker trace + """ + study_action_df = agent_episode.action_data_table + + if(graph_type=="Reward"): + + alarm_events_df = reward_trace_event_df(agent_episode, col="is_alarm") + + + else:# (graph_type=="Topology") + alarm_events_df=topology_trace_event_df(study_action_df, col="is_alarm") + + alarm_text = ["
-".join(alarm_zone) for alarm_zone in study_action_df.alarm_zone] + + marker_type = "Alarms" + alarm_trace=make_marker_trace(alarm_events_df.iloc[:max_ts],marker_name=agent_name+" "+marker_type, + color=color,text=alarm_text[:max_ts]) + + return alarm_trace + +def make_marker_trace( events_df,marker_name,color,text): + """ + Make a colored marker trace for specific events with some text + + :param events_df: an event dataframe with timestamps as index and 1 event column + :param marker_name: marker name according to type of events and agent + :param color: marker color + :param text: hover text for markers + :return: a marker trace + """ + + event_trace = go.Scatter( + x=events_df.index, + y=events_df[events_df.columns[0]], + name=marker_name, mode="markers", - marker_color="#FF5000", + marker_color=color, marker={"symbol": "hexagon", "size": 10}, - text=ref_text, + text=text, ) + return event_trace + + +def make_action_ts(study_agent, ref_agent, scenario, layout_def=None): + """ + Make the action timeseries trace of study and reference agents. + + :param study_agent: studied agent to compare + :param ref_agent: reference agent to compare with + :param scenario: + :param layout_def: layout page + :return: nb action and distance for each agents + """ + ref_episode = make_episode(ref_agent, scenario) + study_episode = make_episode(study_agent, scenario) + + study_action_df = study_episode.action_data_table + ref_action_df = ref_episode.action_data_table + + actions_ts = get_actions_sum(study_action_df) + ref_agent_actions_ts = get_actions_sum(ref_action_df) + + # used below to make sure the x-axis length is the study agent one + + max_ts = len(study_episode.action_data_table) + + # create event marker traces + action_trace=make_action_trace(agent_name=study_agent, agent_episode=study_episode, + max_ts=max_ts, color="#FFEB3B", graph_type="Topology") + + alarm_trace=make_alarm_trace( study_agent,study_episode,max_ts,"orange",graph_type="Topology") + + ref_action_trace=make_action_trace(agent_name=ref_agent, agent_episode=ref_episode, + max_ts=max_ts, color="#FF5000", graph_type="Topology") + + ref_alarm_trace=make_alarm_trace( ref_agent,ref_episode,max_ts,"purple",graph_type="Topology") + + distance_trace = go.Scatter( - x=study_episode.action_data_table.timestamp, - y=study_episode.action_data_table["distance"], + x=study_action_df.timestamp, + y=study_action_df["distance"], name=study_agent, ) ref_distance_trace = go.Scatter( - x=ref_episode.action_data_table.timestamp[:study_agent_length], - y=ref_episode.action_data_table["distance"][:study_agent_length], + x=ref_action_df.timestamp[:max_ts], + y=ref_action_df["distance"][:max_ts], name=ref_agent, ) @@ -290,8 +399,10 @@ def make_action_ts(study_agent, ref_agent, scenario, layout_def=None): "data": [ distance_trace, action_trace, + alarm_trace, ref_distance_trace, ref_action_trace, + ref_alarm_trace ], "layout": layout_def, } @@ -313,42 +424,28 @@ def make_rewards_ts( """ study_episode = make_episode(study_agent, scenario) ref_episode = make_episode(ref_agent, scenario) - actions_ts = ( - study_episode.action_data_table.set_index("timestamp")[ - ["action_line", "action_subs", "action_redisp"] - ] - .sum(axis=1) - .to_frame(name="Nb Actions") - ) - df = observation_model.get_df_computed_reward(study_episode) - action_events_df = pd.DataFrame( - index=df["timestep"], data=np.nan, columns=["action_events"] - ) - action_events_df.loc[ - (actions_ts["Nb Actions"] > 0).values, "action_events" - ] = df.loc[(actions_ts["Nb Actions"] > 0).values, "rewards"].values - text = ["
-".join(str(act).split("-")) for act in study_episode.actions] - action_trace = go.Scatter( - x=action_events_df.index, - y=action_events_df["action_events"], - name="Actions", - mode="markers", - marker_color="#FFEB3B", - marker={"symbol": "hexagon", "size": 10}, - text=text, - ) + max_ts=len(study_episode.action_data_table) + + #create event marker traces + action_trace=make_action_trace(agent_name=study_agent, agent_episode=study_episode, + max_ts=max_ts, color="#FFEB3B", graph_type="Reward") + + alarm_trace=make_alarm_trace( study_agent,study_episode,max_ts,"orange",graph_type="Reward") + + # create reward traces ref_reward_trace, ref_reward_cum_trace = ref_episode.reward_trace ( studied_agent_reward_trace, studied_agent_reward_cum_trace, ) = study_episode.reward_trace - reward_figure["data"] = [ref_reward_trace, studied_agent_reward_trace, action_trace] + reward_figure["data"] = [ref_reward_trace, studied_agent_reward_trace, action_trace,alarm_trace] cumulative_reward_figure["data"] = [ ref_reward_cum_trace, studied_agent_reward_cum_trace, ] + for figure in [reward_figure, cumulative_reward_figure]: # Base on the hypothesis that the study agent trace is in position one # TODO: clean this up. We should not rely on the position of the study @@ -364,6 +461,7 @@ def make_rewards_ts( } ) + return reward_figure, cumulative_reward_figure diff --git a/pyproject.toml b/pyproject.toml old mode 100644 new mode 100755 index 237122b..8f0e239 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,7 @@ dash = "^1.17.0" dash-bootstrap-components = "^0.10.7" dash-antd-components = "^0.0.1-rc.2" dill = "^0.3.3" -Grid2Op = "^1.5.1" +Grid2Op = "^1.6.4" imageio = "^2.9.0" jupyter-dash = "^0.3.1" pathos = "^0.2.7" diff --git a/requirements.txt b/requirements.txt index 892b36a..7981879 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ dash == 1.17.0 dash-bootstrap-components == 0.10.7 dash-antd-components == 0.0.1-rc.2 dill == 0.3.3 -Grid2Op == 1.5.1 +Grid2Op == 1.6.4 imageio == 2.9.0 jupyter-dash == 0.3.1 pathos == 0.2.7 diff --git a/tests/data/agents/alarm-baseline/000/_parameters.json b/tests/data/agents/alarm-baseline/000/_parameters.json new file mode 100644 index 0000000..5afeca2 --- /dev/null +++ b/tests/data/agents/alarm-baseline/000/_parameters.json @@ -0,0 +1,18 @@ +{ + "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, + "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, + "ENV_DC": false, + "FORECAST_DC": false, + "HARD_OVERFLOW_THRESHOLD": 2.0, + "IGNORE_MIN_UP_DOWN_TIME": true, + "INIT_STORAGE_CAPACITY": 0.5, + "MAX_LINE_STATUS_CHANGED": 999, + "MAX_SUB_CHANGED": 999, + "NB_TIMESTEP_COOLDOWN_LINE": 0, + "NB_TIMESTEP_COOLDOWN_SUB": 0, + "NB_TIMESTEP_OVERFLOW_ALLOWED": 2, + "NB_TIMESTEP_RECONNECTION": 10, + "NO_OVERFLOW_DISCONNECTION": true +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/000/actions.npz b/tests/data/agents/alarm-baseline/000/actions.npz new file mode 100644 index 0000000..95d1453 Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/actions.npz differ diff --git a/tests/data/agents/alarm-baseline/000/agent_exec_times.npz b/tests/data/agents/alarm-baseline/000/agent_exec_times.npz new file mode 100644 index 0000000..297f638 Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/agent_exec_times.npz differ diff --git a/tests/data/agents/alarm-baseline/000/disc_lines_cascading_failure.npz b/tests/data/agents/alarm-baseline/000/disc_lines_cascading_failure.npz new file mode 100644 index 0000000..990d4e3 Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/alarm-baseline/000/env_modifications.npz b/tests/data/agents/alarm-baseline/000/env_modifications.npz new file mode 100644 index 0000000..8a7989e Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/env_modifications.npz differ diff --git a/tests/data/agents/alarm-baseline/000/episode_meta.json b/tests/data/agents/alarm-baseline/000/episode_meta.json new file mode 100644 index 0000000..a8e4850 --- /dev/null +++ b/tests/data/agents/alarm-baseline/000/episode_meta.json @@ -0,0 +1,11 @@ +{ + "agent_seed": 0, + "backend_type": "LightSimBackend_rte_case14_realistic", + "chronics_max_timestep": "10", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/000", + "cumulative_reward": 11076.7685546875, + "env_seed": 0, + "env_type": "Environment_rte_case14_realistic", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", + "nb_timestep_played": 10 +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/000/episode_times.json b/tests/data/agents/alarm-baseline/000/episode_times.json new file mode 100644 index 0000000..8636226 --- /dev/null +++ b/tests/data/agents/alarm-baseline/000/episode_times.json @@ -0,0 +1,12 @@ +{ + "Agent": { + "total": 0.0006897449493408203 + }, + "Env": { + "apply_act": 0.003977537155151367, + "observation_computation": 0.002933979034423828, + "powerflow_computation": 0.0012326240539550781, + "total": 0.008144140243530273 + }, + "total": 0.0111083984375 +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/000/grid2op.info b/tests/data/agents/alarm-baseline/000/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/alarm-baseline/000/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/000/observations.npz b/tests/data/agents/alarm-baseline/000/observations.npz new file mode 100644 index 0000000..5beac4d Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/observations.npz differ diff --git a/tests/data/agents/alarm-baseline/000/opponent_attack.npz b/tests/data/agents/alarm-baseline/000/opponent_attack.npz new file mode 100644 index 0000000..8e0fe3a Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/opponent_attack.npz differ diff --git a/tests/data/agents/alarm-baseline/000/other_rewards.json b/tests/data/agents/alarm-baseline/000/other_rewards.json new file mode 100644 index 0000000..6a1b4f2 --- /dev/null +++ b/tests/data/agents/alarm-baseline/000/other_rewards.json @@ -0,0 +1,12 @@ +[ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} +] \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/000/rewards.npz b/tests/data/agents/alarm-baseline/000/rewards.npz new file mode 100644 index 0000000..c72a127 Binary files /dev/null and b/tests/data/agents/alarm-baseline/000/rewards.npz differ diff --git a/tests/data/agents/alarm-baseline/dict_action_space.json b/tests/data/agents/alarm-baseline/dict_action_space.json new file mode 100644 index 0000000..3125bc7 --- /dev/null +++ b/tests/data/agents/alarm-baseline/dict_action_space.json @@ -0,0 +1,523 @@ +{ + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.PlayableAction.PlayableAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, + "env_name": "rte_case14_realistic", + "gen_cost_per_MW": [ + 40.0, + 70.0, + 0.0, + 0.0, + 70.0 + ], + "gen_max_ramp_down": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_max_ramp_up": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_min_downtime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_min_uptime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_pmax": [ + 150.0, + 200.0, + 70.0, + 50.0, + 300.0 + ], + "gen_pmin": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "gen_pos_topo_vect": [ + 7, + 11, + 28, + 34, + 2 + ], + "gen_redispatchable": [ + true, + true, + false, + false, + true + ], + "gen_renewable": [ + false, + false, + true, + true, + false + ], + "gen_shutdown_cost": [ + 10.0, + 1.0, + 0.0, + 0.0, + 1.0 + ], + "gen_startup_cost": [ + 20.0, + 2.0, + 0.0, + 0.0, + 2.0 + ], + "gen_to_sub_pos": [ + 4, + 2, + 4, + 1, + 2 + ], + "gen_to_subid": [ + 1, + 2, + 5, + 7, + 0 + ], + "gen_type": [ + "nuclear", + "thermal", + "wind", + "solar", + "thermal" + ], + "glop_version": "1.6.4", + "grid_layout": { + "sub_0": [ + -280.0, + -81.0 + ], + "sub_1": [ + -100.0, + -270.0 + ], + "sub_10": [ + 79.0, + 162.0 + ], + "sub_11": [ + -170.0, + 270.0 + ], + "sub_12": [ + -64.0, + 270.0 + ], + "sub_13": [ + 222.0, + 216.0 + ], + "sub_2": [ + 366.0, + -270.0 + ], + "sub_3": [ + 366.0, + -54.0 + ], + "sub_4": [ + -64.0, + -54.0 + ], + "sub_5": [ + -64.0, + 54.0 + ], + "sub_6": [ + 450.0, + 0.0 + ], + "sub_7": [ + 550.0, + 0.0 + ], + "sub_8": [ + 326.0, + 54.0 + ], + "sub_9": [ + 222.0, + 108.0 + ] + }, + "line_ex_pos_topo_vect": [ + 3, + 19, + 9, + 13, + 20, + 14, + 21, + 43, + 46, + 49, + 40, + 53, + 44, + 50, + 54, + 30, + 37, + 27, + 33, + 32 + ], + "line_ex_to_sub_pos": [ + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 2, + 3, + 0, + 2 + ], + "line_ex_to_subid": [ + 1, + 4, + 2, + 3, + 4, + 3, + 4, + 10, + 11, + 12, + 9, + 13, + 10, + 12, + 13, + 6, + 8, + 5, + 7, + 6 + ], + "line_or_pos_topo_vect": [ + 0, + 1, + 4, + 5, + 6, + 10, + 15, + 24, + 25, + 26, + 35, + 36, + 41, + 47, + 51, + 16, + 17, + 22, + 31, + 38 + ], + "line_or_to_sub_pos": [ + 0, + 1, + 1, + 2, + 3, + 1, + 2, + 0, + 1, + 2, + 0, + 1, + 1, + 1, + 2, + 3, + 4, + 3, + 1, + 3 + ], + "line_or_to_subid": [ + 0, + 0, + 1, + 1, + 1, + 2, + 3, + 5, + 5, + 5, + 8, + 8, + 9, + 11, + 12, + 3, + 3, + 4, + 6, + 8 + ], + "load_pos_topo_vect": [ + 8, + 12, + 18, + 23, + 29, + 39, + 42, + 45, + 48, + 52, + 55 + ], + "load_to_sub_pos": [ + 5, + 3, + 5, + 4, + 5, + 4, + 2, + 2, + 2, + 3, + 2 + ], + "load_to_subid": [ + 1, + 2, + 3, + 4, + 5, + 8, + 9, + 10, + 11, + 12, + 13 + ], + "name_gen": [ + "gen_1_0", + "gen_2_1", + "gen_5_2", + "gen_7_3", + "gen_0_4" + ], + "name_line": [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ], + "name_load": [ + "load_1_0", + "load_2_1", + "load_3_2", + "load_4_3", + "load_5_4", + "load_8_5", + "load_9_6", + "load_10_7", + "load_11_8", + "load_12_9", + "load_13_10" + ], + "name_shunt": [ + "shunt_8_0" + ], + "name_storage": [], + "name_sub": [ + "sub_0", + "sub_1", + "sub_2", + "sub_3", + "sub_4", + "sub_5", + "sub_6", + "sub_7", + "sub_8", + "sub_9", + "sub_10", + "sub_11", + "sub_12", + "sub_13" + ], + "shunt_to_subid": [ + 8 + ], + "storage_Emax": [], + "storage_Emin": [], + "storage_charging_efficiency": [], + "storage_discharging_efficiency": [], + "storage_loss": [], + "storage_marginal_cost": [], + "storage_max_p_absorb": [], + "storage_max_p_prod": [], + "storage_pos_topo_vect": [], + "storage_to_sub_pos": [], + "storage_to_subid": [], + "storage_type": [], + "sub_info": [ + 3, + 6, + 4, + 6, + 5, + 6, + 3, + 2, + 5, + 3, + 3, + 3, + 4, + 3 + ] +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/dict_attack_space.json b/tests/data/agents/alarm-baseline/dict_attack_space.json new file mode 100644 index 0000000..bfa702e --- /dev/null +++ b/tests/data/agents/alarm-baseline/dict_attack_space.json @@ -0,0 +1,523 @@ +{ + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.DontAct.DontAct", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, + "env_name": "rte_case14_realistic", + "gen_cost_per_MW": [ + 40.0, + 70.0, + 0.0, + 0.0, + 70.0 + ], + "gen_max_ramp_down": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_max_ramp_up": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_min_downtime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_min_uptime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_pmax": [ + 150.0, + 200.0, + 70.0, + 50.0, + 300.0 + ], + "gen_pmin": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "gen_pos_topo_vect": [ + 7, + 11, + 28, + 34, + 2 + ], + "gen_redispatchable": [ + true, + true, + false, + false, + true + ], + "gen_renewable": [ + false, + false, + true, + true, + false + ], + "gen_shutdown_cost": [ + 10.0, + 1.0, + 0.0, + 0.0, + 1.0 + ], + "gen_startup_cost": [ + 20.0, + 2.0, + 0.0, + 0.0, + 2.0 + ], + "gen_to_sub_pos": [ + 4, + 2, + 4, + 1, + 2 + ], + "gen_to_subid": [ + 1, + 2, + 5, + 7, + 0 + ], + "gen_type": [ + "nuclear", + "thermal", + "wind", + "solar", + "thermal" + ], + "glop_version": "1.6.4", + "grid_layout": { + "sub_0": [ + -280.0, + -81.0 + ], + "sub_1": [ + -100.0, + -270.0 + ], + "sub_10": [ + 79.0, + 162.0 + ], + "sub_11": [ + -170.0, + 270.0 + ], + "sub_12": [ + -64.0, + 270.0 + ], + "sub_13": [ + 222.0, + 216.0 + ], + "sub_2": [ + 366.0, + -270.0 + ], + "sub_3": [ + 366.0, + -54.0 + ], + "sub_4": [ + -64.0, + -54.0 + ], + "sub_5": [ + -64.0, + 54.0 + ], + "sub_6": [ + 450.0, + 0.0 + ], + "sub_7": [ + 550.0, + 0.0 + ], + "sub_8": [ + 326.0, + 54.0 + ], + "sub_9": [ + 222.0, + 108.0 + ] + }, + "line_ex_pos_topo_vect": [ + 3, + 19, + 9, + 13, + 20, + 14, + 21, + 43, + 46, + 49, + 40, + 53, + 44, + 50, + 54, + 30, + 37, + 27, + 33, + 32 + ], + "line_ex_to_sub_pos": [ + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 2, + 3, + 0, + 2 + ], + "line_ex_to_subid": [ + 1, + 4, + 2, + 3, + 4, + 3, + 4, + 10, + 11, + 12, + 9, + 13, + 10, + 12, + 13, + 6, + 8, + 5, + 7, + 6 + ], + "line_or_pos_topo_vect": [ + 0, + 1, + 4, + 5, + 6, + 10, + 15, + 24, + 25, + 26, + 35, + 36, + 41, + 47, + 51, + 16, + 17, + 22, + 31, + 38 + ], + "line_or_to_sub_pos": [ + 0, + 1, + 1, + 2, + 3, + 1, + 2, + 0, + 1, + 2, + 0, + 1, + 1, + 1, + 2, + 3, + 4, + 3, + 1, + 3 + ], + "line_or_to_subid": [ + 0, + 0, + 1, + 1, + 1, + 2, + 3, + 5, + 5, + 5, + 8, + 8, + 9, + 11, + 12, + 3, + 3, + 4, + 6, + 8 + ], + "load_pos_topo_vect": [ + 8, + 12, + 18, + 23, + 29, + 39, + 42, + 45, + 48, + 52, + 55 + ], + "load_to_sub_pos": [ + 5, + 3, + 5, + 4, + 5, + 4, + 2, + 2, + 2, + 3, + 2 + ], + "load_to_subid": [ + 1, + 2, + 3, + 4, + 5, + 8, + 9, + 10, + 11, + 12, + 13 + ], + "name_gen": [ + "gen_1_0", + "gen_2_1", + "gen_5_2", + "gen_7_3", + "gen_0_4" + ], + "name_line": [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ], + "name_load": [ + "load_1_0", + "load_2_1", + "load_3_2", + "load_4_3", + "load_5_4", + "load_8_5", + "load_9_6", + "load_10_7", + "load_11_8", + "load_12_9", + "load_13_10" + ], + "name_shunt": [ + "shunt_8_0" + ], + "name_storage": [], + "name_sub": [ + "sub_0", + "sub_1", + "sub_2", + "sub_3", + "sub_4", + "sub_5", + "sub_6", + "sub_7", + "sub_8", + "sub_9", + "sub_10", + "sub_11", + "sub_12", + "sub_13" + ], + "shunt_to_subid": [ + 8 + ], + "storage_Emax": [], + "storage_Emin": [], + "storage_charging_efficiency": [], + "storage_discharging_efficiency": [], + "storage_loss": [], + "storage_marginal_cost": [], + "storage_max_p_absorb": [], + "storage_max_p_prod": [], + "storage_pos_topo_vect": [], + "storage_to_sub_pos": [], + "storage_to_subid": [], + "storage_type": [], + "sub_info": [ + 3, + 6, + 4, + 6, + 5, + 6, + 3, + 2, + 5, + 3, + 3, + 3, + 4, + 3 + ] +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/dict_env_modification_space.json b/tests/data/agents/alarm-baseline/dict_env_modification_space.json new file mode 100644 index 0000000..00b61a6 --- /dev/null +++ b/tests/data/agents/alarm-baseline/dict_env_modification_space.json @@ -0,0 +1,523 @@ +{ + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.CompleteAction.CompleteAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, + "env_name": "rte_case14_realistic", + "gen_cost_per_MW": [ + 40.0, + 70.0, + 0.0, + 0.0, + 70.0 + ], + "gen_max_ramp_down": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_max_ramp_up": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_min_downtime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_min_uptime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_pmax": [ + 150.0, + 200.0, + 70.0, + 50.0, + 300.0 + ], + "gen_pmin": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "gen_pos_topo_vect": [ + 7, + 11, + 28, + 34, + 2 + ], + "gen_redispatchable": [ + true, + true, + false, + false, + true + ], + "gen_renewable": [ + false, + false, + true, + true, + false + ], + "gen_shutdown_cost": [ + 10.0, + 1.0, + 0.0, + 0.0, + 1.0 + ], + "gen_startup_cost": [ + 20.0, + 2.0, + 0.0, + 0.0, + 2.0 + ], + "gen_to_sub_pos": [ + 4, + 2, + 4, + 1, + 2 + ], + "gen_to_subid": [ + 1, + 2, + 5, + 7, + 0 + ], + "gen_type": [ + "nuclear", + "thermal", + "wind", + "solar", + "thermal" + ], + "glop_version": "1.6.4", + "grid_layout": { + "sub_0": [ + -280.0, + -81.0 + ], + "sub_1": [ + -100.0, + -270.0 + ], + "sub_10": [ + 79.0, + 162.0 + ], + "sub_11": [ + -170.0, + 270.0 + ], + "sub_12": [ + -64.0, + 270.0 + ], + "sub_13": [ + 222.0, + 216.0 + ], + "sub_2": [ + 366.0, + -270.0 + ], + "sub_3": [ + 366.0, + -54.0 + ], + "sub_4": [ + -64.0, + -54.0 + ], + "sub_5": [ + -64.0, + 54.0 + ], + "sub_6": [ + 450.0, + 0.0 + ], + "sub_7": [ + 550.0, + 0.0 + ], + "sub_8": [ + 326.0, + 54.0 + ], + "sub_9": [ + 222.0, + 108.0 + ] + }, + "line_ex_pos_topo_vect": [ + 3, + 19, + 9, + 13, + 20, + 14, + 21, + 43, + 46, + 49, + 40, + 53, + 44, + 50, + 54, + 30, + 37, + 27, + 33, + 32 + ], + "line_ex_to_sub_pos": [ + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 2, + 3, + 0, + 2 + ], + "line_ex_to_subid": [ + 1, + 4, + 2, + 3, + 4, + 3, + 4, + 10, + 11, + 12, + 9, + 13, + 10, + 12, + 13, + 6, + 8, + 5, + 7, + 6 + ], + "line_or_pos_topo_vect": [ + 0, + 1, + 4, + 5, + 6, + 10, + 15, + 24, + 25, + 26, + 35, + 36, + 41, + 47, + 51, + 16, + 17, + 22, + 31, + 38 + ], + "line_or_to_sub_pos": [ + 0, + 1, + 1, + 2, + 3, + 1, + 2, + 0, + 1, + 2, + 0, + 1, + 1, + 1, + 2, + 3, + 4, + 3, + 1, + 3 + ], + "line_or_to_subid": [ + 0, + 0, + 1, + 1, + 1, + 2, + 3, + 5, + 5, + 5, + 8, + 8, + 9, + 11, + 12, + 3, + 3, + 4, + 6, + 8 + ], + "load_pos_topo_vect": [ + 8, + 12, + 18, + 23, + 29, + 39, + 42, + 45, + 48, + 52, + 55 + ], + "load_to_sub_pos": [ + 5, + 3, + 5, + 4, + 5, + 4, + 2, + 2, + 2, + 3, + 2 + ], + "load_to_subid": [ + 1, + 2, + 3, + 4, + 5, + 8, + 9, + 10, + 11, + 12, + 13 + ], + "name_gen": [ + "gen_1_0", + "gen_2_1", + "gen_5_2", + "gen_7_3", + "gen_0_4" + ], + "name_line": [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ], + "name_load": [ + "load_1_0", + "load_2_1", + "load_3_2", + "load_4_3", + "load_5_4", + "load_8_5", + "load_9_6", + "load_10_7", + "load_11_8", + "load_12_9", + "load_13_10" + ], + "name_shunt": [ + "shunt_8_0" + ], + "name_storage": [], + "name_sub": [ + "sub_0", + "sub_1", + "sub_2", + "sub_3", + "sub_4", + "sub_5", + "sub_6", + "sub_7", + "sub_8", + "sub_9", + "sub_10", + "sub_11", + "sub_12", + "sub_13" + ], + "shunt_to_subid": [ + 8 + ], + "storage_Emax": [], + "storage_Emin": [], + "storage_charging_efficiency": [], + "storage_discharging_efficiency": [], + "storage_loss": [], + "storage_marginal_cost": [], + "storage_max_p_absorb": [], + "storage_max_p_prod": [], + "storage_pos_topo_vect": [], + "storage_to_sub_pos": [], + "storage_to_subid": [], + "storage_type": [], + "sub_info": [ + 3, + 6, + 4, + 6, + 5, + 6, + 3, + 2, + 5, + 3, + 3, + 3, + 4, + 3 + ] +} \ No newline at end of file diff --git a/tests/data/agents/alarm-baseline/dict_observation_space.json b/tests/data/agents/alarm-baseline/dict_observation_space.json new file mode 100644 index 0000000..bc5346c --- /dev/null +++ b/tests/data/agents/alarm-baseline/dict_observation_space.json @@ -0,0 +1,523 @@ +{ + "_PATH_ENV": null, + "_init_subtype": "grid2op.Observation.CompleteObservation.CompleteObservation", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, + "env_name": "rte_case14_realistic", + "gen_cost_per_MW": [ + 40.0, + 70.0, + 0.0, + 0.0, + 70.0 + ], + "gen_max_ramp_down": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_max_ramp_up": [ + 5.0, + 10.0, + 0.0, + 0.0, + 10.0 + ], + "gen_min_downtime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_min_uptime": [ + 96, + 4, + 0, + 0, + 4 + ], + "gen_pmax": [ + 150.0, + 200.0, + 70.0, + 50.0, + 300.0 + ], + "gen_pmin": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "gen_pos_topo_vect": [ + 7, + 11, + 28, + 34, + 2 + ], + "gen_redispatchable": [ + true, + true, + false, + false, + true + ], + "gen_renewable": [ + false, + false, + true, + true, + false + ], + "gen_shutdown_cost": [ + 10.0, + 1.0, + 0.0, + 0.0, + 1.0 + ], + "gen_startup_cost": [ + 20.0, + 2.0, + 0.0, + 0.0, + 2.0 + ], + "gen_to_sub_pos": [ + 4, + 2, + 4, + 1, + 2 + ], + "gen_to_subid": [ + 1, + 2, + 5, + 7, + 0 + ], + "gen_type": [ + "nuclear", + "thermal", + "wind", + "solar", + "thermal" + ], + "glop_version": "1.6.4", + "grid_layout": { + "sub_0": [ + -280.0, + -81.0 + ], + "sub_1": [ + -100.0, + -270.0 + ], + "sub_10": [ + 79.0, + 162.0 + ], + "sub_11": [ + -170.0, + 270.0 + ], + "sub_12": [ + -64.0, + 270.0 + ], + "sub_13": [ + 222.0, + 216.0 + ], + "sub_2": [ + 366.0, + -270.0 + ], + "sub_3": [ + 366.0, + -54.0 + ], + "sub_4": [ + -64.0, + -54.0 + ], + "sub_5": [ + -64.0, + 54.0 + ], + "sub_6": [ + 450.0, + 0.0 + ], + "sub_7": [ + 550.0, + 0.0 + ], + "sub_8": [ + 326.0, + 54.0 + ], + "sub_9": [ + 222.0, + 108.0 + ] + }, + "line_ex_pos_topo_vect": [ + 3, + 19, + 9, + 13, + 20, + 14, + 21, + 43, + 46, + 49, + 40, + 53, + 44, + 50, + 54, + 30, + 37, + 27, + 33, + 32 + ], + "line_ex_to_sub_pos": [ + 0, + 0, + 0, + 0, + 1, + 1, + 2, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 2, + 3, + 0, + 2 + ], + "line_ex_to_subid": [ + 1, + 4, + 2, + 3, + 4, + 3, + 4, + 10, + 11, + 12, + 9, + 13, + 10, + 12, + 13, + 6, + 8, + 5, + 7, + 6 + ], + "line_or_pos_topo_vect": [ + 0, + 1, + 4, + 5, + 6, + 10, + 15, + 24, + 25, + 26, + 35, + 36, + 41, + 47, + 51, + 16, + 17, + 22, + 31, + 38 + ], + "line_or_to_sub_pos": [ + 0, + 1, + 1, + 2, + 3, + 1, + 2, + 0, + 1, + 2, + 0, + 1, + 1, + 1, + 2, + 3, + 4, + 3, + 1, + 3 + ], + "line_or_to_subid": [ + 0, + 0, + 1, + 1, + 1, + 2, + 3, + 5, + 5, + 5, + 8, + 8, + 9, + 11, + 12, + 3, + 3, + 4, + 6, + 8 + ], + "load_pos_topo_vect": [ + 8, + 12, + 18, + 23, + 29, + 39, + 42, + 45, + 48, + 52, + 55 + ], + "load_to_sub_pos": [ + 5, + 3, + 5, + 4, + 5, + 4, + 2, + 2, + 2, + 3, + 2 + ], + "load_to_subid": [ + 1, + 2, + 3, + 4, + 5, + 8, + 9, + 10, + 11, + 12, + 13 + ], + "name_gen": [ + "gen_1_0", + "gen_2_1", + "gen_5_2", + "gen_7_3", + "gen_0_4" + ], + "name_line": [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ], + "name_load": [ + "load_1_0", + "load_2_1", + "load_3_2", + "load_4_3", + "load_5_4", + "load_8_5", + "load_9_6", + "load_10_7", + "load_11_8", + "load_12_9", + "load_13_10" + ], + "name_shunt": [ + "shunt_8_0" + ], + "name_storage": [], + "name_sub": [ + "sub_0", + "sub_1", + "sub_2", + "sub_3", + "sub_4", + "sub_5", + "sub_6", + "sub_7", + "sub_8", + "sub_9", + "sub_10", + "sub_11", + "sub_12", + "sub_13" + ], + "shunt_to_subid": [ + 8 + ], + "storage_Emax": [], + "storage_Emin": [], + "storage_charging_efficiency": [], + "storage_discharging_efficiency": [], + "storage_loss": [], + "storage_marginal_cost": [], + "storage_max_p_absorb": [], + "storage_max_p_prod": [], + "storage_pos_topo_vect": [], + "storage_to_sub_pos": [], + "storage_to_subid": [], + "storage_type": [], + "sub_info": [ + 3, + 6, + 4, + 6, + 5, + 6, + 3, + 2, + 5, + 3, + 3, + 3, + 4, + 3 + ] +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/000/_parameters.json b/tests/data/agents/do-nothing-baseline/000/_parameters.json index 8572cc9..5afeca2 100644 --- a/tests/data/agents/do-nothing-baseline/000/_parameters.json +++ b/tests/data/agents/do-nothing-baseline/000/_parameters.json @@ -1,13 +1,15 @@ { "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, "ENV_DC": false, "FORECAST_DC": false, "HARD_OVERFLOW_THRESHOLD": 2.0, "IGNORE_MIN_UP_DOWN_TIME": true, "INIT_STORAGE_CAPACITY": 0.5, - "MAX_LINE_STATUS_CHANGED": 1, - "MAX_SUB_CHANGED": 1, + "MAX_LINE_STATUS_CHANGED": 999, + "MAX_SUB_CHANGED": 999, "NB_TIMESTEP_COOLDOWN_LINE": 0, "NB_TIMESTEP_COOLDOWN_SUB": 0, "NB_TIMESTEP_OVERFLOW_ALLOWED": 2, diff --git a/tests/data/agents/do-nothing-baseline/000/actions.npz b/tests/data/agents/do-nothing-baseline/000/actions.npz index bb68824..bf460a5 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/actions.npz and b/tests/data/agents/do-nothing-baseline/000/actions.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/agent_exec_times.npz b/tests/data/agents/do-nothing-baseline/000/agent_exec_times.npz index 07e9a86..dff0f80 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/agent_exec_times.npz and b/tests/data/agents/do-nothing-baseline/000/agent_exec_times.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/disc_lines_cascading_failure.npz b/tests/data/agents/do-nothing-baseline/000/disc_lines_cascading_failure.npz index 1a4142d..a4249bc 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/disc_lines_cascading_failure.npz and b/tests/data/agents/do-nothing-baseline/000/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/env_modifications.npz b/tests/data/agents/do-nothing-baseline/000/env_modifications.npz index 9415ec3..7ac014f 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/env_modifications.npz and b/tests/data/agents/do-nothing-baseline/000/env_modifications.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/episode_meta.json b/tests/data/agents/do-nothing-baseline/000/episode_meta.json index 1c85710..7f7886e 100644 --- a/tests/data/agents/do-nothing-baseline/000/episode_meta.json +++ b/tests/data/agents/do-nothing-baseline/000/episode_meta.json @@ -1,11 +1,11 @@ { "agent_seed": null, - "backend_type": "PandaPowerBackend_rte_case14_realistic", + "backend_type": "LightSimBackend_rte_case14_realistic", "chronics_max_timestep": "2000", - "chronics_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\chronics\\000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/000", "cumulative_reward": 2170509.75, "env_seed": null, "env_type": "Environment_rte_case14_realistic", - "grid_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\grid.json", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", "nb_timestep_played": 2000 } \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/000/episode_times.json b/tests/data/agents/do-nothing-baseline/000/episode_times.json index 7614e29..a96e343 100644 --- a/tests/data/agents/do-nothing-baseline/000/episode_times.json +++ b/tests/data/agents/do-nothing-baseline/000/episode_times.json @@ -1,12 +1,12 @@ { "Agent": { - "total": 0.11207723617553711 + "total": 0.06083846092224121 }, "Env": { - "apply_act": 6.839273452758789, - "observation_computation": 3.3150291442871094, - "powerflow_computation": 35.3282744884491, - "total": 45.482577085494995 + "apply_act": 0.746079683303833, + "observation_computation": 0.5833685398101807, + "powerflow_computation": 0.24357843399047852, + "total": 1.5730266571044922 }, - "total": 46.666284799575806 + "total": 2.0846478939056396 } \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/000/grid2op.info b/tests/data/agents/do-nothing-baseline/000/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/000/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/000/observations.npz b/tests/data/agents/do-nothing-baseline/000/observations.npz index b237eb9..d52f1a9 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/observations.npz and b/tests/data/agents/do-nothing-baseline/000/observations.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/opponent_attack.npz b/tests/data/agents/do-nothing-baseline/000/opponent_attack.npz index bf792dc..3b3ae7f 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/opponent_attack.npz and b/tests/data/agents/do-nothing-baseline/000/opponent_attack.npz differ diff --git a/tests/data/agents/do-nothing-baseline/000/rewards.npz b/tests/data/agents/do-nothing-baseline/000/rewards.npz index f35153e..cd4f468 100644 Binary files a/tests/data/agents/do-nothing-baseline/000/rewards.npz and b/tests/data/agents/do-nothing-baseline/000/rewards.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/_parameters.json b/tests/data/agents/do-nothing-baseline/001/_parameters.json new file mode 100644 index 0000000..5afeca2 --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/001/_parameters.json @@ -0,0 +1,18 @@ +{ + "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, + "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, + "ENV_DC": false, + "FORECAST_DC": false, + "HARD_OVERFLOW_THRESHOLD": 2.0, + "IGNORE_MIN_UP_DOWN_TIME": true, + "INIT_STORAGE_CAPACITY": 0.5, + "MAX_LINE_STATUS_CHANGED": 999, + "MAX_SUB_CHANGED": 999, + "NB_TIMESTEP_COOLDOWN_LINE": 0, + "NB_TIMESTEP_COOLDOWN_SUB": 0, + "NB_TIMESTEP_OVERFLOW_ALLOWED": 2, + "NB_TIMESTEP_RECONNECTION": 10, + "NO_OVERFLOW_DISCONNECTION": true +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/001/actions.npz b/tests/data/agents/do-nothing-baseline/001/actions.npz new file mode 100644 index 0000000..bf460a5 Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/actions.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/agent_exec_times.npz b/tests/data/agents/do-nothing-baseline/001/agent_exec_times.npz new file mode 100644 index 0000000..1e24c66 Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/agent_exec_times.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/disc_lines_cascading_failure.npz b/tests/data/agents/do-nothing-baseline/001/disc_lines_cascading_failure.npz new file mode 100644 index 0000000..a4249bc Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/env_modifications.npz b/tests/data/agents/do-nothing-baseline/001/env_modifications.npz new file mode 100644 index 0000000..4778b5d Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/env_modifications.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/episode_meta.json b/tests/data/agents/do-nothing-baseline/001/episode_meta.json new file mode 100644 index 0000000..03020f9 --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/001/episode_meta.json @@ -0,0 +1,11 @@ +{ + "agent_seed": null, + "backend_type": "LightSimBackend_rte_case14_realistic", + "chronics_max_timestep": "2000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/001", + "cumulative_reward": 2146793.0, + "env_seed": null, + "env_type": "Environment_rte_case14_realistic", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", + "nb_timestep_played": 2000 +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/001/episode_times.json b/tests/data/agents/do-nothing-baseline/001/episode_times.json new file mode 100644 index 0000000..7d315b4 --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/001/episode_times.json @@ -0,0 +1,12 @@ +{ + "Agent": { + "total": 0.06248188018798828 + }, + "Env": { + "apply_act": 0.7426388263702393, + "observation_computation": 0.619478702545166, + "powerflow_computation": 0.24665284156799316, + "total": 1.6087703704833984 + }, + "total": 2.092836380004883 +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/001/grid2op.info b/tests/data/agents/do-nothing-baseline/001/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/001/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/001/observations.npz b/tests/data/agents/do-nothing-baseline/001/observations.npz new file mode 100644 index 0000000..be7be14 Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/observations.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/opponent_attack.npz b/tests/data/agents/do-nothing-baseline/001/opponent_attack.npz new file mode 100644 index 0000000..3b3ae7f Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/opponent_attack.npz differ diff --git a/tests/data/agents/do-nothing-baseline/001/other_rewards.json b/tests/data/agents/do-nothing-baseline/001/other_rewards.json new file mode 100644 index 0000000..2b96ec1 --- /dev/null +++ b/tests/data/agents/do-nothing-baseline/001/other_rewards.json @@ -0,0 +1,2002 @@ +[ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} +] \ No newline at end of file diff --git a/tests/data/agents/do-nothing-baseline/001/rewards.npz b/tests/data/agents/do-nothing-baseline/001/rewards.npz new file mode 100644 index 0000000..233ef89 Binary files /dev/null and b/tests/data/agents/do-nothing-baseline/001/rewards.npz differ diff --git a/tests/data/agents/do-nothing-baseline/dict_action_space.json b/tests/data/agents/do-nothing-baseline/dict_action_space.json index 689ece0..3125bc7 100644 --- a/tests/data/agents/do-nothing-baseline/dict_action_space.json +++ b/tests/data/agents/do-nothing-baseline/dict_action_space.json @@ -1,5 +1,96 @@ { - "_init_subtype": "grid2op.Action.TopologyAndDispatchAction.TopologyAndDispatchAction", + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.PlayableAction.PlayableAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/do-nothing-baseline/dict_attack_space.json b/tests/data/agents/do-nothing-baseline/dict_attack_space.json index 5d9fd2b..bfa702e 100644 --- a/tests/data/agents/do-nothing-baseline/dict_attack_space.json +++ b/tests/data/agents/do-nothing-baseline/dict_attack_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.DontAct.DontAct", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/do-nothing-baseline/dict_env_modification_space.json b/tests/data/agents/do-nothing-baseline/dict_env_modification_space.json index cf7155f..00b61a6 100644 --- a/tests/data/agents/do-nothing-baseline/dict_env_modification_space.json +++ b/tests/data/agents/do-nothing-baseline/dict_env_modification_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.CompleteAction.CompleteAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/do-nothing-baseline/dict_observation_space.json b/tests/data/agents/do-nothing-baseline/dict_observation_space.json index f183152..bc5346c 100644 --- a/tests/data/agents/do-nothing-baseline/dict_observation_space.json +++ b/tests/data/agents/do-nothing-baseline/dict_observation_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Observation.CompleteObservation.CompleteObservation", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/greedy-baseline/000/_parameters.json b/tests/data/agents/greedy-baseline/000/_parameters.json index 8572cc9..5afeca2 100644 --- a/tests/data/agents/greedy-baseline/000/_parameters.json +++ b/tests/data/agents/greedy-baseline/000/_parameters.json @@ -1,13 +1,15 @@ { "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, "ENV_DC": false, "FORECAST_DC": false, "HARD_OVERFLOW_THRESHOLD": 2.0, "IGNORE_MIN_UP_DOWN_TIME": true, "INIT_STORAGE_CAPACITY": 0.5, - "MAX_LINE_STATUS_CHANGED": 1, - "MAX_SUB_CHANGED": 1, + "MAX_LINE_STATUS_CHANGED": 999, + "MAX_SUB_CHANGED": 999, "NB_TIMESTEP_COOLDOWN_LINE": 0, "NB_TIMESTEP_COOLDOWN_SUB": 0, "NB_TIMESTEP_OVERFLOW_ALLOWED": 2, diff --git a/tests/data/agents/greedy-baseline/000/actions.npz b/tests/data/agents/greedy-baseline/000/actions.npz index b5dec45..c7dbfce 100644 Binary files a/tests/data/agents/greedy-baseline/000/actions.npz and b/tests/data/agents/greedy-baseline/000/actions.npz differ diff --git a/tests/data/agents/greedy-baseline/000/agent_exec_times.npz b/tests/data/agents/greedy-baseline/000/agent_exec_times.npz index b5b20c3..533f82f 100644 Binary files a/tests/data/agents/greedy-baseline/000/agent_exec_times.npz and b/tests/data/agents/greedy-baseline/000/agent_exec_times.npz differ diff --git a/tests/data/agents/greedy-baseline/000/disc_lines_cascading_failure.npz b/tests/data/agents/greedy-baseline/000/disc_lines_cascading_failure.npz index 1a4142d..a4249bc 100644 Binary files a/tests/data/agents/greedy-baseline/000/disc_lines_cascading_failure.npz and b/tests/data/agents/greedy-baseline/000/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/greedy-baseline/000/env_modifications.npz b/tests/data/agents/greedy-baseline/000/env_modifications.npz index 9415ec3..7ac014f 100644 Binary files a/tests/data/agents/greedy-baseline/000/env_modifications.npz and b/tests/data/agents/greedy-baseline/000/env_modifications.npz differ diff --git a/tests/data/agents/greedy-baseline/000/episode_meta.json b/tests/data/agents/greedy-baseline/000/episode_meta.json index 99f0dcf..5f7f21f 100644 --- a/tests/data/agents/greedy-baseline/000/episode_meta.json +++ b/tests/data/agents/greedy-baseline/000/episode_meta.json @@ -1,11 +1,11 @@ { "agent_seed": null, - "backend_type": "PandaPowerBackend_rte_case14_realistic", + "backend_type": "LightSimBackend_rte_case14_realistic", "chronics_max_timestep": "2000", - "chronics_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\chronics\\000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/000", "cumulative_reward": 2170627.25, "env_seed": null, "env_type": "Environment_rte_case14_realistic", - "grid_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\grid.json", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", "nb_timestep_played": 2000 } \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/000/episode_times.json b/tests/data/agents/greedy-baseline/000/episode_times.json index e2d9be8..8ba7513 100644 --- a/tests/data/agents/greedy-baseline/000/episode_times.json +++ b/tests/data/agents/greedy-baseline/000/episode_times.json @@ -1,12 +1,12 @@ { "Agent": { - "total": 5512.553125619888 + "total": 527.7014029026031 }, "Env": { - "apply_act": 4.9562928676605225, - "observation_computation": 2.445732355117798, - "powerflow_computation": 26.49430799484253, - "total": 33.89633321762085 + "apply_act": 0.8334362506866455, + "observation_computation": 0.6319174766540527, + "powerflow_computation": 0.272111177444458, + "total": 1.7374649047851562 }, - "total": 5548.470085144043 + "total": 530.1043910980225 } \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/000/grid2op.info b/tests/data/agents/greedy-baseline/000/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/greedy-baseline/000/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/000/observations.npz b/tests/data/agents/greedy-baseline/000/observations.npz index 52c1efa..fff7712 100644 Binary files a/tests/data/agents/greedy-baseline/000/observations.npz and b/tests/data/agents/greedy-baseline/000/observations.npz differ diff --git a/tests/data/agents/greedy-baseline/000/opponent_attack.npz b/tests/data/agents/greedy-baseline/000/opponent_attack.npz index bf792dc..3b3ae7f 100644 Binary files a/tests/data/agents/greedy-baseline/000/opponent_attack.npz and b/tests/data/agents/greedy-baseline/000/opponent_attack.npz differ diff --git a/tests/data/agents/greedy-baseline/000/rewards.npz b/tests/data/agents/greedy-baseline/000/rewards.npz index e6d2111..af3968c 100644 Binary files a/tests/data/agents/greedy-baseline/000/rewards.npz and b/tests/data/agents/greedy-baseline/000/rewards.npz differ diff --git a/tests/data/agents/greedy-baseline/001/_parameters.json b/tests/data/agents/greedy-baseline/001/_parameters.json new file mode 100644 index 0000000..5afeca2 --- /dev/null +++ b/tests/data/agents/greedy-baseline/001/_parameters.json @@ -0,0 +1,18 @@ +{ + "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, + "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, + "ENV_DC": false, + "FORECAST_DC": false, + "HARD_OVERFLOW_THRESHOLD": 2.0, + "IGNORE_MIN_UP_DOWN_TIME": true, + "INIT_STORAGE_CAPACITY": 0.5, + "MAX_LINE_STATUS_CHANGED": 999, + "MAX_SUB_CHANGED": 999, + "NB_TIMESTEP_COOLDOWN_LINE": 0, + "NB_TIMESTEP_COOLDOWN_SUB": 0, + "NB_TIMESTEP_OVERFLOW_ALLOWED": 2, + "NB_TIMESTEP_RECONNECTION": 10, + "NO_OVERFLOW_DISCONNECTION": true +} \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/001/actions.npz b/tests/data/agents/greedy-baseline/001/actions.npz new file mode 100644 index 0000000..6e28a84 Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/actions.npz differ diff --git a/tests/data/agents/greedy-baseline/001/agent_exec_times.npz b/tests/data/agents/greedy-baseline/001/agent_exec_times.npz new file mode 100644 index 0000000..c728528 Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/agent_exec_times.npz differ diff --git a/tests/data/agents/greedy-baseline/001/disc_lines_cascading_failure.npz b/tests/data/agents/greedy-baseline/001/disc_lines_cascading_failure.npz new file mode 100644 index 0000000..a4249bc Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/greedy-baseline/001/env_modifications.npz b/tests/data/agents/greedy-baseline/001/env_modifications.npz new file mode 100644 index 0000000..4778b5d Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/env_modifications.npz differ diff --git a/tests/data/agents/greedy-baseline/001/episode_meta.json b/tests/data/agents/greedy-baseline/001/episode_meta.json new file mode 100644 index 0000000..d1eadad --- /dev/null +++ b/tests/data/agents/greedy-baseline/001/episode_meta.json @@ -0,0 +1,11 @@ +{ + "agent_seed": null, + "backend_type": "LightSimBackend_rte_case14_realistic", + "chronics_max_timestep": "2000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/001", + "cumulative_reward": 2146949.75, + "env_seed": null, + "env_type": "Environment_rte_case14_realistic", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", + "nb_timestep_played": 2000 +} \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/001/episode_times.json b/tests/data/agents/greedy-baseline/001/episode_times.json new file mode 100644 index 0000000..358dceb --- /dev/null +++ b/tests/data/agents/greedy-baseline/001/episode_times.json @@ -0,0 +1,12 @@ +{ + "Agent": { + "total": 532.8175413608551 + }, + "Env": { + "apply_act": 0.8405089378356934, + "observation_computation": 0.630375862121582, + "powerflow_computation": 0.2716066837310791, + "total": 1.7424914836883545 + }, + "total": 535.2288701534271 +} \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/001/grid2op.info b/tests/data/agents/greedy-baseline/001/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/greedy-baseline/001/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/001/observations.npz b/tests/data/agents/greedy-baseline/001/observations.npz new file mode 100644 index 0000000..f4e2dcb Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/observations.npz differ diff --git a/tests/data/agents/greedy-baseline/001/opponent_attack.npz b/tests/data/agents/greedy-baseline/001/opponent_attack.npz new file mode 100644 index 0000000..3b3ae7f Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/opponent_attack.npz differ diff --git a/tests/data/agents/greedy-baseline/001/other_rewards.json b/tests/data/agents/greedy-baseline/001/other_rewards.json new file mode 100644 index 0000000..2b96ec1 --- /dev/null +++ b/tests/data/agents/greedy-baseline/001/other_rewards.json @@ -0,0 +1,2002 @@ +[ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} +] \ No newline at end of file diff --git a/tests/data/agents/greedy-baseline/001/rewards.npz b/tests/data/agents/greedy-baseline/001/rewards.npz new file mode 100644 index 0000000..fab36bf Binary files /dev/null and b/tests/data/agents/greedy-baseline/001/rewards.npz differ diff --git a/tests/data/agents/greedy-baseline/dict_action_space.json b/tests/data/agents/greedy-baseline/dict_action_space.json index 689ece0..3125bc7 100644 --- a/tests/data/agents/greedy-baseline/dict_action_space.json +++ b/tests/data/agents/greedy-baseline/dict_action_space.json @@ -1,5 +1,96 @@ { - "_init_subtype": "grid2op.Action.TopologyAndDispatchAction.TopologyAndDispatchAction", + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.PlayableAction.PlayableAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/greedy-baseline/dict_attack_space.json b/tests/data/agents/greedy-baseline/dict_attack_space.json index 5d9fd2b..bfa702e 100644 --- a/tests/data/agents/greedy-baseline/dict_attack_space.json +++ b/tests/data/agents/greedy-baseline/dict_attack_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.DontAct.DontAct", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/greedy-baseline/dict_env_modification_space.json b/tests/data/agents/greedy-baseline/dict_env_modification_space.json index cf7155f..00b61a6 100644 --- a/tests/data/agents/greedy-baseline/dict_env_modification_space.json +++ b/tests/data/agents/greedy-baseline/dict_env_modification_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.CompleteAction.CompleteAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/greedy-baseline/dict_observation_space.json b/tests/data/agents/greedy-baseline/dict_observation_space.json index f183152..bc5346c 100644 --- a/tests/data/agents/greedy-baseline/dict_observation_space.json +++ b/tests/data/agents/greedy-baseline/dict_observation_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Observation.CompleteObservation.CompleteObservation", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/multiTopology-baseline/000/_parameters.json b/tests/data/agents/multiTopology-baseline/000/_parameters.json index cfa9f42..5afeca2 100644 --- a/tests/data/agents/multiTopology-baseline/000/_parameters.json +++ b/tests/data/agents/multiTopology-baseline/000/_parameters.json @@ -1,5 +1,7 @@ { "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, "ENV_DC": false, "FORECAST_DC": false, diff --git a/tests/data/agents/multiTopology-baseline/000/actions.npz b/tests/data/agents/multiTopology-baseline/000/actions.npz index a40099a..ff0c1f7 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/actions.npz and b/tests/data/agents/multiTopology-baseline/000/actions.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/agent_exec_times.npz b/tests/data/agents/multiTopology-baseline/000/agent_exec_times.npz index bbdc361..96df5fc 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/agent_exec_times.npz and b/tests/data/agents/multiTopology-baseline/000/agent_exec_times.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/disc_lines_cascading_failure.npz b/tests/data/agents/multiTopology-baseline/000/disc_lines_cascading_failure.npz index 2471ad2..9e9edba 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/disc_lines_cascading_failure.npz and b/tests/data/agents/multiTopology-baseline/000/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/env_modifications.npz b/tests/data/agents/multiTopology-baseline/000/env_modifications.npz index d20df23..917d983 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/env_modifications.npz and b/tests/data/agents/multiTopology-baseline/000/env_modifications.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/episode_meta.json b/tests/data/agents/multiTopology-baseline/000/episode_meta.json index cbdc72d..70d728a 100644 --- a/tests/data/agents/multiTopology-baseline/000/episode_meta.json +++ b/tests/data/agents/multiTopology-baseline/000/episode_meta.json @@ -1,11 +1,11 @@ { "agent_seed": 0, - "backend_type": "PandaPowerBackend_rte_case14_realistic", + "backend_type": "LightSimBackend_rte_case14_realistic", "chronics_max_timestep": "30", - "chronics_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\chronics\\000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/000", "cumulative_reward": 34389.6328125, "env_seed": 0, "env_type": "Environment_rte_case14_realistic", - "grid_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\grid.json", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", "nb_timestep_played": 30 } \ No newline at end of file diff --git a/tests/data/agents/multiTopology-baseline/000/episode_times.json b/tests/data/agents/multiTopology-baseline/000/episode_times.json index 62ca042..ba004e7 100644 --- a/tests/data/agents/multiTopology-baseline/000/episode_times.json +++ b/tests/data/agents/multiTopology-baseline/000/episode_times.json @@ -1,12 +1,12 @@ { "Agent": { - "total": 0.05299973487854004 + "total": 0.02367687225341797 }, "Env": { - "apply_act": 0.3750126361846924, - "observation_computation": 0.15297293663024902, - "powerflow_computation": 1.4971349239349365, - "total": 2.025120496749878 + "apply_act": 0.015462636947631836, + "observation_computation": 0.00987100601196289, + "powerflow_computation": 0.004910945892333984, + "total": 0.03024458885192871 }, - "total": 2.113096237182617 + "total": 0.06025099754333496 } \ No newline at end of file diff --git a/tests/data/agents/multiTopology-baseline/000/grid2op.info b/tests/data/agents/multiTopology-baseline/000/grid2op.info new file mode 100644 index 0000000..3dc2a0c --- /dev/null +++ b/tests/data/agents/multiTopology-baseline/000/grid2op.info @@ -0,0 +1,3 @@ +{ + "version": "1.6.4" +} \ No newline at end of file diff --git a/tests/data/agents/multiTopology-baseline/000/observations.npz b/tests/data/agents/multiTopology-baseline/000/observations.npz index 057b5fe..a1baee4 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/observations.npz and b/tests/data/agents/multiTopology-baseline/000/observations.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/opponent_attack.npz b/tests/data/agents/multiTopology-baseline/000/opponent_attack.npz index 0b4405d..ba2d632 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/opponent_attack.npz and b/tests/data/agents/multiTopology-baseline/000/opponent_attack.npz differ diff --git a/tests/data/agents/multiTopology-baseline/000/rewards.npz b/tests/data/agents/multiTopology-baseline/000/rewards.npz index c676589..6eceef3 100644 Binary files a/tests/data/agents/multiTopology-baseline/000/rewards.npz and b/tests/data/agents/multiTopology-baseline/000/rewards.npz differ diff --git a/tests/data/agents/multiTopology-baseline/dict_action_space.json b/tests/data/agents/multiTopology-baseline/dict_action_space.json index 689ece0..3125bc7 100644 --- a/tests/data/agents/multiTopology-baseline/dict_action_space.json +++ b/tests/data/agents/multiTopology-baseline/dict_action_space.json @@ -1,5 +1,96 @@ { - "_init_subtype": "grid2op.Action.TopologyAndDispatchAction.TopologyAndDispatchAction", + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.PlayableAction.PlayableAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/multiTopology-baseline/dict_attack_space.json b/tests/data/agents/multiTopology-baseline/dict_attack_space.json index 5d9fd2b..bfa702e 100644 --- a/tests/data/agents/multiTopology-baseline/dict_attack_space.json +++ b/tests/data/agents/multiTopology-baseline/dict_attack_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.DontAct.DontAct", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/multiTopology-baseline/dict_env_modification_space.json b/tests/data/agents/multiTopology-baseline/dict_env_modification_space.json index cf7155f..00b61a6 100644 --- a/tests/data/agents/multiTopology-baseline/dict_env_modification_space.json +++ b/tests/data/agents/multiTopology-baseline/dict_env_modification_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.CompleteAction.CompleteAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/multiTopology-baseline/dict_observation_space.json b/tests/data/agents/multiTopology-baseline/dict_observation_space.json index f183152..bc5346c 100644 --- a/tests/data/agents/multiTopology-baseline/dict_observation_space.json +++ b/tests/data/agents/multiTopology-baseline/dict_observation_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Observation.CompleteObservation.CompleteObservation", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/redispatching-baseline/000/_parameters.json b/tests/data/agents/redispatching-baseline/000/_parameters.json index a6203d1..a8ec6c9 100644 --- a/tests/data/agents/redispatching-baseline/000/_parameters.json +++ b/tests/data/agents/redispatching-baseline/000/_parameters.json @@ -1,5 +1,7 @@ { "ACTIVATE_STORAGE_LOSS": true, + "ALARM_BEST_TIME": 12, + "ALARM_WINDOW_SIZE": 12, "ALLOW_DISPATCH_GEN_SWITCH_OFF": true, "ENV_DC": false, "FORECAST_DC": false, diff --git a/tests/data/agents/redispatching-baseline/000/actions.npz b/tests/data/agents/redispatching-baseline/000/actions.npz index 3c5281d..3ac6ce9 100644 Binary files a/tests/data/agents/redispatching-baseline/000/actions.npz and b/tests/data/agents/redispatching-baseline/000/actions.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/agent_exec_times.npz b/tests/data/agents/redispatching-baseline/000/agent_exec_times.npz index 8422930..f63da35 100644 Binary files a/tests/data/agents/redispatching-baseline/000/agent_exec_times.npz and b/tests/data/agents/redispatching-baseline/000/agent_exec_times.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/disc_lines_cascading_failure.npz b/tests/data/agents/redispatching-baseline/000/disc_lines_cascading_failure.npz index 6a30ca0..990d4e3 100644 Binary files a/tests/data/agents/redispatching-baseline/000/disc_lines_cascading_failure.npz and b/tests/data/agents/redispatching-baseline/000/disc_lines_cascading_failure.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/env_modifications.npz b/tests/data/agents/redispatching-baseline/000/env_modifications.npz index f835e9e..8a7989e 100644 Binary files a/tests/data/agents/redispatching-baseline/000/env_modifications.npz and b/tests/data/agents/redispatching-baseline/000/env_modifications.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/episode_meta.json b/tests/data/agents/redispatching-baseline/000/episode_meta.json index 966c3ce..f8ccc28 100644 --- a/tests/data/agents/redispatching-baseline/000/episode_meta.json +++ b/tests/data/agents/redispatching-baseline/000/episode_meta.json @@ -2,10 +2,10 @@ "agent_seed": 0, "backend_type": "PandaPowerBackend_rte_case14_realistic", "chronics_max_timestep": "10", - "chronics_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\chronics\\000", + "chronics_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/chronics/000", "cumulative_reward": 11024.8583984375, "env_seed": 0, "env_type": "Environment_rte_case14_realistic", - "grid_path": "C:\\Users\\vrenault\\data_grid2op\\rte_case14_realistic\\grid.json", + "grid_path": "/home/marotant/dev/grid2viz/tests/data/rte_case14_realistic/grid.json", "nb_timestep_played": 10 } \ No newline at end of file diff --git a/tests/data/agents/redispatching-baseline/000/episode_times.json b/tests/data/agents/redispatching-baseline/000/episode_times.json index b234fa0..f42498e 100644 --- a/tests/data/agents/redispatching-baseline/000/episode_times.json +++ b/tests/data/agents/redispatching-baseline/000/episode_times.json @@ -1,12 +1,12 @@ { "Agent": { - "total": 0.0009968280792236328 + "total": 0.00028824806213378906 }, "Env": { - "apply_act": 0.1330549716949463, - "observation_computation": 0.04296422004699707, - "powerflow_computation": 0.4699888229370117, - "total": 0.6460080146789551 + "apply_act": 0.07597494125366211, + "observation_computation": 0.012786626815795898, + "powerflow_computation": 0.24021410942077637, + "total": 0.3289756774902344 }, - "total": 0.6589994430541992 + "total": 0.3329477310180664 } \ No newline at end of file diff --git a/tests/data/agents/redispatching-baseline/000/grid2op.info b/tests/data/agents/redispatching-baseline/000/grid2op.info index a3f32b7..3dc2a0c 100644 --- a/tests/data/agents/redispatching-baseline/000/grid2op.info +++ b/tests/data/agents/redispatching-baseline/000/grid2op.info @@ -1,3 +1,3 @@ { - "version": "1.5.1" + "version": "1.6.4" } \ No newline at end of file diff --git a/tests/data/agents/redispatching-baseline/000/observations.npz b/tests/data/agents/redispatching-baseline/000/observations.npz index 7c84faa..d580f48 100644 Binary files a/tests/data/agents/redispatching-baseline/000/observations.npz and b/tests/data/agents/redispatching-baseline/000/observations.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/opponent_attack.npz b/tests/data/agents/redispatching-baseline/000/opponent_attack.npz index 616e300..8e0fe3a 100644 Binary files a/tests/data/agents/redispatching-baseline/000/opponent_attack.npz and b/tests/data/agents/redispatching-baseline/000/opponent_attack.npz differ diff --git a/tests/data/agents/redispatching-baseline/000/rewards.npz b/tests/data/agents/redispatching-baseline/000/rewards.npz index d379dc7..9422f60 100644 Binary files a/tests/data/agents/redispatching-baseline/000/rewards.npz and b/tests/data/agents/redispatching-baseline/000/rewards.npz differ diff --git a/tests/data/agents/redispatching-baseline/dict_action_space.json b/tests/data/agents/redispatching-baseline/dict_action_space.json index 689ece0..3125bc7 100644 --- a/tests/data/agents/redispatching-baseline/dict_action_space.json +++ b/tests/data/agents/redispatching-baseline/dict_action_space.json @@ -1,5 +1,96 @@ { - "_init_subtype": "grid2op.Action.TopologyAndDispatchAction.TopologyAndDispatchAction", + "_PATH_ENV": null, + "_init_subtype": "grid2op.Action.PlayableAction.PlayableAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/redispatching-baseline/dict_attack_space.json b/tests/data/agents/redispatching-baseline/dict_attack_space.json index 5d9fd2b..bfa702e 100644 --- a/tests/data/agents/redispatching-baseline/dict_attack_space.json +++ b/tests/data/agents/redispatching-baseline/dict_attack_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.DontAct.DontAct", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/redispatching-baseline/dict_env_modification_space.json b/tests/data/agents/redispatching-baseline/dict_env_modification_space.json index cf7155f..00b61a6 100644 --- a/tests/data/agents/redispatching-baseline/dict_env_modification_space.json +++ b/tests/data/agents/redispatching-baseline/dict_env_modification_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Action.CompleteAction.CompleteAction", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/agents/redispatching-baseline/dict_observation_space.json b/tests/data/agents/redispatching-baseline/dict_observation_space.json index f183152..bc5346c 100644 --- a/tests/data/agents/redispatching-baseline/dict_observation_space.json +++ b/tests/data/agents/redispatching-baseline/dict_observation_space.json @@ -1,5 +1,96 @@ { + "_PATH_ENV": null, "_init_subtype": "grid2op.Observation.CompleteObservation.CompleteObservation", + "alarms_area_lines": [ + [ + "0_1_0", + "0_4_1", + "1_2_2", + "1_3_3", + "1_4_4", + "2_3_5", + "3_4_6", + "5_10_7", + "5_11_8", + "5_12_9", + "8_9_10", + "8_13_11", + "9_10_12", + "11_12_13", + "12_13_14", + "3_6_15", + "3_8_16", + "4_5_17", + "6_7_18", + "6_8_19" + ] + ], + "alarms_area_names": [ + "whole_grid" + ], + "alarms_lines_area": { + "0_1_0": [ + "whole_grid" + ], + "0_4_1": [ + "whole_grid" + ], + "11_12_13": [ + "whole_grid" + ], + "12_13_14": [ + "whole_grid" + ], + "1_2_2": [ + "whole_grid" + ], + "1_3_3": [ + "whole_grid" + ], + "1_4_4": [ + "whole_grid" + ], + "2_3_5": [ + "whole_grid" + ], + "3_4_6": [ + "whole_grid" + ], + "3_6_15": [ + "whole_grid" + ], + "3_8_16": [ + "whole_grid" + ], + "4_5_17": [ + "whole_grid" + ], + "5_10_7": [ + "whole_grid" + ], + "5_11_8": [ + "whole_grid" + ], + "5_12_9": [ + "whole_grid" + ], + "6_7_18": [ + "whole_grid" + ], + "6_8_19": [ + "whole_grid" + ], + "8_13_11": [ + "whole_grid" + ], + "8_9_10": [ + "whole_grid" + ], + "9_10_12": [ + "whole_grid" + ] + }, + "dim_alarms": 1, "env_name": "rte_case14_realistic", "gen_cost_per_MW": [ 40.0, @@ -106,7 +197,7 @@ "solar", "thermal" ], - "glop_version": "1.5.1", + "glop_version": "1.6.4", "grid_layout": { "sub_0": [ -280.0, diff --git a/tests/data/rte_case14_realistic/alerts_info.json b/tests/data/rte_case14_realistic/alerts_info.json new file mode 100755 index 0000000..e616f61 --- /dev/null +++ b/tests/data/rte_case14_realistic/alerts_info.json @@ -0,0 +1,8 @@ +{ + "fixed": {"whole_grid": ["0_1_0", "0_4_1", "1_2_2", "1_3_3", "1_4_4", "2_3_5", "3_4_6", + "5_10_7", "5_11_8", "5_12_9", "8_9_10", "8_13_11", "9_10_12", + "11_12_13", "12_13_14", "3_6_15", "3_8_16", "4_5_17", "6_7_18", + "6_8_19"] + + } +} diff --git a/tests/data/rte_case14_realistic/config.py b/tests/data/rte_case14_realistic/config.py old mode 100644 new mode 100755 index b373cb0..d41c711 --- a/tests/data/rte_case14_realistic/config.py +++ b/tests/data/rte_case14_realistic/config.py @@ -1,4 +1,4 @@ -from grid2op.Action import TopologyAndDispatchAction +from grid2op.Action import TopologyAndDispatchAction, PlayableAction from grid2op.Reward import RedispReward from grid2op.Rules import DefaultRules from grid2op.Chronics import Multifolder @@ -7,7 +7,7 @@ config = { "backend": PandaPowerBackend, - "action_class": TopologyAndDispatchAction, + "action_class": PlayableAction, "observation_class": None, "reward_class": RedispReward, "gamerules_class": DefaultRules, diff --git a/tests/test_episode_analytics.py b/tests/test_episode_analytics.py old mode 100644 new mode 100755 index 4f49854..91bb4b0 --- a/tests/test_episode_analytics.py +++ b/tests/test_episode_analytics.py @@ -100,3 +100,22 @@ def test_multi_topo(self): self.episode_analytics.action_data_table.distance[:5].tolist(), [1, 2, 2, 0, 3], ) + + def test_alarm(self): + self.agent_name = "alarm-baseline" + self.scenario_name = "000" + + if not (os.path.exists(os.path.join(self.agents_path, self.agent_name))): + print("run test_generate_agent.py to generate the necessary logs first") + assert(False) + + self.episode_data = EpisodeData.from_disk( + os.path.join(self.agents_path, self.agent_name), self.scenario_name + ) + self.episode_analytics = EpisodeAnalytics( + self.episode_data, self.scenario_name, self.agent_name + ) + action_data_table=self.episode_analytics.action_data_table + + assert(action_data_table.is_alarm[action_data_table.is_alarm==True].count()==2) + assert(action_data_table.alarm_zone[2][0]=="whole_grid") \ No newline at end of file diff --git a/tests/test_generate_agent.py b/tests/test_generate_agent.py old mode 100644 new mode 100755 index af9c51c..6ba9c6d --- a/tests/test_generate_agent.py +++ b/tests/test_generate_agent.py @@ -1,6 +1,7 @@ import os import pathlib import unittest +import copy # We need to make this below so that the manager.py finds the config.ini os.environ["GRID2VIZ_ROOT"] = os.path.join( @@ -12,7 +13,7 @@ config_file_path = os.path.join(os.environ["GRID2VIZ_ROOT"], "config.ini") -from grid2op import make +from grid2op import make, make_from_dataset_path from grid2op.Backend import PandaPowerBackend from grid2op.Episode.EpisodeData import EpisodeData from grid2op.Parameters import Parameters @@ -22,9 +23,10 @@ from grid2viz.src.kpi.EpisodeAnalytics import EpisodeAnalytics + class TestGenerateAgent(unittest.TestCase): def setUp(self): - self.case = "rte_case14_realistic" + self.case = dataset_path = "tests/data/rte_case14_realistic"#"rte_case14_realistic" self.backend = PandaPowerBackend() self.param = Parameters() @@ -33,7 +35,7 @@ def setUp(self): self.scenario_name = "000" def test_generate_and_read_agent_redisp(self): - with make(self.case, param=self.param, backend=self.backend) as env: + with make_from_dataset_path(self.case, param=self.param, backend=self.backend) as env: agent = RandomRedispatchAgent(env.action_space, env) runner = Runner( **env.get_params_for_runner(), agentClass=None, agentInstance=agent @@ -48,7 +50,7 @@ def test_generate_and_read_agent_redisp(self): agent_seeds=[0], pbar=True, ) - env.close() + #env.close() self.episode_data = EpisodeData.from_disk( os.path.join(self.agents_path, self.agent_name), self.scenario_name @@ -56,3 +58,5 @@ def test_generate_and_read_agent_redisp(self): self.episode_analytics = EpisodeAnalytics( self.episode_data, self.scenario_name, self.agent_name ) + + diff --git a/tests/test_grid2op_plot.py b/tests/test_grid2op_plot.py old mode 100644 new mode 100755 index 940884a..8a31e14 --- a/tests/test_grid2op_plot.py +++ b/tests/test_grid2op_plot.py @@ -20,7 +20,7 @@ from grid2viz.src.manager import make_network -class TestGenerateAgent(unittest.TestCase): +class TestPlotAgent(unittest.TestCase): def setUp(self): self.case = "rte_case14_realistic" diff --git a/tests/test_make_cache.py b/tests/test_make_cache.py old mode 100644 new mode 100755 index d664376..88384fb --- a/tests/test_make_cache.py +++ b/tests/test_make_cache.py @@ -40,3 +40,4 @@ def test_make_cache(self): #) #self.assertEqual(rv.returncode, 0) #self.assertEqual(rv, 0) + diff --git a/tests/test_simulation.py b/tests/test_simulation.py old mode 100644 new mode 100755 index 5de106f..ce12f39 --- a/tests/test_simulation.py +++ b/tests/test_simulation.py @@ -72,7 +72,7 @@ def setUp(self): self.episode = episode_analytics self.episode_reboot = EpisodeReboot.EpisodeReboot() self.episode_reboot.load( - self.env.backend, + PandaPowerBackend(),#self.env.backend, data=self.episode, agent_path=os.path.join(self.agents_path, self.agent_name), name=self.episode.episode_name, diff --git a/tests/test_simulation_expert_system.py b/tests/test_simulation_expert_system.py old mode 100644 new mode 100755 index 5929214..68625f2 --- a/tests/test_simulation_expert_system.py +++ b/tests/test_simulation_expert_system.py @@ -99,7 +99,7 @@ def test_expert(self): line_id = 0 episode_reboot = EpisodeReboot.EpisodeReboot() episode_reboot.load( - self.env.backend, + PandaPowerBackend(),#self.env.backend, data=self.episode, agent_path=os.path.join(self.agents_path, self.agent_name), name=self.episode.episode_name, @@ -139,7 +139,7 @@ def test_expert(self): episode_reboot = EpisodeReboot.EpisodeReboot() episode_reboot.load( - self.env.backend, + PandaPowerBackend(),#self.env.backend, data=self.episode, agent_path=os.path.join(self.agents_path, self.agent_name), name=self.episode.episode_name,