Skip to main content

Swarm Seek

Literature-validated Artificial Bee Colony (ABC) optimization for Python.

Swarm Seek implements Original ABC and principal peer-reviewed variants (GABC, qABC, MABC, CABC) with a NumPy core, optional Numba/JAX backends, an ask/tell API, scikit-learn / Optuna adapters, and automated checks against published benchmark figures.

Status: 0.2.0 (beta). Docs: https://swarm-seek.readthedocs.io/

Install

Requires Python 3.10+.

pip install swarm-seek

Optional extras:

pip install 'swarm-seek[numba]'    # Numba backend
pip install 'swarm-seek[jax]'      # JAX backend
pip install 'swarm-seek[sklearn]'  # ABCSearchCV
pip install 'swarm-seek[optuna]'   # ABCSampler

Editable install for development:

pip install -e ".[dev]"

Quick start

from swarm_seek import ABC, ContinuousSpace
from swarm_seek.benchmarks import sphere

space = ContinuousSpace([(-5.0, 5.0)] * 5)
colony = ABC(space, variant="original", pop_size=20, limit=100, max_evals=5_000, seed=0)
best = colony.minimize(sphere)
print(best.fitness)

Ask/tell loop:

import numpy as np

from swarm_seek import ABC, ContinuousSpace
from swarm_seek.benchmarks import sphere

space = ContinuousSpace([(-5.0, 5.0)] * 5)
colony = ABC(space, variant="gabc", pop_size=20, limit=100, max_evals=5_000, seed=0)

while not colony.converged:
    candidates = colony.ask()
    if candidates.size == 0:
        colony.tell([])
        continue
    colony.tell(np.asarray(sphere(candidates), dtype=np.float64))

print(colony.best.fitness)

Combinatorial ABC (permutation / TSP-style):

from swarm_seek import ABC, PermutationSpace
from swarm_seek.benchmarks import random_cities, tour_length

cities = random_cities(12, seed=0)
space = PermutationSpace(12)
best = ABC(space, variant="cabc", pop_size=16, max_evals=2_000, seed=0).minimize(
    lambda x: tour_length(x, cities)
)
print(best.fitness)

Runnable notebooks with stated pass criteria live in examples/. Backend timing: python scripts/compare_backends.py. Full documentation builds from docs/source/.

License

Apache License 2.0. See LICENSE.

Citation

See CITATION.cff for citation metadata. Archive / DOI: 10.5281/zenodo.21630532 (concept; version v0.1.1 is 10.5281/zenodo.21630533).

Metadata

Release files for swarm-seek 0.2.0

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

Source distribution (sdist)

Source distribution for swarm-seek 0.2.0
File Size Uploaded
swarm_seek-0.2.0.tar.gz 39.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for swarm-seek 0.2.0
File Interpreter ABI Platform
swarm_seek-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 92.7 kB

Release files / swarm_seek-0.2.0.tar.gz

Download URL swarm_seek-0.2.0.tar.gz
Size 39.0 kB
Tags Source
SHA-256 checksum
How to use checksums
28b89f367e098f7800a2f6386a261f7b930809be52b3bab3d7fa4ae3466de423
BLAKE2b-256 checksum
How to use checksums
e219465f0378e2261d1ed0be87351965c96f477f7e60463e7d3318eb91b919dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.

Transparency log

Release files / swarm_seek-0.2.0-py3-none-any.whl

Download URL swarm_seek-0.2.0-py3-none-any.whl
Size 53.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ee97963f81fa81e5c70bacb40a31a63fe6b82226bfe97d2518941b3987092f20
BLAKE2b-256 checksum
How to use checksums
deed4f82481bd4f5c5cd97fd8e7bf87be1944767b07bfae82417e8570cccb43a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.1

2 release files

0.1.0

2 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