Skip to content

IScholaEnvironment

A type-erased interface for a variety of Schola Environments (e.g.

single and multi agent).

This interface provides a unified API for interacting with multiple flavors of reinforcement learning environments in Schola.

Subclassed by TScholaEnvironment< T >

class IScholaEnvironment

Methods

InitializeEnvironment

virtual void InitializeEnvironment(
TMap<FString, FInteractionDefinition> &OutAgentDefinitions) = 0

Initialize the environment and retrieve agent definitions.

Parameters

  • OutAgentDefinitions (TMap<FString, FInteractionDefinition>)

SeedEnvironment

virtual void SeedEnvironment(int Seed) = 0

Set the random seed for the environment.

Parameters

  • Seed (int)

SetEnvironmentOptions

virtual void SetEnvironmentOptions(const TMap<FString, FString> &Options) = 0

Configure the environment with custom options.

Parameters

  • Options (const TMap<FString, FString>)

Reset

virtual void Reset(TMap<FString, FInitialAgentState> &OutAgentState) = 0

Reset the environment to its initial state.

Parameters

  • OutAgentState (TMap<FString, FInitialAgentState>)

Step

virtual void Step(const TMap<FString, TInstancedStruct<FPoint>> &InActions,
TMap<FString, FAgentState> &OutAgentStates) = 0

Execute one step in the environment with the given actions.

Parameters

  • InActions (const TMap<FString, TInstancedStruct<FPoint>>)

  • OutAgentStates (TMap<FString, FAgentState>)


IScholaEnvironment

virtual ~IScholaEnvironment() = default

Virtual destructor for proper cleanup of derived classes.

Source: Source/ScholaTraining/Public/Environment/EnvironmentInterface.h