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
99399cbda6
#1386 : added documentation + dealing with pre-commit checks
2023-06-20 11:19:05 +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
Chris McCarthy
10c94954a5
#917 - Almost there. All output files being writen for SB3/RLLIB PPO & A2C. Just need to bring in the hardcoded agents then update the testa and docs.
2023-06-19 21:53:25 +01:00
Chris McCarthy
3670f16766
#917 - Integrated both SB3 and RLlib agents into PrimaiteSession
2023-06-19 20:27:08 +01:00
Chris McCarthy
c09874edbe
#917 - Got RLlib fully training in PrimAITE. Started integrating the the other agents into the Session class
2023-06-18 22:40:56 +01:00
Chris McCarthy
31eb36c75a
#917 - started working on the Agent abstract classes and sub-classes
2023-06-15 09:48:44 +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
9563a8a121
Synced with dev
2023-06-12 16:59:31 +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
4596687e35
Merge remote-tracking branch 'origin/dev' into feature/898-Fix-the-functionality-of-resetting-a-node
2023-06-12 14:20:16 +01:00
Chris McCarthy
4c4f351534
#951 - Can not view and change the log level from the cli.
...
- Fixed write transaction issue in transactions_to_file.py
2023-06-09 22:23:45 +01:00
SunilSamra
ed8b53f5ef
901 - added logic to add acls to list (needs more logic adding to it)
2023-06-09 16:56:42 +01:00
Chris McCarthy
149a534851
#915 - Annotated logs func in cli.py to take -n.
...
- Fixed entry point on main.py
- Commented out the print reward line in step func of primaite_env.py.
- Added jupyterlab==3.6.1 to pyproject.toml
2023-06-09 16:44:49 +01:00
Chris McCarthy
1a7d158d77
#915 - Force app dir creation before config file sink
2023-06-09 16:04:56 +01:00
Chris McCarthy
86b813afa1
#915 - Synced with dev
2023-06-09 15:49:48 +01:00
SunilSamra
f7b0617dc3
901 - changed name of enum in enums.py and added class attriubutes in access_control_list.py
2023-06-09 15:45:13 +01:00
SunilSamra
33127abcc3
901 - added ACL list to observations.py as its own observation space with the ACL attributes and the position of the ACL rule in the ACL list, added ImplicitFirewallRule to enums.py and added acl_implicit_rule, max_acl_list to primaite_env.py
2023-06-09 15:17:20 +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
SunilSamra
f989deb198
901 - changed AccessControlList in access_control_list.py from a dict to a list
2023-06-09 11:25:45 +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
Marek Wolan
00a30bcb7a
Merge remote-tracking branch 'origin/dev' into feature/1468-observations-class
2023-06-09 09:01:54 +01:00
Chris McCarthy
5558750f13
#915 - Refactored documentation and included APi docs, dependencies.
...
- make files now re-build autosummary and deps file.
- Added typer and platformdirs to deps in pyproject.toml.
- Made root_is_pure = True in setup.py as platform/python specific wheels don't need to be built but the option is there should we need to.
-
Added an e2e test for primaite.main.run func.
2023-06-08 15:57:38 +01:00
Chris McCarthy
58186dc958
#915 - Ensured LOG_DIR is created so primaite package can be used to perform setup while still logging using primaite logs.
2023-06-08 08:49:06 +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
Marek Wolan
4329c65211
Apply suggestions from code review.
2023-06-07 15:25:11 +01:00
SunilSamra
6089fb6950
893 - removed unnecessary functions from utils.py and changed single_action_space_fixed_blue_actions_main_config.yaml back to GENERIC agentIdentifier after PR comments
2023-06-07 14:39:52 +01:00
Marek Wolan
718cd8acd6
Merge remote-tracking branch 'origin/dev' into feature/1468-observations-class
2023-06-07 14:39:20 +01:00
Brian Kanyora
f9bb97300a
feature\898:
...
Added doc strings
2023-06-07 11:09:00 +01:00
SunilSamra
281bb78612
893 - removed print statements for demonstration
2023-06-07 09:19:30 +01:00
SunilSamra
bb98900759
Merge remote-tracking branch 'origin/dev' into feature/893-node-acl-into-one-action-space
2023-06-07 09:18:24 +01:00
SunilSamra
e17e5ac4b9
893 - added new line for assert statements
2023-06-06 15:54:35 +01:00
Marek Wolan
91fb063797
Merge remote-tracking branch 'origin/dev' into bugfix/1441-main-py-minor-bugs
2023-06-06 15:50:35 +01:00
SunilSamra
10585490fe
893 -
2023-06-06 13:47:07 +01:00
SunilSamra
d572c033e1
Merge remote-tracking branch 'origin/dev' into feature/893-node-acl-into-one-action-space
2023-06-06 13:46:01 +01:00
Marek Wolan
a85c653feb
Merge remote-tracking branch 'origin/dev' into feature/1468-observations-class
2023-06-06 13:40:17 +01:00
SunilSamra
efd0f6ed08
893 - returned config_values in conftest to move run_generic_set_actions into test_single_action_space.py
2023-06-06 13:21:04 +01:00
SunilSamra
58a87ee0c8
893 - applied changes raised during PR
2023-06-06 13:12:28 +01:00
SunilSamra
a45f0d1979
Merge remote-tracking branch 'origin/dev' into feature/893-node-acl-into-one-action-space
2023-06-06 11:56:52 +01:00
SunilSamra
dc7be7d8e6
893 - set the action_space to NOTHING so test_reward.py passes and removed unnecessary test print statements
2023-06-06 11:10:38 +01:00
Brian Kanyora
5cfc46c4e4
feature\898:
...
Fixed the resetting operating state to set compromised or overwhelmed services or operating system back to a good state. Added a reset count that switches the node into a good state.
Created a "SHUTTING DOWN" operating state to last for a (configurable) and a "BOOTING" operating state to last for a (configurable).
Created a test file to test the reset changes the node to a good state when its set to a COMPROMISED state. The last two test tests makes sure that the node boots and shutdowns correctly.
Lastly, updated the docs file as well.
2023-06-06 11:03:43 +01:00
SunilSamra
1a7d629d5a
893 - added new tests to test action space size and node is completing both sets of actions in a single episode and created new main config
2023-06-06 11:00:41 +01:00
Brian Kanyora
7432b91f53
feature\898:
2023-06-02 16:13:16 +01:00
Brian Kanyora
b3ea1938bf
Merge branch 'dev' into feature/898-Fix-the-functionality-of-resetting-a-node
2023-06-02 14:56:31 +01:00