Updates to documentation and inclusion of how-to guides

This commit is contained in:
Charlie Crane
2025-02-27 18:16:45 +00:00
parent 891467d1d3
commit 1f6f007941
25 changed files with 188 additions and 149 deletions

View File

@@ -16,6 +16,10 @@ You configuration file should follow the hierarchy seen below:
metadata:
version: 4.0
required_plugins:
- name: Example_Plugin
version: 1.0
io_settings:
...
game:
@@ -25,9 +29,17 @@ You configuration file should follow the hierarchy seen below:
simulation:
...
MetaData Tag
============
MetaData
========
It's important to include the metadata tag within your YAML file, as this is used to ensure PrimAITE can interpret the configuration correctly. This should also include any plugins that are required for the defined environment, along with their respective version.
Required Plugins
================
Should your custom environment need any additional PrimAITE plugins, each must be specified under the `required_plugins` tab, as seen in the above example.
Configuration Items
===================
For detailed information about the remaining configuration items found within the configuration file, see :ref:`Configurable Items`.

View File

@@ -9,6 +9,8 @@ Creating Custom Rewards in PrimAITE
Rewards within PrimAITE are contained within ``rewards.py``, which details the rewards available for all agents within training sessions, how they are calculated and any other specific information where necessary.
Rewards within PrimAITE have been updated to facilitate extensability and the creation of plugins with the release of PrimAITE version 4.0. Additional information about this is covered within :ref:`extensible_rewards`.
Custom Rewards within PrimAITE should inherit from the ``AbstractReward`` class, found in ``rewards.py``. It's important to include an identifier for any class created within PrimAITE.
.. code:: Python

View File

@@ -65,4 +65,4 @@ The above action would fail pydantic validation as the discriminator "node-folde
form_request method
###################
PrimAITE actions need to have a `form_request` method, which can be passed to the `RequestManager` for processing. This allows the custom action to be actioned within the simulation environment.
PrimAITE actions need to have a `form_request` method, which can be passed to the `RequestManager` for processing. This allows the custom action to be actioned within the simulation environment. Further information and an example of this can be seen in :ref:`custom_actions`.