Commit Graph

31 Commits

Author SHA1 Message Date
Chris McCarthy
1dc23e11f2 #1648 - Updated file header from 'Crown Owned Copyright (C) Dstl 2023. DEFCON 703. Shared in confidence.' to '© Crown-owned copyright 2023, Defence Science and Technology Laboratory UK' 2023-07-21 14:54:09 +01:00
Chris McCarthy
aaf1066d29 #1632 - Added full benchmarking script that included plots and a LaTeX report. Ran the v2.0.0rc1 benchmark. Tidied a few other things up. 2023-07-20 08:48:18 +01:00
Marek Wolan
471826e5ce Merge branch 'dev' into feature/1623-typehints 2023-07-18 10:03:48 +01:00
Chris McCarthy
f4683f3b66 #1631 - Updated the copyright statement to comply with DEFCON 703 Edition 08/13 2023-07-17 19:57:34 +01:00
Marek Wolan
e522e56ff1 Add typehints 2023-07-14 14:43:47 +01:00
Marek Wolan
c57ed6edcd Added type hints 2023-07-14 12:01:38 +01:00
Marek Wolan
a923d818d3 Add More Typehint 2023-07-13 18:08:44 +01:00
Marek Wolan
5618283cc5 Standardise docstring summary line placement. 2023-07-07 10:28:00 +01:00
Marek Wolan
653d76ec62 Added docstrings to class intialisers 2023-07-06 16:08:51 +01:00
Marek Wolan
5f98c9b1bd Fix minor typos in docstrings 2023-07-05 14:13:43 +01:00
Marek Wolan
fa6dbd8338 Move class docstrings out of init function. 2023-07-05 10:14:16 +01:00
Marek Wolan
24a4f96ed0 Add blank lines at the end of file. 2023-07-05 09:22:49 +01:00
Marek Wolan
544d8777ea add module level docstrings 2023-07-04 13:11:06 +01:00
Marek Wolan
9244c160b1 Format docstrings 2023-07-04 11:11:52 +01:00
Chris McCarthy
d55225dd41 Merge remote-tracking branch 'origin/dev' into feature/917_Integrate_with_RLLib
# Conflicts:
#	src/primaite/config/_package_data/training/training_config_main.yaml
#	src/primaite/environment/primaite_env.py
2023-07-03 15:07:09 +01:00
Czar Echavez
a7913487b8 #1522: create_random_red_agent -> _create_random_red_agent + converting NodeStateInstructionRed into a dataclass 2023-07-03 13:36:14 +01:00
Czar Echavez
6b4530bded #1522: run pre-commit 2023-07-03 10:08:25 +01:00
Chris McCarthy
e11fd2ced4 #917 - Fixed the RLlib integration
- Dropped support for overriding the num_episodes and num_steps at the agent level. It's just not needed and will add complexity when overriding and writing output files.
2023-06-30 16:52:57 +01:00
Chris McCarthy
7b1f889415 #917 - Integrated the PrimaiteSession into all tests.
- Ran a full pre-commit hook and thus encountered tons of fixes required
2023-06-30 09:08:13 +01:00
Czar Echavez
15b3bad5d4 Merge branch 'dev' into feature/1522-Random-Red-Agent-Behaviour 2023-06-29 14:17:41 +01:00
Marek Wolan
beae1e5c4f Cosmetic changes to satisfy pre-commit 2023-06-27 13:06:10 +01:00
Brian Kanyora
57315a6789 feature\1522:
Create random red agent behaviour.
2023-06-22 15:34:13 +01:00
Chris McCarthy
fc6ec69dee Merge remote-tracking branch 'origin/dev' into feature/915_PRI-31_Packaging_Deployment
# Conflicts:
#	docs/source/about.rst
#	src/primaite/main.py
#	src/primaite/nodes/node.py
2023-06-12 16:42:26 +01:00
Chris McCarthy
98fc1e4c71 #915 - Created app dirs and set as constants in the top-level init.
- renamed _config_values_main to training_config.py and renamed the ConfigValuesMain class to TrainingConfig.
Moved training_config.py to src/primaite/config/training_config.py
- Renamed all training config yaml file keys to make creating an instance of TrainingConfig easier.
Moved action_type and num_steps over to the training config.
- Decoupled the training config and lay down config.
- Refactored main.py so that it can be ran from CLI and can take a training config path and a lay down config path.
- refactored all outputs so that they save to the session dir.
- Added some necessary setup scripts that handle creating app dirs, fronting example config files to the user, fronting demo notebooks to the user, performing clean-up in between installations etc.
- Added functions that attempt to retrieve the file path of users example config files that have been fronted by the primaite setup.
- Added logging config and a getLogger function in the top-level init.
- Refactored all logs entries logged to use a logger using the primaite logging config.
- Added basic typer CLI for doing things like setup, viewing logs, viewing primaite version, running a basic session.
- Updated test to use new features and config structures.
- Began updating docs. More to do here.
2023-06-07 22:40:16 +01:00
Brian Kanyora
f9bb97300a feature\898:
Added doc strings
2023-06-07 11:09:00 +01:00
Brian Kanyora
7432b91f53 feature\898: 2023-06-02 16:13:16 +01:00
Brian Kanyora
a1d7f9e57c feature\898: 2023-06-02 14:54:23 +01:00
Chris McCarthy
32a4d9e459 #1355 - Carried out full renaming in node.py, active_node.py, passive_node.py, and service_node.py to make params and variable names explicit.
- Made the same renaming in the yaml laydown config files.
- Added Type hints wherever I've been.
- Added a custom NodeType in custom_typing.py to encompass the Union of ActiveNode, PassiveNode, ServiceNode.
2023-05-25 21:03:11 +01:00
Chris McCarthy
e1bcbd1a34 #1356 - added if statements to set class methods for file system state, os state and service states. Refactored file enums.py
- Added unit tests
2023-05-25 13:02:15 +01:00
Chris McCarthy
4eb1658966 Ran pre-commit hook on all files and performed changes to fix flake8 failures 2023-05-25 11:42:19 +01:00
Chris McCarthy
4f0d8807d6 Package restructuring 2023-05-25 10:31:37 +01:00