This Online Learning Applications project was developed by Aygalic Jara, Christopher Volpi, Giulia Montani, Luca Mainini and Roberta Troilo. It aimed to implement a pricing algorithm based on multi-armed bandit for a small e-commerce platform.
In every webpage, a single product, called primary, is displayed together with its price. The user can add a number of units of this product to the cart. After the product has been added to the cart, two products, called secondary, are recommended. When displaying the secondary products, the price is hidden. Furthermore, the products are recommended in two slots, one above the other, thus providing more importance to the product displayed in the slot above. If the user clicks on a secondary product, a new tab on the browser is opened and, in the loaded webpage, the clicked product is displayed as primary together with its price. At the end of the visit over the ecommerce website, the user buys the products added to the cart.
In our simulation, we consider 3 classes of users that had different reservation prices:
We implemented different classes for the simulation:
- User
- Product
- Daily Customer
- Ecommerce
- Greedy algorithm
- UCB
- Sliding UCB
- UCB with CUSUM (change detectors)
- Thompson Sampling
- Dynamic UCB and TS