Skip to main content

BeamNG.gym

BeamNG.gym is a collection of Gymnasium environments that cover various driving tasks simulated in BeamNG.tech.

Installation

Standard pip can be used to obtain the package of environments:

pip install beamng.gym

Or install the version from source by:

git clone https://github.com/BeamNG/BeamNG.gym.git
cd BeamNG.gym
pip install --editable .

A copy of BeamNG.tech is also required to actually run the scenario. The basic version is freely available for academic non-commercial use.

This version is compatible with BeamNG.tech 0.30 and BeamNGpy 1.27.

Configuration

The environments assume an envirionment variable to be set that specifies where BeamNG.tech has been installed to. After obtaining a copy, set an environment variable called BNG_HOME that contains the path to your local installation's main directory -- the same that contains the EULA.pdf file.

Usage

BeamNG.gym registers the environments with the OpenAI Gym registry, so after the initial setup, the environments can be created using the factory method and the respective environment's ID. For example:

from random import uniform

import gymnasium as gym
import beamnggym

env = gym.make('BNG-WCA-Race-Geometry-v0')
env.reset()
total_reward, done = 0, False
# Drive around randomly until finishing
while not done:
    obs, reward, done, aux = env.step((uniform(-1, 1), uniform(-1, 1)))
    total_reward += reward
print('Achieved reward:', total_reward)
...

Environments

Currently, the only environment is a time attack on the race track in the West Coast USA level of BeamNG.drive. New environments are being developed.

WCA Race

In this setting, the car spawns at the starting line of the race track in West Coast USA and has to race one lap. A detailled description of the observation and actions can be found in the documentation of the respective class WCARaceGeometry.

Release files for BeamNG.gym 0.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 BeamNG.gym 0.2
File Size Uploaded
BeamNG.gym-0.2.tar.gz 8.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for BeamNG.gym 0.2
File Interpreter ABI Platform
BeamNG.gym-0.2-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 16.6 kB

Release files / BeamNG.gym-0.2.tar.gz

Download URL BeamNG.gym-0.2.tar.gz
Size 8.7 kB
Tags Source
SHA-256 checksum
How to use checksums
03e52563165818fac4564a51fa5bb13efbcf0761ad8b7a74829aa31b506eba95
BLAKE2b-256 checksum
How to use checksums
b7703ed6143f884951267735db10f79a4f0370e42687153e8ef8d6878b6a74cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.1 pkginfo/1.8.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.15

Release files / BeamNG.gym-0.2-py2.py3-none-any.whl

Download URL BeamNG.gym-0.2-py2.py3-none-any.whl
Size 7.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
9d07195e286db215f616cd4b7ec2a1940d731edec6a23441b8ca84b20ecec0c2
BLAKE2b-256 checksum
How to use checksums
43403a546294d8eee08f30ebd72f816ffc40f5b935456a9a4d76f0e7bcd72bdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.1 pkginfo/1.8.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.15

Release history Release notifications | RSS feed

This release

0.2 This release

2 release files

0.1

1 release file

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