Skip to main content

Global Optimization Benchmark (GLOBe)

CI CI PyPI version Code style: black

GLOBe Logo

GLOBe is a collection of global optimization algorithms implemented in C++ and linked with Python. It also includes a set of analytical benchmark functions and a random function generator (PyGKLS) to test the performance of these algorithms.

Algorithms

Documentation

The documentation is available at gaetanserre.fr/GLOBe.

Installation (Python ≥ 3.10)

Install the package via pip from PyPI:

pip install globe-opti

Alternatively, download the corresponding wheel file from the releases and install it with pip:

pip install globe-opti-<version>-<architecture>.whl

Build from source

Make sure you have CMake (≥ 3.28), a c++ compiler, and the eigen3 library installed. Then clone the repository and run:

pip install . -v

It should build the C++ extensions and install the package. You can also build the documentation with:

cd docs
pip install -r requirements.txt
make html

Usage

This package can be used to design a complete benchmarking framework for global optimization algorithms, testing multiple algorithms on a set of benchmark functions. See test_globe.py for an example of how to use it.

The global optimization algorithms can also be used independently. For example, to run the AdaLIPO+ algorithm on a benchmark function:

from globe.optimizers import AdaLIPO_P
from globe import create_bounds

f = lambda x: x.T @ x

opt = AdaLIPO_P(create_bounds(2, -5, 5), 300)
res = opt.minimize(f)
print(f"Optimal point: {res[0]}, Optimal value: {res[1]}")

See test_optimizers.py for more examples of how to use the algorithms.

Contributing

Contributions are welcome! Please see the CONTRIBUTING file for guidelines.

References

License

This is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

Metadata

Release files for globe-opti 0.0.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for globe-opti 0.0.12
File Size Uploaded
globe_opti-0.0.12.tar.gz 85.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for globe-opti 0.0.12
File
globe_opti-0.0.12-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
globe_opti-0.0.12-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
globe_opti-0.0.12-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
globe_opti-0.0.12-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
globe_opti-0.0.12-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details
globe_opti-0.0.12-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
globe_opti-0.0.12-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
globe_opti-0.0.12-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
globe_opti-0.0.12-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
globe_opti-0.0.12-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
globe_opti-0.0.12-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
globe_opti-0.0.12-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
globe_opti-0.0.12-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
globe_opti-0.0.12-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details
globe_opti-0.0.12-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 26.5 MB

Release files / globe_opti-0.0.12.tar.gz

Download URL globe_opti-0.0.12.tar.gz
Size 85.6 kB
Tags Source
SHA-256 checksum
How to use checksums
9904fa0b7b284c1153fc2000ec24e9c5c7c2ce7f5f6ceeb85809d7514751ff92
BLAKE2b-256 checksum
How to use checksums
0b75d236974cc7a6da57f43d86f9447e322712d655e09ac0c43ad6e887a4acb1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp314-cp314-win_amd64.whl

Download URL globe_opti-0.0.12-cp314-cp314-win_amd64.whl
Size 918.4 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
15a931a01b58c0a726ff75e412095c0447529b810e72fdd806c524c558089e3f
BLAKE2b-256 checksum
How to use checksums
68fa8f32bdbdb0ffd418b52519989623c6f4715dc86f48aaa01e7ecb3471dde7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL globe_opti-0.0.12-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
18bccb0f73caf65427b5ecbf073c9fb505452f00b50d1d925b1b9de3c1584043
BLAKE2b-256 checksum
How to use checksums
aed8cae6b162781d0e8af827c4543a22823623171f562bfc52044658fcd883a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp314-cp314-macosx_11_0_arm64.whl

Download URL globe_opti-0.0.12-cp314-cp314-macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
31c1bdfb3ed502f0002e001a1a5d8a77da8188e234cadced666a747a5db4edb7
BLAKE2b-256 checksum
How to use checksums
159a9d9b3008089bec7974fd9bd3d0aa571a36fa2e158110da2e4a4b3ed3ba78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp313-cp313-win_amd64.whl

Download URL globe_opti-0.0.12-cp313-cp313-win_amd64.whl
Size 902.3 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
c6090cb25c4039a6dfa9892b1080dcb0367fa7e62c3c9801f372eb95a03aef99
BLAKE2b-256 checksum
How to use checksums
32dfd092fca67325c98e3c069d6c948fc2405a6e014d084ba3b342bcdf694a77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL globe_opti-0.0.12-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
96906c0aea15bb790400ace79fe419c4305404e5986b3256223a2d926775ab37
BLAKE2b-256 checksum
How to use checksums
175b29d16084641246254fd7d90b7308bcfc5113827887f955c0e8ba351a1ecf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp313-cp313-macosx_11_0_arm64.whl

Download URL globe_opti-0.0.12-cp313-cp313-macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1cb7627797660d74f6cb9ffd4eae771204957e569cd950b5eadbd836aa11788e
BLAKE2b-256 checksum
How to use checksums
708cd0f120a9d983584024a8f552d2147f5842218ff9e368a61f9f45d8f881c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp312-cp312-win_amd64.whl

Download URL globe_opti-0.0.12-cp312-cp312-win_amd64.whl
Size 903.2 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
e3a8392dc755c1cdf43e001abc64b649f961566484c1d11b3cbdc50bc57244c7
BLAKE2b-256 checksum
How to use checksums
75995bb524edc89f2b9fe77a411b558c54ab51aa2a51f24e6cf801a31de4e920
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL globe_opti-0.0.12-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5e5aba811a4a3204d226e5d6a72d1293375167a2fe48efc7046aadc1bb2272b2
BLAKE2b-256 checksum
How to use checksums
3aa5c433b0b30a70a1e38fcdcc606bdfd5105686ca653097b195a8ed77dfa5d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp312-cp312-macosx_11_0_arm64.whl

Download URL globe_opti-0.0.12-cp312-cp312-macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bd5f309df15290222a2b6e22e7f6e184ba0f2ab2c1dd8ed2a932345c8048f831
BLAKE2b-256 checksum
How to use checksums
e71ed17821531703b1c6f6fdcd44a9c6c8d547996f39903b69422d1d114080cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp311-cp311-win_amd64.whl

Download URL globe_opti-0.0.12-cp311-cp311-win_amd64.whl
Size 901.4 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
d2070fee3a61f343f56b20021b35634ff774cb3c043ffdf04557f3350185a0e2
BLAKE2b-256 checksum
How to use checksums
5857a5cb0c1660dd08b4cf56d0b808b145cee37635f12d89af3590876e00b386
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL globe_opti-0.0.12-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
76b60df814b925d3b244f1e1f3b724d5b0fff27b1de5efd121c1c9ad86974ba6
BLAKE2b-256 checksum
How to use checksums
23a121aa58bf484f3beb036630eebf8eb167019ac747f8cee670ac1775405ab9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp311-cp311-macosx_11_0_arm64.whl

Download URL globe_opti-0.0.12-cp311-cp311-macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
57cb12c815073cb9e49c44136c347b32a058da1ea20e4fcd6b26029a38e19e37
BLAKE2b-256 checksum
How to use checksums
9d42871533bfab32c8c4bbad30f6c1343722e96158e514ff8cbefee8f9feec1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp310-cp310-win_amd64.whl

Download URL globe_opti-0.0.12-cp310-cp310-win_amd64.whl
Size 902.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
beb7b13b1da98e7a4a923dfd5d8bbccba0e80e121185d20c3be58c247a4bd4f6
BLAKE2b-256 checksum
How to use checksums
f934f49b8dcfaf23408985c20fc17768477a5edd1c91dc319d70c49974a4c851
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL globe_opti-0.0.12-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0cf417184502553a7825a7dd1da82c290a803dcb3bcc4c88d14ab3c625d9f08e
BLAKE2b-256 checksum
How to use checksums
a7d93504f99b31f975864a398cf454c72d2b8312bd7ac31dd4f1cf76449165e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / globe_opti-0.0.12-cp310-cp310-macosx_11_0_arm64.whl

Download URL globe_opti-0.0.12-cp310-cp310-macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ad7058b06fbbdf80829fbde7df61cca71d3187127b0730b249d811582c06c1fc
BLAKE2b-256 checksum
How to use checksums
0f57010a822196537f9d996aee6c1194422c8b729d97b3152998a15719874029
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release history Release notifications | RSS feed

This release

0.0.12 This release

16 release files

0.0.9

16 release files

0.0.8

16 release 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