Optimisation
Contains the implementations for the optimisation methods
Implements the supported optimisation methods.
- class calisim.optimisation.implementation.OptimisationMethod(calibration_func: Callable, specification: OptimisationMethodModel, engine: str = 'optuna', implementation: type[CalibrationWorkflowBase] | CalibrationWorkflowBase | None = None)[source]
The optimisation method class.
- pydantic model calisim.optimisation.implementation.OptimisationMethodModel[source]
The optimisation method data model.
- Parameters:
BaseModel (CalibrationModel) – The calibration base model class.
- Config:
arbitrary_types_allowed: bool = True
protected_namespaces: tuple = ()
- Fields:
- field acquisition_func: str | None = 'ei'
The acquisition function for Bayesian optimisation
- field directions: list[str] | None = ['minimize']
The list of objective directions
- field use_saasbo: bool = False
Enable Sparse Axis-Aligned Subspace Bayesian Optimization
- calisim.optimisation.implementation.get_implementations() dict[str, str][source]
Get the calibration implementations for optimisation.
- Returns:
The dictionary of calibration implementations for optimisation.
- Return type:
Dict[str, type[CalibrationWorkflowBase]]
BoTorch
Contains the implementations for optimisation methods using BoTorch
Implements Bayesian optimisation methods using the BoTorch library.
- class calisim.optimisation.botorch_wrapper.BoTorchOptimisation(calibration_func: Callable, specification: CalibrationModel, task: str)[source]
The BoTorchOptimisation optimisation method class.
Emukit
Contains the implementations for optimisation methods using Emukit
Implements the supported optimisation methods using the Emukit library.
- class calisim.optimisation.emukit_wrapper.EmukitOptimisation(calibration_func: Callable, specification: CalibrationModel, task: str)[source]
The Emukit optimisation method class.
OpenTurns
Contains the implementations for optimisation methods using OpenTurns
Implements the supported optimisation methods using the OpenTurns library.
- class calisim.optimisation.openturns_wrapper.OpenTurnsOptimisation(calibration_func: Callable, specification: CalibrationModel, task: str)[source]
The OpenTurns optimisation method class.
Optuna
Contains the implementations for optimisation methods using Optuna
Implements the supported optimisation methods using the Optuna library.
- class calisim.optimisation.optuna_wrapper.OptunaOptimisation(calibration_func: Callable, specification: CalibrationModel, task: str)[source]
The Optuna optimisation method class.