Skip to main content

Parametrized hierarchical spaces with flexible priors and transformations.

Project description

ParameterSpace

Actions Status PyPI - Wheel PyPI - Python Version License: Apache-2.0 Code style: black

Contents:

About

A package to define parameter spaces consisting of mixed types (continuous, integer, categorical) with conditions and priors. It allows for easy specification of the parameters and their dependencies. The ParameterSpace object can then be used to sample random configurations from the prior and convert any valid configuration into a numerical representation. This numerical representation has the following properties:

  • it results in a Numpy ndarray of type float64
  • transformed representation between 0 and 1 (uniform) including integers, ordinal and categorical parameters
  • inactive parameters are masked as numpy.nan values

This allows to easily use optimizers that expect continuous domains to be used on more complicated problems because parameterspace can convert any numerical vector representation inside the unit hypercube into a valid configuration. The function might not be smooth, but for robust methods (like genetic algorithms/evolutionary strategies) this might still be valuable.

This software is a research prototype. The software is not ready for production use. It has neither been developed nor tested for a specific use case. However, the license conditions of the applicable Open Source licenses allow you to adapt the software to your needs. Before using it in a safety relevant setting, make sure that the software fulfills your requirements and adjust it according to any applicable safety standards (e.g. ISO 26262).

Documentation

Visit boschresearch.github.io/parameterspace

Installation

The parameterspace package can be installed from pypi.org:

pip install parameterspace

Development

Prerequisites

Setup environment

To install the package and its dependencies for development run:

poetry install

Optionally install pre-commit hooks to check code standards before committing changes:

poetry run pre-commit install

Running Tests

The tests are located in the ./tests folder. The pytest framework is used for running them. To run the tests:

poetry run pytest ./tests

Building Documentation

To built documentation run from the repository root:

poetry run mkdocs build --clean

For serving it locally while working on the documentation run:

poetry run mkdocs serve

License

parameterspace is open-sourced under the Apache-2.0 license. See the LICENSE file for details.

For a list of other open source components included in parameterspace, see the file 3rd-party-licenses.txt.

Project details


Download files

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

Source Distribution

parameterspace-0.7.19.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

parameterspace-0.7.19-py3-none-any.whl (33.3 kB view details)

Uploaded Python 3

File details

Details for the file parameterspace-0.7.19.tar.gz.

File metadata

  • Download URL: parameterspace-0.7.19.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.8.13 Linux/5.15.0-1017-azure

File hashes

Hashes for parameterspace-0.7.19.tar.gz
Algorithm Hash digest
SHA256 aab2fe3a6c224508b2c7b11c315cc68e8c535de4efbc6a5c5d4f397071f75ec5
MD5 c85b8eba207de23e1a56776f26e81c04
BLAKE2b-256 6e096181ded22e052fe7d2f3b82f3009ddd8928454581a4fe0096e7ccb1f7c99

See more details on using hashes here.

File details

Details for the file parameterspace-0.7.19-py3-none-any.whl.

File metadata

  • Download URL: parameterspace-0.7.19-py3-none-any.whl
  • Upload date:
  • Size: 33.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.8.13 Linux/5.15.0-1017-azure

File hashes

Hashes for parameterspace-0.7.19-py3-none-any.whl
Algorithm Hash digest
SHA256 9ddefbb0b270526d4c48cb0acfe1ac0671c7db26bd561b6d3979e4602bcbb9ee
MD5 d1cc29ba0c0ad645a60989391a51696e
BLAKE2b-256 62bba1096a514d6eaec343b6713fc0b957554c2ee9287f41bc6c112713e2fd99

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page