Chris McCarthy
534c066170
#1647 - Added _PrimaitePaths class that manages all the primaite locations using PlayformDirs. This class now creates new primaite locations for each version of primaite.
...
- Rolled the _PrimaitePaths class out throughout the code base.
- Updated the docs to reference the new version paths.
- Updated the author from qinetiq to dstl
- Bumped version number to 2.0.0rc2
2023-07-21 14:00:50 +01:00
Chris McCarthy
e9b90760dd
#1594 - Added docstrings and fixed training type. Added a clean-up of the unpacked agent in eval dir.
2023-07-21 10:33:22 +01:00
Chris McCarthy
90d825736b
#1594 - Managed to get the evaluation of rllib agents working. A test has been added to test_primaite_session.py that now tests the full RLlib agent from end-to-end. I;ve also updated the tests in here to check that the mean reward per episode plot is created for both too. This will need a bit of a re-design further down the line, but for now, it works. Added a custom exception for RLlib eval only error.
2023-07-20 19:58:48 +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
Chris McCarthy
b31522bd9b
#1635 - Fixed typing issues in access_control_list.py
2023-07-18 11:38:28 +01:00
Chris McCarthy
6ac6b79b35
Merge branch 'dev' into feature/1635_Update_Primaite_Session_page_in_Docs
...
# Conflicts:
# src/primaite/setup/old_installation_clean_up.py
# src/primaite/setup/reset_example_configs.py
2023-07-18 11:36:31 +01:00
Chris McCarthy
0af6d6c44f
#1635 - Updated the session outputs details in primaite_session.rst
...
- Fixed Logger typehint bugs
2023-07-18 11:34:41 +01:00
Marek Wolan
72e72c80c2
Get tests working with new ACL changes
2023-07-18 11:16:39 +01:00
Marek Wolan
652c9f1b90
Merge remote-tracking branch 'origin/dev' into feature/901-change-functionality-acl-rules
2023-07-18 10:55:31 +01:00
Marek Wolan
0d521bc96b
Remove redundant 'if TYPE_CHECKING' statements
2023-07-18 10:21:06 +01:00
Marek Wolan
6c31034dba
Ensure everything is still typehinted
2023-07-18 10:13:54 +01:00
Marek Wolan
471826e5ce
Merge branch 'dev' into feature/1623-typehints
2023-07-18 10:03:48 +01:00
SunilSamra
f5b18e882c
#901 - Replaced "ALLOW" with RulePermissionType.ALLOW
...
- Added Explicit ALLOW to test_configs in order for tests to work
- Added typing to access_control_list.py and acl_rule.py
2023-07-17 20:40:00 +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
SunilSamra
37dd2838df
#901 - merged dev into branch
2023-07-17 19:54:07 +01:00
SunilSamra
2eb6223aad
Merge remote-tracking branch 'origin/feature/901-change-functionality-acl-rules' into feature/901-change-functionality-acl-rules
2023-07-17 19:42:29 +01:00
SunilSamra
bacb42833f
#901 - ran black pre-commit over observations.py to fix it
2023-07-17 19:42:05 +01:00
Sunil Samra
a2d99080cd
Apply suggestions from code review
2023-07-17 18:36:13 +00:00
Chris McCarthy
678f953ced
#1631 - Added the DEFCON 703 header to all possible files
2023-07-17 19:28:43 +01:00
Christopher McCarthy
3186fcb489
Merged PR 121: #1629 - Added rllib test
...
## Summary
Quick test that uses RLLIB in a session
## Test process
The learning session completes then we check that the number of rows in both the average reward per episode and all transactions csv files.
## Checklist
- [X] This PR is linked to a **work item**
- [X] I have performed **self-review** of the code
- [X] I have written **tests** for any new functionality added with this PR
- [ ] I have updated the **documentation** if this PR changes or adds functionality
- [X] I have run **pre-commit** checks for code style
#1629 - Added rllib test
Related work items: #1629
2023-07-17 17:28:51 +00:00
Marek Wolan
4032f3a2a8
Change typehints after mypy analysis
2023-07-17 16:22:07 +01:00
SunilSamra
00d01157da
#901 - Changed num_eval_steps back to 1 in ppo_seeded_training_config.yaml
2023-07-17 15:54:15 +01:00
Sunil Samra
d67df9234d
Apply suggestions from code review
2023-07-17 14:21:37 +00:00
SunilSamra
ded5a6f352
#901 - Fixed bug in implicit rule - comparing it to string ALLOW or DENY in access_control_list.py
2023-07-17 13:58:06 +01:00
SunilSamra
8008fab523
#901 - Removed flatten from training configs
...
- Added flatten operation in observations.py when there are multiple obs components
- Updated config.rst docs
2023-07-17 13:44:16 +01:00
SunilSamra
cb4089a0ba
#901
...
- Removed bool apply_implicit_rule
- Set default implicit_rule to EXPLICIT DENY
- Added position to ACLs in laydown configs
- Removed apply_implicit_rule from training configs
2023-07-17 13:00:58 +01:00
Chris McCarthy
ee0c797c3c
#1629 - Added assertion in the test that checks the length of the all transactions file too.
...
- Added supporting function on the TempPrimaiteSession class that reads the all transactions csv file.
- Some renaming of the functions.
2023-07-17 12:14:47 +01:00
Czar Echavez
6cb475ecdc
#1595 : set default tc and ldc to None for AgentABC and PrimaiteSession + adding a comment for cli load flag
2023-07-17 11:54:54 +01:00
Marek Wolan
ef8f6de646
Add typehint for agent config class
2023-07-17 11:21:29 +01:00
SunilSamra
3e7f6cc98d
#901
...
- Added check in access_control_list.py which sets implicit permission to NA if boolean is False
- Changed the defaults in training_config.py so that each scenario has an EXPLICIT ALLOW rule as default implicit rule
- Updated the test_seeding_and_deterministic_session.py because of change no2 adds an extra rule to that scenario
2023-07-17 10:27:56 +01:00
SunilSamra
ab45c7e3f9
#901 - added to config.rst and added new ACL main config options
2023-07-17 10:08:12 +01:00
Marek Wolan
98ac228f90
Fix types according to mypy
2023-07-14 16:38:55 +01:00
Czar Echavez
232908ac00
#1595 : minor fix to cli command
2023-07-14 16:04:34 +01:00
SunilSamra
a2461d29b4
#901 - amended comment in observations.py
2023-07-14 16:04:13 +01:00
Czar Echavez
c783965001
#1595 : added loading sessions to run command + test + documentation for how to use loading sessions
2023-07-14 15:51:38 +01:00
SunilSamra
b4f8514206
#901 - amended comment in training_config_main.yaml
2023-07-14 15:49:18 +01:00
SunilSamra
fc1a575fd0
#901 -
...
- Added comments in access_control_list.py
- Changed obs_shape to max_number_acl_rules from max_number_acl_rules + 1 as index starts from 1
- Commented episode and step print line from test_single_action_space.py
2023-07-14 15:27:37 +01:00
SunilSamra
6b8cf73207
901 - Added another test and tidied up comments in test_observation_space.py and tidied up comments in observations.py
2023-07-14 14:51:26 +01:00
Marek Wolan
e522e56ff1
Add typehints
2023-07-14 14:43:47 +01:00
Czar.Echavez
fbdb8aab28
#1595 :
...
- Added ability to load sessions via PrimaiteSession
- PrimaiteSession loading test
- Added a NotImplemented RLlib loading for now
- Added the ability to load sessions for hardcoded agents
- Moved Session metadata parsing to utils
2023-07-14 14:14:03 +01:00
Chris McCarthy
8c0ca8cfbc
#901 - Dropped temp_primaite_sessiion_2 from conftest.py.
...
- Re-added the hard-coded mean rewards per episode values from a rpe-trained agent to the deterministic test in test_seeding_and_deterministic_session.py
- Partially tidies up some tests in test_observation_space.py; Still some work to be done on this at a later date.
2023-07-14 14:13:11 +01:00
SunilSamra
4a0d688ae6
901 - fixed test_observation_space.py, added test fixture for test_seeding_and_deterministic_session.py and increased default max number of acls
2023-07-14 12:29:50 +01:00
Marek Wolan
c57ed6edcd
Added type hints
2023-07-14 12:01:38 +01:00
Czar Echavez
dce0d10383
#1595 : fix poorly merged tests + files
2023-07-14 11:21:59 +01:00
Czar Echavez
a92ef3f4ad
#1595 : test to make sure that the loaded agent trains + remove unnecessary files + fixing agent save output name
2023-07-14 10:56:28 +01:00
Czar Echavez
bc7c32697f
Merge branch 'dev' into feature/1595-finalise-and-test-the-loading-of-trained-agents
2023-07-14 08:39:52 +01:00
Marek Wolan
a923d818d3
Add More Typehint
2023-07-13 18:08:44 +01:00
SunilSamra
0bcaf0696d
901 - removed print statements and merged with dev
2023-07-13 17:14:59 +01:00
SunilSamra
79d77c85c4
Merge remote-tracking branch 'origin/dev' into feature/901-change-functionality-acl-rules
2023-07-13 16:48:02 +01:00
Czar.Echavez
c3023d4d7c
#1595 missed hardcoded_abc file in commit
2023-07-13 16:24:30 +01:00