Skip to main content

layout: default title: "ReplicantDriveSimulation" permalink: /External/

Workflow Status

ReplicantDriveSim Library

ReplicantDriveSim is an advanced and fully integrated traffic simulation library designed to bridge Unity, Python, and C++ environments, providing seamless support for autonomous driving research and multi-agent reinforcement learning (RL).

Traffic Simulation Documentation

ReplicantDriveSim

Features and Capabilities

1. Pip Installable

The Unity-based traffic simulation is now registered with PyPi, making it easily installable via pip:

pip install replicantdrivesim

This command simplifies the setup process by downloading and installing the package along with its dependencies. Once installed, you can quickly integrate it into your projects by importing the library in your Python scripts.

import replicantdrivesim

For more detailed usage instructions, please refer to the documentation in the repository.

2. Automated Release Pipeline

The project is equipped with a robust continuous integration and deployment (CI/CD) pipeline that:

  • Publishes releases to:
    • DockerHub
    • GitHub Container Registry
    • PyPi
  • Generates comprehensive documentation on:
    • Read the Docs
    • GitHub Pages
    • Doxygen for C++ code
  • Automatically rebuilds and updates the Unity simulation and Python package when updates are made to:
    • C++ code
    • Unity environment
    • Python interface

3. Multi-Agent Reinforcement Learning with Ray RLlib

  • The library supports Ray's RLlib, enabling multi-agent training for autonomous driving scenarios.
  • With a simple import, you can hand over the environment to Ray for scalable and efficient agent training.
  • This feature is designed for large-scale experiments, leveraging Ray's distributed architecture.
  • Hydra Configuration: Managed via Hydra, supporting powerful command-line overrides and multi-run experiments (e.g., seeding sweeps):
    python examples/trainer.py --multirun seed=42,43
    

4. Comprehensive Documentation

Doxygen-generated documentation is available for the C++ code, and additional project documentation is published on Read the Docs and GitHub Pages, ensuring developers have clear and detailed guidance for integration and usage.

  • Doxygen-generated documentation is available for the C++ code.
  • Additional project documentation is published on:
    • Read the Docs
    • GitHub Pages
  • This ensures developers have clear and detailed guidance for integration and usage.

5. Versioning and Release Management

The pipeline handles release notes generation and tags releases automatically, providing a fully managed versioning system for developers to track changes and improvements.

  • The pipeline handles automatic release note generation and tagging of releases.
  • This ensures a fully managed versioning system, allowing developers to track changes and improvements seamlessly.

With ReplicantDriveSim, you can simulate complex traffic environments, leverage reinforcement learning for training autonomous agents, and benefit from a unified system that integrates C++, Unity, and Python, all within a streamlined workflow.

Traffic Simulation Documentation - Further Reading

For more detailed information about the ReplicantDriveSim traffic simulation, including the AI components and additional developer resources, please refer to the following documentation sources:

  • AI Components and Reinforcement Learning: This page covers the artificial intelligence aspects of the simulation, including reinforcement learning, imitation learning, and how these are implemented within the environment.
  • GitHub Repository: The official GitHub repository where the Unity codebase and related assets for ReplicantDriveSim are hosted. Developers can explore the full source code, contribute to the project, and access the latest updates.
  • Read the Docs: Comprehensive documentation covering various aspects of the simulation, including installation, setup, API references, and examples.

These resources will provide deeper insights and technical details to aid in development and understanding of the traffic simulation system.

Resources and Installation

  • PyPI Project: Python package for the Unity traffic simulation with a C++ backend, providing high-performance tools for autonomous driving research and testing.
  • DockerHub Registry: Pre-built Docker images for seamless deployment of the ReplicantDriveSim environment across various platforms (currently set to be a private repository).

Docker Image

For a pre-configured environment with all dependencies, use our Docker image:

docker pull chrisjcc/replicantdrivesim:latest
docker run -it chrisjcc/replicantdrivesim:latest

System Requirements

Unity Version

  • Unity 6 (6000.0.30f1 or later)
  • ML-Agents Package: 4.0.0
  • Unity AI Inference Engine: 2.2.1

Python Requirements

  • Python: 3.10.1 - 3.10.12
  • Ray RLlib: 2.31.0
  • ML-Agents: 1.1.0
  • Gymnasium: 0.26.3
  • NumPy: 1.23.5
  • PyTorch: 2.1.1 or later
  • Protocol Buffers: 3.20.3
  • gRPC: 1.53.2

For a complete list of dependencies, see environment.yml or setup.cfg.

License

ReplicantDriveSim is licensed under the MIT License. See the LICENSE file for more details.

Metadata

Release files for replicantdrivesim 0.8.1

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

Source distribution (sdist)

Source distribution for replicantdrivesim 0.8.1
File Size Uploaded
replicantdrivesim-0.8.1.tar.gz 99.2 MB Details

Built distribution (wheel)

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

Total release size: 199.1 MB

Release files / replicantdrivesim-0.8.1.tar.gz

Download URL replicantdrivesim-0.8.1.tar.gz
Size 99.2 MB
Tags Source
SHA-256 checksum
How to use checksums
835e947574076ed956a270fc6e9a55b107a005004d9b78270a7d419d5e596d21
BLAKE2b-256 checksum
How to use checksums
c1b8ffb408a2337c6dee78eb84ed0fc073a06d3f613a2554aaf3b1ffaca2d3b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release files / replicantdrivesim-0.8.1-py3-none-any.whl

Download URL replicantdrivesim-0.8.1-py3-none-any.whl
Size 99.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
3cbc704c80f7ca99f0f3ddc5262237836b3efd54313b58401db4a98e11b46c5c
BLAKE2b-256 checksum
How to use checksums
4d58e36c31e5af774f1c150f0054a2d79c79a0536970dea46bcc3b02c9e9c820
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release history Release notifications | RSS feed

This release

0.8.1 This release

2 release files

0.8.0

2 release files

0.7.9

2 release files

0.7.8

2 release files

0.7.7

2 release files

0.7.6

2 release files

0.7.5

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.9

2 release files

0.6.8

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.9

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

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