Skip to main content

hdim-opt: High-Dimensional Optimization Toolkit

Numerical optimization package for complex, high-dimensional problems. Includes the QUASAR evolutionary algorithm, Hyperellipsoid QMC sampling, and several useful functions streamlined from existing libraries.

All core functions, listed below, are single-line executable and depend on three essential parameters: [obj_function, bounds, n_samples]:

Sampling

  • hyperellipsoid: Generate hyperellipsoidal sample sequence; may accelerate optimization.
  • uniform: Generate uniform QMC sample sequences (via Scipy.stats.qmc).
  • isotropize: Isotropize the input data via zero-phase component analysis (ZCA).
  • lorentzian: Fit a Lorentzian/Cauchy kernel density estimation to the data.

Optimization

  • quasar: Optimization using the QUASAR evolutionary algorithm.
  • minimize: Optimization using gradient-based minimization (via SciPy.minimize).
  • symbolic: Symbolic regression to approximate the input data or function (via gplearn).

Analysis

  • sensitivity: Sensitivity analysis to quantify each dimension's influence (via SALib).
  • hyperslice: Create a hyperslice of the function's underlying solution space.
  • waveform: Decompose any 2D waveform.
  • analyze: Analyze any input dataset.

Installation

Install hdim_opt directly from PyPI:

pip install hdim_opt

Example Usage

import hdim_opt as h

### Parameter Space
n_samples = 2**10
n_dimensions = 10
bounds = [(-100,100)] * n_dimensions # Parameter bounds
obj_func = h.test_functions.rastrigin # Test function

### Sampling
ellipsoid_samples = h.hyperellipsoid(n_samples, bounds, verbose=True) # Hyperellipsoid sampling
uniform_samples = h.uniform(n_samples, bounds, method='sobol') # Uniform sampling
iso_samples, iso_params = h.isotropize(ellipsoid_samples) # Isotropize data
kde = h.lorentzian(iso_samples, 150.0, iso_samples, verbose=True) # Lorentzian multivariate KDE

### Optimization
solution, fitness = h.quasar(obj_func, bounds, init=ellipsoid_samples) # Evolutionary optimization
local_sol, local_fit = h.minimize(obj_func, bounds, init=solution) # Gradient-based optimization
all_expr, best_expr = h.symbolic(obj_func, bounds) # Symbolic regression

### Analysis
Si, S2 = h.sensitivity(obj_func, bounds) # Sensitivity analysis
slice_data, stats = h.hyperslice(obj_func, bounds, slice_dims=()) # Hyperslice of the solution space
h.analyze(slice_data) # Analyze any numerical dataset

QUASAR Optimizer

QUASAR (Quasi-Adaptive Search with Asymptotic Reinitialization) is a quantum-inspired evolutionary algorithm, highly efficient for minimizing high-dimensional, non-differentiable, and non-parametric objective functions.

  • Benefit: Significant improvements in convergence speed and solution quality for high-dimensional spaces compared to standard optimization algorithms like Differential Evolution and L-SHADE. (Reference: [https://arxiv.org/abs/2511.13843]).

HDS Sampler

HDS (Hyperellipsoid Density Sampling) is a non-uniform Quasi-Monte Carlo sampling method, specifically designed to exploit promising regions of the parameter space.

  • Benefit: Provides control over high-dimensional sample distributions. Results in higher average solution quality when initializing optimization. (Reference: [https://arxiv.org/abs/2511.07836]).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hdim_opt-1.5.2.tar.gz (42.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hdim_opt-1.5.2-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file hdim_opt-1.5.2.tar.gz.

File metadata

  • Download URL: hdim_opt-1.5.2.tar.gz
  • Upload date:
  • Size: 42.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for hdim_opt-1.5.2.tar.gz
Algorithm Hash digest
SHA256 8dee15b8c0f931ca75873b424d29b0c928a27077a4ba791e37ae4431cd16740a
MD5 f2b625be2b30eb0d3843a14c74c96683
BLAKE2b-256 08f6d6742c0dcbf0e0b16ae58891e93979ea2257df786687ec92000b871a10cc

See more details on using hashes here.

File details

Details for the file hdim_opt-1.5.2-py3-none-any.whl.

File metadata

  • Download URL: hdim_opt-1.5.2-py3-none-any.whl
  • Upload date:
  • Size: 43.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for hdim_opt-1.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 45f48da2e69180fb89aa4decc0a223f2eed853ec1097b5c0fdcecb9e597b3a10
MD5 ef6e9efd1a53471ccac6280fc0bc8462
BLAKE2b-256 3589698fb64fc83a1312d3b6c53273ba3e95dd6bb614dedf4d7da063f57cd335

See more details on using hashes here.

Release history Release notifications | RSS feed

1.6.0

2 files

This release

1.5.2 This release

2 files

1.5.1

2 files

1.5.0

2 files

1.4.81

2 files

1.4.80

2 files

1.4.72

2 files

1.4.71

2 files

1.4.8

2 files

1.4.7

2 files

1.4.6

2 files

1.4.5

2 files

1.4.4

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.3.8

2 files

1.3.7

2 files

1.3.6

2 files

1.3.5

2 files

1.3.4

2 files

1.3.3

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page