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
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
Marek Wolan
652c9f1b90
Merge remote-tracking branch 'origin/dev' into feature/901-change-functionality-acl-rules
2023-07-18 10:55:31 +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
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
SunilSamra
e500138b8f
#901 - Changed num_eval_steps back to 1 in ppo_seeded_training_config.yaml
2023-07-17 14:06:33 +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
0732eb2f5c
#1629 - Added rllib test
2023-07-17 11:50:07 +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
Czar Echavez
dce0d10383
#1595 : fix poorly merged tests + files
2023-07-14 11:21:59 +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
SunilSamra
771061a218
901 - fixed test_single_action_space.py test
2023-07-13 11:45:23 +01:00
SunilSamra
ad4198da13
901 - changed acl current obs from list to numpy.array, changed default ACL list in training_config.py to FALSE, and tried to make test_seeding_and_deterministic_session.py test without fixed reward results
2023-07-13 11:04:11 +01:00
SunilSamra
bd8d9f278d
1566 - removed redundant config file
2023-07-12 09:52:54 +01:00
SunilSamra
728ff01076
1566 - fixed the test_training_config.py test file by removing num_steps from init
2023-07-10 13:24:34 +01:00
SunilSamra
9738d2b889
1566 - added correct num_train_episodes etc values to configs, fixed test_reward.py
2023-07-10 11:25:26 +01:00
SunilSamra
af4fd4f66b
1566 - updated configs to correct values of step count and number of episodes
2023-07-07 16:26:12 +01:00
Chris McCarthy
1ddfca6459
#1566 - Refactored the test_train_eval_episode_steps.py to sue TempPrimaiteSession.
...
- Fixed all errors that were caused b fixing the above.
- Some tests still fail, these are for SS to fix.
- Dropped the old run_generic stuff from conftest.py
2023-07-07 15:50:14 +01:00
SunilSamra
4902ccd2b4
Merge remote-tracking branch 'origin/dev' into feature/901-change-functionality-acl-rules
2023-07-07 15:14:05 +01:00
Chris McCarthy
8edb26a65c
Merge remote-tracking branch 'origin/dev' into 1566-configure-episode-steps-learn-eval
...
# Conflicts:
# src/primaite/agents/rllib.py
2023-07-07 14:34:20 +01:00
SunilSamra
79d98e977b
1566 - added test file and edited configs to include types of num steps and modifed agents to use correct step and episode counts
2023-07-07 14:13:47 +01:00
Czar Echavez
76997f403e
Merge branch 'dev' into feature/1386-enable-a-repeatable-or-deterministic-baseline-test
2023-07-06 22:22:37 +01:00
Czar Echavez
08220ff6ea
#1386 : remove redundant config files + test fixtures + fixing deterministic and seed config description in documentation to avoid misunderstandings
2023-07-06 13:27:44 +01:00
Chris McCarthy
a35c363345
#1386 - Updated tests in test_seeding_and_deterministic_session.py to use TempPrimaiteSession.
...
- Added test_seeded_learning test and test_deterministic_evaluation test.
- Passed config values seed and deterministic to ppo agent
- Dropped deterministic override in evaluate functions
- TempPrimaiteSession now writes files to a UUID folder rather than datetime
- Added seed to Ray RLlib agent setup in rllib.py
- Added seed to SB3 agent setup in sb3.py
2023-07-06 11:35:44 +01:00
Czar Echavez
0068092d8b
#1386 : remove unneeded configs + setting the seed globally + temp test
2023-07-05 15:02:41 +01:00
SunilSamra
35045f4842
901 - merged with dev
2023-07-05 11:34:15 +01:00
SunilSamra
766ee9624a
901 - updated observations.py to change and add new mapping of ACL rules to represent no rule present in list
2023-07-05 09:08:03 +01:00
Czar Echavez
c7de7bf21b
Merge branch 'dev' into feature/1386-enable-a-repeatable-or-deterministic-baseline-test
2023-07-04 09:41:07 +01:00
Chris McCarthy
c36ddfa03f
#917 - Synced with dev (at the point of random red agent)
2023-07-03 17:25:21 +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
SunilSamra
913c244c64
901 - fixed test_single_action_space.py to reflect new acl structure and added new acl_implicit_rule class attribute
2023-06-27 11:43:33 +01:00
Chris McCarthy
7b0f47d6f8
#917 -Finished integrating all agents to either train (policy agents) or evaluate (hard-coded agents). Still some fixing up to do, tidying up, loading etc. also docs. But this is all now working.
2023-06-20 16:06:55 +01:00
SunilSamra
9c17b54073
901 - changed ACL instantiation and changed acl t private _acl (list not dict) attribute, added laydown_ACL.yaml for testing, fixed encoding of acl rules to integers for obs space, added ACL position to node action space and added generic test where agents adds two ACL rules.
2023-06-20 11:47:20 +01:00
Czar Echavez
9fb30ffe1b
#1386 : added the ability to set deterministic and seeding RNG when training and evaluating + the fix provided in #1535
2023-06-20 10:41:30 +01:00
SunilSamra
52d759bcd9
901 - started testing for observation space
2023-06-13 16:23:32 +01:00
SunilSamra
53a7001963
901 - added max_acl_rules, implicit_acl_rule and apply_implicit rule to main_config, changed observations.py for ACLs to match the action space for ACLs, added position of acl rule to ACL action type
2023-06-13 14:51:55 +01:00
SunilSamra
f275f3e9d7
901 - added changes back to ticket
2023-06-13 09:45:45 +01:00
Chris McCarthy
40686031e6
temp commit
2023-06-13 09:42:54 +01:00
SunilSamra
ce5d38a1cd
901 - merged dev into my branch
2023-06-13 08:54:33 +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
86b813afa1
#915 - Synced with dev
2023-06-09 15:49:48 +01:00
Chris McCarthy
2fccbbd9df
Merge remote-tracking branch 'origin/dev' into feature/915_PRI-31_Packaging_Deployment
...
# Conflicts:
# docs/source/about.rst
# docs/source/config.rst
# src/primaite/common/config_values_main.py
# src/primaite/environment/primaite_env.py
# src/primaite/main.py
# tests/config/multidiscrete_obs_space_laydown_config.yaml
# tests/config/obs_tests/laydown.yaml
# tests/conftest.py
# tests/test_observation_space.py
2023-06-09 13:41:05 +01:00
Chris McCarthy
3a5d982991
#915 - Synced with dev to bring in changes from #898
2023-06-09 13:11:14 +01:00
Chris McCarthy
6c2c95b329
Merge remote-tracking branch 'origin/dev' into feature/915_PRI-31_Packaging_Deployment
...
# Conflicts:
# tests/conftest.py
# tests/test_observation_space.py
# tests/test_reward.py
2023-06-09 10:35:14 +01:00