This is an extension to code by David Abel et al. available from https://github.com/david-abel/solar_panels_rl, which is associated with their paper Bandit-Based Solar Panel Control. In the original repo, reinforcement learning is applied to adjust the angle of a solar panel. Here we provide a basic implementation of Bayesian optimisation for the same problem.
Example implementation using Bayesian optimisation (BO) for solar panel control, based on BoTorch.
Changes from original repository:
- Inclusion of requirements file to ease reproducibility (we found that not all versions of simple_rl were compatible, and recommend v0.784).
- Made compatible with Python 3.6 (required for BoTorch).
- Basic implementation of agent using Bayesian optimisation. Note that the implementation is slow and uses random subsampling.
- Example results for BO (see below). Because the BO implementation is slow we changed the default experiment settings to make the experiment shorter.
To run the example, navigate to the directory experiments and run python run_all_experiments.py
