moose
moose copied to clipboard
Parallel active learning in Monte Carlo simulations with Gaussian Process
Reason
Substitute expensive model evaluations in Monte Carlo simulation with Gaussian Process (GP). Actively monitor the GP prediction quality through the uncertainty estimate and re-train the GP when necessary by selectively calling the expensive model. Parallelization is also enabled to call a user-specified batch of expensive models distributed across n sets of processors when GP re-training is necessary.
Design
ActiveLearningMonteCarloSampler
Sampler class is developed to proposed new Monte Carlo samples, keep track of those samples where GP predictions are poor, and facilitate launching batch model evaluations in parallel.
ActiveLearningGaussianProcess
Surrogate class is developed to enable GP training on the fly with a dynamic training data set considering parallel model executions.
ActiveLearningGPDecision
Reporter class is developed to make GP prediction, evaluate the prediction quality with the user-specified learning function, and communicate this information to SamplerFullSolveMultiApp
and ActiveLearningMonteCarloSampler
.
Some changes are also made to GaussianProcessHandler
Utils class, primarily to suppress the mini-batch training specifications. These are typically not required in active learning since the training data set is small.
Impact
No expected impacts to existing objects.