Skip to content

Class USimpleStepper

Class USimpleStepper

  • Defined in File SimpleStepper.h

Inheritance Relationships

Base Types

class USimpleStepper : public UObject, public IStepper

Source: Source/Schola/InferenceUtils/Public/Steppers/SimpleStepper.h

Dependencies: IAgent, IPolicy

Simple synchronous stepper implementation.

A straightforward stepper that performs the full observation-inference-action loop synchronously on the calling thread. On each Step() call:

  1. Collects observations from all agents
  2. Performs batched inference using the policy
  3. Applies the resulting actions to the agents

This stepper blocks during policy inference and is suitable for simple scenarios or policies with fast inference times.


Public Functions

SymbolDetails
InitInitialize the stepper with the given agents and policy.
StepExecute one step of the agent-policy loop.

Init

inline virtual bool Init(const TArray<TScriptInterface<IAgent>> &InAgents,
const TScriptInterface<IPolicy> &InPolicy) override

Initialize the stepper with the given agents and policy.

Parameters

  • InAgents – [in] The array of agents to manage

  • InPolicy – [in] The policy to use for inference

Returns:

true if initialization succeeded, false otherwise

#DirectionNameTypeDescription
1InAgentsconst TArray< TScriptInterface< IAgent > > &The array of agents to manage
2InPolicyconst TScriptInterface< IPolicy > &The policy to use for inference

Attributes: inline, virtual

Source: Source/Schola/InferenceUtils/Public/Steppers/SimpleStepper.h

Step

inline void Step()

Execute one step of the agent-policy loop.

Performs the full observation-inference-action cycle synchronously:

  • Collects observations from all agents

  • Calls the policy’s BatchedThink method

  • Applies the resulting actions to each agent

This method blocks during policy inference.

Attributes: inline

Source: Source/Schola/InferenceUtils/Public/Steppers/SimpleStepper.h