UniformSelection
Pure-exploration policy: every evaluate returns a fresh uniform draw, so the bandit picks arms uniformly at random regardless of observations. No exploitation at all; the opposite extreme of Greedy.
Useful as a regret-comparison baseline (any policy worth its salt should beat uniform), as a data-collection scheme before switching to a real policy, and as the inner uniformly-random arm in EpsilonGreedy / EpsilonDecreasing. Not a real online-learning choice on its own.
Properties
Functions
Hook called when a new arm joins the population. Lets stateful policies fold the new arm's snapshot into their global counters (UCB's total-samples, UCB1Normal's arm count). Default no-op.
Allocate a fresh per-arm accumulator from the arm spec. Default delegates to arm.createStat(); override only if the policy needs a non-standard variant.
Score an arm given its current snapshot. Higher scores are preferred by the bandit. step is the global update count (for time-dependent exploration schedules); rng is the bandit's shared com.eignex.kumulant.bandit.Bandit.random (consumed by sampling policies).
Hook called when an arm leaves the population. Inverse of addArm; lets stateful policies remove the departing arm's contribution from their global counters. Default no-op.
UniformSelection
arm
evaluate
Score an arm given its current snapshot. Higher scores are preferred by the bandit. step is the global update count (for time-dependent exploration schedules); rng is the bandit's shared com.eignex.kumulant.bandit.Bandit.random (consumed by sampling policies).