# Doubly Adaptive Cascading Bandits with User Abandonment

#### Junyu Cao, McCombs School of Business, The University of Texas at Austin. Contact: junyu.cao@mccombs.utexas.edu

Coauthors: Wei Sun, Zuo-jun (Max) Shen

This code reproduces results for the paper: Doubly Adaptive Cascading Bandits with User Abandonment.

## Installation

Clone this repository to your local machine and navigate to the project directory.

Install the necessary R packages: dplyr, MASS, ggplot2, and stats.

To run the code, first add executable permissions to a file:

    chmod +x run_all.R

## Running the Scripts

Run code to reproduce all experiment results:

    ./run_all.R

All produced figures are included in the folder plots.

## Algorithms

### Two proposed algorithms in this paper

- DAC-Bandit
- Contextual DAC-Bandit

### Benchmarks

- Explore-then-Commit (ETC)
- Epsilon-Greedy

## Code Description

- run_all.R: reproduce all numerical results
- noncontextual_ucb.R: noncontextual DAC-Bandit algorithm
- noncontextual_benchmark_eps.R: Epsilon-Greedy algorithm for the noncontextual problem
- noncontextual_benchmark_ETC.R: ETC algorithm for the noncontextual problem
- contextual_ucb.R: contextual DAC-Bandit algorithm
- contextual_benchmark_eps.R: Epsilon-Greedy algorithm for the contextual problem
- contextual_benchmark_ETC.R: ETC algorithm for the contextual problem

## Data

The original data is from https://pubsonline.informs.org/doi/10.1287/msom.2020.0900

The data needed for our experiments is included in the folder data.