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 streamlined functions derived from existing libraries for ease of use.

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

Optimization

  • quasar: QUASAR optimization.
  • minimize: Optimization using gradient-based minimization (via SciPy.minimize).
  • sensitivity: Sensitivity analysis to quantify each variable's influence on the objective (via SALib).

Sampling

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

Analysis

  • analyze: Numerically analyze any given dataset.
  • waveform: Decompose the input waveform signal array into a diagnostic summary.

Installation

Installed via hdim_opt directly from PyPI:

pip install hdim_opt

Example Usage:

import hdim_opt as h

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

### 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(ellipsoid_samples, 150.0, ellipsoid_samples, verbose=True) # 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) # evolutionary optimization
Si, S2 = h.sensitivity(obj_func, bounds) # sensitivity analysis

### Analysis
h.analyze(ellipsoid_samples) # Analyze any numerical dataset
summary = h.waveform(t, signal) # Waveform analysis

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 compared to contemporary optimizers. (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.4.81.tar.gz (38.6 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.4.81-py3-none-any.whl (39.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hdim_opt-1.4.81.tar.gz
  • Upload date:
  • Size: 38.6 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.4.81.tar.gz
Algorithm Hash digest
SHA256 a3ffa3505a9fa4fd95430d7ee431a8e9a5ca271794ec33db95836af5f8d8ca1e
MD5 54bb76048d21166d9204e22a61e33945
BLAKE2b-256 7a5979acc53c976b2f88a241f41e19cabb261146f9c28c9d24df09ea6eacb699

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hdim_opt-1.4.81-py3-none-any.whl
  • Upload date:
  • Size: 39.8 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.4.81-py3-none-any.whl
Algorithm Hash digest
SHA256 ef62c0f5d2cb0ad57515650326f9f66e90713a1dccc78d76ada7689367e8ad3c
MD5 8ffe25a0bd34c76ce52bbfaef69352c2
BLAKE2b-256 8016b7cba45b108e12c0ad77371b53a110d82654f50a8d853b204bc17ce546ed

See more details on using hashes here.

Release history Release notifications | RSS feed

1.6.0

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

This release

1.4.81 This release

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