| namespace Unity.MLAgents.Actuators | |
| { | |
| /// <summary> | |
| /// Interface for writing a mask to disable discrete actions for agents for the next decision. | |
| /// </summary> | |
| public interface IDiscreteActionMask | |
| { | |
| /// <summary> | |
| /// Set whether or not the action index for the given branch is allowed. | |
| /// </summary> | |
| /// <remarks> | |
| /// By default, all discrete actions are allowed. | |
| /// If isEnabled is false, the agent will not be able to perform the actions passed as argument | |
| /// at the next decision for the specified action branch. The actionIndex corresponds | |
| /// to the action options the agent will be unable to perform. | |
| /// | |
| /// See [Agents - Actions] for more information on masking actions. | |
| /// | |
| /// [Agents - Actions]: https://github.com/Unity-Technologies/ml-agents/blob/release_20_docs/docs/Learning-Environment-Design-Agents.md#masking-discrete-actions | |
| /// </remarks> | |
| /// <param name="branch">The branch for which the actions will be masked.</param> | |
| /// <param name="actionIndex">Index of the action.</param> | |
| /// <param name="isEnabled">Whether the action is allowed or not.</param> | |
| void SetActionEnabled(int branch, int actionIndex, bool isEnabled); | |
| } | |
| } | |