|
Doxygen
1.15.0
|
Tasmanian has integration with the libEnsemble project, which is a Python library to coordinate the concurrent evaluation of dynamic ensembles of calculations. The workflow management system of libEnsemble can be wrapped around the Tasmanian sparse grid methods for constructing surrogate models and libEnsemble can serve as an intermediary between Tasmanian and the model of interest.
The functionality provided by libEnsemble is similar to that of TasGrid::constructSurrogate() and TasGrid::mpiConstructSurrogate(). While the native Tasmanian methods are functional, libEnsemble provides much more sophisticated workflow algorithms and much wider support for hardware architectures. One of the main advantages of libEnsemble is that the code is portable on shared memory multi-threaded environments, as well as numerous distributed cluster systems.
Using Tasmanian and libEnsemble together requires:
The easiest way to install the latest development version of libEnsemble is to clone the repo and use a local pip-installer:
See the Installation instructions for Tasmanian.
Notes:
An example of the Tasmanian-libEnsemble integration can be found in the libEnsemble testing suite. The Tasmanian sparse grid construction algorithm is implemented as the sparse_grid_batched libEnsemble native gen_f function:
The construction method accepts the following user parameters:
No additional parameters are required for static grid construction, e.g., similar to TasGrid::loadNeededPoints(). Iterative refinement can be enabled with the additional options for either anisotropic strategy
or surplus strategy
See TasGrid::TasmanianSparseGrid::setAnisotropicRefinement() and TasGrid::TasmanianSparseGrid::setSurplusRefinement() for details.