MaxPosteriorSampling implements Thompson sampling for Bayesian optimization: it draws a sample from a trained Gaussian-process posterior over candidate points, then selects the point with the largest sampled value. section 5.3.2
A typical candidate-selection step proceeds as follows:
- Generate a broad candidate set with a scrambled Sobol sequence; use at least 1,000 points for reliable coverage. section 5.3.2
- Construct the sampler from the fitted GP with replacement=False, then request the candidate maximizing one posterior sample. section 5.3.2
- Evaluate the selected point, append its observation to the training data, and repeat the optimization loop. section 5.3.2
BoTorch candidate selection
Use `botorch.generation.MaxPosteriorSampling(model, replacement=False)` and call it with `next_x = ts(candidate_x, num_samples=1)`. In the Forrester-function loop, sampled candidates initially explore and then concentrate near the global optimum. section 5.3.2
