Skip to main content

hivebr — OpenLab Simulator

PyPI version Python versions License: MIT Docs

A lightweight 2D simulation framework for single- and multi-robot mobile navigation, built on Pygame, with a dual-paradigm OpenLab API for centralized and decentralized control.

Robots in the simulator are called B-bots (for bee), keeping the hive metaphor.

📖 Full documentation: https://eliasjof.github.io/hivebr_simulator/


Installation

pip install hivebr

Optional extras:

pip install "hivebr[maps]"   # occupancy grids (Pillow + scipy)
pip install "hivebr[plot]"   # data logger plots (matplotlib)

Quick start

from hivebr import HiveBrAgent, SwarmExperiment

class Patrol(HiveBrAgent):
    def loop(self, state, neighbors):
        # state.goal holds the current waypoint (x, y, theta)
        return 0.5, 0.0

exp = SwarmExperiment(robots=3, backend="navsim2d")
exp.assign_agent(robot_ids=[0, 1, 2], agent_class=Patrol)
exp.assign_route(0, [[5, 2, 0.0], [5, 6, 0.0]])
exp.run()

A single robot is just a fleet with N = 1. Switching backend="ros2" reuses the same agent code on the physical arena.

Dual paradigm

Decentralized — HiveBrAgent Centralized — SwarmController
One instance per B-bot Exactly one instance
Receives its state + neighbors Receives all states
Returns a command Returns {robot_id: command}
Reactive control, consensus Global planning, optimization (DE, L-SHADE)

Features

  • Mono or fleet, one API. A single robot is a fleet with N = 1.
  • Interactive GUI. Pan/zoom, load occupancy-grid maps, switch themes, toggle LiDAR, add waypoints and obstacles with the mouse.
  • Two environment representations. Analytic circular obstacles and image-based occupancy grids with inflation.
  • Precision sensing. Ray-casting LiDAR (DDA) against the grid plus analytic circle intersections.
  • Deterministic fleets. Each timestep is computed from a frozen snapshot of the fleet state, independent of update order.
  • Research-ready. Pluggable controllers, path planners (A*, RRT, RRT*, PRM, BIT*, OMPL, RRT-Dubins), and a data logger for offline analysis.

Robot models

type Command
differential {"v": ..., "omega": ...}
differential_firstorder {"v": ..., "omega": ...}
holonomic {"vx": ..., "vy": ...}
ackermann {"speed": ..., "steer": ...}
boat {"v": ..., "omega": ...}

Run the examples

# from a clone of the repository (examples are not shipped in the wheel)
python examples/controle_robodiferencial.py
python examples/decentralized_swarm.py
python examples/multi_robot_differential.py

License

MIT — free for educational and research use. See LICENSE.

Metadata

Release files for hivebr 0.1.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 hivebr 0.1.0
File Size Uploaded
hivebr-0.1.0.tar.gz 2.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for hivebr 0.1.0
File Interpreter ABI Platform
hivebr-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 4.0 MB

Release files / hivebr-0.1.0.tar.gz

Download URL hivebr-0.1.0.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
4bdf3cf5bf9eadef0066ab7fed5189bd91c40a3b163a8a47834632854303960e
BLAKE2b-256 checksum
How to use checksums
4e5280ab5a135fe108a104f39fba8a0a9e79bfb9637faa07185cf57a5fb5c9ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / hivebr-0.1.0-py3-none-any.whl

Download URL hivebr-0.1.0-py3-none-any.whl
Size 2.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
839bfeba2942d7ccf106e72009c96e1b0012200494f80baab60f0bdae98ce2a8
BLAKE2b-256 checksum
How to use checksums
d90fc209a8415cfea1e05ed75da344f28cf7b0ccd7c0f82af3a5d8e6773b0e53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

This release

0.1.0 This release

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