Skip to main content

Core library for Retro Speedlab: A high-performance RL toolkit for classic games.

Project description

datenwissenschaften: Retro Speedlab Core 🚀

License: GPL v3 Python 3.12+

datenwissenschaften is the core engine powering Retro Speedlab, a high-performance Reinforcement Learning (RL) toolkit for classic video games. Built on top of stable-baselines3 and stable-retro, it provides the underlying infrastructure for training, monitoring, and recording RL agents.

⚠️ Important Note

This package is intended as the internal library for the Retro Speedlab project. For the full experience—including automated runners, training scripts, and comprehensive documentation—please use the main repository:

👉 https://github.com/datenwissenschaften/retro-speedlab

✨ Features

  • 🎮 Command Center: A rich terminal dashboard for real-time training metrics.
  • 🏋️ Orchestrated Training: Simplified RL workflows and session management.
  • ⚡ GPU acceleration: CUDA tuning for PPO plus batched GPU inference for NEAT, with CPU fallback.
  • 📊 Smart Callbacks: Automatic checkpointing and replay recording (.bk2).
  • 🛠️ Robust Infrastructure: Streamlined environment and ROM management.

🚀 Installation

pip install datenwissenschaften

Configuration

Copy config.example.yaml to config.yaml and adjust its values. Application settings are read from YAML rather than environment variables. APIs that load configuration also accept an explicit config_path when the file is stored elsewhere. Relative paths in the file are resolved relative to the configuration file.

Set training.num_envs to auto to select parallel environment workers from CPU affinity, population size, and the systemd/cgroup memory limit. An explicit positive integer continues to override automatic selection.

Set ui.enable: true to run the local Vue training dashboard at http://127.0.0.1:18080. It charts episode fitness and step counts, shows termination outcomes, and reports environment, PPO, and NEAT configuration details. The ui mapping accepts enable, host, port, and max_episodes values. Dashboard history is restored from and atomically persisted to models/<game>/<savestate>/history.json (relative to the configured models directory). Set host: 0.0.0.0 to listen on all network interfaces; use the machine's IP address rather than 0.0.0.0 when opening the dashboard from another device.

📜 License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.


Developed with ❤️ by datenwissenschaften.

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

datenwissenschaften-1.8.1.tar.gz (101.1 kB view details)

Uploaded Source

Built Distribution

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

datenwissenschaften-1.8.1-py3-none-any.whl (120.8 kB view details)

Uploaded Python 3

File details

Details for the file datenwissenschaften-1.8.1.tar.gz.

File metadata

  • Download URL: datenwissenschaften-1.8.1.tar.gz
  • Upload date:
  • Size: 101.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.12.13 Linux/6.17.0-1018-azure

File hashes

Hashes for datenwissenschaften-1.8.1.tar.gz
Algorithm Hash digest
SHA256 4b030683e147b3700d4d11072d6773ce6ca56a5ce3754afd2d5d0c9254924323
MD5 754f245c030e2d735172ee7b5029c55c
BLAKE2b-256 390d4e725ab54d1cb3a4087a1d3eb5f7f0aa2f1f319d4d3ca22fdb9ed31b003f

See more details on using hashes here.

File details

Details for the file datenwissenschaften-1.8.1-py3-none-any.whl.

File metadata

  • Download URL: datenwissenschaften-1.8.1-py3-none-any.whl
  • Upload date:
  • Size: 120.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.12.13 Linux/6.17.0-1018-azure

File hashes

Hashes for datenwissenschaften-1.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 85ee9fb4391cd5ab4b7060faff0f7e53009f4bb7f336cc248208c7c9fac504f2
MD5 05b7988a6dd89f9a3000d29e94fb4e7a
BLAKE2b-256 1ea5c54d02831c4346b892b767c96c8ac0cb6415496ea2e55ea6eecdbc97ad5f

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