Description
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