Documentation ¶
Index ¶
- Variables
- type Action
- type ActionType
- type Interpreter
- type Metrics
- 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 RandomPolicy
- 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 Action ¶ added in v0.3.2
type Action struct { Type ActionType // contains filtered or unexported fields }
func DeliverMessageAction ¶ added in v0.3.2
func TimeoutReplicaAction ¶ added in v0.3.2
type ActionType ¶ added in v0.3.2
type ActionType string
var ( DeliverMessage ActionType = "DeliverMessage" TimeoutReplica ActionType = "TimeoutReplica" )
type Interpreter ¶
type Interpreter interface { Update(*types.Event, *strategies.Context) CurState() State Reset() }
type Metrics ¶ added in v0.3.2
type Metrics struct { Trace *Trace // contains filtered or unexported fields }
func NewMetrics ¶ added in v0.3.2
func (*Metrics) Finalize ¶ added in v0.3.2
func (m *Metrics) Finalize(ctx *strategies.Context)
func (*Metrics) NextIteration ¶ added in v0.3.2
func (m *Metrics) NextIteration()
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 (*NegativeRewardPolicy) NextIteration ¶ added in v0.3.1
func (n *NegativeRewardPolicy) NextIteration(iteration int, trace *Trace)
type RLStrategy ¶
type RLStrategy struct { *types.BaseService // contains filtered or unexported fields }
func NewRLStrategy ¶
func NewRLStrategy(config *RLStrategyConfig) (*RLStrategy, error)
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 RandomPolicy ¶ added in v0.3.3
type RandomPolicy struct {
// contains filtered or unexported fields
}
func NewRandomPolicy ¶ added in v0.3.3
func NewRandomPolicy() *RandomPolicy
func (*RandomPolicy) NextAction ¶ added in v0.3.3
func (*RandomPolicy) NextIteration ¶ added in v0.3.3
func (r *RandomPolicy) NextIteration(_ int, _ *Trace)
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
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 (*UCBZeroPolicy) NextIteration ¶ added in v0.3.1
func (e *UCBZeroPolicy) NextIteration(iteration int, trace *Trace)
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 []*Action) *Action
Click to show internal directories.
Click to hide internal directories.