gpp_python_expected_improvement¶
Contents:
gpp_python_expected_improvement.hpp¶
This file registers the translation layer for invoking ExpectedImprovement functions (e.g., computing/optimizing EI; see gpp_math.hpp) from Python.
namespace optimal_learning
Macro to allow restrict as a keyword for C++ compilation and CUDA/nvcc compilation. See related entry in gpp_common.hpp for more details.
gpp_python_expected_improvement.cpp¶
This file has the logic to invoke C++ functions pertaining to expected improvement from Python. The data flow follows the basic 4 step from gpp_python_common.hpp.
so their description, inputs, outputs, etc. comments have been moved. These comments exist in Export*() as Python docstrings, so we saw no need to repeat ourselves.
namespace optimal_learning
Macro to allow restrict as a keyword for C++ compilation and CUDA/nvcc compilation. See related entry in gpp_common.hpp for more details.
Functionsvoid ExportEstimationPolicies()Exports subclasses of ObjectiveEstimationPolicyInterface (e.g., ConstantLiar, KrigingBeliever). These classes do not have any useful behavior inside Python; instead (like GaussianProcess), they are meant to be constructed and passed back to C++.
void ExportExpectedImprovementFunctions()Exports functions (with docstrings) for expected improvement operations:
- expected improvement (and its gradient) evaluation (uesful for testing)
- multistart expected improvement optimization (main entry-point)
- expected improvement evaluation at a list of points (useful for testing, plotting)
These functions choose between monte-carlo and analytic EI evaluation automatically.