SciPy Samplers
ropt.plugins.sampler.scipy.SciPySampler
Bases: Sampler
A sampler implementation utilizing SciPy's statistical functions.
This sampler leverages functions from the scipy.stats and
scipy.stats.qmc modules to generate perturbation samples for optimization.
Supported Sampling Methods:
-
From Probability Distributions (
scipy.stats):norm: Samples from a standard normal distribution (mean 0, standard deviation 1). This is the default method if none is specified or if "default" is requested.truncnorm: Samples from a truncated normal distribution (mean 0, std dev 1), truncated to the range[-1, 1]by default.uniform: Samples from a uniform distribution. Defaults to the range[-1, 1].
-
From Quasi-Monte Carlo Sequences (
scipy.stats.qmc):sobol: Uses Sobol' sequences.halton: Uses Halton sequences.lhs: Uses Latin Hypercube Sampling. (Note: QMC samples are generated in the unit hypercube[0, 1]^dand then scaled to the hypercube[-1, 1]^d)
Configuration:
The specific sampling method is chosen via the method field in the
SamplerConfig. Additional method-specific
parameters (e.g., distribution parameters like loc, scale, a, b for
stats methods, or engine parameters for qmc methods) can be passed
through the options dictionary within the SamplerConfig. Refer to the
scipy.stats and
documentation for available options.