moose icon indicating copy to clipboard operation
moose copied to clipboard

Parallel active learning in Monte Carlo simulations with Gaussian Process

Open somu15 opened this issue 2 years ago • 0 comments

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.

somu15 avatar Oct 02 '22 22:10 somu15