ArchSBO API Reference
sb_arch_opt.algo.arch_sbo.api.get_arch_sbo_gp(problem: ArchOptProblemBase, init_size: int = 100, n_parallel=None, min_pof: float = None, kpls_n_dim: int = 10, g_aggregation: ConstraintAggregation = None, results_folder=None, **kwargs) -> InfillAlgorithm
Get an architecture SBO algorithm using a mixed-discrete Gaussian Process (Kriging) model as its surrogate model. Appropriate (multi-objective) infills and constraint handling techniques are automatically selected.
For constraint handling, increase min_pof to between 0.50 and 0.75 to be more conservative (i.e. require a higher probability of being feasible for infill points) or decrease below 0.50 to be more exploratory. Optionally defined an aggregation strategy to reduce the number of models to train.
To reduce model training times for high-dimensional problems, KPLS is used instead of Kriging when the problem dimension exceeds kpls_n_dim. Note that the DoE should then contain at least kpls_n_dim+1 points.
sb_arch_opt.algo.arch_sbo.api.get_arch_sbo_rbf(init_size: int = 100, results_folder=None, **kwargs) -> InfillAlgorithm
Get a architecture SBO algorithm using an RBF model as its surrogate model.
sb_arch_opt.algo.arch_sbo.algo.InfillAlgorithm(infill: InfillCriterion, infill_size=None, init_sampling: Sampling = None, init_size=100, survival: Survival = None, output=EHVMultiObjectiveOutput(), **kwargs)
Algorithm that simpy uses some InfillCriterion to get infill points. The algorithm is compatible with the ask-tell interface.
store_intermediate_results(results_folder: str)
Enable intermediate results storage to support restarting
initialize_from_previous_results(problem: ArchOptProblemBase, result_folder: str) -> bool
Initialize the SBO algorithm from previously stored results
sb_arch_opt.algo.arch_sbo.api.get_sbo(surrogate_model, infill: SurrogateInfill, infill_size: int = 1, init_size: int = 100, infill_pop_size: int = 100, infill_gens: int = None, repair=None, normalization=None, hc_strategy: HiddenConstraintStrategy = None, results_folder=None, **kwargs) -> InfillAlgorithm
Create the SBO algorithm given some SMT surrogate model and an infill criterion