A python library for classical and dynamical low-rank CMA-ES.
Project description
A Python Library for Classical and Dynamical Low-Rank CMA-ES
General :earth_americas:
seamaze is a Python library for classical and Dynamical Low-Rank (DLR) CMA-ES variants. It is designed to navigate complex, high-dimensional fitness landscapes by iteratively adapting a multivariate Gaussian search space to the objective's local topography. By leveraging DLR approximations, seamaze remains computationally efficient even on ill-conditioned or rugged black-box problems. This implementation further extends to the integration of first-order information, constraints, and robust restart mechanisms.
Installation :computer:
Python distribution
You can install the latest distribution via:
pip install seamaze
Source code
You can check the latest source code via:
git clone https://github.com/pyanno4rt/seamaze.git
Usage
seamaze has two main classes which provide a classical and a dynamical low-rank CMA-ES variant:
Classical CMA-ES
from seamaze.cmaes import CMAES
Dynamical low-rank CMA-ES
from seamaze.dlrcmaes import DLRCMAES
Dependencies
| Name | Version |
|---|---|
python |
>=3.11, <4.0 |
numpy |
>=2.4.4 |
scipy |
>=1.17.1 |
numba |
>=0.65.0 |
matplotlib |
>=3.10.8 |
seaborn |
>=0.13.2 |
pyqt5-qt5 |
==5.15.2 |
pyqt5 |
==5.15.10 |
setuptools |
<81.0.0 |
Moreover, we are using Python v3.11.11 and Spyder IDE v6.1.4 for development.
Development :rocket:
Important links
Help and Support :busts_in_silhouette:
Resources
Contact
Citation
To cite seamaze, either use the link in the right sidebar of the Github landing page labeled "Cite this repository" or copy the short-form bib-style paragraph below:
@software{seamaze,
title = {{seamaze}: a python library for classical and dynamical low-rank CMA-ES},
author = {Ortkamp, Tim and Patwardhan, Chinmay and Stammer, Pia},
version = {0.0.1},
license = {MIT},
year = {2026},
publisher = {GitHub},
url = {https://github.com/pyanno4rt/seamaze}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file seamaze-0.0.1.tar.gz.
File metadata
- Download URL: seamaze-0.0.1.tar.gz
- Upload date:
- Size: 21.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.7.6 Linux/5.15.0-131-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d872902be8ba02d0c956b859dbbb307e1380b402a3410439f27d836759f4bb9a
|
|
| MD5 |
b376a56cbd512212f2f4e1d25c511b80
|
|
| BLAKE2b-256 |
a3e59f8480b085a86250f52fb250d09ade77672b9f000eaa14ffaaadff5d4e39
|
File details
Details for the file seamaze-0.0.1-py3-none-any.whl.
File metadata
- Download URL: seamaze-0.0.1-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.7.6 Linux/5.15.0-131-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54c24fe071c1bbb788e28711a96536b82d78dff506aacdcefd563d700afcfd2e
|
|
| MD5 |
50ad75a5957af358d9b50f5fb4155814
|
|
| BLAKE2b-256 |
46bf0f8c47a39116002d74a656ec23113d3627b35a3ab27e24c1b134532fa326
|