Welcome to the final project repository for the Online Learning Applications course at Politecnico di Milano. This work explores online learning strategies for pricing and bidding problems in both stochastic and adversarial settings.
- Alberto Eusebio β 10970712
- Gianluigi Palmisano β 10782779
- Martina Riva β 10756775
ola-project.ipynb: Jupyter Notebook implementing the project with code, simulations, and analysis.Presentation OLA.pptx: Final presentation summarizing the project and results.project_requirements.pdf: Official description of the project task and deliverables.LICENSE: Apache 2.0 License.
The project focuses on solving dynamic pricing and bidding problems under two scenarios:
- Algorithm: Gaussian Process Upper Confidence Bound (GPUCB)
- Goal: Learn the optimal pricing strategy from stochastic user responses.
- Approach: Model the reward function with a Gaussian Process and balance exploration vs. exploitation.
- Goal: Handle pricing and bidding in environments with potentially adversarial dynamics.
- Approach: Apply online learning techniques designed to perform well without assumptions on reward distribution.
- Sampled prices increasingly concentrate around the optimal price.
- Price uncertainty is minimized near the optimal region.
- GPUCB performs well under uncertainty and converges effectively.
To run the notebook:
- Make sure you have Python 3.x installed.
- Install dependencies:
pip install numpy matplotlib scipy jupyter- Launch Jupyter and open ola-project.ipynb:
jupyter notebookThis project is open-source and distributed under the Apache License 2.0.
You are free to use, modify, and distribute this software, provided that proper credit is given and the license terms are respected.
For more details, see the full LICENSE file in this repository.