Skip to main content

Python bindings for the Gobot robotics scene, simulation, and rendering engine.

Project description

gobot

Gobot is a Linux robotics simulation package with a Python-first workflow. Use it from Python to create scenes, step simulation, inspect robot state, and drive reinforcement-learning experiments.

overview

PyPI License CI

Install

Gobot currently publishes Linux wheels.

pip install gobot -i https://pypi.org/simple

Check the install:

import gobot

print(gobot.__file__)
print(gobot.backend_infos())

Python Usage

Create and inspect a small test scene:

import gobot

scene = gobot.create_test_scene()
root = scene.root

print(root.name)
print(root.type)
print([child.name for child in root.children])

Run a minimal reinforcement-learning environment:

import gobot

gobot.app.context().set_project_path("/tmp/gobot-demo")
gobot.scene.save_cartpole_scene("res://cartpole.jscn")

env = gobot.rl.ManagerBasedEnv(
    {"scene": "res://cartpole.jscn", "backend": "null", "controlled_joints": ["slider"]}
)
obs, info = env.reset(seed=1)

for _ in range(10):
    obs, reward, terminated, truncated, info = env.step([[0.0]])
    if terminated[0] or truncated[0]:
        obs, info = env.reset()

Use the Gymnasium-style adapter:

import gobot

env = gobot.rl.GymWrapper(
    gobot.rl.ManagerBasedEnv(
        {"scene": "res://cartpole.jscn", "backend": "null", "controlled_joints": ["slider"]}
    )
)
obs, info = env.reset(seed=1)
obs, reward, terminated, truncated, info = env.step([0.0])

Set a project root when working with res:// paths:

import gobot

gobot.set_project_path("/path/to/project")
scene = gobot.load_scene("res://world.jscn")

Editor

The wheel also installs the editor command:

gobot_editor

The executable and its local shared libraries are installed inside the Python package, so a normal pip install gobot is enough for the packaged runtime.

Local Wheel Build

From a source checkout:

git clone https://github.com/RobSimulatorGroup/gobot.git
cd gobot
git submodule update --init --recursive
python -m pip install -U build scikit-build-core
python -m build --wheel
python -m pip install --force-reinstall dist/gobot-0.1.0-*.whl

For a faster local build without MuJoCo:

python -m build --wheel -Ccmake.define.GOB_BUILD_MUJOCO=OFF

Notes

  • Supported platform: Linux.
  • Python package name: gobot.
  • Main RL entry point: gobot.rl.ManagerBasedEnv.
  • Gym-style helpers: gobot.rl.GymWrapper.
  • MuJoCo support is included in release wheels when available in the build.
  • MuJoCo RL roadmap: doc/mujoco_rl_plan.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gobot-0.1.3.tar.gz (104.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gobot-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gobot-0.1.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gobot-0.1.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gobot-0.1.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gobot-0.1.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file gobot-0.1.3.tar.gz.

File metadata

  • Download URL: gobot-0.1.3.tar.gz
  • Upload date:
  • Size: 104.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gobot-0.1.3.tar.gz
Algorithm Hash digest
SHA256 6bace6f79143cd195e030813e77f20184540f557ab4e43f86418f855e5ec6d95
MD5 36d58a329d0b09807bf73271bf6aa1db
BLAKE2b-256 c6852de36e9c86ab3a9a0197286f6bea073d62be8c8f8de7c8170d3b6858f0d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3.tar.gz:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gobot-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gobot-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b183a83f722c4883f28309bd425643054433bfc583ac232bb1dcfdaff384e0e1
MD5 7181f9bd73d4f5249729570cc07a182d
BLAKE2b-256 67261792bbee229a1d09d321a5d3ef7c29d4beaae06549fb8c4078b131f77796

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gobot-0.1.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gobot-0.1.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 06445991cba8053b7657198162922eb29ca079d38eecd7333199dc69840d74d0
MD5 2877ea563e87648b90c34b7ccccc9820
BLAKE2b-256 9cfc526abef9d3652974b499968b312425dc133997fa0fdc171eb997b40912fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gobot-0.1.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gobot-0.1.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a09c09b9e7cda087a02b7bea90010850b1b2f16a34cac88d6fefd345de3c6ab
MD5 06d2063195d20d43b71d1576c7a70705
BLAKE2b-256 35eb08b7e44e89c0eb0b642f441423eca526c0ec1072b8a22383272cfa7a598a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gobot-0.1.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gobot-0.1.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5658e6c5f3758612548361af8c83258aa97a936e4a1b105789104be5444735da
MD5 ee9c7175927e341e08f7f9441abc122e
BLAKE2b-256 5a338549901e21936a02ba247d7ecc280c1a25464a31d2095c741e44d101235b

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gobot-0.1.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gobot-0.1.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 904290c1d24b975a8327a9c64905f68f2c054311ddb088aa10c0ed8a0252c0c3
MD5 e41c0935e335b126013719f0d4c48ecc
BLAKE2b-256 7cc0e95fb7783f1624af019ae0bdf989f9ed84f1e32335c40a35b3b99db19688

See more details on using hashes here.

Provenance

The following attestation bundles were made for gobot-0.1.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-publish.yml on RobSimulatorGroup/gobot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page