#1522: create_random_red_agent -> _create_random_red_agent + converting NodeStateInstructionRed into a dataclass
This commit is contained in:
@@ -278,7 +278,7 @@ class Primaite(Env):
|
|||||||
|
|
||||||
# Create a random red agent to use for this episode
|
# Create a random red agent to use for this episode
|
||||||
if self.training_config.random_red_agent:
|
if self.training_config.random_red_agent:
|
||||||
self.create_random_red_agent()
|
self._create_random_red_agent()
|
||||||
|
|
||||||
# Reset counters and totals
|
# Reset counters and totals
|
||||||
self.total_reward = 0
|
self.total_reward = 0
|
||||||
@@ -1236,7 +1236,7 @@ class Primaite(Env):
|
|||||||
combined_action_dict = {**acl_action_dict, **new_node_action_dict}
|
combined_action_dict = {**acl_action_dict, **new_node_action_dict}
|
||||||
return combined_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()."""
|
"""Decide on random red agent for the episode to be called in env.reset()."""
|
||||||
# Reset the current red iers and red node pol
|
# Reset the current red iers and red node pol
|
||||||
self.red_iers = {}
|
self.red_iers = {}
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
# Crown Copyright (C) Dstl 2022. DEFCON 703. Shared in confidence.
|
# Crown Copyright (C) Dstl 2022. DEFCON 703. Shared in confidence.
|
||||||
"""Defines node behaviour for Green PoL."""
|
"""Defines node behaviour for Green PoL."""
|
||||||
|
from dataclasses import dataclass
|
||||||
|
|
||||||
from primaite.common.enums import NodePOLType
|
from primaite.common.enums import NodePOLType
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass()
|
||||||
class NodeStateInstructionRed(object):
|
class NodeStateInstructionRed(object):
|
||||||
"""The Node State Instruction class."""
|
"""The Node State Instruction class."""
|
||||||
|
|
||||||
@@ -137,20 +140,3 @@ class NodeStateInstructionRed(object):
|
|||||||
The source node service state
|
The source node service state
|
||||||
"""
|
"""
|
||||||
return self.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")"
|
|
||||||
)
|
|
||||||
|
|||||||
Reference in New Issue
Block a user