Batched bandits#

Read more in the user guide.

Protocol#

agent.BatchBanditAgent

Base class for batched bandit agents.

environment.BatchMAB

Wrap a stochastic bandit into a batched one.

interaction.BatchBanditInteraction

Interaction loop for the batched bandit setting.

Agents#

agents.BIMED.BIMED

Batched IMED with within-batch sequential index updates.

agents.BCB.BCB

BCB with CVaR = Expectation (adapted batch version).

agents.BCB.BCBnaif

BCB without the optimistic within-batch count increment.

agents.BABA.BABA

Batched Anytime Bandit Algorithm

agents._Oracle.Oracle

Baseline filling every batch with the best arm.

agents._Random.Random

Uniform exploration: fill each batch with independent random arms.

Environments#

envs.parametric.BatchBernoulliBandit

Batched Bernoulli bandit, built from means and a named batch schedule.

envs.parametric.BatchGaussianBandit

Batched Gaussian bandit, built from means and a named batch schedule.

envs.parametric.BatchTruncatedGaussianBandit

Batched bandit with Gaussian arms truncated to [low, high].

Batch schedules#

A schedule maps a round index to the size of that round’s batch. Pass one by name to the environment factories above, or directly to BatchMAB.

envs.parametric.baba_schedule

Batch sizes of the BABA epoch grid, as a plain list.

envs.parametric.exotic_schedule

Batch schedule cycling through linear, exponential, constant, and cubic.