UInferencePolicy
class UInferencePolicy : public UAbstractPolicy一个使用训练好的 NNE 模型进行决策的策略。
依赖项
此类型依赖于
- FDictPoint
- FDictSpace
- FInferencePolicyBuffer
- FInteractionDefinition
- FPolicyDecision
- IRuntimeInterface
- UAbstractPolicy
继承自: public UAbstractPolicy
公共接口
构造函数
UInferencePolicy
UInferencePolicy()来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 200, column 1)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 13-15)
公共函数
GetRuntimeNames
TArray<FString> GetRuntimeNames() const const获取所有可用运行时名称的函数。
返回: 可用运行时名称的数组
返回: TArray<FString>
属性: const
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 227, column 8)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 17-23)
GetRuntime
IRuntimeInterface * GetRuntime(const FString &SelectedRuntimeName) const const获取具有给定名称的运行时的单例实例的函数。
返回: 指向具有给定名称的运行时的指针
参数
SelectedRuntimeName(const FString &) – [in] 要获取的运行时的名称
返回: IRuntimeInterface *
属性: const
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 234, column 19)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 25-40)
RequestDecision
virtual TFuture<FPolicyDecision *> RequestDecision(const FDictPoint &Observations) override请求策略做出行动决策。
可能需要一些时间才能发生
返回: 一个 Future,最终将包含策略的下一个决策
参数
Observations(const FDictPoint &) – [输入] 代理的当前状态,用于告知策略的选择的动作
返回: TFuture<FPolicyDecision *>
属性: virtual
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 240, column 17)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 43-94)
初始化
virtual void Init(const FInteractionDefinition &PolicyDefinition)根据交互定义初始化策略对象实例。
参数
PolicyDefinition(const FInteractionDefinition &) – [输入] 定义策略的 I/O 形状和其他参数的对象
属性: virtual
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 242, column 6)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 250-303)
SetupBuffersAndBindings
bool SetupBuffersAndBindings(const FInteractionDefinition &PolicyDefinition, TSharedPtr<IModelInstanceRunSync> ModelInstance)参数
| 名称 | 类型 | 默认 |
|---|---|---|
PolicyDefinition | const FInteractionDefinition & | “ |
ModelInstance | TSharedPtr<IModelInstanceRunSync> | “ |
返回: bool
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 244, column 6)
实现: Schola/Source/Schola/Private/Policies/InferencePolicy.cpp (lines 135-247)
公共成员
int Step
int Step = = 0对策略的推理调用次数。
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 204, column 5)
FDictSpace ActionSpaceDefn
FDictSpace ActionSpaceDefn代理的动作空间。
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 208, column 12)
FDictSpace ObservationSpaceDefn
FDictSpace ObservationSpaceDefn代理的观察空间。
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 212, column 12)
TObjectPtr<UNNEModelData> ModelData
TObjectPtr<UNNEModelData> ModelDataNNE 模型的模型数据。
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 216, column 12)
FString RuntimeName
FString RuntimeName用于推理的运行时名称。
如果没有可用的运行时,则启用 NNE 插件(例如 NNERuntimeORT)。
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 220, column 9)
bool bNetworkLoaded
bool bNetworkLoaded = = false跟踪网络是否正确加载的变量?
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 238, column 6)
TArray<FInferencePolicyBuffer> ActionBuffer
TArray<FInferencePolicyBuffer> ActionBuffer来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 247, column 8)
TArray<FInferencePolicyBuffer> ObservationBuffer
TArray<FInferencePolicyBuffer> ObservationBuffer来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 250, column 8)
TArray<float> StateBuffer
TArray<float> StateBuffer来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 253, column 8)
int StateSeqLen
int StateSeqLen来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 256, column 5)
int StateDimSize
int StateDimSize来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 259, column 5)
私有接口
私有成员
TSharedPtr<IModelInstanceRunSync> ModelInstance
TSharedPtr<IModelInstanceRunSync> ModelInstance已实例化的模型。
属性: private
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 263, column 12)
TArray<UE::NNE::FTensorBindingCPU> InputBindings
TArray<UE::NNE::FTensorBindingCPU> InputBindings属性: private
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 265, column 8)
TArray<UE::NNE::FTensorBindingCPU> OutputBindings
TArray<UE::NNE::FTensorBindingCPU> OutputBindings属性: private
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 267, column 8)
来源: Schola/Source/Schola/Public/Policies/InferencePolicy.h (line 195, column 1)