Commit Graph

310 Commits

Author SHA1 Message Date
Czar Echavez
7b929109dc #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
118b05ede0 Merge branch 'dev' into feature/1595-finalise-and-test-the-loading-of-trained-agents 2023-07-14 08:39:52 +01:00
Czar.Echavez
738e5b5dca #1595 missed hardcoded_abc file in commit 2023-07-13 16:24:30 +01:00
Czar.Echavez
606354614a #1595:
- SB3 Agent loading
- rename agent.py -> agent_abc.py
- rename hardcoded.py -> hardcoded_abc.py
- Tests
- Added in test asset that is used to load the SB3 Agent
2023-07-13 16:24:03 +01:00
Marek Wolan
c61770825a Merged PR 116: Update documentation
## Summary
* Update observation space information and standardise formatting of code blocks in that section
* Remove non-ascii quotation characters
* Update custom blue agent page to match new AgentSession classes.
* Introduce glossary
* Provide a first draft of migration guide for 1.2 to 2.0 (probably not comprehensive)

## Test process
Sphinx is able to build the documentation as checked on my local machine

## Checklist
- [x] This PR is linked to a **work item**
- [x] I have performed **self-review** of the code
- [ ] I have written **tests** for any new functionality added with this PR
- [x] I have updated the **documentation** if this PR changes or adds functionality
- [x] I have run **pre-commit** checks for code style

Related work items: #1602
2023-07-12 14:28:41 +00:00
Sunil Samra
a19fbd1e98 Merged PR 115: Configure Different Episode and Step Counts for Training and Evaluation
## Summary
Training configs now have 2 different types of episode and step counts - one for train and one for evaluation.

`num_train_episodes`
`num_train_steps`
`num_eval_episodes`
`num_eval_steps`

## Test process
A test file `test_train_eval_episode_steps.py` has been implemented which runs train and evaluation session on two particular configs.

The train and evaluation sessions have different episodes and step count and the test checks that the output log files have the correct number of `total_steps` and `total_episodes`.

## 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
- [X] I have updated the **documentation** if this PR changes or adds functionality
- [X] I have run **pre-commit** checks for code style

Related work items: #1566, #1589
2023-07-12 13:34:58 +00:00
Czar Echavez
85c360548b #1595: run tests in parallel 2023-07-12 12:04:26 +01:00
SunilSamra
96b48aad79 1566 - removed redundant config file 2023-07-12 09:52:54 +01:00
Marek Wolan
c7547f715e Add better hyperlinks 2023-07-12 09:16:40 +01:00
SunilSamra
d4469f5226 Merge remote-tracking branch 'origin/dev' into feature/1566-configure_episode-steps-learn-eval 2023-07-11 17:18:05 +01:00
Czar.Echavez
baa14b6cd7 #1595: Moved hardcoded agent into its own file 2023-07-11 15:03:02 +01:00
Marek Wolan
0ec2f79ac3 Merge remote-tracking branch 'origin/dev' into feature/1602-update-docs 2023-07-11 13:13:02 +01:00
Marek Wolan
0c63d197e5 Merged PR 114: Change build pipeline to only run once on commits
## Summary
Unfortunately, I had to do away with the nice and neat matrix strategy for builds, because they do not support conditionals. Instead, I manually replicated the behaviour of the matrix but added a conditional to run every platform only when the 'build reason' is PR.

## Test process
*How have you tested this (if applicable)?*

## Checklist
- [x] This PR is linked to a **work item**
- [x] I have performed **self-review** of the code
- [ ] 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

Related work items: #1603
2023-07-11 12:12:32 +00:00
SunilSamra
585d35338f 1566 - updated docs for new items in training_config 2023-07-11 12:40:25 +01:00
SunilSamra
f3750032be 1566 - applied pre-commit 2023-07-11 12:37:14 +01:00
Marek Wolan
6a888d2efe Updated migration guide 2023-07-11 12:10:20 +01:00
Marek Wolan
5f6bc32b98 Added draft migration guide. 2023-07-11 12:01:48 +01:00
SunilSamra
6b59ce960d Merge remote-tracking branch 'origin/dev' into feature/1566-configure_episode-steps-learn-eval
# Conflicts:
#	src/primaite/config/training_config.py
2023-07-11 11:39:21 +01:00
Marek Wolan
9e936513d5 Improved order of glossary terms 2023-07-11 11:31:29 +01:00
Marek Wolan
dc26863216 Completed glossary 2023-07-11 11:13:28 +01:00
Marek Wolan
56fd9c4d0a Merge remote-tracking branch 'origin/dev' into feature/1602-update-docs 2023-07-11 10:12:40 +01:00
Marek Wolan
1633900ce7 Fix typo in Build.Reason 2023-07-11 09:01:43 +00:00
Marek Wolan
6c7ec62166 Fixed formatting with pre-commit 2023-07-11 09:57:27 +01:00
Marek Wolan
a07ce00852 Added glossary 2023-07-11 09:56:52 +01:00
Marek Wolan
dcf5bfddfa Fix syntax 2023-07-11 08:54:22 +00:00
Marek Wolan
a303e9096a Changed structure of build pipeline yaml 2023-07-11 08:53:37 +00:00
Marek Wolan
81a8058836 Change parameter matrix to list instead of dict 2023-07-11 08:22:30 +00:00
Marek Wolan
c641f67914 Capitalisation error in value 2023-07-11 08:15:16 +00:00
Marek Wolan
7f64d06ad4 Fix indent 2023-07-11 08:14:34 +00:00
Marek Wolan
c8191e60ba Typo in word only 2023-07-11 08:14:08 +00:00
Marek Wolan
d555584e90 Potentially fix syntax error 2023-07-11 08:08:29 +00:00
Marek Wolan
548ecf8e08 Edit pipeline to use runtime parameters
https://stackoverflow.com/a/70046417
2023-07-11 08:05:38 +00:00
Marek Wolan
d8cfbc1042 Updated azure-ci-build-pipeline.yaml 2023-07-11 07:19:58 +00:00
Marek Wolan
831469d01c Built matrix conditionally 2023-07-11 07:16:11 +00:00
Marek Wolan
19a9cef130 Merged PR 105: Fix errors while trying to run Hardcoded agent
## Summary
Since we added File System State as a new part of the observation space, some of the assumptions made by imported ADSP code were not met. This is addressed by these changes.

The code no longer crashes, but the hardcoded ACL agent doesn't work very well, it keeps returning action 0 and receives a low reward. Also if there are ACL rules with 'ANY' as a source IP, it crashes the function `get_node_of_ip` within the HardCodedACLAgent._calculate_action_full_view() method.

I'm not sure how much effort we need to spend fixing the hardcoded agents as they don't seem like they were delivered in a finished state.

## Test process
Can confirm the hardcoded agent can run within a primaite session now.

## Checklist
- [x] This PR is linked to a **work item**
- [x] I have performed **self-review** of the code
- [ ] 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

## note
I would appreciate some input about what we should do with hardcoded agents for release 2.0.0, it may require significant effort to get them working correctly.

Related work items: #1587
2023-07-10 15:10:12 +00:00
Marek Wolan
30bcdba429 Finished writing custom agent example. 2023-07-10 14:56:06 +01:00
SunilSamra
563ff72fd6 1566 - fixed the test_training_config.py test file by removing num_steps from init 2023-07-10 13:24:34 +01:00
Marek Wolan
ca737e080f Changed build pipeline experimentally. 2023-07-10 10:25:26 +00:00
SunilSamra
921dc934c2 1566 - added correct num_train_episodes etc values to configs, fixed test_reward.py 2023-07-10 11:25:26 +01:00
Marek Wolan
5ec8d3c8c1 Merged PR 110: Update Observation spaces description
## Summary
This minor update adds more detail and links to relevant pages within the API docs.

## Test process
Locally built docs in HTML format to verify all content displays correctly.

Related work items: #1596
2023-07-10 10:20:42 +00:00
Marek Wolan
43a4f93626 Changed order of text in custom agent docs 2023-07-10 11:19:47 +01:00
Marek Wolan
bd6f9fc309 Merge remote-tracking branch 'origin/dev' into bugfix/1587-hardcoded-agent 2023-07-10 09:15:25 +01:00
Marek Wolan
47d7e9f3f6 Merged PR 104: Fix formatting in docstrings
## Summary
Fixes some incorrectly formatted documentations, such as in the observation module. Also adds some missing module-level docstrings. Also adds a PrimAITE Favicon to docs.

Removed Primaite-dependencies.rst as it's autogenerated.

## Test process
Purely cosmetic, so functionality not tested. I did render the HTML output to observe that some mistakes have been fixed.

## Checklist
- [x] This PR is linked to a **work item**
- [x] I have performed **self-review** of the code
- [na] I have written **tests** for any new functionality added with this PR
- [x] I have updated the **documentation** if this PR changes or adds functionality
- [ ] I have run **pre-commit** checks for code style

Related work items: #1572
2023-07-10 08:14:08 +00:00
Marek Wolan
0145532103 Update docs 2023-07-09 20:23:53 +01:00
Marek Wolan
91287f8666 Merge remote-tracking branch 'origin/dev' into feature/1572-fix-docs-formatting 2023-07-09 18:13:57 +01:00
Marek Wolan
605a5b4cd6 Merge remote-tracking branch 'origin/dev' into bugfix/1587-hardcoded-agent 2023-07-09 18:07:30 +01:00
Marek Wolan
17894376c6 Removed comment 2023-07-09 18:07:21 +01:00
Marek Wolan
9d49406df6 Merge remote-tracking branch 'origin/dev' into feature/1596-better-observation-docs 2023-07-09 18:05:13 +01:00
SunilSamra
41fab6562e 1566 - updated configs to correct values of step count and number of episodes 2023-07-07 16:26:12 +01:00
Marek Wolan
677d12b550 Merged PR 106: Resolve TODOs about documenting functions
## Summary
- Added type hints and docstrings to functions imported from ADSP.
- Imported `get_relevant_rules` which was referenced but didn't exist.
- Removed duplicated function definitions in `agents.utils`

## Test process
The changes in this PR are almost exclusively cosmetic. I can confirm that after adding/removing functions, the unit tests passed fine. I was also able to run the Hardcoded node and ACL agents without problems.

## Checklist
- [x] This PR is linked to a **work item**
- [x] I have performed **self-review** of the code
- [na] I have written **tests** for any new functionality added with this PR
- [na] I have updated the **documentation** if this PR changes or adds functionality
- [x] I have run **pre-commit** checks for code style

Related work items: #1575
2023-07-07 15:10:44 +00:00