Skip to main content

A simulation dashboard for keeping track of, analyzing, and interacting with simulations and reinforcement learning projects.

Project description

GymDash

GymDash (originally meant to be Gymnasium Simulation Dashboard) is a simulation dashboard for keeping track of, analyzing, and interacting with simulations, reinforcement learning projects, and other machine learning projects.

Table of Contents

  1. Install
  2. Getting Started
    1. Controls
    2. Examples
  3. Frontend
    1. Sidebar
    2. Control
    3. Analyze
    4. Configs
  4. Backend
    1. Project
    2. Simulations
  5. FAQ

See the Getting Started documentation.

Disclaimer

This project is still IN DEVELOPMENT. Many frontend and backend features have not been finalized or thoroughly checked and may be subject to significant change at any time.

Installation

NOTE: Full Installation requires PyTorch
Option 1 - Local Install: Download the project and install via pip locally. Download the repo with:
git clone https://github.com/ChaseDVickery/GymDash.git

Option 2 - pip: Download the project via pip using a full install or a minimal base install:

  • Full Installation: Full installation includes Tensorboard, Gymnasium, Stable Baselines, and PyTorch/Torchvision support and packages. Full installation requires PyTorch installation:
    python -m pip install gymdash[full]

  • Minimal Installation: Minimal installation just includes the base packages required to run the frontend and backend. The example Simulations will not properly work without a full installation:
    python -m pip install gymdash

Example Full Install:

  • Windows 10
  • Cuda 11.7
  1. Venv Setup
# Create and activate venv
python -m venv testvenv
testvenv\Scripts\activate.bat
python -m pip install --upgrade pip
  1. Install CUDA via pip
# Install CUDA via pip: https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#pip-wheels
python -m pip install --upgrade setuptools pip wheel
python -m pip install nvidia-pyindex
python -m pip install nvidia-cuda-runtime-cu117
  1. Install torch cuda 118
# I know there is a mismatch b/w 11.7 and 11.8, but it still worked for me.
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
# Optionally, you can replace steps 2-3 with `python -m pip install torch torchvision` if you don't need GPU support. See PyTorch installation: pytorch.org/get-started/locally/
  1. Install gymdash via pip
python -m pip install gymdash[full]

Should not need this since we use pypi index

Maybe: pip install fastapi>=0.115.0

Getting Started

Running Locally

Launch GymDash

# This creates '.gymdash-projects' folder in the launching folder
# and starts a frontend HTTP server and a backend API server.
python -m gymdash.start

For additional launch options, see the Appendix - Other Launch Options.

Navigation

Navigate your web browser to your localhost port 8888: http://127.0.0.1:8888/src/gymdash/frontend/. This loads the HTML page used to interact with your GymDash project.

NAQ (Nobody Asked Questions)

Q: Is the API RESTful?
A: No. The API is not RESTful. Most importantly, the entire system is STATEFUL in that certain API calls could depend on prior API calls. This is for a couple reasons:

  1. Dynamic Project: Users are interacting with a potentially dynamic project on the backend. It makes sense for API calls to represent all or part of the current state of the project.
  2. Lower Bandwidth: Simulations have to potential to generate lots of logging data that should be available. To ensure we don't waste bandwidth transferring repeat data, we track which data still needs to be sent on the backend.

Q: Why is the interface so ugly?
A: That's just like, your opinion, man. Also it's because I'm a very utilitarian designer (aside from just being not good at it), and I haven't felt the need to go full-focus on the frontend visuals because there is so much else that can change before that. There are color themes, though. You just can't select them yet. Feel free to put your own spin on it, too. You should even be able to just edit the HTML, CSS, and JavaScript behind it.

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

gymdash-0.1.3.tar.gz (231.5 kB view details)

Uploaded Source

Built Distribution

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

gymdash-0.1.3-py3-none-any.whl (249.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gymdash-0.1.3.tar.gz
  • Upload date:
  • Size: 231.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.2

File hashes

Hashes for gymdash-0.1.3.tar.gz
Algorithm Hash digest
SHA256 2fd34f0e11f516e828aeb2ba0fe920f431b8a0b02ddb10b91b66d4c766d33fb5
MD5 0bdcca7acde1b7261af0a8913f6952d4
BLAKE2b-256 b853ff06a453e44ed1eb803ffc47c31c7c59f2abf537ac0940fd44a40511181d

See more details on using hashes here.

File details

Details for the file gymdash-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: gymdash-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 249.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.2

File hashes

Hashes for gymdash-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 23f57561f6e657d8cccb32eb82821bec8dabc177315de1bb29e6cb059ec70f4a
MD5 7fa2619ce917a9b38cb64e973cd9e316
BLAKE2b-256 0ba38f9477960e8da336c27b87f245e94379ab3ff4501b6ad92248886b824e88

See more details on using hashes here.

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