Skip to main content

hiveBr — Brazilian Open Lab for Multi-Robots

🐝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
python examples/multi_line_follower.py

License

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

hivebr logo

Metadata

Release files for hivebr 0.1.2

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.2
File Size Uploaded
hivebr-0.1.2.tar.gz 2.1 MB Details

Built distribution (wheel)

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

Total release size: 4.1 MB

Release files / hivebr-0.1.2.tar.gz

Download URL hivebr-0.1.2.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
6f0be61f50faf7da0f5c8862bc79f57ba521e5116d7dd196bd4a44dbd35c0fc5
BLAKE2b-256 checksum
How to use checksums
43f2e34a12494175432161de9ca1402b4af10941d4474c82ae3931feec0541a3
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.2-py3-none-any.whl

Download URL hivebr-0.1.2-py3-none-any.whl
Size 2.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
e6d9cdb2223e86236da283a254fdfe3ab106dd63059b863c211dce6a2f995a8f
BLAKE2b-256 checksum
How to use checksums
dceabdf2a5d3e3387a61db8faeded2e2ceefce6eddae55b0df30df6dc27b43b2
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

This release

0.1.2 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