Open henrymoss opened 4 years ago
Thanks Henry, that sounds great!
I am not sure if we want this in core lib right now (we usually aim at adding stuff to core lib only when it is a well established method), as an example that would be very good to have. We are relatively easy on examples: they could be just code, or code plus notebook, or just notebook.
As for LP notebook - that would be most certainly welcome too. Maybe just separate these two out in different PRs.
The current local penalization method for batch BO does not work on multi-fidelity models. Batch BO for MF models is only currently supported with the greedy sequential point calculator. We can definitely do better than that!
I have coded a new version of local penalization that works with MF models. In particular, the penalization regions for a given batch are calculated by imagining that all the batch evaluations are on the target fidelity source. We can then calculate a single penalization function that is applied to the acquisition function uniformly across the different information sources.
This simple approach seems to work okay. Possible extensions would allow penalization regions unique to each information source. For example, the penalization zone around a planned evaluation on fidelity 1, would be larger than the corresponding zone on another fidelity level. It is unclear how best to implement this. Perhaps @javiergonzalezh might have some ideas?
Before submitting a pull request, I wanted to know if you want this feature in Emukit and If you want a notebook demo?. There is currently no notebook for the standard (non-MF) version of local-penalization. I am happy to make one of those (with lots of helpful plots) as well ?
Henry