Class DecisionRequester
The DecisionRequester component automatically request decisions for an Agent instance at regular intervals.
Inherited Members
Namespace: Unity.MLAgents
Syntax
[AddComponentMenu("ML Agents/Decision Requester", 0)]
[RequireComponent(typeof(Agent))]
[DefaultExecutionOrder(-10)]
public class DecisionRequester : MonoBehaviour
Remarks
Attach a DecisionRequester component to the same [GameObject] as the Agent component.
The DecisionRequester component provides a convenient and flexible way to trigger the agent decision making process. Without a DecisionRequester, your Agent implementation must manually call its RequestDecision() function.
Fields
DecisionPeriod
The frequency with which the agent requests a decision. A DecisionPeriod of 5 means that the Agent will request a decision every 5 Academy steps. ///
Declaration
[Range(1F, 20F)]
[Tooltip("The frequency with which the agent requests a decision. A DecisionPeriod of 5 means that the Agent will request a decision every 5 Academy steps.")]
public int DecisionPeriod
Field Value
Type | Description |
---|---|
Int32 |
TakeActionsBetweenDecisions
Indicates whether or not the agent will take an action during the Academy steps where it does not request a decision. Has no effect when DecisionPeriod is set to 1.
Declaration
[Tooltip("Indicates whether or not the agent will take an action during the Academy steps where it does not request a decision. Has no effect when DecisionPeriod is set to 1.")]
[FormerlySerializedAs("RepeatAction")]
public bool TakeActionsBetweenDecisions
Field Value
Type | Description |
---|---|
Boolean |
Properties
Agent
Get the Agent attached to the DecisionRequester.
Declaration
public Agent Agent { get; }
Property Value
Type | Description |
---|---|
Agent |
Methods
ShouldRequestAction(DecisionRequester.DecisionRequestContext)
Whether Agent.RequestAction should be called on this update step.
Declaration
protected virtual bool ShouldRequestAction(DecisionRequester.DecisionRequestContext context)
Parameters
Type | Name | Description |
---|---|---|
DecisionRequester.DecisionRequestContext | context |
Returns
Type | Description |
---|---|
Boolean |
ShouldRequestDecision(DecisionRequester.DecisionRequestContext)
Whether Agent.RequestDecision should be called on this update step.
Declaration
protected virtual bool ShouldRequestDecision(DecisionRequester.DecisionRequestContext context)
Parameters
Type | Name | Description |
---|---|---|
DecisionRequester.DecisionRequestContext | context |
Returns
Type | Description |
---|---|
Boolean |