Documentation
¶
Index ¶
- Variables
- type Interpreter
- type NegativeRewardPolicy
- type Policy
- type RLStrategy
- func (r *RLStrategy) ActionsCh() *types.Channel[*strategies.Action]
- func (r *RLStrategy) EndCurIteration(ctx *strategies.Context)
- func (r *RLStrategy) Finalize(ctx *strategies.Context)
- func (r *RLStrategy) NextIteration(ctx *strategies.Context)
- func (r *RLStrategy) Start() error
- func (r *RLStrategy) Step(e *types.Event, ctx *strategies.Context)
- func (r *RLStrategy) Stop() error
- type RLStrategyConfig
- type State
- type Trace
- type UCBZeroEGreedyPolicy
- type UCBZeroEGreedyPolicyConfig
- type UCBZeroPolicy
- type UCBZeroPolicyConfig
- type UCBZeroState
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInvalidEpsilon = errors.New("invalid epsilon value")
Functions ¶
This section is empty.
Types ¶
type Interpreter ¶
type Interpreter interface {
Update(*types.Event, *strategies.Context)
CurState() State
Reset()
}
type NegativeRewardPolicy ¶ added in v0.3.1
type NegativeRewardPolicy struct {
Alpha float64
Gamma float64
// contains filtered or unexported fields
}
func NewNegativeRewardPolicy ¶ added in v0.3.1
func NewNegativeRewardPolicy(alpha, gamma float64) *NegativeRewardPolicy
func (*NegativeRewardPolicy) NextAction ¶ added in v0.3.1
func (n *NegativeRewardPolicy) NextAction(step int, state State, actions []*strategies.Action) (*strategies.Action, bool)
func (*NegativeRewardPolicy) NextIteration ¶ added in v0.3.1
func (n *NegativeRewardPolicy) NextIteration(iteration int, trace *Trace)
func (*NegativeRewardPolicy) Update ¶ added in v0.3.1
func (n *NegativeRewardPolicy) Update(_ int, _ State, _ *strategies.Action, _ State)
type Policy ¶
type Policy interface {
NextAction(int, State, []*strategies.Action) (*strategies.Action, bool)
Update(int, State, *strategies.Action, State)
NextIteration(int, *Trace)
}
type RLStrategy ¶
type RLStrategy struct {
*types.BaseService
// contains filtered or unexported fields
}
func NewRLStrategy ¶
func NewRLStrategy(config *RLStrategyConfig) *RLStrategy
func (*RLStrategy) ActionsCh ¶
func (r *RLStrategy) ActionsCh() *types.Channel[*strategies.Action]
func (*RLStrategy) EndCurIteration ¶
func (r *RLStrategy) EndCurIteration(ctx *strategies.Context)
func (*RLStrategy) Finalize ¶
func (r *RLStrategy) Finalize(ctx *strategies.Context)
func (*RLStrategy) NextIteration ¶
func (r *RLStrategy) NextIteration(ctx *strategies.Context)
func (*RLStrategy) Start ¶
func (r *RLStrategy) Start() error
func (*RLStrategy) Step ¶
func (r *RLStrategy) Step(e *types.Event, ctx *strategies.Context)
func (*RLStrategy) Stop ¶
func (r *RLStrategy) Stop() error
type RLStrategyConfig ¶
type RLStrategyConfig struct {
Interpreter Interpreter
Policy Policy
AgentTickDuration time.Duration
}
type State ¶
type State interface {
Hash() string
Actions() []*strategies.Action
}
type Trace ¶ added in v0.3.1
type UCBZeroEGreedyPolicy ¶ added in v0.3.1
type UCBZeroEGreedyPolicy struct {
*UCBZeroPolicy
Epsilon float64
// contains filtered or unexported fields
}
func NewUCBZeroEGreedyPolicy ¶ added in v0.3.1
func NewUCBZeroEGreedyPolicy(config *UCBZeroEGreedyPolicyConfig) (*UCBZeroEGreedyPolicy, error)
func (*UCBZeroEGreedyPolicy) NextAction ¶ added in v0.3.1
func (u *UCBZeroEGreedyPolicy) NextAction(step int, state State, actions []*strategies.Action) (*strategies.Action, bool)
type UCBZeroEGreedyPolicyConfig ¶ added in v0.3.1
type UCBZeroEGreedyPolicyConfig struct {
*UCBZeroPolicyConfig
Epsilon float64
}
type UCBZeroPolicy ¶ added in v0.3.1
type UCBZeroPolicy struct {
// contains filtered or unexported fields
}
func NewUCBZeroPolicy ¶ added in v0.3.1
func NewUCBZeroPolicy(config *UCBZeroPolicyConfig) *UCBZeroPolicy
func (*UCBZeroPolicy) NextAction ¶ added in v0.3.1
func (e *UCBZeroPolicy) NextAction(step int, state State, actions []*strategies.Action) (*strategies.Action, bool)
func (*UCBZeroPolicy) NextIteration ¶ added in v0.3.1
func (e *UCBZeroPolicy) NextIteration(iteration int, trace *Trace)
func (*UCBZeroPolicy) Update ¶ added in v0.3.1
func (e *UCBZeroPolicy) Update(step int, state State, action *strategies.Action, nextState State)
type UCBZeroPolicyConfig ¶ added in v0.3.1
type UCBZeroState ¶ added in v0.3.1
type UCBZeroState struct {
// contains filtered or unexported fields
}
func NewUCBZeroState ¶ added in v0.3.1
func NewUCBZeroState(config *UCBZeroPolicyConfig) *UCBZeroState
func (*UCBZeroState) NextAction ¶ added in v0.3.1
func (e *UCBZeroState) NextAction(step int, state State, actions []*strategies.Action) *strategies.Action
func (*UCBZeroState) Update ¶ added in v0.3.1
func (e *UCBZeroState) Update(step int, curState State, nextAction *strategies.Action, nextState State) bool
Click to show internal directories.
Click to hide internal directories.