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 on the objective (via SALib).
  • hyperslice: Generate a 1D or 2D hyperslice of a function's underlying solution space.
  • waveform: Decompose an input signal waveform.
  • analyze: Numerically analyze any given 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.0.tar.gz (42.2 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.0-py3-none-any.whl (43.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hdim_opt-1.5.0.tar.gz
  • Upload date:
  • Size: 42.2 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.0.tar.gz
Algorithm Hash digest
SHA256 26bb6e71094da59dd0858bcde46c40d44b9f1bfe137878761f2be8798f32b487
MD5 7f98e163b5ac98aae760af11e2b4d831
BLAKE2b-256 4f99a4eb545a4a1c0e8918473beab6c3b9e882bc5e7c94cea3780cbd8d21449e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hdim_opt-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 43.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 15efb5d471b727c25b9f1c37bfe2b50606aa35e67199e54b6752dd1f06872ef7
MD5 e20e196846d2b24ecf98ada61d5e37cf
BLAKE2b-256 65b3513a6e84326d81c1b4bf5405a82f6488f41a360f5d71d906eafc2dfaf5cc

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

This release

1.5.0 This release

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