StreamingBandit: Experimenting with Bandit Policies

A large number of statistical decision problems in the social sciences and beyond can be framed as a (contextual) multi-armed bandit problem. However, it is notoriously hard to develop and evaluate policies that tackle these types of problems, and to use such policies in applied studies. To address...

Full description

Bibliographic Details
Main Authors: Jules Kruijswijk, Robin van Emden, Petri Parvinen, Maurits Kaptein
Format: Article
Language:English
Published: Foundation for Open Access Statistics 2020-08-01
Series:Journal of Statistical Software
Subjects:
Online Access:https://www.jstatsoft.org/index.php/jss/article/view/2881
_version_ 1819091155967541248
author Jules Kruijswijk
Robin van Emden
Petri Parvinen
Maurits Kaptein
author_facet Jules Kruijswijk
Robin van Emden
Petri Parvinen
Maurits Kaptein
author_sort Jules Kruijswijk
collection DOAJ
description A large number of statistical decision problems in the social sciences and beyond can be framed as a (contextual) multi-armed bandit problem. However, it is notoriously hard to develop and evaluate policies that tackle these types of problems, and to use such policies in applied studies. To address this issue, this paper introduces StreamingBandit, a Python web application for developing and testing bandit policies in field studies. StreamingBandit can sequentially select treatments using (online) policies in real time. Once StreamingBandit is implemented in an applied context, different policies can be tested, altered, nested, and compared. StreamingBandit makes it easy to apply a multitude of bandit policies for sequential allocation in field experiments, and allows for the quick development and re-use of novel policies. In this article, we detail the implementation logic of StreamingBandit and provide several examples of its use.
first_indexed 2024-12-21T22:35:14Z
format Article
id doaj.art-ddd90b00ac304227b7765add166bc7eb
institution Directory Open Access Journal
issn 1548-7660
language English
last_indexed 2024-12-21T22:35:14Z
publishDate 2020-08-01
publisher Foundation for Open Access Statistics
record_format Article
series Journal of Statistical Software
spelling doaj.art-ddd90b00ac304227b7765add166bc7eb2022-12-21T18:47:59ZengFoundation for Open Access StatisticsJournal of Statistical Software1548-76602020-08-0194114710.18637/jss.v094.i091370StreamingBandit: Experimenting with Bandit PoliciesJules KruijswijkRobin van EmdenPetri ParvinenMaurits KapteinA large number of statistical decision problems in the social sciences and beyond can be framed as a (contextual) multi-armed bandit problem. However, it is notoriously hard to develop and evaluate policies that tackle these types of problems, and to use such policies in applied studies. To address this issue, this paper introduces StreamingBandit, a Python web application for developing and testing bandit policies in field studies. StreamingBandit can sequentially select treatments using (online) policies in real time. Once StreamingBandit is implemented in an applied context, different policies can be tested, altered, nested, and compared. StreamingBandit makes it easy to apply a multitude of bandit policies for sequential allocation in field experiments, and allows for the quick development and re-use of novel policies. In this article, we detail the implementation logic of StreamingBandit and provide several examples of its use.https://www.jstatsoft.org/index.php/jss/article/view/2881sequential decision-makingmulti-armed banditdata streamssequential experimentationpython
spellingShingle Jules Kruijswijk
Robin van Emden
Petri Parvinen
Maurits Kaptein
StreamingBandit: Experimenting with Bandit Policies
Journal of Statistical Software
sequential decision-making
multi-armed bandit
data streams
sequential experimentation
python
title StreamingBandit: Experimenting with Bandit Policies
title_full StreamingBandit: Experimenting with Bandit Policies
title_fullStr StreamingBandit: Experimenting with Bandit Policies
title_full_unstemmed StreamingBandit: Experimenting with Bandit Policies
title_short StreamingBandit: Experimenting with Bandit Policies
title_sort streamingbandit experimenting with bandit policies
topic sequential decision-making
multi-armed bandit
data streams
sequential experimentation
python
url https://www.jstatsoft.org/index.php/jss/article/view/2881
work_keys_str_mv AT juleskruijswijk streamingbanditexperimentingwithbanditpolicies
AT robinvanemden streamingbanditexperimentingwithbanditpolicies
AT petriparvinen streamingbanditexperimentingwithbanditpolicies
AT mauritskaptein streamingbanditexperimentingwithbanditpolicies