#1522: create_random_red_agent -> _create_random_red_agent + converting NodeStateInstructionRed into a dataclass

This commit is contained in:
Czar Echavez
2023-07-03 13:36:14 +01:00
parent 0943e9511b
commit cb9d40579f
2 changed files with 5 additions and 19 deletions

View File

@@ -278,7 +278,7 @@ class Primaite(Env):
# Create a random red agent to use for this episode
if self.training_config.random_red_agent:
self.create_random_red_agent()
self._create_random_red_agent()
# Reset counters and totals
self.total_reward = 0
@@ -1236,7 +1236,7 @@ class Primaite(Env):
combined_action_dict = {**acl_action_dict, **new_node_action_dict}
return combined_action_dict
def create_random_red_agent(self):
def _create_random_red_agent(self):
"""Decide on random red agent for the episode to be called in env.reset()."""
# Reset the current red iers and red node pol
self.red_iers = {}

View File

@@ -1,8 +1,11 @@
# Crown Copyright (C) Dstl 2022. DEFCON 703. Shared in confidence.
"""Defines node behaviour for Green PoL."""
from dataclasses import dataclass
from primaite.common.enums import NodePOLType
@dataclass()
class NodeStateInstructionRed(object):
"""The Node State Instruction class."""
@@ -137,20 +140,3 @@ class NodeStateInstructionRed(object):
The source node service state
"""
return self.source_node_service_state
def __repr__(self):
return (
f"{self.__class__.__name__}("
f"id={self.id}, "
f"start_step={self.start_step}, "
f"end_step={self.end_step}, "
f"target_node_id={self.target_node_id}, "
f"initiator={self.initiator}, "
f"pol_type={self.pol_type}, "
f"service_name={self.service_name}, "
f"state={self.state}, "
f"source_node_id={self.source_node_id}, "
f"source_node_service={self.source_node_service}, "
f"source_node_service_state={self.source_node_service_state}"
f")"
)