Feudal Networks
Implementation of Feudal Reinforcement Learning agent hierarchy.
Feudal Agent
Creates a hierarchical agent with Manager and Worker levels.
lua
local Feudal = Gradien.Experimental.RL.Feudal
local agent = Feudal({
inputDim = 32,
actionDim = 4,
hiddenDim = 64,
goalDim = 64, -- Optional, defaults to hiddenDim
horizon = 10, -- Manager update horizon
})Configuration
inputDim(number): Dimension of input stateactionDim(number): Number of discrete actionshiddenDim(number): Hidden dimension for LSTM/Linear layersgoalDim(number, optional): Dimension of goal vectorshorizon(number, optional): Steps between Manager goal updatesgammaW(number, optional): Worker discount factorgammaM(number, optional): Manager discount factorlr(number, optional): Learning rateoptimizerFactory(function): Factory function to create optimizer
Methods
reset(batchSize): Reset agent stateact(state): Select action and current goalobserve(transition): Store transition in bufferstrainStep(): Perform training update (placeholder)